
I think it would be OK in principle for ProIV to not issue an actual rollback when it KNOWS FOR SURE that no transaction has been started since the last commit - but it seems a fairly pointless optimization in practice.
Of course whether ProIV REALLY knows this or not can be pretty debatable if for example one's app included C code linked with the kernel which does database work. Really you would need a way to declare that to ProIV.
I was only saying it was ARGUABLY desirable because I was assuming the global function(s) had been committed, thereby shortening transaction (and hence lock) durations. This is generally considered a 'good thing' but perhaps (I agree with Shaun) it can equally often not be what you want.
Cheers, Richard