File tree Expand file tree Collapse file tree
yarn-project/pxe/src/block_synchronizer Expand file tree Collapse file tree Original file line number Diff line number Diff line change @@ -77,6 +77,8 @@ export class BlockSynchronizer implements L2BlockStreamEventHandler {
7777 const blockHeader = await this . node . getBlockHeader ( BlockNumber ( event . block . number ) ) ;
7878 if ( blockHeader ) {
7979 await this . updateAnchorBlockHeader ( blockHeader ) ;
80+ } else {
81+ this . log . warn ( `Block header not found for proven block ${ event . block . number } , skipping anchor update` ) ;
8082 }
8183 }
8284 break ;
@@ -86,6 +88,8 @@ export class BlockSynchronizer implements L2BlockStreamEventHandler {
8688 const blockHeader = await this . node . getBlockHeader ( BlockNumber ( event . block . number ) ) ;
8789 if ( blockHeader ) {
8890 await this . updateAnchorBlockHeader ( blockHeader ) ;
91+ } else {
92+ this . log . warn ( `Block header not found for finalized block ${ event . block . number } , skipping anchor update` ) ;
8993 }
9094 }
9195 break ;
@@ -152,6 +156,8 @@ export class BlockSynchronizer implements L2BlockStreamEventHandler {
152156 }
153157
154158 this . log . debug ( `Syncing PXE with the node` ) ;
159+ // Capture the promise locally so we always await the exact promise we created, even if this.isSyncing is modified
160+ // between assignment and await (e.g. due to future refactors introducing a yield point).
155161 const isSyncing = this . doSync ( ) ;
156162 this . isSyncing = isSyncing ;
157163 try {
You can’t perform that action at this time.
0 commit comments