Search Index for Express Objects

@joaquinvaldez The first behavioral Improvement in the 9.2.2 release was to fix this. Being you’re using 9.2.2, it should just work without any modifications…

@enlil Thank you. Not sure why I am having trouble, but I can see it works from a vanilla 9.2.2 install. So thats something.

Hey team, I’m having the same issue as Joaquin. I have a new express entry and a page to display it but when I run the re-indexing, it seems to complete but there’s no new entry in the table ‘PageSearchIndex’ and there’s an error in the logs :

Messenger Worker Message Failed: /home/customer/www/nanaimoarchives.ca/public_html/updates/concrete-cms-9.2.2-remote-updater/concrete/vendor/symfony/messenger/Middleware/HandleMessageMiddleware.php:130 Handling "Concrete\Core\Command\Batch\Command\HandleBatchMessageCommand" failed: Handling "Concrete\Core\Page\Command\ReindexPageTaskCommand" failed: Could not convert database value to 'object' as an error was triggered by the unserialization: 'Failed to save key "Concrete__Core__Entity__Attribute__Set__CLASSMETADATA__" of type Doctrine\ORM\Mapping\ClassMetadata.'

I tried duplicating an existing page, then re-indexing, and that duplicated page gets an entry in the ‘PageSearchIndex’ but not the page I’m having the issue with for some reason.

…and I’m also getting exactly the same error in my logs as @fridayphoto every time I re-index my Express objects (clear and rebuild). I’m running concrete-cms-9.2.6 and am new to both v.9 and to working with Express. Everything appears to be working OK, as far as my inexperienced eye can see, but I don’t like to see errors in the logs and I have no idea what’s causing them. As I near completion of the particular project I’m working on, I will soon be clearing down all my test data/entries, so I will then run the re-indexer again and see if the error disappears.

I just thought you might like to know that this issue is not a one-off.

Messenger Worker Message Failed: [snip] /concrete/vendor/symfony/messenger/Middleware/HandleMessageMiddleware.php:130 Handling "Concrete\Core\Command\Batch\Command\HandleBatchMessageCommand" failed: Handling "Concrete\Core\Express\Command\ReindexEntryTaskCommand" failed: Could not convert database value to 'object' as an error was triggered by the unserialization: 'Failed to save key "Concrete__Core__Entity__Attribute__Category__CLASSMETADATA__" of type Doctrine\ORM\Mapping\ClassMetadata.'

I have extended Concrete\Block\ExpressEntryDetail\Controller, but only to add a couple of ajax handlers that read data - nothing that writes anything. If I remove the controller extension, I still get the error.

EDIT: I was wrong: reindexing (clear and rebuild) does NOT rebuild the contents of FooBarExpressSearchIndexAttributes! It adds the first two records (in order of IDs), but then fails to add any more. The task gives the impression that all is well but I have to manually open (for edit) and save each record in order to rebuild FooBarExpressSearchIndexAttributes.

I’ve checked the contents of the third record but nothing is untoward. I ran the reindexer again but this time, only the first record (ID:1) was processed. The error seems to be generated for every record that fails to be indexed.