[ZODB-Dev] RelStorage support to Microsoft SQLServer

Laurence Rowe l at lrowe.co.uk
Wed Nov 17 12:05:42 EST 2010


On 17 November 2010 16:34, Alan Runyan <runyaga at gmail.com> wrote:
>> I have read that there is a problem to implement MS-SQL adapter for
>> Relstorage because the “Two phase commit” feature is not exposed by
>> MS-SQL server .
>
> unsure about that. probably depends on the client access library.

At least when I looked at pyodbc/FreeTDS in 2008 FreeTDS did not have
support for the tds packets necessary for joining an XA transaction.
(FreeTDS is the odbc -> SQL Server driver used on unix.) See:
http://article.gmane.org/gmane.comp.db.tds.freetds/9598. I did have
some more information on a SQLAlchemy wiki page but that seems to have
gone now.

However, two phase commit may not be necessary with the current
version of RelStorage - it's not used with PostgreSQL anymore.

>> Is there solution to overcome this problem, Without introducing too many
>> layers?
>> Can we use PyMSSQL and ADODB Python extension to implement the
>> relstorage Adapter for MS-SQL.
>
> i recently had a discussion with some guys about this. i am unsure what
> their analysis was.  but my opinion:
>  - adodbapi is not good.
>  - pymssql i've not used
>  - pyodbc we used but it doesnt support storedprocs. works ok.
>  - mxodbc we use and highly recommend.
>
> yes mxodbc costs money but you have support.  i spoke with shane
> about this in the past about which library would he probably use if
> he were to support mssqlserver and his unresearched/not definitive
> answer was mxodbc.  mainly because its supported and has been
> in production usage for almost a decade.

I've used stored procedures with pyodbc:
http://code.google.com/p/pyodbc/wiki/StoredProcedures

Laurence


More information about the ZODB-Dev mailing list