[Cvsnt] CVSNT error handling and Eclipse/WSAD branch browsing
Tony Hoyle
tmh at nothing-on.tv
Tue May 21 21:50:34 BST 2002
On Tue, 21 May 2002 20:24:17 +0100, Schmidt, Martin wrote:
> CVSNT will also send this reply, but ONLY on the very first execution of
> cvs.exe, successive tries will fail to return any error. Replacing the
> cvs.exe with a copy or a new build seems to unlink you from whatever
> external data is influencing this. I never found what precisely was
> causing this in the 57b source, but I "fixed" it by putting a sleep(1)
> at the beginning of server_cleanup() in server.c.
That's the file locking/stream handling in NT, which seems a bit odd - a
sleep may fix it about half the time but probably not a real fix. I need
to remove the thread (done in the development version, but not really
well tested as I decided I needed to have a go at the RCS layer).
> After receiving the above error response from the CVS server, Eclipse
> further waits for the response:
>
> error
>
> This is the seemingly redundant piece of output written from
> do_cvs_command if resulting errs > 0 from command execution. /* We
> will have printed an error message already. */
> buf_output0 (buf_to_net, "error \n");
> It doesn't seem that this code is reachable for an abort severity error
> in the 57b source.
An error causes the application to abort. It shouldn't be reachable from
Unix either... If the error has been printed correctly then everything's
working OK.
> Eclipse needs this response, however, before it will retry with the more
> general request:
That's undocumented behaviour - It's not something cvsnt needs to fix,
because it isn't a cvsnt bug. Printing a redundant 'error' at the end of
the error is as likely to break other clients as fix anything.
I can only really 'support' WinCVS and TortoiseCVS, because they are
all I have access to, and the I get feedback from their development
teams (they also both call cvs.exe, which makes things a lot simpler).
I sounds like eclipse isn't designed to work with anything other
than Unix cvs, which is fine, but it limits what I can to do
to make it work - adding a sleep is OK, but changing the protocol isn't
(especially on a release cycle - the devel will probably get a rewrite
of the protocol layer anyway at some point).
Tony
_______________________________________________
Cvsnt mailing list
Cvsnt at cvsnt.org
http://www.cvsnt.org/cgi-bin/mailman/listinfo/cvsnt
More information about the cvsnt
mailing list