[Paraview] [EXTERNAL] Client/Server connection problems

Utkarsh Ayachit utkarsh.ayachit at kitware.com
Sat Jan 11 09:43:12 EST 2014


Nathan,

First, let me clarify what is "checked", since what Alan said isn't
entirely correct.

What comprises the handshake?
========================

The handshake is a string of the following form:
     paraview.<MajorNumber>.<MinorNumber>
If a connect-id is specified then the handshake becomes:
     paraview.<MajorNumber>.<MinorNumber>.connect_id.<ConnectId>

The client and the root-server node exchange these strings. If either side
concludes that they don't match, the connection is terminated.
To debug, you can put a "cout" in
vtkTCPNetworkAccessManager::ConnectToRemove(), or
vtkTCPNetworkAccessManager::ParaViewHandshake() call on both(or either)
sides to print the relevant string.

How is the MajorNumber/MinorNumber determined?
=====================================

First, it's hardcoded in the top level CMakeLists.txt. Any time a version
number changes, this is manually updated. So on "git/master", this will
change when we changed from 4.0.1 to 4.1.0-RC1. Thus, even before the
official release the version number has changed. This could explain why two
builds from "git master" may not always work with each other.

Secondly, if the source repository is a git repository (nothing to do with
whether it has access to the Internet), then the version is determined by
using the git command "git describe". By making sure we "tag" the
repository when the CMakeLists.txt change happens, we ensure that "git
describe" results in version numbers of the form
"<MajorNumber>.<MinorNumber>-<FOO>-<BAR>". We can ignore FOO/BAR for now.
These are extra annotations that us determine exactly what  source version
you're using, esp when doing git/master builds.

The thing to note is that the handshake only uses the <MajorNumber> and
<MinorNumber>. So even if your git/master checkouts are from slightly
different points in history, they can work together (unless of course, the
two checkout happened to be across a version number change).

Hope that clarifies things. Putting a cout in vtkTCPNetworkAccessManager
and comparing the handshake strings would be a good start to debug this.

Utkarsh



On Fri, Jan 10, 2014 at 7:00 PM, Scott, W Alan <wascott at sandia.gov> wrote:

> Then no, that isn't the issue.
>
> One more thing to try - and I don't completely know how to do it.  (i.e.,
> ask Kitware).  I believe that they now look at not just ParaView version
> numbers, but also git checkin "tags" or whatever it is called.  If the two
> trees are basically the same, and ANYONE touched the tree between pulls,
> that is your problem.  This has been an issue for me when one of the two
> (client or server) is behind a firewall, but the other can connect back to
> Kitware and find that git tag.  Make sure the source trees are exactly the
> same.
>
> Alan
>
> -----Original Message-----
> From: Fabian, Nathan
> Sent: Friday, January 10, 2014 4:57 PM
> To: Scott, W Alan; paraview at paraview.org
> Subject: Re: [EXTERNAL] [Paraview] Client/Server connection problems
>
> That sounded promising, but it doesn't appear to have worked.  I deleted
> everything under .config/ParaView and .config/Kitware on both machines,
> still getting the same error.
>
> On 1/10/14 4:45 PM, "Scott, W Alan" <wascott at sandia.gov> wrote:
>
> >Delete your configuration files.  Corrupt configuration files sometimes
> >cause this.  Surprisingly, on one client of mine, the first connect
> >works, the configuration file gets written, and you never get another
> >successful connect using that configuration file.
> >
> >I haven't chased this down yes, hoping it goes away with the new version.
> > But...
> >
> >If this is the problem, please let me know.  You may have an easier
> >setup that we can use to get to the root cause of the problem.
> >
> >Alan
> >
> >-----Original Message-----
> >From: paraview-bounces at paraview.org
> >[mailto:paraview-bounces at paraview.org] On Behalf Of Fabian, Nathan
> >Sent: Friday, January 10, 2014 3:59 PM
> >To: paraview at paraview.org
> >Subject: [EXTERNAL] [Paraview] Client/Server connection problems
> >
> >Hi,
> >
> >I've been trying to figure this one out for a few days and I'm finally
> >giving in for help.
> >
> >I've got a code base on my server that should be a duplicate of the one
> >on my desktop, built differently.  In one case I did pulls from master
> >at the same time.  I've more recently just tried pulling directly from
> >my desktop and building clean on both.  I've also tried disabling MPI
> >on the desktop side and connecting without MPI on the server side.
> >
> >Still I'm getting the following message when trying to reverse connect:
> >
> >
> >ERROR: In
> >/projects/coprocessing/ParaView/ParaViewCore/ClientServerCore/Core/vtkT
> >CPN
> >e
> >tworkAccessManager.cxx, line 330
> >vtkTCPNetworkAccessManager (0x135a3150): Failed to connect to
> >xyz.sandia.gov:11111. Client-Server Handshake failed. Please verify
> >that the client and server versions are compatible with each other, and
> >that 'connect-id', if any, matches.
> >
> >
> >And then each attempt to connect gives this on the desktop:
> >
> >
> >
> >Accepting connection(s): xyz.sandia.gov:11111
> >
> >
> >Evidence that some sort of communication has worked.  This has worked
> >with master builds in the past.  I'm not sure what I changed, but
> >there's plenty I have that may have influenced this.
> >
> >Any suggestions on where to start looking?
> >
> >Thanks,
> >Nathan.
> >
> >_______________________________________________
> >Powered by www.kitware.com
> >
> >Visit other Kitware open-source projects at
> >http://www.kitware.com/opensource/opensource.html
> >
> >Please keep messages on-topic and check the ParaView Wiki at:
> >http://paraview.org/Wiki/ParaView
> >
> >Follow this link to subscribe/unsubscribe:
> >http://www.paraview.org/mailman/listinfo/paraview
>
> _______________________________________________
> Powered by www.kitware.com
>
> Visit other Kitware open-source projects at
> http://www.kitware.com/opensource/opensource.html
>
> Please keep messages on-topic and check the ParaView Wiki at:
> http://paraview.org/Wiki/ParaView
>
> Follow this link to subscribe/unsubscribe:
> http://www.paraview.org/mailman/listinfo/paraview
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://www.paraview.org/pipermail/paraview/attachments/20140111/6968ae0e/attachment-0001.htm>


More information about the ParaView mailing list