ID:               14208
 Updated by:       [EMAIL PROTECTED]
 Reported By:      [EMAIL PROTECTED]
-Status:           Feedback
+Status:           Analyzed
 Bug Type:         Feature/Change Request
 Operating System: All
 PHP Version:      4.0.6
 New Comment:

The mail from Duncan :
It makes updates twice as fast.

My LRU code is knocking around somewhere, but I'll have to do some
rummaging if you want it.

367c367,376
<               php_remove_shm_data(ptr, shm_varpos);
---
>               shm_var = (sysvshm_chunk*)((char*)ptr +  shm_varpos);
>               /* Check the new length against the old length */
>               if(shm_var->length != len ) {
>                       /* If not equal, remove the old entry and
prepare to create a new one */
>                       php_remove_shm_data(ptr, shm_varpos);
>               } else {
>                       /* If equal, just copy the new data across and
return */
>                       memcpy(&(shm_var->mem),data,len);
>                       return 0;
>               }


Previous Comments:
------------------------------------------------------------------------

[2003-01-18 12:53:21] [EMAIL PROTECTED]

 Where is the patch?

------------------------------------------------------------------------

[2001-11-24 08:57:02] [EMAIL PROTECTED]

Apologies for posting this here, but I don't know where else to go.

shm_put_var has a problem in that when you try to write a variable
which already exists, the function will fail if there is not enough
free space for the variable and its old value. I have a patch which
will simply overwrite the old value if the lengths are the same, and
will do more intelligent space checking if they are not. I will submit
this when I get back to the office.

I also have developed a set of additional shm functions which implement
an LRU cache. These functions are handy for eg caching serialized
objects which would otherwise have to be fetched from a database. And
of course they are shared across the system.

My question is: how do I submit these new functions for inclusion in
the source?

------------------------------------------------------------------------


-- 
Edit this bug report at http://bugs.php.net/?id=14208&edit=1

Reply via email to