mirror of
https://github.com/corda/corda.git
synced 2024-12-19 04:57:58 +00:00
NOTICK Correct StatemachineGeneralErrorHandlingtest
(#6306)
This commit is contained in:
parent
b8b462f68e
commit
f0d2c9fe71
@ -122,6 +122,19 @@ abstract class StatemachineErrorHandlingTest {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@StartableByRPC
|
||||||
|
class GetNumberOfHospitalizedCheckpointsFlow : FlowLogic<Long>() {
|
||||||
|
override fun call(): Long {
|
||||||
|
val sqlStatement = "select count(*) from node_checkpoints where status in (${Checkpoint.FlowStatus.HOSPITALIZED.ordinal})"
|
||||||
|
return serviceHub.jdbcSession().prepareStatement(sqlStatement).use { ps ->
|
||||||
|
ps.executeQuery().use { rs ->
|
||||||
|
rs.next()
|
||||||
|
rs.getLong(1)
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
// Internal use for testing only!!
|
// Internal use for testing only!!
|
||||||
@StartableByRPC
|
@StartableByRPC
|
||||||
class GetHospitalCountersFlow : FlowLogic<HospitalCounts>() {
|
class GetHospitalCountersFlow : FlowLogic<HospitalCounts>() {
|
||||||
|
@ -1178,9 +1178,9 @@ class StatemachineGeneralErrorHandlingTest : StatemachineErrorHandlingTest() {
|
|||||||
// 1 for the flow that is waiting for the errored counterparty flow to finish and 1 for GetNumberOfCheckpointsFlow
|
// 1 for the flow that is waiting for the errored counterparty flow to finish and 1 for GetNumberOfCheckpointsFlow
|
||||||
assertEquals(2, aliceClient.startFlow(StatemachineErrorHandlingTest::GetNumberOfUncompletedCheckpointsFlow).returnValue.get())
|
assertEquals(2, aliceClient.startFlow(StatemachineErrorHandlingTest::GetNumberOfUncompletedCheckpointsFlow).returnValue.get())
|
||||||
// 1 for GetNumberOfCheckpointsFlow
|
// 1 for GetNumberOfCheckpointsFlow
|
||||||
// the checkpoint is not persisted since it kept failing the original checkpoint commit
|
// a hospitalized flow is saved as the original checkpoint kept failing to commit
|
||||||
// the flow will recover since artemis will keep the events and replay them on node restart
|
// the flow will recover since artemis will keep the events and replay them on node restart
|
||||||
assertEquals(1, charlieClient.startFlow(StatemachineErrorHandlingTest::GetNumberOfUncompletedCheckpointsFlow).returnValue.get())
|
assertEquals(1, charlieClient.startFlow(StatemachineErrorHandlingTest::GetNumberOfHospitalizedCheckpointsFlow).returnValue.get())
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user