King Simon-NFHD78 wrote:
> Have you read
> sion - it describes typical usage of a scoped session in a web
I have now ;-)
> In your traditional structure, you could get an exception during
> session.commit() which would not be handled in your exception handler. I
> believe (but I'm not certain) that after any kind of database exception,
> it is recommended that you roll back the existing transaction, as it is
> likely to be invalid anyway.
Any ideas in the case where you're using two phase commit?
I'm likely to use repoze.tm2, which has a process that looks roughly like:
<do first phase of commit for other resources>
Is this sequence correct? If not, what should change?
> Session.remove() ensures that the current session is removed from the
> scoped session registry. If you don't do this, I think that the next
> time this thread calls Session(), it'll get the old session back again,
> rather than creating a new one.
Surely that's a good thing? When would it not be a good thing?
(repoze.bfg has a faily warty way of calling session.remove, I'd like
that to go away if it's not necessary)
The only worry I have is about releasing MySQL connections back to the
pool rather than slowly consuming them all over time...
Repoze-dev mailing list