IBM Support

PI15453: AIO TCP channel could hang on Microsoft Windows operating systems

Download


Abstract


AIO TCP channel could hang on Microsoft Windows operating systems

Download Description

PI15453 resolves the following problem:

ERROR DESCRIPTION:
Due to a problem introduced by APAR PM95795, threads may hang and an application server may stop responding to requests on version V7.0.0.31 or V8.0.0.8. This can happen when
Asynchronous I/O (AIO) is enabled, which it is by default, and it can only occur on Windows operating systems.
.
Javacores and the SystemOut.log (WSVR0605W messages) may show many threads hung with a stack trace similar to the following:
.
Java callstack:
at com/ibm/io/async/AsyncLibrary.terminateIOCB(AsyncLibrary.java:788(Compiled Code))
at com/ibm/io/async/AsyncSocketChannel.close(AsyncSocketChannel.java:314(Compiled Code))
at com/ibm/ws/tcp/channel/impl/AioSocketIOChannel.close(AioSocketIOChannel.java:435


(Compiled Code))
at com/ibm/ws/tcp/channel/impl/TCPConnLink.destroy(TCPConnLink.java:530(Compiled Code))
at com/ibm/wsspi/channel/base/OutboundConnectorLink.close(OutboundConnectorLink.java:50
(Compiled Code))
at com/ibm/ws/tcp/channel/impl/TCPConnLink.close(TCPConnLink.java:506(Compiled Code))
at com/ibm/ws/http/channel/inbound/impl/HttpInboundLink.close(HttpInboundLink.java:785
(Compiled Code))
at com/ibm/ws/http/channel/inbound/impl/HttpICLReadCallback.error(HttpICLReadCallback.
java:141)
at com/ibm/ws/tcp/channel/impl/AioReadCompletionListener.futureCompleted(AioReadCompletion
Listener.java:220(Compiled Code))
at com/ibm/io/async/AbstractAsyncFuture.invokeCallback(AbstractAsyncFuture.java:217
(Compiled Code))
at com/ibm/io/async/AsyncChannelFuture.fireCompletionActions(AsyncChannelFuture.java:161
(Compiled Code))
at com/ibm/io/async/AbstractAsyncFuture.completed(AbstractAsyncFuture.java:170)
at com/ibm/io/async/ResultHandler.complete(ResultHandler.java:213(Compiled Code))
at com/ibm/io/async/ResultHandler.runEventProcessingLoop(ResultHandler.java:775(Compiled Code))
at com/ibm/io/async/ResultHandler$2.run(ResultHandler.java:905(Compiled Code))
at com/ibm/ws/util/ThreadPool$Worker.run(ThreadPool.java:1660(Compiled Code))
.
These threads are blocked by another thread with the following stack trace:
.
Java callstack:
at com/ibm/io/async/AsyncLibrary.aio_cancel2(Native Method)
at com/ibm/io/async/AsyncLibrary.cancel2(AsyncLibrary.java:462)
at com/ibm/io/async/AbstractAsyncChannel.cancel(AbstractAsyncChannel.java:287)
at com/ibm/io/async/AsyncChannelFuture.cancel(AsyncChannelFuture.java:114)
at com/ibm/io/async/AsyncSocketChannelHelper$tCallback.timerTriggered
(AsyncSocketChannelHelper.java:116)
at com/ibm/io/async/Timer.checkForTimeouts(Timer.java:426(Compiled Code))
at com/ibm/io/async/Timer.run(Timer.java:241(Compiled Code))

LOCAL FIX:
AIO can be disabled to prevent the problem.

PROBLEM SUMMARY

USERS AFFECTED:
IBM WebSphere Application Server Full Profile Versions 7.0.0.31 and 8.0.0.8 users of AIO and on Microsoft Windows operating systems.

PROBLEM DESCRIPTION:
A thread could hang when processing a timeout.

RECOMMENDATION:
None

A thread could hang when processing a possible timeout of a TCP read/write operation due to thread synchronization issues. This could occur, when trying to confirm a read/write had been successfully cancelled and the operation could be truly declared a timeout. This problem was introduced with PM95795.

PROBLEM CONCLUSION:
To avoid the hang, polling code was added to the TCP AIO code to monitor the state of the cancel operation .

The fix for this APAR is currently targeted for inclusion in fix packs 7.0.0.33, 8.0.0.9 and 8.5.5.2. Please refer to the Recommended Updates page for delivery information:
http://www.ibm.com/support/docview.wss?rs=180&uid=swg27004980

On
[{"DNLabel":"Fix for 8.0.0.8 WinX32","DNDate":"19 May 2014","DNLang":"English","DNSize":"294059","DNPlat":{"label":"Windows","code":"PF033"},"DNURL":"http://www-933.ibm.com/support/fixcentral/swg/selectFixes?parent=ibm~WebSphere&product=ibm/WebSphere/WebSphere+Application+Server&release=All&platform=All&function=fixId&fixids=8.0.0.8-WS-WAS-WinX32-IFPI15453","DNURL_FTP":" ","DDURL":null},{"DNLabel":"Fix for 8.0.0.8 WinX64","DNDate":"19 May 2014","DNLang":"English","DNSize":"300677","DNPlat":{"label":"Windows","code":"PF033"},"DNURL":"http://www-933.ibm.com/support/fixcentral/swg/selectFixes?parent=ibm~WebSphere&product=ibm/WebSphere/WebSphere+Application+Server&release=All&platform=All&function=fixId&fixids=8.0.0.8-WS-WAS-WinX64-IFPI15453","DNURL_FTP":" ","DDURL":null},{"DNLabel":"Fix for 7.0.0.31 WinX32","DNDate":"19 May 2014","DNLang":"English","DNSize":"91846","DNPlat":{"label":"Windows","code":"PF033"},"DNURL":"http://www-933.ibm.com/support/fixcentral/swg/selectFixes?parent=ibm~WebSphere&product=ibm/WebSphere/WebSphere+Application+Server&release=All&platform=All&function=fixId&fixids=7.0.0.31-WS-WAS-WinX32-IFPI15453","DNURL_FTP":" ","DDURL":null},{"DNLabel":"Fix for 7.0.0.31 WinX64","DNDate":"19 May 2014","DNLang":"English","DNSize":"98432","DNPlat":{"label":"Windows","code":"PF033"},"DNURL":"http://www-933.ibm.com/support/fixcentral/swg/selectFixes?parent=ibm~WebSphere&product=ibm/WebSphere/WebSphere+Application+Server&release=All&platform=All&function=fixId&fixids=7.0.0.31-WS-WAS-WinX64-IFPI15453","DNURL_FTP":" ","DDURL":null}]
[{"Product":{"code":"SSEQTP","label":"WebSphere Application Server"},"Business Unit":{"code":"BU053","label":"Cloud & Data Platform"},"Component":"General","Platform":[{"code":"PF033","label":"Windows"}],"Version":"8.0.0.8;7.0.0.31","Edition":"Base;Network Deployment","Line of Business":{"code":"LOB36","label":"IBM Automation"}}]

Document Information

Modified date:
15 June 2018

UID

swg24037611