Hello,
is slapo-pcache supposed to work with back-config with current HEAD? I was not able to create a working configuration, yet. As soon as the olcPcacheConfig Entry is added as a child below a back-ldap Database Entry, slapd tries to open the corresponding bdb/hdb Database for the pcache overlay, which of course does not yet exist as it has to be a child object of the olcPcacheConfig Entry.
Any suggestions how this could be fixed?
Ralf Haferkamp wrote:
Hello,
is slapo-pcache supposed to work with back-config with current HEAD? I was not able to create a working configuration, yet. As soon as the olcPcacheConfig Entry is added as a child below a back-ldap Database Entry, slapd tries to open the corresponding bdb/hdb Database for the pcache overlay, which of course does not yet exist as it has to be a child object of the olcPcacheConfig Entry.
Any suggestions how this could be fixed?
Ah right, interesting problem. I think we add a check in the PC_MAIN config handler to see if it's a CONFIG_ONLINE_ADD. If so, set a flag in the cm structure. Then pcache_db_open should defer opening the private database if this flag is set.
Howard Chu wrote:
Ralf Haferkamp wrote:
Hello,
is slapo-pcache supposed to work with back-config with current HEAD? I was not able to create a working configuration, yet. As soon as the olcPcacheConfig Entry is added as a child below a back-ldap Database Entry, slapd tries to open the corresponding bdb/hdb Database for the pcache overlay, which of course does not yet exist as it has to be a child object of the olcPcacheConfig Entry.
Any suggestions how this could be fixed?
Ah right, interesting problem. I think we add a check in the PC_MAIN config handler to see if it's a CONFIG_ONLINE_ADD. If so, set a flag in the cm structure. Then pcache_db_open should defer opening the private database if this flag is set.
Fixed now in HEAD.
On Montag, 8. Oktober 2007, Howard Chu wrote:
Howard Chu wrote:
Ralf Haferkamp wrote:
Hello,
is slapo-pcache supposed to work with back-config with current HEAD? I was not able to create a working configuration, yet. As soon as the olcPcacheConfig Entry is added as a child below a back-ldap Database Entry, slapd tries to open the corresponding bdb/hdb Database for the pcache overlay, which of course does not yet exist as it has to be a child object of the olcPcacheConfig Entry.
Any suggestions how this could be fixed?
Ah right, interesting problem. I think we add a check in the PC_MAIN config handler to see if it's a CONFIG_ONLINE_ADD. If so, set a flag in the cm structure. Then pcache_db_open should defer opening the private database if this flag is set.
Fixed now in HEAD.
Thanks. Now however the proxy-cache doesn't get opened once I restart slapd. This is because the ca->cleanup handler does only get called from config_add_internal for CONFIG_ONLINE_ADDs (which isn't set during normal startup). When I move the ca->cleanup() call out of the "if ( CONFIG_ONLINE_ADD( ca ))" Block it works.
Is there a special reason for only calling in in case of CONFIG_ONLINE_ADD?
Ralf Haferkamp wrote:
Thanks. Now however the proxy-cache doesn't get opened once I restart slapd. This is because the ca->cleanup handler does only get called from config_add_internal for CONFIG_ONLINE_ADDs (which isn't set during normal startup). When I move the ca->cleanup() call out of the "if ( CONFIG_ONLINE_ADD( ca ))" Block it works.
Is there a special reason for only calling in in case of CONFIG_ONLINE_ADD?
Hm, I guess that was wrong. The cleanup handler needs to be skipped when reading slapd.conf, but I guess it should be called for both offline and online Adds. (Offline = reading back-ldif at startup.)