19 Aug, 2013

2 commits

  • 
    
    ReplicationServerDomain.java:
    Used AtomicReference for statusAnalyzer and monitoringPublisher.
    As a consequence:
    - Changed update*(), start*() and stop*() methods.
    - Removed isRunning*() methods.
    
    MonitoringPublisher.java:
    Extracted getMessage() to make error messages more conherent.
    
    ServerReader.java:
    In run(), removed redundant code by checking whether the message is a RoutableMsg.
    Extracted method logException().
    In ServerReader.run(), moved some code to ServerHandler.put().
    Code cleanups:
    - inlined useless local variables
    - removed useless use of "this" before method calls.
    
    DataServerHandler.java, ECLServerHandler.java, ReplicationServerHandler.java:
    Extracted method createReplServerStartMsg().
    
    ServerHandler.java:
    Renamed process(WindowProbeMsg) to replyToWindowProbe().
    Made some instance members private.
    Moved createReplServerStartMsg here.
    In put(), moved decAndCheckWindow() call here from ServerReader.run().
    
    WindowProbeMsg.java:
    Fixed javadocs + simplified code.
    
    git-svn-id: https://svn.forgerock.org/opendj/trunk@9424 41b1ffd8-f28e-4786-ab96-9950f0a78031
    JnRouvignac
     
  • 
    ReplicationServer.java:
    Added getConnectedRSUrls(), that aggregates code from ReplicationServerDomain.getChangelogs() and from runConnect().
    In applyConfigurationChange(), moved code to ReplicationServerDomain for better encapsulation.
    
    ReplicationServerDomain.java:
    Renamed checkForDuplicateDS() into isAlreadyConnectedToDS().
    Renamed checkForDuplicateRS() into isAlreadyConnectedToRS().
    Moved getChangelogs() to ReplicationServer.
    Made several methods private to reduce coupling and enforce class responsibilities.
    Generalized the use of isRunningStatusAnalyzer() and isRunningMonitoringPublisher() to improved readability.
    Inlined updateStatusAnalyzer() and updateMonitoringPublisher().
    Moved code from ... to create updateDegradedStatusThreshold() and updateMonitoringPeriod().
    In stopReplicationServers(), renamed parameter for increased readability.
    
    DataServerHandler.java:
    Inlined createStatusAnalyzer().
    
    ServerHandler.java, ReplicationServerHandler.java:
    Inlined createMonitoringPublisher().
    In lockDomain(), removed useless else.
    Code cleanup.
    
    StatusAnalyzer.java:
    Extracted isInterrupted().
    Extracted getMessage() to make error messages more conherent.
    
    git-svn-id: https://svn.forgerock.org/opendj/trunk@9423 41b1ffd8-f28e-4786-ab96-9950f0a78031
    JnRouvignac
     

15 Aug, 2013

1 commit


14 Aug, 2013

