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

Jean-Noel Rouvignac
16.21.2014 606d432b53b82935b951659553a9a12fb470b356
refs
author Jean-Noel Rouvignac <jean-noel.rouvignac@forgerock.com>
Monday, June 16, 2014 15:21 +0200
committer Jean-Noel Rouvignac <jean-noel.rouvignac@forgerock.com>
Monday, June 16, 2014 15:21 +0200
commit606d432b53b82935b951659553a9a12fb470b356
tree 129553a27f908c3963be91232195dd5c9b1e95c3 tree | zip | gz
parent ff6637a91b2032beec4cb294a525238283a269c1 view | diff
OPENDJ-1496 (CR-3767) ThreadInterruptedException (JE) when running replication tests

Issue: On resetting the generationId in RS2, the ServerReader thread is blocked waiting on the ChangeNumberIndexer thread that is waiting on new changes.
The fix consisted in ensuring the replicaDB cursors are released by the ChangeNumberIndexer thread when a replicaDB is being cleared.


ChangeNumberIndexer.java:
Changed AtomicBoolean doClear field into ConcurrentSkipListSet<DN> domainsToClear.
Changed removeAllCursors() to removeCursors(DN baseDN).
In clear(), added a DN parameter.

JEChangelogDB.java, FileChangelogDB.java:
Called ChangeNumberIndexer.clear() from removeDomain() rather than from clearDB().
2 files modified
81 ■■■■■ changed files
opendj3-server-dev/src/server/org/opends/server/replication/server/changelog/je/ChangeNumberIndexer.java 70 ●●●●● diff | view | raw | blame | history
opendj3-server-dev/src/server/org/opends/server/replication/server/changelog/je/JEChangelogDB.java 11 ●●●● diff | view | raw | blame | history