@@ -9,7 +9,7 @@ module Cardano.DbSync.Rollback (
9
9
unsafeRollback ,
10
10
) where
11
11
12
- import Cardano.BM.Trace (Trace , logInfo )
12
+ import Cardano.BM.Trace (Trace , logInfo , logWarning )
13
13
import qualified Cardano.Db as DB
14
14
import Cardano.DbSync.Api
15
15
import Cardano.DbSync.Api.Types (SyncEnv (.. ))
@@ -48,17 +48,7 @@ rollbackFromBlockNo syncEnv blkNo = do
48
48
, textShow blkNo
49
49
]
50
50
lift $ do
51
- (mTxId, deletedBlockCount) <- DB. deleteBlocksBlockId trce txOutTable blockId
52
- whenConsumeOrPruneTxOut syncEnv $
53
- DB. querySetNullTxOut trce txOutTable mTxId
54
- DB. deleteEpochRows epochNo
55
- DB. deleteDrepDistr epochNo
56
- DB. deleteRewardRest epochNo
57
- DB. deletePoolStat epochNo
58
- DB. setNullEnacted epochNo
59
- DB. setNullRatified epochNo
60
- DB. setNullDropped epochNo
61
- DB. setNullExpired epochNo
51
+ deletedBlockCount <- DB. deleteBlocksBlockId trce txOutTableType blockId epochNo (Just (DB. pcmConsumedTxOut $ getPruneConsume syncEnv))
62
52
when (deletedBlockCount > 0 ) $ do
63
53
-- We use custom constraints to improve input speeds when syncing.
64
54
-- If they don't already exists we add them here as once a rollback has happened
@@ -71,7 +61,7 @@ rollbackFromBlockNo syncEnv blkNo = do
71
61
where
72
62
trce = getTrace syncEnv
73
63
cache = envCache syncEnv
74
- txOutTable = getTxOutTableType syncEnv
64
+ txOutTableType = getTxOutTableType syncEnv
75
65
76
66
prepareRollback :: SyncEnv -> CardanoPoint -> Tip CardanoBlock -> IO (Either SyncNodeError Bool )
77
67
prepareRollback syncEnv point serverTip =
@@ -120,5 +110,5 @@ prepareRollback syncEnv point serverTip =
120
110
-- For testing and debugging.
121
111
unsafeRollback :: Trace IO Text -> DB. TxOutTableType -> DB. PGConfig -> SlotNo -> IO (Either SyncNodeError () )
122
112
unsafeRollback trce txOutTableType config slotNo = do
123
- logInfo trce $ " Forced rollback to slot " <> textShow (unSlotNo slotNo)
124
- Right <$> DB. runDbNoLogging (DB. PGPassCached config) (void $ DB. deleteBlocksSlotNo trce txOutTableType slotNo)
113
+ logWarning trce $ " Starting a forced rollback to slot: " <> textShow (unSlotNo slotNo)
114
+ Right <$> DB. runDbNoLogging (DB. PGPassCached config) (void $ DB. deleteBlocksSlotNo trce txOutTableType slotNo Nothing )
0 commit comments