directory-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Martin Alderson (JIRA)" <>
Subject [jira] Resolved: (DIRSERVER-940) Operation fails if previous operation occurred in the same "millisecond"
Date Mon, 02 Jul 2007 22:02:04 GMT


Martin Alderson resolved DIRSERVER-940.

       Resolution: Fixed
    Fix Version/s:     (was: 1.5.2)
         Assignee: Martin Alderson

Fixed by having the operation sequence number always incremented when a new CSN is generated
which also gives us some protection against system clock changes.

> Operation fails if previous operation occurred in the same "millisecond"
> ------------------------------------------------------------------------
>                 Key: DIRSERVER-940
>                 URL:
>             Project: Directory ApacheDS
>          Issue Type: Bug
>          Components: mitosis
>    Affects Versions: 1.5.0
>            Reporter: Martin Alderson
>            Assignee: Martin Alderson
>             Fix For: 1.5.1
> When an operation is processed by mitosis it is logged with a unique "CSN".  This is
supposed to be made unique by 3 values: current timestamp, replica ID and operation sequence
> If the previous operation was logged in the same millisecond "window" (as reported by
System.currentTimeMillis()) then mitosis attempts to log the new operation with an equivalent
CSN causing the whole operation to fail (with a hidden SQL Exception).  This is due to the
operation sequence number being re-zeroed when the timestamps match.  I believe the intention
here was to re-zero the sequence number when the timestamps do _not_ match.
> The fix can be made to
by changing "if ( lastTimestamp == newTimestamp )" to "if ( lastTimestamp != newTimestamp

This message is automatically generated by JIRA.
You can reply to this email to add a comment to the issue online.

View raw message