On legacy version, upgrade test got error: "Could not load conf for core xwiki: Can't load schema..."

We are in the testing upgrade path from XWiki v7.0.1 to v13.10.9, currently attempting to upgrade from v7.4.6 to v8.4.6.

After starting tomcat the first time with the new version of v8.4.6, the logs show an exception: Error creating core [xwiki]: Could not load conf for core xwiki: Can't load schema /data/xwiki/solr/xwiki/conf/schema.xml: Plugin Initializing failure for [schema.xml] fieldType.

We need to resolve this blocking issue before continuing the upgrade testing. So, we appreciate any hints and suggestions.

Details:

1. The full error trace:
See the attached text file
v8.4.6-errors.txt (90.2 KB)

2. File schema.xml
See the attached text file
schema.xml.txt (67.2 KB)

3. Partial error messages:

...
==> /www/tomcat8/logs/catalina.out <==
...
2022-09-30 15:17:32,666 [coreLoadExecutor-6-thread-1] WARN  o.a.s.s.FieldTypePluginLoader  - TokenFilterFactory is using deprecated 4.8.0 emulation. You should at some point declare and reindex to at least 6.0, because 5.x emulation is deprecated and will be removed in 7.0
2022-09-30 15:17:32,707 [coreLoadExecutor-6-thread-1] ERROR o.a.s.c.CoreContainer          - Error creating core [xwiki]: Could not load conf for core xwiki: Can't load schema /data/xwiki/solr/xwiki/conf/schema.xml: Plugin Initializing failure for [schema.xml] fieldType
org.apache.solr.common.SolrException: Could not load conf for core xwiki: Can't load schema /data/xwiki/solr/xwiki/conf/schema.xml: Plugin Initializing failure for [schema.xml] fieldType
...
==> /www/tomcat8/logs/localhost.2022-09-30.log <==
30-Sep-2022 15:19:00.250 SEVERE [http://xwikiv.local.example.com:8080/bin/view/Main/] org.apache.catalina.core.StandardWrapperValve.invoke Servlet.service() for servlet [action] in context with path [] threw exception
        javax.servlet.UnavailableException: Cannot initialize RequestProcessor of class com.xpn.xwiki.web.XWikiRequestProcessor: java.lang.NullPointerException
...
==> /www/tomcat8/logs/localhost.2022-09-30.log <==
30-Sep-2022 15:19:10.293 WARNING [http-nio-8080-exec-4] org.apache.catalina.core.ApplicationDispatcher.invoke Servlet [action] is currently unavailable

Hi, you need to read ALL release notes from your version to the target version and check the “backward compatibility” section which can contain operations to perform manually. See https://www.xwiki.org/xwiki/bin/view/ReleaseNotes/

For ex, I remember that Solr schemas had changes and that we were asking the users to remove the solr directory in the permanent directory.

Hope it helps,

Thanks

As @vmassol indicated, it used to be required to manually take care of the embedded Solr core when something changed. It’s all automated since 11.8 (unless you use a remote Solr instance).