Author

Topic: Version 0.3.13, please upgrade (Read 14968 times)

LZ
legendary
Activity: 1722
Merit: 1069
P2P Cryptocurrency
October 16, 2010, 11:44:04 PM
#34
Oh! My wallet corrupted. Dropbox saved only too
old copies, because Bitcoin did not close the file.
I think client must close the wallet when it is not
needed for any operations on it. What you think?
Version 0.3.13.2 (SVN rev 161) has improvements for the case where you already had 0/unconfirmed transactions that you might have already spent.  Here's a Windows build of it:
http://www.bitcoin.org/download/bitcoin-0.3.13.2-win32-setup.exe
It opens my corrupted wallet. Magic! Cheesy
hero member
Activity: 482
Merit: 501
October 04, 2010, 09:18:57 PM
#33
Make sure you keep your node online so it'll keep rebroadcasting transaction b412a0.  It haven't seen it rebroadcast since 29/09/2010 16:41.

OK... so i've been running the node for the past day, i have been consistently connected to 8 other nodes, i'm up to the latest block in the chain as of this moment (83535), and the transaction is still not verified... how do we proceed from here, satoshi?
sr. member
Activity: 337
Merit: 263
October 04, 2010, 06:21:27 AM
#32
Could a few people please run this special build?  It'll amnesty the dust spam transactions, which will clear up the 0/unconfirmed problem for now.  We really just need one block letting them through to clear up the previous transactions.  Post if you generate a block with this.

I generated 8 blocks with the patch.
hero member
Activity: 482
Merit: 501
October 03, 2010, 07:35:50 PM
#31
The command line switches are listed in "bitcoind -?" instead of "bitcoind help". You are still right tho, those options are missing from "-?" too.

lfm: try it, '-help' is /quite/ different from just 'help' ('-help' is the same as '-?') Smiley
hero member
Activity: 482
Merit: 501
October 03, 2010, 07:34:35 PM
#30
Make sure you keep your node online so it'll keep rebroadcasting transaction b412a0.  It haven't seen it rebroadcast since 29/09/2010 16:41.

ok, will do... how long should i keep it online for, before i can come back and bug you about it again (if it stays at 0 conf) ? Smiley

(and btw, i'm using the official .13 client)
founder
Activity: 364
Merit: 5240
October 03, 2010, 06:46:19 PM
#29
Make sure you keep your node online so it'll keep rebroadcasting transaction b412a0.  It haven't seen it rebroadcast since 29/09/2010 16:41.
lfm
full member
Activity: 196
Merit: 100
October 03, 2010, 06:44:39 PM
#28
Version 0.3.13 is now available.
- Only accept transactions sent by IP address if -allowreceivebyip is specified.
- Option -rpcallowip= to accept json-rpc connections from another machine.

I notice that these options are not showing up in --help output... Shouldn't --help have a comprehensive listing of these options in it? (Especially given that there's no manpage or other help docs distributed in the official-release tarball?)

Just an idle question, whose result I hope makes its way into the next release. Smiley

The command line switches are listed in "bitcoind -?" instead of "bitcoind help". You are still right tho, those options are missing from "-?" too.
lfm
full member
Activity: 196
Merit: 100
October 03, 2010, 06:34:49 PM
#27
Do all AMDs that support 64-bit have the better SSE2 hardware also?


Old AMD Sempron 64 does not have the good sse2 speed.  This one should stay with -4way=0

CPUID 444d4163 family 15, model 44, stepping 2, fUseSSE2=0
hero member
Activity: 482
Merit: 501
October 03, 2010, 05:43:45 PM
#26
Block 83018 (00000000002bba570c3) cleared out a bunch of them. Last I heard nanotube still had one that's unconfirmed, though.

Edit: Nanotube's transaction cleared recently. I don't know why it was delayed, since it wasn't relying on a sub-0.01 transaction.

