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

gbellato
29.21.2007 97c337fae8aa9247da4fd9ea3d7b9974887eb124
refs
author gbellato <gbellato@localhost>
Monday, January 29, 2007 18:21 +0100
committer gbellato <gbellato@localhost>
Monday, January 29, 2007 18:21 +0100
commit97c337fae8aa9247da4fd9ea3d7b9974887eb124
tree a073c0aa3e4af2baab5cee3be5d52c9f71a7458e tree | zip | gz
parent 7849d7cc0b380fe4812229676612bc72707ae337 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
opendj-sdk/opends/src/server/org/opends/server/synchronization/changelog/Changelog.java 2 ●●● diff | view | raw | blame | history
opendj-sdk/opends/src/server/org/opends/server/synchronization/changelog/DbHandler.java 35 ●●●● diff | view | raw | blame | history
opendj-sdk/opends/tests/unit-tests-testng/src/server/org/opends/server/synchronization/SynchronizationTestCase.java 39 ●●●●● diff | view | raw | blame | history
opendj-sdk/opends/tests/unit-tests-testng/src/server/org/opends/server/synchronization/changelog/ChangelogTest.java 287 ●●●● diff | view | raw | blame | history