Support for Drupal 7 is ending on 5 January 2025—it’s time to migrate to Drupal 10! Learn about the many benefits of Drupal 10 and find migration tools in our resource center.
boost_cache_expire_router() if the page ID was not set in the database, (due to old versions of the database) the entire cache can get nuked.
Comment | File | Size | Author |
---|---|---|---|
#5 | boost-623536.2.patch | 10.09 KB | mikeytown2 |
#4 | boost-623536.1.patch | 2.24 KB | mikeytown2 |
#3 | boost-623536.patch | 1.97 KB | mikeytown2 |
#1 | boost-623536.patch | 1.69 KB | mikeytown2 |
Comments
Comment #1
mikeytown2 CreditAttribution: mikeytown2 commentedProblem that I encountered can be traced to boost_cache_expire_by_db() function. It assumes that the correct data in the database will be there; this just bit me due to an old version (1.0beta2) being upgraded to 1.14 and pressing the flush page button on a node. All nodes of that type got flushed. I should probably create a lookup function to get the ID of nodes and taxonomy based on the old version and place it in the boost_update_6103() function. Add in the base path as well.
Anyway this patch fixes the root cause; it makes sure all 3 fields in the database is set before doing a search and destroy on it.
Comment #2
mikeytown2 CreditAttribution: mikeytown2 commentedTo go along with the if have an else that kills the file directly since it should be expired. That way the original request for that page to be flushed is done even if it can't find the related pages due to incomplete info in the database.
Comment #3
mikeytown2 CreditAttribution: mikeytown2 commentedComment #4
mikeytown2 CreditAttribution: mikeytown2 commentedMore reworking for boost to be able to flush when its an old version of the database or even no database.
Comment #5
mikeytown2 CreditAttribution: mikeytown2 commentedDecided to clean up else where as well
Comment #6
mikeytown2 CreditAttribution: mikeytown2 commentedcommitted with some changes in comparison to the above patch