I think the issue might be related to this:
https://github.com/zopefoundation/zope.sqlalchemy/blob/master/src/zope/sqlalchemy/datamanager.py#L213
"""Record that a flush has occurred on a session's connection. This allows
the DataManager to rollback rather than commit on read only transactions.
"""
also check
out
https://github.com/zopefoundation/zope.sqlalchemy/blob/master/src/zope/sqlalchemy/datamanager.py#L183
I remembered this line from peeking into Lawrence's code. ( i needed to
get savepoints into repoze.sendmail )
In a nutshell -- the call to execute isn't touching the ORM level; just the
sqlalchemy core. As such, it's not marking things as changed. Not sure
why a rollback is preferred to no activity, but my guess would be it's
easier on replication.
If you call a dbSession.flush(), you should be able to generate an event
that marks the session as changed, and will enable the commit.
--
You received this message because you are subscribed to the Google Groups
"sqlalchemy" group.
To unsubscribe from this group and stop receiving emails from it, send an email
to [email protected].
To post to this group, send email to [email protected].
Visit this group at http://groups.google.com/group/sqlalchemy.
For more options, visit https://groups.google.com/groups/opt_out.