pekko icon indicating copy to clipboard operation
pekko copied to clipboard

Distributed Data - CRDT expiry

Open SJern opened this issue 9 months ago • 5 comments

Over app needs to store some short-lived data that needs to be durable for a short period of time (5 min). It would be very useful if we could set some TTL on these data so they do not blow up the RAM and save the memory space for the persistent actors. Please refer to https://github.com/akka/akka/issues/27683

SJern avatar May 09 '25 22:05 SJern

I have not looked into the akka issue yet, but that may need included timestamp in the entities and an expiration time after write or access?

He-Pin avatar May 10 '25 00:05 He-Pin

Thanks for the response, He-Pin. yeah looks like they added a usedTimestamp in ReplicatorMessages.proto https://github.com/akka/akka/pull/31721/files What's the typical amount of effort to port a feature from Akka? Is there any establish flow?

SJern avatar May 10 '25 05:05 SJern

Thanks for the response, He-Pin. yeah looks like they added a usedTimestamp in ReplicatorMessages.proto https://github.com/akka/akka/pull/31721/files What's the typical amount of effort to port a feature from Akka? Is there any establish flow?

We cannot port Akka code to Pekko. The Akka code has an incompatible license. The Akka license change is the reason we had to create Apache Pekko in the first place.

Any code for this will have to be written from scratch without any reference to the Akka change.

pjfanning avatar May 10 '25 08:05 pjfanning

We cannot port Akka code to Pekko. The Akka code has an incompatible license. The Akka license change is the reason we had to create Apache Pekko in the first place.

The pull requests you are refering to all made it into Akka 2.8.0: https://github.com/akka/akka/releases/tag/v2.8.0 3 years after the release the licence automatically changes to Apache 2, so in theory next year Mar 16, 2026, you could just integrate that changes from Akka.

mkurz avatar May 22 '25 12:05 mkurz

We cannot port Akka code to Pekko. The Akka code has an incompatible license. The Akka license change is the reason we had to create Apache Pekko in the first place.

The pull requests you are refering to all made it into Akka 2.8.0: https://github.com/akka/akka/releases/tag/v2.8.0 3 years after the release the licence automatically changes to Apache 2, so in theory next year Mar 16, 2026, you could just integrate that changes from Akka.

Possibly. I would need to get the ASF Legal advisors to decide on this.

It would be less problematic if a greenfield solution was provided but we can revisit this next year if no such solution exists by then.

pjfanning avatar May 22 '25 12:05 pjfanning