简体   繁体   中英

The child node "transport" at path "enqueue_elastica" must be configured

In a Symfony 4.3 app with friendsofsymfony/elastica-bundle 5.1.0, enqueue/elastica-bundle 0.9.3, and enqueue/fs 0.9.12 installation of the latter ends with:

The child node "transport" at path "enqueue_elastica" must be configured.

I've tried multiple permutations in enqueue.yaml , including the only example I've found.

enqueue.yaml:

enqueue:
    default:
        transport: '%env(resolve:ENQUEUE_DSN)%'
        client: ~

.env includes:

###> enqueue/enqueue-bundle ###
ENQUEUE_DSN=null://
###< enqueue/enqueue-bundle 

Elasticsearch 6.8 is installed. Relatively simple indexes are readily created. A more complex index fails with running out of memory - thus the need for enqueue .

What is an appropriate configuration of enqueue.yaml for filesystem transport?

Edit: Curiously, the Ubuntu 18 Hyper-V virtual machine was able to slog through the populating without enqueue while the Windows host failed at 94200/156865.

The seemingly correct config has:

.env:

...
###> enqueue/enqueue-bundle ###
ENQUEUE_DSN="file://%VAR_DIR%/enqueue"
###< enqueue/enqueue-bundle ###

This needed to accompanied by

enqueue.yaml:

enqueue:
    default:
        transport:
            dsn: '%env(resolve:ENQUEUE_DSN)%'
            path: '%kernel.project_dir%/var/queue' ## probably just a placeholder
        client: ~

While the above avoids any errors being thrown it does not allow the populating to complete. I'm officially stuck. Time to look at reducing index complexity and multi index searches.

You should add

enqueue_elastica:
    transport: '%enqueue.default_transport%'
    doctrine: ~

In your enqueue.yaml config

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM