Using Firebug I noticed errors like this all over our javascript files, /connectors/lang.js.php for example.
"Fatal error: Class ’xPDO’ not found in core/xpdo/xpdo.class.php on line 557"
I looked at xpdo.class.php and the class xPDO is definitely defined in there.
We are on:
MODx Revolution 2.0.0-rc-3 rev7083
Ubuntu 10.04 LTS
Apache/2.2.14 (Ubuntu)
PHP/5.3.2-1ubuntu4.2
Turning apc.enabled = 0 in our php.ini seemed to fix this problem. I can’t tell if this is a bug on the MODx/xPDO side of things or the PHP/APC side of things. Does anyone have any clues? We’d really like to be able to run APC in our production environment.
Thanks in advance for any help.
-Dan
A little more info in case anyone else is having this issue.
We also have
apc 3.1.3p1
setting apc.cache_by_default = 0 helped our situation.
-
MODX Staff
- 10,725 Posts
I believe this is a known bug with some older APC releases when used with releases of PHP 5.3.x. It’s seems to lose track of certain class definitions despite the code being cached.
Yes, it seems to not ’see’ class constants, normal constant definitions are OK, this thread refers
http://modxcms.com/forums/index.php/topic,50544.msg294114.html#msg294114
Use MODx, or the cat gets it!
Yeah, maybe if you hassle the APC guys this will happen, we can’t be the only people being affected by this and there’s no good workaround here.
Use MODx, or the cat gets it!
I’m still getting this. Is it still broken? I’ve used pecl install apc-beta, 3.1.5 from source, and 3.1.3p1 from source. All gives the same error:
Fatal error: Class ’xPDO’ not found in /var/www/foshizzle/modx/core/xpdo/xpdo.class.php on line 570
Use MODx, or the cat gets it!
I uninstalled APC and switched to Xcache. Working like a charm.
Hope this helps.