DBA Tracer not reporting time for blob read/write operations
In DB Trace csv file, "DB Trace Data" sheet, the column time does not contain the time for read/write blob operations.
Steps to Reproduce
Start DB tracer
do any operation that produces a new save of a work object
Stop DB Tracer
The root cause of this problem is an error/omission in product documentation. A full explanation of the values written bythe DB tracer is not available.
First, if the operating system on which you are running the application server may not support CPU time capture.
The Time(s) column only contains the elapsed time when the time value is greater than a millisecond. If you review the timestamp values in the Generated column, you will see that the Time(s) column contains values when there is a difference in the timestamp values. If the two timestamp values are the same, the Time(s) column is left blank. And there are occassional rows where the timestamp value is shown with a different of 1 milliseond, but a blank value for Time(s). This is a case where as the Tracer data was being written, the difference in the timestamp values, when calculated to greater accuracy than shown in the table, was less than a millisecond.
The Trace rows with an value in the Operation column of "writeBlob" never show a value in the Time(s) column. Every row with "writeBlob" operation is immediately followed by a row with a preparedStatementQuery Operation. Both of these two rows will have an identical value in SQL column, usually an "insert into" statement.
The first Trace row is being produced when the object's data values have been compressed into the blob and gets written to the trace to record the size of the blob once it is known. This is shown in the Note column such as "Wrote blob to database with compressed size 1595".
The second row, the "preparedStatementQuery" Operation, will record the time to perform the insert, including that of the blob. There is not a separate SQL statement performed which inserts only the blob value. All the rows with this Operation which I have reviewed have a value in the Time(s) column.
0% found this useful