Go Back   ZeroC Forums > Help Center

Reply
 
LinkBack Thread Tools Rate Thread Display Modes
  #1 (permalink)  
Old 06-20-2007
fengxb's Avatar
fengxb fengxb is offline
Registered User
 
Name: feng xuebin
Organization: jiexin tech
Project: scientific calculation
 
Join Date: Aug 2003
Location: R.P.China
Posts: 78
hang up of IceStorm

Hi,

Had anyone encountered hang up of IceStorm? My project uses IceStorm as message transmit center. So it is very important that IceStorm could work for long time and never hang up. But recently the test results were not fine. There are 2 subscribers and 1 publishers in my system. To prevent subscriber from losing subscription, the subscriber will perform unsubscription and subscription in time. Normally in one or two days, the IceStorm will hang up and the publisher will fail to publish the message. It can connect to the TopicMangaer and retreive the ObjectPrx.

My project is developed under Windows with Ice version 3.2. In fact, there are two problem. One is whether the IceStorm can work for long time. Another is how the subscriber know the subscription is active.

Regards,

Feng Xuebin
__________________
Fengxb
Reply With Quote
  #2 (permalink)  
Old 06-20-2007
matthew's Avatar
matthew matthew is online now
ZeroC Staff
 
Name: Matthew Newhook
Organization: ZeroC, Inc.
Project: Internet Communications Engine
 
Join Date: Feb 2003
Location: NL, Canada
Posts: 1,052
Yes, IceStorm is expected to work for a long time. I'm afraid that you haven't given enough information to help solve your problem. What do you mean by hangup? Do you mean your subscriber stops receiving data? If that is the case most likely there was a communications problem between IceStorm and the subscriber. This could either be network related or could be caused by a bug in the subscriber itself causing a timeout exception. To find out more information I recommend enabling more tracing -- see the Ice manual for details.

