[svn.haxx.se] · SVN Dev · SVN Users · SVN Org · TSVN Dev · TSVN Users · Subclipse Dev · Subclipse Users · this month's index

RE: permissions (and other) problems

From: Jon Watte <hplus_at_mindcontrol.org>
Date: 2002-09-12 23:23:34 CEST

> I posted a kludgey patch to prevent that a few months ago;
> it just ignored the SIGINT. It did this even on ra_dav, though, which
> was probably overkill.

A slightly less kludgey fix is to install a SIGINT handler which
does a longjmp() to some routine which cleans up all currently
registered "cleanup" handlers. Typically, something that starts
a transaction will register transaction rollback as a cleanup task,
and something which opens the database will register database close
as a cleanup task...

This way, you can reasonably abort a running operation, without
leaving the DB in a b0rked state.

Note that Linux has problems fully restoring all CPU state when
doing longjmp() out of signal handlers (the FPU control word is not
correct) but that doesn't matter for this case :-)

Cheers,

                        / h+

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@subversion.tigris.org
For additional commands, e-mail: dev-help@subversion.tigris.org
Received on Thu Sep 12 23:26:22 2002

This is an archived mail posted to the Subversion Dev mailing list.