[Date Prev][Date Next]
[Chronological]
[Thread]
[Top]
concurrency problems with "set=" directive
- To: OpenLDAP-bugs@OpenLDAP.org
- Subject: concurrency problems with "set=" directive
- From: "Y. Zoolinski" <yzoolinski@lavache.com>
- Date: Tue, 26 Oct 2004 17:47:07 +0200
- Organization: Alinto
- User-agent: Mozilla Thunderbird 0.8 (Windows/20040913)
The problem appeared when I wanted to migrate my directory from openLdap
2.0.27 (redhat 7.X) to openLdap 2.0.27 (redhat 9).
When I run requests on concurrency, results becomes wrong, that means
that instead of finding 5 results (for example) it gonna return me 0 and
somethimes 1 or 2 rows.
I run concurrency by starting two shell scripts (on 2 différent
machines) executing loop on ldapsearch 1000 times.
My directory contains users and lists of people. I want to allow users
to see people only if they have "myattribut" set to "yes" so I'm using
directive "Set=" in my acl to filter output :
-- slapd.conf --
...
attributetype ( 1.1.2.4.6 NAME ( 'myattribut' ) SUP name )
...
access to dn.regex="ou=level2,o=level1$"
by set="user/myattribut & [yes]" read
...
In my slapd.conf, I've tried several config by playing with
"concurrency", "threads", "cachesize", "dbcachesize" but none solves my
problem.
Remarque on the case "concurrency 1" and "threads 1" : whereas in the
others context the problem appears as soon as I start my second shell
script, in this particular case, the concurrency problem appears later,
after many hundreds of requests.
Just another point, after the result be corrupted, it stays as is even
if I start only one shell script.
Have you any idea ?
Thanks and Regards