[comp.sys.isis] Bug in cl_sview.c:site_getview in ISIS V1.2 beta release

ken@gvax.cs.cornell.edu (Ken Birman) (06/29/89)

The most recent beta release has a few problems, most of which
are not worth posting (we'll fix them and do another release
in a week or two).  But, one is causing quite a few problems.
The symptom is that "site_getview" hangs when called in the
most recent site to have started up at any given point in
an ISIS run.  It works fine on machines that have been up
for a while, and unhangs itself the next time you restart
some other machine.

Here is a simple fix.  Edit clib/cl_sview.c and change the first
few lines as follows:



sview *
site_getview()
  {
        register sview *sv = act_blocked? &isis_svmutex: &isis_sv;
        if(sv_known == 0)
        {
            if(SITE_NO(sv->sv_slist[my_site_no]) == RECOVERY_INCARN)
                t_wait_l(&wants_view, "site-getview: waiting for first view");
            sv_known = 1;
        }
        return(sv);
  }


Hope that no other really annoying problems turn up.  As for the
minor ones... well, if you report them, we'll be more than happy to
keep fixing them.

By the way, let me reiterate that this is a BETA release.  By definition,
that means that we expect bugs to crop up and are hard at work fixing
them.  ISIS V1.0 and V1.1 were extremely solid by the time we declared
them to be in a "general" release, but both versions went through a
similar shakeout period.  So, if all this worries you, please bear
with us -- it's quite normal.