When I upgraded to 6.x-1.01, as soon as I enabled boost I got a PHP recursive error on _boost_mkdir_p($boost_file_path) called from boost_admin_boost_performance_page_validate() ... a bit of debug reporting showed that it was being called with the single character "%" or at least that is what watchdog was reporting $pathname was.

I could make this problem go away by changing the boolean check of BOOST_MULTISITE_DB in boost_admin_boost_performance_page_validate() (line 215) so that the field is included in the form ... while I think that does provide a working site, I am reluctant to push that out to production at this stage because I am still not certain where the bare "%" was being put into boost_file_path (causing the recursion error) and what I might break by changing this logic.

I have tried clearing cache before enabling boost and other variations but if there is some other method that variable is supposed to get set, I can't find it. I've got this as critical because 1.01 is a show stopper on my site as it sits right now.

CommentFileSizeAuthor
#1 boost-591098.patch2.05 KBmikeytown2

Comments

mikeytown2’s picture

Status: Active » Needs review
StatusFileSize
new2.05 KB

before fixing this what's the stored value of boost_file_path in your dev database?

mikeytown2’s picture

Status: Needs review » Fixed

committed

Dave Kinchlea’s picture

/var/www/drupal-home/cache/www.gatevillage.net

To be honest, I changed this a tad (I'm a security nut) but it is a fair representation full path and "www.gatevillage.net" is in my default $db_url.

mikeytown2’s picture

Above patch fixed the issue correct?

Dave Kinchlea’s picture

Sorry I was just too tired last night to try it out, just did now. The supplied patch got me past stage one, now onto further testing. I didn't get very far before I was presented with the same recursion error (_boost_mkdir_p()) but this time when I visit /admin and only /admin as far as I've been able to tell so far -- /admin/settings is fine, as are all /admin/*.

I'll see if I can determine how to address... I think we are on different time schedules

[later] -- so, it fails on BOOST_PERM_NORMAL_DIR which was "", something _boost_mkdir_p doesn't like. I deliberately set a value for this via /admin/settings/performance/boost and that got me one step further along. I don't really mind providing a value there but it isn't at all clear that I should need to in order that multi-site caching works. Anywho, I'll keep testing.

Thanks again, Mike!

Dave Kinchlea’s picture

Status: Fixed » Needs work
mikeytown2’s picture

Status: Needs work » Fixed

fix is in for that ;)

      $cache_directories = array();
      $cache_directories[] = BOOST_ROOT_CACHE_DIR;
      $cache_directories[] = BOOST_FILE_PATH;
      $cache_directories[] = BOOST_PERM_FILE_PATH;
      if (BOOST_GZIP) {
        $cache_directories[] = BOOST_GZIP_FILE_PATH;
        $cache_directories[] = BOOST_PERM_GZIP_FILE_PATH;
      }

Status: Fixed » Closed (fixed)

Automatically closed -- issue fixed for 2 weeks with no activity.