just a clarification, the one that "cleared recently" didn't have anything to do with the problem microtransactions. the problem one, that was unconfirmed, is still unconfirmed, see info in my post above.
hero member
Activity: 482
Merit: 501
October 03, 2010, 05:35:45 PM
#25
Any transactions in your wallet also have bundled with them all unrecorded transactions required to reach the block chain.  If you have a transaction that is displayed as 0/unconfirmed, then you have all the previous unrecorded transactions it depends on and you will also rebroadcast those transactions when you rebroadcast yours.

If a no-fee block has already been generated and hasn't helped, then I need to look at what's wrong.  It's a part of code that doesn't get much use.  They should be recorded in the wallets of everyone who has a transaction depending on them.

I have one transaction that remains perpetually in 0/unconfirmed status in my wallet. Here are the details, as shown in debug mode:

Code:
Status: 0/unconfirmed
Date: 09/29/2010 12:46
From: unknown
To: 1MgD6rah5zUgEGYZnNmdpnXMaDR3itKYzU (yours, label: gribble stored address)
Credit: 0.03
Net amount: +0.03

debug print
Credit: 0.03
Inputs:

Transaction:
CTransaction(hash=5c05d9, ver=1, vin.size=1, vout.size=1, nLockTime=0)
   CTxIn(COutPoint(b412a0, 0), scriptSig=3045022049753afb02f58a7b)
   CTxOut(nValue=0.03000000, scriptPubKey=OP_DUP OP_HASH160 e2ccd6)

Would appreciate it if you take a look and see what's wrong with it and why it remains unconfirmed....
legendary
Activity: 1470
Merit: 1004
Bringing Legendary Har® to you since 1952
October 03, 2010, 05:32:16 PM
#24
ShadowOfHarbringer, is yours faster with -4way?

Indeed, it is almost 2 x as fast with -4way as it is without.

I get about 8500 khash/sec with -4way, and 4500 khash/sec without.
founder
Activity: 364
Merit: 5240
October 03, 2010, 04:43:20 PM
#23
ShadowOfHarbringer, is yours faster with -4way?

If it is, then I'm thinking that any AMD that supports 64-bit has 128-bit SSE2.

The specialbuild version I posted here looks for model 4 or higher.  If yours is faster with -4way, then I should change it to always use SSE2 with any AMD with 64-bit.
legendary
Activity: 1470
Merit: 1004
Bringing Legendary Har® to you since 1952
October 03, 2010, 04:36:11 PM
#22
Forgot to say, I suspected the detect might not work on 64-bit AMD.  I found it hard to believe but AMD reports a different model number in 64-bit mode.

Could you grep CPUID your debug.log and tell me what it says?  (and anyone else with 64-bit AMD)  And what AMD chip do you have?

Do all AMDs that support 64-bit have the better SSE2 hardware also?

Will that be enough ?:

Code:
cat /proc/cpuinfo
processor       : 0
vendor_id       : AuthenticAMD
cpu family      : 16
model           : 2
model name      : AMD Phenom(tm) 9850 Quad-Core Processor
stepping        : 3
cpu MHz         : 2508.353
cache size      : 512 KB
physical id     : 0
siblings        : 4
core id         : 0
cpu cores       : 4
apicid          : 0
initial apicid  : 0
fpu             : yes
fpu_exception   : yes
cpuid level     : 5
wp              : yes
flags           : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush mmx fxsr sse sse2 ht syscall nx mmxext fxsr_opt pdpe1gb rdtscp lm 3dnowext 3dnow constant_tsc rep_good nonstop_tsc extd_apicid pni monitor cx16 popcnt lahf_lm cmp_legacy svm extapic cr8_legacy abm sse4a misalignsse 3dnowprefetch osvw ibs npt lbrv svm_lock
bogomips        : 5018.72
TLB size        : 1024 4K pages
clflush size    : 64
cache_alignment : 64
address sizes   : 48 bits physical, 48 bits virtual
power management: ts ttp tm stc 100mhzsteps hwpstate

EDIT:
Also, i have just found out how to do the cpuid thingy:

Code:
CPUID 444d4163 family 16, model 2, stepping 3, fUseSSE2=0
hero member
Activity: 574
Merit: 507
October 03, 2010, 04:24:48 PM
#21
That's nice, however the automatic 4way detection is not working on my Gentoo AMD 64 version client.

I still have to add the "-4way" switch.
Forgot to say, I suspected the detect might not work on 64-bit AMD.  I found it hard to believe but AMD reports a different model number in 64-bit mode.

Could you grep CPUID your debug.log and tell me what it says?  (and anyone else with 64-bit AMD)  And what AMD chip do you have?

Do all AMDs that support 64-bit have the better SSE2 hardware also?

Code:
$ grep -i cpuid debug.log 
CPUID 444d4163 family 16, model 5, stepping 2, fUseSSE2=0

/proc/cpuinfo
administrator
Activity: 4732
Merit: 10797
October 03, 2010, 04:06:59 PM
#20
Block 83018 (00000000002bba570c3) cleared out a bunch of them. Last I heard nanotube still had one that's unconfirmed, though.

Edit: Nanotube's transaction cleared recently. I don't know why it was delayed, since it wasn't relying on a sub-0.01 transaction.
founder
Activity: 364
Merit: 5240
October 03, 2010, 03:54:07 PM
#19
ArtForz is already running with no fees, and he has 20-30% of the network's CPU power. The person who originally sent the broken transactions deleted his wallet, though, and the network has forgotten these historical transactions, so any transactions based on this won't confirm.
Transactions aren't accepted or displayed as 0/unconfirmed until your node has a path of transactions back to the block chain.

Any transactions in your wallet also have bundled with them all unrecorded transactions required to reach the block chain.  If you have a transaction that is displayed as 0/unconfirmed, then you have all the previous unrecorded transactions it depends on and you will also rebroadcast those transactions when you rebroadcast yours.

If a no-fee block has already been generated and hasn't helped, then I need to look at what's wrong.  It's a part of code that doesn't get much use.  They should be recorded in the wallets of everyone who has a transaction depending on them.

The person who originally sent the broken transactions deleted his wallet
Sigh... why delete a wallet instead of moving it aside and keeping the old copy just in case?  You should never delete a wallet.

It's running. Should find a block within 3 hours.
It may take a while to collect re-broadcast transactions.  It'll help if you can accept inbound connections so you'll be listening to more nodes.  Even if you find a block in 3 hours, keep it running continuously for a few days at least.
sr. member
Activity: 337
Merit: 263
October 03, 2010, 03:10:47 PM
#18
It's running. Should find a block within 3 hours.
administrator
Activity: 4732
Merit: 10797
October 03, 2010, 03:09:51 PM
#17
ArtForz is already running with no fees, and he has 20-30% of the network's CPU power. The person who originally sent the broken transactions deleted his wallet, though, and the network has forgotten these historical transactions, so any transactions based on this won't confirm.
founder
Activity: 364
Merit: 5240
October 03, 2010, 03:02:24 PM
#16
Code:
diff -u old\main.cpp new\main.cpp
--- old\main.cpp Sun Oct 03 20:57:20 2010
+++ new\main.cpp Sun Oct 03 20:57:54 2010
@@ -2831,6 +2831,10 @@
     bool fUseSSE2 = ((fIntel && nFamily * 10000 + nModel >=  60026) ||
                      (fAMD   && nFamily * 10000 + nModel >= 160010));
 
