|
piuk (OP)
|
|
May 04, 2012, 01:07:59 AM |
|
|
|
|
|
fireduck
|
|
May 04, 2012, 04:04:59 AM |
|
No, sir, that was me. I think an explanation is in order. I am the sys admin for Satoshidice.com. We are using a bitcoin library that I think we are pushing beyond its normal limits so sometimes things go bad such that our wallet file isn't usable. When this happens I have a procedure. I create a new wallet, add our keys, sync in transactions from the blockchain and import our latest pending transactions (we save them to help with this process). Sometimes some things go wrong in this and we end up thinking we haven't paid a bet we have already issued a transaction for. So we end up double spending it as above. Eventually one of them gets into the chain and we rectify our database based on that and things move on. It isn't pretty and I'm sorry for the trouble it causes but it isn't malicious and everyone gets paid correctly in the end. For the transaction in question above, the bet was: http://blockchain.info/tx-index/4635934/0 (tx 74fa4a2775cbeebe7216efee0703649f5ae5d1db336896ffaa2df65ccc2bba22) The payment transaction that made it into the chain is: http://blockchain.info/tx-index/4720099 (tx 2bf2c53ab98d7c04f6e124efaa0e4c80a78d2d13cb4414586a871d4a308963b0) Right now, it has 66 confirmations so no way it is going to reversed in favor of any other. Here is our detail page for that bet: http://satoshidice.com/full.php?tx=74fa4a2775cbeebe7216efee0703649f5ae5d1db336896ffaa2df65ccc2bba22As I work out problems with our implementation I hope to avoid these happening.
|
Bitrated user: fireduck.
|
|
|
MemoryDealers
VIP
Legendary
Offline
Activity: 1052
Merit: 1155
|
|
May 04, 2012, 04:05:41 AM |
|
Iphones will not pair properly with the QR code on blockchain.info if the wallet password contains white spaces or special characters.
The wallet still works fine inside the desktop browser. (Chrome on OSX)
Keep up the great work!
|
|
|
|
fireduck
|
|
May 04, 2012, 04:06:30 AM |
|
Does satoshidice receive unconfirmed tx's and payout instantly from a different balance?
We pay out instantly, but always include the unconfirmed tx in the inputs. So even in cases were we screw up and pay out twice only one can possible get into the chain.
|
Bitrated user: fireduck.
|
|
|
MemoryDealers
VIP
Legendary
Offline
Activity: 1052
Merit: 1155
|
|
May 04, 2012, 05:00:31 AM |
|
When displaying national currencies, the iPhone app should display a consistent number of decimal places.
|
|
|
|
|
HostFat
Staff
Legendary
Offline
Activity: 4270
Merit: 1209
I support freedom of choice
|
|
May 04, 2012, 09:41:40 AM |
|
Can you also integrate the backup function with Google Drive?
PS: I'm still not able to send transactions.
|
|
|
|
randomproof
Member
Offline
Activity: 61
Merit: 10
|
|
May 04, 2012, 04:30:37 PM |
|
When displaying national currencies, the iPhone app should display a consistent number of decimal places.
That and it should display all the decimal places of bitcoins. I have a few transactions that are 0.0005 BTC and they just show as 0.00 BTC.
|
Donations to me: 19599Y3PTRF1mNdzVjQzePr67ttMiBG5LS
|
|
|
|
piuk (OP)
|
|
May 05, 2012, 02:57:43 AM |
|
Can you also integrate the backup function with Google Drive?
Google Drive Added. Needs testing. PS: I'm still not able to send transactions.
I've added a new api call to check https://blockchain.info/rejected after tx send. If an error is found it will now give a reason why your transaction failed. More Detail: When a transaction is pushed out it goes through some basic validity checks (using BitcoinJ) and is then pushed to Bitcoind for broadcast. As long as it passes the initial checks it is reported as sent but there are some conditions in which Bitcoind may subsequently reject it. The most common cause of this is when bitcoind's memory pool gets out of sync with the unconfirmed transactions in the SQL database e.g. when bitcoind is restarted. Any tx's with outputs <= 0.001 BTC require a fee. Until recently i was not aware of this and the both the android and iPhone app do not factor this in when calculating the tx fee (the web interface does). Eligius does process low fee transactions for blockchain.info but there can be a delay of up to a few hours.
|
|
|
|
punningclan
Sr. Member
Offline
Activity: 283
Merit: 250
Making a better tomorrow, tomorrow.
|
|
May 05, 2012, 06:56:17 AM |
|
fyi : That problem went away. Thanks again!
|
It was a cunning plan to have the funny man be the money fan of the punning clan. 1J13NBTKiV8xrAo2dwaD4LhWs3zPobhh5S
|
|
|
dvide
Newbie
Offline
Activity: 59
Merit: 0
|
|
May 05, 2012, 12:56:00 PM |
|
Any tx's with outputs <= 0.001 BTC require a fee. Until recently i was not aware of this and the both the android and iPhone app do not factor this in when calculating the tx fee (the web interface does). Eligius does process low fee transactions for blockchain.info but there can be a delay of up to a few hours. I see, thanks. Strange though because I sent another transaction later of 0.1 BTC and this time it did ask me to add a 0.005 fee. Was that for a different reason than the <= 0.001 BTC output rule? Now I have another problem though. I'm tying to send a third transaction of 0.2 BTC from the same paper wallet address, but after I scan the QR code it says 'Insufficient Funds'. There's 5 BTC there so something must be going wonky. At first I thought maybe I had to wait for confirmations from the previous transaction, but it has over 100 now.
|
|
|
|
randomproof
Member
Offline
Activity: 61
Merit: 10
|
|
May 05, 2012, 06:26:55 PM |
|
Any tx's with outputs <= 0.001 BTC require a fee. Until recently i was not aware of this and the both the android and iPhone app do not factor this in when calculating the tx fee (the web interface does). Eligius does process low fee transactions for blockchain.info but there can be a delay of up to a few hours. I see, thanks. Strange though because I sent another transaction later of 0.1 BTC and this time it did ask me to add a 0.005 fee. Was that for a different reason than the <= 0.001 BTC output rule? Now I have another problem though. I'm tying to send a third transaction of 0.2 BTC from the same paper wallet address, but after I scan the QR code it says 'Insufficient Funds'. There's 5 BTC there so something must be going wonky. At first I thought maybe I had to wait for confirmations from the previous transaction, but it has over 100 now. If you see the transaction on blockchain.info is has been transferred and should be added to a block, but if on blockchain.info it says that it is a "low priority transaction" it can take some time, usually only a few hours. There is a branch of the desktop client that will ignore the fee rules and send a transaction without any fee and you can get stale transaction that no one will add. I know you can use pywallet to remove those from a wallet, but I don't know how you could remove one from an online wallet.
|
Donations to me: 19599Y3PTRF1mNdzVjQzePr67ttMiBG5LS
|
|
|
MemoryDealers
VIP
Legendary
Offline
Activity: 1052
Merit: 1155
|
|
May 06, 2012, 01:29:31 AM |
|
Request #1 Can I ask where you get the exchange rate for Chinese Yuan? In your app it shows 1 BTC = 30.125 RMB (Currently Bitcoin is $5.04) But according to www.xe.com 30.125 RMB would only be $4.78 (Why is there a $0.26 difference per bitcoin?) Request #2) Yesterday I had a meeting about Bitcoin with several people in a hotel in China. We were all sharing the Hotel Wifi. After explaining Bitcoin, I had them install your app. The first person installed it with little trouble. When the 2nd person tried to create a wallet on their laptop, an error was given that a wallet was just created by the same IP address. You may want to consider lifting the restriction on the number of wallets that can be created from the same IP address. Luckily my friend already had a VPN subscription so he was easily able to change his IP address and create a wallet. Thanks for working on making such a great app!
|
|
|
|
P4man
|
|
May 06, 2012, 01:54:39 PM |
|
First time I tried the blockchain app "for real", ie, not testing with 0.01BTC test transactions, it failed rather miserably I wanted to sell 50BTC to a friend. I brought my android phone, tried sending him 50BTC from my blockchain wallet, and it told me the wallet didnt support more than 16kb.. of.. ? inputs? not sure. So I tried 25BTC, same error. Tried 5BTC, and that worked, but took forever. So I switched to my laptop, went to the blockchain site and did the same in the browser, and the result was the same. 10BTC transactions worked, but took forever, and 20+BTC transactions failed due to that 16Kb limit.
|
|
|
|
Peter Todd
Legendary
Offline
Activity: 1120
Merit: 1160
|
|
May 06, 2012, 04:52:01 PM |
|
First time I tried the blockchain app "for real", ie, not testing with 0.01BTC test transactions, it failed rather miserably I wanted to sell 50BTC to a friend. I brought my android phone, tried sending him 50BTC from my blockchain wallet, and it told me the wallet didnt support more than 16kb.. of.. ? inputs? not sure. So I tried 25BTC, same error. Tried 5BTC, and that worked, but took forever. So I switched to my laptop, went to the blockchain site and did the same in the browser, and the result was the same. 10BTC transactions worked, but took forever, and 20+BTC transactions failed due to that 16Kb limit. What happened is you've been receiving a large number of small payments. Each payment to you is a separate transaction. When bitcoin wants to spend the value of a transaction each separate transaction has to be included as an "input" to the new transaction you make. Each input takes up some space, and unfortunately you had enough transactions to exceed blockchain.info's *size* limit. This isn't actually a limit on how *much* BTC you're trying to send, but rather, the form it took when it was sent to you. For instance, if I sent you 50BTC in one payment you would have a transaction that looked like this: TX#1: retep says P4man can have 50BTC, using the outputs of transactions... Now to spend it, you would create a new transaction: TX#2: P4man says someguy can have 50BTC, using the output of transaction TX#1 In your case though, you have a few dozen transactions, so when you try to spend it, the new transaction looks like this: TX#2: P4man says someguy can have 50BTC, using the output of transaction TX#1, TX#2, #3, #4 and so on. http://blockchain.info/tx-index/4947507/d17258cfb9970b8715e5ed7e62822b08aaccd6368dc563666758f59de6f300e2 <- here's a good example of a transaction that needed a lot of inputs. It looks kinda funny having the same "from" address multiple times, but it actually just means that multiple small transaction *to* the address 18oh1W4a3WpybAW8CCnBqSVgKBdjgQULr2 were made, and the new transaction needed multiple inputs to spend them all. The reason why it took so long to create those transactions BTW is just that blockchain.info uses a relatively slow javascript implementation of the cryptography used in bitcoin. As a practical point of view, next time you find you're getting a lot of transactions, it can help if you create a payment to *yourself*. Your wallet software will bundle up a bunch of transactions into a single one, and then the next time you need to spend it you only have to include the output of that one transaction. Out of curiosity... have you been playing satoshidice?
|
|
|
|
P4man
|
|
May 06, 2012, 05:35:35 PM |
|
Out of curiosity... have you been playing satoshidice?
Nope. Though you are probably correct on the rest, and I did receive lots of smallish payments, mostly mining revenue, but not that extreme. My wallet has 200 incoming transactions ranging from ~0.1 to 5 BTC, averaging 0.25 BTC each. Doesnt strike me as extreme. Thanks for the tip about sending a payment to myself, but Im curious as to why that would work.. wouldnt it cause the same problem? Or did you mean that I could have 'prepared' the sale by sending 5x 10BTC payments to myself prior to seeing my friend?
|
|
|
|
Stephen Gornick
Legendary
Offline
Activity: 2506
Merit: 1010
|
|
May 06, 2012, 07:36:40 PM |
|
I could have 'prepared' the sale by sending 5x 10BTC payments to myself prior to seeing my friend?
Correct, that simply is forcing the spend to occur when it is convenient.
|
|
|
|
P4man
|
|
May 06, 2012, 07:57:09 PM |
|
Well, thats mildly annoying. Having to 'defrag' your wallet.
|
|
|
|
|