HI, we are using Scala version in a lagom system. Everything works well with small amount of data. but when there are over 10,000 requests asking cassandra to Get info, SOME of the requests failed with timeout exception. Basically cassandra is our event journal where we store all entities. The way we get entity from cassandra is we get by entityID, which should be really fast according to the nature of the cassandra.
Get entity call from cassandra:
ref.ask[GetTransactionResponse](replyTo => Get(transactionId, replyTo))
timeout error occured from the Get call above:
Failed to update transaction findings: akka.pattern.AskTimeoutException: Ask timed out on [EntityRef(EntityTypeKeycom.pwc.neptune.transactions.impl.TransactionCommand, 824db808-8d45-3c03-a857-f9b1000c8614)] after [5000 ms]. Message of type [com.pwc.neptune.transactions.impl.Get]. A typical reason for
AskTimeoutException
is that the recipient actor didn’t send a reply. [executionId = 2343655615], unitId: 434047330, transactionIdentifier: 825-47-7098
Scala version: 2.12.10
Akka management version: 1.0.1
Lagom version: 1.6.4
Do you know the root cause or how to pass this time out exception? The message itself is correct won’t be a serialization issue, because it works well with small data set and the exception happens randomly. The record is there because it exists in cassandra already.