diff options
author | Daniele Varrazzo <daniele.varrazzo@gmail.com> | 2011-01-10 00:29:09 +0000 |
---|---|---|
committer | Daniele Varrazzo <daniele.varrazzo@gmail.com> | 2011-01-10 00:46:02 +0000 |
commit | 79048ff19a2e3d14b8c7fa73f53ea3da9705afdd (patch) | |
tree | b12044135997adc76e16ab18bd16de40a023b808 /psycopg | |
parent | f345e7daeb1f4a80be168215b7256ae3a9c5b6c3 (diff) | |
parent | 48588e5f6943ad31ac9080536514e4ef5e52a60c (diff) | |
download | psycopg2-79048ff19a2e3d14b8c7fa73f53ea3da9705afdd.tar.gz |
Merge branch 'python2' into python3
Conflicts:
NEWS-2.3
tests/__init__.py
tests/test_lobject.py
tests/test_quote.py
tests/testutils.py
Diffstat (limited to 'psycopg')
-rw-r--r-- | psycopg/lobject_int.c | 15 | ||||
-rw-r--r-- | psycopg/pqpath.c | 2 |
2 files changed, 17 insertions, 0 deletions
diff --git a/psycopg/lobject_int.c b/psycopg/lobject_int.c index b78b4a9..6ee3ecf 100644 --- a/psycopg/lobject_int.c +++ b/psycopg/lobject_int.c @@ -127,6 +127,21 @@ lobject_close_locked(lobjectObject *self, char **error) { int retvalue; + Dprintf("lobject_close_locked: conn->closed %ld", self->conn->closed); + switch (self->conn->closed) { + case 0: + /* Connection is open, go ahead */ + break; + case 1: + /* Connection is closed, return a success */ + return 0; + break; + default: + PyErr_SetString(OperationalError, "the connection is broken"); + return -1; + break; + } + if (self->conn->isolation_level == ISOLATION_LEVEL_AUTOCOMMIT || self->conn->mark != self->mark || self->fd == -1) diff --git a/psycopg/pqpath.c b/psycopg/pqpath.c index 1474cbf..76e7c24 100644 --- a/psycopg/pqpath.c +++ b/psycopg/pqpath.c @@ -606,6 +606,8 @@ pq_tpc_command_locked(connectionObject *conn, const char *cmd, const char *tid, Dprintf("_pq_tpc_command: pgconn = %p, command = %s", conn->pgconn, cmd); + conn->mark += 1; + /* convert the xid into the postgres transaction_id and quote it. */ if (!(etid = psycopg_escape_string((PyObject *)conn, tid, 0, NULL, NULL))) { goto exit; } |