This is an automated email from the ASF dual-hosted git repository.

yiconghuang pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/texera.git


The following commit(s) were added to refs/heads/main by this push:
     new 078351228c fix: switch to pekko (#4009)
078351228c is described below

commit 078351228c69765896a80c2216cf31aa5ff77fa0
Author: PJ Fanning <[email protected]>
AuthorDate: Sat Nov 15 11:13:50 2025 +0100

    fix: switch to pekko (#4009)
---
 amber/build.sbt                                    | 45 +++++++++++++---------
 .../apache/amber/clustering/ClusterListener.scala  |  6 +--
 .../amber/clustering/SingleNodeListener.scala      |  2 +-
 .../common/AkkaActorRefMappingService.scala        |  2 +-
 .../architecture/common/AkkaActorService.scala     |  7 ++--
 .../common/AkkaMessageTransferService.scala        |  2 +-
 .../architecture/common/ExecutorDeployment.scala   |  4 +-
 .../engine/architecture/common/WorkflowActor.scala |  6 +--
 .../architecture/controller/Controller.scala       |  4 +-
 .../controller/ControllerTimerService.scala        |  2 +-
 .../architecture/deploysemantics/AddressInfo.scala |  2 +-
 .../deploystrategy/DeployStrategy.scala            |  2 +-
 .../deploysemantics/deploystrategy/OneOnEach.scala |  2 +-
 .../deploystrategy/RandomDeployment.scala          |  2 +-
 .../deploystrategy/RoundRobinDeployment.scala      |  2 +-
 .../messaginglayer/DeadLetterMonitorActor.scala    |  2 +-
 .../messaginglayer/WorkerTimerService.scala        |  2 +-
 .../pythonworker/PythonWorkflowWorker.scala        |  2 +-
 .../scheduling/RegionExecutionCoordinator.scala    |  4 +-
 .../architecture/worker/WorkflowWorker.scala       |  2 +-
 .../apache/amber/engine/common/AmberConfig.scala   |  4 +-
 .../amber/engine/common/AmberKryoInitializer.scala | 12 +++---
 .../apache/amber/engine/common/AmberRuntime.scala  | 18 ++++-----
 .../amber/engine/common/SerializedState.scala      |  2 +-
 .../common/ambermessage/RecoveryPayload.scala      |  2 +-
 .../amber/engine/common/client/AmberClient.scala   |  6 +--
 .../amber/engine/common/client/ClientActor.scala   |  4 +-
 .../texera/web/WorkflowLifecycleManager.scala      |  2 +-
 .../web/service/ExecutionResultService.scala       |  2 +-
 .../breakpoint/ExceptionBreakpointSpec.scala       |  8 ++--
 .../architecture/control/TrivialControlSpec.scala  |  4 +-
 .../architecture/controller/ControllerSpec.scala   |  6 +--
 .../pythonworker/PythonWorkflowWorkerSpec.scala    |  4 +-
 .../engine/architecture/worker/WorkerSpec.scala    |  4 +-
 .../engine/e2e/BatchSizePropagationSpec.scala      |  6 +--
 .../amber/engine/e2e/DataProcessingSpec.scala      |  6 +--
 .../org/apache/amber/engine/e2e/PauseSpec.scala    |  6 +--
 .../engine/faulttolerance/CheckpointSpec.scala     |  2 +-
 .../amber/engine/faulttolerance/LoggingSpec.scala  |  4 +-
 .../amber/engine/faulttolerance/ReplaySpec.scala   |  4 +-
 common/config/src/main/resources/cluster.conf      | 16 ++++----
 .../scala/org/apache/amber/config/AkkaConfig.scala |  2 +-
 42 files changed, 116 insertions(+), 110 deletions(-)

diff --git a/amber/build.sbt b/amber/build.sbt
index 91783b243e..7d0616922f 100644
--- a/amber/build.sbt
+++ b/amber/build.sbt
@@ -49,23 +49,23 @@ Compile / unmanagedSourceDirectories += baseDirectory.value 
/ "src" / "main" / "
 PB.generate / excludeFilter := "scalapb.proto"
 
 /////////////////////////////////////////////////////////////////////////////
-// Akka related
-val akkaVersion = "2.6.21"
-val akkaDependencies = Seq(
-  "com.typesafe.akka" %% "akka-actor" % akkaVersion,
-  "com.typesafe.akka" %% "akka-remote" % akkaVersion,
-  "com.typesafe.akka" %% "akka-cluster" % akkaVersion,
-  "com.typesafe.akka" %% "akka-cluster-metrics" % akkaVersion,
-  "com.typesafe.akka" %% "akka-cluster-tools" % akkaVersion,
-  "com.typesafe.akka" %% "akka-multi-node-testkit" % akkaVersion % Test,
-  "com.typesafe.akka" %% "akka-testkit" % akkaVersion % Test,
-  "com.typesafe.akka" %% "akka-persistence" % akkaVersion,
+// Pekko related
+val pekkoVersion = "1.2.1"
+val pekkoDependencies = Seq(
+  "org.apache.pekko" %% "pekko-actor" % pekkoVersion,
+  "org.apache.pekko" %% "pekko-remote" % pekkoVersion,
+  "org.apache.pekko" %% "pekko-cluster" % pekkoVersion,
+  "org.apache.pekko" %% "pekko-cluster-metrics" % pekkoVersion,
+  "org.apache.pekko" %% "pekko-cluster-tools" % pekkoVersion,
+  "org.apache.pekko" %% "pekko-multi-node-testkit" % pekkoVersion % Test,
+  "org.apache.pekko" %% "pekko-testkit" % pekkoVersion % Test,
+  "org.apache.pekko" %% "pekko-persistence" % pekkoVersion,
   "io.kamon" % "sigar-loader" % "1.6.6-rev002",
-  "com.softwaremill.macwire" %% "macros" % "2.5.8" % Provided,
-  "com.softwaremill.macwire" %% "macrosakka" % "2.5.8" % Provided,
-  "com.softwaremill.macwire" %% "util" % "2.5.8",
-  "com.softwaremill.macwire" %% "proxy" % "2.5.8",
-  "com.typesafe.akka" %% "akka-slf4j" % akkaVersion,
+  "com.softwaremill.macwire" %% "macros" % "2.6.7" % Provided,
+  "com.softwaremill.macwire" %% "macrospekko" % "2.6.7" % Provided,
+  "com.softwaremill.macwire" %% "util" % "2.6.7",
+  "com.softwaremill.macwire" %% "proxy" % "2.6.7",
+  "org.apache.pekko" %% "pekko-slf4j" % pekkoVersion,
   "ch.qos.logback" % "logback-classic" % "1.2.13" % Test
 )
 
@@ -137,7 +137,7 @@ val googleServiceDependencies = Seq(
   "com.sun.mail" % "javax.mail" % "1.6.2"
 )
 
-libraryDependencies ++= akkaDependencies
+libraryDependencies ++= pekkoDependencies
 libraryDependencies ++= luceneDependencies
 libraryDependencies ++= dropwizardDependencies
 libraryDependencies ++= mbknorJacksonJsonSchemaDependencies
@@ -222,8 +222,15 @@ libraryDependencies += "org.jooq" % "jooq" % "3.14.16"
 // https://mvnrepository.com/artifact/org.jgrapht/jgrapht-core
 libraryDependencies += "org.jgrapht" % "jgrapht-core" % "1.4.0"
 
-// https://mvnrepository.com/artifact/io.altoo/akka-kryo-serialization
-libraryDependencies += "io.altoo" %% "akka-kryo-serialization" % "2.5.2"
+// https://mvnrepository.com/artifact/com.esotericsoftware/kryo
+libraryDependencies += "com.esotericsoftware" % "kryo" % "5.6.2"
+libraryDependencies += "com.esotericsoftware" % "kryo5" % "5.6.0"
+
+// https://mvnrepository.com/artifact/io.altoo/pekko-kryo-serialization
+libraryDependencies += "io.altoo" %% "pekko-kryo-serialization" % "1.3.0"
+
+// https://mvnrepository.com/artifact/io.altoo/scala-kryo-serialization
+libraryDependencies += "io.altoo" %% "scala-kryo-serialization" % "1.3.0"
 
 // https://mvnrepository.com/artifact/com.twitter/util-core
 libraryDependencies += "com.twitter" %% "util-core" % "22.12.0"
diff --git 
a/amber/src/main/scala/org/apache/amber/clustering/ClusterListener.scala 
b/amber/src/main/scala/org/apache/amber/clustering/ClusterListener.scala
index 0937d6328b..738b346abf 100644
--- a/amber/src/main/scala/org/apache/amber/clustering/ClusterListener.scala
+++ b/amber/src/main/scala/org/apache/amber/clustering/ClusterListener.scala
@@ -19,9 +19,9 @@
 
 package org.apache.amber.clustering
 
-import akka.actor.{Actor, Address}
-import akka.cluster.Cluster
-import akka.cluster.ClusterEvent._
+import org.apache.pekko.actor.{Actor, Address}
+import org.apache.pekko.cluster.Cluster
+import org.apache.pekko.cluster.ClusterEvent._
 import com.google.protobuf.timestamp.Timestamp
 import com.twitter.util.{Await, Future}
 import org.apache.amber.clustering.ClusterListener.numWorkerNodesInCluster
diff --git 
a/amber/src/main/scala/org/apache/amber/clustering/SingleNodeListener.scala 
b/amber/src/main/scala/org/apache/amber/clustering/SingleNodeListener.scala
index c6fac77f71..70b564c6a4 100644
--- a/amber/src/main/scala/org/apache/amber/clustering/SingleNodeListener.scala
+++ b/amber/src/main/scala/org/apache/amber/clustering/SingleNodeListener.scala
@@ -19,7 +19,7 @@
 
 package org.apache.amber.clustering
 
-import akka.actor.{Actor, ActorLogging}
+import org.apache.pekko.actor.{Actor, ActorLogging}
 import org.apache.amber.clustering.ClusterListener.GetAvailableNodeAddresses
 
 class SingleNodeListener extends Actor with ActorLogging {
diff --git 
a/amber/src/main/scala/org/apache/amber/engine/architecture/common/AkkaActorRefMappingService.scala
 
b/amber/src/main/scala/org/apache/amber/engine/architecture/common/AkkaActorRefMappingService.scala
index 8701663484..393a7cb38f 100644
--- 
a/amber/src/main/scala/org/apache/amber/engine/architecture/common/AkkaActorRefMappingService.scala
+++ 
b/amber/src/main/scala/org/apache/amber/engine/architecture/common/AkkaActorRefMappingService.scala
@@ -19,7 +19,7 @@
 
 package org.apache.amber.engine.architecture.common
 
-import akka.actor.ActorRef
+import org.apache.pekko.actor.ActorRef
 import org.apache.amber.core.virtualidentity.{ActorVirtualIdentity, 
ChannelIdentity}
 import org.apache.amber.engine.architecture.common.WorkflowActor.{
   CreditRequest,
diff --git 
a/amber/src/main/scala/org/apache/amber/engine/architecture/common/AkkaActorService.scala
 
b/amber/src/main/scala/org/apache/amber/engine/architecture/common/AkkaActorService.scala
index bc3ed589c7..b389c762e4 100644
--- 
a/amber/src/main/scala/org/apache/amber/engine/architecture/common/AkkaActorService.scala
+++ 
b/amber/src/main/scala/org/apache/amber/engine/architecture/common/AkkaActorService.scala
@@ -19,8 +19,9 @@
 
 package org.apache.amber.engine.architecture.common
 
-import akka.actor.{ActorContext, ActorRef, Address, Cancellable, Props}
-import akka.util.Timeout
+import org.apache.pekko
+import pekko.actor.{ActorContext, ActorRef, Address, Cancellable, Props}
+import pekko.util.Timeout
 import org.apache.amber.core.virtualidentity.ActorVirtualIdentity
 import org.apache.amber.engine.common.FutureBijection._
 
@@ -78,7 +79,7 @@ class AkkaActorService(val id: ActorVirtualIdentity, 
actorContext: ActorContext)
   }
 
   def ask(ref: ActorRef, message: Any): com.twitter.util.Future[Any] = {
-    akka.pattern.ask(ref, message).asTwitter()
+    pekko.pattern.ask(ref, message).asTwitter()
   }
 
 }
diff --git 
a/amber/src/main/scala/org/apache/amber/engine/architecture/common/AkkaMessageTransferService.scala
 
b/amber/src/main/scala/org/apache/amber/engine/architecture/common/AkkaMessageTransferService.scala
index 16cd0bc9eb..7ad24739f2 100644
--- 
a/amber/src/main/scala/org/apache/amber/engine/architecture/common/AkkaMessageTransferService.scala
+++ 
b/amber/src/main/scala/org/apache/amber/engine/architecture/common/AkkaMessageTransferService.scala
@@ -19,7 +19,7 @@
 
 package org.apache.amber.engine.architecture.common
 
-import akka.actor.Cancellable
+import org.apache.pekko.actor.Cancellable
 import org.apache.amber.config.ApplicationConfig
 import org.apache.amber.core.virtualidentity.{ActorVirtualIdentity, 
ChannelIdentity}
 import org.apache.amber.engine.architecture.common.WorkflowActor.NetworkMessage
diff --git 
a/amber/src/main/scala/org/apache/amber/engine/architecture/common/ExecutorDeployment.scala
 
b/amber/src/main/scala/org/apache/amber/engine/architecture/common/ExecutorDeployment.scala
index 85bd9113ac..6309926e91 100644
--- 
a/amber/src/main/scala/org/apache/amber/engine/architecture/common/ExecutorDeployment.scala
+++ 
b/amber/src/main/scala/org/apache/amber/engine/architecture/common/ExecutorDeployment.scala
@@ -19,8 +19,8 @@
 
 package org.apache.amber.engine.architecture.common
 
-import akka.actor.{Address, Deploy}
-import akka.remote.RemoteScope
+import org.apache.pekko.actor.{Address, Deploy}
+import org.apache.pekko.remote.RemoteScope
 import org.apache.amber.core.workflow.{PhysicalOp, PreferController, 
RoundRobinPreference}
 import 
org.apache.amber.engine.architecture.controller.execution.OperatorExecution
 import org.apache.amber.engine.architecture.deploysemantics.AddressInfo
diff --git 
a/amber/src/main/scala/org/apache/amber/engine/architecture/common/WorkflowActor.scala
 
b/amber/src/main/scala/org/apache/amber/engine/architecture/common/WorkflowActor.scala
index aee3d81a72..02bd766f12 100644
--- 
a/amber/src/main/scala/org/apache/amber/engine/architecture/common/WorkflowActor.scala
+++ 
b/amber/src/main/scala/org/apache/amber/engine/architecture/common/WorkflowActor.scala
@@ -19,9 +19,9 @@
 
 package org.apache.amber.engine.architecture.common
 
-import akka.actor.{Actor, ActorRef, Address, Stash}
-import akka.pattern.ask
-import akka.util.Timeout
+import org.apache.pekko.actor.{Actor, ActorRef, Address, Stash}
+import org.apache.pekko.pattern.ask
+import org.apache.pekko.util.Timeout
 import org.apache.amber.clustering.ClusterListener.GetAvailableNodeAddresses
 import org.apache.amber.core.virtualidentity.{ActorVirtualIdentity, 
ChannelIdentity}
 import org.apache.amber.engine.architecture.common.WorkflowActor._
diff --git 
a/amber/src/main/scala/org/apache/amber/engine/architecture/controller/Controller.scala
 
b/amber/src/main/scala/org/apache/amber/engine/architecture/controller/Controller.scala
index 354601dbe3..36b108f031 100644
--- 
a/amber/src/main/scala/org/apache/amber/engine/architecture/controller/Controller.scala
+++ 
b/amber/src/main/scala/org/apache/amber/engine/architecture/controller/Controller.scala
@@ -19,8 +19,8 @@
 
 package org.apache.amber.engine.architecture.controller
 
-import akka.actor.SupervisorStrategy.Stop
-import akka.actor.{AllForOneStrategy, Props, SupervisorStrategy}
+import org.apache.pekko.actor.SupervisorStrategy.Stop
+import org.apache.pekko.actor.{AllForOneStrategy, Props, SupervisorStrategy}
 import org.apache.texera.web.model.websocket.response.RegionUpdateEvent
 import org.apache.amber.config.ApplicationConfig
 import org.apache.amber.core.virtualidentity.ChannelIdentity
diff --git 
a/amber/src/main/scala/org/apache/amber/engine/architecture/controller/ControllerTimerService.scala
 
b/amber/src/main/scala/org/apache/amber/engine/architecture/controller/ControllerTimerService.scala
index eb58364780..bdd65e3964 100644
--- 
a/amber/src/main/scala/org/apache/amber/engine/architecture/controller/ControllerTimerService.scala
+++ 
b/amber/src/main/scala/org/apache/amber/engine/architecture/controller/ControllerTimerService.scala
@@ -19,7 +19,7 @@
 
 package org.apache.amber.engine.architecture.controller
 
-import akka.actor.Cancellable
+import org.apache.pekko.actor.Cancellable
 import org.apache.amber.engine.architecture.common.AkkaActorService
 import org.apache.amber.engine.architecture.rpc.controlcommands.{
   AsyncRPCContext,
diff --git 
a/amber/src/main/scala/org/apache/amber/engine/architecture/deploysemantics/AddressInfo.scala
 
b/amber/src/main/scala/org/apache/amber/engine/architecture/deploysemantics/AddressInfo.scala
index 6a82d43aec..f2fbf5640c 100644
--- 
a/amber/src/main/scala/org/apache/amber/engine/architecture/deploysemantics/AddressInfo.scala
+++ 
b/amber/src/main/scala/org/apache/amber/engine/architecture/deploysemantics/AddressInfo.scala
@@ -19,7 +19,7 @@
 
 package org.apache.amber.engine.architecture.deploysemantics
 
-import akka.actor.Address
+import org.apache.pekko.actor.Address
 
 // Holds worker and controller node addresses.
 case class AddressInfo(
diff --git 
a/amber/src/main/scala/org/apache/amber/engine/architecture/deploysemantics/deploystrategy/DeployStrategy.scala
 
b/amber/src/main/scala/org/apache/amber/engine/architecture/deploysemantics/deploystrategy/DeployStrategy.scala
index e0e89ccf38..e4a525d002 100644
--- 
a/amber/src/main/scala/org/apache/amber/engine/architecture/deploysemantics/deploystrategy/DeployStrategy.scala
+++ 
b/amber/src/main/scala/org/apache/amber/engine/architecture/deploysemantics/deploystrategy/DeployStrategy.scala
@@ -19,7 +19,7 @@
 
 package org.apache.amber.engine.architecture.deploysemantics.deploystrategy
 
-import akka.actor.Address
+import org.apache.pekko.actor.Address
 
 trait DeployStrategy extends Serializable {
 
diff --git 
a/amber/src/main/scala/org/apache/amber/engine/architecture/deploysemantics/deploystrategy/OneOnEach.scala
 
b/amber/src/main/scala/org/apache/amber/engine/architecture/deploysemantics/deploystrategy/OneOnEach.scala
index 249c61d4a8..4f7b638fd2 100644
--- 
a/amber/src/main/scala/org/apache/amber/engine/architecture/deploysemantics/deploystrategy/OneOnEach.scala
+++ 
b/amber/src/main/scala/org/apache/amber/engine/architecture/deploysemantics/deploystrategy/OneOnEach.scala
@@ -19,7 +19,7 @@
 
 package org.apache.amber.engine.architecture.deploysemantics.deploystrategy
 
-import akka.actor.Address
+import org.apache.pekko.actor.Address
 
 object OneOnEach {
   def apply() = new OneOnEach()
diff --git 
a/amber/src/main/scala/org/apache/amber/engine/architecture/deploysemantics/deploystrategy/RandomDeployment.scala
 
b/amber/src/main/scala/org/apache/amber/engine/architecture/deploysemantics/deploystrategy/RandomDeployment.scala
index 142cd9fdb7..18a120615f 100644
--- 
a/amber/src/main/scala/org/apache/amber/engine/architecture/deploysemantics/deploystrategy/RandomDeployment.scala
+++ 
b/amber/src/main/scala/org/apache/amber/engine/architecture/deploysemantics/deploystrategy/RandomDeployment.scala
@@ -19,7 +19,7 @@
 
 package org.apache.amber.engine.architecture.deploysemantics.deploystrategy
 
-import akka.actor.Address
+import org.apache.pekko.actor.Address
 
 object RandomDeployment {
   def apply() = new RandomDeployment()
diff --git 
a/amber/src/main/scala/org/apache/amber/engine/architecture/deploysemantics/deploystrategy/RoundRobinDeployment.scala
 
b/amber/src/main/scala/org/apache/amber/engine/architecture/deploysemantics/deploystrategy/RoundRobinDeployment.scala
index 01face4064..be8c4fdd1a 100644
--- 
a/amber/src/main/scala/org/apache/amber/engine/architecture/deploysemantics/deploystrategy/RoundRobinDeployment.scala
+++ 
b/amber/src/main/scala/org/apache/amber/engine/architecture/deploysemantics/deploystrategy/RoundRobinDeployment.scala
@@ -19,7 +19,7 @@
 
 package org.apache.amber.engine.architecture.deploysemantics.deploystrategy
 
-import akka.actor.Address
+import org.apache.pekko.actor.Address
 
 object RoundRobinDeployment {
   def apply() = new RoundRobinDeployment()
diff --git 
a/amber/src/main/scala/org/apache/amber/engine/architecture/messaginglayer/DeadLetterMonitorActor.scala
 
b/amber/src/main/scala/org/apache/amber/engine/architecture/messaginglayer/DeadLetterMonitorActor.scala
index a6f19e6330..cad3a7f44a 100644
--- 
a/amber/src/main/scala/org/apache/amber/engine/architecture/messaginglayer/DeadLetterMonitorActor.scala
+++ 
b/amber/src/main/scala/org/apache/amber/engine/architecture/messaginglayer/DeadLetterMonitorActor.scala
@@ -19,7 +19,7 @@
 
 package org.apache.amber.engine.architecture.messaginglayer
 
-import akka.actor.{Actor, DeadLetter}
+import org.apache.pekko.actor.{Actor, DeadLetter}
 import org.apache.amber.engine.architecture.common.WorkflowActor.{
   MessageBecomesDeadLetter,
   NetworkMessage
diff --git 
a/amber/src/main/scala/org/apache/amber/engine/architecture/messaginglayer/WorkerTimerService.scala
 
b/amber/src/main/scala/org/apache/amber/engine/architecture/messaginglayer/WorkerTimerService.scala
index 95da2292cd..61c0d8249f 100644
--- 
a/amber/src/main/scala/org/apache/amber/engine/architecture/messaginglayer/WorkerTimerService.scala
+++ 
b/amber/src/main/scala/org/apache/amber/engine/architecture/messaginglayer/WorkerTimerService.scala
@@ -19,7 +19,7 @@
 
 package org.apache.amber.engine.architecture.messaginglayer
 
-import akka.actor.Cancellable
+import org.apache.pekko.actor.Cancellable
 import org.apache.amber.config.ApplicationConfig
 import org.apache.amber.engine.architecture.common.AkkaActorService
 import 
org.apache.amber.engine.architecture.rpc.controlcommands.{AsyncRPCContext, 
EmptyRequest}
diff --git 
a/amber/src/main/scala/org/apache/amber/engine/architecture/pythonworker/PythonWorkflowWorker.scala
 
b/amber/src/main/scala/org/apache/amber/engine/architecture/pythonworker/PythonWorkflowWorker.scala
index fa765aee1f..fa43d2c7d9 100644
--- 
a/amber/src/main/scala/org/apache/amber/engine/architecture/pythonworker/PythonWorkflowWorker.scala
+++ 
b/amber/src/main/scala/org/apache/amber/engine/architecture/pythonworker/PythonWorkflowWorker.scala
@@ -19,7 +19,7 @@
 
 package org.apache.amber.engine.architecture.pythonworker
 
-import akka.actor.Props
+import org.apache.pekko.actor.Props
 import com.twitter.util.Promise
 import org.apache.amber.config.{StorageConfig, UdfConfig}
 import org.apache.amber.core.virtualidentity.ChannelIdentity
diff --git 
a/amber/src/main/scala/org/apache/amber/engine/architecture/scheduling/RegionExecutionCoordinator.scala
 
b/amber/src/main/scala/org/apache/amber/engine/architecture/scheduling/RegionExecutionCoordinator.scala
index 2de7bbfa46..a83af49dde 100644
--- 
a/amber/src/main/scala/org/apache/amber/engine/architecture/scheduling/RegionExecutionCoordinator.scala
+++ 
b/amber/src/main/scala/org/apache/amber/engine/architecture/scheduling/RegionExecutionCoordinator.scala
@@ -19,7 +19,7 @@
 
 package org.apache.amber.engine.architecture.scheduling
 
-import akka.pattern.gracefulStop
+import org.apache.pekko.pattern.gracefulStop
 import com.twitter.util.{Future, Return, Throw}
 import org.apache.amber.core.storage.DocumentFactory
 import org.apache.amber.core.storage.VFSURIFactory.decodeURI
@@ -118,7 +118,7 @@ class RegionExecutionCoordinator(
     * 1.  An `EndWorker` control message is first sent to all the workers. 
This will be the last message each worker
     * receives. We wait for all workers have replied to indicate they have 
finished processing all control messages.
     *
-    * 2. Only after all workers have processed all control messages do we send 
a `gracefulStop` (akka message) to each
+    * 2. Only after all workers have processed all control messages do we send 
a `gracefulStop` (pekko message) to each
     * worker. JVM workers will be terminated by `gracefulStop`. Python proxy 
workes will also be terminated by
     * `gracefulStop`, whose termination logic will also kill the PVMs.
     */
diff --git 
a/amber/src/main/scala/org/apache/amber/engine/architecture/worker/WorkflowWorker.scala
 
b/amber/src/main/scala/org/apache/amber/engine/architecture/worker/WorkflowWorker.scala
index 5017ef0fc1..9d780e29fa 100644
--- 
a/amber/src/main/scala/org/apache/amber/engine/architecture/worker/WorkflowWorker.scala
+++ 
b/amber/src/main/scala/org/apache/amber/engine/architecture/worker/WorkflowWorker.scala
@@ -19,7 +19,7 @@
 
 package org.apache.amber.engine.architecture.worker
 
-import akka.actor.Props
+import org.apache.pekko.actor.Props
 import org.apache.amber.core.virtualidentity.{ChannelIdentity, 
EmbeddedControlMessageIdentity}
 import org.apache.amber.engine.architecture.common.WorkflowActor
 import org.apache.amber.engine.architecture.common.WorkflowActor.NetworkAck
diff --git 
a/amber/src/main/scala/org/apache/amber/engine/common/AmberConfig.scala 
b/amber/src/main/scala/org/apache/amber/engine/common/AmberConfig.scala
index d49f875949..b8017b21d4 100644
--- a/amber/src/main/scala/org/apache/amber/engine/common/AmberConfig.scala
+++ b/amber/src/main/scala/org/apache/amber/engine/common/AmberConfig.scala
@@ -18,8 +18,8 @@
 
 package org.apache.amber.engine.common
 
-import akka.actor.Address
+import org.apache.pekko.actor.Address
 
 object AmberConfig {
-  var masterNodeAddr: Address = Address("akka", "Amber", "localhost", 2552)
+  var masterNodeAddr: Address = Address("pekko", "Amber", "localhost", 2552)
 }
diff --git 
a/amber/src/main/scala/org/apache/amber/engine/common/AmberKryoInitializer.scala
 
b/amber/src/main/scala/org/apache/amber/engine/common/AmberKryoInitializer.scala
index cc66db7860..6511f652c5 100644
--- 
a/amber/src/main/scala/org/apache/amber/engine/common/AmberKryoInitializer.scala
+++ 
b/amber/src/main/scala/org/apache/amber/engine/common/AmberKryoInitializer.scala
@@ -19,17 +19,15 @@
 
 package org.apache.amber.engine.common
 
-import akka.actor.ExtendedActorSystem
-import com.esotericsoftware.kryo.serializers.ClosureSerializer
-import com.esotericsoftware.kryo.serializers.ClosureSerializer.Closure
-import io.altoo.akka.serialization.kryo.DefaultKryoInitializer
-import io.altoo.akka.serialization.kryo.serializer.scala.ScalaKryo
+import com.esotericsoftware.kryo.kryo5.serializers.ClosureSerializer
+import io.altoo.serialization.kryo.pekko.DefaultKryoInitializer
+import io.altoo.serialization.kryo.scala.serializer.ScalaKryo
 
 import java.lang.invoke.SerializedLambda
 
 class AmberKryoInitializer extends DefaultKryoInitializer {
-  override def preInit(kryo: ScalaKryo, system: ExtendedActorSystem): Unit = {
+  override def preInit(kryo: ScalaKryo): Unit = {
     kryo.register(classOf[SerializedLambda])
-    kryo.register(classOf[Closure], new ClosureSerializer())
+    kryo.register(classOf[ClosureSerializer.Closure], new ClosureSerializer())
   }
 }
diff --git 
a/amber/src/main/scala/org/apache/amber/engine/common/AmberRuntime.scala 
b/amber/src/main/scala/org/apache/amber/engine/common/AmberRuntime.scala
index d9015be656..411814669c 100644
--- a/amber/src/main/scala/org/apache/amber/engine/common/AmberRuntime.scala
+++ b/amber/src/main/scala/org/apache/amber/engine/common/AmberRuntime.scala
@@ -19,8 +19,8 @@
 
 package org.apache.amber.engine.common
 
-import akka.actor.{ActorSystem, Address, Cancellable, DeadLetter, Props}
-import akka.serialization.{Serialization, SerializationExtension}
+import org.apache.pekko.actor.{ActorSystem, Address, Cancellable, DeadLetter, 
Props}
+import org.apache.pekko.serialization.{Serialization, SerializationExtension}
 import com.typesafe.config.{Config, ConfigFactory}
 import org.apache.amber.clustering.ClusterListener
 import org.apache.amber.config.AkkaConfig
@@ -79,9 +79,9 @@ object AmberRuntime {
 
     val masterConfig = ConfigFactory
       .parseString(s"""
-        akka.remote.artery.canonical.port = 2552
-        akka.remote.artery.canonical.hostname = $localIpAddress
-        akka.cluster.seed-nodes = [ "akka://Amber@$localIpAddress:2552" ]
+        pekko.remote.artery.canonical.port = 2552
+        pekko.remote.artery.canonical.hostname = $localIpAddress
+        pekko.cluster.seed-nodes = [ "pekko://Amber@$localIpAddress:2552" ]
         """)
       .withFallback(akkaConfig)
       .resolve()
@@ -91,7 +91,7 @@ object AmberRuntime {
 
   def akkaConfig: Config = AkkaConfig.akkaConfig
 
-  private def createMasterAddress(addr: String): Address = Address("akka", 
"Amber", addr, 2552)
+  private def createMasterAddress(addr: String): Address = Address("pekko", 
"Amber", addr, 2552)
 
   def startActorWorker(mainNodeAddress: Option[String]): Unit = {
     val addr = mainNodeAddress.getOrElse("localhost")
@@ -101,9 +101,9 @@ object AmberRuntime {
     }
     val workerConfig = ConfigFactory
       .parseString(s"""
-        akka.remote.artery.canonical.hostname = $localIpAddress
-        akka.remote.artery.canonical.port = 0
-        akka.cluster.seed-nodes = [ "akka://Amber@$addr:2552" ]
+        pekko.remote.artery.canonical.hostname = $localIpAddress
+        pekko.remote.artery.canonical.port = 0
+        pekko.cluster.seed-nodes = [ "pekko://Amber@$addr:2552" ]
         """)
       .withFallback(akkaConfig)
       .resolve()
diff --git 
a/amber/src/main/scala/org/apache/amber/engine/common/SerializedState.scala 
b/amber/src/main/scala/org/apache/amber/engine/common/SerializedState.scala
index eb5b039fb3..80f9601490 100644
--- a/amber/src/main/scala/org/apache/amber/engine/common/SerializedState.scala
+++ b/amber/src/main/scala/org/apache/amber/engine/common/SerializedState.scala
@@ -19,7 +19,7 @@
 
 package org.apache.amber.engine.common
 
-import akka.serialization.{Serialization, Serializers}
+import org.apache.pekko.serialization.{Serialization, Serializers}
 
 object SerializedState {
 
diff --git 
a/amber/src/main/scala/org/apache/amber/engine/common/ambermessage/RecoveryPayload.scala
 
b/amber/src/main/scala/org/apache/amber/engine/common/ambermessage/RecoveryPayload.scala
index 5a7c4379bc..45c8e3fd21 100644
--- 
a/amber/src/main/scala/org/apache/amber/engine/common/ambermessage/RecoveryPayload.scala
+++ 
b/amber/src/main/scala/org/apache/amber/engine/common/ambermessage/RecoveryPayload.scala
@@ -19,7 +19,7 @@
 
 package org.apache.amber.engine.common.ambermessage
 
-import akka.actor.{ActorRef, Address}
+import org.apache.pekko.actor.{ActorRef, Address}
 import org.apache.amber.core.virtualidentity.ActorVirtualIdentity
 
 sealed trait RecoveryPayload extends Serializable {}
diff --git 
a/amber/src/main/scala/org/apache/amber/engine/common/client/AmberClient.scala 
b/amber/src/main/scala/org/apache/amber/engine/common/client/AmberClient.scala
index 4d478ff297..cb33632394 100644
--- 
a/amber/src/main/scala/org/apache/amber/engine/common/client/AmberClient.scala
+++ 
b/amber/src/main/scala/org/apache/amber/engine/common/client/AmberClient.scala
@@ -19,9 +19,9 @@
 
 package org.apache.amber.engine.common.client
 
-import akka.actor.{ActorSystem, Address, PoisonPill, Props}
-import akka.pattern._
-import akka.util.Timeout
+import org.apache.pekko.actor.{ActorSystem, Address, PoisonPill, Props}
+import org.apache.pekko.pattern._
+import org.apache.pekko.util.Timeout
 import com.twitter.util.{Future, Promise}
 import io.reactivex.rxjava3.core.Observable
 import io.reactivex.rxjava3.disposables.Disposable
diff --git 
a/amber/src/main/scala/org/apache/amber/engine/common/client/ClientActor.scala 
b/amber/src/main/scala/org/apache/amber/engine/common/client/ClientActor.scala
index 8b6f239a05..5a9a5bd4b2 100644
--- 
a/amber/src/main/scala/org/apache/amber/engine/common/client/ClientActor.scala
+++ 
b/amber/src/main/scala/org/apache/amber/engine/common/client/ClientActor.scala
@@ -19,8 +19,8 @@
 
 package org.apache.amber.engine.common.client
 
-import akka.actor.{Actor, ActorRef}
-import akka.pattern.StatusReply.Ack
+import org.apache.pekko.actor.{Actor, ActorRef}
+import org.apache.pekko.pattern.StatusReply.Ack
 import com.twitter.util.Promise
 import org.apache.amber.core.virtualidentity.{ActorVirtualIdentity, 
ChannelIdentity}
 import org.apache.amber.core.workflow.{PhysicalPlan, WorkflowContext}
diff --git 
a/amber/src/main/scala/org/apache/texera/web/WorkflowLifecycleManager.scala 
b/amber/src/main/scala/org/apache/texera/web/WorkflowLifecycleManager.scala
index 5e23ee597f..fee2113ecd 100644
--- a/amber/src/main/scala/org/apache/texera/web/WorkflowLifecycleManager.scala
+++ b/amber/src/main/scala/org/apache/texera/web/WorkflowLifecycleManager.scala
@@ -19,7 +19,7 @@
 
 package org.apache.texera.web
 
-import akka.actor.Cancellable
+import org.apache.pekko.actor.Cancellable
 import com.typesafe.scalalogging.LazyLogging
 import 
org.apache.amber.engine.architecture.rpc.controlreturns.WorkflowAggregatedState
 import 
org.apache.amber.engine.architecture.rpc.controlreturns.WorkflowAggregatedState.RUNNING
diff --git 
a/amber/src/main/scala/org/apache/texera/web/service/ExecutionResultService.scala
 
b/amber/src/main/scala/org/apache/texera/web/service/ExecutionResultService.scala
index 8268598d0a..246c4e4967 100644
--- 
a/amber/src/main/scala/org/apache/texera/web/service/ExecutionResultService.scala
+++ 
b/amber/src/main/scala/org/apache/texera/web/service/ExecutionResultService.scala
@@ -19,7 +19,7 @@
 
 package org.apache.texera.web.service
 
-import akka.actor.Cancellable
+import org.apache.pekko.actor.Cancellable
 import com.fasterxml.jackson.annotation.{JsonTypeInfo, JsonTypeName}
 import com.fasterxml.jackson.databind.node.ObjectNode
 import com.typesafe.scalalogging.LazyLogging
diff --git 
a/amber/src/test/scala/org/apache/amber/engine/architecture/breakpoint/ExceptionBreakpointSpec.scala
 
b/amber/src/test/scala/org/apache/amber/engine/architecture/breakpoint/ExceptionBreakpointSpec.scala
index 38aa4e547e..8f68d1adbb 100644
--- 
a/amber/src/test/scala/org/apache/amber/engine/architecture/breakpoint/ExceptionBreakpointSpec.scala
+++ 
b/amber/src/test/scala/org/apache/amber/engine/architecture/breakpoint/ExceptionBreakpointSpec.scala
@@ -19,10 +19,10 @@
 
 package org.apache.amber.engine.architecture.breakpoint
 
-import akka.actor.ActorSystem
-import akka.event.LoggingAdapter
-import akka.testkit.{ImplicitSender, TestKit}
-import akka.util.Timeout
+import org.apache.pekko.actor.ActorSystem
+import org.apache.pekko.event.LoggingAdapter
+import org.apache.pekko.testkit.{ImplicitSender, TestKit}
+import org.apache.pekko.util.Timeout
 import org.scalatest.BeforeAndAfterAll
 import org.scalatest.flatspec.AnyFlatSpecLike
 
diff --git 
a/amber/src/test/scala/org/apache/amber/engine/architecture/control/TrivialControlSpec.scala
 
b/amber/src/test/scala/org/apache/amber/engine/architecture/control/TrivialControlSpec.scala
index 049de652d9..bfaf494f75 100644
--- 
a/amber/src/test/scala/org/apache/amber/engine/architecture/control/TrivialControlSpec.scala
+++ 
b/amber/src/test/scala/org/apache/amber/engine/architecture/control/TrivialControlSpec.scala
@@ -19,8 +19,8 @@
 
 package org.apache.amber.engine.architecture.control
 
-import akka.actor.{ActorRef, ActorSystem, PoisonPill, Props}
-import akka.testkit.{TestKit, TestProbe}
+import org.apache.pekko.actor.{ActorRef, ActorSystem, PoisonPill, Props}
+import org.apache.pekko.testkit.{TestKit, TestProbe}
 import io.grpc.MethodDescriptor
 import org.apache.amber.core.virtualidentity.{ActorVirtualIdentity, 
ChannelIdentity}
 import org.apache.amber.engine.architecture.common.WorkflowActor.{
diff --git 
a/amber/src/test/scala/org/apache/amber/engine/architecture/controller/ControllerSpec.scala
 
b/amber/src/test/scala/org/apache/amber/engine/architecture/controller/ControllerSpec.scala
index fae2e04924..4be7d58216 100644
--- 
a/amber/src/test/scala/org/apache/amber/engine/architecture/controller/ControllerSpec.scala
+++ 
b/amber/src/test/scala/org/apache/amber/engine/architecture/controller/ControllerSpec.scala
@@ -19,9 +19,9 @@
 
 package org.apache.amber.engine.architecture.controller
 
-import akka.actor.{ActorSystem, Props}
-import akka.testkit.{ImplicitSender, TestKit}
-import akka.util.Timeout
+import org.apache.pekko.actor.{ActorSystem, Props}
+import org.apache.pekko.testkit.{ImplicitSender, TestKit}
+import org.apache.pekko.util.Timeout
 import org.apache.amber.clustering.SingleNodeListener
 import org.scalatest.BeforeAndAfterAll
 import org.scalatest.flatspec.AnyFlatSpecLike
diff --git 
a/amber/src/test/scala/org/apache/amber/engine/architecture/pythonworker/PythonWorkflowWorkerSpec.scala
 
b/amber/src/test/scala/org/apache/amber/engine/architecture/pythonworker/PythonWorkflowWorkerSpec.scala
index e53e736f6e..0826faf9ec 100644
--- 
a/amber/src/test/scala/org/apache/amber/engine/architecture/pythonworker/PythonWorkflowWorkerSpec.scala
+++ 
b/amber/src/test/scala/org/apache/amber/engine/architecture/pythonworker/PythonWorkflowWorkerSpec.scala
@@ -19,8 +19,8 @@
 
 //package org.apache.amber.engine.architecture.pythonworker
 //
-//import akka.actor.{ActorRef, ActorSystem, Props}
-//import akka.testkit.{ImplicitSender, TestActorRef, TestKit}
+//import org.apache.pekko.actor.{ActorRef, ActorSystem, Props}
+//import org.apache.pekko.testkit.{ImplicitSender, TestActorRef, TestKit}
 //import org.apache.amber.clustering.SingleNodeListener
 //import 
org.apache.amber.engine.architecture.common.WorkflowActor.{NetworkAck, 
NetworkMessage}
 //import 
org.apache.amber.engine.architecture.pythonworker.promisehandlers.InitializeOperatorLogicHandler.InitializeOperatorLogic
diff --git 
a/amber/src/test/scala/org/apache/amber/engine/architecture/worker/WorkerSpec.scala
 
b/amber/src/test/scala/org/apache/amber/engine/architecture/worker/WorkerSpec.scala
index cc874f1c8a..1bc3a16078 100644
--- 
a/amber/src/test/scala/org/apache/amber/engine/architecture/worker/WorkerSpec.scala
+++ 
b/amber/src/test/scala/org/apache/amber/engine/architecture/worker/WorkerSpec.scala
@@ -19,8 +19,8 @@
 
 package org.apache.amber.engine.architecture.worker
 
-import akka.actor.{ActorRef, ActorSystem, Props}
-import akka.testkit.{ImplicitSender, TestActorRef, TestKit}
+import org.apache.pekko.actor.{ActorRef, ActorSystem, Props}
+import org.apache.pekko.testkit.{ImplicitSender, TestActorRef, TestKit}
 import org.apache.amber.clustering.SingleNodeListener
 import org.apache.amber.core.executor.{OpExecWithClassName, OperatorExecutor}
 import org.apache.amber.core.tuple._
diff --git 
a/amber/src/test/scala/org/apache/amber/engine/e2e/BatchSizePropagationSpec.scala
 
b/amber/src/test/scala/org/apache/amber/engine/e2e/BatchSizePropagationSpec.scala
index b1bde18fd8..b4ac0a9541 100644
--- 
a/amber/src/test/scala/org/apache/amber/engine/e2e/BatchSizePropagationSpec.scala
+++ 
b/amber/src/test/scala/org/apache/amber/engine/e2e/BatchSizePropagationSpec.scala
@@ -19,9 +19,9 @@
 
 package org.apache.amber.engine.e2e
 
-import akka.actor.{ActorSystem, Props}
-import akka.testkit.{ImplicitSender, TestKit}
-import akka.util.Timeout
+import org.apache.pekko.actor.{ActorSystem, Props}
+import org.apache.pekko.testkit.{ImplicitSender, TestKit}
+import org.apache.pekko.util.Timeout
 import org.apache.amber.clustering.SingleNodeListener
 import org.apache.amber.core.workflow.{PortIdentity, WorkflowContext, 
WorkflowSettings}
 import org.apache.amber.engine.architecture.controller._
diff --git 
a/amber/src/test/scala/org/apache/amber/engine/e2e/DataProcessingSpec.scala 
b/amber/src/test/scala/org/apache/amber/engine/e2e/DataProcessingSpec.scala
index 8b62114b41..9e27795d09 100644
--- a/amber/src/test/scala/org/apache/amber/engine/e2e/DataProcessingSpec.scala
+++ b/amber/src/test/scala/org/apache/amber/engine/e2e/DataProcessingSpec.scala
@@ -19,9 +19,9 @@
 
 package org.apache.amber.engine.e2e
 
-import akka.actor.{ActorSystem, Props}
-import akka.testkit.{ImplicitSender, TestKit}
-import akka.util.Timeout
+import org.apache.pekko.actor.{ActorSystem, Props}
+import org.apache.pekko.testkit.{ImplicitSender, TestKit}
+import org.apache.pekko.util.Timeout
 import com.twitter.util.{Await, Duration, Promise}
 import org.apache.amber.clustering.SingleNodeListener
 import org.apache.amber.core.storage.DocumentFactory
diff --git a/amber/src/test/scala/org/apache/amber/engine/e2e/PauseSpec.scala 
b/amber/src/test/scala/org/apache/amber/engine/e2e/PauseSpec.scala
index 46236391be..441d646739 100644
--- a/amber/src/test/scala/org/apache/amber/engine/e2e/PauseSpec.scala
+++ b/amber/src/test/scala/org/apache/amber/engine/e2e/PauseSpec.scala
@@ -19,9 +19,9 @@
 
 package org.apache.amber.engine.e2e
 
-import akka.actor.{ActorSystem, Props}
-import akka.testkit.{ImplicitSender, TestKit}
-import akka.util.Timeout
+import org.apache.pekko.actor.{ActorSystem, Props}
+import org.apache.pekko.testkit.{ImplicitSender, TestKit}
+import org.apache.pekko.util.Timeout
 import com.twitter.util.{Await, Duration, Promise}
 import com.typesafe.scalalogging.Logger
 import org.apache.amber.clustering.SingleNodeListener
diff --git 
a/amber/src/test/scala/org/apache/amber/engine/faulttolerance/CheckpointSpec.scala
 
b/amber/src/test/scala/org/apache/amber/engine/faulttolerance/CheckpointSpec.scala
index cb951a1c3d..bdf9c1a6b0 100644
--- 
a/amber/src/test/scala/org/apache/amber/engine/faulttolerance/CheckpointSpec.scala
+++ 
b/amber/src/test/scala/org/apache/amber/engine/faulttolerance/CheckpointSpec.scala
@@ -19,7 +19,7 @@
 
 package org.apache.amber.engine.faulttolerance
 
-import akka.actor.{ActorSystem, Props}
+import org.apache.pekko.actor.{ActorSystem, Props}
 import org.apache.amber.clustering.SingleNodeListener
 import org.apache.amber.core.workflow.{PortIdentity, WorkflowContext}
 import org.apache.amber.engine.architecture.controller.{ControllerConfig, 
ControllerProcessor}
diff --git 
a/amber/src/test/scala/org/apache/amber/engine/faulttolerance/LoggingSpec.scala 
b/amber/src/test/scala/org/apache/amber/engine/faulttolerance/LoggingSpec.scala
index e7654d0a74..bb7fb38a67 100644
--- 
a/amber/src/test/scala/org/apache/amber/engine/faulttolerance/LoggingSpec.scala
+++ 
b/amber/src/test/scala/org/apache/amber/engine/faulttolerance/LoggingSpec.scala
@@ -19,8 +19,8 @@
 
 package org.apache.amber.engine.faulttolerance
 
-import akka.actor.ActorSystem
-import akka.testkit.{ImplicitSender, TestKit}
+import org.apache.pekko.actor.ActorSystem
+import org.apache.pekko.testkit.{ImplicitSender, TestKit}
 import org.apache.amber.core.tuple.{AttributeType, Schema, TupleLike}
 import org.apache.amber.core.virtualidentity.{
   ActorVirtualIdentity,
diff --git 
a/amber/src/test/scala/org/apache/amber/engine/faulttolerance/ReplaySpec.scala 
b/amber/src/test/scala/org/apache/amber/engine/faulttolerance/ReplaySpec.scala
index 267675c38d..f567a091fe 100644
--- 
a/amber/src/test/scala/org/apache/amber/engine/faulttolerance/ReplaySpec.scala
+++ 
b/amber/src/test/scala/org/apache/amber/engine/faulttolerance/ReplaySpec.scala
@@ -19,8 +19,8 @@
 
 package org.apache.amber.engine.faulttolerance
 
-import akka.actor.ActorSystem
-import akka.testkit.{ImplicitSender, TestKit}
+import org.apache.pekko.actor.ActorSystem
+import org.apache.pekko.testkit.{ImplicitSender, TestKit}
 import org.apache.amber.core.virtualidentity.{ActorVirtualIdentity, 
ChannelIdentity}
 import org.apache.amber.engine.architecture.logreplay.{
   ProcessingStep,
diff --git a/common/config/src/main/resources/cluster.conf 
b/common/config/src/main/resources/cluster.conf
index d2f8bf35b4..e2fb2df803 100644
--- a/common/config/src/main/resources/cluster.conf
+++ b/common/config/src/main/resources/cluster.conf
@@ -15,10 +15,10 @@
 # specific language governing permissions and limitations
 # under the License.
 
-akka {
-    # Loggers to register at boot time (akka.event.Logging$DefaultLogger logs
+pekko {
+    # Loggers to register at boot time (pekko.event.Logging$DefaultLogger logs
     # to STDOUT)
-    loggers = ["akka.event.slf4j.Slf4jLogger"]
+    loggers = ["org.apache.pekko.event.slf4j.Slf4jLogger"]
 
     # Log level used by the configured loggers (see "loggers") as soon
     # as they have been started; before that, see "stdout-loglevel"
@@ -32,18 +32,18 @@ akka {
 
     # Filter of log events that is used by the LoggingAdapter before
     # publishing log events to the eventStream.
-    logging-filter = "akka.event.slf4j.Slf4jLoggingFilter"
+    logging-filter = "org.apache.pekko.event.slf4j.Slf4jLoggingFilter"
 
     actor {
         provider = cluster
         enable-additional-serialization-bindings = on
         allow-java-serialization = off
         serializers {
-            kryo = "io.altoo.akka.serialization.kryo.KryoSerializer"
+            kryo = "io.altoo.serialization.kryo.pekko.PekkoKryoSerializer"
         }
         serialization-bindings {
             "java.io.Serializable" = kryo
-            "java.lang.Throwable" = akka-misc
+            "java.lang.Throwable" = pekko-misc
         }
     }
 
@@ -62,7 +62,7 @@ akka {
         # auto downing is NOT safe for production deployments.
         # you may want to use it during development, read more about it in the 
docs.
         auto-down-unreachable-after = off
-        downing-provider-class = "akka.cluster.sbr.SplitBrainResolverProvider"
+        downing-provider-class = 
"org.apache.pekko.cluster.sbr.SplitBrainResolverProvider"
         unreachable-nodes-reaper-interval = 5s
         gossip-interval = 10s
         leader-actions-interval = 10s
@@ -76,4 +76,4 @@ akka {
     }
 }
 
-akka-kryo-serialization.kryo-initializer = 
"org.apache.amber.engine.common.AmberKryoInitializer"
\ No newline at end of file
+pekko-kryo-serialization.kryo-initializer = 
"org.apache.amber.engine.common.AmberKryoInitializer"
diff --git 
a/common/config/src/main/scala/org/apache/amber/config/AkkaConfig.scala 
b/common/config/src/main/scala/org/apache/amber/config/AkkaConfig.scala
index 5d6d02076a..65a20b5f6b 100644
--- a/common/config/src/main/scala/org/apache/amber/config/AkkaConfig.scala
+++ b/common/config/src/main/scala/org/apache/amber/config/AkkaConfig.scala
@@ -25,6 +25,6 @@ object AkkaConfig {
   // Load configuration
   private val conf: Config = 
ConfigFactory.parseResources("cluster.conf").resolve()
 
-  // Return the complete Akka configuration with fallback to default 
application config
+  // Return the complete Pekko configuration with fallback to default 
application config
   def akkaConfig: Config = 
conf.withFallback(ConfigFactory.defaultApplication()).resolve()
 }


Reply via email to