23 Jun, 2014

5 commits


20 Jun, 2014

1 commit

  • * config.ldiff
    ** Add the 'changelog-read' value to the 'ds-default-root-privilege-name' multi-valued attribute
    * GlobalConfiguration.xml RootDNConfiguration.xml ADSContext.java Privilege.java RootPrivilegeChangeListener.java
    ** Add the 'changelog-read' privilege where is was needed
    * GlobalCfgDefn.properties RootDNCfgDefn.properties
    ** Add 'changelog-read' privilege definition
    * replication.properties replication_fr.properties
    ** Add messages to prevent user that he needs to have the 'changelog-read' privilege if he wants to search on changelog
    * ECLSearchOperation.java
    ** Add a check to verify that the current connection has the 'changelog-read' privilege before starting the changelog search
    * ExternalChangeLogTest.java
    ** Unit test which ensure that is not possible to perform a changelog search without the 'changelog-read' privilege 
    
    
    git-svn-id: https://svn.forgerock.org/opendj/trunk@10820 41b1ffd8-f28e-4786-ab96-9950f0a78031
    gaetan
     

19 Jun, 2014

1 commit


18 Jun, 2014

1 commit

  • Improved output for multiple base64 entries.
    
    setup_replication.sh:
    Consolidated debug targets handling.
    
    
    git-svn-id: https://svn.forgerock.org/opendj/trunk@10817 41b1ffd8-f28e-4786-ab96-9950f0a78031
    JnRouvignac
     

17 Jun, 2014

1 commit

  • …ver from a previous failure
    CR-3768
    
    * LogFile.java
    ** Add a check of file validity in constructor when log file is write-enabled
    ** Recover the file if it is corrupted (partially written record) by truncating it
    
    * BlockLogReader.java
    ** Add method checkLogIsValid() to check validity of file
     
    * replication.properties
    ** Add new messages related to check and recovery
    
    * LogFileTest.java
    ** Add tests for recovery after log file corruption
    
    * Minor changes in other files
    
    git-svn-id: https://svn.forgerock.org/opendj/trunk@10816 41b1ffd8-f28e-4786-ab96-9950f0a78031
    nicolas.capponi@forgerock.com
     

13 Jun, 2014

3 commits

  • 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(). 
    
    git-svn-id: https://svn.forgerock.org/opendj/trunk@10809 41b1ffd8-f28e-4786-ab96-9950f0a78031
    JnRouvignac
     
  • In decodeRecord(), changed changeNumber local variable from long to Long.
    Code cleanup.
    
    git-svn-id: https://svn.forgerock.org/opendj/trunk@10808 41b1ffd8-f28e-4786-ab96-9950f0a78031
    JnRouvignac
     
  • 
    ReplicationBroker.java:
    Reverted one change from r10786 which broke replication.fractional functional tests.
    
    git-svn-id: https://svn.forgerock.org/opendj/trunk@10807 41b1ffd8-f28e-4786-ab96-9950f0a78031
    JnRouvignac
     

12 Jun, 2014

3 commits


11 Jun, 2014

1 commit

  • …ing ReplicationBackend class
    
    Added upgrade tasks for:
    - Removing 'dc=replicationchanges' backend
    - Removing ACI for 'dc=replicationchanges'
    
    
    Upgrade.java:
    Registered upgrade tasks.
    
    UpgradeTasks.java:
    Added deleteConfigEntry().
    Factorized code by extracting method perform0().
    Fixed javadocs.
    
    UpgradeUtils.java:
    In updateConfigFile(), renamed lines parameter to ldifLines + changed String dn local variable to DN ldifDN + added support for deleting entries.
    
    tools.properties:
    Added messages for upgrade tasks.
    Fixed typos.
    
    
    admin_tool.properties:
    Fixed typos.
    
    SaltedMD5PasswordStorageSchemeTestCase.java:
    Removed unused import.
    
    git-svn-id: https://svn.forgerock.org/opendj/trunk@10800 41b1ffd8-f28e-4786-ab96-9950f0a78031
    JnRouvignac
     

10 Jun, 2014

2 commits


06 Jun, 2014

1 commit

  • Left over changes from a failed attempt at sending replica offline messages after all update messages have been sent on replica shutdown (see the JIRA issue for details):
    - Shutdown sequence improvements (reordered shutdown stages)
    - Code cleanups / refactorings / clarifications
    
    
    
    DirectoryServer.java:
    In shutDown(), removed dead code + reordered stages to: shutdown connection handlers, then work queue, then replication, then the rest.
    shutting down the work queue waits for the worker threads to exit for ServerShutdownMonitor.WAIT_TIME. To be improved by OPENDJ-1469 2 phase shutdown
    Made several constants final.
    Made several methods private.
    
    ServerShutdownMonitor.java:
    Extracted WAIT_TIME constants to reuse it in DirectoryServer.shutDown().
    
    ReplicationBroker.java
    Reordered shutdown sequence: first shutdown changeTime heartbeat publisher thread, then RS heartbeat monitoring thread, then set no connected RS.
    
    
    ReplicationDomain.java, DummyReplicationDomain.java:
    Made status private + added signalNewStatus().
    
    LDAPReplicationDomain.java:
    Consequence of the change to signalNewStatus().
    
    ReplicationServerDomain.java:
    Added PendingStatusMessages.toString().
    Made some methods private.
    In sendPendingTopologyMsgs(), avoid building a topology message if there is no RSs to send it to.
    
    
    PendingChange.java:
    Code cleanup.
    Removed useless field/methods targetDN, getTargetDN(), setOp().
    Added toString().
    
    PendingChanges.java:
    In putLocalOperation(), avoid storing synchronization operations because they will never be sent (see code in pushCommittedChanges()).
    In pushCommittedChanges(), made better use of TreeMap API + do not return int anymore (it was never used).
    In commitAndPushCommittedChanges(), do not return int anymore (it was never used).
    
    RemotePendingChanges.java:
    Consequence of the change to PendingChange.getTargetDN().
    Renamed targetDn local variables to targetDN.
    
    
    TraditionalWorkerThread.java, CSNGenerator.java:
    Code cleanup.
    
    git-svn-id: https://svn.forgerock.org/opendj/trunk@10786 41b1ffd8-f28e-4786-ab96-9950f0a78031
    JnRouvignac
     

