Update of /var/cvs/src/org/mmbase/storage/implementation/database
In directory james.mmbase.org:/tmp/cvs-serv26489
Modified Files:
DatabaseStorageManager.java DatabaseStorageManagerFactory.java
Log Message:
MMB-1780
See also:
http://cvs.mmbase.org/viewcvs/src/org/mmbase/storage/implementation/database
See also: http://www.mmbase.org/jira/browse/MMB-1780
Index: DatabaseStorageManager.java
===================================================================
RCS file:
/var/cvs/src/org/mmbase/storage/implementation/database/DatabaseStorageManager.java,v
retrieving revision 1.208
retrieving revision 1.209
diff -u -b -r1.208 -r1.209
--- DatabaseStorageManager.java 31 Jan 2009 07:48:36 -0000 1.208
+++ DatabaseStorageManager.java 31 Jan 2009 09:28:52 -0000 1.209
@@ -35,7 +35,7 @@
*
* @author Pierre van Rooden
* @since MMBase-1.7
- * @version $Id: DatabaseStorageManager.java,v 1.208 2009/01/31 07:48:36
michiel Exp $
+ * @version $Id: DatabaseStorageManager.java,v 1.209 2009/01/31 09:28:52
michiel Exp $
*/
public class DatabaseStorageManager implements StorageManager {
@@ -129,16 +129,16 @@
public DatabaseStorageManager() {}
protected final long getLogStartTime() {
- return System.currentTimeMillis();
+ return System.nanoTime();
}
protected final void logQuery(String query, long startTime) {
- long duration = System.currentTimeMillis() - startTime;
+ long duration = System.nanoTime() - startTime;
if (log.isDebugEnabled()) {
// This can probably by dropped, we log much nicer on
org.mmbase.QUERIES now.
- log.debug("Time:" + duration + " Query :" + query);
+ log.debug("Time:" + duration / 1000000 + " Query :" + query);
if (log.isTraceEnabled()) {
log.trace(Logging.stackTrace());
}
@@ -1922,7 +1922,7 @@
MMBase mmbase = factory.getMMBase();
String query = scheme.format(this, mmbase,
mmbase.getTypeDef().getField("number"), numberValue);
Statement s = activeConnection.createStatement();
- long startTime = System.currentTimeMillis();
+ long startTime = getLogStartTime();
try {
ResultSet result = s.executeQuery(query);
if (result != null) {
Index: DatabaseStorageManagerFactory.java
===================================================================
RCS file:
/var/cvs/src/org/mmbase/storage/implementation/database/DatabaseStorageManagerFactory.java,v
retrieving revision 1.55
retrieving revision 1.56
diff -u -b -r1.55 -r1.56
--- DatabaseStorageManagerFactory.java 30 Jan 2009 20:07:33 -0000 1.55
+++ DatabaseStorageManagerFactory.java 31 Jan 2009 09:28:52 -0000 1.56
@@ -42,7 +42,7 @@
*
* @author Pierre van Rooden
* @since MMBase-1.7
- * @version $Id: DatabaseStorageManagerFactory.java,v 1.55 2009/01/30 20:07:33
michiel Exp $
+ * @version $Id: DatabaseStorageManagerFactory.java,v 1.56 2009/01/31 09:28:52
michiel Exp $
*/
public class DatabaseStorageManagerFactory extends
StorageManagerFactory<DatabaseStorageManager> {
@@ -106,17 +106,29 @@
/**
* @since MMBase-1.9.1
*/
- private int debugDuration = 50;
- private int serviceDuration = 100;
- private int infoDuration = 500;
- private int warnDuration = 2000;
- private int errorDuration = 5000;
- private int fatalDuration = 1000000;
+ static long MS = 1000000; // 1 ms in ns
+ private long debugDuration = 50 * MS;
+ private long serviceDuration = 100 * MS;
+ private long infoDuration = 500 * MS;
+ private long warnDuration = 2000 * MS;
+ private long errorDuration = 5000 * MS;
+ private long fatalDuration = 1000000 * MS;
+ private String durationFormat = "#.#";
final UtilReader.PropertiesMap<String> utilProperties = new
UtilReader("querylogging.xml",
new Runnable() {public void run() {readDurations(); }}).getProperties();
private void readDurations() {
- debugDuration = Integer.parseInt(utilProperties.getProperty("debug",
"" + debugDuration));
+ debugDuration = new
Float(Float.parseFloat(utilProperties.getProperty("debug", "" +
debugDuration)) * MS).longValue();
+ serviceDuration = new
Float(Float.parseFloat(utilProperties.getProperty("service", "" +
debugDuration)) * MS).longValue();
+ infoDuration = new
Float(Float.parseFloat(utilProperties.getProperty("info", "" +
debugDuration)) * MS).longValue();
+ warnDuration = new
Float(Float.parseFloat(utilProperties.getProperty("warn", "" +
debugDuration)) * MS).longValue();
+ errorDuration = new
Float(Float.parseFloat(utilProperties.getProperty("error", "" +
debugDuration)) * MS).longValue();
+ fatalDuration = new
Float(Float.parseFloat(utilProperties.getProperty("fatal", "" +
debugDuration)) * MS).longValue();
+
+ durationFormat = utilProperties.getProperty("durationFormat",
durationFormat);
+ }
+ {
+ readDurations();
}
public double getVersion() {
@@ -467,10 +479,14 @@
mes.append('#');
mes.append(queries);
mes.append(" ");
- if (time < 10) mes.append(' ');
- if (time < 100) mes.append(' ');
- if (time < 1000) mes.append(' ');
- mes.append(time);
+ float t = ((float) time) / MS;
+ //DecimalFormat format = new DecimalFormat(durationFormat,
DecimalFormatSymbols.getInstance(java.util.Locale.US)); // java 1.6
+ DecimalFormat format = new DecimalFormat(durationFormat, new
DecimalFormatSymbols(java.util.Locale.US));
+ String f = format.format(t);
+ for (int i = f.length() ; i < durationFormat.length() + 3; i++) {
+ mes.append(' ');
+ }
+ mes.append(f);
mes.append(" ms: ").append(sql);
return mes.toString();
}
_______________________________________________
Cvs mailing list
[email protected]
http://lists.mmbase.org/mailman/listinfo/cvs