Re: debugging APC - bit over my head; clue desired
| From: | Jochem Maas | Date: | Wed, 04 Jan 2006 03:40:18 +0000 |
| Subject: | Re: debugging APC - bit over my head; clue desired | ||
| References: | 1 2 | Groups: | php.internals |
| Request: | Send a blank email to internals+get-21393@lists.php.net to get a copy of this message | ||
Rasmus Lerdorf wrote:
Jochem Maas wrote:I need the object at run time to make the whole lot transparent. but given the speed increase I get from not having to make crazy database calls (my lack of skill/foresight coupled with strange/impossible/arcane marketing/sales driven requirements :-) I'm still happy - thanks for the tip though! noted for future use.a while back I was asking about APC - I have a problem with php seghfaulting when I use APC _and_ turn on the opcode cache (apc_store() and apc_fetch() work very well - I'm sticking _lots_ of 'ResultSet' objects in there for instance and it works very nicely)Note that caching arrays is way faster than caching objects, so if at all possible, convert your ResultSet object to an associative array before storing it.
To fix your segfault I'll need a short PHP script that reproduces the problem. On one hand I bet an <?php echo "hello world"?> script doesn't crash it, and on the other you have whatever code you are running that does. Step up from Hello World slowly until it starts crashing and send me that.I know the problem lies somewhere in the 194 classes I have in the project. I have been trying to reproduce the problem in a short case for months, having just found out that its the classes ->
apc.filters = -.*\.class\.phpthat line allows me to use apc; so now apc has saved my neck. thank you btw. anyway I'll try to figure out a way to test the classes in as near to isolation as I can get to figure out what is going wrong - once you know that the reproduce script is usually quite easy. (any examples for apc.filters in the docs would be super, also an quick explaination on apc.dynamic_errors) kind regards, Jochem ps - IIRC (forgive me if I'm wrong) you yourself asked for the backtrace, but it took a while for me to figure out how to create one and successfully do it, 2 months :-P
-Rasmus