From 24515eed7e3f4bd8bf5b481ee4a31e21408887e3 Mon Sep 17 00:00:00 2001
From: matthew_swift <matthew_swift@localhost>
Date: Fri, 10 Apr 2009 14:15:21 +0000
Subject: [PATCH] Fix issue 3001: Performance bottleneck in GeneralizedTimeSyntax.format
---
opends/src/server/org/opends/server/util/TimeThread.java | 15 +++++----------
1 files changed, 5 insertions(+), 10 deletions(-)
diff --git a/opends/src/server/org/opends/server/util/TimeThread.java b/opends/src/server/org/opends/server/util/TimeThread.java
index 03d9d9b..38bcd0b 100644
--- a/opends/src/server/org/opends/server/util/TimeThread.java
+++ b/opends/src/server/org/opends/server/util/TimeThread.java
@@ -22,7 +22,7 @@
* CDDL HEADER END
*
*
- * Copyright 2006-2008 Sun Microsystems, Inc.
+ * Copyright 2006-2009 Sun Microsystems, Inc.
*/
package org.opends.server.util;
@@ -41,6 +41,7 @@
import static org.opends.server.loggers.debug.DebugLogger.*;
import org.opends.server.loggers.debug.DebugTracer;
+import org.opends.server.schema.GeneralizedTimeSyntax;
import org.opends.server.types.DebugLogLevel;
import static org.opends.server.util.ServerConstants.*;
@@ -96,9 +97,6 @@
// The current time in nanoseconds.
private static volatile long nanoTime;
- // The date formatter that will be used to obtain the generalized time.
- private static SimpleDateFormat generalizedTimeFormatter;
-
// The date formatter that will be used to obtain the local timestamp.
private static SimpleDateFormat localTimestampFormatter;
@@ -130,10 +128,6 @@
TimeZone utcTimeZone = TimeZone.getTimeZone(TIME_ZONE_UTC);
- generalizedTimeFormatter =
- new SimpleDateFormat(DATE_FORMAT_GENERALIZED_TIME);
- generalizedTimeFormatter.setTimeZone(utcTimeZone);
-
gmtTimestampFormatter = new SimpleDateFormat(DATE_FORMAT_GMT_TIME);
gmtTimestampFormatter.setTimeZone(utcTimeZone);
@@ -143,7 +137,7 @@
date = calendar.getTime();
time = date.getTime();
nanoTime = System.nanoTime();
- generalizedTime = generalizedTimeFormatter.format(date);
+ generalizedTime = GeneralizedTimeSyntax.format(date);
localTimestamp = localTimestampFormatter.format(date);
gmtTimestamp = gmtTimestampFormatter.format(date);
hourAndMinute = (calendar.get(Calendar.HOUR_OF_DAY) * 100) +
@@ -158,6 +152,7 @@
* Operates in a loop, getting the current time and then sleeping briefly
* before checking again.
*/
+ @Override
public void run()
{
while (true)
@@ -168,7 +163,7 @@
date = calendar.getTime();
time = date.getTime();
nanoTime = System.nanoTime();
- generalizedTime = generalizedTimeFormatter.format(date);
+ generalizedTime = GeneralizedTimeSyntax.format(date);
localTimestamp = localTimestampFormatter.format(date);
gmtTimestamp = gmtTimestampFormatter.format(date);
hourAndMinute = (calendar.get(Calendar.HOUR_OF_DAY) * 100) +
--
Gitblit v1.10.0