+    // AMD reports a lower model number in 64-bit mode
+    if (fAMD && sizeof(void*) > 4 && nFamily * 10000 + nModel >= 160004)
+        fUseSSE2 = true;
+
     static bool fPrinted;
     if (!fPrinted)
     {
@@ -2989,6 +2993,17 @@
 
                     // Transaction fee based on block size
                     int64 nMinFee = tx.GetMinFee(nBlockSize);
+                    //////// temporary code
+                    if (nBlockSize < MAX_BLOCK_SIZE_GEN / 10 && GetWarnings("statusbar") == "")
+                    {
+                        if (nBestHeight < 91000)
+                            nMinFee = 0;
+                        if (nBestHeight < 100000 && nTxSize < 2000)
+                            nMinFee = 0;
+                        if (nBestHeight < 110000 && nBestHeight % 10 == 0)
+                            nMinFee = 0;
+                    }
+                    //////// temporary code
 
                     map mapTestPoolTmp(mapTestPool);
                     if (!tx.ConnectInputs(txdb, mapTestPoolTmp, CDiskTxPos(1,1,1), pindexPrev, nFees, false, true, nMinFee))
diff -u old\serialize.h new\serialize.h
--- old\serialize.h Sun Oct 03 20:57:45 2010
+++ new\serialize.h Sun Oct 03 20:57:54 2010
@@ -22,8 +22,8 @@
 class CAutoFile;
 static const unsigned int MAX_SIZE = 0x02000000;
 
-static const int VERSION = 31300;
-static const char* pszSubVer = "";
+static const int VERSION = 31301;
+static const char* pszSubVer = " test1";
sr. member
Activity: 337
Merit: 263
October 03, 2010, 02:50:15 PM
#15
Three GPUs (ATI HD 5870).
founder
Activity: 364
Merit: 5240
October 03, 2010, 02:49:32 PM
#14
983 Mhash/s box.
Seriously?  What hardware is that?
sr. member
Activity: 337
Merit: 263
October 03, 2010, 02:45:45 PM
#13
Can you include the source? Or better the diff for those transactions? I could run it on my 983 Mhash/s box.
founder
Activity: 364
Merit: 5240
October 03, 2010, 02:39:06 PM
#12
Could a few people please run this special build?  It'll amnesty the dust spam transactions, which will clear up the 0/unconfirmed problem for now.  We really just need one block letting them through to clear up the previous transactions.  Post if you generate a block with this.

These are binaries only.  The linux version is 64-bit only.
http://www.bitcoin.org/download/bitcoin-0.3.13.1-specialbuild-win32.zip
http://www.bitcoin.org/download/bitcoin-0.3.13.1-specialbuild-linux64.tar.gz

SHA1 fb7c66270281ed058c570627cf7baff0bdc16e5d bitcoin-0.3.13.1-specialbuild-win32.zip
SHA1 9fc44ea5f2109618073e2cfd887e2cc266eb31a9 bitcoin-0.3.13.1-specialbuild-linux64.tar.gz

The linux 64-bit version includes a change to the cpuid 4-way 128-bit SSE2 autodetect for AMD in 64-bit mode, if you'd like to test that and see if that's better.
founder
Activity: 364
Merit: 5240
October 03, 2010, 01:17:06 PM
#11
That's nice, however the automatic 4way detection is not working on my Gentoo AMD 64 version client.

I still have to add the "-4way" switch.
Forgot to say, I suspected the detect might not work on 64-bit AMD.  I found it hard to believe but AMD reports a different model number in 64-bit mode.

Could you grep CPUID your debug.log and tell me what it says?  (and anyone else with 64-bit AMD)  And what AMD chip do you have?

Do all AMDs that support 64-bit have the better SSE2 hardware also?
hero member
Activity: 482
Merit: 501
October 03, 2010, 12:59:06 AM
#10
Dwdollar lost some BTC with Bitcoin Market because someone either maliciously or accidentally sent him "unconfirmable" transactions, and he hadn't upgraded. Maybe now would be a good time to test the alert feature.

I can agree with that. otherwise the 0/unconf txns can propagate through the network and mess up a lot of people's wallets.
hero member
Activity: 574
Merit: 507
October 03, 2010, 12:25:12 AM
#9
I suggest a manpage should be included in the tarball.
administrator
Activity: 4732
Merit: 10797
October 02, 2010, 11:42:43 PM
#8
If they didn't confirm why would he clear them to go into the account? Is he counting blocks instead of confirmations? That seems odd.

He sent a transaction that took coins from a transaction that will never confirm, so this transaction will also never confirm and is therefore lost (along with any change). If the person he sent it to isn't using 0.3.13, they'll also send unconfirmable transactions. It's like a virus. People need to move to 0.3.13 ASAP.

It has nothing to do with confirmations.
legendary
Activity: 1246
Merit: 1014
Strength in numbers
October 02, 2010, 11:15:09 PM
#7
Dwdollar lost some BTC with Bitcoin Market because someone either maliciously or accidentally sent him "unconfirmable" transactions, and he hadn't upgraded. Maybe now would be a good time to test the alert feature.

If they didn't confirm why would he clear them to go into the account? Is he counting blocks instead of confirmations? That seems odd.
hero member
Activity: 482
Merit: 501
October 02, 2010, 08:24:27 PM
#6
Version 0.3.13 is now available.
- Only accept transactions sent by IP address if -allowreceivebyip is specified.
- Option -rpcallowip= to accept json-rpc connections from another machine.

I notice that these options are not showing up in --help output... Shouldn't --help have a comprehensive listing of these options in it? (Especially given that there's no manpage or other help docs distributed in the official-release tarball?)

