@@ -16,16 +16,17 @@ const skip = 100
1616type queryVerifiableNeighboringEpochHeaderFn = func (context.Context , uint64 , uint64 ) (core.Header , error )
1717
1818func shouldSubmitBoundaryTimestampHeader (
19+ ctx context.Context ,
1920 getHeader getHeaderFn ,
2021 trustedBlockNumber uint64 ,
2122 latestFinalizedBlockNumber uint64 ,
2223 forkSpecs []* ForkSpec ) (* uint64 , uint64 , error ) {
2324
24- trustedBlock , err := getHeader (context . Background () , trustedBlockNumber )
25+ trustedBlock , err := getHeader (ctx , trustedBlockNumber )
2526 if err != nil {
2627 return nil , 0 , err
2728 }
28- latestFinalizedBlock , err := getHeader (context . Background () , latestFinalizedBlockNumber )
29+ latestFinalizedBlock , err := getHeader (ctx , latestFinalizedBlockNumber )
2930 if err != nil {
3031 return nil , 0 , err
3132 }
@@ -34,7 +35,7 @@ func shouldSubmitBoundaryTimestampHeader(
3435 latestCondition := latestForkSpec .GetHeightOrTimestamp ()
3536 if x , ok := latestCondition .(* ForkSpec_Timestamp ); ok {
3637 if MilliTimestamp (trustedBlock ) < x .Timestamp && x .Timestamp < MilliTimestamp (latestFinalizedBlock ) {
37- boundaryHeight , err := GetBoundaryHeight (getHeader , latestFinalizedBlock .Number .Uint64 (), * latestForkSpec )
38+ boundaryHeight , err := GetBoundaryHeight (ctx , getHeader , latestFinalizedBlock .Number .Uint64 (), * latestForkSpec )
3839 if err != nil {
3940 return nil , 0 , err
4041 }
@@ -44,7 +45,7 @@ func shouldSubmitBoundaryTimestampHeader(
4445 }
4546
4647 nextForkBoundaryHeightMinus1 := uint64 (boundaryHeight .Height ) - 1
47- log .GetLogger ().Info ( "ForkSpec height required" , "ts" , x .Timestamp , "height" , boundaryHeight , "nextForkBoundaryHeightMinus1" , nextForkBoundaryHeightMinus1 )
48+ log .GetLogger ().InfoContext ( ctx , "ForkSpec height required" , "ts" , x .Timestamp , "height" , boundaryHeight , "nextForkBoundaryHeightMinus1" , nextForkBoundaryHeightMinus1 )
4849 return & x .Timestamp , nextForkBoundaryHeightMinus1 , nil
4950 }
5051 }
@@ -61,7 +62,7 @@ func setupHeadersForUpdate(
6162 forkSpecs []* ForkSpec ,
6263) ([]core.Header , error ) {
6364 logger := log .GetLogger ()
64- logger .Debug ( "setupHeadersForUpdate start" , "target" , latestFinalizedHeader .GetHeight ().GetRevisionHeight ())
65+ logger .DebugContext ( ctx , "setupHeadersForUpdate start" , "target" , latestFinalizedHeader .GetHeight ().GetRevisionHeight ())
6566 targetHeaders := make ([]core.Header , 0 )
6667
6768 // Needless to update already saved state
@@ -70,7 +71,7 @@ func setupHeadersForUpdate(
7071 }
7172 savedLatestHeight := clientStateLatestHeight .GetRevisionHeight ()
7273
73- trustedBlock , err := getHeader (context . Background () , savedLatestHeight )
74+ trustedBlock , err := getHeader (ctx , savedLatestHeight )
7475 if err != nil {
7576 return nil , err
7677 }
@@ -79,7 +80,7 @@ func setupHeadersForUpdate(
7980 if err != nil {
8081 return nil , err
8182 }
82- trustedBoundaryHeight , err := GetBoundaryHeight (getHeader , savedLatestHeight , * trustedCurrentForkSpec )
83+ trustedBoundaryHeight , err := GetBoundaryHeight (ctx , getHeader , savedLatestHeight , * trustedCurrentForkSpec )
8384 if err != nil {
8485 return nil , err
8586 }
@@ -92,7 +93,7 @@ func setupHeadersForUpdate(
9293 latestFinalizedHeight := latestFinalizedHeader .GetHeight ().GetRevisionHeight ()
9394
9495 // If the condition is timestamp. we must submit the header with the timestamp
95- nextForkBoundaryTs , nextForkBoundaryHeightMinus1 , err := shouldSubmitBoundaryTimestampHeader (getHeader , savedLatestHeight , latestFinalizedHeader .GetHeight ().GetRevisionHeight (), forkSpecs )
96+ nextForkBoundaryTs , nextForkBoundaryHeightMinus1 , err := shouldSubmitBoundaryTimestampHeader (ctx , getHeader , savedLatestHeight , latestFinalizedHeader .GetHeight ().GetRevisionHeight (), forkSpecs )
9697 if err != nil {
9798 return nil , err
9899 }
@@ -103,7 +104,7 @@ func setupHeadersForUpdate(
103104 }
104105
105106 submittingHeights := makeSubmittingHeights (latestFinalizedHeight , savedLatestHeight , firstUnsaved , nextForkBoundaryTs , nextForkBoundaryHeightMinus1 )
106- logger .Debug ( "submitting heights" , "heights" , submittingHeights , "trusted height" , savedLatestHeight , "trusted epoch" , trustedEpochHeight , "first unsaved" , firstUnsaved )
107+ logger .DebugContext ( ctx , "submitting heights" , "heights" , submittingHeights , "trusted height" , savedLatestHeight , "trusted epoch" , trustedEpochHeight , "first unsaved" , firstUnsaved )
107108
108109 trustedHeight := clientStateLatestHeight .GetRevisionHeight ()
109110 for _ , submittingHeight := range submittingHeights {
@@ -112,14 +113,14 @@ func setupHeadersForUpdate(
112113 return nil , err
113114 }
114115 if verifiableHeader == nil {
115- logger .Error ( "[FastFinalityError]" , fmt .Errorf ("insufficient vote attestation: submittingHeight=%d, trusted=%d" , submittingHeight , trustedHeight ))
116- return withTrustedHeight (targetHeaders , clientStateLatestHeight ), nil
116+ logger .ErrorContext ( ctx , "[FastFinalityError]" , fmt .Errorf ("insufficient vote attestation: submittingHeight=%d, trusted=%d" , submittingHeight , trustedHeight ))
117+ return withTrustedHeight (ctx , targetHeaders , clientStateLatestHeight ), nil
117118 }
118119 targetHeaders = append (targetHeaders , verifiableHeader )
119120 trustedHeight = submittingHeight
120- logger .Debug ( "setup epoch header" , "trusted" , trustedHeight , "height" , submittingHeight )
121+ logger .DebugContext ( ctx , "setup epoch header" , "trusted" , trustedHeight , "height" , submittingHeight )
121122 }
122- return withTrustedHeight (append (targetHeaders , latestFinalizedHeader ), clientStateLatestHeight ), nil
123+ return withTrustedHeight (ctx , append (targetHeaders , latestFinalizedHeader ), clientStateLatestHeight ), nil
123124}
124125
125126// Get verifiable headers. This method must be executed at block intervals that do not miss any epochs.
@@ -132,7 +133,7 @@ func setupIntermediateHeader(
132133 return queryVerifiableHeader (ctx , submittingHeight , minUint64 (submittingHeight + skip , latestHeight .GetRevisionHeight ()))
133134}
134135
135- func withTrustedHeight (targetHeaders []core.Header , clientStateLatestHeight exported.Height ) []core.Header {
136+ func withTrustedHeight (ctx context. Context , targetHeaders []core.Header , clientStateLatestHeight exported.Height ) []core.Header {
136137 logger := log .GetLogger ()
137138 for i , h := range targetHeaders {
138139 var trustedHeight clienttypes.Height
@@ -143,7 +144,7 @@ func withTrustedHeight(targetHeaders []core.Header, clientStateLatestHeight expo
143144 }
144145 h .(* Header ).TrustedHeight = & trustedHeight
145146
146- logger .Debug ( "setupHeadersForUpdate end" , "target" , h .GetHeight (), "trusted" , trustedHeight , "headerSize" , len (h .(* Header ).Headers ))
147+ logger .DebugContext ( ctx , "setupHeadersForUpdate end" , "target" , h .GetHeight (), "trusted" , trustedHeight , "headerSize" , len (h .(* Header ).Headers ))
147148 }
148149 return targetHeaders
149150}
0 commit comments