While using this library multi threaded application threads hangs and in dbx found that this is using async function.
(dbx) threads
> t@1 a l@1 ?() sleep on 0xfe3170c0 in __lwp_park()
t@2 b l@2 doit() running in _syscall6()
t@3 a l@3 comn__sig_catcher_thread() running in _read()
t@4 a l@4 rman__thread() sleep on 0x2265a8 in __lwp_park()
t@5 a l@5 rman__thread() sleep on 0x2265a8 in __lwp_park()
t@6 a l@6 rman__thread() sleep on 0x2265a8 in __lwp_park()
t@7 a l@7 sybnet__async_poll() running in __pollsys()
t@8 a l@8 startWorkerThread() sleep on 0xfe3170c0 in __lwp_park()
t@9 a l@9 startWorkerThread() sleep on 0xfe3170c0 in __lwp_park()
t@10 a l@10 startWorkerThread() sleep on 0xfe3170c0 in __lwp_park()
t@11 a l@11 startWorkerThread() sleep on 0xfe3170c0 in __lwp_park()
t@12 a l@12 startWorkerThread() running in _write()
t@13 a l@13 startWorkerThread() sleep on 0xfe3170c0 in __lwp_park()
t@14 a l@14 startWorkerThread() sleep on 0xfe3170c0 in __lwp_park()
t@15 a l@15 startWorkerThread() sleep on 0xfe3170c0 in __lwp_park()
t@16 a l@16 startWorkerThread() sleep on 0xfe3170c0 in __lwp_park()
t@17 a l@17 startWorkerThread() sleep on 0xfe3170c0 in __lwp_park()
(dbx) thread t@12
dbx: warning: can't find file "/export/home/pujarsa/offlineCdr/in/bin/offlineCharging/OFICharging/obj/OFICDRProcessor.o"
t@12 (l@12) stopped in _write at 0xfe29eef0
0xfe29eef0: _write+0x0008: ta 8
(dbx) where
current thread: t@12
=>[1] _write(0x2, 0x1c45d0, 0x11, 0xfe3123f0, 0x20, 0x50), at 0xfe29eef0
[2] _fwrite_unlocked(0x1c45d0, 0x1, 0x0, 0x1f1ee0, 0x11, 0x1c45d0), at 0xfe27fb18
[3] _dowrite(0x1c45d0, 0x11, 0x1f1ee0, 0xfd3ca770, 0x26, 0x2b), at 0xfe26d780
[4] _ndoprnt(0x1c45e1, 0xfd3ca834, 0xfd3c9eb1, 0x11, 0x20, 0xfd3ca2ec), at 0xfe26dca8
[5] _fprintf(0x1f1ee0, 0x1c45d0, 0xfe3170c0, 0xa1010, 0xfe294460, 0xfe3123f0), at 0xfe2714c8
[6] servermsg_callback(0x21cc, 0xfffdca64, 0xfd3cae74, 0x1e7ba0, 0x23400, 0x2000), at 0x110038
[7] ct__tds_call_cb(0x4473a8, 0xfd3cae74, 0x13da686, 0x2, 0xff006364, 0x6), at 0xfefc9d6c
[8] ct__tds_rd_xerror(0x4473a8, 0x4010400, 0x5, 0x5, 0x3a, 0x460da8), at 0xfefcabcc
[9] ct__tds_readall(0xe5, 0x4473a8, 0x14cdd60, 0x4, 0x3, 0x41), at 0xfefde67c
[10] ct__tds_resproc(0x4476f8, 0x4473a8, 0x14cdd60, 0x447770, 0x1c, 0xffffffff), at 0xfefda42c
[11] com__async_runstack(0x4476f8, 0x1c, 0x3, 0x3, 0x0, 0x230da0), at 0xfeea1cac
[12] com__async_poll_state(0x231360, 0x4476f8, 0x5, 0x2, 0xfdd55200, 0xfefdee70), at 0xfeea1b74
[13] com__async_do_poll(0x231360, 0x4476f8, 0x5, 0x0, 0xfd3cb6ec, 0x0), at 0xfeea1968
[14] com__async_poll(0x231360, 0x4476f8, 0xffffffff, 0x5, 0x0, 0x45dbc8), at 0xfeea1298
[15] ct__api_async(0x4473a8, 0x14cdd60, 0xfefbed54, 0x26, 0x29929e0, 0x21d368), at 0xfef979ac
[16] ct_results(0x14cdd60, 0xfd3cb8c4, 0x2, 0x0, 0x0, 0x0), at 0xfefbefd4
[17] Query::GetResult_(0xfd3cb9e8, 0xfd3cb9e4, 0x0, 0x1e7ba0, 0xfdd55200, 0xfd3cb9ec), at 0x11062c
[18] Query::Execute(0xfd3cb9e8, 0xfd3cb9e4, 0x12, 0x1e7ba0, 0xc, 0x1c29ce), at 0x11047c
[19] OFIDBCommand::Execute(0x3ff6d8, 0xfd3cbaf2, 0x21de0, 0x0, 0x133fdb8, 0x133fdb8), at 0xfde68
[20] OFIDBOperation::updateCDRInfo(0x3ff6e8, 0xfd3cbe68, 0x3ff6d8, 0x6c124, 0xc, 0x1c130f), at 0xfa778
[21] OFICDRProcessor::processCDR(0xfd3cbd28, 0xfd3cbd24, 0xfd3cbd20, 0x190e28, 0xc, 0x1c1268), at 0xf1b00
[22] OFICDRProcessor::run(0x45a168, 0x5, 0x32, 0xda1d4, 0xc, 0x1be551), at 0xf10fc
[23] startWorkerThread(0x45a168, 0xfd3cc000, 0x0, 0x0, 0xcab20, 0x1), at 0xcabb0
(dbx) thread t@7
t@7 (l@7) stopped in __pollsys at 0xfe29e7ac
0xfe29e7ac: __pollsys+0x0004: ta 8
(dbx) where
current thread: t@7
=>[1] __pollsys(0x235588, 0x1, 0x0, 0x0, 0x1, 0x0), at 0xfe29e7ac
[2] _pollsys(0x235588, 0x1, 0x0, 0x0, 0x0, 0x0), at 0xfe28e490
[3] _poll(0x235588, 0x1, 0xffffffff, 0x100, 0x0, 0x235580), at 0xfe234ccc
[4] sybnet__do_poll(0xffffffff, 0x0, 0x0, 0x0, 0x744, 0x1), at 0xfef2d120
[5] sybnet__async_poll(0x0, 0xfd94c000, 0x0, 0x0, 0xfef2d5ac, 0x1), at 0xfef2d63c
(dbx) thread t@3
t@3 (l@3) stopped in _read at 0xfe29e8c0
0xfe29e8c0: _read+0x0008: ta 8
(dbx) where
current thread: t@3
=>[1] _read(0x2, 0xfdd4bf9f, 0x1, 0x0, 0xfdd50a00, 0xfdd50a00), at 0xfe29e8c0
[2] read(0x2, 0xfdd4bf9f, 0x1, 0x0, 0x400, 0x698), at 0xfe28cf34
[3] comn__sig_catcher_thread(0x0, 0xfdd4c000, 0x0, 0x0, 0xfeead1e0, 0x1), at 0xfeead240
(dbx)
|