-----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1 On 19.11.2011 13:31, Christian Boos wrote: > On 11/18/2011 11:37 PM, Nelson Brown wrote: >> ... >> So the system table was the only execute statement to be rolled back in >> the with block. Otherwise, we wouldn't be in this method. So is that >> intentional? > > It's rather that you can't really avoid it, as some backends (like > SQLite) can't rollback changes to the data model (the DDL statements > like CREATE TABLE, ALTER TABLE, etc.). One workaround would be to record > what you created and at the end, if you detect that a rollback happened, > drop the tables and indexes which have been created so far.
The potential convenience for abstracting that (SQLite) deficiencies away looks like a strong argument to me. Even if I'm not actively using it on my own, I guess that PostgreSQL should rather not have similar problems with transactions, right? Currently I'm even investigating possibilities to expand db backend support far beyond the current status, most probably by re-basing on Python DB API v2.0 [1] or even ODBC like pyodbc [2] or unixODBC [3] rather than the old SQLAlchemy [4] approach, if feasible at all. Because of the Trac policy to use only the most generic SQL and thin compatibility layers near the specific backend this should be achievable. At least I wonder, why corporations spend money on pricy Applications like Notes, SAP or SharePoint, but are seemingly unwilling to invest into just the connector to their in-house-standard db backend, often MS SQL server, or Oracle.? This is rhetorical, because I know already too many reasons, read: excuses, to spend more money even while facing tight budgets. <rant> It's only too easy to hide lack of professionalism behind big investments. If the big contract fails, people still bear with you: "Sorry, but after all you still did the best." while low(er) cost for FOSS result in equally low tolerance: "See, for that money you couldn't have seriously expected anything for our business-critical application."</rant> Steffen Hoffmann [1] http://www.python.org/dev/peps/pep-0249/ [2] http://code.google.com/p/pyodbc/ [3] http://www.unixodbc.org/ [4] http://trac.edgewall.org/ticket/1874 -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.4.10 (GNU/Linux) Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org/ iEYEARECAAYFAk7HtnMACgkQ31DJeiZFuHe8dQCffQeS9JUvHF+U59cw3ywtt9Qd VSUAoKTnueZEmdrDG86jsj15dG+hDFw0 =I52X -----END PGP SIGNATURE----- -- You received this message because you are subscribed to the Google Groups "Trac Development" group. To post to this group, send email to [email protected]. To unsubscribe from this group, send email to [email protected]. For more options, visit this group at http://groups.google.com/group/trac-dev?hl=en.