5 commits

  • Renamed directoryServers to connectedDSs.
    Renamed replicationServers to connectedRSs.
    Removed the useless getConnectedLDAPservers(), replaced with getConnectedDSs().
    Renamed a few local variables.
    
    DataServerHandler.java:
    Consequence of removing to ReplicationServerDomain.getConnectedLDAPservers()
    Extracted method changeStatus() from changeStatusFromStatusAnalyzer() and changeStatusForResetGenId().
    Extracted method getStatusMachineEvent() from changeStatusForResetGenId().
    
    InitOnLineTest.java
    Consequence of removing to ReplicationServerDomain.getConnectedLDAPservers().
    Removed useless try / catch / fail.
    Extracted methods getCompletionTime(), assertAttributeValue().
    Used Assertions.assertThat().
    
    git-svn-id: https://svn.forgerock.org/opendj/trunk@9418 41b1ffd8-f28e-4786-ab96-9950f0a78031
    JnRouvignac
     
  • - Updated i18n/datacomparison reference file
     
    
    
    git-svn-id: https://svn.forgerock.org/opendj/trunk@9417 41b1ffd8-f28e-4786-ab96-9950f0a78031
    csovant
     
  • In the ctor, renamed parameters.
    In other methods, used early exit.
    
    git-svn-id: https://svn.forgerock.org/opendj/trunk@9416 41b1ffd8-f28e-4786-ab96-9950f0a78031
    JnRouvignac
     
  • Removed ReplicationServerDomain.getReplicationServer() to follow the Law of Demeter: "Only talk to your immediate friends." to promote loose coupling.
    Changed approxFirstMissingDate from Long object to long primitive.
    
    
    ReplicationServerDomain.java:
    Removed getReplicationServer().
    Added getLocalRSMonitorInstanceName() and getLocalRSServerId().
    
    *.java:
    Used the newly added ReplicationServerDomain.getLocalRSMonitorInstanceName() and ReplicationServerDomain.getLocalRSServerId().
    
    LightweightServerHandler.java:
    Removed getLocalRSMonitorInstanceName().
    
    
    MonitorMsg.java, MonitorData.java:
    Changed firstMissingDate from Long object to long primitive.
    Used StringBuilder in toString().
    
    SynchronizationMsgTest.java
    Changed approxFirstMissingDate from Long object to long primitive.
    Extracted methods newList(), newSet(), getEntryAttributes(), assertAttributesEqual().
    Used assertEquals() instead of assertTrue().
    
    git-svn-id: https://svn.forgerock.org/opendj/trunk@9415 41b1ffd8-f28e-4786-ab96-9950f0a78031
    JnRouvignac
     
  • Removed avoidable references to replicationServerDomain.getReplicationServer().
    Code cleanups:
    - collapsed if statements
    - applied early exits
    - Replaced useless use of StringBulders with string concatenations
    - Removed useless parentheses
    
    
    *ServerHandler.java:
    Replaced calls to this.replicationServerDomain.getReplicationServer() with directly using this.replicationServer .
    
    DataServerHandler.java:
    Inlined local variables.
    Removed useless catch.
    
    ECLServerHandler.java:
    Extracted method releaseIterator().
    
    LightweightServerHandler.java:
    Extracted method getLocalRSMonitorInstanceName().
    
    ReplicationServerHandler.java
    In isRemoteLDAPServer(), renamed parameter.
    
    
    MessageHandler.java:
    Extracted methods collectAllIteratorsWithChanges(), addIteratorIfNotEmpty(), releaseAllIterators().
    
    ReplicationServerDomain.java
    Renamed replicationServer to localReplicationServer.
    In put(), renamed id to serverId + extracted method publishMessage().
    In getChangelogIterator(), renamed parameter.
    Extracted methods replyWithMonitorMsg(), replyWithUnroutableMsgType(), forwardMsgToAllServers(), replyWithUnreachablePeerMsg() from process().
    Renamed stopDbHandlers() to shutdownDbHandlers().
    Extracted isServerConnected() from getEligibleCN().
    
    
    
    DbHandler.java, JEReplicationIterator.java:
    Renamed parameter.
    
    git-svn-id: https://svn.forgerock.org/opendj/trunk@9414 41b1ffd8-f28e-4786-ab96-9950f0a78031
    JnRouvignac
     

13 Aug, 2013

