Uploaded image for project: 'XWiki Platform'
  1. XWiki Platform
  2. XWIKI-25754

Upgrade84FileStoreTest#upgrade is flickering because of a "No data for property [smtp_server_password]" error logged by the Solr indexer

    XMLWordPrintable

Details

    • Unknown
    • org.xwiki.test.ui.Upgrade84FileStoreTest#upgrade

    Description

      The upgrade functional tests sometimes fail on the console validation, because the XWiki server logs an error while the upgrade is in progress:

      2026-11-12 22:20:51,295 [XWiki Solr resolve thread] ERROR c.x.x.s.XWikiHibernateStore    - No data for property [smtp_server_password] of object id [-164837888023059193]
      

      Occurrences

      It did not appear in the 40 previous builds of the Environment Tests on stable-17.10.x, stable-18.4.x and master.

      Analysis

      The error is logged by XWikiHibernateStore#loadXWikiProperty when a property listed for an object has no row anymore when it is loaded. This is the race already described in SecurityCacheStressIT: a background thread (here the Solr indexer) loads a document while another thread saves it and removes or rewrites the object between the listing of its properties and their loading. SecurityCacheStressIT excludes that error for the rights properties only.

      Here the property is smtp_server_password (the mail configuration of XWikiPreferences), so some save performed during the upgrade rewrites that object while Solr indexes the document. Which save it is has not been identified yet.

      No change on the store, the mail configuration or Solr was committed just before the first occurrence. The only commits between the last run without the error and the first one with it are the 17.10.15 release, the upgrade of the standalone packaging to Jetty 12.1.15 (used by the upgrade tests), OpenNLP and a Docker test framework fix, on both branches. The Jetty upgrade may have changed the timing enough to expose the race more often (not verified).

      This is a different failure from XWIKI-24282, which also affects Upgrade84FileStoreTest.

      Stack Trace

      java.lang.AssertionError: 
      The following lines were matching forbidden content:[
      2026-11-12 22:20:51,296 [CommonsExecStreamPumper-pool-6-thread-1] - 2026-11-12 22:20:51,295 [XWiki Solr resolve thread] ERROR c.x.x.s.XWikiHibernateStore    - No data for property [smtp_server_password] of object id [-164837888023059193]  
      ]
      	at org.xwiki.test.integration.junit.LogCaptureValidator.validate(LogCaptureValidator.java:270)
      	at org.xwiki.test.integration.junit.LogCaptureValidator.validate(LogCaptureValidator.java:220)
      	at org.xwiki.test.integration.junit.LogCaptureValidator.validate(LogCaptureValidator.java:209)
      	at org.xwiki.test.integration.junit4.ValidateConsoleRule$ValidateConsoleStatement.after(ValidateConsoleRule.java:95)
      	at org.xwiki.test.integration.junit4.ValidateConsoleRule$ValidateConsoleStatement.evaluate(ValidateConsoleRule.java:78)
      

      Attachments

        Issue Links

          Activity

            People

              Unassigned Unassigned
              surli Simon Urli
              Votes:
              0 Vote for this issue
              Watchers:
              0 Start watching this issue

              Dates

                Created:
                Updated: