Skip to content

Commit

Permalink
Switch to GetLedgerBlocking in historyRangeState
Browse files Browse the repository at this point in the history
  • Loading branch information
bartekn committed Apr 8, 2021
1 parent c97d511 commit 1a06520
Show file tree
Hide file tree
Showing 2 changed files with 12 additions and 8 deletions.
14 changes: 9 additions & 5 deletions services/horizon/internal/ingest/fsm.go
Original file line number Diff line number Diff line change
Expand Up @@ -559,16 +559,20 @@ func (h historyRangeState) run(s *system) (transition, error) {
}

for cur := h.fromLedger; cur <= h.toLedger; cur++ {
var exists bool
var ledgerCloseMeta xdr.LedgerCloseMeta
exists, ledgerCloseMeta, err = s.ledgerBackend.GetLedger(cur)

log.WithField("ledger", cur).Info("Waiting for ledger to be available in the backend...")
startTime := time.Now()

ledgerCloseMeta, err = s.ledgerBackend.GetLedgerBlocking(cur)
if err != nil {
return start(), errors.Wrap(err, "error getting ledger")
}

if !exists {
return start(), errors.New("error getting ledger: ledger does not exist")
}
log.WithFields(logpkg.F{
"ledger": cur,
"duration": time.Since(startTime).Seconds(),
}).Info("Ledger returned from the backend")

if err = runTransactionProcessorsOnLedger(s, ledgerCloseMeta); err != nil {
return start(), err
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -156,7 +156,7 @@ func (s *IngestHistoryRangeStateTestSuite) TestRunTransactionProcessorsOnLedgerR
},
},
}
s.ledgerBackend.On("GetLedger", uint32(100)).Return(true, meta, nil).Once()
s.ledgerBackend.On("GetLedgerBlocking", uint32(100)).Return(meta, nil).Once()

s.runner.On("RunTransactionProcessorsOnLedger", meta).Return(
processors.StatsLedgerTransactionProcessorResults{},
Expand Down Expand Up @@ -185,7 +185,7 @@ func (s *IngestHistoryRangeStateTestSuite) TestSuccess() {
},
},
}
s.ledgerBackend.On("GetLedger", uint32(i)).Return(true, meta, nil).Once()
s.ledgerBackend.On("GetLedgerBlocking", uint32(i)).Return(meta, nil).Once()

s.runner.On("RunTransactionProcessorsOnLedger", meta).Return(
processors.StatsLedgerTransactionProcessorResults{},
Expand Down Expand Up @@ -215,7 +215,7 @@ func (s *IngestHistoryRangeStateTestSuite) TestSuccessOneLedger() {
},
},
}
s.ledgerBackend.On("GetLedger", uint32(100)).Return(true, meta, nil).Once()
s.ledgerBackend.On("GetLedgerBlocking", uint32(100)).Return(meta, nil).Once()

s.runner.On("RunTransactionProcessorsOnLedger", meta).Return(
processors.StatsLedgerTransactionProcessorResults{},
Expand Down

0 comments on commit 1a06520

Please sign in to comment.