Problem updating to 11.10.3 (No Distribution Wizard, Extensions not working, No Panels)

Hi everyone,

i have a problem when updating XWiki from 11.10.2 to 11.10.3.

  • I am updating on an Ubuntu machine with “apt update & upgrade” (superstable/lts repo)
  • Installation goes well according to command line feedback

But when i am open XWiki

  1. all Logos/Pictures are not there
  2. And i don’t see any Panels
  3. Also all extensions seems to be broken

I’ve already moved all data as mentioned here: https://www.xwiki.org/xwiki/bin/view/Documentation/AdminGuide/Installation/InstallationViaAPT/#HMywikiisemptyafterupgradingaTomcat9basedpackage

  • copy from /var/cache/tomcat9/Catalina/localhost/ROOT
  • to /var/lib/xwiki/data/

This only help to get back attachments/logos but there still no Panels and Extensions are not working.

  • I’ve even tried to directly upgrade the Extensions by accessing the Extension Manger directly
    => No luck

Logfiles:

  • I’ve checked the Logfiles at “/var/log/syslog” and “/var/log/tomcat9/”

    /var/log/syslog

    Just a part
    Feb 6 10:00:36 dolowiki tomcat9[2212]: 2020-02-06 10:00:36,714 [main] INFO o.x.s.f.i.FilesystemStoreTools - Using filesystem store directory [/var/lib/xwiki/data/store/file]
    Feb 6 10:00:36 dolowiki tomcat9[2212]: 2020-02-06 10:00:36,927 [main] INFO o.x.s.s.i.EmbeddedSolrInstance - Starting embedded Solr server…
    Feb 6 10:00:36 dolowiki tomcat9[2212]: 2020-02-06 10:00:36,927 [main] INFO o.x.s.s.i.EmbeddedSolrInstance - Using Solr home directory: [/var/lib/xwiki/data/solr]
    Feb 6 10:00:41 dolowiki tomcat9[2212]: 2020-02-06 10:00:41,570 [main] INFO o.x.s.s.i.EmbeddedSolrInstance - Started embedded Solr server.
    Feb 6 10:00:43 dolowiki tomcat9[2212]: Deployment of deployment descriptor [/etc/tomcat9/Catalina/localhost/xwiki.xml] has finished in [17,213] ms
    Feb 6 10:00:43 dolowiki tomcat9[2212]: Deploying deployment descriptor [/etc/tomcat9/Catalina/localhost/ROOT.xml]
    Feb 6 10:00:43 dolowiki tomcat9[2212]: A context path must either be an empty string or start with a ‘/’ and do not end with a ‘/’. The path [/] does not meet these criteria and has been changed to []
    Feb 6 10:00:43 dolowiki tomcat9[2212]: The path attribute with value [] in deployment descriptor [/etc/tomcat9/Catalina/localhost/ROOT.xml] has been ignored
    Feb 6 10:00:43 dolowiki tomcat9[2212]: Deployment of deployment descriptor [/etc/tomcat9/Catalina/localhost/ROOT.xml] with an external docBase means the directory [/var/lib/tomcat9/webapps/ROOT] in the appBase will be ignored

    • Already tried to check /etc/tomcat9/Catalina/localhost/ROOT.xml
    • I’ve configured “Short URL” so it should be okay
    /var/log/tomcat9/localhost.2020-02-06.log
     06-Feb-2020 09:35:03.744 INFO [/rest/notifications?media=json] org.apache.catalina.core.ApplicationContext.log RestletServlet: [Restlet] ServerServlet: component class is null
      06-Feb-2020 09:45:49.616 SEVERE [main] org.apache.catalina.core.StandardContext.listenerStart Exception sending context initialized event to listener instance of class [org.xwiki.container.servlet.XWikiServletContextListener]
       java.lang.RuntimeException: Failed to initialize the Servlet Environment
              at org.xwiki.container.servlet.XWikiServletContextListener.contextInitialized(XWikiServletContextListener.java:88)
              at org.apache.catalina.core.StandardContext.listenerStart(StandardContext.java:4668)
              at org.apache.catalina.core.StandardContext.startInternal(StandardContext.java:5136)
              at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:183)
              at org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:713)
              at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:690)
              at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:695)
              at org.apache.catalina.startup.HostConfig.deployDescriptor(HostConfig.java:631)
              at org.apache.catalina.startup.HostConfig$DeployDescriptor.run(HostConfig.java:1832)
              at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511)
              at java.util.concurrent.FutureTask.run(FutureTask.java:266)
              at org.apache.tomcat.util.threads.InlineExecutorService.execute(InlineExecutorService.java:75)
              at java.util.concurrent.AbstractExecutorService.submit(AbstractExecutorService.java:112)
              at org.apache.catalina.startup.HostConfig.deployDescriptors(HostConfig.java:526)
              at org.apache.catalina.startup.HostConfig.deployApps(HostConfig.java:425)
              at org.apache.catalina.startup.HostConfig.start(HostConfig.java:1577)
              at org.apache.catalina.startup.HostConfig.lifecycleEvent(HostConfig.java:309)
              at org.apache.catalina.util.LifecycleBase.fireLifecycleEvent(LifecycleBase.java:123)
              at org.apache.catalina.util.LifecycleBase.setStateInternal(LifecycleBase.java:424)
              at org.apache.catalina.util.LifecycleBase.setState(LifecycleBase.java:367)
              at org.apache.catalina.core.ContainerBase.startInternal(ContainerBase.java:929)
              at org.apache.catalina.core.StandardHost.startInternal(StandardHost.java:831)
              at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:183)
              at org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1377)
              at org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1367)
              at java.util.concurrent.FutureTask.run(FutureTask.java:266)
              at org.apache.tomcat.util.threads.InlineExecutorService.execute(InlineExecutorService.java:75)
              at java.util.concurrent.AbstractExecutorService.submit(AbstractExecutorService.java:134)
              at org.apache.catalina.core.ContainerBase.startInternal(ContainerBase.java:902)
              at org.apache.catalina.core.StandardEngine.startInternal(StandardEngine.java:262)
              at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:183)
              at org.apache.catalina.core.StandardService.startInternal(StandardService.java:423)
              at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:183)
              at org.apache.catalina.core.StandardServer.startInternal(StandardServer.java:928)
              at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:183)
              at org.apache.catalina.startup.Catalina.start(Catalina.java:638)
              at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
              at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
              at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
              at java.lang.reflect.Method.invoke(Method.java:498)
              at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:350)
              at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:496)
      Caused by: org.xwiki.component.manager.ComponentLookupException: Failed to lookup component [org.xwiki.environment.internal.ServletEnvironment] identified by type [interface org.xwiki.environment.Environment] and hint [null]
              at org.xwiki.component.embed.EmbeddableComponentManager.getInstance(EmbeddableComponentManager.java:204)
              at org.xwiki.component.embed.EmbeddableComponentManager.getInstance(EmbeddableComponentManager.java:189)
              at org.xwiki.container.servlet.XWikiServletContextListener.contextInitialized(XWikiServletContextListener.java:85)
              ... 41 more
      Caused by: java.util.ServiceConfigurationError: org.xwiki.component.embed.LifecycleHandler: Error reading configuration file
              at java.util.ServiceLoader.fail(ServiceLoader.java:232)
              at java.util.ServiceLoader.parse(ServiceLoader.java:309)
              at java.util.ServiceLoader.access$200(ServiceLoader.java:185)
              at java.util.ServiceLoader$LazyIterator.hasNextService(ServiceLoader.java:357)
              at java.util.ServiceLoader$LazyIterator.hasNext(ServiceLoader.java:393)
              at java.util.ServiceLoader$1.hasNext(ServiceLoader.java:474)
              at org.xwiki.component.embed.EmbeddableComponentManager.createInstance(EmbeddableComponentManager.java:364)
              at org.xwiki.component.embed.EmbeddableComponentManager.getComponentInstance(EmbeddableComponentManager.java:451)
              at org.xwiki.component.embed.EmbeddableComponentManager.getInstance(EmbeddableComponentManager.java:201)
              ... 43 more
      Caused by: java.io.FileNotFoundException: /usr/lib/xwiki/WEB-INF/lib/xwiki-commons-legacy-component-default-11.10.2.jar (No such file or directory)
              at java.util.zip.ZipFile.open(Native Method)
              at java.util.zip.ZipFile.<init>(ZipFile.java:225)
              at java.util.zip.ZipFile.<init>(ZipFile.java:155)
              at java.util.jar.JarFile.<init>(JarFile.java:166)
              at java.util.jar.JarFile.<init>(JarFile.java:103)
              at sun.net.www.protocol.jar.URLJarFile.<init>(URLJarFile.java:93)
              at sun.net.www.protocol.jar.URLJarFile.getJarFile(URLJarFile.java:69)
              at sun.net.www.protocol.jar.JarFileFactory.get(JarFileFactory.java:99)
              at sun.net.www.protocol.jar.JarURLConnection.connect(JarURLConnection.java:122)
              at sun.net.www.protocol.jar.JarURLConnection.getInputStream(JarURLConnection.java:152)
              at java.net.URL.openStream(URL.java:1068)
              at java.util.ServiceLoader.parse(ServiceLoader.java:304)
              ... 50 more
    
    • But after moving the files from Tomcat temp to “/var/lib/xwiki” the problem in this logfile where solved (~10:00 o’clock)

