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.
On update.inc line 458:
// Add the cache_path table.
require_once('./modules/system/system.install');
$schema['cache_path'] = system_schema_cache_7054();
$schema['cache_path']['description'] = 'Cache table used for path alias lookups.';
db_create_table('cache_path', $schema['cache_path']);
This fails on Pressflow sites with path_alias_cache module enabled, since the cache_path table will already exist in the database. You can argue that since Pressflow is a fork of Drupal, but this would fail on normal Drupal sites if they happened to have created such a table with that name.
Since it's a cache table a possible solution could be to add.
DROP TABLE IF EXISTS
Comment | File | Size | Author |
---|---|---|---|
#3 | 934634-cache-path-pressflow.patch | 755 bytes | carlos8f |
Comments
Comment #1
webchickTagging.
In general, I'm against Drupal doing backflips to accommodate forks (well, "spoons" ;)). In this case it seems like a fairly easy change to make, but let's see what folks say.
Comment #2
webchickComment #3
carlos8f CreditAttribution: carlos8f commentedThis problem has been bugging me since I am testing the upgrade path using a real site which runs Pressflow. I have to remember to drop the cache_path table every time. If I don't, update_fix_d7_requirements() doesn't finish, and cannot be re-run either. Have to start all over XD
Tested the patch and ran a successful upgrade without having to drop cache_path manually.
Comment #5
carlos8f CreditAttribution: carlos8f commented#3: 934634-cache-path-pressflow.patch queued for re-testing.
Comment #6
sun#3: 934634-cache-path-pressflow.patch queued for re-testing.
Comment #7
sunRTBC if bot passes.
Comment #8
webchickI looked through the rest of system.install and confirmed that we generally do check if the table is there first before creating new ones. So this seems pretty consistent, regardless of what is ultimately causing that table to show up twice.
Committed to HEAD.