The module seems to install fine for me when I do it manually via the UI or via drush en. However, issues get a little fuzzy when I start relying on a configuration import to install the module for me.

When running a drush config-import (and xmlsitemap is a part of the core.extensions.yml file) the module does get enabled, and the basic configuration seems to be imported (since I can get to the module settings page in the admin ui and see them). However, as soon as I go into a content type that has been added to the module as an entity to generate the sitemap, I immediately get a fatal error (because of a missing database table).

SQLSTATE[42S02]: Base table or view not found: 1146 Table 'drupal.xmlsitemap' doesn't exist: SELECT 1 AS expression
    FROM 
    {xmlsitemap} xmlsitemap
    WHERE  (type = :db_condition_placeholder_0) AND (id = :db_condition_placeholder_1) AND (status = :db_condition_placeholder_2) AND (access = :db_condition_placeholder_3) 
    LIMIT 1 OFFSET 0; Array
    (
        [:db_condition_placeholder_0] => user
        [:db_condition_placeholder_1] => 5
        [:db_condition_placeholder_2] => 1
        [:db_condition_placeholder_3] => 1
    )
     (Drupal\Core\Entity\EntityStorageException)

The offending line of code seems to be line 288 in /src/XmlSitemapLinkStorage.php.

Again, this works just fine when installing the module normally, it only seems to occur when the module is enabled as part of a configuration import. My guess is that some portion of the module's installation process isn't firing properly when the CMI runs.

Comments

mikemadison created an issue. See original summary.

mikemadison’s picture

Status: Active » Closed (won't fix)

this seems to be a Drush 9 issue related to the drush config-import --partial command and not an issue with xmlsitemap itself.