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

gbellato
29.21.2007 b3112742902d0145779f9ac094857c0a3e9b1d79
refs
author gbellato <gbellato@localhost>
Monday, January 29, 2007 18:21 +0100
committer gbellato <gbellato@localhost>
Monday, January 29, 2007 18:21 +0100
commitb3112742902d0145779f9ac094857c0a3e9b1d79
tree ec582df281f64ccfaec3ae0af0b68341e841bf9b tree | zip | gz
parent c586763a6c04601f4b33cdeb103ef249ff3a5f4d view | diff
- Fix issue 1160 : synchronization is flushing the msgQueue to the database too often
The synchronization server is flushing all the queues of the messages
received from a LDAP server each time a server needs to retrieve some
changes that are not in memory anymore.

This cause the reading process of old changes very slow when there is also new changes coming in.

The servers that are already late can therefore become more and more late.

The solution is to detect the conditions when a flush is necessary by comparing the date of the changeNumber where
we want to start with the date of the first ChangeNumber
and only flush in those cases.

- Also fix some warning at compilation time and when using java 6

- Also fix an problem between test ConfigurableComponentTestCase and the ChangelogTest
because ConfigurableComponentTestCase expect all component to be configurable while
the dynamic configuration code for the Changelog is not yet implemented.

- 2 new unit tests are also included :

. scalability test of a synchronization server when one LDAP server
is used as a master and several other LDAP servers are used as
read only servers :
org.opends.server.synchronization.changelog.ChangelogTest.OneWriterMultipleReader()

. scalability test of a sycnhronization server when several LDAP Servers are used as master simultaneously : org.opends.server.synchronization.changelog.ChangelogTest.MultipleWriterMultipleReader()

These tests do not instantiate the LDAP servers but simulate them
by using directly the ChangelogBroker API.

The second is failing (issue 1162) and is therefore disabled.
4 files modified
363 ■■■■ changed files
opends/src/server/org/opends/server/synchronization/changelog/Changelog.java 2 ●●● diff | view | raw | blame | history
opends/src/server/org/opends/server/synchronization/changelog/DbHandler.java 35 ●●●● diff | view | raw | blame | history
opends/tests/unit-tests-testng/src/server/org/opends/server/synchronization/SynchronizationTestCase.java 39 ●●●●● diff | view | raw | blame | history
opends/tests/unit-tests-testng/src/server/org/opends/server/synchronization/changelog/ChangelogTest.java 287 ●●●● diff | view | raw | blame | history