real-logic / artio

Artio - Resilient High-Performance FIX and FIXP Gateway
Apache License 2.0
301 stars 121 forks source link

Timeout in sample application #259

Closed Goffen closed 5 years ago

Goffen commented 5 years ago

I first run the SampleServer then the SampleClient. Outputs from both:

1 -> {
  "MessageName": "TestRequest",
  "header": {
    "MessageName": "Header",
    "BeginString": "FIX.4.4",
    "MsgType": "1",
    "SenderCompID": "initiator",
    "TargetCompID": "acceptor",
    "MsgSeqNum": "2",
    "SendingTime": "20190408-09:59:41.034",
  }
  "TestReqID": "Hello World",
}
1 -> {
  "MessageName": "Logout",
  "header": {
    "MessageName": "Header",
    "BeginString": "FIX.4.4",
    "MsgType": "5",
    "SenderCompID": "initiator",
    "TargetCompID": "acceptor",
    "MsgSeqNum": "3",
    "SendingTime": "20190408-09:59:41.464",
  }
}
Exception in thread "main" io.aeron.exceptions.TimeoutException: awaiting response - correlationId=123
    at io.aeron.archive.client.AeronArchive.checkDeadline(AeronArchive.java:1073)
    at io.aeron.archive.client.AeronArchive.pollNextResponse(AeronArchive.java:1143)
    at io.aeron.archive.client.AeronArchive.pollForResponse(AeronArchive.java:1084)
    at io.aeron.archive.client.AeronArchive.stopRecording(AeronArchive.java:555)
    at uk.co.real_logic.artio.engine.RecordingCoordinator.shutdownArchiver(RecordingCoordinator.java:222)
    at uk.co.real_logic.artio.engine.RecordingCoordinator.close(RecordingCoordinator.java:167)
    at uk.co.real_logic.artio.dictionary.generation.Exceptions.closeAll(Exceptions.java:71)
    at uk.co.real_logic.artio.dictionary.generation.Exceptions.closeAll(Exceptions.java:90)
    at uk.co.real_logic.artio.engine.DefaultEngineScheduler.close(DefaultEngineScheduler.java:77)
    at uk.co.real_logic.artio.dictionary.generation.Exceptions.closeAll(Exceptions.java:71)
    at uk.co.real_logic.artio.dictionary.generation.Exceptions.closeAll(Exceptions.java:90)
    at uk.co.real_logic.artio.engine.FixEngine.close(FixEngine.java:272)
    at uk.co.real_logic.artio.server.SampleServer.main(SampleServer.java:104)
Success, received reply!
Hello World
Disconnected
Exception in thread "main" io.aeron.exceptions.TimeoutException: awaiting response - correlationId=122
    at io.aeron.archive.client.AeronArchive.checkDeadline(AeronArchive.java:1073)
    at io.aeron.archive.client.AeronArchive.pollNextResponse(AeronArchive.java:1143)
    at io.aeron.archive.client.AeronArchive.pollForResponse(AeronArchive.java:1084)
    at io.aeron.archive.client.AeronArchive.stopRecording(AeronArchive.java:555)
    at uk.co.real_logic.artio.engine.RecordingCoordinator.shutdownArchiver(RecordingCoordinator.java:222)
    at uk.co.real_logic.artio.engine.RecordingCoordinator.close(RecordingCoordinator.java:167)
    at uk.co.real_logic.artio.dictionary.generation.Exceptions.closeAll(Exceptions.java:71)
    at uk.co.real_logic.artio.dictionary.generation.Exceptions.closeAll(Exceptions.java:90)
    at uk.co.real_logic.artio.engine.DefaultEngineScheduler.close(DefaultEngineScheduler.java:77)
    at uk.co.real_logic.artio.dictionary.generation.Exceptions.closeAll(Exceptions.java:71)
    at uk.co.real_logic.artio.dictionary.generation.Exceptions.closeAll(Exceptions.java:90)
    at uk.co.real_logic.artio.engine.FixEngine.close(FixEngine.java:272)
    at uk.co.real_logic.artio.client.SampleClient.main(SampleClient.java:105)
RichardWarburton commented 5 years ago

I couldn't actually replicate this but I've now put the SampleClient and SampleServer onto different media drivers which I suspect is what the problem was from the stack traces. Please re-open if you can replicate the same problem with HEAD.

Goffen commented 5 years ago

Got something different this time (i run from inside idea as you probably can tell)

