Issues

ZF-12484: PgSQL lastInsertId() incorrect in a transaction

Description

When one calls lastInsertId() without any parameters inside a transaction that has not yet been committed, an incorrect value is returned.

To reproduce:


$this->getAdapter()->beginTransaction();
$this->insert(); // We assume that the table has a primary key named 'id' that is automatically incremented.
var_dump($this->getAdapter()->lastInsertId()); // Returns false

If one calls lastInsertId() with both parameters, then the correct value is returned. I.E.


var_dump($this->getAdapter()->lastInsertId($this->_name, 'id')); // Prints a number, like 23, which is what we would expect.

I tested this using Postgres, but it could be an issue in other adapters, as well.

Comments

This issue has been closed on Jira and moved to GitHub for issue tracking. To continue following the resolution of this issues, please visit: https://github.com/zendframework/zf1/issues/40