Problem/Motivation

Tests on 3.3.x are failing for a while now where they didn't use to, let's use git bisect or other tools to figure out what changed in core.

Steps to reproduce

Proposed resolution

Remaining tasks

User interface changes

API changes

Data model changes

Issue fork group-3611557

Command icon 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

kristiaanvandeneynde created an issue. See original summary.

kristiaanvandeneynde’s picture

Hmm, just noticed something. Wouldn't it be funny if I got to don my hotdog suit.

kristiaanvandeneynde’s picture

Locally seeing this fail, which is after upgrading to recent core versions:

Base fields are already gone from group_content map
Failed asserting that null is identical to Array &0 [
    'group_roles' => Array &1 [
        'type' => 'entity_reference',
        'bundles' => Array &2 [
            'class-group_membership' => 'class-group_membership',
            'group_content_type_0055e25dd2326' => 'group_content_type_0055e25dd2326',
        ],
    ],
    'field_short_field' => Array &3 [
        'type' => 'string',
        'bundles' => Array &4 [
            'class-group_membership' => 'class-group_membership',
        ],
    ],
    'field_really_long_field_title_00' => Array &5 [
        'type' => 'string',
        'bundles' => Array &6 [
            'class-group_membership' => 'class-group_membership',
        ],
    ],
].
kristiaanvandeneynde’s picture

So this code is new:


/**
 * Install Help Search module if the Search and Help modules are installed.
 */
function search_update_11401(): void {
  $module_handler = \Drupal::moduleHandler();
  // Search help may already have been installed by sites on 11.4.0 or 11.4.1.
  if ($module_handler->moduleExists('search_help')) {
    return;
  }
  if ($module_handler->moduleExists('help')) {
    \Drupal::service('module_installer')->install(['search_help']);
  }
}

And that install() call triggers:

  #[Hook('modules_installed')]
  public function modulesInstalled(array $modules, bool $is_syncing): void {
    // Only create config objects while config import is not in progress.
    if (!$this->configInstaller->isSyncing()) {
      $this->groupRelationTypeManager->installEnforced();
    }
  }

Apparently too early during the test, as it's then trying to create the group roles field in GroupMembershipPostInstall but the storage does not exist yet. So $field_storage = $fsc_storage->load('group_relationship.group_roles'); looks for the new storage, but can't find it.

kristiaanvandeneynde’s picture

Okay so with some local changes I can get 3 cases to fail, two go green after I revert #3564969: Static cache field storage definitions

  1. testEntityReferenceFields -> goes green after revert
  2. testFieldStorages -> goes green after revert
  3. testBundleFieldMap -> still red with error from above
kristiaanvandeneynde’s picture

kristiaanvandeneynde’s picture

Status: Active » Fixed

Some days are fun, some days are not. This one was not :/

Now that this issue is closed, review the contribution record.

As a contributor, attribute any organization that helped you, or if you volunteered your own time.

Maintainers, credit people who helped resolve this issue.

Status: Fixed » Closed (fixed)

Automatically closed - issue fixed for 2 weeks with no activity.