Details
-
Type: Bug
-
Status: Closed
-
Priority: Major
-
Resolution: Fixed
-
Affects Version/s: EE-3.3.0.GA_P01, 4.0.BETA
-
Fix Version/s: EE-3.3.0.GA_P02, 4.0
-
Component/s: Push Library
-
Labels:None
-
Environment:Portal portlet Liferay 6.2 Push
Description
When testing the chat-portlet example on Liferay, I noticed a problem with Push in that when the page is left to idle, the push connection breaks.
When running the corresponding chat sample as a plain servlet app on Tomcat, I don't see the same behaviour.
When running the corresponding chat sample as a plain servlet app on Tomcat, I don't see the same behaviour.
Activity
- All
- Comments
- History
- Activity
- Remote Attachments
- Subversion
The behaviour I was seeing:
The chat-portlet works fine while I'm actively using it. But when I let it sit without interacting, it starts logging the following:
[icepush.c0e63.async-connection] [Thu, 22 May 2014 18:31:31 GMT] empty response received [icepush.c0e63.async-connection] [Thu, 22 May 2014 18:31:47 GMT] empty response received [icepush.c0e63.async-connection] [Thu, 22 May 2014 18:32:05 GMT] empty response received [icepush.c0e63.async-connection] [Thu, 22 May 2014 18:32:31 GMT] empty response received
If I start using the portlet again it stops but if I let it idle long enough, it logs the following:
[icepush.c0e63.async-connection] [Thu, 22 May 2014 18:35:53 GMT] failed to connect, first retry... [icepush.c0e63] [Thu, 22 May 2014 18:35:53 GMT] connection in trouble [icepush.c0e63.async-connection] [Thu, 22 May 2014 18:36:09 GMT] empty response received [icepush.c0e63.async-connection] [Thu, 22 May 2014 18:36:13 GMT] failed to connect, second retry... [icepush.c0e63] [Thu, 22 May 2014 18:36:13 GMT] connection in trouble [icepush.c0e63.async-connection] [Thu, 22 May 2014 18:36:29 GMT] empty response received [icepush.c0e63] [Thu, 22 May 2014 18:36:33 GMT] connection to server was lost [icepush.3c42d.async-connection] [Thu, 22 May 2014 18:24:01 GMT] blocking connection stopped, too many empty responses received...
Then Push is no longer responsive.
Show
Deryk Sinotte
added a comment - The behaviour I was seeing:
The chat-portlet works fine while I'm actively using it. But when I let it sit without interacting, it starts logging the following:
[icepush.c0e63.async-connection] [Thu, 22 May 2014 18:31:31 GMT] empty response received
[icepush.c0e63.async-connection] [Thu, 22 May 2014 18:31:47 GMT] empty response received
[icepush.c0e63.async-connection] [Thu, 22 May 2014 18:32:05 GMT] empty response received
[icepush.c0e63.async-connection] [Thu, 22 May 2014 18:32:31 GMT] empty response received
If I start using the portlet again it stops but if I let it idle long enough, it logs the following:
[icepush.c0e63.async-connection] [Thu, 22 May 2014 18:35:53 GMT] failed to connect, first retry...
[icepush.c0e63] [Thu, 22 May 2014 18:35:53 GMT] connection in trouble
[icepush.c0e63.async-connection] [Thu, 22 May 2014 18:36:09 GMT] empty response received
[icepush.c0e63.async-connection] [Thu, 22 May 2014 18:36:13 GMT] failed to connect, second retry...
[icepush.c0e63] [Thu, 22 May 2014 18:36:13 GMT] connection in trouble
[icepush.c0e63.async-connection] [Thu, 22 May 2014 18:36:29 GMT] empty response received
[icepush.c0e63] [Thu, 22 May 2014 18:36:33 GMT] connection to server was lost
[icepush.3c42d.async-connection] [Thu, 22 May 2014 18:24:01 GMT] blocking connection stopped, too many empty responses received...
Then Push is no longer responsive.
Seems likely that the change that closed the stream may be leading to this. I've checked in changes to the EE 3 maintenance branch, the P02 tag, and the ICEfaces 4 trunk to remove the call to close the stream as well as to rename the class to something that better reflects what it's doing.
A quick test with Liferay 6.2 shows that the original problem is still fixed.