In expire.module, you've got:

    // Path redirects
    if (module_exists('path_redirect')) {
      $path_redirects = expire_path_redirect_load(array('redirect' => $path));
      if (isset($path_redirects)) {
        foreach ($path_redirects as $path_redirect) {
          $expire[] = $path_redirect['path'];
        }
      }
    }

I'm suggesting:

    // Path redirects
    if (module_exists('path_redirect')) {
      $path_redirects = expire_path_redirect_load(array('redirect' => $path));
      if (isset($path_redirects)) {
        foreach ($path_redirects as $path_redirect) {
          if (!empty($path_redirect['redirect'])) {
            $expire[] = $path_redirect['redirect'];
          }
        }
      }
    }

There's no column in the path_redirect table named 'path'. The column that you want is 'redirect'. If a result is returned from expire_path_redirect_load(), $expire[] would be set to NULL, which results in a global flush.

CommentFileSizeAuthor
#2 expire-path_redirect-1299692.patch556 bytesjaydub

Comments

djbobbydrake’s picture

FYI - this was a global flush, because my VCL purge was looking for regex. But with non-regex, this would result in flushing the homepage.

jaydub’s picture

Version: 6.x-1.0 » 6.x-1.x-dev
Status: Active » Needs review
StatusFileSize
new556 bytes

Attached a patch of the above fix

djbobbydrake’s picture

Thanks for the patch. I'll learn how to make a git patch one of these days...

SqyD’s picture

Commited, Thanks djboddydrake & jaydub!

SqyD’s picture

Status: Needs review » Closed (fixed)
SqyD’s picture

BTW: was also committed to the D7 branch