hyperledger / fabric-gateway

Go, Node and Java client API for Hyperledger Fabric v2.4+
https://hyperledger.github.io/fabric-gateway/
Apache License 2.0
150 stars 87 forks source link

Scenario test failures with Java 8 and 11 #660

Closed bestbeforetoday closed 9 months ago

bestbeforetoday commented 9 months ago

From early November 2023, scenario tests run with Java 8 and Java 11 have begun to fail with the following errors:

Error:  Chaincode event listening.Chaincode event listening - Close does not interrupt other chaincode event listeners -- Time elapsed: 30.54 s <<< ERROR!
java.lang.NullPointerException: timeout waiting for event
    at java.util.Objects.requireNonNull(Objects.java:228)
    at scenario.BasicEventListener.next(BasicEventListener.java:37)
    at scenario.GatewayContext.nextChaincodeEvent(GatewayContext.java:108)
    at scenario.ScenarioSteps.assertReceiveChaincodeEventOnListener(ScenarioSteps.java:590)
    at ✽.I should receive a chaincode event named "close" with payload "before" on "listener2"(file:///home/runner/work/fabric-gateway/fabric-gateway/java/../scenario/features/chaincodeevents.feature:50)

Error:  Chaincode event listening.Chaincode event listening - Checkpoint of chaincode events -- Time elapsed: 30.54 s <<< ERROR!
java.lang.NullPointerException: timeout waiting for event
    at java.util.Objects.requireNonNull(Objects.java:228)
    at scenario.BasicEventListener.next(BasicEventListener.java:37)
    at scenario.CheckpointEventListener.next(CheckpointEventListener.java:23)
    at scenario.GatewayContext.nextChaincodeEvent(GatewayContext.java:108)
    at scenario.ScenarioSteps.assertReceiveChaincodeEventOnListener(ScenarioSteps.java:590)
    at scenario.ScenarioSteps.assertReceiveChaincodeEvent(ScenarioSteps.java:585)
    at ✽.I should receive a chaincode event named "checkpoint" with payload "one"(file:///home/runner/work/fabric-gateway/fabric-gateway/java/../scenario/features/chaincodeevents.feature:63)

Frequency of errors has increased over time and as of late November 2023 these scenario tests (only with Java 8 and Java 11) are consistently failing.