Just an idle question, whose result I hope makes its way into the next release. Smiley
administrator
Activity: 4732
Merit: 10797
October 02, 2010, 05:43:29 PM
#5
Dwdollar lost some BTC with Bitcoin Market because someone either maliciously or accidentally sent him "unconfirmable" transactions, and he hadn't upgraded. Maybe now would be a good time to test the alert feature.
legendary
Activity: 1470
Merit: 1004
Bringing Legendary Har® to you since 1952
October 02, 2010, 08:00:07 AM
#4
That's nice, however the automatic 4way detection is not working on my Gentoo AMD 64 version client.

I still have to add the "-4way" switch.
LZ
legendary
Activity: 1722
Merit: 1069
P2P Cryptocurrency
October 02, 2010, 04:28:46 AM
#3
Oh! My wallet corrupted. Dropbox saved only too
old copies, because Bitcoin did not close the file.
I think client must close the wallet when it is not
needed for any operations on it. What you think?
LZ
legendary
Activity: 1722
Merit: 1069
P2P Cryptocurrency
October 02, 2010, 03:46:18 AM
#2
If I create a wallet and then send some bitcoin to it,
then wait for confirmations, then remove that wallet
and restore it's previous copy - so the client will not
see that transaction. However, if I remove all blocks
and download all blocks again - then the amount will
appear. It would nice to make a re-count function...
founder
Activity: 364
Merit: 5240
September 30, 2010, 07:34:35 PM
#1
Version 0.3.13 is now available.  You should upgrade to prevent potential problems with 0/unconfirmed transactions.  Note: 0.3.13 prevents problems if you haven't already spent a 0/unconfirmed transaction, but if that already happened, you need 0.3.13.2.

Changes:
- Don't count or spend payments until they have 1 confirmation.
- Internal version number from 312 to 31300.
- Only accept transactions sent by IP address if -allowreceivebyip is specified.
- Dropped DB_PRIVATE Berkeley DB flag.
- Fix problem sending the last cent with sub-cent fractional change.
- Auto-detect whether to use 128-bit 4-way SSE2 on Linux.
Gavin Andresen:
- Option -rpcallowip= to accept json-rpc connections from another machine.
- Clean shutdown on SIGTERM on Linux.

Download:
http://sourceforge.net/projects/bitcoin/files/Bitcoin/bitcoin-0.3.13/

(Thanks Laszlo for the Mac OSX build!)

Note:
The SSE2 auto-detect in the Linux 64-bit version doesn't work with AMD in 64-bit mode.  Please try this instead and let me know if it gets it right:
http://www.bitcoin.org/download/bitcoin-0.3.13.1-specialbuild-linux64.tar.gz

You can still control the SSE2 use manually with -4way and -4way=0.

Version 0.3.13.2 (SVN rev 161) has improvements for the case where you already had 0/unconfirmed transactions that you might have already spent.  Here's a Windows build of it:
http://www.bitcoin.org/download/bitcoin-0.3.13.2-win32-setup.exe
Jump to: