You are viewing a plain text version of this content. The canonical link for it is here.
Posted to derby-commits@db.apache.org by bp...@apache.org on 2009/12/05 02:01:24 UTC
svn commit: r887475 -
/db/derby/code/trunk/java/engine/org/apache/derby/impl/sql/GenericStatement.java
Author: bpendleton
Date: Sat Dec 5 01:01:23 2009
New Revision: 887475
URL: http://svn.apache.org/viewvc?rev=887475&view=rev
Log:
DERBY-4297: XplainStatisticsTest 'compilation time did not compute'
This change adjusts the technique used to compute the compileTime counter
in GenericStatement.prepMinion so that the following invariant will hold:
parseTime + bindTime + optimizeTime + generateTime = compileTime
Previously, there was a small window after generateTime had been computed
but before compileTime had been recorded, during which the value of the
System.currentTimeMillis clock could change, resulting in a situation where
compileTime was too large, typically by 15 or 16 milliseconds.
Modified:
db/derby/code/trunk/java/engine/org/apache/derby/impl/sql/GenericStatement.java
Modified: db/derby/code/trunk/java/engine/org/apache/derby/impl/sql/GenericStatement.java
URL: http://svn.apache.org/viewvc/db/derby/code/trunk/java/engine/org/apache/derby/impl/sql/GenericStatement.java?rev=887475&r1=887474&r2=887475&view=diff
==============================================================================
--- db/derby/code/trunk/java/engine/org/apache/derby/impl/sql/GenericStatement.java (original)
+++ db/derby/code/trunk/java/engine/org/apache/derby/impl/sql/GenericStatement.java Sat Dec 5 01:01:23 2009
@@ -521,7 +521,7 @@
bindTime - parseTime, //bind time
optimizeTime - bindTime, //optimize time
generateTime - optimizeTime, //generate time
- getElapsedTimeMillis(beginTime),
+ generateTime - beginTime, //total compile time
beginTimestamp,
endTimestamp);
}