Nextflow not communicating back to Seqera

I am experiencing a communication issue between Nextflow and Seqera on a custom pipeline running on AWS Batch. I can submit the run via Seqera Launchpad, and the job runs successfully on AWS Batch. Seqera captures the Nextflow execution log, which reports “Pipeline completed successfully". However, Seqera does not perform any real-time monitoring of Tasks, and reports that the “Workflow execution completed unsuccessfully.”

The Seqera execution log does produce this warning:

WARN: Unable to serialize key=workflow.manifest; value=nextflow.config.Manifest@3333b099; type=nextflow.config.Manifest -- Cause: Cannot invoke "java.util.Collection.stream()" because "

And the Nextflow log reports this error:

Sep-02 01:52:44.827 [main] DEBUG io.seqera.tower.plugin.TowerClient - Unexpected HTTP response
- endpoint    : https://api.cloud.seqera.io/trace/421L6OnqZrcho3/begin?workspaceId=12346012330283
- status code : 400
- response msg: {“message”:“Unexpected error while processing request - Error ID: 4ld9ZgPvBjPlhX5kCfz09T”}
Sep-02 01:52:44.829 [main] DEBUG nextflow.Session - Unexpected error while processing request - Error ID: 4ld9ZgPvBjPlhX5kCfz09Tnextflow.exception.AbortOperationException: Unexpected error while processing request - Error ID: 4ld9ZgPvBjPlhX5kCfz09Tat io.seqera.tower.plugin.TowerClient.onFlowBegin(TowerClient.groovy:371)at nextflow.Session$_notifyFlowBegin_lambda38.doCall(Session.groovy:1088)at nextflow.Session.notifyEvent(Session.groovy:1138)at nextflow.Session.notifyFlowBegin(Session.groovy:1088)at nextflow.Session.fireDataflowNetwork(Session.groovy:530)at nextflow.script.ScriptRunner.run(ScriptRunner.groovy:250)at nextflow.script.ScriptRunner.execute(ScriptRunner.groovy:139)at nextflow.cli.CmdRun.run(CmdRun.groovy:379)at nextflow.cli.Launcher.run(Launcher.groovy:513)at nextflow.cli.Launcher.main(Launcher.groovy:673)

and

Sep-02 02:51:45.233 [main] DEBUG nextflow.Session - Cannot invoke “java.lang.Thread.join()” because “this.sender” is null
java.lang.NullPointerException: Cannot invoke “java.lang.Thread.join()” because “this.sender” is null
at io.seqera.tower.plugin.TowerClient.onFlowComplete(TowerClient.groovy:403)
at nextflow.Session$_notifyFlowComplete_lambda45.doCall(Session.groovy:1107)
at nextflow.Session.notifyEvent(Session.groovy:1138)
at nextflow.Session.notifyFlowComplete(Session.groovy:1107)
at nextflow.Session.shutdown0(Session.groovy:768)
at nextflow.Session.destroy(Session.groovy:713)
at nextflow.script.ScriptRunner.shutdown(ScriptRunner.groovy:263)
at nextflow.script.ScriptRunner.execute(ScriptRunner.groovy:147)
at nextflow.cli.CmdRun.run(CmdRun.groovy:379)
at nextflow.cli.Launcher.run(Launcher.groovy:513)
at nextflow.cli.Launcher.main(Launcher.groovy:673)

Complete logs are attached.

seqera-421L6OnqZrcho3.log (5.5 KB)

nf-421L6OnqZrcho3.txt (5.7 KB)

nf-421L6OnqZrcho3.log (84.2 KB)

All of my other pipelines work correctly, so I don’t think it’s a problem with workspace credentials.

Was able to resolve this myself. The issue was with the contributors block in the manifest section of nextflow.config:

manifest {
    contributors    = [
        [
            name: 'Josh Hamilton'
        ]
    ]
}

Removing this block fixed the issue.

Hi Josh

Thanks for the bug report. I had a closer look, and I see now that Nextflow requires that each contributor has a “contribution” type (‘author’, ‘maintainer’, or ‘contributor’). This is an unintentional hard requirement, and should be a quick fix.

I’ve written up the bug report here: Cannot parse manifest.contributors without contribution field. · Issue #6382 · nextflow-io/nextflow · GitHub

I think this can be fixed in a couple of lines, so I’ll try to get the change merged asap.

In the meantime, can you test to see if this configuration works:

manifest {
    contributors = [
        [
            name: 'Josh Hamilton',
            contribution: ['author']
        ]
    ]
}

1 Like

This topic was automatically closed 7 days after the last reply. New replies are no longer allowed.