05 Jun, 2014

4 commits

  • …o use the newly-released tools.
    
    git-svn-id: https://svn.forgerock.org/opendj/trunk@10785 41b1ffd8-f28e-4786-ab96-9950f0a78031
    mark
     
  • This is only to use the newly-released tools.
    
    git-svn-id: https://svn.forgerock.org/opendj/trunk@10783 41b1ffd8-f28e-4786-ab96-9950f0a78031
    mark
     
  • …ces, ignoring matching rules
    
    Introduced a new object, DiffOptions, which can be used to control the behavior of diffEntries:
    
    * the ability to perform byte-by-byte comparisons
    * the ability to select which attributes are compared using an AttributeFilter
    * the ability to control whether reversible (DELETE+ADD) modifications are generated, or non-reversible REPLACE modifications. For small attributes REPLACE modifications are desirable because the consume less bandwidth and result in less replication meta-data.
    
    
    git-svn-id: https://svn.forgerock.org/opendj/trunk@10782 41b1ffd8-f28e-4786-ab96-9950f0a78031
    matthew
     
  • Added a test case for the change number computation + fixed the code to support it.
    In ChangeNumberIndexer.run(), fixed a bug where shutdown forces an insert in the Change number index DB.
    
    ChangeNumberIndexerTest.java:
    Added emptyDBTwoDSsOneKilled test.
    Fixed timestamps in a few tests.
    
    ChangeNumberIndexer.java:
    Initialized nextChangeForInsertDBCursor field to avoid NPE on startup.
    Added getOldestLastAliveCSN(), mightMoveForwardMediumConsistencyPoint() + used it in tryNotify().
    Changed canMoveForwardMediumConsistencyPoint() to canMoveForwardMediumConsistencyPoint(CSN).
    Removed mediumConsistency field, unused now.
    In run(), fixed a bug where shutdown forces an insert in the Change number index DB.
    Updated javadocs.
    
    MultiDomainServerState.java, MultiDomainServerStateTest.java:
    Added getOldestCSNExcluding() and isReplicaExcluded().
    
    git-svn-id: https://svn.forgerock.org/opendj/trunk@10781 41b1ffd8-f28e-4786-ab96-9950f0a78031
    JnRouvignac
     

04 Jun, 2014

3 commits

  • git-svn-id: https://svn.forgerock.org/opendj/trunk@10780 41b1ffd8-f28e-4786-ab96-9950f0a78031
    mark
     
  • replication topology with file-based changelog
    OPENDJ-1487 : File based changelog : cursors opened when clearing the log
    
    Log.java :
    * Ensure cursors opened on log are temporarily disabled before rotating
     the head (to avoid renaming the file while reader are opened on it)
    * Allow cursors to be opened on log when performing a clear on the log, 
     turning them into empty cursors. 
       
    
    git-svn-id: https://svn.forgerock.org/opendj/trunk@10778 41b1ffd8-f28e-4786-ab96-9950f0a78031
    nicolas.capponi@forgerock.com
     
  • Problem was due to an NPE while deserializing StartECLSessionMsg: ByteArrayScanner.nextString(), can return null, while previous code was always creating an empty string when using the older API.
    
    Thanks Nicolas Capponi for bisecting.
    
    
    StartECLSessionMsg.java:
    In ctor, added a null check to prevent NPE.
    
    git-svn-id: https://svn.forgerock.org/opendj/trunk@10777 41b1ffd8-f28e-4786-ab96-9950f0a78031
    JnRouvignac
     

03 Jun, 2014

3 commits


02 Jun, 2014

2 commits


30 May, 2014

1 commit


28 May, 2014

6 commits


27 May, 2014

1 commit


26 May, 2014

1 commit

  • ….append*() methods and getting rid of all method overloading.
    
    
    ByteArrayBuilder.java:
    Renamed all append*() and append*UTF8() methods to non overloaded methods.
    Renamed append(ServerState() to appendServerStateMustComeLast().
    Renamed appendZeroTerminated() to appendZeroTerminatedByteArray()
    
    ByteArrayScanner.java:
    Renamed nextServerState() to nextServerStateMustComeLast(). TODO
    
    *.java:
    Consequence of the changes to ByteArrayBuilder + ByteArrayScanner.
    
    git-svn-id: https://svn.forgerock.org/opendj/trunk@10762 41b1ffd8-f28e-4786-ab96-9950f0a78031
    JnRouvignac