Hi,
I'm actually using SQLAlchemy with Pyramid and zope.sqlalchemy packages.
My main database connection is a ZODB connection and, when required, I
create an SQLAlchemy session which is joined to main transaction using this
kind of code:

  from sqlalchemy.orm import scoped_session, sessionmaker

  from zope.sqlalchemy import register
  from zope.sqlalchemy.datamanager import join_transaction

  _engine = get_engine(engine, use_pool)
  if use_zope_extension:
      factory = scoped_session(sessionmaker(bind=_engine, twophase=True))
  else:
      factory = sessionmaker(bind=_engine, twophase=True)
  session = factory()
  if use_zope_extension:
      register(session, initial_state=STATUS_ACTIVE)
  if join:
      join_transaction(session, initial_state=STATUS_ACTIVE)

Everything is working correctly!

So my only question is that I also use Pyramid_debugtoolbar package, which
is tracking many SQLAlchemy events, including two-phase commits
transactions, and which in this context receives transaction IDs as a three
values tuple instead of a simple string (like, for example: (4660,
'12345678901234567890123456789012', '00000000000000000000000000000009'),
which is raising an exception)!
Is it normal behaviour, and what does this value mean?

Best regards,
Thierry

-- 
  https://www.ulthar.net -- http://pyams.readthedocs.io

-- 
SQLAlchemy - 
The Python SQL Toolkit and Object Relational Mapper

http://www.sqlalchemy.org/

To post example code, please provide an MCVE: Minimal, Complete, and Verifiable 
Example.  See  http://stackoverflow.com/help/mcve for a full description.
--- 
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 sqlalchemy+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/sqlalchemy/CAPX_VWCwQmHEsynbsSa54%2BvkWH5xkZC_-hh359iM%3D%2BYh1f%3DE6A%40mail.gmail.com.

Reply via email to