WARNING: /var/folders/y_/qp1lpgr55qgcn5_68mwz1skr0000gn/T/aeron-hannes already exists.
1 -> {
  "MessageName": "TestRequest",
  "header": {
    "MessageName": "Header",
    "BeginString": "FIX.4.4",
    "MsgType": "1",
    "SenderCompID": "initiator",
    "TargetCompID": "acceptor",
    "MsgSeqNum": "2",
    "SendingTime": "20190410-12:35:53.296",
  }
  "TestReqID": "Hello World",
}
1 -> {
  "MessageName": "Logout",
  "header": {
    "MessageName": "Header",
    "BeginString": "FIX.4.4",
    "MsgType": "5",
    "SenderCompID": "initiator",
    "TargetCompID": "acceptor",
    "MsgSeqNum": "3",
    "SendingTime": "20190410-12:35:53.355",
  }
}
timeout waiting for agent 'archive-conductor' to close, retrying...
timeout waiting for agent 'archive-conductor' to close, retrying...
timeout waiting for agent 'archive-conductor' to close, retrying...
Exception in thread "main" io.aeron.exceptions.TimeoutException: awaiting response - correlationId=62
    at io.aeron.archive.client.AeronArchive.checkDeadline(AeronArchive.java:1073)
    at io.aeron.archive.client.AeronArchive.pollNextResponse(AeronArchive.java:1143)
    at io.aeron.archive.client.AeronArchive.pollForResponse(AeronArchive.java:1084)
    at io.aeron.archive.client.AeronArchive.stopRecording(AeronArchive.java:555)
    at uk.co.real_logic.artio.engine.RecordingCoordinator.shutdownArchiver(RecordingCoordinator.java:217)
    at uk.co.real_logic.artio.engine.RecordingCoordinator.close(RecordingCoordinator.java:167)
    at uk.co.real_logic.artio.dictionary.generation.Exceptions.closeAll(Exceptions.java:71)
    at uk.co.real_logic.artio.dictionary.generation.Exceptions.closeAll(Exceptions.java:90)
    at uk.co.real_logic.artio.engine.DefaultEngineScheduler.close(DefaultEngineScheduler.java:77)
    at uk.co.real_logic.artio.dictionary.generation.Exceptions.closeAll(Exceptions.java:71)
    at uk.co.real_logic.artio.dictionary.generation.Exceptions.closeAll(Exceptions.java:90)
    at uk.co.real_logic.artio.engine.FixEngine.close(FixEngine.java:272)
    at uk.co.real_logic.artio.server.SampleServer.main(SampleServer.java:106)

Process finished with exit code 1
Success, received reply!
Hello World
Disconnected
timeout waiting for agent 'archive-conductor' to close, retrying...
timeout waiting for agent 'archive-conductor' to close, retrying...
timeout waiting for agent 'archive-conductor' to close, retrying...
Exception in thread "main" io.aeron.exceptions.TimeoutException: awaiting response - correlationId=61
    at io.aeron.archive.client.AeronArchive.checkDeadline(AeronArchive.java:1073)
    at io.aeron.archive.client.AeronArchive.pollNextResponse(AeronArchive.java:1143)
    at io.aeron.archive.client.AeronArchive.pollForResponse(AeronArchive.java:1084)
    at io.aeron.archive.client.AeronArchive.stopRecording(AeronArchive.java:555)
    at uk.co.real_logic.artio.engine.RecordingCoordinator.shutdownArchiver(RecordingCoordinator.java:222)
    at uk.co.real_logic.artio.engine.RecordingCoordinator.close(RecordingCoordinator.java:167)
    at uk.co.real_logic.artio.dictionary.generation.Exceptions.closeAll(Exceptions.java:71)
    at uk.co.real_logic.artio.dictionary.generation.Exceptions.closeAll(Exceptions.java:90)
    at uk.co.real_logic.artio.engine.DefaultEngineScheduler.close(DefaultEngineScheduler.java:77)
    at uk.co.real_logic.artio.dictionary.generation.Exceptions.closeAll(Exceptions.java:71)
    at uk.co.real_logic.artio.dictionary.generation.Exceptions.closeAll(Exceptions.java:90)
    at uk.co.real_logic.artio.engine.FixEngine.close(FixEngine.java:272)
    at uk.co.real_logic.artio.client.SampleClient.main(SampleClient.java:140)

Process finished with exit code 1
RichardWarburton commented 5 years ago

Are you running on a particularly slow or fast machine?

Goffen commented 5 years ago

macbook air, 1,6 GHz Intel Core 2 Duo

So, slow i guess