directory-users mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Piotr Kubowicz <pkubow...@antennasoftware.com>
Subject Disabling transactions in an embedded ApacheDS to boost performance
Date Thu, 07 Mar 2013 13:42:28 GMT
Is there a way to disable transactions in ApacheDS?

I am using DefaultDirectoryServiceFactory to create a directory service, add one JDBM partition
for content and use this instance for running integrated tests of my own code.

Because this is an instance created and dropped for each test case, I don't care about safe
shutdown, transactions (no concurrent modifications) and so on.

Currently I am using ApacheDS 2.0.0-M7 for this purpose, but this version has serious bugs
(like https://issues.apache.org/jira/browse/DIRSERVER-1727) and forces me to use strange workarounds
for them in my code.

However, using newer versions is not an alternative for me at the moment because of performance
problems. I measured adding performance for my code when only changed thing was version of
ApacheDS artefacts taken from Maven:

2.0.0-M7:  110-210 adds/sec
2.0.0-M8:   10-11 adds/sec
2.0.0-M9:    8-10 adds/sec
2.0.0-M10:   1.6-1.7 adds/sec
2.0.0-M11:   1.5-1.8 adds/sec

I know versions of ApacheDS after M7 introduced transactions, but in my narrow use case I
don't need them at all, and speed is the most imporant factor.

I tried to use Java reflection to call BaseRecordManager#disableTransaction() on an instance
of record manager being part of my main partition (in 2.0.0-M11), but this did not change
the performance. I don't see any public methods I can reach to try to modify something else.


This email and any files transmitted with it are confidential and intended solely for the
use of the individual or entity to whom they are addressed. Please note that any views or
opinions presented in this email are solely those of the author and do not necessarily represent
those of the company. Finally, the recipient should check this email and any attachments for
the presence of viruses. The company accepts no liability for any damage caused by any virus
transmitted by this email. If you have received this email in error please delete it and notify
the system administrator at administrator@antennasoftware.com

Mime
View raw message