[ic] Interchange startup hangs - possible bug?

Mike Heins mikeh@minivend.com
Wed, 25 Apr 2001 22:13:58 -0400

Quoting Trond Arve Nordheim (trond.arve@nordheim.no):
> Hi!
> I posted on the list earlier today that my interchange hangs when
> reading database definitions from catalog.cfg. I resolved the problem,
> and it wasn't at all what I'd expect.
> The problem was that I had the text-file defining the fields in the
> table open in a vi-session on another terminal. This seems to lock the
> file and it will then be read-only to everybody else of course. If I try
> to start up Interchange when one of the table-files (in products/) is
> locked, interchange startup (interchange -r) hangs on "Configuring
> catalog catalogname...". Could this be a bug or something? I did a trace
> on interchange when starting up, and after it had opened the table file,
> nothing happened.

No, it is a feature. 8-)

We don't overwrite exclusive locks on files, we assume they mean
something. The lock mechanism for the database table is the text file,
which is why you must have write permission on it.

One of the reason Interchange has a reputation for robustness
is that it does do locking, all of the time. Anyone ever wonder why 
you don't hear "my log file is corrupted" or "I got bad data into a
record"? Well that is why.

Of course, what we are mostly protecting against is another Interchange
process doing something, since it can have multiple processes doing things.
Still, we don't care who has locked the file. This is a Good Thing. For
instance, if you are uploading a new copy of a database table it is nice
to know that it won't get overwritten by an export from another user.

Red Hat, Inc., 131 Willow Lane, Floor 2, Oxford, OH  45056
phone +1.513.523.7621 fax 7501 <mheins@redhat.com>

Being against torture ought to be sort of a bipartisan thing.
-- Karl Lehenbauer