Skip to content

Commit 49c3d92

Browse files
committed
refine description of PushSolution
1 parent 161f21c commit 49c3d92

1 file changed

Lines changed: 8 additions & 2 deletions

File tree

06-Job-Declaration-Protocol.md

Lines changed: 8 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -265,9 +265,15 @@ Only used in Full-Template mode.
265265

266266
Sent by JDC as soon as a valid block is found, so that it can be propagated also by JDS.
267267

268-
In the meantime, the block is also transmitted to the network by JDC through the `SubmitSolution` message under in Template Distribution Protocol.
268+
`PushSolution` is only guaranteed to be valid for the most recent `DeclareMiningJob.Success` that JDS has sent on the same connection.
269269

270-
In this way, a valid solution is immediately propagated on both client and server sides, decreasing the chance of the block being orphaned by the network.
270+
When receiving `PushSolution`, JDS MUST attempt to reconstruct and propagate the block using the template data associated with its most recently sent `DeclareMiningJob.Success`.
271+
272+
JDS MAY try to reconstruct and propagate the block using template data associated with other recently sent `DeclareMiningJob.Success`, but if the solution does not correspond to the last declared job, JDS is not expected to propagate it.
273+
274+
Regardless of JDS-side propagation, the block is always transmitted to the network by JDC through the `SubmitSolution` message in the Template Distribution Protocol.
275+
276+
In this way, the protocol encourages valid solutions to be immediately propagated on both client and server sides, decreasing the chance of the block being orphaned by the network.
271277

272278
| Field Name | Data Type | Description |
273279
| --------------------------------------- | --------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |

0 commit comments

Comments
 (0)