Hello Carsten, sorry to bother you again, but I wasn't able to make any progress with that issue. I'm currently testing with 2 servers and 1 client. When I call OSGGroupMcastConnection::disconnect() on client side, the socket connection to the appropriate render server seems to be closed well. The server application closes without problems. The client and the remaining server do their regular sync-signal-swap routine for the next 7 frames. Everything seems to be fine. After rendering the 7th frame the client waits forever for the next signal message of the server. The problem is well reproducable does not depend on timing.... I tried to debug using TCPView and its seems all relevant sockets are still open and the number of sent/received signal/swap messages for the client and the server are equal. So it seems that the OpenSG connection somehow looses or mishandles that special message. Maybe the threaded OSGGroupMcastConnection::sendQueue() method is involved but I have no more clue how to track that down. I would be more than pleased if you or someone else may have the time to take a look at the OSGGroupMcastConnection code to provide some ideas what the current problem may be.
Thanks & Best regards, Michael -------- Original-Nachricht -------- > Datum: Mon, 12 Sep 2011 17:10:21 +0200 > Von: "Michael Raab" <michael-r...@gmx.de> > An: opensg-users@lists.sourceforge.net > Betreff: Re: [Opensg-users] OpenSG1.8 - Disconnecting > ClusterWindow and ClusterServer > Hello Carsten, > > the behavior seems to be somehow different. After disconnecting one > renderer the commuinication with the remaining renderes seems to work for 6 > additional frames. After the 7th sync, the client stucks in the swap wait > call. > > Best regards, > Michael > > -------- Original-Nachricht -------- > > Datum: Fri, 09 Sep 2011 17:13:57 +0200 > > Von: Michael Raab <michael-r...@gmx.de> > > An: opensg-users@lists.sourceforge.net > > Betreff: Re: > [Opensg-users] OpenSG1.8 - Disconnecting ClusterWindow > and ClusterServer > > > Am 09.09.2011 16:12, schrieb Carsten Neumann: > > > Hello Michael, > > > > > > On 09/09/2011 04:31 AM, Michael Raab wrote: > > >> the current approach in general seems to work well with StreamSock > > connection between client and servers. > > >> The difficulties seem to appear when using Multicast. I was able to > fix > > the problem of the server shutdown when trying to close the (Mcast) > > connection. The patch is attached, please have a look. Thanks. > > > thanks for the patch. So the recvQueue() thread blocked in > > recvNextDgram()? > > > > Yes! > > > > > > > >> So for now the server side seems to connect, run and close stable, > but > > I still have a deadlock on client side after disconnecting a single > server. > > >> > > >> This is what I'm doing in the client: > > > [SNIP - code] > > > > > > that looks reasonable to me. > > > > OK. > > > > > > > >> I'm disconnecting all unnecessary render channels after syncing all > > changes to the servers. Then the frame becomes rendered. After that I > try to > > swap in sync with the servers but the connection waits forever for the > > server signals. I have looked at the code for a long time but I have no > clue why > > it should. May be it waits for the disconnected server... > > >> This is the stack were all gets stuck: > > >> > > >> ntdll.dll!76f4f8c1() > > >> [Unten angegebene Rahmen sind möglicherweise nicht korrekt > > und/oder fehlen, keine Symbole geladen für ntdll.dll] > > >> ntdll.dll!76f4f8c1() > > >> mswsock.dll!74506f0f() > > >> mswsock.dll!74506d30() > > >> ntdll.dll!76f63ca3() > > >> OSGSystem.dll!osg::DrawActionBase::stop(osg::Action::ResultE > > res=Continue) Zeile 259 C++ > > >> msvcp80.dll!std::basic_filebuf<char,std::char_traits<char> > > >::overflow(int _Meta=64) Zeile 304 + 0x5 Bytes C++ > > >> ws2_32.dll!74c76a28() > > >> OSGBase.dll!osg::SocketSelection::select(double > > duration=-1.0000000000000000) Zeile 236 C++ > > >> OSGBase.dll!osg::SocketSelection::select(double > > duration=-1.0000000000000000, osg::SocketSelection& result={...}) > Zeile 265 + 0x2d > > Bytes C++ > > >> OSGBase.dll!osg::GroupSockConnection::wait(double > > timeout=-1.0000000000000000) Zeile 336 + 0x15 Bytes C++ > > >>> OSGBase.dll!osg::GroupMCastConnection::wait(double > > timeout=-1.0000000000000000) Zeile 205 C++ > > >> OSGExt.dll!osg::VDTMultiDisplayWindow::clientSwap() Zeile > 546 C++ > > >> > OSGExt.dll!osg::VDTMultiDisplayWindow::render(osg::RenderActionBase > > * action=0x0c6b7958) Zeile 303 C++ > > >> > > >> I don't know how the DrawAction stuff comes into the stack, maybe its > a > > visualization bug in VS... > > > yeah, that looks bogus ;) > > > Hmm, the interesting information would be, which sockets are in the > > > SocketSelection and if a disconnected server is still in there what > and > > > why it was placed there? > > > > As far as I have seen today the correct sockets were closed and removed > > from the socket list. > > > > > > > > Cheers, > > > Carsten > > > > > > > > > ------------------------------------------------------------------------------ > > > Why Cloud-Based Security and Archiving Make Sense > > > Osterman Research conducted this study that outlines how and why cloud > > > computing security and archiving is rapidly being adopted across the > IT > > > space for its ease of implementation, lower cost, and increased > > > reliability. Learn more. > > http://www.accelacomm.com/jaw/sfnl/114/51425301/ > > > _______________________________________________ > > > Opensg-users mailing list > > > Opensg-users@lists.sourceforge.net > > > https://lists.sourceforge.net/lists/listinfo/opensg-users > > > > > > > ------------------------------------------------------------------------------ > > Why Cloud-Based Security and Archiving Make Sense > > Osterman Research conducted this study that outlines how and why cloud > > computing security and archiving is rapidly being adopted across the IT > > space for its ease of implementation, lower cost, and increased > > reliability. Learn more. > http://www.accelacomm.com/jaw/sfnl/114/51425301/ > > _______________________________________________ > > Opensg-users mailing list > > Opensg-users@lists.sourceforge.net > > https://lists.sourceforge.net/lists/listinfo/opensg-users > > -- > NEU: FreePhone - 0ct/min Handyspartarif mit Geld-zurück-Garantie! > Jetzt informieren: http://www.gmx.net/de/go/freephone > > ------------------------------------------------------------------------------ > Doing More with Less: The Next Generation Virtual Desktop > What are the key obstacles that have prevented many mid-market businesses > from deploying virtual desktops? How do next-generation virtual desktops > provide companies an easier-to-deploy, easier-to-manage and more > affordable > virtual desktop model.http://www.accelacomm.com/jaw/sfnl/114/51426474/ > _______________________________________________ > Opensg-users mailing list > Opensg-users@lists.sourceforge.net > https://lists.sourceforge.net/lists/listinfo/opensg-users -- NEU: FreePhone - 0ct/min Handyspartarif mit Geld-zurück-Garantie! Jetzt informieren: http://www.gmx.net/de/go/freephone ------------------------------------------------------------------------------ All the data continuously generated in your IT infrastructure contains a definitive record of customers, application performance, security threats, fraudulent activity and more. Splunk takes this data and makes sense of it. Business sense. IT sense. Common sense. http://p.sf.net/sfu/splunk-d2dcopy1 _______________________________________________ Opensg-users mailing list Opensg-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/opensg-users