https://bugs.openldap.org/show_bug.cgi?id=8977
--- Comment #13 from Quanah Gibson-Mount <[email protected]> --- (In reply to Quanah Gibson-Mount from comment #8) > --On Thursday, June 27, 2019 8:56 PM +0000 [email protected] wrote: > > > --On Thursday, June 27, 2019 8:35 PM +0000 [email protected] wrote: > > > >> No, because order is irrelevant for these. > > > > Cool, thanks! I'll continue on with deeper testing then. :) > > Given the current implementation of OpenLDAP, this feature is impossible to > use w/o recompiling OpenLDAP when a change to the IDL size is made. This > is because LDAP_PVT_THREAD_STACK_SIZE must be adjusted as well and that > requires a recompile. > > The default size for LDAP_PVT_THREAD_STACK_SIZE is: > > ( 1 * 1024 * 1024 * sizeof(void *) ) > > which works for an IDL size of 16 (2^16) which is 65536. > > If you change the IDL size, say to 22, then the new IDL size is: 4,194,304. > We then use this difference to find the offset we need to adjust > LDAP_PVT_THREAD_STACK_SIZE by: > > 4194304/65536 = 64 > > So it needs to be 64 time larger: > > ( 64 * 1024 * 1024 * sizeof(void *) ) > > > Generally, this feature is simply unusuable (currently) as a tunable given > the requirement for recompiling OpenLDAP to use it. I believe the above explanation is incorrect, so want to update it. 1024*1024^2 = 1,048,576 This appears to work with an idlexp of 20, which is also 1,048,576 So really what is required is that the LDAP_PVT_THREAD_STACK_SIZE_VALUE total needs to match the 2^idlexp value. So, 2^22 is 4,194,304, so in this case, the LDAP_PVT_THREAD_STACK_SIZE_VALUE would need to be recompiled as ( 4 * 1024 * 1024 * sizeof(void *) ) -- You are receiving this mail because: You are on the CC list for the issue.
