Problem/Motivation
Error message after updating to Drupal core 11.4.7 and Display Builder 1.0.0-beta7 and running Drupal database update:
The following updates returned messages:
display_builder module
Update #3
Failed: InvalidArgumentException: The configuration property islands.state.revert.value doesn't exist. in Drupal\Core\Config\Schema\ArrayElement->get() (line 100 of /var/www/html/web/core/lib/Drupal/Core/Config/Schema/ArrayElement.php).Steps to reproduce
- Using composer, update from Drupal core 11.4.5 to 11.4.7 and from Display Builder 1.0.0-beta6 to 1.0.0-beta7 with all dependencies.
- In the Drupal UI, run updates.
- Error message displays.
The front end of the site looks as expected and the display builder pages and panels appear to be working (for example, "logs" is now merged into "history").
I cleared caches and ran Drupal database update again and it continues to report that display_builder module has 6 pending updates. When I apply the pending updates, Drupal reports "Completed 7 of 7" and then displays the same error as above.
Proposed resolution (tested)
To fix it until beta8, need to run this:
drush php:eval '
$f = \Drupal::configFactory();
foreach ($f->listAll("display_builder.profile.") as $name) {
$c = $f->getEditable($name);
$r = $c->getOriginal("islands.state.revert", FALSE);
if (is_array($r)) {
$c->set("islands.state.revert", ($r["value"] ?? "label") !== "hidden")->save(TRUE);
}
}'
Then drush updb will work.
Issue fork display_builder-3624051
Show commands
Start within a Git clone of the project using the version control instructions.
Or, if you do not have SSH keys set up on git.drupalcode.org:
Comments
Comment #2
mogtofu33 commentedThanks for the report. No need to roll back, you can stay on beta7.
One update saves profiles before the update that converts the old "revert" setting has run, so it fails. Every update after it is skipped, and the same failure repeats on each run.
To fix it, run this, then
drush updb:The remaining updates should then pass. The update order will be fixed in beta8.
Comment #3
camhowardThanks, @mogtofu33! That worked great! All updates have completed. I appreciate the explanation and the quick fix. Thank you!
Comment #4
camhowardOops! In my last post, I seem to have unintentionally changed the status and assignment settings which were updated by @mogtofu33 in comment #2. I'm setting it back to "Needs work" but can't re-add @mogtofu33 as the person to whom it is assigned. My apologies.
Comment #5
mogtofu33 commentedNo worries for the status, happy the fix worked, I will update the issue with the solution in case someone else encounter that problem.
Comment #7
mogtofu33 commentedComment #8
mogtofu33 commentedComment #9
mogtofu33 commentedComment #11
mogtofu33 commented