ext-solr icon indicating copy to clipboard operation
ext-solr copied to clipboard

[BUG] Constants not filled during building queue via RecordMonitor + DataUpdateHandler

Open georgringer opened this issue 2 months ago • 1 comments

Got a multi site environment and having a settings file config/sites/at/settings.yaml with

redirects:
  autoCreateRedirects: false
pages:
  top: 43
  addresses-pid: 70,12

and a solr TypoScript

plugin.tx_solr {
    index {
        queue {
            address = 1
            address {
                additionalWhereClause = pid IN({$pages.addresses-pid})
...

works fine when filling the queue via backend module but not when saving the record in the backend (e.g. as editor) as this leads to a mysql exception. Debugging it shows that building up the query via DataHandler > Domain/Index/Queue/RecordMonitor/Helper/RootPageResolver.php > ... > ConfigurationAwareRecordService > BackendUtility::getRecord that the constant is not substituted.

However during the same request this code is called multiple times and some calls got the constants replaced correctly but it seems one is missing a proper initialization.

To Reproduce

See above

Used versions (please complete the following information):

  • TYPO3 Version: 12.4.14
  • EXT:solr Version: 12.0.2

georgringer avatar May 06 '24 07:05 georgringer