Busy http thread grew up until suspending its function. When the apache could not respond any request, it removed from L4 (it have L7 function) because of no response.
OS : CentOS
gcc version : gcc version 3.4.6 20060404 (Red Hat 3.4.6-9)
glibc 버전 glibc-2.3.4-2.39
- Apache Server Status
- Server uptime: 4 days 20 hours 41 minutes 2 seconds
- Total accesses: 43491259 - Total Traffic: 10.8 GB
- CPU Usage: u33.75 s6.42 cu0 cs0 - .00956% CPU load
- 104 requests/sec - 27.0 kB/second - 266 B/request
- 109 requests currently being processed, 4 idle workers
WWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWW_WWW.WWWWWWWWWWWW CWWWWWWWWWWWWWWWWWWWWW_WWWWCWWWWWWWWWRWWWWWW__CCR.C............. ................................................................ ................................................................
Scoreboard Key:
"_" Waiting for Connection,
"S" Starting up, "R" Reading
Request,
"W" Sending Reply, "K"
Keepalive (read), "D" DNS Lookup,
"C"
Closing connection, "L" Logging, "G"
Gracefully finishing,
"I" Idle cleanup of worker,
"." Open slot with no current process
..
i.
java.lang.Thread.State: BLOCKED
(on object monitor)
at
org.apache.commons.pool.impl.GenericObjectPool.borrowObject(GenericObjectPool.java:916)
- waiting to lock
<0x8fedb478> (a org.apache.commons.pool.impl.GenericObjectPool)
1. "TP-Processor2" daemon prio=10 tid=0x0821f400 nid=0x4286 waiting for monitor entry [0x88ed3000..0x88ed50a0]
2. "TP-Processor2" daemon prio=10 tid=0x0821f400 nid=0x4286 waiting for monitor entry [0x88ed3000..0x88ed50a0]
Found one Java-level deadlock:
=============================
"TP-Processor200":
waiting to lock monitor 0x080dfd24 (object 0x8fedb478, a org.apache.commons.pool.impl.GenericObjectPool),
which is held by "Timer-0"
"Timer-0":
waiting to lock monitor 0x080dfcc0 (object 0x8fee6f70, a org.apache.commons.dbcp.PoolableConnection),
which is held by "TP-Processor28"
"TP-Processor28":
waiting to lock monitor 0x080dfd24 (object 0x8fedb478, a org.apache.commons.pool.impl.GenericObjectPool),
which is held by "Timer-0"
"TP-Processor200": (Select query) return queryForList("xxx.selectXXXCount",param);
"TP-Processor28": (Select query)
queryForObject("selectmusic",params);
Commons DbcpCreated: 26/Jun/08 10:18 AM
Updated: 27/Jun/08 03:41 AM
|
Patch attached, dead lock reported. the abandonedtrace does synchronized(this) when it really only needs to do synchronized(this.trace)
Dead lock reported when using the evictor
=============================
"Timer-3":
waiting to lock monitor
0x0000000053b40548 (object 0x00002aaabf3210f0,
a
org.apache.tomcat.dbcp.dbcp.PoolableConnection),
which is held by
"TP-Processor27"
"TP-Processor27":
waiting to lock monitor
0x0000000053b404d0 (object 0x00002aaab9fa8b08,
a
org.apache.tomcat.dbcp.pool.impl.GenericObjectPool),
which is held by
"Timer-3"
Java stack information for the threads listed above:
patch source
Because Commons-dbcp 1.3 is not year released in formal. (now : 4. 2009) and I do not know what willing happen if the snapshop patch version, I used patched commons-dbcp 1.2.2 library.
After patching that version, there is no trouble or problem like that.
'general java' 카테고리의 다른 글
| DBCP] Without given validationQuery, no test. (0) | 2009.04.28 |
|---|---|
| using merge statement in ibatis. (to 2.3.4) (0) | 2009.04.25 |
| No SqlHandler log4j:ERROR problem (0) | 2009.04.21 |
| JavaFx Programming Reference (0) | 2009.04.17 |
| Notepad with class java file (Jad Usage Tip) (0) | 2009.04.17 |


