Bitcoin Forum
November 03, 2024, 10:41:33 AM *
News: Latest Bitcoin Core release: 28.0 [Torrent]
 
   Home   Help Search Login Register More  
Pages: [1]
  Print  
Author Topic: adg  (Read 4253 times)
Anonymous
Guest

September 09, 2010, 01:56:54 PM
Last edit: September 11, 2011, 04:54:25 PM by davidonpda
 #1

adg
theymos
Administrator
Legendary
*
Offline Offline

Activity: 5376
Merit: 13367


View Profile
September 09, 2010, 02:05:11 PM
 #2

If you send your entire balance, then you won't have enough left to pay any fee. You could send 49.99.

I don't know why that's happening. There shouldn't be a fee for any non-combined transaction.

1NXYoJ5xU91Jp83XfVMHwwTUyZFK64BoAD
theymos
Administrator
Legendary
*
Offline Offline

Activity: 5376
Merit: 13367


View Profile
September 09, 2010, 06:43:13 PM
 #3

0.3.12 contains some changes to transaction fees. Are you using that?

1NXYoJ5xU91Jp83XfVMHwwTUyZFK64BoAD
TTBit
Legendary
*
Offline Offline

Activity: 1136
Merit: 1001


View Profile
September 09, 2010, 08:10:24 PM
 #4

Rounding error? Have you received bitcoins from the faucet, then paid 0.0495 btc to someone. Ever done anything in the 3rd decimal or beyond? I have 0.01 at TAABL that I can't withdraw due to rounding error. Still, +50.00 is +50.00, and should be able to withdraw that.

Fresh blocks take something like 100 blocks to confirm. I assume you waited.

good judgment comes from experience, and experience comes from bad judgment
satoshi
Founder
Sr. Member
*
Offline Offline

Activity: 364
Merit: 7193


View Profile
September 10, 2010, 12:23:24 AM
 #5

What version is the one where this happened?  Release build, or built it yourself?  Which operating system? 

Were you sending by IP or by Bitcoin Address?

When you sent 49.99, did it prompt you to pay a 0.01 fee?

There was a change in GetMinFee, but I can't see how it would cause this.  It only starts to apply when a block gets huge.

The reason for the difference in block number is the number displayed was reduced by 1 in 0.3.11 because it made more sense that way.
satoshi
Founder
Sr. Member
*
Offline Offline

Activity: 364
Merit: 7193


View Profile
September 10, 2010, 12:46:37 AM
 #6

I think I know what happened.  Doubleclick on the generated transaction.  It probably has a sub-0.01 transaction fee in it.

Someone has been paying a 0.00000010 transaction fee.  I don't think you can even set that with -paytxfee, I think you'd have to modify the code to do it.  Your generated block is worth 50.00000010, so when you try to send the whole thing you have 0.00000010 left over for the change, which triggers the dust spam 0.01 fee.

It would normally be harmless except in this corner case.  I should add a special case to CreateTransaction to handle this.
nelisky
Legendary
*
Offline Offline

Activity: 1540
Merit: 1002


View Profile
September 10, 2010, 02:02:36 PM
 #7

I'm really puzzled with all this. I also generated a block and transferred it out on the spot. Looking at the transaction:

     "address" : "1LCSXSx8sjcZKHFXbyasBsuEdJtBVRaco7",
        "label" : "",
        "txid" : "1249190d1a13b03b51c27ded2e8441d446a8ae6ef90f90db31a8267da0845685",
        "txtime" : 1283997623,
        "category" : "debit",
        "amount" : 50.01000000,
        "confirmations" : 228
    },

it seems I paid the fee too. Why would that be? A block that had too many tx, the value coming from multiple small value purses (but the client should see one purse that satisfies the whole transaction, right?) or what else?
theymos
Administrator
Legendary
*
Offline Offline

Activity: 5376
Merit: 13367


View Profile
September 10, 2010, 02:31:12 PM
 #8

So I lost a penny in it. My question then, that transaction fee, then goes to the next block? Or the one before the one I generated?

