Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

label transaction sizes as "vbytes" not "bytes" #6961

Closed
dooglus opened this issue Jan 22, 2021 · 17 comments · Fixed by #8864
Closed

label transaction sizes as "vbytes" not "bytes" #6961

dooglus opened this issue Jan 22, 2021 · 17 comments · Fixed by #8864

Comments

@dooglus
Copy link

dooglus commented Jan 22, 2021

Electrum is showing transaction sizes in vbytes but labels them incorrectly in bytes.

Example, spending a single bech32 utxo to another bech32 utxo:

Screenshot_2021-01-22_08-05-56

The real transaction size is 191 bytes, and 110 vbytes but electrum says it's 110 bytes. Fees are measured in sat/vbyte but electrum shows it as sat/byte. This is confusing people.

@ecdsa
Copy link
Member

ecdsa commented Jan 22, 2021

This user is not confused anymore, if I follow your link.

vbytes are a bitcoin conncept,
showing 'vbytes' would be confusing even more people.

@SomberNight
Copy link
Member

SomberNight commented Jan 22, 2021

Note that no one should ever care about the "bytes" size of a transaction, except for low-level development.
It is only ever the vbytes/wu(weight) that matters; for the vast majority.
No one besides developers know what wu is, so we cannot use that.
So we must show units in vbytes everywhere then, and we do.

The question then is if vbytes should be labelled as "vbytes" or as "bytes".
I personally do not care much, would perhaps ever so slightly favour "vbytes" as that is the technically correct term;
however I think showing "vbytes" would result in more user confusion, as users would then ask what a vbyte is.

@dooglus
Copy link
Author

dooglus commented Jan 22, 2021

I would favor 'confusing' over just plain wrong. The transaction isn't 110 bytes, and showing it as that is incorrect. For users who don't know the difference between bytes and vbytes they don't care what you label it, and for those who do it should be labelled correctly. Otherwise it's impossible to set the fee correctly.

@ecdsa
Copy link
Member

ecdsa commented Jan 22, 2021

Otherwise it's impossible to set the fee correctly.

why is that?

@dooglus
Copy link
Author

dooglus commented Jan 23, 2021

If you tell me the size in bytes but not in vbytes and I want to set a fee per vbyte how would I do that unless I am somehow aware that what you call 'byte' is actually 'vbyte'?

@ecdsa
Copy link
Member

ecdsa commented Jan 23, 2021

that does not make any sense.. there is no conversion between bytes and vbytes, like there is between Fahrenheit and Celcius.
if I tell you the size in bytes, you cannot do anything useful with it regarding the fee.

@SomberNight
Copy link
Member

I believe his point is that for people that do know the difference between bytes and vbytes, what is being shown is confusing, without external contextual information that what we label as "bytes" is actually vbytes.

@ecdsa
Copy link
Member

ecdsa commented Jan 24, 2021

Fair enough. However, we did not receive too many complaints about that since Segwit has been activated. I am happy with the current number of noise about it. Exposing "vbytes" to non-expert users would, in my opinion, raise more questions.

In addition, if we use "vbytes", will we have to use "sats/vb" or "sats/v" in places where size is a constraint? That is getting increasingly cryptic.

@Derek701
Copy link

Leaving a comment to make some "noise" about vbytes and sats/vb being preferred to the misleading bytes and sat/byte.

@dooglus
Copy link
Author

dooglus commented Jan 27, 2021

if I tell you the size in bytes, you cannot do anything useful with it regarding the fee.

So don't tell me the size in bytes. Tell me the size in a useful unit, like vbytes or weight units.

I know you are actually telling me the size in vbytes, but you are labeling it as "bytes", which is wrong and misleading.

@dooglus
Copy link
Author

dooglus commented Jan 27, 2021

However, we did not receive too many complaints about that since Segwit has been activated. I am happy with the current number of noise about it. Exposing "vbytes" to non-expert users would, in my opinion, raise more questions.

If people have questions they can google for the answer. The current situation is simply misleading.

In addition, if we use "vbytes", will we have to use "sats/vb" or "sats/v" in places where size is a constraint? That is getting increasingly cryptic.

It's not cryptic. Just label the units correctly. If you report a fee that is denominated in sats/vb then label is as being denominated in sats/vb. If you report a temperature that is measured in Celcius you wouldn't label is with "F" would you, even if less people understand what "C" means.

@dooglus
Copy link
Author

dooglus commented Jan 27, 2021

vbytes are a bitcoin conncept,
showing 'vbytes' would be confusing even more people.

Are you saying that electrum is more than just a bitcoin wallet, and that labeling the transaction sizes correctly as being in 'vbytes' would confuse the non-bitcoin users? If so, I didn't realize that electrum supports other coins. I've seen forks that do.

If that is the concern, the 'byte' label could be changed only for bitcoin wallets.

@dooglus
Copy link
Author

dooglus commented Jan 27, 2021

I believe his point is that for people that do know the difference between bytes and vbytes, what is being shown is confusing, without external contextual information that what we label as "bytes" is actually vbytes.

Yes, and for people who don't know the difference there's no point in reporting it at all. The current reporting is useless for everyone except for people who have looked into things deeply enough to know that electrum is reporting the size in vbytes but incorrectly labeling it as bytes which is likely a very small number of people (hence the low level of 'noise' about the issue).

@ZenulAbidin
Copy link
Contributor

I second dooglus' request to change the UI to use sats/vbyte.

Every time I assist someone on bitcointalk related to fees and they say that they paid "X sats/bytes" and wonder how they overpaid/fee is too low and so on, and I explain to them in terms of vbytes, there's a risk that the other person doesn't know what a vbyte is, since they believe bytes to be the unit of transaction size. I shouldn't need to tell each of them the history behind the use of vbytes for them to get it. It should be something they can point at in the UI and think that this is the unit of transaction size.

In addition, if we use "vbytes", will we have to use "sats/vb" or "sats/v" in places where size is a constraint? That is getting increasingly cryptic.

vbytes is de facto shortened to vb so I believe it wouldn't be appropriate to shorten it to sats/v, since the "v" is for virtual which is ambiguous without a unit.

@fooedge2
Copy link

I completely agree with dooglus here, please use the correct units, it totally confused me when I started to use Electrum.

@AndreKR
Copy link

AndreKR commented Jan 17, 2024

Luckily when you google "sat/b sat/vb" because you want to convert sat/B from Electrum to sat/vB that everyone else uses, this comment (by @dooglus) is currently among the first results.

@ecdsa
Copy link
Member

ecdsa commented Jan 17, 2024

ok, let's use vbytes then. it seems to have become the standard.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging a pull request may close this issue.

7 participants