Other thing(s) i’ve tried:

  • Deleting the “solr” directory (Link) - hasn’t work

Has anyone of you faced same problems when upgrading to one of the mentioned versions?

I just downgraded back to “11.10.2” which works fine. I’ve already faced the same problem when tried to upgrade to “11.10.2+1”, i also just downgraded then.

More information about the system where XWiki is installed on:

OS: Ubuntu 18.04.3 LTS
XWiki: Version 11.10.2, installed as Debian (.deb) Package
DB: PostgreSQL 10.10 (from XWiki .deb)
AppServer: Tomcat9 (from XWiki .deb)
Java: openJDK8 (8u232-b09) - installed as dependency from XWiki .deb package

Update #1

  • Removing the symlink /etc/tomcat9/Catalina/localhost/xwiki.xml as suggested here - problems still exist

Here is also the “/var/log/catalina.2020-02-06.log”:

catalina.2020-02-06_1.log (901.7 KB)

Best regards,
Dolo

What does “Extensions are not working” exactly means ?

Hi Thomas, (@tmortagne)

you are right, i was in rush that day so probably my explanation wasn’t
clear and detailed enough. Sorry for that.

The macros can’t be find by wiki “Unknown macro” here are some screenshots:

  1. No menues and no panels (e. g. no navigation panel)

