You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@celeborn.apache.org by et...@apache.org on 2023/06/06 04:59:43 UTC
[incubator-celeborn] branch main updated: [CELEBORN-636] Replace SimpleDateFormat with FastDateFormat
This is an automated email from the ASF dual-hosted git repository.
ethanfeng pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/incubator-celeborn.git
The following commit(s) were added to refs/heads/main by this push:
new 3c7d179e0 [CELEBORN-636] Replace SimpleDateFormat with FastDateFormat
3c7d179e0 is described below
commit 3c7d179e051dce1dc4cf3a559a6761eadeccd9a6
Author: Cheng Pan <ch...@apache.org>
AuthorDate: Tue Jun 6 12:59:32 2023 +0800
[CELEBORN-636] Replace SimpleDateFormat with FastDateFormat
### What changes were proposed in this pull request?
`SimpleDateFormat` is not thread-safe, replace it with a thread-safe `FastDateFormat`
### Why are the changes needed?
`FastDateFormat` is a fast and thread-safe version of `java.text.SimpleDateFormat`.
### Does this PR introduce _any_ user-facing change?
Yes, it's a bug fix.
### How was this patch tested?
Manually review.
Closes #1545 from pan3793/CELEBORN-636.
Authored-by: Cheng Pan <ch...@apache.org>
Signed-off-by: Ethan Feng <et...@apache.org>
---
.../scala/org/apache/celeborn/service/deploy/master/Master.scala | 4 ++--
.../main/scala/org/apache/celeborn/server/common/HttpService.scala | 6 ++++--
.../scala/org/apache/celeborn/service/deploy/worker/Worker.scala | 2 +-
3 files changed, 7 insertions(+), 5 deletions(-)
diff --git a/master/src/main/scala/org/apache/celeborn/service/deploy/master/Master.scala b/master/src/main/scala/org/apache/celeborn/service/deploy/master/Master.scala
index 4dc36b562..a137c6f0b 100644
--- a/master/src/main/scala/org/apache/celeborn/service/deploy/master/Master.scala
+++ b/master/src/main/scala/org/apache/celeborn/service/deploy/master/Master.scala
@@ -743,7 +743,7 @@ private[celeborn] class Master(
val sb = new StringBuilder
sb.append("======================= Lost Workers in Master ========================\n")
lostWorkersSnapshot.asScala.toSeq.sortBy(_._2).foreach { case (worker, time) =>
- sb.append(s"${worker.toUniqueId().padTo(50, " ").mkString}${simpleDateFormat.format(time)}\n")
+ sb.append(s"${worker.toUniqueId().padTo(50, " ").mkString}${dateFmt.format(time)}\n")
}
sb.toString()
}
@@ -786,7 +786,7 @@ private[celeborn] class Master(
val sb = new StringBuilder
sb.append("================= LifecycleManager Hostname List ======================\n")
statusSystem.appHeartbeatTime.asScala.toSeq.sortBy(_._2).foreach { case (appId, time) =>
- sb.append(s"${appId.padTo(40, " ").mkString}${simpleDateFormat.format(time)}\n")
+ sb.append(s"${appId.padTo(40, " ").mkString}${dateFmt.format(time)}\n")
}
sb.toString()
}
diff --git a/service/src/main/scala/org/apache/celeborn/server/common/HttpService.scala b/service/src/main/scala/org/apache/celeborn/server/common/HttpService.scala
index bc075c531..47e2833cf 100644
--- a/service/src/main/scala/org/apache/celeborn/server/common/HttpService.scala
+++ b/service/src/main/scala/org/apache/celeborn/server/common/HttpService.scala
@@ -17,9 +17,10 @@
package org.apache.celeborn.server.common
-import java.text.SimpleDateFormat
import java.util.Locale
+import org.apache.commons.lang3.time.FastDateFormat
+
import org.apache.celeborn.common.internal.Logging
import org.apache.celeborn.server.common.http.{HttpRequestHandler, HttpServer, HttpServerInitializer}
@@ -27,7 +28,8 @@ abstract class HttpService extends Service with Logging {
private var httpServer: HttpServer = _
- protected val simpleDateFormat = new SimpleDateFormat("yyyy-MM-dd'T'HH:mm:ss.SSSZ", Locale.ROOT)
+ protected val dateFmt: FastDateFormat =
+ FastDateFormat.getInstance("yyyy-MM-dd'T'HH:mm:ss.SSSZ", Locale.ROOT)
def getConf: String = {
val sb = new StringBuilder
diff --git a/worker/src/main/scala/org/apache/celeborn/service/deploy/worker/Worker.scala b/worker/src/main/scala/org/apache/celeborn/service/deploy/worker/Worker.scala
index e62bf53da..c0a819d29 100644
--- a/worker/src/main/scala/org/apache/celeborn/service/deploy/worker/Worker.scala
+++ b/worker/src/main/scala/org/apache/celeborn/service/deploy/worker/Worker.scala
@@ -528,7 +528,7 @@ private[celeborn] class Worker(
val sb = new StringBuilder
sb.append("==================== Unavailable Peers of Worker =====================\n")
unavailablePeers.asScala.foreach { case (peer, time) =>
- sb.append(s"${peer.toUniqueId().padTo(50, " ").mkString}${simpleDateFormat.format(time)}\n")
+ sb.append(s"${peer.toUniqueId().padTo(50, " ").mkString}${dateFmt.format(time)}\n")
}
sb.toString()
}