From: arnoldvmartinez at yahoo dot com Operating system: Windows 2003 PHP version: 5.2CVS-2007-10-18 (snap) PHP Bug Type: InterBase related Bug description: Cannot retrieve a newly inserted record after calling ibase_commit
Description: ------------ Re-post Bug #36910 :Cannot retrieve a newly inserted record after calling ibase_commit It was marked bogus and it now prevents me from adding more comments... I dunno if its intentional or not. I am posting here my response to the last post, readers could refer to Bug #36910 for details. If you can't access it you could email me and I am willing to provide the message tree. --------------------------------------------- I stated in my previous that the issue does not happen to FlameRobin, Database Workbench... I tried it myself. I can write a simple VB, Delphi, Java, or any other program that can prove that Firebird returns a newly-inserted record. Applications connect to Firebird using the lower-level API provided by Firebird. Now if the bug is Firebird's, who in the world would use it? Would anyone use a database that cannot return a newly-inserted (committed) record? Would you want your customer to still see $1 million in his account that he's just withdrawn? That would be ridiculously phenominal!!! If you can recreate the bug using either of these applications then we will put this case to rest. If not, then the bug should be properly recognized, investigated and fixed. PHP should act responsibly to at least inform PHP-Firebird users about it. Besides, please elaborate your claim and support your argument. Contradict and disprove point-by-point, any or all the items in my previous post. One-liner explanation or comment does no good. Only facts can argue against facts... ... and someone's opinion is just as good as anyone's opinion. Reproduce code: --------------- $dbh = ibase_connect($host, $user, $password); $stmt = 'SELECT * FROM Employees'; $sth = ibase_query($dbh, $stmt); while ($row = ibase_fetch_object($sth)) { echo '<br>'.$row->EMPNAME; } $th=ibase_trans(IBASE_DEFAULT,$dbh); $stmt='INSERT statement here...'; $sth = ibase_query($th, $stmt); ibase_commit($th); $stmt = 'SELECT * FROM Employees'; $sth = ibase_query($dbh, $stmt); while ($row = ibase_fetch_object($sth)) { echo '<br>'.$row->EMPNAME; } /* new record not listed */ Expected result: ---------------- The newly inserted (COMMITTED) record to be included in the new SELECT operation. -- Edit bug report at http://bugs.php.net/?id=43012&edit=1 -- Try a CVS snapshot (PHP 4.4): http://bugs.php.net/fix.php?id=43012&r=trysnapshot44 Try a CVS snapshot (PHP 5.2): http://bugs.php.net/fix.php?id=43012&r=trysnapshot52 Try a CVS snapshot (PHP 5.3): http://bugs.php.net/fix.php?id=43012&r=trysnapshot53 Try a CVS snapshot (PHP 6.0): http://bugs.php.net/fix.php?id=43012&r=trysnapshot60 Fixed in CVS: http://bugs.php.net/fix.php?id=43012&r=fixedcvs Fixed in release: http://bugs.php.net/fix.php?id=43012&r=alreadyfixed Need backtrace: http://bugs.php.net/fix.php?id=43012&r=needtrace Need Reproduce Script: http://bugs.php.net/fix.php?id=43012&r=needscript Try newer version: http://bugs.php.net/fix.php?id=43012&r=oldversion Not developer issue: http://bugs.php.net/fix.php?id=43012&r=support Expected behavior: http://bugs.php.net/fix.php?id=43012&r=notwrong Not enough info: http://bugs.php.net/fix.php?id=43012&r=notenoughinfo Submitted twice: http://bugs.php.net/fix.php?id=43012&r=submittedtwice register_globals: http://bugs.php.net/fix.php?id=43012&r=globals PHP 3 support discontinued: http://bugs.php.net/fix.php?id=43012&r=php3 Daylight Savings: http://bugs.php.net/fix.php?id=43012&r=dst IIS Stability: http://bugs.php.net/fix.php?id=43012&r=isapi Install GNU Sed: http://bugs.php.net/fix.php?id=43012&r=gnused Floating point limitations: http://bugs.php.net/fix.php?id=43012&r=float No Zend Extensions: http://bugs.php.net/fix.php?id=43012&r=nozend MySQL Configuration Error: http://bugs.php.net/fix.php?id=43012&r=mysqlcfg