#28866 [Fbk-Csd]: array of objs filling slowness
ID: 28866 User updated by: dmirand at abelia-decors dot com Reported By: dmirand at abelia-decors dot com -Status: Feedback +Status: Closed Bug Type: Performance problem Operating System: Linux 2.4 / glibc 2.3 PHP Version: 5.0.0RC3 New Comment: Much better now ! Need to say that my app has pretty much changed since the bug report... Thanks ! Previous Comments: [2005-02-11 15:18:06] [EMAIL PROTECTED] Please try using this CVS snapshot: http://snaps.php.net/php5-STABLE-latest.tar.gz For Windows: http://snaps.php.net/win32/php5.0-win32-latest.zip [2004-06-21 13:15:36] dmirand at abelia-decors dot com Description: When running a portion of script which fills an array with objects, it is easy to notice a significant slowness depending on what has already run before in the script., even if that pre-processing is totally independant . The more load that runs before, the slower the filling will be... Under 4.3.6 almost no differences between : - a just filling script - a big load followed by a filling part Both 4.3.6 and 5.0.0 RC3 compiled from source. Reproduce code: --- $big_load = new BigLoad ; $big_load-go() ; unset( $big_load ) ; /* Filling start */ $arr_obj_orders = array() ; foreach( $arr_no_order as $no_order ) { $obj_order = new Order ; $obj_order-load( $no_order ) ; // to show filling avancement echo $no_order ; $arr_obj_orders[$no_order] = $obj_order ; } /* Filling end */ Expected result: The expected behavior is of course no slowness with the filling part of the script, ie the same behavior as if there was no big load before the filling part. -- Edit this bug report at http://bugs.php.net/?id=28866edit=1
#30917 [NoF-Opn]: Wrong keys in serialized obj's array
ID: 30917 User updated by: dmirand at abelia-decors dot com Reported By: dmirand at abelia-decors dot com -Status: No Feedback +Status: Open Bug Type: Class/Object related Operating System: Linux (64bit only!) PHP Version: 4.3.9 New Comment: Now with lastest CVS snapshot : array(1) { [50]= array(1) { [noscde]= string(10) 50 } } array(1) { [50]= array(1) { [noscde]= string(10) 50 } } Seems fixed now. Thanks ! Previous Comments: [2005-01-26 01:00:09] php-bugs at lists dot php dot net No feedback was provided for this bug for over a week, so it is being suspended automatically. If you are able to provide the information that was originally requested, please do so and change the status of the bug back to Open. [2005-01-18 12:43:12] [EMAIL PROTECTED] Please try using this CVS snapshot: http://snaps.php.net/php4-STABLE-latest.tar.gz For Windows: http://snaps.php.net/win32/php4-win32-STABLE-latest.zip [2005-01-18 12:42:43] [EMAIL PROTECTED] Replace the print_r() with var_dump() please. And paste the result you get. [2004-11-27 05:57:10] dmirand at abelia-decors dot com Description: With objects storing an array with key values = 2e31 (2147483648), these keys are altered after a serialize + unserialize. Occurs only on 64bit systems. Reproduce code: --- class Test { var $arr = array() ; function define_tab() { $noscde = 50 ; $this-arr[$noscde]['noscde'] = $noscde ; } function get_tab() { return $this-arr; } } $obj = new Test() ; $obj-define_tab() ; print_r( $obj-get_tab() ) ; $pok = serialize( $obj ) ; $obj = unserialize( $pok ) ; print_r( $obj-get_tab() ) ; Expected result: Array ( [50] = Array ( [noscde] = 50 ) ) Array ( [50] = Array ( [noscde] = 50 ) ) Actual result: -- Array ( [50] = Array ( [noscde] = 50 ) ) Array ( [705032704] = Array ( [noscde] = 50 ) ) -- Edit this bug report at http://bugs.php.net/?id=30917edit=1
#30917 [NEW]: Wrong keys in serialized obj's array
From: dmirand at abelia-decors dot com Operating system: Linux PHP version: 4.3.9 PHP Bug Type: *General Issues Bug description: Wrong keys in serialized obj's array Description: With objects storing an array with key values = 2e31 (2147483648), these keys are altered after a serialize + unserialize. Occurs only on 64bit systems. Reproduce code: --- class Test { var $arr = array() ; function define_tab() { $noscde = 50 ; $this-arr[$noscde]['noscde'] = $noscde ; } function get_tab() { return $this-arr; } } $obj = new Test() ; $obj-define_tab() ; print_r( $obj-get_tab() ) ; $pok = serialize( $obj ) ; $obj = unserialize( $pok ) ; print_r( $obj-get_tab() ) ; Expected result: Array ( [50] = Array ( [noscde] = 50 ) ) Array ( [50] = Array ( [noscde] = 50 ) ) Actual result: -- Array ( [50] = Array ( [noscde] = 50 ) ) Array ( [705032704] = Array ( [noscde] = 50 ) ) -- Edit bug report at http://bugs.php.net/?id=30917edit=1 -- Try a CVS snapshot (php4): http://bugs.php.net/fix.php?id=30917r=trysnapshot4 Try a CVS snapshot (php5.0): http://bugs.php.net/fix.php?id=30917r=trysnapshot50 Try a CVS snapshot (php5.1): http://bugs.php.net/fix.php?id=30917r=trysnapshot51 Fixed in CVS:http://bugs.php.net/fix.php?id=30917r=fixedcvs Fixed in release:http://bugs.php.net/fix.php?id=30917r=alreadyfixed Need backtrace: http://bugs.php.net/fix.php?id=30917r=needtrace Need Reproduce Script: http://bugs.php.net/fix.php?id=30917r=needscript Try newer version: http://bugs.php.net/fix.php?id=30917r=oldversion Not developer issue: http://bugs.php.net/fix.php?id=30917r=support Expected behavior: http://bugs.php.net/fix.php?id=30917r=notwrong Not enough info: http://bugs.php.net/fix.php?id=30917r=notenoughinfo Submitted twice: http://bugs.php.net/fix.php?id=30917r=submittedtwice register_globals:http://bugs.php.net/fix.php?id=30917r=globals PHP 3 support discontinued: http://bugs.php.net/fix.php?id=30917r=php3 Daylight Savings:http://bugs.php.net/fix.php?id=30917r=dst IIS Stability: http://bugs.php.net/fix.php?id=30917r=isapi Install GNU Sed: http://bugs.php.net/fix.php?id=30917r=gnused Floating point limitations: http://bugs.php.net/fix.php?id=30917r=float MySQL Configuration Error: http://bugs.php.net/fix.php?id=30917r=mysqlcfg
#28866 [NEW]: array of objs filling slowness
From: dmirand at abelia-decors dot com Operating system: Linux 2.4 / glibc 2.3 PHP version: 5.0.0RC3 PHP Bug Type: Performance problem Bug description: array of objs filling slowness Description: When running a portion of script which fills an array with objects, it is easy to notice a significant slowness depending on what has already run before in the script., even if that pre-processing is totally independant . The more load that runs before, the slower the filling will be... Under 4.3.6 almost no differences between : - a just filling script - a big load followed by a filling part Both 4.3.6 and 5.0.0 RC3 compiled from source. Reproduce code: --- $big_load = new BigLoad ; $big_load-go() ; unset( $big_load ) ; /* Filling start */ $arr_obj_orders = array() ; foreach( $arr_no_order as $no_order ) { $obj_order = new Order ; $obj_order-load( $no_order ) ; // to show filling avancement echo $no_order ; $arr_obj_orders[$no_order] = $obj_order ; } /* Filling end */ Expected result: The expected behavior is of course no slowness with the filling part of the script, ie the same behavior as if there was no big load before the filling part. -- Edit bug report at http://bugs.php.net/?id=28866edit=1 -- Try a CVS snapshot (php4): http://bugs.php.net/fix.php?id=28866r=trysnapshot4 Try a CVS snapshot (php5): http://bugs.php.net/fix.php?id=28866r=trysnapshot5 Fixed in CVS: http://bugs.php.net/fix.php?id=28866r=fixedcvs Fixed in release: http://bugs.php.net/fix.php?id=28866r=alreadyfixed Need backtrace: http://bugs.php.net/fix.php?id=28866r=needtrace Need Reproduce Script: http://bugs.php.net/fix.php?id=28866r=needscript Try newer version: http://bugs.php.net/fix.php?id=28866r=oldversion Not developer issue:http://bugs.php.net/fix.php?id=28866r=support Expected behavior: http://bugs.php.net/fix.php?id=28866r=notwrong Not enough info:http://bugs.php.net/fix.php?id=28866r=notenoughinfo Submitted twice:http://bugs.php.net/fix.php?id=28866r=submittedtwice register_globals: http://bugs.php.net/fix.php?id=28866r=globals PHP 3 support discontinued: http://bugs.php.net/fix.php?id=28866r=php3 Daylight Savings: http://bugs.php.net/fix.php?id=28866r=dst IIS Stability: http://bugs.php.net/fix.php?id=28866r=isapi Install GNU Sed:http://bugs.php.net/fix.php?id=28866r=gnused Floating point limitations: http://bugs.php.net/fix.php?id=28866r=float