WinCache and WordPress plugin upgrade problem

The WinCache extension 1.1 for PHP has been released last year. Since then several customers reported a bug in the extension that prevents WordPress and other PHP applications from performing automatic upgrades of their plugins. This was reported on WordPress forum as well as on WinCache forum.

The new build of WinCache with the fix for this problem is available now at the following location:

https://sourceforge.net/projects/wincache/files/development/

The latest dev build at that location is a release candidate build. Several customers have already verified that this build fixes the problem and is running stable in their environments. Please try it out and let me know if it works or does not work for you. The things to try and to look for are:

  1. Try to auto-upgrade any of the WordPress plugins;
  2. After installing this build check the Windows Application event log from time to time looking for errors caused by module “php_wincache.dll”.

If you see any errors while using this build please let me know by leaving a comment here or in WinCache forum or by opening a bug in PECL bug database.

41,585 views

ruslany on April 14th 2011 in PHP, WinCache, WordPress

PoorFairAverageGoodExcellent (4 votes, average: 5.00 out of 5)

40 Responses to “WinCache and WordPress plugin upgrade problem”

  1. Gravatar ImageJerry2 responded on 23 Apr 2011 at 10:47 am #

    It stil doesn’t work ok on IIS7.0, I get many errors every second in event log like this:

    Faulting application php-cgi.exe, version 5.3.6.0, time stamp 0x4d81eb28, faulting module php_wincache.dll, version 1.2.411.0, time stamp 0x4da5291c, exception code 0xc0000005, fault offset 0×00011030, process id 0×884, application start time 0x01cc01de5d51a120.

  2. Gravatar Imageruslany responded on 23 Apr 2011 at 2:40 pm #

    Thanks Jerry2 for letting me know. Is it WordPress or some other PHP application?

  3. Gravatar ImageATiFans responded on 26 Apr 2011 at 5:01 am #

    The new WinCache works fine on IIS 7.5 with PHP 5.3.6.
    It has solved that WP can’t update its plugin.

    Thanks a lot.

  4. Gravatar Imageruslany responded on 26 Apr 2011 at 10:59 am #

    @ ATiFans: Great! Please also double check that there are no errors in the windows event log.

  5. Gravatar ImageATiFans responded on 27 Apr 2011 at 4:39 am #

    There is an error repeatedly show in PHP log.
    PHP Warning: Unknown: Failed to write session data (wincache). Please verify that the current setting of session.save_path is correct (C:\Windows\Temp\) in Unknown on line 0

    This kind of message had never been found in the log before I update WinCache.

    Hope this information is helpful for you.

  6. Gravatar ImageATiFans responded on 27 Apr 2011 at 8:41 am #

    Sorry, That’s a mistake. I forget to set up NTFS permission for the temp folder.

    Besides, Although the new WinCache solves the problem of updating plugin in WP, but sometimes won’t work because files are used by CGI/FastCGI.

  7. Gravatar Imageruslany responded on 27 Apr 2011 at 10:55 am #

    HI AIiFans, Can you provide more details about that? When does it not work? Would it be possible for you to describe how to reproduce the error?

  8. Gravatar ImageATiFans responded on 28 Apr 2011 at 3:36 am #

    Sometimes it will fail to update plugin on “remove plugin” section.
    Because the files are been used by PHP(CGI/FastCGI).

  9. Gravatar Imageruslany responded on 28 Apr 2011 at 11:26 am #

    @ATiFans: When this happens do you get any errors in the Windows event log?

  10. Gravatar ImageATiFans responded on 29 Apr 2011 at 9:59 am #

    There’s none of it.

  11. Gravatar ImageATiFans responded on 29 Apr 2011 at 6:26 pm #

    Hi,

    The problem occurred today.
    https://lh3.googleusercontent.com/_N-UQPbIc1qA/Tbticu35OxI/AAAAAAAAA40/7HzqraDJPLs/fgnytm.png

    the plugin was removed from WP after the update failed leaving some files in the folder.

    There’s no error in PHP log & Windows Event Log.

  12. Gravatar ImageIssues when you upgrade Wordpress plugins and core on ISS 7.5 | Codepolice.net responded on 03 May 2011 at 1:26 am #

    [...] problem is the WinCache plugin that IIS use to do some caching stuff with PHP. I finally found this thread that explains the issue and point you to a upgraded version of the PHP [...]

  13. Gravatar Imagemmos responded on 08 May 2011 at 5:35 pm #

    Hi,

    I just noticed there is an updated version of the development version of the plugin dated 5/7/11.
    wincache-1.2.427-dev-5.3-nts-vc9-x86.exe 2011-05-07

    Is that another update to address this problem, or is the bug considered fixed in the latest development version?

    Thanks.

  14. Gravatar Imageruslany responded on 08 May 2011 at 7:51 pm #

    This is the latest build that has the fix for this problem plus another 2 bug fixes:
    1. The algorithm for generation of names for the shared memory objects and mutexes caused naming collisions which resulted in access viloation errors;
    2. More robust access to the shared memory by using read locks to prevent access violation errors when checking if file change notification listener has been deleted.

    So in general this latest version is supposed to be a more robust fix for the bug mentioned in this blog post. Unfortunately it does not yet fixes the problem reported by Jerry2. That problem always existed in all versions of WinCache and it is specific to OpenX application.

    Let me know if you running into any problems with the latest build.

  15. Gravatar Imagemmos responded on 10 May 2011 at 11:51 am #

    Thanks! We’ll test it and report any problems here.
    We don’t use OpenX, just WordPress, so hopefully it shouldn’t have any problems for us.

  16. Gravatar Imagemmos responded on 10 May 2011 at 2:40 pm #

    Hi,

    Just installed wincache 1.2.427 with php 5.3.6 and it is working great on some of our wordpress installations and failing on others. It also fails on two others php applications, Gallery (an older 1.x version) and 12all email newsletter php app. All these work fine with php 5.3.3 and wincache 1.1.

    I haven’t been able to pinpoint yet what is the difference that would make some of the installs fail vs others that work.
    Reverting back to php 5.3.3 and wincache 1.1 fixes the errors.

    The errors I see show up in the windows application log are all like this one:

    Faulting application php-cgi.exe, version 5.3.6.0, time stamp 0x4d81eb28, faulting module php_wincache.dll, version 1.2.427.0, time stamp 0x4dc0d6c3, exception code 0xc0000005, fault offset 0x000059ef, process id 0xbe4, application start time 0x01cc0f5931511d7a.

  17. Gravatar Imageruslany responded on 10 May 2011 at 2:54 pm #

    Thansk Mmos, the event log messages are helpful. If you have any others that have different fault offset value then please post them as well.

  18. Gravatar Imagemmos responded on 10 May 2011 at 2:59 pm #

    Here are a couple more:

    Faulting application php-cgi.exe, version 5.3.6.0, time stamp 0x4d81eb28, faulting module php_wincache.dll, version 1.2.427.0, time stamp 0x4dc0d6c3, exception code 0xc0000005, fault offset 0x00005a4e, process id 0x13ec, application start time 0x01cc0f58a1fb75a3.

    Faulting application php-cgi.exe, version 5.3.6.0, time stamp 0x4d81eb28, faulting module kernel32.dll, version 6.0.6002.18005, time stamp 0x49e038c0, exception code 0xc0000005, fault offset 0x00010e0d, process id 0x1fb4, application start time 0x01cc0f562226b1b8.

    I am also seeing these in the php error log (when trying to load the wincache control panel):

    PHP Fatal error: session_start(): Failed to initialize storage module: wincache (path: ) in c:\[...]\wincache.php on line 182

  19. Gravatar Imageruslany responded on 11 May 2011 at 2:02 pm #

    Hi mmos, would you be able to collect crash dumps for these errors? I’ve sent you email with instructions.

  20. Gravatar ImageHydn responded on 13 May 2011 at 7:05 pm #

    When I used W3 Total cache with wincache selected within w3total cache. This issue is fixed.

    Not sure if this was already fixed by a wordpress update as im running 3.1.2 now. But my wincache is still the on 1.1.

  21. Gravatar ImageDraconPern responded on 23 May 2011 at 2:20 am #

    php 5.3.6 nts with wincache 1.2.427 on iis 7 (win2008)

    The following appears to work
    Zencart 1.3.9h
    Wordpress 3.1.2 (fixed the plug-in error)

  22. Gravatar ImageThijs Putman responded on 26 May 2011 at 2:08 am #

    Tried 1.2.427 it seems to be working correctly.

    There does appear to be an issue with the “wincache.fcenabled” setting: Even with this set to “Off” (verified with phpinfo() and wincache.php itself) the file cache remains active (according to wincache.php).

  23. Gravatar Imageruslany responded on 26 May 2011 at 9:00 am #

    Thanks Thijs, I will investigate what’s going on with file cache. Do you see this working properly on wincache 1.1?

  24. Gravatar ImageThijs Putman responded on 27 May 2011 at 1:36 am #

    With 1.1 it’s working properly.

    In 1.1 wincache.php does display the file cache as if it were enabled (unlike the disabled user cache for example). That it’s disabled is only apparent from the fact that the amount of files in the cache remains at zero while the other caches fill up.

  25. Gravatar Imageruslany responded on 27 May 2011 at 4:31 pm #

    @Thijs: indeed this was a bug in the latest build. The file cache was used eventhough it was turned off. Let me know if you want to try the latest build that fixes this. I have not published it yet as it needs more testing.

  26. Gravatar ImageThijs Putman responded on 30 May 2011 at 1:39 am #

    I’d gladly give the (PHP 5.3) build a try on my test server…

  27. Gravatar Imageruslany responded on 06 Jun 2011 at 4:34 pm #

    Hi Thijs, I have emailed you the private build.

  28. Gravatar ImageQ responded on 18 Jun 2011 at 5:15 pm #

    This is excellent work mate, simply excellent.

    However, I’m facing a wee bit of an issue here and I’d certainly appreciate some help. I cannot seem to alter the configuration settings for wincache. Suppose I change the opcode cache size for example to 240, wincache.php will keep reporting it set to 96 (MB).

    I’ve tried it with version 1.2.614-dev-5.3-nts-vc9-x86.exe and the latest PHP 5.3 version. Could this be a bug or development editions are locked to certain settings?

    Thanks in advance and once again, great work!

  29. Gravatar Imageruslany responded on 18 Jun 2011 at 5:32 pm #

    Do you see the same problem with the RTW version of wincache 1.1?

  30. Gravatar ImageQ responded on 18 Jun 2011 at 7:01 pm #

    Hello again Ruslan,

    I’ve reverted back to 1.1 (the official WPI distribution) and the problem remains. I’ve even restarted to no avail. My server is a dual Quad Opteron running Windows 2008 OS (not R2) on 8GB RAM.
    Here’s also the last lines of my php.ini:

    [PHP_WINCACHE]
    extension=php_wincache.dll

    [WebPIChanges]
    session.save_handler = wincache
    error_log=C:\Temporary\php\php53_errors.log
    upload_tmp_dir=C:\Temporary\PHP\uploads
    session.save_path=C:\Temporary\PHP\sessions
    cgi.force_redirect=0
    cgi.fix_pathinfo=1
    fastcgi.impersonate=1
    fastcgi.logging=0
    max_execution_time = 600
    date.timezone=Europe/Athens
    extension_dir=”C:\Program Files (x86)\PHP\v5.3\ext\”

    wincache.rerouteini=C:\Program Files (x86)\PHP\v5.3\reroute.ini

    wincache.fcenabled=true
    wincache.fcachesize=80
    wincache.fcndetect=true
    wincache.maxfilesize=512

    wincache.ocenabled=true
    wincache.ocachesize=255

    wincache.ucenabled=true
    wincache.ucachesize=64

    wincache.scachesize=64

  31. Gravatar ImageQ responded on 18 Jun 2011 at 7:04 pm #

    I just had an epiphany and put the following line:
    wincache.rerouteini=C:\Program Files (x86)\PHP\v5.3\reroute.ini

    at the end, while double-quoting the path. Guess what, it worked! Sorry for wasting your time, however it couldn’t occur to me that this could be the cause.

    Once again, many thanks for your work!

  32. Gravatar Imageruslany responded on 19 Jun 2011 at 9:43 am #

    Interesting that this caused problems. Note though that in the latest dev release the reroute.ini functionality is disabled. In my tests I did not see any significant perf improvements with that on PHP 5.3, but it caused instability and application compatibility problems.

  33. Gravatar ImageQ responded on 19 Jun 2011 at 10:16 am #

    Good to know then. I’ll disable it just in case the feature gets supported again and I forget to test it. It’s an interesting concept though and I’d certainly have expected it to make a difference in specific intensive applications.
    Checking the contents of a file from memory and from disk not only saves you from the delay of the process but also allows the disk to be used for other applications, especially on servers with RAID 1,5 or even 1+0 enabled.

  34. Gravatar ImageKevin Cristiano responded on 30 Sep 2011 at 5:09 am #

    Are there any plans to release the latest development version of wincache?

    I have tested it and it has been working on a low traffic site, but did not want to deploy it until there was an official release.

    Are there any known issues? Do you need any specific tests run?

    I am willing to help if needed.

  35. Gravatar Imageruslany responded on 03 Oct 2011 at 9:08 pm #

    Hi Kevin, there are no new issues introduced with this latest development version as far as I know. This is a release candidate build. I know of a few hosting providers who use this build in production. I have not marked it as an official release as I would like more people to try it before making it an official version. It would definitely help if you try it on a high traffic web site and let me know if it works or does not work. Look for errors in the windows applications event log.

  36. Gravatar ImageKevin Cristiano responded on 09 Oct 2011 at 9:59 am #

    I updated to php5.3.8 and the latest development version of wincache this morning.

    I will monitor the event log and report back here in a few days.

  37. Gravatar ImageKevin Cristiano responded on 16 Oct 2011 at 8:36 pm #

    Just wanted to report back. No errors after one week.

  38. Gravatar ImageQ responded on 17 Oct 2011 at 1:10 pm #

    Hello again! There are two things I’d like to report.

    Firstly, I have an issue with wincache causing an exception forcing the php process to exit with a 500 error on the client. I’m afraid I cannot easily reproduce it since it occurs once per 1-2 months and as a result I don’t have much to investigate.

    Apart from that, would it be possible to increase the maximum values for the opcode and file cache (or at least the opcode cache)?
    I’m running about 10 PHP sites on my 2008 R2 Std server with the wincache opcode cache capacity set to 255 but its free memory is reported to be about 7-10% (around 20MB usually); too close for comfort. I have enough memory to dedicate to wincache so that would be great.

    Thanks again for your work on wincache!

  39. Gravatar ImageMichel responded on 13 Dec 2011 at 9:21 am #

    wincache-1.2.614-dev-5.3-nts-vc9-x86.exe –> Works ok till now

    wincache-1.2.1208-dev-5.3-nts-vc9-x86.exe –> Gives FastCGI error

  40. Gravatar ImageJohn Barclay responded on 23 Dec 2011 at 8:59 am #

    wincache-1.2.427-dev-5.2-nts-vc6-x86.exe works fine for me.

    Another context of this problem is when a php process ends abruptly, it leaves all the php files locked on the server.

Trackback URI | Comments RSS

Leave a Reply

XHTML: You can use these tags: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>

XML Markup: If You want to add XML code to the comment please XML encode it first, otherwise the code will not show up.

Recently Published Articles