Comments (19)
Yes, the best is that you manage to set bash as the default SGE shell. Have a look to this
http://stackoverflow.com/questions/2020957/how-to-change-the-default-shell-for-the-sun-grid-engine
An alternative workaround consists in adding the following entry in your nextflow.config
:
process.clusterOptions = '-S /bin/bash'
from nextflow.
Does it run correctly without configuring the SGE executor?
Also do you launch it in a shared folder? I mean, your working directory is accessible by the cluster nodes?
from nextflow.
Unable to reproduce
from nextflow.
The pipeline works fine without SGE executor, and it’s on a cluster shared folder. I’m also able to run non-nextflow jobs on the cluster (it’s a single host cluster just for testing). I believe it’s an SGE problem, so I’ll investigate on that side. Just curious if this is a common problem for nextflow users.
—
Sent from Mailbox
On Mon, Nov 24, 2014 at 11:45 PM, Paolo Di Tommaso
[email protected] wrote:
Does it run correctly without configuring the SGE executor?
Also do you launch it in a shared folder? I mean, your working directory is accessible by the cluster nodes?
Reply to this email directly or view it on GitHub:
#21 (comment)
from nextflow.
We are using Nextflow with SGE heavily, so it should work.
In the directory where you are launching it, there is a folder starting with work/ad/b159ca
(it is the directory where the jobs is actually executed) could you tar it and attach it to this issue, so I can try to debug it?
Also you want to try to execute the pipeline using the following command:
nextflow -trace nextflow.executor.GridTaskHandler run <pipeline name>
It will dump the qsub command line used to submit the job execution.
from nextflow.
Will do (on Monday btw) .
from nextflow.
Ok, here's the output of the sub command dump:
nextflow -trace nextflow.executor.GridTaskHandler run tutorial.nf
N E X T F L O W ~ version 0.11.2
[warm up] executor > sge
TRACE: submit splitLetters (1) > cli: [qsub, -wd, /home/astewart/pipelines/pipeline1/work/6f/f5be1c08597d0961db1b75d9d888a7, -N, nf-splitLetters_1, -o, /dev/null, -j, y, -terse, -V, -notify, -q, all.q, .command.run]
TRACE: submit splitLetters (1) > exit: 0
35
[6f/f5be1c] Submitted process > splitLetters (1)
I'll attach the tarball as well.
Edit: forgot you can't upload attachments to github issues. Here's the file contents as a gist: https://gist.github.com/andrewcstewart/c91fff97ca836c65d41c
from nextflow.
When nextflow launches a job with the SGE, it looks for a file named ".exitcode" that notifies the job termination (and eventually reports the error exit status).
I don't see this file in the ones you attached. Also I've noticed that you are running the job in the SGE cluster by using the Docker engine.
It may be difficult to have Docker running with SGE. Did you try to execute that example without using the Docker feature?
from nextflow.
Hm, interesting clue. So I could try manually creating .exitcode for a frozen job and see if that forces nextflow to continue past that point. My suspicion then would be that there's something wrong with my SGE configuration. I can try to run the qsub command manually.
Yes, I've tried running it without Docker. I should have provided the simpler example. I've updated the .command files in my my gist after running without Docker: https://gist.github.com/andrewcstewart/c91fff97ca836c65d41c
from nextflow.
Yes, I would suggest that you try to replicate the problem by running the qsub command manually without using docker.
Also you may want to add the set -x
debug directive just after the shebang header in the bash script so that you will able to track what is going wrong.
from nextflow.
Yes, I already replicated the problem by running qsub without docker (I updated the gist with the results)
—
Sent from Mailbox
On Mon, Dec 1, 2014 at 1:55 PM, Paolo Di Tommaso [email protected]
wrote:
Yes, I would suggest that you try to replicate the problem by running the qsub command manually without using docker.
Also you may want to add the
set -x
debug directive just after the shebang header in the bash script so that you will able to track what is going wrong.Reply to this email directly or view it on GitHub:
#21 (comment)
from nextflow.
If so, change to the folder where the .command.run
file is and the following qsub command
qsub -wd $PWD -N nf-splitLetters_1 -o $PWD/qsub.out -j y -terse -V -notify -q all.q .command.run
Could you please then copy the content of the qsub.out
file created by it ?
from nextflow.
Sure.
Warning: no access to tty (Bad file descriptor).
Thus no job control in this shell.
Badly placed ()'s.
from nextflow.
OK, I think we got it. It looks your SGE is using a wrong shell. Try to submit the job like, before, but using the following command:
qsub -S /bin/sh -wd $PWD -N nf-splitLetters_1 -o $PWD/qsub.out -j y -terse -V -notify -q all.q .command.run
from nextflow.
Aha, that would make sense. Got a syntax error now.
Warning: no access to tty (Bad file descriptor).
Thus no job control in this shell.
Badly placed ()'s.
/var/spool/gridengine/default/napa/job_scripts/41: line 6: syntax error near unexpected token `<'
/var/spool/gridengine/default/napa/job_scripts/41: line 6: ` done < <(ps -e -o pid= -o ppid=)'
from nextflow.
Still no joy, my mistake sorry. It should be bash
not sh
. Please try this:
qsub -S /bin/bash -wd $PWD -N nf-splitLetters_1 -o $PWD/qsub.out -j y -terse -V -notify -q all.q .command.run
from nextflow.
Aha, success!
Ok, it finished with:
qsub -S /bin/bash -wd $PWD -N nf-splitLetters_1 -o $PWD/qsub.out -j y -terse -V -notify -q all.q .command.run
I now have two files, chunk_aa and chunk_ab.
So I'm guessing I need to set a default shell in SGE or modify the cextflow.config or something like that?
from nextflow.
Excellent. Thanks so much for your time! I'm stoked to try out nextflow on SGE. (I might even try to work docker back in there. That's a really sweet combo).
from nextflow.
Good! Feel free to join the Nextflow google group if you need further help or to simply share you experience with it.
https://groups.google.com/forum/#!forum/nextflow
Best, p
from nextflow.
Related Issues (20)
- Can't modify metadata using values from `each` HOT 2
- Store all .command* log files in log folder
- Google Batch Error : Process terminated for an unknown reason -- Likely it has been terminated by the external system
- Docs on running a subprocess in completion handler
- Using the the unique operator after collect causes the pipeline to stall at pipeline end HOT 1
- Surface AWS Batch time errors HOT 1
- Generate stubs from process outputs
- variable task.gpus like task.cpus. HOT 1
- Improve documentation for Azure Manage identities
- Better tests for Azure Managed Identity
- [Azure Batch]: TimeoutException when Nextflow attempts to read files following task completion for large-scale analyses in Azure HOT 8
- "Missing project main script" error when there is a directory with the workflow name HOT 1
- Nextflow creates object ending with slash during when using publishDir HOT 9
- [Nextflow + Azure Batch] Unable to find size for VM name 'Standard_E4ads_v5' and location 'germanywestcentral' HOT 8
- New introspection `workflow.seqeraPlatform` scope for data from Seqera Platform HOT 7
- Error in nxf_kill
- Azure Fusion integration should not fail when managed identity auth is present HOT 1
- Plugin did not take subcommand options
- Failed to publish: large file transfer to GCS HOT 3
- The number of completed tasks from the final report does not match the number of actually started tasks in case of an error
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from nextflow.