Regarding your second question since subscribers are not persistent, they will be kicked whenever an error occurs. If this happens the subscriber is not notified (how can it be? its booted because of an error . Since this is the case there is no generic way you can know -- instead, if this is important to you, you can do this in some application specific way. For example, have the subscriber ping the subscriber specific object (see subscribeAndGetPublisher) on a regular basis. Another approach is to send heartbeat messages through IceStorm. If no message arrives within a certain time limit you know there is a problem.

A better solution is to add persistent subscribers. However, without commercial interest this is not a high priority. If you are interested in sponsoring such a development please contact us at sales@zeroc.com.
Reply With Quote
  #3 (permalink)  
Old 06-20-2007
fengxb's Avatar
fengxb fengxb is offline
Registered User
 
Name: feng xuebin
Organization: jiexin tech
Project: scientific calculation
 
Join Date: Aug 2003
Location: R.P.China
Posts: 78
I'm so sorry that I didn't describe the problem very clearly. The strange problem is publisher can't publish the message when the IceStorm hangs up. I debug the IceStorm and find out it is blocked at ThreadPool.cpp:
Quote:
bool IceInternal::ThreadPool::run()
{
...
ret = ::select(static_cast<int>(_maxFd + 1), &fdSet, 0, 0, 0);
...
The publisher, subscriber and IceStorm all reside on the same host. It is very strange.
__________________
Fengxb
Reply With Quote
  #4 (permalink)  
Old 06-20-2007
benoit's Avatar
benoit benoit is online now
ZeroC Staff
 
Name: Benoit Foucher
Organization: ZeroC, Inc.
Project: Ice
 
Join Date: Feb 2003
Location: Rennes, France
Posts: 1,534
Hi,

A thread from the thread pool blocked in the select() call is expected. This simply means that the thread pool waits for additional data to be received over established TCP/IP connections.

What kind of invocations do you use to publish the messages to the topic, twoway or oneway? Can you get the strack trace of each thread from the publisher process and IceStorm process when you get the hang and post them here?

Cheers,
Benoit.
Reply With Quote
  #5 (permalink)  
Old 06-20-2007
fengxb's Avatar
fengxb fengxb is offline
Registered User
 
Name: feng xuebin
Organization: jiexin tech
Project: scientific calculation
 
Join Date: Aug 2003
Location: R.P.China
Posts: 78
When the IceStorm process hang up, the publisher process catch connect timeout exception. At the same time, the IceStorm has no any trace info.
__________________
Fengxb
Reply With Quote
  #6 (permalink)  
Old 06-21-2007
benoit's Avatar
benoit benoit is online now
ZeroC Staff
 
Name: Benoit Foucher
Organization: ZeroC, Inc.
Project: Ice
 
Join Date: Feb 2003
Location: Rennes, France
Posts: 1,534
Hi,

The connect timeout exception indicates that the publisher wasn't able to establish a network connection with the IceStorm service in a timely manner. This could be caused by a network issue (unlikely if you run everything on the same machine) or because IceStorm is for some reasons unable to answer the connection request.

The easiest would be to provide us a small self-contained example that we can use to duplicate your problem.

Cheers,
Benoit.
Reply With Quote
  #7 (permalink)  
Old 06-21-2007
fengxb's Avatar
fengxb fengxb is offline
Registered User
 
Name: feng xuebin
Organization: jiexin tech
Project: scientific calculation
 
Join Date: Aug 2003
Location: R.P.China
Posts: 78
Hi,

The attatchment is the examples include a publisher and a subscriber. It might take some days to re-occure the problem.
Attached Files
File Type: zip prog.zip (96.4 KB, 14 views)
__________________
Fengxb

Last edited by fengxb : 06-21-2007 at 09:56 AM.
Reply With Quote
  #8 (permalink)  
Old 06-21-2007
matthew's Avatar
matthew matthew is online now
ZeroC Staff
 
Name: Matthew Newhook
Organization: ZeroC, Inc.
Project: Internet Communications Engine
 
Join Date: Feb 2003
Location: NL, Canada
Posts: 1,052
Sorry, there is no attachment... could you try again please?
Reply With Quote
  #9 (permalink)  
Old 06-22-2007
fengxb's Avatar
fengxb fengxb is offline
Registered User
 
Name: feng xuebin
Organization: jiexin tech
Project: scientific calculation
 
Join Date: Aug 2003
Location: R.P.China
Posts: 78
Hi,

The problem re-occured this morning. I found out the publisher thread blocked in the following statement:
Quote:
Subscriber::queue(bool, const EventDataSeq& events)
I suspected it is caused by subscription and unsubscription at the same time the publisher want to publish the message.
__________________
Fengxb
Reply With Quote
  #10 (permalink)  
Old 06-22-2007
fengxb's Avatar
fengxb fengxb is offline
Registered User
 
Name: feng xuebin
Organization: jiexin tech
Project: scientific calculation
 
Join Date: Aug 2003
Location: R.P.China
Posts: 78
Hi,

The problem re-occured this morning. I found out the publisher thread blocked in the following statement in TopicI.cpp:
Quote:
Subscriber::QueueState state = (*p)->queue(forwarded, events);
I suspected it is caused by subscription and unsubscription at the same time the publisher want to publish the message.
__________________
Fengxb
Reply With Quote
  #11 (permalink)  
Old 06-22-2007
fengxb's Avatar
fengxb fengxb is offline
Registered User
 
Name: feng xuebin
Organization: jiexin tech
Project: scientific calculation
 
Join Date: Aug 2003
Location: R.P.China
Posts: 78
Hi,

The attachment is trace info when the IceStorm was blocked.
Attached Files
File Type: txt publish.txt (1.7 KB, 70 views)
__________________
Fengxb
Reply With Quote
  #12 (permalink)  
Old 06-22-2007
marc's Avatar
marc marc is offline
ZeroC Staff
 
Name: Marc Laukien
Organization: ZeroC, Inc.
Project: The Internet Communications Engine
 
Join Date: Feb 2003
Location: Florida
Posts: 1,781
I sent you an email and a private message regarding ongoing support. If you didn't get these, can you please get back to us at info@zeroc.com?
Reply With Quote
Reply



Currently Active Users Viewing This Thread: 1 (0 members and 1 guests)
 
Thread Tools
Display Modes Rate This Thread
Rate This Thread:

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

vB code is On
Smilies are On
[IMG] code is Off
HTML code is Off
Trackbacks are On
Pingbacks are On
Refbacks are On

Similar Threads
Thread Thread Starter Forum Replies Last Post
Hang in activate() on Linux walls1500 Help Center 8 03-01-2007 12:59 PM
waitForDeactivate hang amidst batch request gsalazar Help Center 7 01-20-2005 01:09 PM
Unknown property "IceBox.DBEnvName.IceStorm" for IceStorm wwwtiger Help Center 1 11-05-2004 03:23 PM


All times are GMT -4. The time now is 11:34 AM.


Powered by vBulletin® Version 3.6.4
Copyright ©2000 - 2008, Jelsoft Enterprises Ltd.
Search Engine Optimization by vBSEO 3.0.0
(c) 2008 ZeroC, Inc.