You may want to check out a module I wrote for transactional abstraction
in Drupal.


Granted, it doesn't solve issues with Drupal creating locks, but it's an
interesting start.

Gabriele Turchi wrote:
Hi all.

During my experimental Oracle port, I've found a little problem, and I'm
asking some comment (or even help).

Apparently, the drupal db architecture is not designed to use db
transactions. The only way of doing something similar appear to do an
explicit lock on the needed table (function db_lock_table). This
functionality appear (at least to me) linked to mysql, and compatible
with postgres (ehm).

Under postgres, a query is executed by default in "auto-commit" mode,
but emitting a "BEGIN" command the following commands will be in the
same transaction, until "COMMIT" or "ROLLBACK" command is sent.

Under Oracle I can choose the auto-commit mode, but I have not the same
flexibility I have under postgres. Even worse, I need the transaction
control to bind large variables (LOB).

For now, I can solve the problem with some "dirty trick" (like saving
some sort of embedded status doing db_lock_table), but, for the future,
I think that problem (clean transaction/lock support) should be

Ok, anyway: next week I hope to be able to publish the first batch of
patches for the Oracle support in drupal 5.1. I'll publish them via this
mailing list as a request for comments/tests. If there is a better way,
please notify me.

Best Regards,
Gabriele Turchi

P.S.: I'm sorry, my English is alpha version...
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 186 bytes
Desc: OpenPGP digital signature
Url : http://lists.drupal.org/pipermail/development/attachments/20070428/78b5996c/attachment.pgp

Search Discussions

Discussion Posts


Follow ups

Related Discussions

Discussion Navigation
viewthread | post
posts ‹ prev | 2 of 3 | next ›
Discussion Overview
groupdevelopment @
postedApr 27, '07 at 6:27p
activeApr 30, '07 at 2:02p



site design / logo © 2022 Grokbase