13 commits

  • git-svn-id: https://svn.forgerock.org/opendj/trunk@9413 41b1ffd8-f28e-4786-ab96-9950f0a78031
    ludo
     
  • Thanks to JN for his help :)
    
    git-svn-id: https://svn.forgerock.org/opendj/trunk@9412 41b1ffd8-f28e-4786-ab96-9950f0a78031
    violette
     
  • Moved all JE changelog related classes to the new package org.opends.server.replication.server.changelog.je
    
    
    
    DbHandler.java, DraftCNData.java, DraftCNDB.java, DraftCNDbHandler.java, DraftCNDbIterator.java, JEReplicationIterator.java, package-info.java, ReplicationData.java, ReplicationDB.java, ReplicationDbEnv.java, ReplicationDraftCNKey.java, DbHandlerTest.java, DraftCNDbHandlerTest.java:
    Moved to package org.opends.server.replication.server.changelog.je
    
    ReplicationServer.java:
    Updated the imports.
    Made getTrimAge() public.
    Removed use of "this" from method invocation.
    Moved handleUnexpectedChangelogException() to ReplicationDbEnv.
    
    DraftCNDB.java, ReplicationDB.java:
    Moved handleUnexpectedDatabaseException() to ReplicationDbEnv.
    
    ReplicationDbEnv.java:
    Moved handleUnexpectedChangelogException() here from ReplicationServer, and renamed it to shutdownOnException().
    Moved handleUnexpectedDatabaseException() here from DraftCNDB and ReplicationDB, and renamed it to shutdownOnException().
    
    ECLServerHandler.java, ReplicationServerDomain.java, ExternalChangeLogTest.java:
    Updated the imports.
    
    
    git-svn-id: https://svn.forgerock.org/opendj/trunk@9411 41b1ffd8-f28e-4786-ab96-9950f0a78031
    JnRouvignac
     
  • git-svn-id: https://svn.forgerock.org/opendj/trunk@9410 41b1ffd8-f28e-4786-ab96-9950f0a78031
    mark
     
  • Extracted interface org.opends.server.replication.server.changelog.api.ReplicationIterator from org.opends.server.replication.server.ReplicationIterator and used it in all the places where the class was used.
    Renamed ReplicationIterator class to JEReplicationIterator.
    Moved ReplicationIteratorComparator from package org.opends.server.replication.server to org.opends.server.replication.server.changelog.api.
    
    MessageHandler.java:
    Minimal code cleanup.
    
    
    git-svn-id: https://svn.forgerock.org/opendj/trunk@9409 41b1ffd8-f28e-4786-ab96-9950f0a78031
    JnRouvignac
     
  • In next(), removed useless local variable.
    Renamed instance field from dbh to dbHandler.
    
    git-svn-id: https://svn.forgerock.org/opendj/trunk@9408 41b1ffd8-f28e-4786-ab96-9950f0a78031
    JnRouvignac
     
  • git-svn-id: https://svn.forgerock.org/opendj/trunk@9407 41b1ffd8-f28e-4786-ab96-9950f0a78031
    ludo
     
  • Extracted constants SERVER_ID_1 and SERVER_ID_2.
    Renamed getAttributeValue() to getAttributeValueOrNull().
    Extracted new getAttributeValue() from getAttributeValueOrNull(), checkValue() and checkPossibleValues().
    In ECLGetEligibleCountTest(), extracted constants to better explicit the code + removed the count local variable + extracted method now()
    Removed useless code blocks.
    
    ReplicationServerDomain.java:
    In getEligibleCount(), removed a useless if statement.
    
    git-svn-id: https://svn.forgerock.org/opendj/trunk@9406 41b1ffd8-f28e-4786-ab96-9950f0a78031
    JnRouvignac
     
  • Reviewed in CR 2142.
    
    git-svn-id: https://svn.forgerock.org/opendj/trunk@9405 41b1ffd8-f28e-4786-ab96-9950f0a78031
    ludo
     
  • Converted comments to javadoc.
    
    git-svn-id: https://svn.forgerock.org/opendj/trunk@9404 41b1ffd8-f28e-4786-ab96-9950f0a78031
    JnRouvignac
     
  • 
    git-svn-id: https://svn.forgerock.org/opendj/trunk@9403 41b1ffd8-f28e-4786-ab96-9950f0a78031
    ludo
     
  • …at files can cope with the absence of the file, we can remove it completely.
     CR-2142
    
    
    git-svn-id: https://svn.forgerock.org/opendj/trunk@9402 41b1ffd8-f28e-4786-ab96-9950f0a78031
    ludo
     
  • Upgraded to grizzly 2.3.5 which removes grizzly-rcm dependency :)
    
    git-svn-id: https://svn.forgerock.org/opendj/trunk@9401 41b1ffd8-f28e-4786-ab96-9950f0a78031
    JnRouvignac
     

12 Aug, 2013

