Skip to main content

This content has been archived and is no longer being updated. Links may not function; however, this content may be relevant to outdated versions of the product.

Support Article

DBA Tracer not reporting time for blob read/write operations

SA-3066

Summary



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


Root Cause



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.

 

Resolution



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.

 
Suggest Edit

Published January 31, 2016 - Updated October 8, 2020

Did you find this content helpful? Yes No

Have a question? Get answers now.

Visit the Collaboration Center to ask questions, engage in discussions, share ideas, and help others.

We'd prefer it if you saw us at our best.

Pega Community has detected you are using a browser which may prevent you from experiencing the site as intended. To improve your experience, please update your browser.

Close Deprecation Notice
Contact us