Replies: 1 comment 7 replies
-
Thanks @migesok for raising this. I'm not aware of why this Resequencer is used. If, as you suggest, the resequencer doesn't seem to affect the results of any tests, maybe, we could add a config setting that allows it to be skipped. My preference, for backward compatibility, is that the Resequencer is used by default. It might be best not to do anything until other contributors have time to provide their opinions or context. Have you tried running any of the tests in modules like pekko-persistence-jdbc? |
Beta Was this translation helpful? Give feedback.
7 replies
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Uh oh!
There was an error while loading. Please reload this page.
-
Hi!
During an investigation of a latency issue in our code using classic persistent actors, we found that the "lost" time is spent waiting inside
AsyncWriteJournal.Resequencer
. As I understood, it reorders journal write responses to be in the same order as the requests. The order is global (per plugin instance). Our problem was gone when we patched the journal plugin logic to removeResequencer
. At the same time no other issues arose during tests.Why this ordering is needed? Why it has to be global and not, say, per persistence ID? Per actor instance ID?
What I found so far myself:
+per #3641 Storage plugin API akka/akka#1751
I also found that the logic was added to the original
eventsourced
project (from which it was ported to Akka) when it added support for "async" journal plugins (not sure what that means 100%):krasserm/eventsourced@f200b12
Beta Was this translation helpful? Give feedback.
All reactions