Node doesn't start in case if checkpoint in DB is corrupted

Description

According to the issue the node should successfully start-up with exceptions in the logs in case if checkpoint stored in the database cannot be deserialized

Steps to reproduce:
1. Register Node A and Node B in the network (In my case NightWatch4)
2. Start-up and shutdown nodes
3. Start-up NodeA (CheckPO01PartyA)
4. Connect to Node A and initiate CashIssueFlow
5. Send some cash form NodeA (CheckPO01PartyA) to Node B (CheckPO01PartyB) - NodeB should be offline:

  • flow start CashPaymentFlow amount: 5 USD, recipient: "CheckPO01PartyB", anonymous: false, notary: "Notary - Ireland "

6. Check that flow stuck and hangs in "Broadcasting transaction to participants"
7. Shutdown NodeA
8. Add some garbage data to the CHECKPOINT_VALUE
9. Start-up NodeA

Expected result:
NodeA should successfully start-up with the exception in the log

Actual result:
NodeA cannot be started with the error:

 

1 [ERROR] 10:36:03+0300 [main] pool.HikariPool. - HikariPool-1 - Exception during pool initialization. [errorCode=dgh8me, moreInformationAt=https://errors.corda.net/OS/4.3-RC01/dgh8me][ERROR] 10:36:03+0300 [main] internal.NodeStartupLogging. - Could not connect to the database. Please check your JDBC connection URL, or the connectivity to the database.: Could not connect to the database. Please check your JDBC connection URL, or the connectivity to the database. [errorCode=mn6hjq, moreInformationAt=https://errors.corda.net/OS/4.3-RC01/mn6hjq]

Logs and screenshots are attached

 

Status

Assignee

Unassigned

Reporter

Roman Vasiliev

Labels

None

Priority

Medium

Fix versions

None

Ported to...

None

Feature Team

Select team

Severity

Medium

Affects versions

Corda 4.3 RC01
Configure