grafik

  1. Macros don’t work Nr. 1 (additional installed one)
    grafik

  2. Macros don’t work Nr. 2 (even core extensions/macros)
    grafik


  • I’ve tested the updated on a local VM where Short URLs are setup exactly the same way as on the production VM (where i am facing problem with xwiki updates).
    Result: This update went well on the VM

The only difference which i can think about, besides all of the content inside the production wiki, is
that on the production server i have created SQL Indexes as mentioned here.

I needed to use “md5” or “hash” for some of the indexes, otherwise the indexes were to big:
“ERROR: index row requires 15856 bytes, maximum size is 8191”

  • Here are the exactly used commands for the index creation in the PostgreSQL

    \c xwiki
    \d+ xwikilargestrings
    CREATE INDEX xwl_value ON xwikilargestrings (md5(xwl_value));
    CREATE INDEX xwd_parent ON xwikidoc (xwd_parent);
    CREATE INDEX xwd_class_xml ON xwikidoc (md5(xwd_class_xml));
    CREATE INDEX ase_page_date ON activitystream_events (ase_page, ase_date);
    (possible that one of them already exists)
    CREATE INDEX xda_docid1 ON xwikiattrecyclebin (xda_docid);
    (possible that one of them already exists)
    CREATE INDEX ase_param1 ON activitystream_events (ase_param1);
    CREATE INDEX ase_param2 ON activitystream_events (ase_param2);
    CREATE INDEX ase_param3 ON activitystream_events (ase_param3);
    CREATE INDEX ase_param4 ON activitystream_events (ase_param4);
    CREATE INDEX ase_param5 ON activitystream_events (ase_param5);

  • I’ve also tried to create the database indexes on the test VM before updating
    from 11.10.2(+1) to 11.10.3
    Result: no problems, Distribution Wizard appears after the update

Hope this information helps!

Inform me if you need more details!

Best regards & good start
Dolo

Here are the logfiles from today (i’ve tried to update again from 11.10.2 to 11.10.3 on the production VM):

localhost_access_log.2020-02-10.txt (241.3 KB)

localhost.2020-02-10.log (195 Bytes)

catalina.2020-02-10.log (709.4 KB)

Best regards,
Dolo

This sounds a lot like my problem, problem and resolution here:

https://forum.xwiki.org/t/wiki-functions-but-missing-major-functionality-after-upgrade/5380

Hi @crw,

thanks a lot for the link!

I will try this out later. At the moment i will keep 11.10.2 to not crash the wiki again :slight_smile:

Best,
Dolo