3 commits

  • git-svn-id: https://svn.forgerock.org/opendj/trunk@9400 41b1ffd8-f28e-4786-ab96-9950f0a78031
    ludo
     
  • Hid low level JE's DatabaseException and ReplicationDBException from replication higher level code. They have been replaced by the newly created ChangelogException.
    
    Tidied up the exception handling by throwing or catching more specific exceptions.
    Moved some code to protect them with try / catch.
    Adding a few catch for specific handling of ChangelogException.
    Threw ChangelogException instead of Exception.
    Added handleUnexpectedDatabaseException() methods.
    
    ReplicationDBException.java: REMOVED (now useless)
    
    replication*.properties:
    Removed ERR_COULD_NOT_INITIALIZE_DB, not adding anything to ERR_COULD_NOT_READ_DB.
    
    Removed "this." from member method invocations.
    Used Integer.parseInt().
    Used StaticUtils.close().
    
    git-svn-id: https://svn.forgerock.org/opendj/trunk@9399 41b1ffd8-f28e-4786-ab96-9950f0a78031
    JnRouvignac
     
  • Removed another 200 lines.
    Extracted several methods: newSet(), generateChangeNumbers(), checkDn(), assertDnEquals(), debugAndWriteEntries(), createDomain(), runDeleteOperation(), assertOnlyDoneMsgReceived.
    Removed useless / unused / plain wrong code.
    Removed commented out code.
    assertTrue() => assertEquals().
    Used assertj assertThat().
    
    git-svn-id: https://svn.forgerock.org/opendj/trunk@9398 41b1ffd8-f28e-4786-ab96-9950f0a78031
    JnRouvignac
     

11 Aug, 2013

1 commit


09 Aug, 2013

8 commits

  • In ECLTwoDomains(), inverted 2 parameters to fix another test failure.
    
    git-svn-id: https://svn.forgerock.org/opendj/trunk@9396 41b1ffd8-f28e-4786-ab96-9950f0a78031
    JnRouvignac
     
  • git-svn-id: https://svn.forgerock.org/opendj/trunk@9395 41b1ffd8-f28e-4786-ab96-9950f0a78031
    violette
     
  • In ECLAfterChangelogTrim(), inverted 2 parameters to fix a test failure.
    Used AutoRefactor plugin.
    Extracted method waitForClose().
    
    git-svn-id: https://svn.forgerock.org/opendj/trunk@9394 41b1ffd8-f28e-4786-ab96-9950f0a78031
    JnRouvignac
     
  • Improved javadocs.
    
    
    ExternalChangeLogTest.java:
    In ECLTwoDomains(), fixed the test.
    Extracted runModifyOperation() and createMods().
    
    
    
    PersistentSearchChangeType.java, ChangeOperationType.java:
    Improved javadocs.
    Increased vertical density.
    Code cleanup.
    
    LDAPReplicationDomain.java:
    Added comments / javadocs.
    
    DraftCNDB.java:
    Used static import to put if conditions on just one line.
    
    git-svn-id: https://svn.forgerock.org/opendj/trunk@9393 41b1ffd8-f28e-4786-ab96-9950f0a78031
    JnRouvignac
     
  • Knocked off 500 lines of code by extracting various methods.
    This makes the code easier to read even though it is still sometimes puzzling.
    
    git-svn-id: https://svn.forgerock.org/opendj/trunk@9392 41b1ffd8-f28e-4786-ab96-9950f0a78031
    JnRouvignac
     
  • Collapsed try/finally embedded in try/catch into single try/catch/finally statements.
    Used a static import for OperationStatus.SUCCESS to help readability with if statement conditions.
    In count(), moved the cursor variable inside findFirstCounterRecordAfterStartPoint() and findFirstCounterRecordBeforeStopPoint() to ease readability.
    In ReplServerDBCursor ctor, removed an uneeded else statement (because of an early exit)
    
    git-svn-id: https://svn.forgerock.org/opendj/trunk@9391 41b1ffd8-f28e-4786-ab96-9950f0a78031
    JnRouvignac
     
  • Removed 400 lines of code by:
    - Used TestCaseUtils.findFreePort().
    - Removed try / catch / fail test anti pattern + let the exceptions go up the stack.
    - Extracted methods stop(), assertEntries().
    - Used interfaces instead of concrete classes.
    - Converting comments to javadocs.
    - Removed useless parameters in readLastCookie().
    - Removed unnecessary creations of new String objects.
    - Removed unnecessary calls to toString() in string concatenations.
    - Reduced variable scopes.
    - Put code on one line to ease reading.
    
    git-svn-id: https://svn.forgerock.org/opendj/trunk@9390 41b1ffd8-f28e-4786-ab96-9950f0a78031
    JnRouvignac
     
  • Used TestCaseUtils.findFreePort() instead of TestCaseUtils.bindFreePort().
    Used StaticUtils.close().
    
    Various refactorings:
    - Extracted a few simple methods
    - Comments to javadocs
    - Removed dead code
    - Inlined unnecessary local variables
    
    git-svn-id: https://svn.forgerock.org/opendj/trunk@9389 41b1ffd8-f28e-4786-ab96-9950f0a78031
    JnRouvignac
     

