31 May, 2011

8 commits


30 May, 2011

8 commits

  • git-svn-id: https://svn.forgerock.org/opendj/trunk@6946 41b1ffd8-f28e-4786-ab96-9950f0a78031
    mark
     
  • git-svn-id: https://svn.forgerock.org/opendj/trunk@6945 41b1ffd8-f28e-4786-ab96-9950f0a78031
    mark
     
  • …hanges with updates and purging.
    More specifically these changes are resolving the following issues :
    OPENDJ-57 - ECL: lastChangeNumber and firstChangeNumber reset to zero when the changelog is purged to empty
    OPENDJ-172 - External ChangeLog Cookie varies when searching with an empty cookie. Cookie should be reproducible.
    OPENDJ-173 - External ChangeLog cookies content is altered by Change purging and prevents from continuing search with a previous returned cookie.
    
    The changes are multiples and interdependant, hence a single commit.
    But : 
    - The DraftCNDB is now purged but always keep the last record. The firstKey value is updated accordingly.
    - The ReplicationDB is purged but always keep the last record before the trimdate.
    - If no cookie is specified, the initial cookie is computed from the ReplicationDomain StartState, but keeping only change numbers older than the trimdate. 
    - Fix a possible issue when searching a ChangeNumber, and a Count record is found, the changeNumber value was not correct.
    
    These changes mostly revert revision  6406 which meant to fix the same issue (cookies would become obsolete and a search using them returns an Unwilling To Perform), but only managed to hide the root cause of the issue.
    
    git-svn-id: https://svn.forgerock.org/opendj/trunk@6943 41b1ffd8-f28e-4786-ab96-9950f0a78031
    ludo
     
  • Finally, the lastExternalChangelogCookie attribute should be consistent with the ChangeLogCookie operational attribute. 
    Let's make them both DirectoryString.
    
    git-svn-id: https://svn.forgerock.org/opendj/trunk@6942 41b1ffd8-f28e-4786-ab96-9950f0a78031
    ludo
     
  • git-svn-id: https://svn.forgerock.org/opendj/trunk@6941 41b1ffd8-f28e-4786-ab96-9950f0a78031
    ludo
     
  • …astExternalChangelogCookie.
    firstChangeNumber and lastChangeNumber are now Integer, single valued.
    The lastExternalChangelogCookie is an opaque set of bytes. I agree it looks like a string, but it would be better handled as opaque, thus an OCTET STRING. I'm marking it SINGLE-VALUE though.
    
    
    git-svn-id: https://svn.forgerock.org/opendj/trunk@6940 41b1ffd8-f28e-4786-ab96-9950f0a78031
    ludo
     
  • No brainer : If there's no value, create an empty MultiDomainServerState. The server already knows how to deal with them. 
    
    
    git-svn-id: https://svn.forgerock.org/opendj/trunk@6938 41b1ffd8-f28e-4786-ab96-9950f0a78031
    ludo
     
  • Fix now check if the control is present in the search and returns it only if so.
    Tests have been added in unit-tests to verify this.
    
    git-svn-id: https://svn.forgerock.org/opendj/trunk@6936 41b1ffd8-f28e-4786-ab96-9950f0a78031
    ludo
     

27 May, 2011

5 commits

  • …from working, however doing so seems to significantly impact max throughput (around 20%), probably due to context switching during Future.get() calls.
    
    #### From OpenDS SDK SVN history for revision 6650 #####
    
    Backout xxxrate threading changes introduced in revision 6648 since they prevent the -M (throughput throttling) option from working. Several attempts were made to fix it:
    
    1) Putting the adaptive sleeps inside the ConnectionWorker.operationComplete callback causes the Grizzly worker thread to be blocked which, in turn, delays other incoming results on other connections (and impacts their etime calculations).
    
    2) Instead of doing adaptive sleeps, I tried putting the "delayed" requests into a ScheduledExecuterService, but this just introduces more complexity (e.g. more threads), more context switches, etc. 
    
    At this point, I decided to go back to the original design.
    
    The new threading strategy introduced in revision 6649 seems to more than compensate for the performance benefits made in revision 6648.
    
    
    git-svn-id: https://svn.forgerock.org/opendj/trunk@6935 41b1ffd8-f28e-4786-ab96-9950f0a78031
    matthew
     
  • git-svn-id: https://svn.forgerock.org/opendj/trunk@6934 41b1ffd8-f28e-4786-ab96-9950f0a78031
    matthew
     
  • git-svn-id: https://svn.forgerock.org/opendj/trunk@6933 41b1ffd8-f28e-4786-ab96-9950f0a78031
    matthew
     
  • git-svn-id: https://svn.forgerock.org/opendj/trunk@6932 41b1ffd8-f28e-4786-ab96-9950f0a78031
    matthew
     
  • git-svn-id: https://svn.forgerock.org/opendj/trunk@6931 41b1ffd8-f28e-4786-ab96-9950f0a78031
    mark
     

26 May, 2011

6 commits


25 May, 2011

6 commits


24 May, 2011

7 commits