Skip to content

Commit 08a2785

Browse files
lukelee-slmgarbs
andauthored
fix: revise HIP response code and mirror node consideration (#1267)
Signed-off-by: Luke Lee <luke.lee@hashgraph.com> Co-authored-by: Michael Garber <michael.garber@hashgraph.com>
1 parent 14e974b commit 08a2785

1 file changed

Lines changed: 10 additions & 4 deletions

File tree

HIP/hip-1249.md

Lines changed: 10 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,7 @@ created: 2025-06-30
1212
last-call-date-time: 2025-08-13T07:00:00Z
1313
discussions-to: https://github.com/hiero-ledger/hiero-improvement-proposals/pull/1249
1414
replaces: 185
15-
updated: 2025-08-04
15+
updated: 2025-08-20
1616
---
1717

1818
# Abstract
@@ -88,7 +88,7 @@ Under this proposal:
8888
- Each transaction specifies a gas limit (must not exceed network maximum).
8989
- At execution:
9090
- Ops units are deducted from the throttle bucket based on executed opcodes.
91-
- If the bucket is exhausted, remaining transactions fail with THROTTLED_AT_CONSENSUS and incur only the intrinsic
91+
- If the bucket is exhausted, remaining transactions fail with CONSENSUS_GAS_EXHAUSTED and incur only the intrinsic
9292
gas fee (covering network costs).
9393

9494
This maintains the current behavior where over-submitted transactions may fail and incur fees, but improves overall
@@ -153,6 +153,11 @@ operations not covered by other throttles.
153153

154154
If a precompile/system call exhausts ops mid-transaction, handle as in Execution Outcomes.
155155

156+
## Mirror Node Considerations
157+
The mirror node computes a value called `gasConsumed` in order to provide a more accurate representation of gas used by
158+
the evm. As the `gasUsed` value will accurately reflect the gas used by the evm, the `gasConsumed` value will equal `gasUsed`
159+
going forward. `gasConsumed` will still exist for backwards compatibility, but `gasUsed` should be used in all new code.
160+
156161
# Backwards Compatibility
157162

158163
This change is backward-compatible for developers:
@@ -189,8 +194,9 @@ Educate developers on key changes:
189194

190195
1. **Simplified Billing**: No more 80% minimum charge—pay only for gas used. This reduces costs for overestimated limits
191196
and eases gas estimation.
192-
2. **Throttle Failures**: Transactions may still fail due to exhausted ops/sec (error: THROTTLED_AT_CONSENSUS), even if
193-
valid. Advise retry logic and monitoring network load.
197+
2. **Throttle Failures**: A transaction may overfill the ops per second throttle up to a 15M gas per transaction limit.
198+
Subsequent transactions will fail (error: CONSENSUS_GAS_EXHAUSTED) until enough time passes to refill some throttle capacity,
199+
even if valid. Advise retry logic and monitoring network load.
194200
3. **Performance Gains**: Highlight potential for faster, higher-throughput applications without code changes.
195201
4. **Precompile/System Call Costs**: Explain that these now factor into throttling for better performance limits.
196202
Developers using HTS or crypto functions should note potential failures if ops exhaust, but no code changes

0 commit comments

Comments
 (0)