Author

Topic: bitcoin memory allocation bug, double linked list corrupted (Read 1700 times)

sr. member
Activity: 313
Merit: 258
update bitcoin  version : 50200 seems to be fine, I have had it running for several hours and the crash it is not happening, the ramdon slow down bug seems to exist, but it is not a critical bug, out of several transactions once a while  one takes a long time for bitcoind to respond, for example bitcoind getinfo responds inmediately most of the time, but one a while it takes something like 30 seconds.

So the bug is only with the very new bitcoind.

The problem I am having now, is that the wallet from bitcoin 0.6003 is not compatible with bitcoin 0.50200.

when running an older version of bitcoin and then running the new bitcoin, the wallet gets updated fine, but that updated wallet will no longer work with the older version, an error will get reported when bitcoind starts.

Right now my wallet works fine with bitcoin 0.6003, but since version 0.6003 is unstable, I would much rather use version 0.50200, but version 0.50200 does not run with my current wallet.

I have an old backup of the wallet not sure with what version of bitcoin it was done.

How do I migrate a wallet that works fine with version 0.6003 of bitcoin to a wallet that will work fine on bitcoin 0.50200?
Moving the amount of bitcoins from one wallet to the other is simple, but how do I move the keys?
Any help will be greatly appreciated.




sr. member
Activity: 313
Merit: 258
Hi, I have been doing tests with bitcoind version 0.6003
And for mosts tasks  it works ok, however when I run a shopping cart, the bidcoind daemon crashes after a while, no money is lost, no addresses are lost, it simply crashes after about 1 hour of use, if it is being used lightly manual transactions and no shopping cart, it works fine.

This bug can be reproduced by running the shoppping cart oscommerce and the weex module, however I do not think the bug is in the shopping cart module since all it is doing is using the same bitcoind daemon to check transactions repeatedly, and most of the time it works, if fails when the bitcoind crashes.

There is another minor bug, that at times it takes a long time to do a simple transaction like  bitcoind getinfo, most of the time it takes less than a second, but randomly sometimes takes over a minute.

To simply debuging, I compiled bitcoind without optimization, and debug enabled:

Here is the console error log at crash, not the name of the daemon was bitcoind6003-notoptized-debug, meaning it has no optimizations and debug enabled:
# ./bitcoind6003-notoptized-debug -server -debug

