fmbiete / Z-Push-contrib

Z-Push fork with changes that I will try to contrib
GNU Affero General Public License v3.0
134 stars 62 forks source link

TopCollectorRedis: undeclared static property $redis using PHP 5.4 #200

Open norm2k opened 9 years ago

norm2k commented 9 years ago

I was getting: PHP Fatal error: Access to undeclared static property: TopCollectorRedis::$redis in lib/ipc/redis/TopCollectorRedis.php on line 88 in my PHP logs. I changed line 88 to: static::$redis->setex($this->key,$exp,serialize($this->latest)); but I am not if that is the best way to solve that error. Also, I think you will need at least PHP 5.4 for this. After my change, the error has not returned. Let me know what you think.

norm2k commented 9 years ago

I was wrong. The Error returned. I am no longer using redis and now my mail works normally. I was missing chunks of email while using redis and the above mentioned error was the only thing I could find.

fmbiete commented 9 years ago

Did you install the PHP-Redis extension? Do you have the last code? I think to remember that error happened 1 or 2 months ago...

norm2k commented 9 years ago

Yes, I have php-redis ext and the latest code. I do not get my all email in my inbox if I use Redis. I am currently using Redis 3.0.1...

norm2k commented 9 years ago

Just out of curiosity, I upgraded php-redis module to the current latest build, 2.2.7, and there are no more errors in my php log file while using Redis. Seems to be working as expected now.

norm2k commented 9 years ago

I was wrong. Still getting the error mentioned above.

fmbiete commented 9 years ago

I'm using redis and not seeing that error. Could you double check that your version is up to date with master branch, please?

What version of PHP are you using?

Try to change this line in lib/ipc/redis/InterProcessRedis.php

protected static $redis;

to

public static $redis;
norm2k commented 9 years ago

I have been running PHP5.6.10 for over a week and the error has not returned. Also, things are working as expected. Don't know if that is sufficient to close this out. I was previously using php5.4 (from the Debian Wheezy repo) which caused the errors mentioned above..

fmbiete commented 9 years ago

I'm also running PHP 5.6, so maybe is a 5.4 issue with multiple extends levels. I will change the title and left it open for a while in case someone using 5.4 can reproduce it.

Thanks!!