Details
-
Type:
Bug
-
Status:
Resolved
-
Priority:
Minor
-
Resolution: Fixed
-
Affects Version/s: 1.6.0
-
Fix Version/s: 1.8.0
-
Component/s: Zend_Db_Table
-
Labels:None
Description
Zend_Db_Table_Row_Abstract->_refresh() adds ZEND_DB_ROWNUM to the $this->_data and $this->_cleanData arrays.
I am saving a row to the database as part of a transaction (which succeeds and adds ZEND_DB_ROWNUM to the fields). If the subsequent $dbAdapter()->commit() fails, I want to save the row so that I can retrieve the values in the next request cycle.
When you try and reconnect the row to the database using $row->setTable(), or $row->setFromArray() you get an error because ZEND_DB_ROWNUM isn't in the list of columns for the table.
Either Zend_Db_Table_Abstract() should remove the ZEND_DB_ROWNUM from the _data and _cleanData arrays, or Zend_Db_Table->fetchRow() should.
Issue Links
| This issue depends on: | ||||
| ZF-2243 | Different behavior between Zend_Db_Table::createRow($data) and Zend_Db_Table_Row::setFromArray(array $data) |
|
|
|
Could be fixed in conjunction of
ZF-2243ZF-2243