08 Aug, 2013

5 commits

  • git-svn-id: https://svn.forgerock.org/opendj/trunk@9388 41b1ffd8-f28e-4786-ab96-9950f0a78031
    ludo
     
  • Changed getCount() return type from int to long (This change goes along with r9386).
    Extracted method addUpdate(), isDifferentGenerationId(), isSameGenerationId(), collectRSsEligibleForAssuredReplication(), toRSInfo().
    In many places, renamed sid to serverId.
    Various cleanups:
    - converted comments to javadoc
    - added curly braces around if bodies
    - collapsed if statements
    - used interfaces instead of concrete classes
    - removed useless parentheses
    - removed useless 'this' qualifier in non static method calls
    - put code on one line where it fits
    
    
    MessageHandler.java:
    In add(), removed unused parameter MessageHandler.
    In getOlderUpdateCN(), removed useless reassignment of a local variable.
    
    git-svn-id: https://svn.forgerock.org/opendj/trunk@9387 41b1ffd8-f28e-4786-ab96-9950f0a78031
    JnRouvignac
     
  • Changed count() return type from int to long.
    Removed a useless parameter from ReplicationIterator ctor.
    Various code cleanups in other classes.
    
    
    
    ReplicationDB.java:
    Extracted methods:
    - intializeCounters() from ctor.
    - insertCounterRecordIfNeeded() and newCounterRecord() from addEntries().
    - toChangeNumber(byte[])
    - getRegularRecord() from getPreviousChangeNumber().
    - findFirstCounterRecordAfterStartPoint(), findFirstCounterRecordBeforeStopPoint() and computeDistance() from count().
    Created method createReplicationKey() and moved ReplicationKey code there.
    In readFirstChange(), readLastChange(), getPreviousChangeNumber(), 
    Renamed closeLockedCursor() to closeAndReleaseReadLock().
    Renamed isaCounter() to isACounterRecord().
    Changed count() return type from int to long.
    
    ReplicationKey.java: REMOVED
    Moved code to ReplicationDB.createReplicationKey().
    
    
    ReplicationIterator.java
    In ctor, removed unused parameter id.
    
    DbHandler.java:
    Consequence of the change to ReplicationIterator ctor.
    Consequence of the change to ReplicationDB.count().
    
    DbHandlerTest.java:
    Consequence of the change to ReplicationDB.count().
    Extracted methods configureReplicationServer(), getReplicationDbPath(), createDirectory(), assertFoundInOrder(), assertNotFound().
    
    TestCaseUtils.java:
    Added findFreePort(), findFreePorts().
    bindFreePort() now delegates to bindPort().
    
    
    ReplicationDbEnv.java:
    Renamed local variables for increased readability.
    
    git-svn-id: https://svn.forgerock.org/opendj/trunk@9386 41b1ffd8-f28e-4786-ab96-9950f0a78031
    JnRouvignac
     
  • git-svn-id: https://svn.forgerock.org/opendj/trunk@9385 41b1ffd8-f28e-4786-ab96-9950f0a78031
    violette
     
  • git-svn-id: https://svn.forgerock.org/opendj/trunk@9384 41b1ffd8-f28e-4786-ab96-9950f0a78031
    violette
     

07 Aug, 2013

2 commits