-
Notifications
You must be signed in to change notification settings - Fork 503
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
Display fees charged in /fee_stats endpoint #1372
Comments
I think the whole purpose of the fee stats endpoint is to allow to outbid other people, so using the effective fee will break that property. The fee auction takes care of ensuring that people pay the least possible. What actual problem are you trying to solve with those changes? |
I think there are multiple issues with the current state of this endpoint (after #1358):
Maybe we should do what you propose but in a smooth way? Like: First expose extra stats connected to |
I think returning That said, I really like @bartekn's proposal of doing it a smooth way. In fact, I'd support returning both kinds of stats in the endpoint permanently. I think it's useful to know both (so you can have a sense for what you have to bid, and also know what you can expect to pay). |
The term "Accepted fee" communicates to me that this was the fee that was actually paid, where-as I just discovered (#1857 (comment)) that it is actually the maximum fee defined in a transaction that was accepted into the network. Given that there are multiple incorrect interpretations there's very likely to be others making the wrong assumptions too. +1 to changing the name of that concept or including both stats to clear up any ambiguity about what the fee represents. |
This confused me again recently. I think it's not good in the current state and we need to take some action. I don't see an easy way to deprecate this gradually because the current name ( Proposal:
This then matches the naming in the The only downside I see is the unfortunate naming of the new fields Proposed
|
I think we should improve this in a backwards compatible way. I think we should only add new fields. While @@ -2,6 +2,19 @@
"last_ledger": "26856530",
"last_ledger_base_fee": "100",
"ledger_capacity_usage": "0.09",
+ "min_charged_fee": "100",
+ "mode_charged_fee": "100",
+ "p10_charged_fee": "100",
+ "p20_charged_fee": "100",
+ "p30_charged_fee": "100",
+ "p40_charged_fee": "100",
+ "p50_charged_fee": "100",
+ "p60_charged_fee": "100",
+ "p70_charged_fee": "100",
+ "p80_charged_fee": "100",
+ "p90_charged_fee": "100",
+ "p95_charged_fee": "100",
+ "p99_charged_fee": "100",
"min_accepted_fee": "100",
"mode_accepted_fee": "100",
"p10_accepted_fee": "100", |
@ire-and-curses @leighmcculloch @bartekn @tamirms I agree with both Eric and Leigh 💔 I think the suffix I'd like to propose a third option which would be to partially follow Eric's plan, introducing the the suffix Along with this, we'll have to update the docs to explain that We have to update the documentation anyways, since the message conveyed today is that the value you are getting actually referrers to |
That sounds like a good idea to me. Having two lots of these values at the top-level was going to be noisy, having three is going to be a lot I think. If we do this could we group the new fields with common sub-fields? Example: {
"last_ledger": "306006",
"last_ledger_base_fee": "100",
"ledger_capacity_usage": "0.35",
"fee_charged": {
"min": "100",
"mode": "100",
"p10": "100",
"p20": "100",
"p30": "100",
"p40": "100",
"p50": "100",
"p60": "100",
"p70": "100",
"p80": "100",
"p90": "100",
"p95": "100",
"p99": "100",
},
"max_fee": {
"min": "100",
"mode": "100",
"p10": "100",
"p20": "100",
"p30": "100",
"p40": "100",
"p50": "100",
"p60": "100",
"p70": "100",
"p80": "100",
"p90": "100",
"p95": "100",
"p99": "100",
},
"min_accepted_fee": "100",
"mode_accepted_fee": "100",
"p10_accepted_fee": "100",
"p20_accepted_fee": "100",
"p30_accepted_fee": "100",
"p40_accepted_fee": "100",
"p50_accepted_fee": "100",
"p60_accepted_fee": "100",
"p70_accepted_fee": "100",
"p80_accepted_fee": "100",
"p90_accepted_fee": "100",
"p95_accepted_fee": "100",
"p99_accepted_fee": "100",
} |
works for me! Also I like the nesting suggestion @leighmcculloch |
@leighmcculloch I like that approach! The only cons is that it might require "extra" handling in some languages vs dot notation on JS, but I think that's a low-level detail and a problem which has been solved already. I'll move ahead with this solution. |
@abuiles Given that our JSON API serves up complex responses containing |
Yep, @leighmcculloch's solution LGTM! While we're at it I suggest to add |
Sounds good to me and since this is new data, we can use any format we want :) |
+1 to adding I think p95 and p99 are still going to be of interest, even if we add max. If we add the max field can we call it |
Fixed in #1964. |
In #1358 we introduced new fields in Transaction resource:
fee_charged
- a fee actually paid for a transaction (txresult.FeeCharged
)max_fee
- a maximum fee source account is willing to pay (transaction.Fee
)The
/fee_stats
endpoint displays stats for fee bids (usingmax_fee
value) instead of the fees that were actually paid for transactions. This can be confusing for users that can bid even higher fees.Basically the main problem is that field names (
accepted_fee
suffix) are really confusing in a new context.The text was updated successfully, but these errors were encountered: