

通过使用DBSL Deadlock Trace,能够很容易抓到DeadLock的SQL.再和Abaper对其优化.最近用这种方式解决了几个令人头痛的问题,记之.
To analyze deadlock situation, could you please follow the following
Please be sure to first raise the value of the DB parameter DLCHKTIME toat least 300000 ms, so that the deadlock situation will remain longer and hopefully can be caught by the trace. Please then send us the results of the trace. You can lower the value of DLCHKTIME afterwards again to the default (10000). As of V9 this can be done online via ‘db2 update db cfg for <DBSID> using DLCHKTIME <value>. Run db2util as follows:
- db6util -sl 600 -o db6util_log.txt -w db6util_snapshot.txt
Once run, db6util will be running and once the deadlock is detected , pls kill db6util process , also make sure that the dir you run above command where you have enough space atleast 10 MB to 20MB to save output. Turn DBSL Trace- ST04-> Diagnostic -> Trace Status -> enable deadlock detection( enable deadlock trace with 30 sec.)
Once you enable deadlock detection trace files will be generated under /tmp/TraceFiles dir(normally, you can check Diagnostics – DBSL Trace Directory the exact path where the files will be created) ,So before you recreate the deadlock situation pls remove all files from /tmp/TraceFiles dir.
Once you change DLCHKTIME, then run db6util and turn DBSL trace on as above, recreate the deadlock and collect all the files generated under /tmp/TraceFiles dir as well as db26util command output file.
For analysis of deadlock situations we require both the dbsl trace and the db6util gathered at the same time during the lock situation.
The dbsl and the db6util show different aspects of the lock situation and we cannot analyse without having both.
writing essays : college papers : writing essays : College essays : write essay for me