Skip to content

Commit 05b5db8

Browse files
authored
Merge pull request #216 from ethereum/timeouts-redux
engine timeouts (redux)
2 parents 29ebc08 + fb13942 commit 05b5db8

File tree

1 file changed

+11
-0
lines changed

1 file changed

+11
-0
lines changed

src/engine/specification.md

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -12,6 +12,7 @@ This document specifies the Engine API methods that the Consensus Layer uses to
1212
- [Message ordering](#message-ordering)
1313
- [Load-balancing and advanced configurations](#load-balancing-and-advanced-configurations)
1414
- [Errors](#errors)
15+
- [Timeouts](#timeouts)
1516
- [Structures](#structures)
1617
- [ExecutionPayloadV1](#executionpayloadv1)
1718
- [ForkchoiceStateV1](#forkchoicestatev1)
@@ -133,6 +134,12 @@ $ curl https://localhost:8550 \
133134
}
134135
```
135136

137+
## Timeouts
138+
139+
Consensus Layer client software **MUST** wait for a specified `timeout` before aborting the call. In such an event, the Consensus Layer client software **MAY** retry the call.
140+
141+
Consensus Layer client software **MAY** wait for response longer than it is specified by the `timeout` parameter.
142+
136143
## Structures
137144

138145
Values of a field of `DATA` type **MUST** be encoded as a hexadecimal string with a `0x` prefix matching the regular expression `^0x(?:[a-fA-F0-9]{2})*$`.
@@ -240,6 +247,7 @@ The payload build process is specified as follows:
240247
* method: `engine_newPayloadV1`
241248
* params:
242249
1. [`ExecutionPayloadV1`](#ExecutionPayloadV1)
250+
* timeout: 8s
243251

244252
#### Response
245253

@@ -276,6 +284,7 @@ The payload build process is specified as follows:
276284
* params:
277285
1. `forkchoiceState`: `Object` - instance of [`ForkchoiceStateV1`](#ForkchoiceStateV1)
278286
2. `payloadAttributes`: `Object|null` - instance of [`PayloadAttributesV1`](#PayloadAttributesV1) or `null`
287+
* timeout: 8s
279288

280289
#### Response
281290

@@ -323,6 +332,7 @@ The payload build process is specified as follows:
323332
* method: `engine_getPayloadV1`
324333
* params:
325334
1. `payloadId`: `DATA`, 8 Bytes - Identifier of the payload build process
335+
* timeout: 1s
326336

327337
#### Response
328338

@@ -344,6 +354,7 @@ The payload build process is specified as follows:
344354
* method: `engine_exchangeTransitionConfigurationV1`
345355
* params:
346356
1. `transitionConfiguration`: `Object` - instance of [`TransitionConfigurationV1`](#TransitionConfigurationV1)
357+
* timeout: 1s
347358

348359
#### Response
349360

0 commit comments

Comments
 (0)