*** glibc detected *** ./bitcoind6003-notoptized-debug: malloc(): smallbin double linked list corrupted: 0x0000000004491930 ***
======= Backtrace: =========
[0x8b6c12]
[0x8ba39f]
[0x8bb838]
[0x87ee6d]
[0x85ddf9]
[0x51f4a3]
[0x85e9bb]
[0x5e4e22]
[0x53b69a]
[0x53e25e]
[0x53c58f]
[0x53c568]
======= Memory map: ========
00400000-00ad6000 r-xp 00000000 08:01 58997057                           /usr/local/sbin/bitcoind6003-notoptized-debug
00cd6000-00cf6000 rw-p 006d6000 08:01 58997057                           /usr/local/sbin/bitcoind6003-notoptized-debug
00cf6000-0452d000 rw-p 00cf6000 00:00 0                                  [heap]
3778a00000-3778a1c000 r-xp 00000000 08:01 54919481                       /lib64/ld-2.5.so
3778a1c000-3778c1b000 ---p 0001c000 08:01 54919481                       /lib64/ld-2.5.so
3778c1b000-3778c1c000 r--p 0001b000 08:01 54919481                       /lib64/ld-2.5.so
3778c1c000-3778c1d000 rw-p 0001c000 08:01 54919481                       /lib64/ld-2.5.so
3778e00000-3778f4e000 r-xp 00000000 08:01 54919515                       /lib64/libc-2.5.so
3778f4e000-377914d000 ---p 0014e000 08:01 54919515                       /lib64/libc-2.5.so
377914d000-3779151000 r--p 0014d000 08:01 54919515                       /lib64/libc-2.5.so
3779151000-3779152000 rw-p 00151000 08:01 54919515                       /lib64/libc-2.5.so
3779152000-3779157000 rw-p 3779152000 00:00 0
3783c00000-3783c11000 r-xp 00000000 08:01 54919520                       /lib64/libresolv-2.5.so
3783c11000-3783e11000 ---p 00011000 08:01 54919520                       /lib64/libresolv-2.5.so
3783e11000-3783e12000 r--p 00011000 08:01 54919520                       /lib64/libresolv-2.5.so
3783e12000-3783e13000 rw-p 00012000 08:01 54919520                       /lib64/libresolv-2.5.so
3783e13000-3783e15000 rw-p 3783e13000 00:00 0
7fa38c000000-7fa38c203000 rw-p 7fa38c000000 00:00 0
7fa38c203000-7fa390000000 ---p 7fa38c203000 00:00 0
7fa390276000-7fa39027a000 r-xp 00000000 08:01 54919189                   /lib64/libnss_dns-2.5.so
7fa39027a000-7fa390479000 ---p 00004000 08:01 54919189                   /lib64/libnss_dns-2.5.so
7fa390479000-7fa39047a000 r--p 00003000 08:01 54919189                   /lib64/libnss_dns-2.5.so
7fa39047a000-7fa39047b000 rw-p 00004000 08:01 54919189                   /lib64/libnss_dns-2.5.so
7fa39047b000-7fa39057b000 rw-p 7fa39047b000 00:00 0
7fa39057b000-7fa390585000 r-xp 00000000 08:01 54919483                   /lib64/libnss_files-2.5.so
7fa390585000-7fa390784000 ---p 0000a000 08:01 54919483                   /lib64/libnss_files-2.5.so
7fa390784000-7fa390785000 r--p 00009000 08:01 54919483                   /lib64/libnss_files-2.5.so
7fa390785000-7fa390786000 rw-p 0000a000 08:01 54919483                   /lib64/libnss_files-2.5.so
7fa3907b2000-7fa3907b3000 ---p 7fa3907b2000 00:00 0
7fa3907b3000-7fa390fb3000 rw-p 7fa3907b3000 00:00 0
7fa390fb3000-7fa390fb4000 ---p 7fa390fb3000 00:00 0
7fa390fb4000-7fa3917b4000 rw-p 7fa390fb4000 00:00 0
7fa3917b4000-7fa3917b5000 ---p 7fa3917b4000 00:00 0
7fa3917b5000-7fa391fb5000 rw-p 7fa3917b5000 00:00 0
7fa391fb5000-7fa391fb6000 ---p 7fa391fb5000 00:00 0
7fa391fb6000-7fa3927b6000 rw-p 7fa391fb6000 00:00 0
7fa3927b6000-7fa3927b7000 ---p 7fa3927b6000 00:00 0
7fa3927b7000-7fa392fb7000 rw-p 7fa3927b7000 00:00 0
7fa392fb7000-7fa392fb8000 ---p 7fa392fb7000 00:00 0
7fa392fb8000-7fa3937b8000 rw-p 7fa392fb8000 00:00 0
7fa3937b8000-7fa3937b9000 ---p 7fa3937b8000 00:00 0
7fa3937b9000-7fa393fb9000 rw-p 7fa3937b9000 00:00 0
7fa393fb9000-7fa393fba000 ---p 7fa393fb9000 00:00 0
7fa393fba000-7fa3947ba000 rw-p 7fa393fba000 00:00 0
7fa3947ba000-7fa3947bb000 ---p 7fa3947ba000 00:00 0
7fa3947bb000-7fa394fbb000 rw-p 7fa3947bb000 00:00 0
7fa394fbb000-7fa394fbc000 ---p 7fa394fbb000 00:00 0
7fa394fbc000-7fa3957f3000 rw-p 7fa394fbc000 00:00 0
7fa3957f3000-7fa3957ff000 rw-s 00000000 08:01 47255424                   /root/.bitcoin/__db.006
7fa3957ff000-7fa395e03000 rw-s 00000000 08:01 47255420                   /root/.bitcoin/__db.005
7fa395e03000-7fa395e2b000 rw-s 00000000 08:01 47255419                   /root/.bitcoin/__db.004
7fa395e2b000-7fa395e6d000 rw-s 00000000 08:01 47255418                   /root/.bitcoin/__db.003
7fa395e6d000-7fa395fcb000 rw-s 00000000 08:01 47255416                   /root/.bitcoin/__db.002
7fa395fcb000-7fa395fd1000 rw-s 00000000 08:01 47255414                   /root/.bitcoin/__db.001
7fa395fd1000-7fa395fd2000 rw-p 7fa395fd1000 00:00 0
7fff9dfbd000-7fff9dfd2000 rw-p 7ffffffea000 00:00 0                      [stack]
7fff9dfff000-7fff9e000000 r-xp 7fff9dfff000 00:00 0                      [vdso]
ffffffffff600000-ffffffffff601000 r-xp 00000000 00:00 0                  [vsyscall]
Aborted

Has anyone had similar problems with recent versions of bitcoind, and what was done to fix it?

Jump to: