Re: RFC: Storing additional information for op_arrays
| From: | Derick Rethans | Date: | Thu, 20 Sep 2007 11:39:40 +0000 |
| Subject: | Re: RFC: Storing additional information for op_arrays | ||
| References: | 1 | Groups: | php.internals |
| Request: | Send a blank email to internals+get-32397@lists.php.net to get a copy of this message | ||
On Thu, 20 Sep 2007, Stefan Esser wrote:
> One problem I and others have run into is that from time to time we need
> to store extra information for specific opcode arrays. For simple values
> it is possible to use one of the reserved slots in the op_array
> structure, but in the past that has been unrelieable because APC for
> example simply overwrote the first slots without asking the Zend Engine
> to reserve some space.
Have a pointer on how this is done? I sortof need/want to do this in
Xdebug as well, however I don't want opcode caches to remember this
value.
> The next problem is that the amount of data you can store is not that big.
> Leaving a pointer in the reserved field is also not a good idea, because
> this will break as soon the opcode array is shared among processes or
> was stored on the disk.
>
> Therefore it would be great if we can come up with a modification of the
> op_array structure that allows extensions to append arbitrary sized data
> to an op_array, that gets also cached by all the opcode cachers...
>
> What do you think?
Sounds like a good idea to me - but the op code caches do need to some
special trickery for this I guess. However, in my case I do *not* want
an opcode cache to remember the stored data, so that perhaps needs to be
taken into account as well.
regards,
Derick
--
Derick Rethans
http://derickrethans.nl | http://ez.no | http://xdebug.org