incubator-couchdb-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Paul Davis <paul.joseph.da...@gmail.com>
Subject Re: CouchDB 1.1.0 crashes when creating database
Date Thu, 15 Sep 2011 15:06:32 GMT
Sorry, I glanced at this earlier but I didn't have time to respond
just then. My guess here is that there's something that's not being
properly initialized to null or something. Hard to say without being
able to reproduce it locally. You're quite right that its probably not
ICU itself, but rather something we're doing with it.

On Thu, Sep 15, 2011 at 2:12 PM, Leonhardt Wille <wille@codename-emma.de> wrote:
>  Should I rather direct this to the dev list?
>
>
> Thanks for any advice...
> --
> Leonhardt Wille
>
> Am Mittwoch, 14. September 2011 um 23:46 schrieb Leonhardt Wille:
>
>>  I just made a make clean&&./configure --prefix=&&make&&make
check.
>>
>> There is indeed an ICU related test that fails:
>>
>> > ./test/etap/run
>> > /root/src/apache-couchdb-1.1.0/test/etap/001-load.t .........................
ok
>> > /root/src/apache-couchdb-1.1.0/test/etap/002-icu-driver.t ...................
1/? *** glibc detected *** /usr/lib/erlang/erts-5.8/bin/beam.smp: free(): invalid pointer:
0x00000000013764c0 ***
>> > ======= Backtrace: =========
>> > /lib/libc.so.6(+0x71ad6)[0x2b95f0a44ad6]
>> > /lib/libc.so.6(cfree+0x6c)[0x2b95f0a4984c]
>> > /usr/lib/libicui18n.so.44(ucol_close_44+0x33)[0x2b95f9114003]
>> > src/couchdb/priv/.libs/couch_icu_driver.so(+0xae0)[0x2b95f2ee6ae0]
>> > src/couchdb/priv/.libs/couch_icu_driver.so(+0xb45)[0x2b95f2ee6b45]
>> > /usr/lib/erlang/erts-5.8/bin/beam.smp(erts_open_driver+0x17f)[0x48426f]
>> > /usr/lib/erlang/erts-5.8/bin/beam.smp[0x4ecf8e]
>> > /usr/lib/erlang/erts-5.8/bin/beam.smp(open_port_2+0x17)[0x4ed9c7]
>> > /usr/lib/erlang/erts-5.8/bin/beam.smp(process_main+0x355e)[0x50d78e]
>> > /usr/lib/erlang/erts-5.8/bin/beam.smp[0x4966ab]
>> > /usr/lib/erlang/erts-5.8/bin/beam.smp[0x585d23]
>> > /lib/libpthread.so.0(+0x68ba)[0x2b95f05b48ba]
>> > /lib/libc.so.6(clone+0x6d)[0x2b95f0aa202d]
>> > ======= Memory map: ========
>> > 00400000-005d2000 r-xp 00000000 09:02 2286558 /usr/lib/erlang/erts-5.8/bin/beam.smp
>> > 007d2000-00818000 rw-p 001d2000 09:02 2286558 /usr/lib/erlang/erts-5.8/bin/beam.smp
>> > 00818000-0086e000 rw-p 00000000 00:00 0
>> > 01329000-014af000 rw-p 00000000 00:00 0 [heap]
>> > 2b95efabe000-2b95efadc000 r-xp 00000000 09:02 1388903 /lib/ld-2.11.2.so
>> > 2b95efadc000-2b95efc07000 rw-p 00000000 00:00 0
>> > 2b95efcdb000-2b95efcdc000 r--p 0001d000 09:02 1388903 /lib/ld-2.11.2.so
>> > 2b95efcdc000-2b95efcdd000 rw-p 0001e000 09:02 1388903 /lib/ld-2.11.2.so
>> > 2b95efcdd000-2b95efcde000 rw-p 00000000 00:00 0
>> > 2b95efcde000-2b95efce0000 r-xp 00000000 09:02 1388444 /lib/libutil-2.11.2.so
>> > 2b95efce0000-2b95efedf000 ---p 00002000 09:02 1388444 /lib/libutil-2.11.2.so
>> > 2b95efedf000-2b95efee0000 r--p 00001000 09:02 1388444 /lib/libutil-2.11.2.so
>> > 2b95efee0000-2b95efee1000 rw-p 00002000 09:02 1388444 /lib/libutil-2.11.2.so
>> > 2b95efee1000-2b95efee3000 r-xp 00000000 09:02 1388449 /lib/libdl-2.11.2.so
>> > 2b95efee3000-2b95f00e3000 ---p 00002000 09:02 1388449 /lib/libdl-2.11.2.so
>> > 2b95f00e3000-2b95f00e4000 r--p 00002000 09:02 1388449 /lib/libdl-2.11.2.so
>> > 2b95f00e4000-2b95f00e5000 rw-p 00003000 09:02 1388449 /lib/libdl-2.11.2.so
>> > 2b95f00e5000-2b95f00e6000 rw-p 00000000 00:00 0
>> > 2b95f00e6000-2b95f0166000 r-xp 00000000 09:02 1388900 /lib/libm-2.11.2.so
>> > 2b95f0166000-2b95f0366000 ---p 00080000 09:02 1388900 /lib/libm-2.11.2.so
>> > 2b95f0366000-2b95f0367000 r--p 00080000 09:02 1388900 /lib/libm-2.11.2.so
>> > 2b95f0367000-2b95f0368000 rw-p 00081000 09:02 1388900 /lib/libm-2.11.2.so
>> > 2b95f0368000-2b95f03aa000 r-xp 00000000 09:02 1384465 /lib/libncurses.so.5.7
>> > 2b95f03aa000-2b95f05a9000 ---p 00042000 09:02 1384465 /lib/libncurses.so.5.7
>> > 2b95f05a9000-2b95f05ae000 rw-p 00041000 09:02 1384465 /lib/libncurses.so.5.7
>> > 2b95f05ae000-2b95f05c5000 r-xp 00000000 09:02 1388892 /lib/libpthread-2.11.2.so
>> > 2b95f05c5000-2b95f07c4000 ---p 00017000 09:02 1388892 /lib/libpthread-2.11.2.so
>> > 2b95f07c4000-2b95f07c5000 r--p 00016000 09:02 1388892 /lib/libpthread-2.11.2.so
>> > 2b95f07c5000-2b95f07c6000 rw-p 00017000 09:02 1388892 /lib/libpthread-2.11.2.so
>> > 2b95f07c6000-2b95f07cb000 rw-p 00000000 00:00 0
>> > 2b95f07cb000-2b95f07d2000 r-xp 00000000 09:02 1388893 /lib/librt-2.11.2.so
>> > 2b95f07d2000-2b95f09d1000 ---p 00007000 09:02 1388893 /lib/librt-2.11.2.so
>> > 2b95f09d1000-2b95f09d2000 r--p 00006000 09:02 1388893 /lib/librt-2.11.2.so
>> > 2b95f09d2000-2b95f09d3000 rw-p 00007000 09:02 1388893 /lib/librt-2.11.2.so
>> > 2b95f09d3000-2b95f0b2b000 r-xp 00000000 09:02 1388450 /lib/libc-2.11.2.so
>> > 2b95f0b2b000-2b95f0d2a000 ---p 00158000 09:02 1388450 /lib/libc-2.11.2.so
>> > 2b95f0d2a000-2b95f0d2e000 r--p 00157000 09:02 1388450 /lib/libc-2.11.2.so
>> > 2b95f0d2e000-2b95f0d2f000 rw-p 0015b000 09:02 1388450 /lib/libc-2.11.2.so
>> > 2b95f0d2f000-2b95f103f000 rw-p 00000000 00:00 0
>> > 2b95f103f000-2b95f1040000 ---p 00000000 00:00 0
>> > 2b95f1040000-2b95f1240000 rw-p 00000000 00:00 0
>> > 2b95f1240000-2b95f1241000 ---p 00000000 00:00 0
>> > 2b95f1241000-2b95f1252000 rw-p 00000000 00:00 0
>> > 2b95f1252000-2b95f1253000 ---p 00000000 00:00 0
>> > 2b95f1253000-2b95f1554000 rw-p 00000000 00:00 0
>> > 2b95f1564000-2b95f1566000 r-xp 00000000 09:02 1226954 /usr/lib/libsctp.so.1.0.11
>> > 2b95f1566000-2b95f1765000 ---p 00002000 09:02 1226954 /usr/lib/libsctp.so.1.0.11
>> > 2b95f1765000-2b95f1766000 rw-p 00001000 09:02 1226954 /usr/lib/libsctp.so.1.0.11
>> > 2b95f1766000-2b95f1767000 ---p 00000000 00:00 0
>> > 2b95f1767000-2b95f1967000 rw-p 00000000 00:00 0
>> > 2b95f1967000-2b95f1968000 ---p 00000000 00:00 0
>> > 2b95f1968000-2b95f1b68000 rw-p 00000000 00:00 0
>> > 2b95f1b68000-2b95f1b69000 ---p 00000000 00:00 0
>> > 2b95f1b69000-2b95f1d69000 rw-p 00000000 00:00 0
>> > 2b95f1d69000-2b95f1d6a000 ---p 00000000 00:00 0
>> > 2b95f1d6a000-2b95f1f6a000 rw-p 00000000 00:00 0
>> > 2b95f1f6a000-2b95f1f6b000 ---p 00000000 00:00 0
>> > 2b95f1f6b000-2b95f216b000 rw-p 00000000 00:00 0
>> > 2b95f216b000-2b95f216c000 ---p 00000000 00:00 0
>> > 2b95f216c000-2b95f236c000 rw-p 00000000 00:00 0
>> > 2b95f236c000-2b95f236d000 ---p 00000000 00:00 0
>> > 2b95f236d000-2b95f256d000 rw-p 00000000 00:00 0
>> > 2b95f256d000-2b95f256e000 ---p 00000000 00:00 0
>> > 2b95f256e000-2b95f2ee6000 rw-p 00000000 00:00 0
>> > 2b95f2ee6000-2b95f2ee7000 r-xp 00000000 09:02 2388097 /root/src/apache-couchdb-1.1.0/src/couchdb/priv/.libs/couch_icu_driver.so
>> > 2b95f2ee7000-2b95f30e7000 ---p 00001000 09:02 2388097 /root/src/apache-couchdb-1.1.0/src/couchdb/priv/.libs/couch_icu_driver.so
>> > 2b95f30e7000-2b95f30e8000 rw-p 00001000 09:02 2388097 /root/src/apache-couchdb-1.1.0/src/couchdb/priv/.libs/couch_icu_driver.so
>> > 2b95f30f8000-2b95f3234000 r-xp 00000000 09:02 2613690 /usr/lib/libicuuc.so.44.1
>> > 2b95f3234000-2b95f3434000 ---p 0013c000 09:02 2613690 /usr/lib/libicuuc.so.44.1
>> > 2b95f3434000-2b95f3444000 rw-p 0013c000 09:02 2613690 /usr/lib/libicuuc.so.44.1
>> > 2b95f3444000-2b95f3447000 rw-p 00000000 00:00 0
>> > /root/src/apache-couchdb-1.1.0/test/etap/002-icu-driver.t ...................
Failed 2/3 subtests
>> >
>>
>>
>>
>> The test ./etap/200-view-group-no-db-leaks.t also fails with the same error.
>> Is it possible that CouchDB is incompatible with this specific ICU version? I don't
think that the libICU of Debian Squeeze, which has gone through a couple of years of quite
intense testing, still can have memory pointer errors ...
>>
>> --
>> Leonhardt Wille
>>
>> Am Mittwoch, 14. September 2011 um 22:39 schrieb Paul Davis:
>>
>> > Looks like your ICU driver is busted. I've never seen this reported
>> > before so I'm guessing its probably related to your specific
>> > configuration. I'd check to make sure that the driver library exists
>> > and that it looks valid.
>> >
>> > On Wed, Sep 14, 2011 at 8:17 PM, Leonhardt Wille <wille@codename-emma.de
(mailto:wille@codename-emma.de)> wrote:
>> > > Hi folks,
>> > >
>> > > I can't get CouchDB 1.1.0 to work, even creating a new database doesn't
work.
>> > > I built CouchDB from the official 1.1.0 source on Debian Squeeze and installed
with ./configure prefix= (to make a system-wide installation). CouchDB 1.0.3 (installed in
a different prefix) is working fine.
>> > >
>> > > CouchDB log shows the following error, any advice?
>> > > > [Wed, 14 Sep 2011 14:02:48 GMT] [error] [<0.140.0>] Uncaught
error in HTTP request: {error,einval}
>> > > > [Wed, 14 Sep 2011 14:02:48 GMT] [info] [<0.140.0>] Stacktrace:
[{erlang,open_port,
>> > > > [{spawn,"couch_icu_driver"},[]]},
>> > > > {couch_util,drv_port,0},
>> > > > {couch_util,collate,3},
>> > > > {couch_view,less_json,2},
>> > >
>> > >
>> > >
>> > >
>> > > Does anybody know how to interpret this and where to look?
>> > >
>> > > output of ./configure:
>> > >
>> > > > checking for a BSD-compatible install... /usr/bin/install -c
>> > > > checking whether build environment is sane... yes
>> > > > checking for a thread-safe mkdir -p... /bin/mkdir -p
>> > > > checking for gawk... gawk
>> > > > checking whether make sets $(MAKE)... yes
>> > > > checking for style of include used by make... GNU
>> > > > checking for gcc... gcc
>> > > > checking whether the C compiler works... yes
>> > > > checking for C compiler default output file name... a.out
>> > > > checking for suffix of executables...
>> > > > checking whether we are cross compiling... no
>> > > > checking for suffix of object files... o
>> > > > checking whether we are using the GNU C compiler... yes
>> > > > checking whether gcc accepts -g... yes
>> > > > checking for gcc option to accept ISO C89... none needed
>> > > > checking dependency style of gcc... gcc3
>> > > > checking how to run the C preprocessor... gcc -E
>> > > > checking for grep that handles long lines and -e... /bin/grep
>> > > > checking for egrep... /bin/grep -E
>> > > > checking for ANSI C header files... yes
>> > > > checking for sys/types.h... yes
>> > > > checking for sys/stat.h... yes
>> > > > checking for stdlib.h... yes
>> > > > checking for string.h... yes
>> > > > checking for memory.h... yes
>> > > > checking for strings.h... yes
>> > > > checking for inttypes.h... yes
>> > > > checking for stdint.h... yes
>> > > > checking for unistd.h... yes
>> > > > checking minix/config.h usability... no
>> > > > checking minix/config.h presence... no
>> > > > checking for minix/config.h... no
>> > > > checking whether it is safe to define __EXTENSIONS__... yes
>> > > > checking for gcc... (cached) gcc
>> > > > checking whether we are using the GNU C compiler... (cached) yes
>> > > > checking whether gcc accepts -g... (cached) yes
>> > > > checking for gcc option to accept ISO C89... (cached) none needed
>> > > > checking dependency style of gcc... (cached) gcc3
>> > > > checking build system type... x86_64-unknown-linux-gnu
>> > > > checking host system type... x86_64-unknown-linux-gnu
>> > > > checking for a sed that does not truncate output... /bin/sed
>> > > > checking for fgrep... /bin/grep -F
>> > > > checking for ld used by gcc... /usr/bin/ld
>> > > > checking if the linker (/usr/bin/ld) is GNU ld... yes
>> > > > checking for BSD- or MS-compatible name lister (nm)... /usr/bin/nm
-B
>> > > > checking the name lister (/usr/bin/nm -B) interface... BSD nm
>> > > > checking whether ln -s works... yes
>> > > > checking the maximum length of command line arguments... 1572864
>> > > > checking whether the shell understands some XSI constructs... yes
>> > > > checking whether the shell understands "+="... yes
>> > > > checking for /usr/bin/ld option to reload object files... -r
>> > > > checking for objdump... objdump
>> > > > checking how to recognize dependent libraries... pass_all
>> > > > checking for ar... ar
>> > > > checking for strip... strip
>> > > > checking for ranlib... ranlib
>> > > > checking command to parse /usr/bin/nm -B output from gcc object...
ok
>> > > > checking for dlfcn.h... yes
>> > > > checking for objdir... .libs
>> > > > checking if gcc supports -fno-rtti -fno-exceptions... no
>> > > > checking for gcc option to produce PIC... -fPIC -DPIC
>> > > > checking if gcc PIC flag -fPIC -DPIC works... yes
>> > > > checking if gcc static flag -static works... yes
>> > > > checking if gcc supports -c -o file.o... yes
>> > > > checking if gcc supports -c -o file.o... (cached) yes
>> > > > checking whether the gcc linker (/usr/bin/ld -m elf_x86_64) supports
shared libraries... yes
>> > > > checking whether -lc should be explicitly linked in... no
>> > > > checking dynamic linker characteristics... GNU/Linux ld.so
>> > > > checking how to hardcode library paths into programs... immediate
>> > > > checking whether stripping libraries is possible... yes
>> > > > checking if libtool supports shared libraries... yes
>> > > > checking whether to build shared libraries... yes
>> > > > checking whether to build static libraries... no
>> > > > checking whether ln -s works... yes
>> > > > checking for pthread_create in -lpthread... yes
>> > > > checking for JS_NewContext in -lmozjs... yes
>> > > > checking jsapi.h usability... yes
>> > > > checking jsapi.h presence... yes
>> > > > checking for jsapi.h... yes
>> > > > checking for icu-config... /usr/bin/icu-config
>> > > > checking for ICU >= 3.4.1... yes
>> > > > checking ICU_CFLAGS... -g -Wall -O2 -Wall -ansi -pedantic -Wshadow
-Wpointer-arith -Wmissing-prototypes -Wwrite-strings -Wno-long-long
>> > > > checking ICU_CXXFLAGS... -g -Wall -O2 -W -Wall -ansi -pedantic -Wpointer-arith
-Wwrite-strings -Wno-long-long
>> > > > checking ICU_LIBS... -ldl -lm -L/usr/lib -licui18n -licuuc -licudata
-ldl -lm
>> > > > checking for curl-config... /usr/bin/curl-config
>> > > > checking for curl >= 7.18.0... yes
>> > > > checking CURL_CFLAGS...
>> > > > checking CURL_LIBS... -lcurl
>> > > > checking for erl... /usr/bin/erl
>> > > > checking for erlc... /usr/bin/erlc
>> > > > checking erl_driver.h usability... yes
>> > > > checking erl_driver.h presence... yes
>> > > > checking for erl_driver.h... yes
>> > > > checking for help2man... no
>> > > > configure: WARNING: You will be unable to regenerate any man pages.
>> > > > checking location of init directory... ${sysconfdir}/init.d
>> > > > checking location of launchd directory... not found
>> > > > configure: creating ./config.status
>> > > > config.status: creating Makefile
>> > > > config.status: creating bin/couchjs.tpl
>> > > > config.status: creating bin/couchdb.tpl
>> > > > config.status: creating bin/couchdb.bat.tpl
>> > > > config.status: creating bin/Makefile
>> > > > config.status: creating etc/couchdb/Makefile
>> > > > config.status: creating etc/couchdb/default.ini.tpl
>> > > > config.status: creating etc/default/Makefile
>> > > > config.status: creating etc/init/couchdb.tpl
>> > > > config.status: creating etc/init/Makefile
>> > > > config.status: creating etc/launchd/org.apache.couchdb.plist.tpl
>> > > > config.status: creating etc/launchd/Makefile
>> > > > config.status: creating etc/logrotate.d/couchdb.tpl
>> > > > config.status: creating etc/logrotate.d/Makefile
>> > > > config.status: creating etc/windows/Makefile
>> > > > config.status: creating etc/Makefile
>> > > > config.status: creating share/Makefile
>> > > > config.status: creating src/Makefile
>> > > > config.status: creating src/couchdb/couch.app.tpl
>> > > > config.status: creating src/couchdb/Makefile
>> > > > config.status: creating src/couchdb/priv/Makefile
>> > > > config.status: creating src/erlang-oauth/Makefile
>> > > > config.status: creating src/etap/Makefile
>> > > > config.status: creating src/ibrowse/Makefile
>> > > > config.status: creating src/mochiweb/Makefile
>> > > > config.status: creating test/Makefile
>> > > > config.status: creating test/bench/Makefile
>> > > > config.status: creating test/etap/Makefile
>> > > > config.status: creating test/etap/test_util.erl
>> > > > config.status: creating test/javascript/Makefile
>> > > > config.status: creating test/view_server/Makefile
>> > > > config.status: creating utils/Makefile
>> > > > config.status: creating var/Makefile
>> > > > config.status: creating config.h
>> > > > config.status: config.h is unchanged
>> > > > config.status: executing depfiles commands
>> > > > config.status: executing libtool commands
>> > > >
>> > > > You have configured Apache CouchDB, time to relax.
>> > > >
>> > > > Run `make && sudo make install' to install.
>> > >
>> > >
>> > >
>> > > With kind regards
>> > > --
>> > > Leonhardt Wille
>>
>
>

Mime
View raw message