[Date Prev][Date Next] [Chronological] [Thread] [Top]

Re: [lmdb]



Howard-

The meta.mm_address is getting set to env->me_map only if it's a new environment and FIXEDMAP is used. If I open up an existing database then newenv would be 0 and the FIXEDMAP would be ignored, right?


Ben Johnson
ben@skylandlabs.com



On May 23, 2013, at 5:04 PM, Howard Chu <hyc@symas.com> wrote:

> Ben Johnson wrote:
>> Running "mdb_stat testdb" gives me the same "Resource Busy" error.
>> 
>> It looks like mdb.c:2941 is checking if the return address from mmap() is the
>> same as the hint passed in. Is there a problem with just using the mmap()
>> return address? It looks like the mmap() is successful but just allocating to
>> a different place.
> 
> That's treated as a failure since mtest uses the FIXEDMAP flag. In most applications you won't be using FIXEDMAP so you can ignore this error.
>> 
>> 
>> Ben Johnson
>> ben@skylandlabs.com <mailto:ben@skylandlabs.com>
>> 
>> 
>> 
>> On May 23, 2013, at 4:55 PM, Howard Chu <hyc@symas.com <mailto:hyc@symas.com>>
>> wrote:
>> 
>>> Ben Johnson wrote:
>>>> I posted this to openldap-bugs but I didn't see it actually posted to the
>>>> archive so I'll try in openldap-technical. I have LMDB integrated and it's
>>>> working smoothly except for this issue.
>>>> 
>>>> ---- Original Message ----
>>>> 
>>>> I'm an author of an open source database called Sky (http://skydb.io/) and I'm
>>>> interested in porting the backend off LevelDB and move it over to LMDB. I
>>>> pulled down the LMDB code using the instructions on Ferenc Szalai's gomdb
>>>> (https://github.com/szferi/gomdb) README:
>>>> 
>>>> git clone -b mdb.master --single-branch git://git.openldap.org/openldap.git
>>>> 
>>>> When I ran "make test" against the code it seems to run through most of the
>>>> tests but I get a "Resource Busy" error at one point. Here's the full output:
>>>> 
>>>> https://gist.github.com/benbjohnson/5628725
>>>> 
>>>> I'm running Mac OS X 10.8.3 and here's the output of my gcc -v:
>>> 
>>> MacOSX and FreeBSD are somewhat dicy. If you can run the failing command
>>> ("mdb_stat testdb") by hand, successfully, it's probably fine.
>>>> 
>>>> $ gcc -v
>>>> Using built-in specs.
>>>> Target: i686-apple-darwin11
>>>> Configured with:
>>>> /private/var/tmp/llvmgcc42/llvmgcc42-2336.11~182/src/configure
>>>> --disable-checking --enable-werror
>>>> --prefix=/Applications/Xcode.app/Contents/Developer/usr/llvm-gcc-4.2
>>>> --mandir=/share/man --enable-languages=c,objc,c++,obj-c++
>>>> --program-prefix=llvm- --program-transform-name=/^[cg][^.-]*$/s/$/-4.2/
>>>> --with-slibdir=/usr/lib --build=i686-apple-darwin11
>>>> --enable-llvm=/private/var/tmp/llvmgcc42/llvmgcc42-2336.11~182/dst-llvmCore/Developer/usr/local
>>>> --program-prefix=i686-apple-darwin11- --host=x86_64-apple-darwin11
>>>> --target=i686-apple-darwin11 --with-gxx-include-dir=/usr/include/c++/4.2.1
>>>> Thread model: posix
>>>> gcc version 4.2.1 (Based on Apple Inc. build 5658) (LLVM build 2336.11.00)
>>>> 
>>>> Let me know if you need any other info from me.
>>>> 
>>>> 
>>>> Ben Johnson
>>>> ben@skylandlabs.com <mailto:ben@skylandlabs.com> <mailto:ben@skylandlabs.com>
>>>> 
>>>> 
>>>> 
>>>> Ben Johnson
>>>> ben@skylandlabs.com <mailto:ben@skylandlabs.com> <mailto:ben@skylandlabs.com>
>>>> 
>>>> 
>>>> 
>>> 
>>> 
>>> --
>>> -- Howard Chu
>>> CTO, Symas Corp. http://www.symas.com
>>> Director, Highland Sun http://highlandsun.com/hyc/
>>> Chief Architect, OpenLDAP http://www.openldap.org/project/
>> 
> 
> 
> -- 
>  -- Howard Chu
>  CTO, Symas Corp.           http://www.symas.com
>  Director, Highland Sun     http://highlandsun.com/hyc/
>  Chief Architect, OpenLDAP  http://www.openldap.org/project/