Christopher Browne cbbrowne at afilias.info
Fri Apr 15 12:41:35 PDT 2011
On Fri, Apr 15, 2011 at 2:16 PM, Steve Singer <ssinger at ca.afilias.info> wrote:
> C)  We could get rid of try blocks.  Some people have commented that
> they don't behave as expected anyway and with the additional
> restrictions of changes 1) and 2) they are even less useful.

I'd point not only to "less useful," but also to "less able to be
reasoned about" as an issue.

The "intuitive" position is that TRY blocks are supposed to look like
something quasi-transactional; if there's a failure, "everything
should be rolled back."  That's certainly a cool idea to consider.

Unfortunately, that's not remotely near to being how things are.  If
there are activities inside a TRY block that cross multiple nodes,
it's not reasonable to expect that all to roll back.  (We're not using
2PC!)

And the changes you suggest add to the "destruction of intuition."
The further we go down the "destruction of intuition" path, the more
it's clear that TRY doesn't work as hoped.

Perhaps we indicate that it doesn't promise transactional behaviour;
that leaves it a bit questionable what it's particularly useful for.


More information about the Slony1-general mailing list