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.
In a clean checkout:
- Take the attached database dump file, unzip it and restore it to a database. This is two dumps, drupal-7.filled.standard_all.database.php.gz and drupal-7.all-disabled.database.php in an sql file.
- Point a D7-style settings.php to it.
- Add
$settings['update_free_access'] = TRUE;
to it. Back this file up. - Run D8 update.php
- Observe white screen of death.
- Restore the database.
- Remove everything in
sites/default/files
- Restore settings.php.
- Apply patch.
- Observe update finishing.
- Report back.
How on earth can the testbots pass? I presume it has something to do with $settings['update_free_access'] = TRUE;
.
Comment | File | Size | Author |
---|---|---|---|
#6 | d8update_wow-2.patch | 1.02 KB | swentel |
d8update_wow.patch | 576 bytes | chx | |
d7disabledmodules.zip | 85.5 KB | chx |
Comments
Comment #0.0
chx CreditAttribution: chx commentedUpdated issue summary.
Comment #1
szantog CreditAttribution: szantog commented1. I Installed drupal 7.21 minimal profile.
2. Set
$settings['update_free_access'] = TRUE;
3. Checkout 8.x HEAD,
4. Run update.php
I get
HTTP Error 500 (Internal Server Error)
with the following log entry:Btw update_free_access is irrelevant in this issue.
5. Went to step 1
6. Remove all from sites/default/files.
8. Reinstall d7.
9. Checkout 8.x HEAD
10 Applied patch.
11. Run update.php
12. Smile.
The update run as well.
Marked as RTBC, and hope, the testbot also want it.
Comment #2
BerdirNote that we currently can't really test those early-bootstrap upgrade path issues because we have to do a few shortcuts (pre-create config directories, create a session) as we can not have a settings.php specific for the upgrade path.
Comment #3
swentel CreditAttribution: swentel commentedConfirmed, this fixes the white screen.
Comment #4
swentel CreditAttribution: swentel commentedHowever, could be I'm doing something stupid, but I don't see the 'Apply updates' button, I only see "The version of Drupal you are updating from has been automatically detected."
Comment #5
swentel CreditAttribution: swentel commentedOk, nevermind, for some reason I still had an old theme registry, clearing that fixed the upgrade.
This also fixes the errors mentioned in #1919002: Upgrade to D8 broken when D7 has more then one language enabled (#10 and #20)
Comment #6
swentel CreditAttribution: swentel commentedUpdate on the patch to make sure the theming registry is cleared. In case there's still some cache, you would only see 'The version of Drupal you are updating from has been automatically detected.' but no 'Apply pending updates' button.
Comment #7
chx CreditAttribution: chx commentedThat looks alright to me. Note that by this time Drupal is fully bootstrapped so flushing the cache here is alright. We quite probably can add a test for this one later.
Comment #8
chx CreditAttribution: chx commentedTests will be written in #1949724: Allow simpletest child sites to additionally load a test-specific settings.php to allow testing anonymous and configless updates (edit: has been written and you can see in #4 how this patch makes the bot pass with the right test and without fails it) but that is a wide and huge effort that should not hold this up. Even with that issue, manual testing will be quite necessary (not the least to uncover the cases we forgot to test) and before this is in, that can't happen.
And if you wonder, why does the testbot passes? Blame update_access_allowed which, in order to run user_access, adds the user module to various places. If
update_free_access
is not TRUE then it runs:Now the patch does, in another place:
Looks familiar, eh?
Comment #9
YesCT CreditAttribution: YesCT commented#1948390: [Meta] Upgrade to D8 from D7: regular testing needed on various OSs with different versions of php and other unique situations is postponed on this (no need to do more manual testing since we know it's broken).
When this is fixed, we need to update 1948390 back to active.
Comment #10
andypost+1 RTBC, patch allows upgrade for multilingual sites
Comment #11
Dries CreditAttribution: Dries commentedCommitted to 8.x. Thanks.
Comment #12
xjmNote that this patch was committed without test coverage for the bug in order to unblock everything related to the upgrade path. We've escalated #1949724: Allow simpletest child sites to additionally load a test-specific settings.php to allow testing anonymous and configless updates to critical for the test coverage.
Comment #13
xjmSeems to be a similar error in #1948390-13: [Meta] Upgrade to D8 from D7: regular testing needed on various OSs with different versions of php and other unique situations...
Comment #14.0
(not verified) CreditAttribution: commentedUpdated issue summary.