You didn't pay a transaction fee. You have .01000010 in your balance; you just can't spend it. The network would accept it if you sent the entire 0.01000010 to another address (you can't break it apart), but the Bitcoin interface doesn't support such high precision.

Quote
Since fees apply to transactions less than 0.01, adding a transaction fee should be at least 0.01 right?


That's not network-enforced. Transaction fees are not "outs", so they're not subject to the "dust spam" restriction.

it seems I paid the fee too. Why would that be? A block that had too many tx, the value coming from multiple small value purses (but the client should see one purse that satisfies the whole transaction, right?) or what else?

You received a fee of 0.01. You didn't pay one.

1NXYoJ5xU91Jp83XfVMHwwTUyZFK64BoAD
satoshi
Founder
Sr. Member
*
Offline Offline

Activity: 364
Merit: 7193


View Profile
September 10, 2010, 05:12:33 PM
 #9

The fix is in SVN rev 151.

You will be able to send your stuck 0.01 (actually 0.01000010) when you next upgrade.
nelisky
Legendary
*
Offline Offline

Activity: 1540
Merit: 1002


View Profile
September 10, 2010, 05:51:54 PM
 #10

it seems I paid the fee too. Why would that be? A block that had too many tx, the value coming from multiple small value purses (but the client should see one purse that satisfies the whole transaction, right?) or what else?

You received a fee of 0.01. You didn't pay one.

Well, then it sounds fair to me, all of the sudden Smiley Did I get davidonpda's penny?
theymos
Administrator
Legendary
*
Offline Offline

Activity: 5376
Merit: 13367


View Profile
September 10, 2010, 05:57:59 PM
 #11

The fix, for those interested: if any change would be less than 0.01, it is "thrown away" by adding it as a transaction fee. Someone else will get it when they generate a block. Maybe someone will manage to collect enough of them to form a usable cent.

1NXYoJ5xU91Jp83XfVMHwwTUyZFK64BoAD
Insti
Sr. Member
****
Offline Offline

Activity: 294
Merit: 252


Firstbits: 1duzy


View Profile
September 14, 2010, 08:00:15 AM
 #12

The fix, for those interested: if any change would be less than 0.01, it is "thrown away" by adding it as a transaction fee. Someone else will get it when they generate a block. Maybe someone will manage to collect enough of them to form a usable cent.

This seems bad.
FreeMoney
Legendary
*
Offline Offline

Activity: 1246
Merit: 1016


Strength in numbers


View Profile WWW
September 14, 2010, 07:53:12 PM
 #13

The fix, for those interested: if any change would be less than 0.01, it is "thrown away" by adding it as a transaction fee. Someone else will get it when they generate a block. Maybe someone will manage to collect enough of them to form a usable cent.

This seems bad.


Why? Seems fine to me.

Play Bitcoin Poker at sealswithclubs.eu. We're active and open to everyone.
LZ
Legendary
*
Offline Offline

Activity: 1722
Merit: 1072


P2P Cryptocurrency


View Profile
September 16, 2010, 10:56:05 PM
Last edit: January 22, 2018, 06:12:00 AM by LZ
 #14

For me too. May be he did not read wiki?

My OpenPGP fingerprint: 5099EB8C0F2E68C63B4ECBB9A9D0993E04143362
RHorning
Full Member
***
Offline Offline

Activity: 224
Merit: 141


View Profile
September 17, 2010, 08:40:51 PM
 #15

The fix, for those interested: if any change would be less than 0.01, it is "thrown away" by adding it as a transaction fee. Someone else will get it when they generate a block. Maybe someone will manage to collect enough of them to form a usable cent.

This seems bad.


Why? Seems fine to me.

The problem I have with mucking about with special cases as applied to transactions less than 0.01 BTC is that it sets a floor to useful transaction.  Reiterated over and over again is how the value of an individual bitcoin is something that is variable compared to other currencies and products that you can buy with it.  More significantly, if there is a crushing influx of bitcoin users, the value of the bitcoins in the network will increase to compensate.

My problem is this:  the 0.01 fraction is also increasing in value over time, and there is no mechanism in place to adjust this value downward to some other smaller fraction without introducing a major upgrade to the whole network... and version conflicts if and when this value needs to be adjusted downward.  I'm not saying that this is currently a problem, but that it could be in the future.  If the value of a new automobile is less than 0.01 bitcoins, it would obviously not be a "minor transaction".

Trying to be proactive here.... what kind of mechanism could be used to trigger this value to become a variable rather than a constant?  When would it be advisable to change this to 0.001 BTC as the threshold instead?  It would be nice to put this into the network at some point, even if it is just ad hoc at the moment where at some point in the future (based on block counts) it drops to a lower value.  We've already seen the value of bitcoins increase, so this isn't purely a theoretical exercise either.  As it is also an avenue for attack on the network, I also see the benefit of having this lower threshold at least existing in one extent or another, but I don't think it should remain as a constant.
theymos
Administrator
Legendary
*
Offline Offline

Activity: 5376
Merit: 13367


View Profile
September 17, 2010, 09:06:14 PM
 #16

Quote from: RHorning
My problem is this:  the 0.01 fraction is also increasing in value over time, and there is no mechanism in place to adjust this value downward to some other smaller fraction without introducing a major upgrade to the whole network... and version conflicts if and when this value needs to be adjusted downward.

There won't be any conflict if the limit is lowered in a new Bitcoin version. Transaction fees are totally up to individual generators; the network doesn't care what you charge. If you modify Bitcoin to never charge any fees, then the 0.01 limit will be eliminated for blocks that you create, and every other Bitcoin client will still accept your blocks.

This fix is also not enforced by the network.

1NXYoJ5xU91Jp83XfVMHwwTUyZFK64BoAD
Pages: [1]
  Print  
 
Jump to:  

Powered by MySQL Powered by PHP Powered by SMF 1.1.19 | SMF © 2006-2009, Simple Machines Valid XHTML 1.0! Valid CSS!