Skip to content

Indexing nodes with job:work (Doctrine) only applies first changes to a node: remaining are lostΒ #50

@baschny

Description

@baschny

Hi,

we just upgraded a site from Neos 4.x to Flow/Neos 7.x and were indexing nodes using the DoctrineQueue with:

./flow job:work Flowpack.ElasticSearch.ContentRepositoryQueueIndexer.Live --verbose

We see the indexing is being done when we edit nodes in the backend, and also indexed is triggered when we later publish the same node.

The problem: only the first change is stored in ES, all further changes to the node (i.e. the "publish") are not being reflected into the ES index. Just try it yourself, change the title of a node from "node1" to "node2", publish that, and then change it to "node3" etc and see what is really written in the ES.

Could you reproduce that, is it a bug? It worked before with the same setup.

It looks like there is some caching going on, and the problem only happens in the endless PHP runner (job:work without a --limit). Our workaround is thus currently:

while true; do ./flow job:work Flowpack.ElasticSearch.ContentRepositoryQueueIndexer.Live --limit 1 ; done

so that every indexing starts a fresh new PHP process.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions