When we insert into a table we attempt to read back the values so that
we know the values after rules, triggers and defaults kick in.  If we
can't SELECT on the table we return None.  The problem is that we do a
try/except after the get() which means that we could abort an ongoing
transaction.  It would be better if we could know in advance that the
SELECT will fail to avoid this.  We could also use "RETURNING *" if we
know we can SELECT thus avoiding the extra database query.

Does anyone know of a very simple method of determining if we have
SELECT privs on a table?  I am inclined to just add a flag to the
insert method, default to True for backwards compatibility, that allows
the caller to control whether the dictionary should be filled in.  This
would also allow them to reduce DB access when they just don't care
about the new values.

-- 
D'Arcy J.M. Cain
PyGreSQL Development Group
http://www.PyGreSQL.org
_______________________________________________
PyGreSQL mailing list
[email protected]
http://mailman.vex.net/mailman/listinfo/pygresql

Reply via email to