mirror of https://github.com/OpenIdentityPlatform/OpenDJ.git

Yannick Lecaillez
29.58.2015 b88a555f5a584c355442ee8db6d218c9fe95fa36
refs
author Yannick Lecaillez <ylecaillez@forgerock.com>
Thursday, October 29, 2015 11:58 +0100
committer Yannick Lecaillez <ylecaillez@forgerock.com>
Tuesday, November 17, 2015 11:16 +0100
commitb88a555f5a584c355442ee8db6d218c9fe95fa36
tree d37690927a99713dbba4683d20c93a7eb620cb9d tree | zip | gz
parent e6910ef3c8e287da40a06ef6e15208ba8564386a view | diff
OPENDJ-2393: Possible index corruption

In case of operation cancellation/exception, transactions are rolled
back and with them the potential update of indexes' trusted state.
That's why in case of transaction rollback we persist the indexes
trusted state using another transaction.

The number of keys contained in a VLV index is cached. This number can
becomes incorrect when transaction updating index keys is aborted. The
number of keys is now persisted using a sharded counted.

Incorrect PDB RollbackException handling could have cause operations
to abort rather than being retried.

Refactoring: fix comments, removed dead code (obsoleted by id2children &
id2subtree removal)

Use specific compact encoding for shared-counter values.
1 files deleted
3 files added
1 files renamed
15 files modified
1126 ■■■■■ changed files
opendj-dsml-servlet/src/license/THIRD-PARTY.properties 21 ●●●●● diff | view | raw | blame | history
opendj-server-legacy/src/main/java/org/opends/server/backends/pdb/PDBStorage.java 22 ●●●● diff | view | raw | blame | history
opendj-server-legacy/src/main/java/org/opends/server/backends/pluggable/AbstractTree.java 11 ●●●● diff | view | raw | blame | history
opendj-server-legacy/src/main/java/org/opends/server/backends/pluggable/CursorTransformer.java 33 ●●●● diff | view | raw | blame | history
opendj-server-legacy/src/main/java/org/opends/server/backends/pluggable/DefaultIndex.java 24 ●●●● diff | view | raw | blame | history
opendj-server-legacy/src/main/java/org/opends/server/backends/pluggable/EntryContainer.java 43 ●●●● diff | view | raw | blame | history
opendj-server-legacy/src/main/java/org/opends/server/backends/pluggable/EntryIDSet.java 2 ●●● diff | view | raw | blame | history
opendj-server-legacy/src/main/java/org/opends/server/backends/pluggable/ID2ChildrenCount.java 211 ●●●●● diff | view | raw | blame | history
opendj-server-legacy/src/main/java/org/opends/server/backends/pluggable/ID2Count.java 246 ●●●●● diff | view | raw | blame | history
opendj-server-legacy/src/main/java/org/opends/server/backends/pluggable/ID2Entry.java 2 ●●● diff | view | raw | blame | history
opendj-server-legacy/src/main/java/org/opends/server/backends/pluggable/IndexBuffer.java 56 ●●●●● diff | view | raw | blame | history
opendj-server-legacy/src/main/java/org/opends/server/backends/pluggable/OnDiskMergeImporter.java 42 ●●●● diff | view | raw | blame | history
opendj-server-legacy/src/main/java/org/opends/server/backends/pluggable/ShardedCounter.java 299 ●●●●● diff | view | raw | blame | history
opendj-server-legacy/src/main/java/org/opends/server/backends/pluggable/VLVIndex.java 35 ●●●●● diff | view | raw | blame | history
opendj-server-legacy/src/main/java/org/opends/server/backends/pluggable/VerifyJob.java 28 ●●●●● diff | view | raw | blame | history
opendj-server-legacy/src/main/java/org/opends/server/backends/pluggable/spi/Cursor.java 4 ●●●● diff | view | raw | blame | history
opendj-server-legacy/src/main/java/org/opends/server/backends/pluggable/spi/WriteOperation.java 3 ●●●● diff | view | raw | blame | history
opendj-server-legacy/src/test/java/org/opends/server/backends/pluggable/ID2ChildrenCountTest.java 19 ●●●● diff | view | raw | blame | history
opendj-server-legacy/src/test/java/org/opends/server/backends/pluggable/OnDiskMergeImporterTest.java 23 ●●●● diff | view | raw | blame | history
opendj-server-legacy/src/test/java/org/opends/server/backends/pluggable/PluggableBackendImplTestCase.java 2 ●●● diff | view | raw | blame | history