On Mon, 11 Dec 2017 10:09:47 -0800, Florent Georges <[email protected]>  
wrote:

> Hi Mary,
>
> Thank you for this clear explanation.  This is excellent news (news to me
> at least), I always assumed try/catch were trickier than that WRT errors.
>
> Just out of curiosity, how is that possible efficiently?  I can only
> imaging using several MVCC copies, that we create when entering a try
> block, and on exiting the block we use either the new copy, or the old  
> one
> in case of an error...
>
> Regards,
>

This is before the commit happens, so MVCC doesn't enter into it. So all  
that needs to happen is to keep track of what got added to the pending  
update list inside the scope of the try block and either throwing it out  
or keeping it. The bigger cost is the overall cost of the try/catch itself  
(which maps down to an internal try/catch with all the stack-unwinding and  
so on).

//Mary
_______________________________________________
General mailing list
[email protected]
Manage your subscription at: 
http://developer.marklogic.com/mailman/listinfo/general

Reply via email to