commit 9e75f44f1acdf35c2b091b900a920ddc21bad0f0 Author: Olamide Isreal Date: Mon Jul 27 21:59:52 2026 +0100 Digital Trials pipeline configured for WES Source-only snapshot of the cluster branch for WES execution. Large reference files (HPA/MANE/ensemble FASTA, model weights, ~597 MB) are omitted: they are baked into the container images at build time and mounted from the dreamdock-data PVC at runtime, and exceed the Gitea request size limit. Pipeline entry point is main.nf, which orchestrates the biotransformer, conplex and tissue modules as a single workflow. Ligand inputs are read from the eureka workspace; protein_zarr and chembl_db come from the dreamdock-data PVC. diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..c2f3b62 --- /dev/null +++ b/.gitignore @@ -0,0 +1,12 @@ +work +.nextflow +*.ignored +ncbiproteins_seq* + +/input/ + +# Large STRING-DB reference files (baked into Docker image, not needed in git) +app_network/9606.protein.aliases.v12.0.txt +app_network/9606.protein.enrichment.terms.v12.0.txt +app_network/9606.protein.links.detailed.v12.0.txt +app_network/9606.protein.links.v12.0.txt \ No newline at end of file diff --git a/.nextflow.log b/.nextflow.log new file mode 100644 index 0000000..5fb2b0b --- /dev/null +++ b/.nextflow.log @@ -0,0 +1,79 @@ +Apr-03 17:30:46.267 [main] DEBUG nextflow.cli.Launcher - $> nextflow run test_string_only.nf -params-file /data/runs/R01-caline-nac_similar/J15-string/params.json +Apr-03 17:30:46.687 [main] DEBUG nextflow.cli.CmdRun - N E X T F L O W ~ version 25.04.3 +Apr-03 17:30:46.758 [main] DEBUG nextflow.plugin.PluginsFacade - Setting up plugin manager > mode=prod; embedded=false; plugins-dir=/home/omic/.nextflow/plugins; core-plugins: nf-amazon@2.15.0,nf-azure@1.16.0,nf-cloudcache@0.4.3,nf-codecommit@0.2.3,nf-console@1.2.1,nf-google@1.21.0,nf-k8s@1.0.0,nf-tower@1.11.3,nf-wave@1.12.1 +Apr-03 17:30:46.876 [main] INFO o.pf4j.DefaultPluginStatusProvider - Enabled plugins: [] +Apr-03 17:30:46.878 [main] INFO o.pf4j.DefaultPluginStatusProvider - Disabled plugins: [] +Apr-03 17:30:46.882 [main] INFO org.pf4j.DefaultPluginManager - PF4J version 3.12.0 in 'deployment' mode +Apr-03 17:30:46.898 [main] INFO org.pf4j.AbstractPluginManager - No plugins +Apr-03 17:30:46.926 [main] DEBUG nextflow.config.ConfigBuilder - Found config local: /data/bugra/digital_trials/nextflow.config +Apr-03 17:30:46.930 [main] DEBUG nextflow.config.ConfigBuilder - Parsing config file: /data/bugra/digital_trials/nextflow.config +Apr-03 17:30:46.985 [main] DEBUG n.secret.LocalSecretsProvider - Secrets store: /home/omic/.nextflow/secrets/store.json +Apr-03 17:30:46.991 [main] DEBUG nextflow.secret.SecretsLoader - Discovered secrets providers: [nextflow.secret.LocalSecretsProvider@6ef81f31] - activable => nextflow.secret.LocalSecretsProvider@6ef81f31 +Apr-03 17:30:47.022 [main] DEBUG nextflow.config.ConfigBuilder - Applying config profile: `standard` +Apr-03 17:30:47.826 [main] DEBUG nextflow.cli.CmdRun - Applied DSL=2 from script declaration +Apr-03 17:30:47.850 [main] DEBUG nextflow.cli.CmdRun - Launching `test_string_only.nf` [deadly_faggin] DSL2 - revision: 8e3db5067a +Apr-03 17:30:47.852 [main] DEBUG nextflow.plugin.PluginsFacade - Plugins default=[] +Apr-03 17:30:47.853 [main] DEBUG nextflow.plugin.PluginsFacade - Plugins resolved requirement=[nf-tower@1.11.3] +Apr-03 17:30:47.855 [main] DEBUG nextflow.plugin.PluginUpdater - Installing plugin nf-tower version: 1.11.3 +Apr-03 17:30:47.877 [main] INFO org.pf4j.AbstractPluginManager - Plugin 'nf-tower@1.11.3' resolved +Apr-03 17:30:47.877 [main] INFO org.pf4j.AbstractPluginManager - Start plugin 'nf-tower@1.11.3' +Apr-03 17:30:47.962 [main] DEBUG nextflow.plugin.BasePlugin - Plugin started nf-tower@1.11.3 +Apr-03 17:30:48.062 [main] DEBUG nextflow.Session - Session UUID: 4c59e728-8373-423d-b172-5781faf18d0f +Apr-03 17:30:48.062 [main] DEBUG nextflow.Session - Run name: deadly_faggin +Apr-03 17:30:48.063 [main] DEBUG nextflow.Session - Executor pool size: 80 +Apr-03 17:30:48.073 [main] DEBUG nextflow.file.FilePorter - File porter settings maxRetries=3; maxTransfers=50; pollTimeout=null +Apr-03 17:30:48.081 [main] DEBUG nextflow.util.ThreadPoolBuilder - Creating thread pool 'FileTransfer' minSize=10; maxSize=240; workQueue=LinkedBlockingQueue[-1]; allowCoreThreadTimeout=false +Apr-03 17:30:48.208 [main] DEBUG nextflow.cli.CmdRun - + Version: 25.04.3 build 5949 + Created: 02-06-2025 20:56 UTC + System: Linux 6.11.0-26-generic + Runtime: Groovy 4.0.26 on OpenJDK 64-Bit Server VM 21.0.7+6-Ubuntu-0ubuntu124.04 + Encoding: UTF-8 (UTF-8) + Process: 2896370@k8s-node23 [127.0.1.1] + CPUs: 80 - Mem: 251.6 GB (184.8 GB) - Swap: 0 (0) +Apr-03 17:30:48.264 [main] DEBUG nextflow.Session - Work-dir: /data/bugra/digital_trials/work [btrfs] +Apr-03 17:30:48.265 [main] DEBUG nextflow.Session - Script base path does not exist or is not a directory: /data/bugra/digital_trials/bin +Apr-03 17:30:48.294 [main] DEBUG nextflow.executor.ExecutorFactory - Extension executors providers=[] +Apr-03 17:30:48.318 [main] DEBUG nextflow.Session - Observer factory: DefaultObserverFactory +Apr-03 17:30:48.323 [main] DEBUG nextflow.Session - Observer factory: TowerFactory +Apr-03 17:30:48.325 [main] DEBUG nextflow.Session - Observer factory (v2): LinObserverFactory +Apr-03 17:30:48.355 [main] DEBUG nextflow.cache.CacheFactory - Using Nextflow cache factory: nextflow.cache.DefaultCacheFactory +Apr-03 17:30:48.372 [main] DEBUG nextflow.util.CustomThreadPool - Creating default thread pool > poolSize: 81; maxThreads: 1000 +Apr-03 17:30:48.619 [main] DEBUG nextflow.Session - Session start +Apr-03 17:30:48.966 [main] DEBUG nextflow.script.ScriptRunner - > Launching execution +Apr-03 17:30:49.582 [main] DEBUG nextflow.executor.ExecutorFactory - << taskConfig executor: null +Apr-03 17:30:49.583 [main] DEBUG nextflow.executor.ExecutorFactory - >> processorType: 'local' +Apr-03 17:30:49.590 [main] DEBUG nextflow.executor.Executor - [warm up] executor > local +Apr-03 17:30:49.601 [main] DEBUG n.processor.LocalPollingMonitor - Creating local task monitor for executor 'local' > cpus=80; memory=251.6 GB; capacity=80; pollInterval=100ms; dumpInterval=5m +Apr-03 17:30:49.604 [main] DEBUG n.processor.TaskPollingMonitor - >>> barrier register (monitor: local) +Apr-03 17:30:49.637 [main] DEBUG nextflow.processor.TaskProcessor - Creating process 'NETWORK_ENRICHMENT': maxForks=0; fair=false; array=0 +Apr-03 17:30:49.680 [main] DEBUG nextflow.Session - Workflow process names [dsl2]: CONPLEX, MERGE_DRUG, MERGE_INTERACTIONS, NETWORK_ENRICHMENT, PREPROCESS_PROTEIN +Apr-03 17:30:49.682 [main] DEBUG nextflow.Session - Igniting dataflow network (2) +Apr-03 17:30:49.684 [main] DEBUG nextflow.processor.TaskProcessor - Starting process > NETWORK_ENRICHMENT +Apr-03 17:30:49.685 [main] DEBUG nextflow.script.ScriptRunner - Parsed script files: + Script_98e4d45ae72cf7d4: /data/bugra/digital_trials/test_string_only.nf + Script_158116c0b930c4dd: /data/bugra/digital_trials/main_conplex.nf +Apr-03 17:30:49.685 [main] DEBUG nextflow.script.ScriptRunner - > Awaiting termination +Apr-03 17:30:49.685 [main] DEBUG nextflow.Session - Session await +Apr-03 17:30:49.974 [Task submitter] DEBUG n.executor.local.LocalTaskHandler - Launch cmd line: /bin/bash -ue .command.run +Apr-03 17:30:49.979 [Task submitter] INFO nextflow.Session - [eb/7f494f] Submitted process > NETWORK_ENRICHMENT (1) +Apr-03 17:30:49.996 [Task submitter] DEBUG n.executor.local.LocalTaskHandler - Launch cmd line: /bin/bash -ue .command.run +Apr-03 17:30:49.997 [Task submitter] INFO nextflow.Session - [e9/27e18e] Submitted process > NETWORK_ENRICHMENT (2) +Apr-03 17:30:50.004 [Task submitter] DEBUG n.executor.local.LocalTaskHandler - Launch cmd line: /bin/bash -ue .command.run +Apr-03 17:30:50.004 [Task submitter] INFO nextflow.Session - [d2/7834f1] Submitted process > NETWORK_ENRICHMENT (3) +Apr-03 17:31:00.726 [Task monitor] DEBUG n.processor.TaskPollingMonitor - Task completed > TaskHandler[id: 3; name: NETWORK_ENRICHMENT (3); status: COMPLETED; exit: 0; error: -; workDir: /data/bugra/digital_trials/work/d2/7834f119d9556ee05e00daf44d874b] +Apr-03 17:31:00.728 [Task monitor] DEBUG nextflow.util.ThreadPoolBuilder - Creating thread pool 'TaskFinalizer' minSize=10; maxSize=240; workQueue=LinkedBlockingQueue[-1]; allowCoreThreadTimeout=false +Apr-03 17:31:00.850 [TaskFinalizer-1] DEBUG nextflow.util.ThreadPoolBuilder - Creating thread pool 'PublishDir' minSize=10; maxSize=240; workQueue=LinkedBlockingQueue[-1]; allowCoreThreadTimeout=false +Apr-03 17:31:02.158 [Task monitor] DEBUG n.processor.TaskPollingMonitor - Task completed > TaskHandler[id: 2; name: NETWORK_ENRICHMENT (2); status: COMPLETED; exit: 0; error: -; workDir: /data/bugra/digital_trials/work/e9/27e18e08e53e0c4d45c5407deebea2] +Apr-03 17:31:02.185 [Task monitor] DEBUG n.processor.TaskPollingMonitor - Task completed > TaskHandler[id: 1; name: NETWORK_ENRICHMENT (1); status: COMPLETED; exit: 0; error: -; workDir: /data/bugra/digital_trials/work/eb/7f494fae594fe3be1f36cd54af9382] +Apr-03 17:31:02.198 [main] DEBUG nextflow.Session - Session await > all processes finished +Apr-03 17:31:02.288 [Task monitor] DEBUG n.processor.TaskPollingMonitor - <<< barrier arrives (monitor: local) - terminating tasks monitor poll loop +Apr-03 17:31:02.288 [main] DEBUG nextflow.Session - Session await > all barriers passed +Apr-03 17:31:02.291 [main] DEBUG nextflow.util.ThreadPoolManager - Thread pool 'TaskFinalizer' shutdown completed (hard=false) +Apr-03 17:31:02.292 [main] DEBUG nextflow.util.ThreadPoolManager - Thread pool 'PublishDir' shutdown completed (hard=false) +Apr-03 17:31:02.307 [main] DEBUG n.trace.WorkflowStatsObserver - Workflow completed > WorkflowStats[succeededCount=3; failedCount=0; ignoredCount=0; cachedCount=0; pendingCount=0; submittedCount=0; runningCount=0; retriesCount=0; abortedCount=0; succeedDuration=35s; failedDuration=0ms; cachedDuration=0ms;loadCpus=0; loadMemory=0; peakRunning=3; peakCpus=3; peakMemory=3 GB; ] +Apr-03 17:31:02.512 [main] DEBUG nextflow.cache.CacheDB - Closing CacheDB done +Apr-03 17:31:02.595 [main] INFO org.pf4j.AbstractPluginManager - Stop plugin 'nf-tower@1.11.3' +Apr-03 17:31:02.595 [main] DEBUG nextflow.plugin.BasePlugin - Plugin stopped nf-tower +Apr-03 17:31:02.597 [main] DEBUG nextflow.util.ThreadPoolManager - Thread pool 'FileTransfer' shutdown completed (hard=false) +Apr-03 17:31:02.597 [main] DEBUG nextflow.script.ScriptRunner - > Execution complete -- Goodbye diff --git a/.nextflow.log.1 b/.nextflow.log.1 new file mode 100644 index 0000000..fffcfb3 --- /dev/null +++ b/.nextflow.log.1 @@ -0,0 +1,757 @@ +Mar-23 12:31:42.184 [main] DEBUG nextflow.cli.Launcher - $> nextflow run test.nf -params-file /data/runs/R01-caline-nac_similar/J02-digtrial/params.json +Mar-23 12:31:42.570 [main] DEBUG nextflow.cli.CmdRun - N E X T F L O W ~ version 25.04.3 +Mar-23 12:31:42.599 [main] DEBUG nextflow.plugin.PluginsFacade - Setting up plugin manager > mode=prod; embedded=false; plugins-dir=/home/omic/.nextflow/plugins; core-plugins: nf-amazon@2.15.0,nf-azure@1.16.0,nf-cloudcache@0.4.3,nf-codecommit@0.2.3,nf-console@1.2.1,nf-google@1.21.0,nf-k8s@1.0.0,nf-tower@1.11.3,nf-wave@1.12.1 +Mar-23 12:31:42.635 [main] INFO o.pf4j.DefaultPluginStatusProvider - Enabled plugins: [] +Mar-23 12:31:42.636 [main] INFO o.pf4j.DefaultPluginStatusProvider - Disabled plugins: [] +Mar-23 12:31:42.639 [main] INFO org.pf4j.DefaultPluginManager - PF4J version 3.12.0 in 'deployment' mode +Mar-23 12:31:42.653 [main] INFO org.pf4j.AbstractPluginManager - No plugins +Mar-23 12:31:42.679 [main] DEBUG nextflow.config.ConfigBuilder - Found config local: /data/bugra/digital_trials/nextflow.config +Mar-23 12:31:42.682 [main] DEBUG nextflow.config.ConfigBuilder - Parsing config file: /data/bugra/digital_trials/nextflow.config +Mar-23 12:31:42.722 [main] DEBUG n.secret.LocalSecretsProvider - Secrets store: /home/omic/.nextflow/secrets/store.json +Mar-23 12:31:42.727 [main] DEBUG nextflow.secret.SecretsLoader - Discovered secrets providers: [nextflow.secret.LocalSecretsProvider@6ef81f31] - activable => nextflow.secret.LocalSecretsProvider@6ef81f31 +Mar-23 12:31:42.756 [main] DEBUG nextflow.config.ConfigBuilder - Applying config profile: `standard` +Mar-23 12:31:43.516 [main] DEBUG nextflow.cli.CmdRun - Applied DSL=2 from script declaration +Mar-23 12:31:43.541 [main] DEBUG nextflow.cli.CmdRun - Launching `test.nf` [distraught_dijkstra] DSL2 - revision: 0e14afbd94 +Mar-23 12:31:43.543 [main] DEBUG nextflow.plugin.PluginsFacade - Plugins default=[] +Mar-23 12:31:43.544 [main] DEBUG nextflow.plugin.PluginsFacade - Plugins resolved requirement=[nf-tower@1.11.3] +Mar-23 12:31:43.547 [main] DEBUG nextflow.plugin.PluginUpdater - Installing plugin nf-tower version: 1.11.3 +Mar-23 12:31:43.560 [main] INFO org.pf4j.AbstractPluginManager - Plugin 'nf-tower@1.11.3' resolved +Mar-23 12:31:43.561 [main] INFO org.pf4j.AbstractPluginManager - Start plugin 'nf-tower@1.11.3' +Mar-23 12:31:43.580 [main] DEBUG nextflow.plugin.BasePlugin - Plugin started nf-tower@1.11.3 +Mar-23 12:31:43.662 [main] DEBUG nextflow.Session - Session UUID: df1066b0-f8aa-4422-8387-039b7127dc16 +Mar-23 12:31:43.663 [main] DEBUG nextflow.Session - Run name: distraught_dijkstra +Mar-23 12:31:43.664 [main] DEBUG nextflow.Session - Executor pool size: 80 +Mar-23 12:31:43.677 [main] DEBUG nextflow.file.FilePorter - File porter settings maxRetries=3; maxTransfers=50; pollTimeout=null +Mar-23 12:31:43.686 [main] DEBUG nextflow.util.ThreadPoolBuilder - Creating thread pool 'FileTransfer' minSize=10; maxSize=240; workQueue=LinkedBlockingQueue[-1]; allowCoreThreadTimeout=false +Mar-23 12:31:43.723 [main] DEBUG nextflow.cli.CmdRun - + Version: 25.04.3 build 5949 + Created: 02-06-2025 20:56 UTC + System: Linux 6.11.0-26-generic + Runtime: Groovy 4.0.26 on OpenJDK 64-Bit Server VM 21.0.7+6-Ubuntu-0ubuntu124.04 + Encoding: UTF-8 (UTF-8) + Process: 3209064@k8s-node23 [127.0.1.1] + CPUs: 80 - Mem: 251.6 GB (174.9 GB) - Swap: 0 (0) +Mar-23 12:31:43.756 [main] DEBUG nextflow.Session - Work-dir: /data/bugra/digital_trials/work [btrfs] +Mar-23 12:31:43.757 [main] DEBUG nextflow.Session - Script base path does not exist or is not a directory: /data/bugra/digital_trials/bin +Mar-23 12:31:43.773 [main] DEBUG nextflow.executor.ExecutorFactory - Extension executors providers=[] +Mar-23 12:31:43.789 [main] DEBUG nextflow.Session - Observer factory: DefaultObserverFactory +Mar-23 12:31:43.795 [main] DEBUG nextflow.Session - Observer factory: TowerFactory +Mar-23 12:31:43.798 [main] DEBUG nextflow.Session - Observer factory (v2): LinObserverFactory +Mar-23 12:31:43.832 [main] DEBUG nextflow.cache.CacheFactory - Using Nextflow cache factory: nextflow.cache.DefaultCacheFactory +Mar-23 12:31:43.844 [main] DEBUG nextflow.util.CustomThreadPool - Creating default thread pool > poolSize: 81; maxThreads: 1000 +Mar-23 12:31:44.024 [main] DEBUG nextflow.Session - Session start +Mar-23 12:31:44.500 [main] DEBUG nextflow.script.ScriptRunner - > Launching execution +Mar-23 12:31:45.370 [main] DEBUG nextflow.executor.ExecutorFactory - << taskConfig executor: null +Mar-23 12:31:45.371 [main] DEBUG nextflow.executor.ExecutorFactory - >> processorType: 'local' +Mar-23 12:31:45.378 [main] DEBUG nextflow.executor.Executor - [warm up] executor > local +Mar-23 12:31:45.388 [main] DEBUG n.processor.LocalPollingMonitor - Creating local task monitor for executor 'local' > cpus=80; memory=251.6 GB; capacity=80; pollInterval=100ms; dumpInterval=5m +Mar-23 12:31:45.391 [main] DEBUG n.processor.TaskPollingMonitor - >>> barrier register (monitor: local) +Mar-23 12:31:45.425 [main] DEBUG nextflow.processor.TaskProcessor - Creating process 'HUMAN_TRANSFORMER': maxForks=0; fair=false; array=0 +Mar-23 12:31:45.535 [main] DEBUG nextflow.executor.ExecutorFactory - << taskConfig executor: null +Mar-23 12:31:45.536 [main] DEBUG nextflow.executor.ExecutorFactory - >> processorType: 'local' +Mar-23 12:31:45.538 [main] DEBUG nextflow.processor.TaskProcessor - Creating process 'GET_FINAL_METABOLITES_STATIC': maxForks=0; fair=false; array=0 +Mar-23 12:31:45.551 [main] DEBUG nextflow.script.ProcessConfig - Config settings `withLabel:gpu_process` matches labels `gpu_process` for process with name PREPROCESS_PROTEIN +Mar-23 12:31:45.556 [main] DEBUG nextflow.executor.ExecutorFactory - << taskConfig executor: null +Mar-23 12:31:45.556 [main] DEBUG nextflow.executor.ExecutorFactory - >> processorType: 'local' +Mar-23 12:31:45.558 [main] DEBUG nextflow.processor.TaskProcessor - Creating process 'PREPROCESS_PROTEIN': maxForks=0; fair=false; array=0 +Mar-23 12:31:45.616 [main] DEBUG nextflow.executor.ExecutorFactory - << taskConfig executor: null +Mar-23 12:31:45.616 [main] DEBUG nextflow.executor.ExecutorFactory - >> processorType: 'local' +Mar-23 12:31:45.617 [main] DEBUG nextflow.processor.TaskProcessor - Creating process 'CONPLEX_ALL': maxForks=0; fair=false; array=0 +Mar-23 12:31:45.648 [main] DEBUG nextflow.executor.ExecutorFactory - << taskConfig executor: null +Mar-23 12:31:45.648 [main] DEBUG nextflow.executor.ExecutorFactory - >> processorType: 'local' +Mar-23 12:31:45.649 [main] DEBUG nextflow.processor.TaskProcessor - Creating process 'NETWORK_ENRICHMENT': maxForks=0; fair=false; array=0 +Mar-23 12:31:45.657 [main] DEBUG nextflow.executor.ExecutorFactory - << taskConfig executor: null +Mar-23 12:31:45.657 [main] DEBUG nextflow.executor.ExecutorFactory - >> processorType: 'local' +Mar-23 12:31:45.658 [main] DEBUG nextflow.processor.TaskProcessor - Creating process 'TISSUE_DISTRIBUTION': maxForks=0; fair=false; array=0 +Mar-23 12:31:45.669 [main] DEBUG nextflow.executor.ExecutorFactory - << taskConfig executor: null +Mar-23 12:31:45.669 [main] DEBUG nextflow.executor.ExecutorFactory - >> processorType: 'local' +Mar-23 12:31:45.670 [main] DEBUG nextflow.processor.TaskProcessor - Creating process 'BIO_METRICS': maxForks=0; fair=false; array=0 +Mar-23 12:31:45.673 [main] DEBUG nextflow.Session - Workflow process names [dsl2]: HUMAN_TRANSFORMER, METABOLITES_BY_MASS, GET_FINAL_METABOLITES_STATIC, CONPLEX_ALL, NETWORK_ENRICHMENT, GET_FINAL_METABOLITES, CONPLEX, BIO_METRICS, SUPER_TRANSFORMER, TISSUE_DISTRIBUTION, MERGE_DRUG, MERGE_INTERACTIONS, PREPROCESS_PROTEIN, ORDERED_SEQUENCE +Mar-23 12:31:45.676 [main] DEBUG nextflow.Session - Igniting dataflow network (11) +Mar-23 12:31:45.683 [main] DEBUG nextflow.processor.TaskProcessor - Starting process > HUMAN_TRANSFORMER +Mar-23 12:31:45.684 [main] DEBUG nextflow.processor.TaskProcessor - Starting process > GET_FINAL_METABOLITES_STATIC +Mar-23 12:31:45.685 [main] DEBUG nextflow.processor.TaskProcessor - Starting process > PREPROCESS_PROTEIN +Mar-23 12:31:45.686 [PathVisitor-3] DEBUG nextflow.file.PathVisitor - files for syntax: glob; folder: /mnt/dreamdock-data/digital_trials/input/blank/; pattern: *.fasta; options: [:] +Mar-23 12:31:45.686 [PathVisitor-1] DEBUG nextflow.file.PathVisitor - files for syntax: glob; folder: /data/runs/R01-caline-nac_similar/input/ligands/; pattern: *.csv; options: [:] +Mar-23 12:31:45.686 [main] DEBUG nextflow.processor.TaskProcessor - Starting process > CONPLEX_ALL +Mar-23 12:31:45.687 [main] DEBUG nextflow.processor.TaskProcessor - Starting process > NETWORK_ENRICHMENT +Mar-23 12:31:45.687 [main] DEBUG nextflow.processor.TaskProcessor - Starting process > TISSUE_DISTRIBUTION +Mar-23 12:31:45.688 [main] DEBUG nextflow.processor.TaskProcessor - Starting process > BIO_METRICS +Mar-23 12:31:45.689 [main] DEBUG nextflow.script.ScriptRunner - Parsed script files: + Script_d345b7a65a8f3255: /data/bugra/digital_trials/main_conplex.nf + Script_ec2c89c0dbf76553: /data/bugra/digital_trials/test.nf + Script_e613579b607a4f34: /data/bugra/digital_trials/main_biotransformer.nf + Script_ec01f2a38db15aa5: /data/bugra/digital_trials/main_tissue.nf +Mar-23 12:31:45.689 [main] DEBUG nextflow.script.ScriptRunner - > Awaiting termination +Mar-23 12:31:45.689 [main] DEBUG nextflow.Session - Session await +Mar-23 12:31:45.997 [Task submitter] DEBUG n.executor.local.LocalTaskHandler - Launch cmd line: /bin/bash -ue .command.run +Mar-23 12:31:46.000 [Task submitter] INFO nextflow.Session - [11/907b6d] Submitted process > HUMAN_TRANSFORMER (27) +Mar-23 12:31:46.011 [Task submitter] DEBUG n.executor.local.LocalTaskHandler - Launch cmd line: /bin/bash -ue .command.run +Mar-23 12:31:46.012 [Task submitter] INFO nextflow.Session - [dc/09507c] Submitted process > HUMAN_TRANSFORMER (20) +Mar-23 12:31:46.018 [Task submitter] DEBUG n.executor.local.LocalTaskHandler - Launch cmd line: /bin/bash -ue .command.run +Mar-23 12:31:46.019 [Task submitter] INFO nextflow.Session - [20/1a7d4d] Submitted process > HUMAN_TRANSFORMER (17) +Mar-23 12:31:46.025 [Task submitter] DEBUG n.executor.local.LocalTaskHandler - Launch cmd line: /bin/bash -ue .command.run +Mar-23 12:31:46.025 [Task submitter] INFO nextflow.Session - [ae/d4edcb] Submitted process > HUMAN_TRANSFORMER (21) +Mar-23 12:31:46.030 [Task submitter] DEBUG n.executor.local.LocalTaskHandler - Launch cmd line: /bin/bash -ue .command.run +Mar-23 12:31:46.031 [Task submitter] INFO nextflow.Session - [66/85b2c7] Submitted process > HUMAN_TRANSFORMER (23) +Mar-23 12:31:46.037 [Task submitter] DEBUG n.executor.local.LocalTaskHandler - Launch cmd line: /bin/bash -ue .command.run +Mar-23 12:31:46.037 [Task submitter] INFO nextflow.Session - [f7/f16540] Submitted process > HUMAN_TRANSFORMER (2) +Mar-23 12:31:46.042 [Task submitter] DEBUG n.executor.local.LocalTaskHandler - Launch cmd line: /bin/bash -ue .command.run +Mar-23 12:31:46.042 [Task submitter] INFO nextflow.Session - [f1/b1e309] Submitted process > HUMAN_TRANSFORMER (16) +Mar-23 12:31:46.047 [Task submitter] DEBUG n.executor.local.LocalTaskHandler - Launch cmd line: /bin/bash -ue .command.run +Mar-23 12:31:46.048 [Task submitter] INFO nextflow.Session - [1e/26e912] Submitted process > HUMAN_TRANSFORMER (14) +Mar-23 12:31:46.053 [Task submitter] DEBUG n.executor.local.LocalTaskHandler - Launch cmd line: /bin/bash -ue .command.run +Mar-23 12:31:46.053 [Task submitter] INFO nextflow.Session - [f3/2167e6] Submitted process > HUMAN_TRANSFORMER (4) +Mar-23 12:31:46.058 [Task submitter] DEBUG n.executor.local.LocalTaskHandler - Launch cmd line: /bin/bash -ue .command.run +Mar-23 12:31:46.059 [Task submitter] INFO nextflow.Session - [c2/2ce2ac] Submitted process > HUMAN_TRANSFORMER (1) +Mar-23 12:31:46.065 [Task submitter] DEBUG n.executor.local.LocalTaskHandler - Launch cmd line: /bin/bash -ue .command.run +Mar-23 12:31:46.065 [Task submitter] INFO nextflow.Session - [9c/107234] Submitted process > HUMAN_TRANSFORMER (22) +Mar-23 12:31:46.070 [Task submitter] DEBUG n.executor.local.LocalTaskHandler - Launch cmd line: /bin/bash -ue .command.run +Mar-23 12:31:46.071 [Task submitter] INFO nextflow.Session - [02/506940] Submitted process > HUMAN_TRANSFORMER (8) +Mar-23 12:31:46.076 [Task submitter] DEBUG n.executor.local.LocalTaskHandler - Launch cmd line: /bin/bash -ue .command.run +Mar-23 12:31:46.076 [Task submitter] INFO nextflow.Session - [35/b8dc93] Submitted process > HUMAN_TRANSFORMER (9) +Mar-23 12:31:46.081 [Task submitter] DEBUG n.executor.local.LocalTaskHandler - Launch cmd line: /bin/bash -ue .command.run +Mar-23 12:31:46.081 [Task submitter] INFO nextflow.Session - [8f/b72148] Submitted process > HUMAN_TRANSFORMER (5) +Mar-23 12:31:46.085 [Task submitter] DEBUG n.executor.local.LocalTaskHandler - Launch cmd line: /bin/bash -ue .command.run +Mar-23 12:31:46.086 [Task submitter] INFO nextflow.Session - [9e/68d27c] Submitted process > HUMAN_TRANSFORMER (19) +Mar-23 12:31:46.090 [Task submitter] DEBUG n.executor.local.LocalTaskHandler - Launch cmd line: /bin/bash -ue .command.run +Mar-23 12:31:46.090 [Task submitter] INFO nextflow.Session - [ce/eac613] Submitted process > HUMAN_TRANSFORMER (7) +Mar-23 12:31:46.095 [Task submitter] DEBUG n.executor.local.LocalTaskHandler - Launch cmd line: /bin/bash -ue .command.run +Mar-23 12:31:46.096 [Task submitter] INFO nextflow.Session - [88/d6f61a] Submitted process > HUMAN_TRANSFORMER (11) +Mar-23 12:31:46.100 [Task submitter] DEBUG n.executor.local.LocalTaskHandler - Launch cmd line: /bin/bash -ue .command.run +Mar-23 12:31:46.100 [Task submitter] INFO nextflow.Session - [de/d2b3da] Submitted process > HUMAN_TRANSFORMER (10) +Mar-23 12:31:46.105 [Task submitter] DEBUG n.executor.local.LocalTaskHandler - Launch cmd line: /bin/bash -ue .command.run +Mar-23 12:31:46.106 [Task submitter] INFO nextflow.Session - [85/3e7894] Submitted process > HUMAN_TRANSFORMER (13) +Mar-23 12:31:46.128 [Task submitter] DEBUG n.executor.local.LocalTaskHandler - Launch cmd line: /bin/bash -ue .command.run +Mar-23 12:31:46.129 [Task submitter] INFO nextflow.Session - [58/5a1016] Submitted process > HUMAN_TRANSFORMER (32) +Mar-23 12:31:46.135 [Task submitter] DEBUG n.executor.local.LocalTaskHandler - Launch cmd line: /bin/bash -ue .command.run +Mar-23 12:31:46.136 [Task submitter] INFO nextflow.Session - [d7/93d38d] Submitted process > HUMAN_TRANSFORMER (29) +Mar-23 12:31:46.142 [Task submitter] DEBUG n.executor.local.LocalTaskHandler - Launch cmd line: /bin/bash -ue .command.run +Mar-23 12:31:46.143 [Task submitter] INFO nextflow.Session - [d6/937a35] Submitted process > HUMAN_TRANSFORMER (12) +Mar-23 12:31:46.149 [Task submitter] DEBUG n.executor.local.LocalTaskHandler - Launch cmd line: /bin/bash -ue .command.run +Mar-23 12:31:46.150 [Task submitter] INFO nextflow.Session - [e1/2d650b] Submitted process > HUMAN_TRANSFORMER (25) +Mar-23 12:31:46.154 [Task submitter] DEBUG n.executor.local.LocalTaskHandler - Launch cmd line: /bin/bash -ue .command.run +Mar-23 12:31:46.155 [Task submitter] INFO nextflow.Session - [8c/614048] Submitted process > HUMAN_TRANSFORMER (28) +Mar-23 12:31:46.160 [Task submitter] DEBUG n.executor.local.LocalTaskHandler - Launch cmd line: /bin/bash -ue .command.run +Mar-23 12:31:46.161 [Task submitter] INFO nextflow.Session - [a7/55cb6c] Submitted process > HUMAN_TRANSFORMER (31) +Mar-23 12:31:46.166 [Task submitter] DEBUG n.executor.local.LocalTaskHandler - Launch cmd line: /bin/bash -ue .command.run +Mar-23 12:31:46.167 [Task submitter] INFO nextflow.Session - [7f/fffcfc] Submitted process > HUMAN_TRANSFORMER (6) +Mar-23 12:31:46.182 [Task submitter] DEBUG n.executor.local.LocalTaskHandler - Launch cmd line: /bin/bash -ue .command.run +Mar-23 12:31:46.185 [Task submitter] INFO nextflow.Session - [1d/701bd0] Submitted process > HUMAN_TRANSFORMER (26) +Mar-23 12:31:46.191 [Task submitter] DEBUG n.executor.local.LocalTaskHandler - Launch cmd line: /bin/bash -ue .command.run +Mar-23 12:31:46.192 [Task submitter] INFO nextflow.Session - [9d/1c6085] Submitted process > HUMAN_TRANSFORMER (24) +Mar-23 12:31:46.196 [Task submitter] DEBUG n.executor.local.LocalTaskHandler - Launch cmd line: /bin/bash -ue .command.run +Mar-23 12:31:46.196 [Task submitter] INFO nextflow.Session - [ba/11e874] Submitted process > HUMAN_TRANSFORMER (30) +Mar-23 12:31:46.200 [Task submitter] DEBUG n.executor.local.LocalTaskHandler - Launch cmd line: /bin/bash -ue .command.run +Mar-23 12:31:46.201 [Task submitter] INFO nextflow.Session - [30/24835f] Submitted process > HUMAN_TRANSFORMER (18) +Mar-23 12:31:46.206 [Task submitter] DEBUG n.executor.local.LocalTaskHandler - Launch cmd line: /bin/bash -ue .command.run +Mar-23 12:31:46.206 [Task submitter] INFO nextflow.Session - [4f/522cdb] Submitted process > HUMAN_TRANSFORMER (15) +Mar-23 12:31:46.213 [Task submitter] DEBUG n.executor.local.LocalTaskHandler - Launch cmd line: /bin/bash -ue .command.run +Mar-23 12:31:46.214 [Task submitter] INFO nextflow.Session - [f8/10a61c] Submitted process > HUMAN_TRANSFORMER (3) +Mar-23 12:32:26.204 [Task monitor] DEBUG n.processor.TaskPollingMonitor - Task completed > TaskHandler[id: 20; name: HUMAN_TRANSFORMER (20); status: COMPLETED; exit: 0; error: -; workDir: /data/bugra/digital_trials/work/dc/09507c87b781fe02fdebde1b1c949d] +Mar-23 12:32:26.207 [Task monitor] DEBUG nextflow.util.ThreadPoolBuilder - Creating thread pool 'TaskFinalizer' minSize=10; maxSize=240; workQueue=LinkedBlockingQueue[-1]; allowCoreThreadTimeout=false +Mar-23 12:32:26.290 [TaskFinalizer-1] DEBUG nextflow.util.ThreadPoolBuilder - Creating thread pool 'PublishDir' minSize=10; maxSize=240; workQueue=LinkedBlockingQueue[-1]; allowCoreThreadTimeout=false +Mar-23 12:32:26.374 [Task submitter] DEBUG n.executor.local.LocalTaskHandler - Launch cmd line: /bin/bash -ue .command.run +Mar-23 12:32:26.375 [Task submitter] INFO nextflow.Session - [a9/6c5151] Submitted process > GET_FINAL_METABOLITES_STATIC (1) +Mar-23 12:32:39.876 [Task monitor] DEBUG n.processor.TaskPollingMonitor - Task completed > TaskHandler[id: 1; name: HUMAN_TRANSFORMER (1); status: COMPLETED; exit: 0; error: -; workDir: /data/bugra/digital_trials/work/c2/2ce2acf8a3662f1dc112d6f0f05ff9] +Mar-23 12:32:39.893 [Task submitter] DEBUG n.executor.local.LocalTaskHandler - Launch cmd line: /bin/bash -ue .command.run +Mar-23 12:32:39.894 [Task submitter] INFO nextflow.Session - [57/fc4060] Submitted process > GET_FINAL_METABOLITES_STATIC (2) +Mar-23 12:32:44.956 [Task monitor] DEBUG n.processor.TaskPollingMonitor - Task completed > TaskHandler[id: 33; name: GET_FINAL_METABOLITES_STATIC (1); status: COMPLETED; exit: 0; error: -; workDir: /data/bugra/digital_trials/work/a9/6c51514dff4ffe92722c7cf24245b5] +Mar-23 12:32:45.061 [Task submitter] DEBUG n.executor.local.LocalTaskHandler - Launch cmd line: /bin/bash -ue .command.run +Mar-23 12:32:45.062 [Task submitter] INFO nextflow.Session - [a5/23b628] Submitted process > CONPLEX_ALL (1) +Mar-23 12:32:49.488 [Task monitor] DEBUG n.processor.TaskPollingMonitor - Task completed > TaskHandler[id: 34; name: GET_FINAL_METABOLITES_STATIC (2); status: COMPLETED; exit: 0; error: -; workDir: /data/bugra/digital_trials/work/57/fc4060cde07e37c3f0d31dfa56f1c7] +Mar-23 12:32:49.510 [Task submitter] DEBUG n.executor.local.LocalTaskHandler - Launch cmd line: /bin/bash -ue .command.run +Mar-23 12:32:49.510 [Task submitter] INFO nextflow.Session - [69/3bf75d] Submitted process > CONPLEX_ALL (2) +Mar-23 12:32:54.794 [Task monitor] DEBUG n.processor.TaskPollingMonitor - Task completed > TaskHandler[id: 24; name: HUMAN_TRANSFORMER (24); status: COMPLETED; exit: 0; error: -; workDir: /data/bugra/digital_trials/work/9d/1c60859d50538fe14819139778987b] +Mar-23 12:32:54.826 [Task submitter] DEBUG n.executor.local.LocalTaskHandler - Launch cmd line: /bin/bash -ue .command.run +Mar-23 12:32:54.828 [Task submitter] INFO nextflow.Session - [ac/7afb43] Submitted process > GET_FINAL_METABOLITES_STATIC (3) +Mar-23 12:32:58.839 [Task monitor] DEBUG n.processor.TaskPollingMonitor - Task completed > TaskHandler[id: 32; name: HUMAN_TRANSFORMER (32); status: COMPLETED; exit: 0; error: -; workDir: /data/bugra/digital_trials/work/58/5a101692f7278fc7c1d861dc268944] +Mar-23 12:32:58.855 [Task submitter] DEBUG n.executor.local.LocalTaskHandler - Launch cmd line: /bin/bash -ue .command.run +Mar-23 12:32:58.856 [Task submitter] INFO nextflow.Session - [b9/353957] Submitted process > GET_FINAL_METABOLITES_STATIC (4) +Mar-23 12:33:05.887 [Task monitor] DEBUG n.processor.TaskPollingMonitor - Task completed > TaskHandler[id: 23; name: HUMAN_TRANSFORMER (23); status: COMPLETED; exit: 0; error: -; workDir: /data/bugra/digital_trials/work/66/85b2c748f0247fecfb2a6144d0ea85] +Mar-23 12:33:05.888 [Task monitor] DEBUG n.processor.TaskPollingMonitor - Task completed > TaskHandler[id: 11; name: HUMAN_TRANSFORMER (11); status: COMPLETED; exit: 0; error: -; workDir: /data/bugra/digital_trials/work/88/d6f61a8ea069829d5d3b8d2d6ed3d2] +Mar-23 12:33:05.909 [Task submitter] DEBUG n.executor.local.LocalTaskHandler - Launch cmd line: /bin/bash -ue .command.run +Mar-23 12:33:05.911 [Task submitter] INFO nextflow.Session - [8c/87d858] Submitted process > GET_FINAL_METABOLITES_STATIC (6) +Mar-23 12:33:05.923 [Task submitter] DEBUG n.executor.local.LocalTaskHandler - Launch cmd line: /bin/bash -ue .command.run +Mar-23 12:33:05.924 [Task submitter] INFO nextflow.Session - [8d/b292b1] Submitted process > GET_FINAL_METABOLITES_STATIC (5) +Mar-23 12:33:07.951 [Task monitor] DEBUG n.processor.TaskPollingMonitor - Task completed > TaskHandler[id: 21; name: HUMAN_TRANSFORMER (21); status: COMPLETED; exit: 0; error: -; workDir: /data/bugra/digital_trials/work/ae/d4edcb9c1c862ea8272f42f2bd999d] +Mar-23 12:33:07.967 [Task submitter] DEBUG n.executor.local.LocalTaskHandler - Launch cmd line: /bin/bash -ue .command.run +Mar-23 12:33:07.968 [Task submitter] INFO nextflow.Session - [fa/28ee3d] Submitted process > GET_FINAL_METABOLITES_STATIC (7) +Mar-23 12:33:09.241 [Task monitor] DEBUG n.processor.TaskPollingMonitor - Task completed > TaskHandler[id: 37; name: GET_FINAL_METABOLITES_STATIC (3); status: COMPLETED; exit: 0; error: -; workDir: /data/bugra/digital_trials/work/ac/7afb4318418e08d8f973b9ffbbcea5] +Mar-23 12:33:09.263 [Task submitter] DEBUG n.executor.local.LocalTaskHandler - Launch cmd line: /bin/bash -ue .command.run +Mar-23 12:33:09.264 [Task submitter] INFO nextflow.Session - [47/e3689c] Submitted process > CONPLEX_ALL (3) +Mar-23 12:33:21.678 [Task monitor] DEBUG n.processor.TaskPollingMonitor - Task completed > TaskHandler[id: 31; name: HUMAN_TRANSFORMER (31); status: COMPLETED; exit: 0; error: -; workDir: /data/bugra/digital_trials/work/a7/55cb6cfd3954144d267fc883e9f71e] +Mar-23 12:33:21.702 [Task submitter] DEBUG n.executor.local.LocalTaskHandler - Launch cmd line: /bin/bash -ue .command.run +Mar-23 12:33:21.703 [Task submitter] INFO nextflow.Session - [33/e9e7e8] Submitted process > GET_FINAL_METABOLITES_STATIC (8) +Mar-23 12:33:23.614 [Task monitor] DEBUG n.processor.TaskPollingMonitor - Task completed > TaskHandler[id: 19; name: HUMAN_TRANSFORMER (19); status: COMPLETED; exit: 0; error: -; workDir: /data/bugra/digital_trials/work/9e/68d27c8d1ee060a4836f615f8bc8b7] +Mar-23 12:33:23.627 [Task submitter] DEBUG n.executor.local.LocalTaskHandler - Launch cmd line: /bin/bash -ue .command.run +Mar-23 12:33:23.627 [Task submitter] INFO nextflow.Session - [aa/87ad5d] Submitted process > GET_FINAL_METABOLITES_STATIC (9) +Mar-23 12:33:26.271 [Task monitor] DEBUG n.processor.TaskPollingMonitor - Task completed > TaskHandler[id: 38; name: GET_FINAL_METABOLITES_STATIC (4); status: COMPLETED; exit: 0; error: -; workDir: /data/bugra/digital_trials/work/b9/35395791cb206f27e75128b0d43acf] +Mar-23 12:33:26.286 [Task submitter] DEBUG n.executor.local.LocalTaskHandler - Launch cmd line: /bin/bash -ue .command.run +Mar-23 12:33:26.286 [Task submitter] INFO nextflow.Session - [2b/1f832e] Submitted process > CONPLEX_ALL (4) +Mar-23 12:33:28.739 [Task monitor] DEBUG n.processor.TaskPollingMonitor - Task completed > TaskHandler[id: 28; name: HUMAN_TRANSFORMER (28); status: COMPLETED; exit: 0; error: -; workDir: /data/bugra/digital_trials/work/8c/614048724953cdaf85576db432cb71] +Mar-23 12:33:28.979 [Task submitter] DEBUG n.executor.local.LocalTaskHandler - Launch cmd line: /bin/bash -ue .command.run +Mar-23 12:33:28.981 [Task submitter] INFO nextflow.Session - [e8/674830] Submitted process > GET_FINAL_METABOLITES_STATIC (10) +Mar-23 12:33:30.718 [Task monitor] DEBUG n.processor.TaskPollingMonitor - Task completed > TaskHandler[id: 40; name: GET_FINAL_METABOLITES_STATIC (6); status: COMPLETED; exit: 0; error: -; workDir: /data/bugra/digital_trials/work/8c/87d858d63310846892df016cab7a7c] +Mar-23 12:33:30.808 [Task submitter] DEBUG n.executor.local.LocalTaskHandler - Launch cmd line: /bin/bash -ue .command.run +Mar-23 12:33:30.809 [Task submitter] INFO nextflow.Session - [11/41fa41] Submitted process > CONPLEX_ALL (5) +Mar-23 12:33:34.201 [Task monitor] DEBUG n.processor.TaskPollingMonitor - Task completed > TaskHandler[id: 15; name: HUMAN_TRANSFORMER (15); status: COMPLETED; exit: 0; error: -; workDir: /data/bugra/digital_trials/work/4f/522cdbd6c71ca2b84a5c7c40c75be8] +Mar-23 12:33:34.222 [Task submitter] DEBUG n.executor.local.LocalTaskHandler - Launch cmd line: /bin/bash -ue .command.run +Mar-23 12:33:34.224 [Task submitter] INFO nextflow.Session - [07/e85ae9] Submitted process > GET_FINAL_METABOLITES_STATIC (11) +Mar-23 12:33:34.335 [Task monitor] DEBUG n.processor.TaskPollingMonitor - Task completed > TaskHandler[id: 41; name: GET_FINAL_METABOLITES_STATIC (7); status: COMPLETED; exit: 0; error: -; workDir: /data/bugra/digital_trials/work/fa/28ee3dc5d2854cb6ec7a06b2b077cd] +Mar-23 12:33:34.349 [Task submitter] DEBUG n.executor.local.LocalTaskHandler - Launch cmd line: /bin/bash -ue .command.run +Mar-23 12:33:34.350 [Task submitter] INFO nextflow.Session - [8a/d96785] Submitted process > CONPLEX_ALL (6) +Mar-23 12:33:35.976 [Task monitor] DEBUG n.processor.TaskPollingMonitor - Task completed > TaskHandler[id: 39; name: GET_FINAL_METABOLITES_STATIC (5); status: COMPLETED; exit: 0; error: -; workDir: /data/bugra/digital_trials/work/8d/b292b16c812d7dfd6914291c9ea916] +Mar-23 12:33:36.036 [Task submitter] DEBUG n.executor.local.LocalTaskHandler - Launch cmd line: /bin/bash -ue .command.run +Mar-23 12:33:36.048 [Task submitter] INFO nextflow.Session - [dd/50d730] Submitted process > CONPLEX_ALL (7) +Mar-23 12:33:50.315 [Task monitor] DEBUG n.processor.TaskPollingMonitor - Task completed > TaskHandler[id: 26; name: HUMAN_TRANSFORMER (26); status: COMPLETED; exit: 0; error: -; workDir: /data/bugra/digital_trials/work/1d/701bd014e2b99ea7030776393f4d5e] +Mar-23 12:33:50.355 [Task submitter] DEBUG n.executor.local.LocalTaskHandler - Launch cmd line: /bin/bash -ue .command.run +Mar-23 12:33:50.356 [Task submitter] INFO nextflow.Session - [83/b74538] Submitted process > GET_FINAL_METABOLITES_STATIC (12) +Mar-23 12:33:51.575 [Task monitor] DEBUG n.processor.TaskPollingMonitor - Task completed > TaskHandler[id: 25; name: HUMAN_TRANSFORMER (25); status: COMPLETED; exit: 0; error: -; workDir: /data/bugra/digital_trials/work/e1/2d650bd0b461beee593bbcf4146cd9] +Mar-23 12:33:51.596 [Task submitter] DEBUG n.executor.local.LocalTaskHandler - Launch cmd line: /bin/bash -ue .command.run +Mar-23 12:33:51.598 [Task submitter] INFO nextflow.Session - [33/3c10fd] Submitted process > GET_FINAL_METABOLITES_STATIC (13) +Mar-23 12:33:54.414 [Task monitor] DEBUG n.processor.TaskPollingMonitor - Task completed > TaskHandler[id: 27; name: HUMAN_TRANSFORMER (27); status: COMPLETED; exit: 0; error: -; workDir: /data/bugra/digital_trials/work/11/907b6d28da29bbd89e5d2ccfae4efa] +Mar-23 12:33:54.429 [Task submitter] DEBUG n.executor.local.LocalTaskHandler - Launch cmd line: /bin/bash -ue .command.run +Mar-23 12:33:54.430 [Task submitter] INFO nextflow.Session - [fc/8331ce] Submitted process > GET_FINAL_METABOLITES_STATIC (14) +Mar-23 12:33:55.766 [Task monitor] DEBUG n.processor.TaskPollingMonitor - Task completed > TaskHandler[id: 13; name: HUMAN_TRANSFORMER (13); status: COMPLETED; exit: 0; error: -; workDir: /data/bugra/digital_trials/work/85/3e7894d128f1a7ca4e512265de5963] +Mar-23 12:33:55.787 [Task submitter] DEBUG n.executor.local.LocalTaskHandler - Launch cmd line: /bin/bash -ue .command.run +Mar-23 12:33:55.789 [Task submitter] INFO nextflow.Session - [57/5023ee] Submitted process > GET_FINAL_METABOLITES_STATIC (15) +Mar-23 12:33:56.685 [Task monitor] DEBUG n.processor.TaskPollingMonitor - Task completed > TaskHandler[id: 43; name: GET_FINAL_METABOLITES_STATIC (8); status: COMPLETED; exit: 0; error: -; workDir: /data/bugra/digital_trials/work/33/e9e7e8904fe466f69f4df57cce2c64] +Mar-23 12:33:56.708 [Task submitter] DEBUG n.executor.local.LocalTaskHandler - Launch cmd line: /bin/bash -ue .command.run +Mar-23 12:33:56.709 [Task submitter] INFO nextflow.Session - [9a/2fecc9] Submitted process > CONPLEX_ALL (8) +Mar-23 12:34:00.284 [Task monitor] DEBUG n.processor.TaskPollingMonitor - Task completed > TaskHandler[id: 44; name: GET_FINAL_METABOLITES_STATIC (9); status: COMPLETED; exit: 0; error: -; workDir: /data/bugra/digital_trials/work/aa/87ad5d6b5867590135e05f76c3bb54] +Mar-23 12:34:00.299 [Task submitter] DEBUG n.executor.local.LocalTaskHandler - Launch cmd line: /bin/bash -ue .command.run +Mar-23 12:34:00.299 [Task submitter] INFO nextflow.Session - [f1/5e18e2] Submitted process > CONPLEX_ALL (9) +Mar-23 12:34:01.320 [Task monitor] DEBUG n.processor.TaskPollingMonitor - Task completed > TaskHandler[id: 46; name: GET_FINAL_METABOLITES_STATIC (10); status: COMPLETED; exit: 0; error: -; workDir: /data/bugra/digital_trials/work/e8/67483098b1e320bd4b8f1a79daaa0d] +Mar-23 12:34:01.339 [Task submitter] DEBUG n.executor.local.LocalTaskHandler - Launch cmd line: /bin/bash -ue .command.run +Mar-23 12:34:01.554 [Task submitter] INFO nextflow.Session - [31/8a1dcd] Submitted process > CONPLEX_ALL (10) +Mar-23 12:34:04.378 [Task monitor] DEBUG n.processor.TaskPollingMonitor - Task completed > TaskHandler[id: 48; name: GET_FINAL_METABOLITES_STATIC (11); status: COMPLETED; exit: 0; error: -; workDir: /data/bugra/digital_trials/work/07/e85ae96b214083751ee72ad0a6bfb7] +Mar-23 12:34:04.396 [Task submitter] DEBUG n.executor.local.LocalTaskHandler - Launch cmd line: /bin/bash -ue .command.run +Mar-23 12:34:04.398 [Task submitter] INFO nextflow.Session - [de/729b43] Submitted process > CONPLEX_ALL (11) +Mar-23 12:34:11.898 [Task monitor] DEBUG n.processor.TaskPollingMonitor - Task completed > TaskHandler[id: 14; name: HUMAN_TRANSFORMER (14); status: COMPLETED; exit: 0; error: -; workDir: /data/bugra/digital_trials/work/1e/26e9125254af1d3a5deaa84c7d3811] +Mar-23 12:34:11.920 [Task submitter] DEBUG n.executor.local.LocalTaskHandler - Launch cmd line: /bin/bash -ue .command.run +Mar-23 12:34:11.921 [Task submitter] INFO nextflow.Session - [0e/b1ba67] Submitted process > GET_FINAL_METABOLITES_STATIC (16) +Mar-23 12:34:19.892 [Task monitor] DEBUG n.processor.TaskPollingMonitor - Task completed > TaskHandler[id: 53; name: GET_FINAL_METABOLITES_STATIC (14); status: COMPLETED; exit: 0; error: -; workDir: /data/bugra/digital_trials/work/fc/8331ce93639011dd35f13ae21ff3f7] +Mar-23 12:34:19.907 [Task submitter] DEBUG n.executor.local.LocalTaskHandler - Launch cmd line: /bin/bash -ue .command.run +Mar-23 12:34:19.908 [Task submitter] INFO nextflow.Session - [89/e57fd5] Submitted process > CONPLEX_ALL (12) +Mar-23 12:34:19.959 [Task monitor] DEBUG n.processor.TaskPollingMonitor - Task completed > TaskHandler[id: 51; name: GET_FINAL_METABOLITES_STATIC (12); status: COMPLETED; exit: 0; error: -; workDir: /data/bugra/digital_trials/work/83/b745382ed20b6665e5054177cdf014] +Mar-23 12:34:20.422 [Task submitter] DEBUG n.executor.local.LocalTaskHandler - Launch cmd line: /bin/bash -ue .command.run +Mar-23 12:34:20.423 [Task submitter] INFO nextflow.Session - [6b/d6191a] Submitted process > CONPLEX_ALL (13) +Mar-23 12:34:21.646 [Task monitor] DEBUG n.processor.TaskPollingMonitor - Task completed > TaskHandler[id: 5; name: HUMAN_TRANSFORMER (5); status: COMPLETED; exit: 0; error: -; workDir: /data/bugra/digital_trials/work/8f/b72148545bcdcb9cab86e46a063bf2] +Mar-23 12:34:21.662 [Task submitter] DEBUG n.executor.local.LocalTaskHandler - Launch cmd line: /bin/bash -ue .command.run +Mar-23 12:34:21.663 [Task submitter] INFO nextflow.Session - [5f/c1a0dc] Submitted process > GET_FINAL_METABOLITES_STATIC (17) +Mar-23 12:34:23.293 [Task monitor] DEBUG n.processor.TaskPollingMonitor - Task completed > TaskHandler[id: 52; name: GET_FINAL_METABOLITES_STATIC (13); status: COMPLETED; exit: 0; error: -; workDir: /data/bugra/digital_trials/work/33/3c10fd8d2d91c9e47891327246402e] +Mar-23 12:34:23.307 [Task submitter] DEBUG n.executor.local.LocalTaskHandler - Launch cmd line: /bin/bash -ue .command.run +Mar-23 12:34:23.308 [Task submitter] INFO nextflow.Session - [27/4e94a8] Submitted process > CONPLEX_ALL (14) +Mar-23 12:34:26.594 [Task monitor] DEBUG n.processor.TaskPollingMonitor - Task completed > TaskHandler[id: 54; name: GET_FINAL_METABOLITES_STATIC (15); status: COMPLETED; exit: 0; error: -; workDir: /data/bugra/digital_trials/work/57/5023ee10166882143a1e04f4172bd7] +Mar-23 12:34:26.638 [Task submitter] DEBUG n.executor.local.LocalTaskHandler - Launch cmd line: /bin/bash -ue .command.run +Mar-23 12:34:26.640 [Task submitter] INFO nextflow.Session - [4f/914e0e] Submitted process > CONPLEX_ALL (15) +Mar-23 12:34:34.212 [Task monitor] DEBUG n.processor.TaskPollingMonitor - Task completed > TaskHandler[id: 59; name: GET_FINAL_METABOLITES_STATIC (16); status: COMPLETED; exit: 0; error: -; workDir: /data/bugra/digital_trials/work/0e/b1ba678c16290a330b694983921f5c] +Mar-23 12:34:34.235 [Task submitter] DEBUG n.executor.local.LocalTaskHandler - Launch cmd line: /bin/bash -ue .command.run +Mar-23 12:34:34.236 [Task submitter] INFO nextflow.Session - [45/a19ccf] Submitted process > CONPLEX_ALL (16) +Mar-23 12:34:37.582 [Task monitor] DEBUG n.processor.TaskPollingMonitor - Task completed > TaskHandler[id: 62; name: GET_FINAL_METABOLITES_STATIC (17); status: COMPLETED; exit: 0; error: -; workDir: /data/bugra/digital_trials/work/5f/c1a0dc784da101e044346af396812d] +Mar-23 12:34:37.597 [Task submitter] DEBUG n.executor.local.LocalTaskHandler - Launch cmd line: /bin/bash -ue .command.run +Mar-23 12:34:37.598 [Task submitter] INFO nextflow.Session - [38/9d4acc] Submitted process > CONPLEX_ALL (17) +Mar-23 12:34:49.033 [Task monitor] DEBUG n.processor.TaskPollingMonitor - Task completed > TaskHandler[id: 22; name: HUMAN_TRANSFORMER (22); status: COMPLETED; exit: 0; error: -; workDir: /data/bugra/digital_trials/work/9c/1072348f82658bff6118dd98dff95e] +Mar-23 12:34:49.051 [Task submitter] DEBUG n.executor.local.LocalTaskHandler - Launch cmd line: /bin/bash -ue .command.run +Mar-23 12:34:49.052 [Task submitter] INFO nextflow.Session - [d1/c7c098] Submitted process > GET_FINAL_METABOLITES_STATIC (18) +Mar-23 12:35:01.944 [Task monitor] DEBUG n.processor.TaskPollingMonitor - Task completed > TaskHandler[id: 67; name: GET_FINAL_METABOLITES_STATIC (18); status: COMPLETED; exit: 0; error: -; workDir: /data/bugra/digital_trials/work/d1/c7c098985598b18afe2fe2f36fd599] +Mar-23 12:35:01.967 [Task submitter] DEBUG n.executor.local.LocalTaskHandler - Launch cmd line: /bin/bash -ue .command.run +Mar-23 12:35:01.968 [Task submitter] INFO nextflow.Session - [ec/eb9042] Submitted process > CONPLEX_ALL (18) +Mar-23 12:35:16.248 [Task monitor] DEBUG n.processor.TaskPollingMonitor - Task completed > TaskHandler[id: 6; name: HUMAN_TRANSFORMER (6); status: COMPLETED; exit: 0; error: -; workDir: /data/bugra/digital_trials/work/7f/fffcfc20b885868645588ea0184dec] +Mar-23 12:35:16.265 [Task submitter] DEBUG n.executor.local.LocalTaskHandler - Launch cmd line: /bin/bash -ue .command.run +Mar-23 12:35:16.267 [Task submitter] INFO nextflow.Session - [74/02c4c2] Submitted process > GET_FINAL_METABOLITES_STATIC (19) +Mar-23 12:35:24.543 [Task monitor] DEBUG n.processor.TaskPollingMonitor - Task completed > TaskHandler[id: 69; name: GET_FINAL_METABOLITES_STATIC (19); status: COMPLETED; exit: 0; error: -; workDir: /data/bugra/digital_trials/work/74/02c4c29cbca0ab154f2bf45979058b] +Mar-23 12:35:24.572 [Task submitter] DEBUG n.executor.local.LocalTaskHandler - Launch cmd line: /bin/bash -ue .command.run +Mar-23 12:35:24.573 [Task submitter] INFO nextflow.Session - [d3/59e768] Submitted process > CONPLEX_ALL (19) +Mar-23 12:35:24.682 [Task monitor] DEBUG n.processor.TaskPollingMonitor - Task completed > TaskHandler[id: 8; name: HUMAN_TRANSFORMER (8); status: COMPLETED; exit: 0; error: -; workDir: /data/bugra/digital_trials/work/02/5069402b2776a3ea94e1260994e70e] +Mar-23 12:35:24.725 [Task submitter] DEBUG n.executor.local.LocalTaskHandler - Launch cmd line: /bin/bash -ue .command.run +Mar-23 12:35:24.726 [Task submitter] INFO nextflow.Session - [08/e2ff02] Submitted process > GET_FINAL_METABOLITES_STATIC (20) +Mar-23 12:35:39.562 [Task monitor] DEBUG n.processor.TaskPollingMonitor - Task completed > TaskHandler[id: 71; name: GET_FINAL_METABOLITES_STATIC (20); status: COMPLETED; exit: 0; error: -; workDir: /data/bugra/digital_trials/work/08/e2ff02a72b3bc58a7dc651a408e61e] +Mar-23 12:35:39.581 [Task submitter] DEBUG n.executor.local.LocalTaskHandler - Launch cmd line: /bin/bash -ue .command.run +Mar-23 12:35:39.582 [Task submitter] INFO nextflow.Session - [0f/05554b] Submitted process > CONPLEX_ALL (20) +Mar-23 12:36:08.369 [Task monitor] DEBUG n.processor.TaskPollingMonitor - Task completed > TaskHandler[id: 17; name: HUMAN_TRANSFORMER (17); status: COMPLETED; exit: 0; error: -; workDir: /data/bugra/digital_trials/work/20/1a7d4d52fa8531ca500e62fff149e0] +Mar-23 12:36:08.387 [Task submitter] DEBUG n.executor.local.LocalTaskHandler - Launch cmd line: /bin/bash -ue .command.run +Mar-23 12:36:08.388 [Task submitter] INFO nextflow.Session - [59/20c57b] Submitted process > GET_FINAL_METABOLITES_STATIC (21) +Mar-23 12:36:08.530 [Task monitor] DEBUG n.processor.TaskPollingMonitor - Task completed > TaskHandler[id: 18; name: HUMAN_TRANSFORMER (18); status: COMPLETED; exit: 0; error: -; workDir: /data/bugra/digital_trials/work/30/24835fc80891aeb227cb5f6bee92b6] +Mar-23 12:36:08.555 [Task submitter] DEBUG n.executor.local.LocalTaskHandler - Launch cmd line: /bin/bash -ue .command.run +Mar-23 12:36:08.556 [Task submitter] INFO nextflow.Session - [a4/5d15d8] Submitted process > GET_FINAL_METABOLITES_STATIC (22) +Mar-23 12:36:28.253 [Task monitor] DEBUG n.processor.TaskPollingMonitor - Task completed > TaskHandler[id: 73; name: GET_FINAL_METABOLITES_STATIC (21); status: COMPLETED; exit: 0; error: -; workDir: /data/bugra/digital_trials/work/59/20c57b919b048249caea887376f7cf] +Mar-23 12:36:28.269 [Task submitter] DEBUG n.executor.local.LocalTaskHandler - Launch cmd line: /bin/bash -ue .command.run +Mar-23 12:36:28.270 [Task submitter] INFO nextflow.Session - [05/1a80de] Submitted process > CONPLEX_ALL (21) +Mar-23 12:36:28.294 [Task monitor] DEBUG n.processor.TaskPollingMonitor - Task completed > TaskHandler[id: 74; name: GET_FINAL_METABOLITES_STATIC (22); status: COMPLETED; exit: 0; error: -; workDir: /data/bugra/digital_trials/work/a4/5d15d8c541c82fc8fd5c20a4ecfa6f] +Mar-23 12:36:28.318 [Task submitter] DEBUG n.executor.local.LocalTaskHandler - Launch cmd line: /bin/bash -ue .command.run +Mar-23 12:36:28.319 [Task submitter] INFO nextflow.Session - [bb/6e26ea] Submitted process > CONPLEX_ALL (22) +Mar-23 12:36:34.979 [Task monitor] DEBUG n.processor.TaskPollingMonitor - Task completed > TaskHandler[id: 35; name: CONPLEX_ALL (1); status: COMPLETED; exit: 0; error: -; workDir: /data/bugra/digital_trials/work/a5/23b628f89e2a7835409a6c7d718387] +Mar-23 12:36:35.019 [Task submitter] DEBUG n.executor.local.LocalTaskHandler - Launch cmd line: /bin/bash -ue .command.run +Mar-23 12:36:35.020 [Task submitter] INFO nextflow.Session - [13/14251c] Submitted process > TISSUE_DISTRIBUTION (1) +Mar-23 12:36:35.028 [Task submitter] DEBUG n.executor.local.LocalTaskHandler - Launch cmd line: /bin/bash -ue .command.run +Mar-23 12:36:35.029 [Task submitter] INFO nextflow.Session - [2d/e5bbd5] Submitted process > BIO_METRICS (1) +Mar-23 12:36:35.049 [Task submitter] DEBUG n.executor.local.LocalTaskHandler - Launch cmd line: /bin/bash -ue .command.run +Mar-23 12:36:35.050 [Task submitter] INFO nextflow.Session - [e4/66e3d5] Submitted process > NETWORK_ENRICHMENT (1) +Mar-23 12:36:45.553 [Task monitor] DEBUG n.processor.TaskPollingMonitor - !! executor local > tasks to be completed: 34 -- submitted tasks are shown below +~> TaskHandler[id: 2; name: HUMAN_TRANSFORMER (2); status: RUNNING; exit: -; error: -; workDir: /data/bugra/digital_trials/work/f7/f16540761aee41c7248ad1fe8f3eee] +~> TaskHandler[id: 16; name: HUMAN_TRANSFORMER (16); status: RUNNING; exit: -; error: -; workDir: /data/bugra/digital_trials/work/f1/b1e309add0f1cd88797c7527fdf6f3] +~> TaskHandler[id: 4; name: HUMAN_TRANSFORMER (4); status: RUNNING; exit: -; error: -; workDir: /data/bugra/digital_trials/work/f3/2167e6d747c6ad3334197c296e88d9] +~> TaskHandler[id: 9; name: HUMAN_TRANSFORMER (9); status: RUNNING; exit: -; error: -; workDir: /data/bugra/digital_trials/work/35/b8dc93d08d0110ce4b508b43b52dff] +~> TaskHandler[id: 7; name: HUMAN_TRANSFORMER (7); status: RUNNING; exit: -; error: -; workDir: /data/bugra/digital_trials/work/ce/eac613e5ebba4a75ecd7d8352f7c99] +~> TaskHandler[id: 10; name: HUMAN_TRANSFORMER (10); status: RUNNING; exit: -; error: -; workDir: /data/bugra/digital_trials/work/de/d2b3dae152dc4064dd3caf84986f07] +~> TaskHandler[id: 29; name: HUMAN_TRANSFORMER (29); status: RUNNING; exit: -; error: -; workDir: /data/bugra/digital_trials/work/d7/93d38d4103afc3e0a87aa8fb1ae84d] +~> TaskHandler[id: 12; name: HUMAN_TRANSFORMER (12); status: RUNNING; exit: -; error: -; workDir: /data/bugra/digital_trials/work/d6/937a35d19297dce8b144bc2aa88b04] +~> TaskHandler[id: 30; name: HUMAN_TRANSFORMER (30); status: RUNNING; exit: -; error: -; workDir: /data/bugra/digital_trials/work/ba/11e874c2fb4e51162424748812e93d] +~> TaskHandler[id: 3; name: HUMAN_TRANSFORMER (3); status: RUNNING; exit: -; error: -; workDir: /data/bugra/digital_trials/work/f8/10a61c18a03652d1b03d448e2b9f99] +.. remaining tasks omitted. +Mar-23 12:37:00.095 [Task monitor] DEBUG n.processor.TaskPollingMonitor - Task completed > TaskHandler[id: 79; name: TISSUE_DISTRIBUTION (1); status: COMPLETED; exit: 0; error: -; workDir: /data/bugra/digital_trials/work/13/14251cf5407e48cccef51699b56e1d] +Mar-23 12:37:01.585 [Task monitor] DEBUG n.processor.TaskPollingMonitor - Task completed > TaskHandler[id: 77; name: NETWORK_ENRICHMENT (1); status: COMPLETED; exit: 0; error: -; workDir: /data/bugra/digital_trials/work/e4/66e3d504c2bd118ecb08f6aefd542d] +Mar-23 12:37:13.160 [Task monitor] DEBUG n.processor.TaskPollingMonitor - Task completed > TaskHandler[id: 78; name: BIO_METRICS (1); status: COMPLETED; exit: 0; error: -; workDir: /data/bugra/digital_trials/work/2d/e5bbd5fc1420d3b5e51dcff10ee00e] +Mar-23 12:37:20.128 [Task monitor] DEBUG n.processor.TaskPollingMonitor - Task completed > TaskHandler[id: 10; name: HUMAN_TRANSFORMER (10); status: COMPLETED; exit: 0; error: -; workDir: /data/bugra/digital_trials/work/de/d2b3dae152dc4064dd3caf84986f07] +Mar-23 12:37:20.152 [Task submitter] DEBUG n.executor.local.LocalTaskHandler - Launch cmd line: /bin/bash -ue .command.run +Mar-23 12:37:20.154 [Task submitter] INFO nextflow.Session - [eb/c954be] Submitted process > GET_FINAL_METABOLITES_STATIC (23) +Mar-23 12:37:25.363 [Task monitor] DEBUG n.processor.TaskPollingMonitor - Task completed > TaskHandler[id: 80; name: GET_FINAL_METABOLITES_STATIC (23); status: COMPLETED; exit: 0; error: -; workDir: /data/bugra/digital_trials/work/eb/c954bec177186d1d22d0f840ba29c3] +Mar-23 12:37:25.390 [Task submitter] DEBUG n.executor.local.LocalTaskHandler - Launch cmd line: /bin/bash -ue .command.run +Mar-23 12:37:25.391 [Task submitter] INFO nextflow.Session - [33/07094f] Submitted process > CONPLEX_ALL (23) +Mar-23 12:37:29.653 [Task monitor] DEBUG n.processor.TaskPollingMonitor - Task completed > TaskHandler[id: 9; name: HUMAN_TRANSFORMER (9); status: COMPLETED; exit: 0; error: -; workDir: /data/bugra/digital_trials/work/35/b8dc93d08d0110ce4b508b43b52dff] +Mar-23 12:37:29.684 [Task submitter] DEBUG n.executor.local.LocalTaskHandler - Launch cmd line: /bin/bash -ue .command.run +Mar-23 12:37:29.685 [Task submitter] INFO nextflow.Session - [01/bec09d] Submitted process > GET_FINAL_METABOLITES_STATIC (24) +Mar-23 12:37:35.160 [Task monitor] DEBUG n.processor.TaskPollingMonitor - Task completed > TaskHandler[id: 82; name: GET_FINAL_METABOLITES_STATIC (24); status: COMPLETED; exit: 0; error: -; workDir: /data/bugra/digital_trials/work/01/bec09d3e94eb30f39b777429901529] +Mar-23 12:37:35.176 [Task submitter] DEBUG n.executor.local.LocalTaskHandler - Launch cmd line: /bin/bash -ue .command.run +Mar-23 12:37:35.176 [Task submitter] INFO nextflow.Session - [9e/eb3ea1] Submitted process > CONPLEX_ALL (24) +Mar-23 12:37:37.560 [Task monitor] DEBUG n.processor.TaskPollingMonitor - Task completed > TaskHandler[id: 36; name: CONPLEX_ALL (2); status: COMPLETED; exit: 0; error: -; workDir: /data/bugra/digital_trials/work/69/3bf75df83d44f572f4b434c2c06735] +Mar-23 12:37:37.579 [Task submitter] DEBUG n.executor.local.LocalTaskHandler - Launch cmd line: /bin/bash -ue .command.run +Mar-23 12:37:37.579 [Task submitter] INFO nextflow.Session - [4f/f22d29] Submitted process > NETWORK_ENRICHMENT (2) +Mar-23 12:37:37.584 [Task submitter] DEBUG n.executor.local.LocalTaskHandler - Launch cmd line: /bin/bash -ue .command.run +Mar-23 12:37:37.584 [Task submitter] INFO nextflow.Session - [29/a97dbb] Submitted process > TISSUE_DISTRIBUTION (2) +Mar-23 12:37:37.590 [Task submitter] DEBUG n.executor.local.LocalTaskHandler - Launch cmd line: /bin/bash -ue .command.run +Mar-23 12:37:37.590 [Task submitter] INFO nextflow.Session - [d6/3961cf] Submitted process > BIO_METRICS (2) +Mar-23 12:37:48.785 [Task monitor] DEBUG n.processor.TaskPollingMonitor - Task completed > TaskHandler[id: 47; name: CONPLEX_ALL (5); status: COMPLETED; exit: 0; error: -; workDir: /data/bugra/digital_trials/work/11/41fa416225698c2a4a337496069fbe] +Mar-23 12:37:48.807 [Task submitter] DEBUG n.executor.local.LocalTaskHandler - Launch cmd line: /bin/bash -ue .command.run +Mar-23 12:37:48.807 [Task submitter] INFO nextflow.Session - [f3/d557be] Submitted process > TISSUE_DISTRIBUTION (3) +Mar-23 12:37:48.815 [Task submitter] DEBUG n.executor.local.LocalTaskHandler - Launch cmd line: /bin/bash -ue .command.run +Mar-23 12:37:48.816 [Task submitter] INFO nextflow.Session - [50/5fcb68] Submitted process > NETWORK_ENRICHMENT (3) +Mar-23 12:37:48.825 [Task submitter] DEBUG n.executor.local.LocalTaskHandler - Launch cmd line: /bin/bash -ue .command.run +Mar-23 12:37:48.826 [Task submitter] INFO nextflow.Session - [95/4f5cd2] Submitted process > BIO_METRICS (3) +Mar-23 12:37:48.842 [Task monitor] DEBUG n.processor.TaskPollingMonitor - Task completed > TaskHandler[id: 50; name: CONPLEX_ALL (7); status: COMPLETED; exit: 0; error: -; workDir: /data/bugra/digital_trials/work/dd/50d7305b7f7abb66d81414f76920cb] +Mar-23 12:37:49.286 [Task submitter] DEBUG n.executor.local.LocalTaskHandler - Launch cmd line: /bin/bash -ue .command.run +Mar-23 12:37:49.287 [Task submitter] INFO nextflow.Session - [3a/c26113] Submitted process > NETWORK_ENRICHMENT (4) +Mar-23 12:37:49.296 [Task submitter] DEBUG n.executor.local.LocalTaskHandler - Launch cmd line: /bin/bash -ue .command.run +Mar-23 12:37:49.297 [Task submitter] INFO nextflow.Session - [f0/c644ac] Submitted process > BIO_METRICS (4) +Mar-23 12:37:49.316 [Task submitter] DEBUG n.executor.local.LocalTaskHandler - Launch cmd line: /bin/bash -ue .command.run +Mar-23 12:37:49.317 [Task submitter] INFO nextflow.Session - [b3/5cf0e3] Submitted process > TISSUE_DISTRIBUTION (4) +Mar-23 12:37:51.027 [Task monitor] DEBUG n.processor.TaskPollingMonitor - Task completed > TaskHandler[id: 56; name: CONPLEX_ALL (9); status: COMPLETED; exit: 0; error: -; workDir: /data/bugra/digital_trials/work/f1/5e18e2e5c18fe745b07b36bec151d6] +Mar-23 12:37:51.044 [Task submitter] DEBUG n.executor.local.LocalTaskHandler - Launch cmd line: /bin/bash -ue .command.run +Mar-23 12:37:51.045 [Task submitter] INFO nextflow.Session - [d6/b41e0c] Submitted process > TISSUE_DISTRIBUTION (5) +Mar-23 12:37:51.050 [Task submitter] DEBUG n.executor.local.LocalTaskHandler - Launch cmd line: /bin/bash -ue .command.run +Mar-23 12:37:51.050 [Task submitter] INFO nextflow.Session - [24/ff2c47] Submitted process > NETWORK_ENRICHMENT (5) +Mar-23 12:37:51.056 [Task submitter] DEBUG n.executor.local.LocalTaskHandler - Launch cmd line: /bin/bash -ue .command.run +Mar-23 12:37:51.056 [Task submitter] INFO nextflow.Session - [93/3e3be9] Submitted process > BIO_METRICS (5) +Mar-23 12:37:53.706 [Task monitor] DEBUG n.processor.TaskPollingMonitor - Task completed > TaskHandler[id: 42; name: CONPLEX_ALL (3); status: COMPLETED; exit: 0; error: -; workDir: /data/bugra/digital_trials/work/47/e3689cad62beb34489586494b2cbaf] +Mar-23 12:37:53.736 [Task submitter] DEBUG n.executor.local.LocalTaskHandler - Launch cmd line: /bin/bash -ue .command.run +Mar-23 12:37:53.737 [Task submitter] INFO nextflow.Session - [c0/371e2e] Submitted process > NETWORK_ENRICHMENT (6) +Mar-23 12:37:53.749 [Task submitter] DEBUG n.executor.local.LocalTaskHandler - Launch cmd line: /bin/bash -ue .command.run +Mar-23 12:37:53.750 [Task submitter] INFO nextflow.Session - [06/c8de2a] Submitted process > TISSUE_DISTRIBUTION (6) +Mar-23 12:37:53.765 [Task submitter] DEBUG n.executor.local.LocalTaskHandler - Launch cmd line: /bin/bash -ue .command.run +Mar-23 12:37:53.766 [Task submitter] INFO nextflow.Session - [ad/3874d7] Submitted process > BIO_METRICS (6) +Mar-23 12:38:01.136 [Task monitor] DEBUG n.processor.TaskPollingMonitor - Task completed > TaskHandler[id: 45; name: CONPLEX_ALL (4); status: COMPLETED; exit: 0; error: -; workDir: /data/bugra/digital_trials/work/2b/1f832e20c7d01f6d40033975ca1a15] +Mar-23 12:38:01.153 [Task submitter] DEBUG n.executor.local.LocalTaskHandler - Launch cmd line: /bin/bash -ue .command.run +Mar-23 12:38:01.154 [Task submitter] INFO nextflow.Session - [07/6783cd] Submitted process > TISSUE_DISTRIBUTION (7) +Mar-23 12:38:01.160 [Task submitter] DEBUG n.executor.local.LocalTaskHandler - Launch cmd line: /bin/bash -ue .command.run +Mar-23 12:38:01.161 [Task submitter] INFO nextflow.Session - [b2/3de5d2] Submitted process > NETWORK_ENRICHMENT (7) +Mar-23 12:38:01.169 [Task submitter] DEBUG n.executor.local.LocalTaskHandler - Launch cmd line: /bin/bash -ue .command.run +Mar-23 12:38:01.170 [Task submitter] INFO nextflow.Session - [49/9986ab] Submitted process > BIO_METRICS (7) +Mar-23 12:38:03.159 [Task monitor] DEBUG n.processor.TaskPollingMonitor - Task completed > TaskHandler[id: 49; name: CONPLEX_ALL (6); status: COMPLETED; exit: 0; error: -; workDir: /data/bugra/digital_trials/work/8a/d9678534e279927c670d8e3cbc76dd] +Mar-23 12:38:03.160 [Task monitor] DEBUG n.processor.TaskPollingMonitor - Task completed > TaskHandler[id: 57; name: CONPLEX_ALL (10); status: COMPLETED; exit: 0; error: -; workDir: /data/bugra/digital_trials/work/31/8a1dcdbe63608cb636165b802ba3ee] +Mar-23 12:38:03.178 [Task submitter] DEBUG n.executor.local.LocalTaskHandler - Launch cmd line: /bin/bash -ue .command.run +Mar-23 12:38:03.179 [Task submitter] INFO nextflow.Session - [22/af8d38] Submitted process > TISSUE_DISTRIBUTION (9) +Mar-23 12:38:03.192 [Task submitter] DEBUG n.executor.local.LocalTaskHandler - Launch cmd line: /bin/bash -ue .command.run +Mar-23 12:38:03.193 [Task submitter] INFO nextflow.Session - [0c/31da68] Submitted process > TISSUE_DISTRIBUTION (8) +Mar-23 12:38:03.202 [Task submitter] DEBUG n.executor.local.LocalTaskHandler - Launch cmd line: /bin/bash -ue .command.run +Mar-23 12:38:03.203 [Task submitter] INFO nextflow.Session - [7b/9bfa0d] Submitted process > NETWORK_ENRICHMENT (8) +Mar-23 12:38:03.212 [Task submitter] DEBUG n.executor.local.LocalTaskHandler - Launch cmd line: /bin/bash -ue .command.run +Mar-23 12:38:03.212 [Task submitter] INFO nextflow.Session - [e8/8b5576] Submitted process > NETWORK_ENRICHMENT (9) +Mar-23 12:38:03.222 [Task submitter] DEBUG n.executor.local.LocalTaskHandler - Launch cmd line: /bin/bash -ue .command.run +Mar-23 12:38:03.222 [Task submitter] INFO nextflow.Session - [44/6aa7bc] Submitted process > BIO_METRICS (9) +Mar-23 12:38:03.230 [Task submitter] DEBUG n.executor.local.LocalTaskHandler - Launch cmd line: /bin/bash -ue .command.run +Mar-23 12:38:03.231 [Task submitter] INFO nextflow.Session - [11/bd53f9] Submitted process > BIO_METRICS (8) +Mar-23 12:38:06.801 [Task monitor] DEBUG n.processor.TaskPollingMonitor - Task completed > TaskHandler[id: 58; name: CONPLEX_ALL (11); status: COMPLETED; exit: 0; error: -; workDir: /data/bugra/digital_trials/work/de/729b4378fdd22d1e8923d20d20b68f] +Mar-23 12:38:06.816 [Task submitter] DEBUG n.executor.local.LocalTaskHandler - Launch cmd line: /bin/bash -ue .command.run +Mar-23 12:38:06.817 [Task submitter] INFO nextflow.Session - [90/dbf361] Submitted process > NETWORK_ENRICHMENT (10) +Mar-23 12:38:06.821 [Task submitter] DEBUG n.executor.local.LocalTaskHandler - Launch cmd line: /bin/bash -ue .command.run +Mar-23 12:38:06.821 [Task submitter] INFO nextflow.Session - [54/ebab16] Submitted process > TISSUE_DISTRIBUTION (10) +Mar-23 12:38:06.827 [Task submitter] DEBUG n.executor.local.LocalTaskHandler - Launch cmd line: /bin/bash -ue .command.run +Mar-23 12:38:06.827 [Task submitter] INFO nextflow.Session - [9d/f715d0] Submitted process > BIO_METRICS (10) +Mar-23 12:38:13.153 [Task monitor] DEBUG n.processor.TaskPollingMonitor - Task completed > TaskHandler[id: 55; name: CONPLEX_ALL (8); status: COMPLETED; exit: 0; error: -; workDir: /data/bugra/digital_trials/work/9a/2fecc9ed2b4eba73680416b03cb2a6] +Mar-23 12:38:13.172 [Task submitter] DEBUG n.executor.local.LocalTaskHandler - Launch cmd line: /bin/bash -ue .command.run +Mar-23 12:38:13.173 [Task submitter] INFO nextflow.Session - [e5/8cf296] Submitted process > TISSUE_DISTRIBUTION (11) +Mar-23 12:38:13.177 [Task submitter] DEBUG n.executor.local.LocalTaskHandler - Launch cmd line: /bin/bash -ue .command.run +Mar-23 12:38:13.178 [Task submitter] INFO nextflow.Session - [80/eb1340] Submitted process > NETWORK_ENRICHMENT (11) +Mar-23 12:38:13.183 [Task submitter] DEBUG n.executor.local.LocalTaskHandler - Launch cmd line: /bin/bash -ue .command.run +Mar-23 12:38:13.183 [Task submitter] INFO nextflow.Session - [3b/8d8bae] Submitted process > BIO_METRICS (11) +Mar-23 12:38:21.439 [Task monitor] DEBUG n.processor.TaskPollingMonitor - Task completed > TaskHandler[id: 84; name: NETWORK_ENRICHMENT (2); status: COMPLETED; exit: 0; error: -; workDir: /data/bugra/digital_trials/work/4f/f22d295989de10b2dfc29f2c1e6f66] +Mar-23 12:38:31.128 [Task monitor] DEBUG n.processor.TaskPollingMonitor - Task completed > TaskHandler[id: 60; name: CONPLEX_ALL (12); status: COMPLETED; exit: 0; error: -; workDir: /data/bugra/digital_trials/work/89/e57fd5f026ab500a7afd27b1efbc59] +Mar-23 12:38:31.148 [Task submitter] DEBUG n.executor.local.LocalTaskHandler - Launch cmd line: /bin/bash -ue .command.run +Mar-23 12:38:31.149 [Task submitter] INFO nextflow.Session - [23/e0edb4] Submitted process > TISSUE_DISTRIBUTION (12) +Mar-23 12:38:31.157 [Task submitter] DEBUG n.executor.local.LocalTaskHandler - Launch cmd line: /bin/bash -ue .command.run +Mar-23 12:38:31.157 [Task submitter] INFO nextflow.Session - [01/ccfeaf] Submitted process > NETWORK_ENRICHMENT (12) +Mar-23 12:38:31.165 [Task submitter] DEBUG n.executor.local.LocalTaskHandler - Launch cmd line: /bin/bash -ue .command.run +Mar-23 12:38:31.165 [Task submitter] INFO nextflow.Session - [be/1a62f0] Submitted process > BIO_METRICS (12) +Mar-23 12:38:35.640 [Task monitor] DEBUG n.processor.TaskPollingMonitor - Task completed > TaskHandler[id: 63; name: CONPLEX_ALL (14); status: COMPLETED; exit: 0; error: -; workDir: /data/bugra/digital_trials/work/27/4e94a8b156b5b5b67d4cb0e08f0410] +Mar-23 12:38:35.655 [Task submitter] DEBUG n.executor.local.LocalTaskHandler - Launch cmd line: /bin/bash -ue .command.run +Mar-23 12:38:35.655 [Task submitter] INFO nextflow.Session - [df/37378b] Submitted process > TISSUE_DISTRIBUTION (13) +Mar-23 12:38:35.659 [Task submitter] DEBUG n.executor.local.LocalTaskHandler - Launch cmd line: /bin/bash -ue .command.run +Mar-23 12:38:35.660 [Task submitter] INFO nextflow.Session - [ae/161ea0] Submitted process > NETWORK_ENRICHMENT (13) +Mar-23 12:38:35.664 [Task submitter] DEBUG n.executor.local.LocalTaskHandler - Launch cmd line: /bin/bash -ue .command.run +Mar-23 12:38:35.665 [Task submitter] INFO nextflow.Session - [9a/2588bd] Submitted process > BIO_METRICS (13) +Mar-23 12:38:38.539 [Task monitor] DEBUG n.processor.TaskPollingMonitor - Task completed > TaskHandler[id: 64; name: CONPLEX_ALL (15); status: COMPLETED; exit: 0; error: -; workDir: /data/bugra/digital_trials/work/4f/914e0ed20b550030977102ec634240] +Mar-23 12:38:38.558 [Task submitter] DEBUG n.executor.local.LocalTaskHandler - Launch cmd line: /bin/bash -ue .command.run +Mar-23 12:38:38.558 [Task submitter] INFO nextflow.Session - [bb/e5559b] Submitted process > TISSUE_DISTRIBUTION (14) +Mar-23 12:38:38.567 [Task submitter] DEBUG n.executor.local.LocalTaskHandler - Launch cmd line: /bin/bash -ue .command.run +Mar-23 12:38:38.568 [Task submitter] INFO nextflow.Session - [da/58f57a] Submitted process > NETWORK_ENRICHMENT (14) +Mar-23 12:38:38.576 [Task submitter] DEBUG n.executor.local.LocalTaskHandler - Launch cmd line: /bin/bash -ue .command.run +Mar-23 12:38:38.577 [Task submitter] INFO nextflow.Session - [41/44f65d] Submitted process > BIO_METRICS (14) +Mar-23 12:38:44.202 [Task monitor] DEBUG n.processor.TaskPollingMonitor - Task completed > TaskHandler[id: 61; name: CONPLEX_ALL (13); status: COMPLETED; exit: 0; error: -; workDir: /data/bugra/digital_trials/work/6b/d6191a21da8e951e3b5e3fe4777c19] +Mar-23 12:38:44.217 [Task submitter] DEBUG n.executor.local.LocalTaskHandler - Launch cmd line: /bin/bash -ue .command.run +Mar-23 12:38:44.217 [Task submitter] INFO nextflow.Session - [2a/b7677d] Submitted process > BIO_METRICS (15) +Mar-23 12:38:44.222 [Task submitter] DEBUG n.executor.local.LocalTaskHandler - Launch cmd line: /bin/bash -ue .command.run +Mar-23 12:38:44.222 [Task submitter] INFO nextflow.Session - [74/ab9e37] Submitted process > TISSUE_DISTRIBUTION (15) +Mar-23 12:38:44.233 [Task submitter] DEBUG n.executor.local.LocalTaskHandler - Launch cmd line: /bin/bash -ue .command.run +Mar-23 12:38:44.233 [Task submitter] INFO nextflow.Session - [15/d4d10b] Submitted process > NETWORK_ENRICHMENT (15) +Mar-23 12:38:49.342 [Task monitor] DEBUG n.processor.TaskPollingMonitor - Task completed > TaskHandler[id: 66; name: CONPLEX_ALL (17); status: COMPLETED; exit: 0; error: -; workDir: /data/bugra/digital_trials/work/38/9d4acc90f36d106b7cac368917e550] +Mar-23 12:38:49.361 [Task submitter] DEBUG n.executor.local.LocalTaskHandler - Launch cmd line: /bin/bash -ue .command.run +Mar-23 12:38:49.361 [Task submitter] INFO nextflow.Session - [4c/876912] Submitted process > BIO_METRICS (16) +Mar-23 12:38:49.368 [Task submitter] DEBUG n.executor.local.LocalTaskHandler - Launch cmd line: /bin/bash -ue .command.run +Mar-23 12:38:49.369 [Task submitter] INFO nextflow.Session - [77/9891c5] Submitted process > TISSUE_DISTRIBUTION (16) +Mar-23 12:38:49.477 [Task submitter] DEBUG n.executor.local.LocalTaskHandler - Launch cmd line: /bin/bash -ue .command.run +Mar-23 12:38:49.478 [Task submitter] INFO nextflow.Session - [6b/fdd0b6] Submitted process > NETWORK_ENRICHMENT (16) +Mar-23 12:38:51.241 [Task monitor] DEBUG n.processor.TaskPollingMonitor - Task completed > TaskHandler[id: 65; name: CONPLEX_ALL (16); status: COMPLETED; exit: 0; error: -; workDir: /data/bugra/digital_trials/work/45/a19ccfb8ec236e0945dbed55042d80] +Mar-23 12:38:51.260 [Task submitter] DEBUG n.executor.local.LocalTaskHandler - Launch cmd line: /bin/bash -ue .command.run +Mar-23 12:38:51.261 [Task submitter] INFO nextflow.Session - [33/88746a] Submitted process > BIO_METRICS (17) +Mar-23 12:38:51.272 [Task submitter] DEBUG n.executor.local.LocalTaskHandler - Launch cmd line: /bin/bash -ue .command.run +Mar-23 12:38:51.272 [Task submitter] INFO nextflow.Session - [a7/3ea963] Submitted process > TISSUE_DISTRIBUTION (17) +Mar-23 12:38:51.277 [Task submitter] DEBUG n.executor.local.LocalTaskHandler - Launch cmd line: /bin/bash -ue .command.run +Mar-23 12:38:51.277 [Task submitter] INFO nextflow.Session - [16/232012] Submitted process > NETWORK_ENRICHMENT (17) +Mar-23 12:38:54.493 [Task monitor] DEBUG n.processor.TaskPollingMonitor - Task completed > TaskHandler[id: 90; name: NETWORK_ENRICHMENT (4); status: COMPLETED; exit: 0; error: -; workDir: /data/bugra/digital_trials/work/3a/c26113bb0d9cbc2cd6ffa649e984bb] +Mar-23 12:38:55.975 [Task monitor] DEBUG n.processor.TaskPollingMonitor - Task completed > TaskHandler[id: 4; name: HUMAN_TRANSFORMER (4); status: COMPLETED; exit: 0; error: -; workDir: /data/bugra/digital_trials/work/f3/2167e6d747c6ad3334197c296e88d9] +Mar-23 12:38:55.990 [Task submitter] DEBUG n.executor.local.LocalTaskHandler - Launch cmd line: /bin/bash -ue .command.run +Mar-23 12:38:55.990 [Task submitter] INFO nextflow.Session - [95/f2bdb4] Submitted process > GET_FINAL_METABOLITES_STATIC (25) +Mar-23 12:39:03.617 [Task monitor] DEBUG n.processor.TaskPollingMonitor - Task completed > TaskHandler[id: 96; name: NETWORK_ENRICHMENT (6); status: COMPLETED; exit: 0; error: -; workDir: /data/bugra/digital_trials/work/c0/371e2e1eb6c520d6cbd8551d527bbf] +Mar-23 12:39:04.694 [Task monitor] DEBUG n.processor.TaskPollingMonitor - Task completed > TaskHandler[id: 94; name: NETWORK_ENRICHMENT (5); status: COMPLETED; exit: 0; error: -; workDir: /data/bugra/digital_trials/work/24/ff2c475fceb977db4d2b5997a021aa] +Mar-23 12:39:05.817 [Task monitor] DEBUG n.processor.TaskPollingMonitor - Task completed > TaskHandler[id: 7; name: HUMAN_TRANSFORMER (7); status: COMPLETED; exit: 0; error: -; workDir: /data/bugra/digital_trials/work/ce/eac613e5ebba4a75ecd7d8352f7c99] +Mar-23 12:39:05.835 [Task submitter] DEBUG n.executor.local.LocalTaskHandler - Launch cmd line: /bin/bash -ue .command.run +Mar-23 12:39:05.836 [Task submitter] INFO nextflow.Session - [51/532018] Submitted process > GET_FINAL_METABOLITES_STATIC (26) +Mar-23 12:39:10.024 [Task monitor] DEBUG n.processor.TaskPollingMonitor - Task completed > TaskHandler[id: 99; name: NETWORK_ENRICHMENT (7); status: COMPLETED; exit: 0; error: -; workDir: /data/bugra/digital_trials/work/b2/3de5d2d296ef7d0cb0e0efd1b8bfa9] +Mar-23 12:39:10.121 [Task monitor] DEBUG n.processor.TaskPollingMonitor - Task completed > TaskHandler[id: 105; name: NETWORK_ENRICHMENT (9); status: COMPLETED; exit: 0; error: -; workDir: /data/bugra/digital_trials/work/e8/8b5576e0a0da896d8c4563708a6349] +Mar-23 12:39:10.449 [Task monitor] DEBUG n.processor.TaskPollingMonitor - Task completed > TaskHandler[id: 89; name: NETWORK_ENRICHMENT (3); status: COMPLETED; exit: 0; error: -; workDir: /data/bugra/digital_trials/work/50/5fcb68e7c6d0ba17c6ac0d933c1bb0] +Mar-23 12:39:13.309 [Task monitor] DEBUG n.processor.TaskPollingMonitor - Task completed > TaskHandler[id: 68; name: CONPLEX_ALL (18); status: COMPLETED; exit: 0; error: -; workDir: /data/bugra/digital_trials/work/ec/eb90424872ea2ef085458b17b9d492] +Mar-23 12:39:13.334 [Task submitter] DEBUG n.executor.local.LocalTaskHandler - Launch cmd line: /bin/bash -ue .command.run +Mar-23 12:39:13.339 [Task submitter] INFO nextflow.Session - [07/eb3846] Submitted process > TISSUE_DISTRIBUTION (18) +Mar-23 12:39:13.348 [Task submitter] DEBUG n.executor.local.LocalTaskHandler - Launch cmd line: /bin/bash -ue .command.run +Mar-23 12:39:13.348 [Task submitter] INFO nextflow.Session - [71/d6e25b] Submitted process > BIO_METRICS (18) +Mar-23 12:39:13.360 [Task submitter] DEBUG n.executor.local.LocalTaskHandler - Launch cmd line: /bin/bash -ue .command.run +Mar-23 12:39:13.361 [Task submitter] INFO nextflow.Session - [3e/2c8de8] Submitted process > NETWORK_ENRICHMENT (18) +Mar-23 12:39:31.597 [Task monitor] DEBUG n.processor.TaskPollingMonitor - Task completed > TaskHandler[id: 108; name: NETWORK_ENRICHMENT (10); status: COMPLETED; exit: 0; error: -; workDir: /data/bugra/digital_trials/work/90/dbf3618498e513aac253cd058fd607] +Mar-23 12:39:34.625 [Task monitor] DEBUG n.processor.TaskPollingMonitor - Task completed > TaskHandler[id: 3; name: HUMAN_TRANSFORMER (3); status: COMPLETED; exit: 0; error: -; workDir: /data/bugra/digital_trials/work/f8/10a61c18a03652d1b03d448e2b9f99] +Mar-23 12:39:34.665 [Task submitter] DEBUG n.executor.local.LocalTaskHandler - Launch cmd line: /bin/bash -ue .command.run +Mar-23 12:39:34.665 [Task submitter] INFO nextflow.Session - [33/a93fae] Submitted process > GET_FINAL_METABOLITES_STATIC (27) +Mar-23 12:39:35.548 [Task monitor] DEBUG n.processor.TaskPollingMonitor - Task completed > TaskHandler[id: 102; name: NETWORK_ENRICHMENT (8); status: COMPLETED; exit: 0; error: -; workDir: /data/bugra/digital_trials/work/7b/9bfa0d7db2e92177e7ac89f660ddcf] +Mar-23 12:39:35.931 [Task monitor] DEBUG n.processor.TaskPollingMonitor - Task completed > TaskHandler[id: 111; name: NETWORK_ENRICHMENT (11); status: COMPLETED; exit: 0; error: -; workDir: /data/bugra/digital_trials/work/80/eb1340f1819de2da6c04fc667c0862] +Mar-23 12:39:36.507 [Task monitor] DEBUG n.processor.TaskPollingMonitor - Task completed > TaskHandler[id: 114; name: NETWORK_ENRICHMENT (12); status: COMPLETED; exit: 0; error: -; workDir: /data/bugra/digital_trials/work/01/ccfeaf7ba27e6a72be85662f791d0c] +Mar-23 12:39:39.172 [Task monitor] DEBUG n.processor.TaskPollingMonitor - Task completed > TaskHandler[id: 132; name: GET_FINAL_METABOLITES_STATIC (25); status: COMPLETED; exit: 0; error: -; workDir: /data/bugra/digital_trials/work/95/f2bdb4530d0ac3c1f3ff00f2e5d9d1] +Mar-23 12:39:39.190 [Task submitter] DEBUG n.executor.local.LocalTaskHandler - Launch cmd line: /bin/bash -ue .command.run +Mar-23 12:39:39.190 [Task submitter] INFO nextflow.Session - [08/033ef2] Submitted process > CONPLEX_ALL (25) +Mar-23 12:39:41.637 [Task monitor] DEBUG n.processor.TaskPollingMonitor - Task completed > TaskHandler[id: 133; name: GET_FINAL_METABOLITES_STATIC (26); status: COMPLETED; exit: 0; error: -; workDir: /data/bugra/digital_trials/work/51/53201879a33a087d8def46956e30ef] +Mar-23 12:39:41.767 [Task submitter] DEBUG n.executor.local.LocalTaskHandler - Launch cmd line: /bin/bash -ue .command.run +Mar-23 12:39:41.767 [Task submitter] INFO nextflow.Session - [2e/5eca88] Submitted process > CONPLEX_ALL (26) +Mar-23 12:39:43.198 [Task monitor] DEBUG n.processor.TaskPollingMonitor - Task completed > TaskHandler[id: 2; name: HUMAN_TRANSFORMER (2); status: COMPLETED; exit: 0; error: -; workDir: /data/bugra/digital_trials/work/f7/f16540761aee41c7248ad1fe8f3eee] +Mar-23 12:39:43.215 [Task submitter] DEBUG n.executor.local.LocalTaskHandler - Launch cmd line: /bin/bash -ue .command.run +Mar-23 12:39:43.215 [Task submitter] INFO nextflow.Session - [5e/fd8e5e] Submitted process > GET_FINAL_METABOLITES_STATIC (28) +Mar-23 12:39:46.363 [Task monitor] DEBUG n.processor.TaskPollingMonitor - Task completed > TaskHandler[id: 123; name: NETWORK_ENRICHMENT (15); status: COMPLETED; exit: 0; error: -; workDir: /data/bugra/digital_trials/work/15/d4d10b05f38730d049401c5fe85786] +Mar-23 12:39:47.959 [Task monitor] DEBUG n.processor.TaskPollingMonitor - Task completed > TaskHandler[id: 118; name: NETWORK_ENRICHMENT (13); status: COMPLETED; exit: 0; error: -; workDir: /data/bugra/digital_trials/work/ae/161ea0024d53dc3bfd63e24b85f039] +Mar-23 12:39:49.774 [Task monitor] DEBUG n.processor.TaskPollingMonitor - Task completed > TaskHandler[id: 128; name: NETWORK_ENRICHMENT (16); status: COMPLETED; exit: 0; error: -; workDir: /data/bugra/digital_trials/work/6b/fdd0b657c77c21dc5e2c9c569a1a75] +Mar-23 12:39:51.400 [Task monitor] DEBUG n.processor.TaskPollingMonitor - Task completed > TaskHandler[id: 135; name: NETWORK_ENRICHMENT (18); status: COMPLETED; exit: 0; error: -; workDir: /data/bugra/digital_trials/work/3e/2c8de8d100be5dcb969e5862c56c36] +Mar-23 12:39:51.501 [Task monitor] DEBUG n.processor.TaskPollingMonitor - Task completed > TaskHandler[id: 120; name: NETWORK_ENRICHMENT (14); status: COMPLETED; exit: 0; error: -; workDir: /data/bugra/digital_trials/work/da/58f57a81f0b6279a3662cef7c8b069] +Mar-23 12:39:51.630 [Task monitor] DEBUG n.processor.TaskPollingMonitor - Task completed > TaskHandler[id: 130; name: NETWORK_ENRICHMENT (17); status: COMPLETED; exit: 0; error: -; workDir: /data/bugra/digital_trials/work/16/232012a2858c1b774c7ff8dd8ff8a6] +Mar-23 12:39:53.640 [Task monitor] DEBUG n.processor.TaskPollingMonitor - Task completed > TaskHandler[id: 85; name: TISSUE_DISTRIBUTION (2); status: COMPLETED; exit: 0; error: -; workDir: /data/bugra/digital_trials/work/29/a97dbb292f4ded621fbc410922dd16] +Mar-23 12:39:57.351 [Task monitor] DEBUG n.processor.TaskPollingMonitor - Task completed > TaskHandler[id: 70; name: CONPLEX_ALL (19); status: COMPLETED; exit: 0; error: -; workDir: /data/bugra/digital_trials/work/d3/59e76867961a8af5b324f9dd41e8ca] +Mar-23 12:39:57.368 [Task submitter] DEBUG n.executor.local.LocalTaskHandler - Launch cmd line: /bin/bash -ue .command.run +Mar-23 12:39:57.368 [Task submitter] INFO nextflow.Session - [43/7b1489] Submitted process > NETWORK_ENRICHMENT (19) +Mar-23 12:39:57.373 [Task submitter] DEBUG n.executor.local.LocalTaskHandler - Launch cmd line: /bin/bash -ue .command.run +Mar-23 12:39:57.373 [Task submitter] INFO nextflow.Session - [20/365d8d] Submitted process > TISSUE_DISTRIBUTION (19) +Mar-23 12:39:57.379 [Task submitter] DEBUG n.executor.local.LocalTaskHandler - Launch cmd line: /bin/bash -ue .command.run +Mar-23 12:39:57.379 [Task submitter] INFO nextflow.Session - [3a/83663f] Submitted process > BIO_METRICS (19) +Mar-23 12:39:59.201 [Task monitor] DEBUG n.processor.TaskPollingMonitor - Task completed > TaskHandler[id: 30; name: HUMAN_TRANSFORMER (30); status: COMPLETED; exit: 0; error: -; workDir: /data/bugra/digital_trials/work/ba/11e874c2fb4e51162424748812e93d] +Mar-23 12:39:59.217 [Task submitter] DEBUG n.executor.local.LocalTaskHandler - Launch cmd line: /bin/bash -ue .command.run +Mar-23 12:39:59.218 [Task submitter] INFO nextflow.Session - [da/1d1b41] Submitted process > GET_FINAL_METABOLITES_STATIC (29) +Mar-23 12:40:01.754 [Task monitor] DEBUG n.processor.TaskPollingMonitor - Task completed > TaskHandler[id: 29; name: HUMAN_TRANSFORMER (29); status: COMPLETED; exit: 0; error: -; workDir: /data/bugra/digital_trials/work/d7/93d38d4103afc3e0a87aa8fb1ae84d] +Mar-23 12:40:01.768 [Task submitter] DEBUG n.executor.local.LocalTaskHandler - Launch cmd line: /bin/bash -ue .command.run +Mar-23 12:40:01.769 [Task submitter] INFO nextflow.Session - [3a/04d53e] Submitted process > GET_FINAL_METABOLITES_STATIC (30) +Mar-23 12:40:03.823 [Task monitor] DEBUG n.processor.TaskPollingMonitor - Task completed > TaskHandler[id: 72; name: CONPLEX_ALL (20); status: COMPLETED; exit: 0; error: -; workDir: /data/bugra/digital_trials/work/0f/05554b5b13f98da9dbd653ecd2b483] +Mar-23 12:40:03.840 [Task submitter] DEBUG n.executor.local.LocalTaskHandler - Launch cmd line: /bin/bash -ue .command.run +Mar-23 12:40:03.840 [Task submitter] INFO nextflow.Session - [60/32b570] Submitted process > NETWORK_ENRICHMENT (20) +Mar-23 12:40:03.846 [Task submitter] DEBUG n.executor.local.LocalTaskHandler - Launch cmd line: /bin/bash -ue .command.run +Mar-23 12:40:03.847 [Task submitter] INFO nextflow.Session - [11/082da7] Submitted process > TISSUE_DISTRIBUTION (20) +Mar-23 12:40:03.854 [Task submitter] DEBUG n.executor.local.LocalTaskHandler - Launch cmd line: /bin/bash -ue .command.run +Mar-23 12:40:03.855 [Task submitter] INFO nextflow.Session - [dc/26dfd8] Submitted process > BIO_METRICS (20) +Mar-23 12:40:14.513 [Task monitor] DEBUG n.processor.TaskPollingMonitor - Task completed > TaskHandler[id: 137; name: GET_FINAL_METABOLITES_STATIC (27); status: COMPLETED; exit: 0; error: -; workDir: /data/bugra/digital_trials/work/33/a93fae31481f246b097b2aa33dfd28] +Mar-23 12:40:14.533 [Task submitter] DEBUG n.executor.local.LocalTaskHandler - Launch cmd line: /bin/bash -ue .command.run +Mar-23 12:40:14.534 [Task submitter] INFO nextflow.Session - [17/80ca83] Submitted process > CONPLEX_ALL (27) +Mar-23 12:40:14.542 [Task monitor] DEBUG n.processor.TaskPollingMonitor - Task completed > TaskHandler[id: 140; name: GET_FINAL_METABOLITES_STATIC (28); status: COMPLETED; exit: 0; error: -; workDir: /data/bugra/digital_trials/work/5e/fd8e5e54cb4f183b2ce8d52af21e94] +Mar-23 12:40:14.562 [Task submitter] DEBUG n.executor.local.LocalTaskHandler - Launch cmd line: /bin/bash -ue .command.run +Mar-23 12:40:14.563 [Task submitter] INFO nextflow.Session - [b1/057b65] Submitted process > CONPLEX_ALL (28) +Mar-23 12:40:16.079 [Task monitor] DEBUG n.processor.TaskPollingMonitor - Task completed > TaskHandler[id: 86; name: BIO_METRICS (2); status: COMPLETED; exit: 0; error: -; workDir: /data/bugra/digital_trials/work/d6/3961cfb71a9ca8371fe4115528c8b5] +Mar-23 12:40:30.984 [Task monitor] DEBUG n.processor.TaskPollingMonitor - Task completed > TaskHandler[id: 143; name: NETWORK_ENRICHMENT (19); status: COMPLETED; exit: 0; error: -; workDir: /data/bugra/digital_trials/work/43/7b1489d70ac412e0cab45c8f67df8c] +Mar-23 12:40:32.161 [Task monitor] DEBUG n.processor.TaskPollingMonitor - Task completed > TaskHandler[id: 148; name: NETWORK_ENRICHMENT (20); status: COMPLETED; exit: 0; error: -; workDir: /data/bugra/digital_trials/work/60/32b570e65114e89cc469b5c9bb57ba] +Mar-23 12:40:35.079 [Task monitor] DEBUG n.processor.TaskPollingMonitor - Task completed > TaskHandler[id: 145; name: GET_FINAL_METABOLITES_STATIC (30); status: COMPLETED; exit: 0; error: -; workDir: /data/bugra/digital_trials/work/3a/04d53e8b7d32e0e1abcd6974cd75ad] +Mar-23 12:40:35.099 [Task submitter] DEBUG n.executor.local.LocalTaskHandler - Launch cmd line: /bin/bash -ue .command.run +Mar-23 12:40:35.099 [Task submitter] INFO nextflow.Session - [0f/26ca05] Submitted process > CONPLEX_ALL (29) +Mar-23 12:40:35.166 [Task monitor] DEBUG n.processor.TaskPollingMonitor - Task completed > TaskHandler[id: 144; name: GET_FINAL_METABOLITES_STATIC (29); status: COMPLETED; exit: 0; error: -; workDir: /data/bugra/digital_trials/work/da/1d1b412830b1587ece28bac11c9469] +Mar-23 12:40:35.184 [Task submitter] DEBUG n.executor.local.LocalTaskHandler - Launch cmd line: /bin/bash -ue .command.run +Mar-23 12:40:35.185 [Task submitter] INFO nextflow.Session - [e6/bffd78] Submitted process > CONPLEX_ALL (30) +Mar-23 12:40:48.469 [Task monitor] DEBUG n.processor.TaskPollingMonitor - Task completed > TaskHandler[id: 88; name: TISSUE_DISTRIBUTION (3); status: COMPLETED; exit: 0; error: -; workDir: /data/bugra/digital_trials/work/f3/d557beb05b9a2f2f94c9bbf0699f74] +Mar-23 12:41:11.219 [Task monitor] DEBUG n.processor.TaskPollingMonitor - Task completed > TaskHandler[id: 95; name: TISSUE_DISTRIBUTION (5); status: COMPLETED; exit: 0; error: -; workDir: /data/bugra/digital_trials/work/d6/b41e0c0e6da6d488e749655f7e3c07] +Mar-23 12:41:21.212 [Task monitor] DEBUG n.processor.TaskPollingMonitor - Task completed > TaskHandler[id: 93; name: BIO_METRICS (5); status: COMPLETED; exit: 0; error: -; workDir: /data/bugra/digital_trials/work/93/3e3be92e196d43903b3ab0ab53e533] +Mar-23 12:41:23.435 [Task monitor] DEBUG n.processor.TaskPollingMonitor - Task completed > TaskHandler[id: 76; name: CONPLEX_ALL (22); status: COMPLETED; exit: 0; error: -; workDir: /data/bugra/digital_trials/work/bb/6e26ea2dad5145467b34925806585b] +Mar-23 12:41:23.455 [Task submitter] DEBUG n.executor.local.LocalTaskHandler - Launch cmd line: /bin/bash -ue .command.run +Mar-23 12:41:23.456 [Task submitter] INFO nextflow.Session - [7b/fb352b] Submitted process > TISSUE_DISTRIBUTION (21) +Mar-23 12:41:23.460 [Task submitter] DEBUG n.executor.local.LocalTaskHandler - Launch cmd line: /bin/bash -ue .command.run +Mar-23 12:41:23.461 [Task submitter] INFO nextflow.Session - [fb/887e51] Submitted process > NETWORK_ENRICHMENT (21) +Mar-23 12:41:23.466 [Task submitter] DEBUG n.executor.local.LocalTaskHandler - Launch cmd line: /bin/bash -ue .command.run +Mar-23 12:41:23.466 [Task submitter] INFO nextflow.Session - [4f/7fe0cb] Submitted process > BIO_METRICS (21) +Mar-23 12:41:26.018 [Task monitor] DEBUG n.processor.TaskPollingMonitor - Task completed > TaskHandler[id: 92; name: TISSUE_DISTRIBUTION (4); status: COMPLETED; exit: 0; error: -; workDir: /data/bugra/digital_trials/work/b3/5cf0e3f2e08e8e9e60a13940ff9a4a] +Mar-23 12:41:27.209 [Task monitor] DEBUG n.processor.TaskPollingMonitor - Task completed > TaskHandler[id: 75; name: CONPLEX_ALL (21); status: COMPLETED; exit: 0; error: -; workDir: /data/bugra/digital_trials/work/05/1a80de9a1ebeace669f6f6012c9d72] +Mar-23 12:41:27.227 [Task submitter] DEBUG n.executor.local.LocalTaskHandler - Launch cmd line: /bin/bash -ue .command.run +Mar-23 12:41:27.227 [Task submitter] INFO nextflow.Session - [57/539445] Submitted process > TISSUE_DISTRIBUTION (22) +Mar-23 12:41:27.232 [Task submitter] DEBUG n.executor.local.LocalTaskHandler - Launch cmd line: /bin/bash -ue .command.run +Mar-23 12:41:27.232 [Task submitter] INFO nextflow.Session - [99/22ebf4] Submitted process > NETWORK_ENRICHMENT (22) +Mar-23 12:41:27.239 [Task submitter] DEBUG n.executor.local.LocalTaskHandler - Launch cmd line: /bin/bash -ue .command.run +Mar-23 12:41:27.239 [Task submitter] INFO nextflow.Session - [73/7f0338] Submitted process > BIO_METRICS (22) +Mar-23 12:41:33.288 [Task monitor] DEBUG n.processor.TaskPollingMonitor - Task completed > TaskHandler[id: 87; name: BIO_METRICS (3); status: COMPLETED; exit: 0; error: -; workDir: /data/bugra/digital_trials/work/95/4f5cd24f3efc2e219247618f44651f] +Mar-23 12:41:40.921 [Task monitor] DEBUG n.processor.TaskPollingMonitor - Task completed > TaskHandler[id: 100; name: TISSUE_DISTRIBUTION (7); status: COMPLETED; exit: 0; error: -; workDir: /data/bugra/digital_trials/work/07/6783cdc83d5ffb569734dddb53b723] +Mar-23 12:41:44.186 [Task monitor] DEBUG n.processor.TaskPollingMonitor - Task completed > TaskHandler[id: 91; name: BIO_METRICS (4); status: COMPLETED; exit: 0; error: -; workDir: /data/bugra/digital_trials/work/f0/c644acab981f0e2a200a49d011d24a] +Mar-23 12:41:45.591 [Task monitor] DEBUG n.processor.TaskPollingMonitor - !! executor local > tasks to be completed: 45 -- submitted tasks are shown below +~> TaskHandler[id: 16; name: HUMAN_TRANSFORMER (16); status: RUNNING; exit: -; error: -; workDir: /data/bugra/digital_trials/work/f1/b1e309add0f1cd88797c7527fdf6f3] +~> TaskHandler[id: 12; name: HUMAN_TRANSFORMER (12); status: RUNNING; exit: -; error: -; workDir: /data/bugra/digital_trials/work/d6/937a35d19297dce8b144bc2aa88b04] +~> TaskHandler[id: 81; name: CONPLEX_ALL (23); status: RUNNING; exit: -; error: -; workDir: /data/bugra/digital_trials/work/33/07094f1b16e171068beb4d45f0d323] +~> TaskHandler[id: 83; name: CONPLEX_ALL (24); status: RUNNING; exit: -; error: -; workDir: /data/bugra/digital_trials/work/9e/eb3ea15b69c05a2e60cd0a088cf8c1] +~> TaskHandler[id: 97; name: TISSUE_DISTRIBUTION (6); status: RUNNING; exit: -; error: -; workDir: /data/bugra/digital_trials/work/06/c8de2ac82664b8e4ea4fa2d0ace04c] +~> TaskHandler[id: 98; name: BIO_METRICS (6); status: RUNNING; exit: -; error: -; workDir: /data/bugra/digital_trials/work/ad/3874d7773511b299a0cd2ac9667439] +~> TaskHandler[id: 101; name: BIO_METRICS (7); status: RUNNING; exit: -; error: -; workDir: /data/bugra/digital_trials/work/49/9986abc0e786727dd60bc1e7bc9e1b] +~> TaskHandler[id: 106; name: TISSUE_DISTRIBUTION (9); status: RUNNING; exit: -; error: -; workDir: /data/bugra/digital_trials/work/22/af8d38620c99efde756aac21397250] +~> TaskHandler[id: 103; name: TISSUE_DISTRIBUTION (8); status: RUNNING; exit: -; error: -; workDir: /data/bugra/digital_trials/work/0c/31da68f73ca6075ec6eb53e51150df] +~> TaskHandler[id: 107; name: BIO_METRICS (9); status: RUNNING; exit: -; error: -; workDir: /data/bugra/digital_trials/work/44/6aa7bc6c7377f12a92c16187d56a9b] +.. remaining tasks omitted. +Mar-23 12:41:48.802 [Task monitor] DEBUG n.processor.TaskPollingMonitor - Task completed > TaskHandler[id: 103; name: TISSUE_DISTRIBUTION (8); status: COMPLETED; exit: 0; error: -; workDir: /data/bugra/digital_trials/work/0c/31da68f73ca6075ec6eb53e51150df] +Mar-23 12:41:57.796 [Task monitor] DEBUG n.processor.TaskPollingMonitor - Task completed > TaskHandler[id: 157; name: NETWORK_ENRICHMENT (22); status: COMPLETED; exit: 0; error: -; workDir: /data/bugra/digital_trials/work/99/22ebf44395545226bf7ec246f27fc1] +Mar-23 12:41:57.812 [Task monitor] DEBUG n.processor.TaskPollingMonitor - Task completed > TaskHandler[id: 154; name: NETWORK_ENRICHMENT (21); status: COMPLETED; exit: 0; error: -; workDir: /data/bugra/digital_trials/work/fb/887e5104f41ba7c6ada83e6273068a] +Mar-23 12:42:02.049 [Task monitor] DEBUG n.processor.TaskPollingMonitor - Task completed > TaskHandler[id: 98; name: BIO_METRICS (6); status: COMPLETED; exit: 0; error: -; workDir: /data/bugra/digital_trials/work/ad/3874d7773511b299a0cd2ac9667439] +Mar-23 12:42:03.645 [Task monitor] DEBUG n.processor.TaskPollingMonitor - Task completed > TaskHandler[id: 104; name: BIO_METRICS (8); status: COMPLETED; exit: 0; error: -; workDir: /data/bugra/digital_trials/work/11/bd53f98856474786ea24da75e2ee1b] +Mar-23 12:42:06.492 [Task monitor] DEBUG n.processor.TaskPollingMonitor - Task completed > TaskHandler[id: 106; name: TISSUE_DISTRIBUTION (9); status: COMPLETED; exit: 0; error: -; workDir: /data/bugra/digital_trials/work/22/af8d38620c99efde756aac21397250] +Mar-23 12:42:15.864 [Task monitor] DEBUG n.processor.TaskPollingMonitor - Task completed > TaskHandler[id: 81; name: CONPLEX_ALL (23); status: COMPLETED; exit: 0; error: -; workDir: /data/bugra/digital_trials/work/33/07094f1b16e171068beb4d45f0d323] +Mar-23 12:42:15.880 [Task submitter] DEBUG n.executor.local.LocalTaskHandler - Launch cmd line: /bin/bash -ue .command.run +Mar-23 12:42:15.881 [Task submitter] INFO nextflow.Session - [81/57b8bf] Submitted process > BIO_METRICS (23) +Mar-23 12:42:15.885 [Task submitter] DEBUG n.executor.local.LocalTaskHandler - Launch cmd line: /bin/bash -ue .command.run +Mar-23 12:42:15.885 [Task submitter] INFO nextflow.Session - [e0/27ecec] Submitted process > TISSUE_DISTRIBUTION (23) +Mar-23 12:42:15.889 [Task submitter] DEBUG n.executor.local.LocalTaskHandler - Launch cmd line: /bin/bash -ue .command.run +Mar-23 12:42:15.889 [Task submitter] INFO nextflow.Session - [30/367e53] Submitted process > NETWORK_ENRICHMENT (23) +Mar-23 12:42:17.651 [Task monitor] DEBUG n.processor.TaskPollingMonitor - Task completed > TaskHandler[id: 101; name: BIO_METRICS (7); status: COMPLETED; exit: 0; error: -; workDir: /data/bugra/digital_trials/work/49/9986abc0e786727dd60bc1e7bc9e1b] +Mar-23 12:42:20.021 [Task monitor] DEBUG n.processor.TaskPollingMonitor - Task completed > TaskHandler[id: 109; name: TISSUE_DISTRIBUTION (10); status: COMPLETED; exit: 0; error: -; workDir: /data/bugra/digital_trials/work/54/ebab16dd4258d0ee83b4afa0f14f0e] +Mar-23 12:42:22.679 [Task monitor] DEBUG n.processor.TaskPollingMonitor - Task completed > TaskHandler[id: 107; name: BIO_METRICS (9); status: COMPLETED; exit: 0; error: -; workDir: /data/bugra/digital_trials/work/44/6aa7bc6c7377f12a92c16187d56a9b] +Mar-23 12:42:27.342 [Task monitor] DEBUG n.processor.TaskPollingMonitor - Task completed > TaskHandler[id: 139; name: CONPLEX_ALL (26); status: COMPLETED; exit: 137; error: -; workDir: /data/bugra/digital_trials/work/2e/5eca88b0106f9b71dfbcdc4bd48329] +Mar-23 12:42:27.352 [TaskFinalizer-4] DEBUG nextflow.processor.TaskProcessor - Handling unexpected condition for + task: name=CONPLEX_ALL (26); work-dir=/data/bugra/digital_trials/work/2e/5eca88b0106f9b71dfbcdc4bd48329 + error [nextflow.exception.ProcessFailedException]: Process `CONPLEX_ALL (26)` terminated with an error exit status (137) +Mar-23 12:42:27.369 [TaskFinalizer-4] INFO nextflow.processor.TaskProcessor - [2e/5eca88] NOTE: Process `CONPLEX_ALL (26)` terminated with an error exit status (137) -- Execution is retried (1) +Mar-23 12:42:27.381 [Task submitter] DEBUG n.executor.local.LocalTaskHandler - Launch cmd line: /bin/bash -ue .command.run +Mar-23 12:42:27.381 [Task submitter] INFO nextflow.Session - [b0/f4117d] Re-submitted process > CONPLEX_ALL (26) +Mar-23 12:42:33.874 [Task monitor] DEBUG n.processor.TaskPollingMonitor - Task completed > TaskHandler[id: 152; name: CONPLEX_ALL (30); status: COMPLETED; exit: 137; error: -; workDir: /data/bugra/digital_trials/work/e6/bffd78b931d61bc7d3d448de37dd5d] +Mar-23 12:42:33.876 [TaskFinalizer-5] DEBUG nextflow.processor.TaskProcessor - Handling unexpected condition for + task: name=CONPLEX_ALL (30); work-dir=/data/bugra/digital_trials/work/e6/bffd78b931d61bc7d3d448de37dd5d + error [nextflow.exception.ProcessFailedException]: Process `CONPLEX_ALL (30)` terminated with an error exit status (137) +Mar-23 12:42:33.877 [TaskFinalizer-5] INFO nextflow.processor.TaskProcessor - [e6/bffd78] NOTE: Process `CONPLEX_ALL (30)` terminated with an error exit status (137) -- Execution is retried (1) +Mar-23 12:42:33.888 [Task submitter] DEBUG n.executor.local.LocalTaskHandler - Launch cmd line: /bin/bash -ue .command.run +Mar-23 12:42:33.888 [Task submitter] INFO nextflow.Session - [7d/fdb02c] Re-submitted process > CONPLEX_ALL (30) +Mar-23 12:42:36.888 [Task monitor] DEBUG n.processor.TaskPollingMonitor - Task completed > TaskHandler[id: 150; name: CONPLEX_ALL (28); status: COMPLETED; exit: 137; error: -; workDir: /data/bugra/digital_trials/work/b1/057b65a97a41bbe473ee2f46eb9b40] +Mar-23 12:42:36.893 [TaskFinalizer-6] DEBUG nextflow.processor.TaskProcessor - Handling unexpected condition for + task: name=CONPLEX_ALL (28); work-dir=/data/bugra/digital_trials/work/b1/057b65a97a41bbe473ee2f46eb9b40 + error [nextflow.exception.ProcessFailedException]: Process `CONPLEX_ALL (28)` terminated with an error exit status (137) +Mar-23 12:42:36.894 [TaskFinalizer-6] INFO nextflow.processor.TaskProcessor - [b1/057b65] NOTE: Process `CONPLEX_ALL (28)` terminated with an error exit status (137) -- Execution is retried (1) +Mar-23 12:42:36.902 [Task submitter] DEBUG n.executor.local.LocalTaskHandler - Launch cmd line: /bin/bash -ue .command.run +Mar-23 12:42:36.903 [Task submitter] INFO nextflow.Session - [8a/d50b0a] Re-submitted process > CONPLEX_ALL (28) +Mar-23 12:42:38.762 [Task monitor] DEBUG n.processor.TaskPollingMonitor - Task completed > TaskHandler[id: 149; name: CONPLEX_ALL (27); status: COMPLETED; exit: 137; error: -; workDir: /data/bugra/digital_trials/work/17/80ca834858cd7e184c1bda62c00603] +Mar-23 12:42:38.764 [TaskFinalizer-8] DEBUG nextflow.processor.TaskProcessor - Handling unexpected condition for + task: name=CONPLEX_ALL (27); work-dir=/data/bugra/digital_trials/work/17/80ca834858cd7e184c1bda62c00603 + error [nextflow.exception.ProcessFailedException]: Process `CONPLEX_ALL (27)` terminated with an error exit status (137) +Mar-23 12:42:38.765 [TaskFinalizer-8] INFO nextflow.processor.TaskProcessor - [17/80ca83] NOTE: Process `CONPLEX_ALL (27)` terminated with an error exit status (137) -- Execution is retried (1) +Mar-23 12:42:38.770 [Task submitter] DEBUG n.executor.local.LocalTaskHandler - Launch cmd line: /bin/bash -ue .command.run +Mar-23 12:42:38.770 [Task submitter] INFO nextflow.Session - [34/389a02] Re-submitted process > CONPLEX_ALL (27) +Mar-23 12:42:38.845 [Task monitor] DEBUG n.processor.TaskPollingMonitor - Task completed > TaskHandler[id: 117; name: TISSUE_DISTRIBUTION (13); status: COMPLETED; exit: 0; error: -; workDir: /data/bugra/digital_trials/work/df/37378b71bdf76c2878dd171863bb83] +Mar-23 12:42:45.640 [Task monitor] DEBUG n.processor.TaskPollingMonitor - Task completed > TaskHandler[id: 134; name: TISSUE_DISTRIBUTION (18); status: COMPLETED; exit: 0; error: -; workDir: /data/bugra/digital_trials/work/07/eb38462f5d9bdba6ad8eb32015e50d] +Mar-23 12:42:45.650 [Task monitor] DEBUG n.processor.TaskPollingMonitor - Task completed > TaskHandler[id: 110; name: BIO_METRICS (10); status: COMPLETED; exit: 0; error: -; workDir: /data/bugra/digital_trials/work/9d/f715d039ac5b83b554f8480c11c08b] +Mar-23 12:42:47.104 [Task monitor] DEBUG n.processor.TaskPollingMonitor - Task completed > TaskHandler[id: 159; name: NETWORK_ENRICHMENT (23); status: COMPLETED; exit: 0; error: -; workDir: /data/bugra/digital_trials/work/30/367e53a63fb710ffd441deac10d977] +Mar-23 12:42:48.514 [Task monitor] DEBUG n.processor.TaskPollingMonitor - Task completed > TaskHandler[id: 115; name: TISSUE_DISTRIBUTION (12); status: COMPLETED; exit: 0; error: -; workDir: /data/bugra/digital_trials/work/23/e0edb40b343cab6e97f10f55f5ed5a] +Mar-23 12:42:49.125 [Task monitor] DEBUG n.processor.TaskPollingMonitor - Task completed > TaskHandler[id: 83; name: CONPLEX_ALL (24); status: COMPLETED; exit: 0; error: -; workDir: /data/bugra/digital_trials/work/9e/eb3ea15b69c05a2e60cd0a088cf8c1] +Mar-23 12:42:49.142 [Task submitter] DEBUG n.executor.local.LocalTaskHandler - Launch cmd line: /bin/bash -ue .command.run +Mar-23 12:42:49.142 [Task submitter] INFO nextflow.Session - [ca/82ccc0] Submitted process > TISSUE_DISTRIBUTION (24) +Mar-23 12:42:49.148 [Task submitter] DEBUG n.executor.local.LocalTaskHandler - Launch cmd line: /bin/bash -ue .command.run +Mar-23 12:42:49.148 [Task submitter] INFO nextflow.Session - [2c/a4ea8f] Submitted process > BIO_METRICS (24) +Mar-23 12:42:49.154 [Task submitter] DEBUG n.executor.local.LocalTaskHandler - Launch cmd line: /bin/bash -ue .command.run +Mar-23 12:42:49.155 [Task submitter] INFO nextflow.Session - [ba/75b2a6] Submitted process > NETWORK_ENRICHMENT (24) +Mar-23 12:42:51.112 [Task monitor] DEBUG n.processor.TaskPollingMonitor - Task completed > TaskHandler[id: 124; name: TISSUE_DISTRIBUTION (15); status: COMPLETED; exit: 0; error: -; workDir: /data/bugra/digital_trials/work/74/ab9e376731231ee4d73b8f8e018b03] +Mar-23 12:42:53.006 [Task monitor] DEBUG n.processor.TaskPollingMonitor - Task completed > TaskHandler[id: 151; name: CONPLEX_ALL (29); status: COMPLETED; exit: 137; error: -; workDir: /data/bugra/digital_trials/work/0f/26ca056cde3d0a0faccc5d4300ad77] +Mar-23 12:42:53.009 [TaskFinalizer-5] DEBUG nextflow.processor.TaskProcessor - Handling unexpected condition for + task: name=CONPLEX_ALL (29); work-dir=/data/bugra/digital_trials/work/0f/26ca056cde3d0a0faccc5d4300ad77 + error [nextflow.exception.ProcessFailedException]: Process `CONPLEX_ALL (29)` terminated with an error exit status (137) +Mar-23 12:42:53.009 [TaskFinalizer-5] INFO nextflow.processor.TaskProcessor - [0f/26ca05] NOTE: Process `CONPLEX_ALL (29)` terminated with an error exit status (137) -- Execution is retried (1) +Mar-23 12:42:53.019 [Task submitter] DEBUG n.executor.local.LocalTaskHandler - Launch cmd line: /bin/bash -ue .command.run +Mar-23 12:42:53.019 [Task submitter] INFO nextflow.Session - [36/87bdb0] Re-submitted process > CONPLEX_ALL (29) +Mar-23 12:42:53.120 [Task monitor] DEBUG n.processor.TaskPollingMonitor - Task completed > TaskHandler[id: 113; name: TISSUE_DISTRIBUTION (11); status: COMPLETED; exit: 0; error: -; workDir: /data/bugra/digital_trials/work/e5/8cf2969c5ca16cfee21167ab260e6a] +Mar-23 12:42:59.070 [Task monitor] DEBUG n.processor.TaskPollingMonitor - Task completed > TaskHandler[id: 119; name: BIO_METRICS (13); status: COMPLETED; exit: 0; error: -; workDir: /data/bugra/digital_trials/work/9a/2588bd738c68f1f0b9c3430ff00ba6] +Mar-23 12:43:00.711 [Task monitor] DEBUG n.processor.TaskPollingMonitor - Task completed > TaskHandler[id: 121; name: TISSUE_DISTRIBUTION (14); status: COMPLETED; exit: 0; error: -; workDir: /data/bugra/digital_trials/work/bb/e5559b9c17fe9fe9f8bfe2e025c183] +Mar-23 12:43:04.334 [Task monitor] DEBUG n.processor.TaskPollingMonitor - Task completed > TaskHandler[id: 112; name: BIO_METRICS (11); status: COMPLETED; exit: 0; error: -; workDir: /data/bugra/digital_trials/work/3b/8d8bae39a0214c412b57c1436e3d18] +Mar-23 12:43:06.770 [Task monitor] DEBUG n.processor.TaskPollingMonitor - Task completed > TaskHandler[id: 129; name: TISSUE_DISTRIBUTION (17); status: COMPLETED; exit: 0; error: -; workDir: /data/bugra/digital_trials/work/a7/3ea963b0cb5accd9c0cf7dcef07ca0] +Mar-23 12:43:07.775 [Task monitor] DEBUG n.processor.TaskPollingMonitor - Task completed > TaskHandler[id: 127; name: TISSUE_DISTRIBUTION (16); status: COMPLETED; exit: 0; error: -; workDir: /data/bugra/digital_trials/work/77/9891c577fca50a494253f4a5120458] +Mar-23 12:43:09.983 [Task monitor] DEBUG n.processor.TaskPollingMonitor - Task completed > TaskHandler[id: 116; name: BIO_METRICS (12); status: COMPLETED; exit: 0; error: -; workDir: /data/bugra/digital_trials/work/be/1a62f09fbfc5a13f64656527d26476] +Mar-23 12:43:11.024 [Task monitor] DEBUG n.processor.TaskPollingMonitor - Task completed > TaskHandler[id: 125; name: BIO_METRICS (15); status: COMPLETED; exit: 0; error: -; workDir: /data/bugra/digital_trials/work/2a/b7677df131761a1fc65c1ae07cc506] +Mar-23 12:43:18.627 [Task monitor] DEBUG n.processor.TaskPollingMonitor - Task completed > TaskHandler[id: 167; name: NETWORK_ENRICHMENT (24); status: COMPLETED; exit: 0; error: -; workDir: /data/bugra/digital_trials/work/ba/75b2a67efede49e2757e606a1c8caf] +Mar-23 12:43:23.672 [Task monitor] DEBUG n.processor.TaskPollingMonitor - Task completed > TaskHandler[id: 122; name: BIO_METRICS (14); status: COMPLETED; exit: 0; error: -; workDir: /data/bugra/digital_trials/work/41/44f65ddd2463c35daf1512af64ad53] +Mar-23 12:43:25.318 [Task monitor] DEBUG n.processor.TaskPollingMonitor - Task completed > TaskHandler[id: 126; name: BIO_METRICS (16); status: COMPLETED; exit: 0; error: -; workDir: /data/bugra/digital_trials/work/4c/8769120a19babc0bd6325e0a971ddf] +Mar-23 12:43:31.525 [Task monitor] DEBUG n.processor.TaskPollingMonitor - Task completed > TaskHandler[id: 136; name: BIO_METRICS (18); status: COMPLETED; exit: 0; error: -; workDir: /data/bugra/digital_trials/work/71/d6e25b32e8710641786734a3527926] +Mar-23 12:43:38.096 [Task monitor] DEBUG n.processor.TaskPollingMonitor - Task completed > TaskHandler[id: 97; name: TISSUE_DISTRIBUTION (6); status: COMPLETED; exit: 0; error: -; workDir: /data/bugra/digital_trials/work/06/c8de2ac82664b8e4ea4fa2d0ace04c] +Mar-23 12:43:41.450 [Task monitor] DEBUG n.processor.TaskPollingMonitor - Task completed > TaskHandler[id: 147; name: TISSUE_DISTRIBUTION (20); status: COMPLETED; exit: 0; error: -; workDir: /data/bugra/digital_trials/work/11/082da7bfa22391d70b7ccec1f21cbe] +Mar-23 12:43:57.244 [Task monitor] DEBUG n.processor.TaskPollingMonitor - Task completed > TaskHandler[id: 131; name: BIO_METRICS (17); status: COMPLETED; exit: 0; error: -; workDir: /data/bugra/digital_trials/work/33/88746ad8a88226e3f9c903ab251a72] +Mar-23 12:44:03.502 [Task monitor] DEBUG n.processor.TaskPollingMonitor - Task completed > TaskHandler[id: 142; name: TISSUE_DISTRIBUTION (19); status: COMPLETED; exit: 0; error: -; workDir: /data/bugra/digital_trials/work/20/365d8d2bad0b7a7928b3b5ccb16ef5] +Mar-23 12:44:30.557 [Task monitor] DEBUG n.processor.TaskPollingMonitor - Task completed > TaskHandler[id: 12; name: HUMAN_TRANSFORMER (12); status: COMPLETED; exit: 0; error: -; workDir: /data/bugra/digital_trials/work/d6/937a35d19297dce8b144bc2aa88b04] +Mar-23 12:44:30.579 [Task submitter] DEBUG n.executor.local.LocalTaskHandler - Launch cmd line: /bin/bash -ue .command.run +Mar-23 12:44:30.580 [Task submitter] INFO nextflow.Session - [45/f1829b] Submitted process > GET_FINAL_METABOLITES_STATIC (31) +Mar-23 12:44:37.854 [Task monitor] DEBUG n.processor.TaskPollingMonitor - Task completed > TaskHandler[id: 170; name: GET_FINAL_METABOLITES_STATIC (31); status: COMPLETED; exit: 0; error: -; workDir: /data/bugra/digital_trials/work/45/f1829b25b4f3df485be705cc48b802] +Mar-23 12:44:38.097 [Task submitter] DEBUG n.executor.local.LocalTaskHandler - Launch cmd line: /bin/bash -ue .command.run +Mar-23 12:44:38.098 [Task submitter] INFO nextflow.Session - [ab/ae2b82] Submitted process > CONPLEX_ALL (31) +Mar-23 12:44:46.347 [Task monitor] DEBUG n.processor.TaskPollingMonitor - Task completed > TaskHandler[id: 141; name: BIO_METRICS (19); status: COMPLETED; exit: 0; error: -; workDir: /data/bugra/digital_trials/work/3a/83663f248b80abd0bd711b5851e130] +Mar-23 12:44:52.756 [Task monitor] DEBUG n.processor.TaskPollingMonitor - Task completed > TaskHandler[id: 138; name: CONPLEX_ALL (25); status: COMPLETED; exit: 0; error: -; workDir: /data/bugra/digital_trials/work/08/033ef25b49e18111d147d94fa5e9cc] +Mar-23 12:44:52.773 [Task submitter] DEBUG n.executor.local.LocalTaskHandler - Launch cmd line: /bin/bash -ue .command.run +Mar-23 12:44:52.774 [Task submitter] INFO nextflow.Session - [1d/835cc1] Submitted process > TISSUE_DISTRIBUTION (25) +Mar-23 12:44:52.780 [Task submitter] DEBUG n.executor.local.LocalTaskHandler - Launch cmd line: /bin/bash -ue .command.run +Mar-23 12:44:52.780 [Task submitter] INFO nextflow.Session - [6b/e16abe] Submitted process > NETWORK_ENRICHMENT (25) +Mar-23 12:44:52.787 [Task submitter] DEBUG n.executor.local.LocalTaskHandler - Launch cmd line: /bin/bash -ue .command.run +Mar-23 12:44:52.787 [Task submitter] INFO nextflow.Session - [aa/55bfe8] Submitted process > BIO_METRICS (25) +Mar-23 12:44:56.670 [Task monitor] DEBUG n.processor.TaskPollingMonitor - Task completed > TaskHandler[id: 146; name: BIO_METRICS (20); status: COMPLETED; exit: 0; error: -; workDir: /data/bugra/digital_trials/work/dc/26dfd877e58d766955e8a73e475a07] +Mar-23 12:44:58.289 [Task monitor] DEBUG n.processor.TaskPollingMonitor - Task completed > TaskHandler[id: 153; name: TISSUE_DISTRIBUTION (21); status: COMPLETED; exit: 0; error: -; workDir: /data/bugra/digital_trials/work/7b/fb352b6e09abc1540368c2236e8256] +Mar-23 12:45:00.346 [Task monitor] DEBUG n.processor.TaskPollingMonitor - Task completed > TaskHandler[id: 158; name: TISSUE_DISTRIBUTION (22); status: COMPLETED; exit: 0; error: -; workDir: /data/bugra/digital_trials/work/57/539445dedec26946d36643db2589db] +Mar-23 12:45:01.619 [Task monitor] DEBUG n.processor.TaskPollingMonitor - Task completed > TaskHandler[id: 172; name: NETWORK_ENRICHMENT (25); status: COMPLETED; exit: 0; error: -; workDir: /data/bugra/digital_trials/work/6b/e16abeb9a9c0520d86e7f1541b5743] +Mar-23 12:45:36.525 [Task monitor] DEBUG n.processor.TaskPollingMonitor - Task completed > TaskHandler[id: 160; name: TISSUE_DISTRIBUTION (23); status: COMPLETED; exit: 0; error: -; workDir: /data/bugra/digital_trials/work/e0/27ecec03371e5c50a226da16062585] +Mar-23 12:46:01.360 [Task monitor] DEBUG n.processor.TaskPollingMonitor - Task completed > TaskHandler[id: 16; name: HUMAN_TRANSFORMER (16); status: COMPLETED; exit: 0; error: -; workDir: /data/bugra/digital_trials/work/f1/b1e309add0f1cd88797c7527fdf6f3] +Mar-23 12:46:01.384 [Task submitter] DEBUG n.executor.local.LocalTaskHandler - Launch cmd line: /bin/bash -ue .command.run +Mar-23 12:46:01.385 [Task submitter] INFO nextflow.Session - [0a/d4196d] Submitted process > GET_FINAL_METABOLITES_STATIC (32) +Mar-23 12:46:07.899 [Task monitor] DEBUG n.processor.TaskPollingMonitor - Task completed > TaskHandler[id: 175; name: GET_FINAL_METABOLITES_STATIC (32); status: COMPLETED; exit: 0; error: -; workDir: /data/bugra/digital_trials/work/0a/d4196d87e1a8ef468783e1e1c79ce0] +Mar-23 12:46:07.922 [Task submitter] DEBUG n.executor.local.LocalTaskHandler - Launch cmd line: /bin/bash -ue .command.run +Mar-23 12:46:07.922 [Task submitter] INFO nextflow.Session - [a5/442c00] Submitted process > CONPLEX_ALL (32) +Mar-23 12:46:10.425 [Task monitor] DEBUG n.processor.TaskPollingMonitor - Task completed > TaskHandler[id: 168; name: TISSUE_DISTRIBUTION (24); status: COMPLETED; exit: 0; error: -; workDir: /data/bugra/digital_trials/work/ca/82ccc0e2a0af7a1bf260340e34c41e] +Mar-23 12:46:14.425 [Task monitor] DEBUG n.processor.TaskPollingMonitor - Task completed > TaskHandler[id: 155; name: BIO_METRICS (21); status: COMPLETED; exit: 0; error: -; workDir: /data/bugra/digital_trials/work/4f/7fe0cb8a6e108636ff6e7ed72823dc] +Mar-23 12:46:16.494 [Task monitor] DEBUG n.processor.TaskPollingMonitor - Task completed > TaskHandler[id: 156; name: BIO_METRICS (22); status: COMPLETED; exit: 0; error: -; workDir: /data/bugra/digital_trials/work/73/7f03385bcff8b67e3e71660f0b2be3] +Mar-23 12:46:45.647 [Task monitor] DEBUG n.processor.TaskPollingMonitor - !! executor local > tasks to be completed: 11 -- submitted tasks are shown below +~> TaskHandler[id: 161; name: BIO_METRICS (23); status: RUNNING; exit: -; error: -; workDir: /data/bugra/digital_trials/work/81/57b8bf8804037a9684d53e7fcbe5b3] +~> TaskHandler[id: 162; name: CONPLEX_ALL (26); status: RUNNING; exit: -; error: -; workDir: /data/bugra/digital_trials/work/b0/f4117da8bcb4e3fc730d2c03ba15dd] +~> TaskHandler[id: 163; name: CONPLEX_ALL (30); status: RUNNING; exit: -; error: -; workDir: /data/bugra/digital_trials/work/7d/fdb02caa4facf542099ed7099fc3be] +~> TaskHandler[id: 164; name: CONPLEX_ALL (28); status: RUNNING; exit: -; error: -; workDir: /data/bugra/digital_trials/work/8a/d50b0a94c90015f90f3e362b3d7d66] +~> TaskHandler[id: 165; name: CONPLEX_ALL (27); status: RUNNING; exit: -; error: -; workDir: /data/bugra/digital_trials/work/34/389a021aae6a91d9c31b4617ed5f9b] +~> TaskHandler[id: 166; name: BIO_METRICS (24); status: RUNNING; exit: -; error: -; workDir: /data/bugra/digital_trials/work/2c/a4ea8fafbe9245f2e726a094c64255] +~> TaskHandler[id: 169; name: CONPLEX_ALL (29); status: RUNNING; exit: -; error: -; workDir: /data/bugra/digital_trials/work/36/87bdb06ca1815d4a2c374961f0b77b] +~> TaskHandler[id: 171; name: CONPLEX_ALL (31); status: RUNNING; exit: -; error: -; workDir: /data/bugra/digital_trials/work/ab/ae2b82ac588f8923a06cb0eed5c49b] +~> TaskHandler[id: 174; name: TISSUE_DISTRIBUTION (25); status: RUNNING; exit: -; error: -; workDir: /data/bugra/digital_trials/work/1d/835cc1e8516441e62d198308716622] +~> TaskHandler[id: 173; name: BIO_METRICS (25); status: RUNNING; exit: -; error: -; workDir: /data/bugra/digital_trials/work/aa/55bfe82411e2b1e6eed1e4f477aa67] +Mar-23 12:46:58.038 [Task monitor] DEBUG n.processor.TaskPollingMonitor - Task completed > TaskHandler[id: 162; name: CONPLEX_ALL (26); status: COMPLETED; exit: 0; error: -; workDir: /data/bugra/digital_trials/work/b0/f4117da8bcb4e3fc730d2c03ba15dd] +Mar-23 12:46:58.056 [Task submitter] DEBUG n.executor.local.LocalTaskHandler - Launch cmd line: /bin/bash -ue .command.run +Mar-23 12:46:58.056 [Task submitter] INFO nextflow.Session - [be/3ae495] Submitted process > TISSUE_DISTRIBUTION (26) +Mar-23 12:46:58.063 [Task submitter] DEBUG n.executor.local.LocalTaskHandler - Launch cmd line: /bin/bash -ue .command.run +Mar-23 12:46:58.063 [Task submitter] INFO nextflow.Session - [46/111673] Submitted process > NETWORK_ENRICHMENT (26) +Mar-23 12:46:58.071 [Task submitter] DEBUG n.executor.local.LocalTaskHandler - Launch cmd line: /bin/bash -ue .command.run +Mar-23 12:46:58.071 [Task submitter] INFO nextflow.Session - [ea/71f9ff] Submitted process > BIO_METRICS (26) +Mar-23 12:47:15.106 [Task monitor] DEBUG n.processor.TaskPollingMonitor - Task completed > TaskHandler[id: 161; name: BIO_METRICS (23); status: COMPLETED; exit: 0; error: -; workDir: /data/bugra/digital_trials/work/81/57b8bf8804037a9684d53e7fcbe5b3] +Mar-23 12:47:21.919 [Task monitor] DEBUG n.processor.TaskPollingMonitor - Task completed > TaskHandler[id: 178; name: NETWORK_ENRICHMENT (26); status: COMPLETED; exit: 0; error: -; workDir: /data/bugra/digital_trials/work/46/111673a303dccfac38753031b1bec3] +Mar-23 12:47:23.281 [Task monitor] DEBUG n.processor.TaskPollingMonitor - Task completed > TaskHandler[id: 163; name: CONPLEX_ALL (30); status: COMPLETED; exit: 0; error: -; workDir: /data/bugra/digital_trials/work/7d/fdb02caa4facf542099ed7099fc3be] +Mar-23 12:47:23.303 [Task submitter] DEBUG n.executor.local.LocalTaskHandler - Launch cmd line: /bin/bash -ue .command.run +Mar-23 12:47:23.304 [Task submitter] INFO nextflow.Session - [88/263dd7] Submitted process > TISSUE_DISTRIBUTION (27) +Mar-23 12:47:23.311 [Task submitter] DEBUG n.executor.local.LocalTaskHandler - Launch cmd line: /bin/bash -ue .command.run +Mar-23 12:47:23.311 [Task submitter] INFO nextflow.Session - [22/774136] Submitted process > NETWORK_ENRICHMENT (27) +Mar-23 12:47:23.319 [Task submitter] DEBUG n.executor.local.LocalTaskHandler - Launch cmd line: /bin/bash -ue .command.run +Mar-23 12:47:23.319 [Task submitter] INFO nextflow.Session - [ee/901f77] Submitted process > BIO_METRICS (27) +Mar-23 12:47:29.163 [Task monitor] DEBUG n.processor.TaskPollingMonitor - Task completed > TaskHandler[id: 165; name: CONPLEX_ALL (27); status: COMPLETED; exit: 0; error: -; workDir: /data/bugra/digital_trials/work/34/389a021aae6a91d9c31b4617ed5f9b] +Mar-23 12:47:29.185 [Task submitter] DEBUG n.executor.local.LocalTaskHandler - Launch cmd line: /bin/bash -ue .command.run +Mar-23 12:47:29.185 [Task submitter] INFO nextflow.Session - [31/4d6017] Submitted process > TISSUE_DISTRIBUTION (28) +Mar-23 12:47:29.197 [Task submitter] DEBUG n.executor.local.LocalTaskHandler - Launch cmd line: /bin/bash -ue .command.run +Mar-23 12:47:29.198 [Task submitter] INFO nextflow.Session - [71/4770d2] Submitted process > BIO_METRICS (28) +Mar-23 12:47:29.206 [Task submitter] DEBUG n.executor.local.LocalTaskHandler - Launch cmd line: /bin/bash -ue .command.run +Mar-23 12:47:29.207 [Task submitter] INFO nextflow.Session - [e6/75c16c] Submitted process > NETWORK_ENRICHMENT (28) +Mar-23 12:47:35.455 [Task monitor] DEBUG n.processor.TaskPollingMonitor - Task completed > TaskHandler[id: 164; name: CONPLEX_ALL (28); status: COMPLETED; exit: 0; error: -; workDir: /data/bugra/digital_trials/work/8a/d50b0a94c90015f90f3e362b3d7d66] +Mar-23 12:47:35.475 [Task submitter] DEBUG n.executor.local.LocalTaskHandler - Launch cmd line: /bin/bash -ue .command.run +Mar-23 12:47:35.476 [Task submitter] INFO nextflow.Session - [cd/02c261] Submitted process > NETWORK_ENRICHMENT (29) +Mar-23 12:47:35.481 [Task submitter] DEBUG n.executor.local.LocalTaskHandler - Launch cmd line: /bin/bash -ue .command.run +Mar-23 12:47:35.482 [Task submitter] INFO nextflow.Session - [66/756e3b] Submitted process > TISSUE_DISTRIBUTION (29) +Mar-23 12:47:35.490 [Task submitter] DEBUG n.executor.local.LocalTaskHandler - Launch cmd line: /bin/bash -ue .command.run +Mar-23 12:47:35.490 [Task submitter] INFO nextflow.Session - [73/6a98d9] Submitted process > BIO_METRICS (29) +Mar-23 12:47:38.389 [Task monitor] DEBUG n.processor.TaskPollingMonitor - Task completed > TaskHandler[id: 169; name: CONPLEX_ALL (29); status: COMPLETED; exit: 0; error: -; workDir: /data/bugra/digital_trials/work/36/87bdb06ca1815d4a2c374961f0b77b] +Mar-23 12:47:38.404 [Task submitter] DEBUG n.executor.local.LocalTaskHandler - Launch cmd line: /bin/bash -ue .command.run +Mar-23 12:47:38.405 [Task submitter] INFO nextflow.Session - [56/a7eff7] Submitted process > NETWORK_ENRICHMENT (30) +Mar-23 12:47:38.410 [Task submitter] DEBUG n.executor.local.LocalTaskHandler - Launch cmd line: /bin/bash -ue .command.run +Mar-23 12:47:38.411 [Task submitter] INFO nextflow.Session - [e6/6470b7] Submitted process > BIO_METRICS (30) +Mar-23 12:47:38.416 [Task submitter] DEBUG n.executor.local.LocalTaskHandler - Launch cmd line: /bin/bash -ue .command.run +Mar-23 12:47:38.416 [Task submitter] INFO nextflow.Session - [84/87263a] Submitted process > TISSUE_DISTRIBUTION (30) +Mar-23 12:47:46.501 [Task monitor] DEBUG n.processor.TaskPollingMonitor - Task completed > TaskHandler[id: 166; name: BIO_METRICS (24); status: COMPLETED; exit: 0; error: -; workDir: /data/bugra/digital_trials/work/2c/a4ea8fafbe9245f2e726a094c64255] +Mar-23 12:47:57.793 [Task monitor] DEBUG n.processor.TaskPollingMonitor - Task completed > TaskHandler[id: 181; name: NETWORK_ENRICHMENT (27); status: COMPLETED; exit: 0; error: -; workDir: /data/bugra/digital_trials/work/22/7741360aff319d2cc7a86045382efc] +Mar-23 12:48:08.279 [Task monitor] DEBUG n.processor.TaskPollingMonitor - Task completed > TaskHandler[id: 185; name: NETWORK_ENRICHMENT (28); status: COMPLETED; exit: 0; error: -; workDir: /data/bugra/digital_trials/work/e6/75c16cbf79da0b24beceff8e168ca0] +Mar-23 12:48:09.527 [Task monitor] DEBUG n.processor.TaskPollingMonitor - Task completed > TaskHandler[id: 186; name: NETWORK_ENRICHMENT (29); status: COMPLETED; exit: 0; error: -; workDir: /data/bugra/digital_trials/work/cd/02c261e8fb5efe121619696a80eaa9] +Mar-23 12:48:19.727 [Task monitor] DEBUG n.processor.TaskPollingMonitor - Task completed > TaskHandler[id: 189; name: NETWORK_ENRICHMENT (30); status: COMPLETED; exit: 0; error: -; workDir: /data/bugra/digital_trials/work/56/a7eff72cc801847e15229fc8c18689] +Mar-23 12:48:27.070 [Task monitor] DEBUG n.processor.TaskPollingMonitor - Task completed > TaskHandler[id: 174; name: TISSUE_DISTRIBUTION (25); status: COMPLETED; exit: 0; error: -; workDir: /data/bugra/digital_trials/work/1d/835cc1e8516441e62d198308716622] +Mar-23 12:49:53.547 [Task monitor] DEBUG n.processor.TaskPollingMonitor - Task completed > TaskHandler[id: 173; name: BIO_METRICS (25); status: COMPLETED; exit: 0; error: -; workDir: /data/bugra/digital_trials/work/aa/55bfe82411e2b1e6eed1e4f477aa67] +Mar-23 12:50:15.102 [Task monitor] DEBUG n.processor.TaskPollingMonitor - Task completed > TaskHandler[id: 179; name: TISSUE_DISTRIBUTION (26); status: COMPLETED; exit: 0; error: -; workDir: /data/bugra/digital_trials/work/be/3ae4956f6f27c011788bb1ac918559] +Mar-23 12:50:21.853 [Task monitor] DEBUG n.processor.TaskPollingMonitor - Task completed > TaskHandler[id: 171; name: CONPLEX_ALL (31); status: COMPLETED; exit: 0; error: -; workDir: /data/bugra/digital_trials/work/ab/ae2b82ac588f8923a06cb0eed5c49b] +Mar-23 12:50:21.876 [Task submitter] DEBUG n.executor.local.LocalTaskHandler - Launch cmd line: /bin/bash -ue .command.run +Mar-23 12:50:21.877 [Task submitter] INFO nextflow.Session - [a7/cd7d1e] Submitted process > NETWORK_ENRICHMENT (31) +Mar-23 12:50:21.884 [Task submitter] DEBUG n.executor.local.LocalTaskHandler - Launch cmd line: /bin/bash -ue .command.run +Mar-23 12:50:21.885 [Task submitter] INFO nextflow.Session - [c1/90656b] Submitted process > TISSUE_DISTRIBUTION (31) +Mar-23 12:50:21.892 [Task submitter] DEBUG n.executor.local.LocalTaskHandler - Launch cmd line: /bin/bash -ue .command.run +Mar-23 12:50:21.893 [Task submitter] INFO nextflow.Session - [00/9f994b] Submitted process > BIO_METRICS (31) +Mar-23 12:50:41.432 [Task monitor] DEBUG n.processor.TaskPollingMonitor - Task completed > TaskHandler[id: 180; name: TISSUE_DISTRIBUTION (27); status: COMPLETED; exit: 0; error: -; workDir: /data/bugra/digital_trials/work/88/263dd77fb345314be930f39cd14482] +Mar-23 12:50:45.129 [Task monitor] DEBUG n.processor.TaskPollingMonitor - Task completed > TaskHandler[id: 193; name: NETWORK_ENRICHMENT (31); status: COMPLETED; exit: 0; error: -; workDir: /data/bugra/digital_trials/work/a7/cd7d1e33e61aec81febf58824af86a] +Mar-23 12:50:50.660 [Task monitor] DEBUG n.processor.TaskPollingMonitor - Task completed > TaskHandler[id: 176; name: CONPLEX_ALL (32); status: COMPLETED; exit: 0; error: -; workDir: /data/bugra/digital_trials/work/a5/442c0005dd3b8de416fbc41833aad1] +Mar-23 12:50:50.685 [Task submitter] DEBUG n.executor.local.LocalTaskHandler - Launch cmd line: /bin/bash -ue .command.run +Mar-23 12:50:50.685 [Task submitter] INFO nextflow.Session - [ab/e04a6b] Submitted process > TISSUE_DISTRIBUTION (32) +Mar-23 12:50:50.692 [Task submitter] DEBUG n.executor.local.LocalTaskHandler - Launch cmd line: /bin/bash -ue .command.run +Mar-23 12:50:50.692 [Task submitter] INFO nextflow.Session - [f4/c186c7] Submitted process > NETWORK_ENRICHMENT (32) +Mar-23 12:50:50.699 [Task submitter] DEBUG n.executor.local.LocalTaskHandler - Launch cmd line: /bin/bash -ue .command.run +Mar-23 12:50:50.700 [Task submitter] INFO nextflow.Session - [4f/1c0edc] Submitted process > BIO_METRICS (32) +Mar-23 12:50:57.650 [Task monitor] DEBUG n.processor.TaskPollingMonitor - Task completed > TaskHandler[id: 190; name: TISSUE_DISTRIBUTION (30); status: COMPLETED; exit: 0; error: -; workDir: /data/bugra/digital_trials/work/84/87263a9f4c58567a49ffca61693a9d] +Mar-23 12:50:59.209 [Task monitor] DEBUG n.processor.TaskPollingMonitor - Task completed > TaskHandler[id: 183; name: TISSUE_DISTRIBUTION (28); status: COMPLETED; exit: 0; error: -; workDir: /data/bugra/digital_trials/work/31/4d60170d7411af2597d44531f936d6] +Mar-23 12:51:01.431 [Task monitor] DEBUG n.processor.TaskPollingMonitor - Task completed > TaskHandler[id: 187; name: TISSUE_DISTRIBUTION (29); status: COMPLETED; exit: 0; error: -; workDir: /data/bugra/digital_trials/work/66/756e3b7cedd5360359f276390f6a76] +Mar-23 12:51:14.271 [Task monitor] DEBUG n.processor.TaskPollingMonitor - Task completed > TaskHandler[id: 195; name: NETWORK_ENRICHMENT (32); status: COMPLETED; exit: 0; error: -; workDir: /data/bugra/digital_trials/work/f4/c186c727624024d8307b91a07ccd87] +Mar-23 12:51:45.712 [Task monitor] DEBUG n.processor.TaskPollingMonitor - !! executor local > tasks to be completed: 9 -- submitted tasks are shown below +~> TaskHandler[id: 177; name: BIO_METRICS (26); status: RUNNING; exit: -; error: -; workDir: /data/bugra/digital_trials/work/ea/71f9ff3cd694cabbbd2cc9e6fb0f10] +~> TaskHandler[id: 182; name: BIO_METRICS (27); status: RUNNING; exit: -; error: -; workDir: /data/bugra/digital_trials/work/ee/901f7799c39e4f135cef17a6fb192f] +~> TaskHandler[id: 184; name: BIO_METRICS (28); status: RUNNING; exit: -; error: -; workDir: /data/bugra/digital_trials/work/71/4770d26c1683d21b8608dfa37b2007] +~> TaskHandler[id: 188; name: BIO_METRICS (29); status: RUNNING; exit: -; error: -; workDir: /data/bugra/digital_trials/work/73/6a98d9dfb6cac2596cfad30611988e] +~> TaskHandler[id: 191; name: BIO_METRICS (30); status: RUNNING; exit: -; error: -; workDir: /data/bugra/digital_trials/work/e6/6470b7d646985f5c5c2beb931703b1] +~> TaskHandler[id: 192; name: TISSUE_DISTRIBUTION (31); status: RUNNING; exit: -; error: -; workDir: /data/bugra/digital_trials/work/c1/90656b98274556b91bbec9df9b84a4] +~> TaskHandler[id: 194; name: BIO_METRICS (31); status: RUNNING; exit: -; error: -; workDir: /data/bugra/digital_trials/work/00/9f994bbf43db001db949e4b5d4aee5] +~> TaskHandler[id: 196; name: TISSUE_DISTRIBUTION (32); status: RUNNING; exit: -; error: -; workDir: /data/bugra/digital_trials/work/ab/e04a6b36921f8a90c0ea146cf5304f] +~> TaskHandler[id: 197; name: BIO_METRICS (32); status: RUNNING; exit: -; error: -; workDir: /data/bugra/digital_trials/work/4f/1c0edc01e00b16365405f69ec56ac7] +Mar-23 12:52:18.652 [Task monitor] DEBUG n.processor.TaskPollingMonitor - Task completed > TaskHandler[id: 177; name: BIO_METRICS (26); status: COMPLETED; exit: 0; error: -; workDir: /data/bugra/digital_trials/work/ea/71f9ff3cd694cabbbd2cc9e6fb0f10] +Mar-23 12:52:43.125 [Task monitor] DEBUG n.processor.TaskPollingMonitor - Task completed > TaskHandler[id: 184; name: BIO_METRICS (28); status: COMPLETED; exit: 0; error: -; workDir: /data/bugra/digital_trials/work/71/4770d26c1683d21b8608dfa37b2007] +Mar-23 12:52:54.873 [Task monitor] DEBUG n.processor.TaskPollingMonitor - Task completed > TaskHandler[id: 188; name: BIO_METRICS (29); status: COMPLETED; exit: 0; error: -; workDir: /data/bugra/digital_trials/work/73/6a98d9dfb6cac2596cfad30611988e] +Mar-23 12:52:59.195 [Task monitor] DEBUG n.processor.TaskPollingMonitor - Task completed > TaskHandler[id: 182; name: BIO_METRICS (27); status: COMPLETED; exit: 0; error: -; workDir: /data/bugra/digital_trials/work/ee/901f7799c39e4f135cef17a6fb192f] +Mar-23 12:53:14.006 [Task monitor] DEBUG n.processor.TaskPollingMonitor - Task completed > TaskHandler[id: 191; name: BIO_METRICS (30); status: COMPLETED; exit: 0; error: -; workDir: /data/bugra/digital_trials/work/e6/6470b7d646985f5c5c2beb931703b1] +Mar-23 12:55:10.091 [Task monitor] DEBUG n.processor.TaskPollingMonitor - Task completed > TaskHandler[id: 196; name: TISSUE_DISTRIBUTION (32); status: COMPLETED; exit: 0; error: -; workDir: /data/bugra/digital_trials/work/ab/e04a6b36921f8a90c0ea146cf5304f] +Mar-23 12:56:14.510 [Task monitor] DEBUG n.processor.TaskPollingMonitor - Task completed > TaskHandler[id: 197; name: BIO_METRICS (32); status: COMPLETED; exit: 0; error: -; workDir: /data/bugra/digital_trials/work/4f/1c0edc01e00b16365405f69ec56ac7] +Mar-23 12:56:24.917 [Task monitor] DEBUG n.processor.TaskPollingMonitor - Task completed > TaskHandler[id: 192; name: TISSUE_DISTRIBUTION (31); status: COMPLETED; exit: 0; error: -; workDir: /data/bugra/digital_trials/work/c1/90656b98274556b91bbec9df9b84a4] +Mar-23 12:56:45.747 [Task monitor] DEBUG n.processor.TaskPollingMonitor - !! executor local > tasks to be completed: 1 -- submitted tasks are shown below +~> TaskHandler[id: 194; name: BIO_METRICS (31); status: RUNNING; exit: -; error: -; workDir: /data/bugra/digital_trials/work/00/9f994bbf43db001db949e4b5d4aee5] +Mar-23 12:58:48.217 [Task monitor] DEBUG n.processor.TaskPollingMonitor - Task completed > TaskHandler[id: 194; name: BIO_METRICS (31); status: COMPLETED; exit: 0; error: -; workDir: /data/bugra/digital_trials/work/00/9f994bbf43db001db949e4b5d4aee5] +Mar-23 12:58:48.222 [main] DEBUG nextflow.Session - Session await > all processes finished +Mar-23 12:58:48.318 [Task monitor] DEBUG n.processor.TaskPollingMonitor - <<< barrier arrives (monitor: local) - terminating tasks monitor poll loop +Mar-23 12:58:48.318 [main] DEBUG nextflow.Session - Session await > all barriers passed +Mar-23 12:58:48.321 [main] DEBUG nextflow.util.ThreadPoolManager - Thread pool 'TaskFinalizer' shutdown completed (hard=false) +Mar-23 12:58:48.322 [main] DEBUG nextflow.util.ThreadPoolManager - Thread pool 'PublishDir' shutdown completed (hard=false) +Mar-23 12:58:48.339 [main] DEBUG n.trace.WorkflowStatsObserver - Workflow completed > WorkflowStats[succeededCount=192; failedCount=5; ignoredCount=0; cachedCount=0; pendingCount=0; submittedCount=0; runningCount=0; retriesCount=5; abortedCount=0; succeedDuration=9h 44m 45s; failedDuration=11m 48s; cachedDuration=0ms;loadCpus=0; loadMemory=0; peakRunning=62; peakCpus=62; peakMemory=250 GB; ] +Mar-23 12:58:48.481 [main] DEBUG nextflow.cache.CacheDB - Closing CacheDB done +Mar-23 12:58:48.552 [main] INFO org.pf4j.AbstractPluginManager - Stop plugin 'nf-tower@1.11.3' +Mar-23 12:58:48.552 [main] DEBUG nextflow.plugin.BasePlugin - Plugin stopped nf-tower +Mar-23 12:58:48.553 [main] DEBUG nextflow.util.ThreadPoolManager - Thread pool 'FileTransfer' shutdown completed (hard=false) +Mar-23 12:58:48.554 [main] DEBUG nextflow.script.ScriptRunner - > Execution complete -- Goodbye diff --git a/.nextflow.log.2 b/.nextflow.log.2 new file mode 100644 index 0000000..4e3ad86 --- /dev/null +++ b/.nextflow.log.2 @@ -0,0 +1,971 @@ +Mar-18 21:20:15.931 [main] DEBUG nextflow.cli.Launcher - $> nextflow run test.nf -params-file /data/digital-trials-data/gabe-run3/gabe-run3.json +Mar-18 21:20:16.316 [main] DEBUG nextflow.cli.CmdRun - N E X T F L O W ~ version 25.04.3 +Mar-18 21:20:16.347 [main] DEBUG nextflow.plugin.PluginsFacade - Setting up plugin manager > mode=prod; embedded=false; plugins-dir=/home/omic/.nextflow/plugins; core-plugins: nf-amazon@2.15.0,nf-azure@1.16.0,nf-cloudcache@0.4.3,nf-codecommit@0.2.3,nf-console@1.2.1,nf-google@1.21.0,nf-k8s@1.0.0,nf-tower@1.11.3,nf-wave@1.12.1 +Mar-18 21:20:16.384 [main] INFO o.pf4j.DefaultPluginStatusProvider - Enabled plugins: [] +Mar-18 21:20:16.386 [main] INFO o.pf4j.DefaultPluginStatusProvider - Disabled plugins: [] +Mar-18 21:20:16.389 [main] INFO org.pf4j.DefaultPluginManager - PF4J version 3.12.0 in 'deployment' mode +Mar-18 21:20:16.403 [main] INFO org.pf4j.AbstractPluginManager - No plugins +Mar-18 21:20:16.429 [main] DEBUG nextflow.config.ConfigBuilder - Found config local: /data/bugra/digital_trials/nextflow.config +Mar-18 21:20:16.432 [main] DEBUG nextflow.config.ConfigBuilder - Parsing config file: /data/bugra/digital_trials/nextflow.config +Mar-18 21:20:16.471 [main] DEBUG n.secret.LocalSecretsProvider - Secrets store: /home/omic/.nextflow/secrets/store.json +Mar-18 21:20:16.476 [main] DEBUG nextflow.secret.SecretsLoader - Discovered secrets providers: [nextflow.secret.LocalSecretsProvider@6ef81f31] - activable => nextflow.secret.LocalSecretsProvider@6ef81f31 +Mar-18 21:20:16.506 [main] DEBUG nextflow.config.ConfigBuilder - Applying config profile: `standard` +Mar-18 21:20:17.272 [main] DEBUG nextflow.cli.CmdRun - Applied DSL=2 from script declaration +Mar-18 21:20:17.293 [main] DEBUG nextflow.cli.CmdRun - Launching `test.nf` [zen_sax] DSL2 - revision: 0e14afbd94 +Mar-18 21:20:17.295 [main] DEBUG nextflow.plugin.PluginsFacade - Plugins default=[] +Mar-18 21:20:17.296 [main] DEBUG nextflow.plugin.PluginsFacade - Plugins resolved requirement=[nf-tower@1.11.3] +Mar-18 21:20:17.299 [main] DEBUG nextflow.plugin.PluginUpdater - Installing plugin nf-tower version: 1.11.3 +Mar-18 21:20:17.312 [main] INFO org.pf4j.AbstractPluginManager - Plugin 'nf-tower@1.11.3' resolved +Mar-18 21:20:17.312 [main] INFO org.pf4j.AbstractPluginManager - Start plugin 'nf-tower@1.11.3' +Mar-18 21:20:17.328 [main] DEBUG nextflow.plugin.BasePlugin - Plugin started nf-tower@1.11.3 +Mar-18 21:20:17.398 [main] DEBUG nextflow.Session - Session UUID: e75e46d9-ad7d-4b56-bdf1-9a1c0923dd64 +Mar-18 21:20:17.398 [main] DEBUG nextflow.Session - Run name: zen_sax +Mar-18 21:20:17.399 [main] DEBUG nextflow.Session - Executor pool size: 80 +Mar-18 21:20:17.410 [main] DEBUG nextflow.file.FilePorter - File porter settings maxRetries=3; maxTransfers=50; pollTimeout=null +Mar-18 21:20:17.418 [main] DEBUG nextflow.util.ThreadPoolBuilder - Creating thread pool 'FileTransfer' minSize=10; maxSize=240; workQueue=LinkedBlockingQueue[-1]; allowCoreThreadTimeout=false +Mar-18 21:20:17.450 [main] DEBUG nextflow.cli.CmdRun - + Version: 25.04.3 build 5949 + Created: 02-06-2025 20:56 UTC + System: Linux 6.11.0-26-generic + Runtime: Groovy 4.0.26 on OpenJDK 64-Bit Server VM 21.0.7+6-Ubuntu-0ubuntu124.04 + Encoding: UTF-8 (UTF-8) + Process: 761650@k8s-node23 [127.0.1.1] + CPUs: 80 - Mem: 251.6 GB (27.7 GB) - Swap: 0 (0) +Mar-18 21:20:17.481 [main] DEBUG nextflow.Session - Work-dir: /data/bugra/digital_trials/work [btrfs] +Mar-18 21:20:17.482 [main] DEBUG nextflow.Session - Script base path does not exist or is not a directory: /data/bugra/digital_trials/bin +Mar-18 21:20:17.499 [main] DEBUG nextflow.executor.ExecutorFactory - Extension executors providers=[] +Mar-18 21:20:17.519 [main] DEBUG nextflow.Session - Observer factory: DefaultObserverFactory +Mar-18 21:20:17.525 [main] DEBUG nextflow.Session - Observer factory: TowerFactory +Mar-18 21:20:17.528 [main] DEBUG nextflow.Session - Observer factory (v2): LinObserverFactory +Mar-18 21:20:17.561 [main] DEBUG nextflow.cache.CacheFactory - Using Nextflow cache factory: nextflow.cache.DefaultCacheFactory +Mar-18 21:20:17.574 [main] DEBUG nextflow.util.CustomThreadPool - Creating default thread pool > poolSize: 81; maxThreads: 1000 +Mar-18 21:20:17.799 [main] DEBUG nextflow.Session - Session start +Mar-18 21:20:18.332 [main] DEBUG nextflow.script.ScriptRunner - > Launching execution +Mar-18 21:20:19.266 [main] DEBUG nextflow.executor.ExecutorFactory - << taskConfig executor: null +Mar-18 21:20:19.266 [main] DEBUG nextflow.executor.ExecutorFactory - >> processorType: 'local' +Mar-18 21:20:19.274 [main] DEBUG nextflow.executor.Executor - [warm up] executor > local +Mar-18 21:20:19.284 [main] DEBUG n.processor.LocalPollingMonitor - Creating local task monitor for executor 'local' > cpus=80; memory=251.6 GB; capacity=80; pollInterval=100ms; dumpInterval=5m +Mar-18 21:20:19.287 [main] DEBUG n.processor.TaskPollingMonitor - >>> barrier register (monitor: local) +Mar-18 21:20:19.324 [main] DEBUG nextflow.processor.TaskProcessor - Creating process 'HUMAN_TRANSFORMER': maxForks=0; fair=false; array=0 +Mar-18 21:20:19.430 [main] DEBUG nextflow.executor.ExecutorFactory - << taskConfig executor: null +Mar-18 21:20:19.431 [main] DEBUG nextflow.executor.ExecutorFactory - >> processorType: 'local' +Mar-18 21:20:19.433 [main] DEBUG nextflow.processor.TaskProcessor - Creating process 'GET_FINAL_METABOLITES_STATIC': maxForks=0; fair=false; array=0 +Mar-18 21:20:19.447 [main] DEBUG nextflow.script.ProcessConfig - Config settings `withLabel:gpu_process` matches labels `gpu_process` for process with name PREPROCESS_PROTEIN +Mar-18 21:20:19.453 [main] DEBUG nextflow.executor.ExecutorFactory - << taskConfig executor: null +Mar-18 21:20:19.453 [main] DEBUG nextflow.executor.ExecutorFactory - >> processorType: 'local' +Mar-18 21:20:19.455 [main] DEBUG nextflow.processor.TaskProcessor - Creating process 'PREPROCESS_PROTEIN': maxForks=0; fair=false; array=0 +Mar-18 21:20:19.524 [main] DEBUG nextflow.executor.ExecutorFactory - << taskConfig executor: null +Mar-18 21:20:19.525 [main] DEBUG nextflow.executor.ExecutorFactory - >> processorType: 'local' +Mar-18 21:20:19.526 [main] DEBUG nextflow.processor.TaskProcessor - Creating process 'CONPLEX_ALL': maxForks=0; fair=false; array=0 +Mar-18 21:20:19.559 [main] DEBUG nextflow.executor.ExecutorFactory - << taskConfig executor: null +Mar-18 21:20:19.559 [main] DEBUG nextflow.executor.ExecutorFactory - >> processorType: 'local' +Mar-18 21:20:19.560 [main] DEBUG nextflow.processor.TaskProcessor - Creating process 'NETWORK_ENRICHMENT': maxForks=0; fair=false; array=0 +Mar-18 21:20:19.569 [main] DEBUG nextflow.executor.ExecutorFactory - << taskConfig executor: null +Mar-18 21:20:19.569 [main] DEBUG nextflow.executor.ExecutorFactory - >> processorType: 'local' +Mar-18 21:20:19.570 [main] DEBUG nextflow.processor.TaskProcessor - Creating process 'TISSUE_DISTRIBUTION': maxForks=0; fair=false; array=0 +Mar-18 21:20:19.595 [main] DEBUG nextflow.executor.ExecutorFactory - << taskConfig executor: null +Mar-18 21:20:19.596 [main] DEBUG nextflow.executor.ExecutorFactory - >> processorType: 'local' +Mar-18 21:20:19.597 [main] DEBUG nextflow.processor.TaskProcessor - Creating process 'BIO_METRICS': maxForks=0; fair=false; array=0 +Mar-18 21:20:19.600 [main] DEBUG nextflow.Session - Workflow process names [dsl2]: HUMAN_TRANSFORMER, METABOLITES_BY_MASS, GET_FINAL_METABOLITES_STATIC, CONPLEX_ALL, NETWORK_ENRICHMENT, GET_FINAL_METABOLITES, CONPLEX, BIO_METRICS, SUPER_TRANSFORMER, TISSUE_DISTRIBUTION, MERGE_DRUG, MERGE_INTERACTIONS, PREPROCESS_PROTEIN, ORDERED_SEQUENCE +Mar-18 21:20:19.604 [main] DEBUG nextflow.Session - Igniting dataflow network (11) +Mar-18 21:20:19.612 [main] DEBUG nextflow.processor.TaskProcessor - Starting process > HUMAN_TRANSFORMER +Mar-18 21:20:19.613 [main] DEBUG nextflow.processor.TaskProcessor - Starting process > GET_FINAL_METABOLITES_STATIC +Mar-18 21:20:19.614 [PathVisitor-1] DEBUG nextflow.file.PathVisitor - files for syntax: glob; folder: /data/digital-trials-data/gabe-run3/input/ligands/; pattern: *.csv; options: [:] +Mar-18 21:20:19.614 [main] DEBUG nextflow.processor.TaskProcessor - Starting process > PREPROCESS_PROTEIN +Mar-18 21:20:19.614 [PathVisitor-3] DEBUG nextflow.file.PathVisitor - files for syntax: glob; folder: /mnt/dreamdock-data/digital_trials/input/blank/; pattern: *.fasta; options: [:] +Mar-18 21:20:19.615 [main] DEBUG nextflow.processor.TaskProcessor - Starting process > CONPLEX_ALL +Mar-18 21:20:19.616 [main] DEBUG nextflow.processor.TaskProcessor - Starting process > NETWORK_ENRICHMENT +Mar-18 21:20:19.616 [main] DEBUG nextflow.processor.TaskProcessor - Starting process > TISSUE_DISTRIBUTION +Mar-18 21:20:19.617 [main] DEBUG nextflow.processor.TaskProcessor - Starting process > BIO_METRICS +Mar-18 21:20:19.618 [main] DEBUG nextflow.script.ScriptRunner - Parsed script files: + Script_e39e54e7aa543fd0: /data/bugra/digital_trials/main_biotransformer.nf + Script_d345b7a65a8f3255: /data/bugra/digital_trials/main_conplex.nf + Script_ec2c89c0dbf76553: /data/bugra/digital_trials/test.nf + Script_ec01f2a38db15aa5: /data/bugra/digital_trials/main_tissue.nf +Mar-18 21:20:19.618 [main] DEBUG nextflow.script.ScriptRunner - > Awaiting termination +Mar-18 21:20:19.618 [main] DEBUG nextflow.Session - Session await +Mar-18 21:20:20.162 [Task submitter] DEBUG n.executor.local.LocalTaskHandler - Launch cmd line: /bin/bash -ue .command.run +Mar-18 21:20:20.171 [Task submitter] INFO nextflow.Session - [72/b877a7] Submitted process > HUMAN_TRANSFORMER (22) +Mar-18 21:20:20.185 [Task submitter] DEBUG n.executor.local.LocalTaskHandler - Launch cmd line: /bin/bash -ue .command.run +Mar-18 21:20:20.185 [Task submitter] INFO nextflow.Session - [b8/36834c] Submitted process > HUMAN_TRANSFORMER (17) +Mar-18 21:20:20.193 [Task submitter] DEBUG n.executor.local.LocalTaskHandler - Launch cmd line: /bin/bash -ue .command.run +Mar-18 21:20:20.193 [Task submitter] INFO nextflow.Session - [7a/0eb83a] Submitted process > HUMAN_TRANSFORMER (45) +Mar-18 21:20:20.201 [Task submitter] DEBUG n.executor.local.LocalTaskHandler - Launch cmd line: /bin/bash -ue .command.run +Mar-18 21:20:20.202 [Task submitter] INFO nextflow.Session - [0f/9a0cd5] Submitted process > HUMAN_TRANSFORMER (74) +Mar-18 21:20:20.209 [Task submitter] DEBUG n.executor.local.LocalTaskHandler - Launch cmd line: /bin/bash -ue .command.run +Mar-18 21:20:20.210 [Task submitter] INFO nextflow.Session - [c4/e32501] Submitted process > HUMAN_TRANSFORMER (29) +Mar-18 21:20:20.217 [Task submitter] DEBUG n.executor.local.LocalTaskHandler - Launch cmd line: /bin/bash -ue .command.run +Mar-18 21:20:20.217 [Task submitter] INFO nextflow.Session - [32/fb9e93] Submitted process > HUMAN_TRANSFORMER (54) +Mar-18 21:20:20.224 [Task submitter] DEBUG n.executor.local.LocalTaskHandler - Launch cmd line: /bin/bash -ue .command.run +Mar-18 21:20:20.224 [Task submitter] INFO nextflow.Session - [fb/faa4aa] Submitted process > HUMAN_TRANSFORMER (55) +Mar-18 21:20:20.232 [Task submitter] DEBUG n.executor.local.LocalTaskHandler - Launch cmd line: /bin/bash -ue .command.run +Mar-18 21:20:20.233 [Task submitter] INFO nextflow.Session - [5a/faa523] Submitted process > HUMAN_TRANSFORMER (40) +Mar-18 21:20:20.240 [Task submitter] DEBUG n.executor.local.LocalTaskHandler - Launch cmd line: /bin/bash -ue .command.run +Mar-18 21:20:20.241 [Task submitter] INFO nextflow.Session - [7d/2fa815] Submitted process > HUMAN_TRANSFORMER (67) +Mar-18 21:20:20.250 [Task submitter] DEBUG n.executor.local.LocalTaskHandler - Launch cmd line: /bin/bash -ue .command.run +Mar-18 21:20:20.251 [Task submitter] INFO nextflow.Session - [2a/96b957] Submitted process > HUMAN_TRANSFORMER (35) +Mar-18 21:20:20.265 [Task submitter] DEBUG n.executor.local.LocalTaskHandler - Launch cmd line: /bin/bash -ue .command.run +Mar-18 21:20:20.265 [Task submitter] INFO nextflow.Session - [b9/e57dda] Submitted process > HUMAN_TRANSFORMER (9) +Mar-18 21:20:20.272 [Task submitter] DEBUG n.executor.local.LocalTaskHandler - Launch cmd line: /bin/bash -ue .command.run +Mar-18 21:20:20.273 [Task submitter] INFO nextflow.Session - [fd/0b14fd] Submitted process > HUMAN_TRANSFORMER (86) +Mar-18 21:20:20.281 [Task submitter] DEBUG n.executor.local.LocalTaskHandler - Launch cmd line: /bin/bash -ue .command.run +Mar-18 21:20:20.282 [Task submitter] INFO nextflow.Session - [a6/cc7c28] Submitted process > HUMAN_TRANSFORMER (51) +Mar-18 21:20:20.290 [Task submitter] DEBUG n.executor.local.LocalTaskHandler - Launch cmd line: /bin/bash -ue .command.run +Mar-18 21:20:20.291 [Task submitter] INFO nextflow.Session - [b9/7e54d8] Submitted process > HUMAN_TRANSFORMER (48) +Mar-18 21:20:20.297 [Task submitter] DEBUG n.executor.local.LocalTaskHandler - Launch cmd line: /bin/bash -ue .command.run +Mar-18 21:20:20.298 [Task submitter] INFO nextflow.Session - [a4/4bea8f] Submitted process > HUMAN_TRANSFORMER (1) +Mar-18 21:20:20.305 [Task submitter] DEBUG n.executor.local.LocalTaskHandler - Launch cmd line: /bin/bash -ue .command.run +Mar-18 21:20:20.305 [Task submitter] INFO nextflow.Session - [a4/46870e] Submitted process > HUMAN_TRANSFORMER (25) +Mar-18 21:20:20.312 [Task submitter] DEBUG n.executor.local.LocalTaskHandler - Launch cmd line: /bin/bash -ue .command.run +Mar-18 21:20:20.313 [Task submitter] INFO nextflow.Session - [99/0bf7d9] Submitted process > HUMAN_TRANSFORMER (13) +Mar-18 21:20:20.322 [Task submitter] DEBUG n.executor.local.LocalTaskHandler - Launch cmd line: /bin/bash -ue .command.run +Mar-18 21:20:20.323 [Task submitter] INFO nextflow.Session - [7f/996282] Submitted process > HUMAN_TRANSFORMER (73) +Mar-18 21:20:20.333 [Task submitter] DEBUG n.executor.local.LocalTaskHandler - Launch cmd line: /bin/bash -ue .command.run +Mar-18 21:20:20.333 [Task submitter] INFO nextflow.Session - [95/e721b6] Submitted process > HUMAN_TRANSFORMER (58) +Mar-18 21:20:20.342 [Task submitter] DEBUG n.executor.local.LocalTaskHandler - Launch cmd line: /bin/bash -ue .command.run +Mar-18 21:20:20.343 [Task submitter] INFO nextflow.Session - [4c/6bcf63] Submitted process > HUMAN_TRANSFORMER (95) +Mar-18 21:20:20.352 [Task submitter] DEBUG n.executor.local.LocalTaskHandler - Launch cmd line: /bin/bash -ue .command.run +Mar-18 21:20:20.353 [Task submitter] INFO nextflow.Session - [75/1131f1] Submitted process > HUMAN_TRANSFORMER (80) +Mar-18 21:20:20.364 [Task submitter] DEBUG n.executor.local.LocalTaskHandler - Launch cmd line: /bin/bash -ue .command.run +Mar-18 21:20:20.365 [Task submitter] INFO nextflow.Session - [21/9c8453] Submitted process > HUMAN_TRANSFORMER (70) +Mar-18 21:20:20.375 [Task submitter] DEBUG n.executor.local.LocalTaskHandler - Launch cmd line: /bin/bash -ue .command.run +Mar-18 21:20:20.376 [Task submitter] INFO nextflow.Session - [45/5aca40] Submitted process > HUMAN_TRANSFORMER (50) +Mar-18 21:20:20.385 [Task submitter] DEBUG n.executor.local.LocalTaskHandler - Launch cmd line: /bin/bash -ue .command.run +Mar-18 21:20:20.386 [Task submitter] INFO nextflow.Session - [9f/6ebe51] Submitted process > HUMAN_TRANSFORMER (100) +Mar-18 21:20:20.394 [Task submitter] DEBUG n.executor.local.LocalTaskHandler - Launch cmd line: /bin/bash -ue .command.run +Mar-18 21:20:20.395 [Task submitter] INFO nextflow.Session - [ab/216ae0] Submitted process > HUMAN_TRANSFORMER (5) +Mar-18 21:20:20.404 [Task submitter] DEBUG n.executor.local.LocalTaskHandler - Launch cmd line: /bin/bash -ue .command.run +Mar-18 21:20:20.405 [Task submitter] INFO nextflow.Session - [da/540299] Submitted process > HUMAN_TRANSFORMER (46) +Mar-18 21:20:20.411 [Task submitter] DEBUG n.executor.local.LocalTaskHandler - Launch cmd line: /bin/bash -ue .command.run +Mar-18 21:20:20.412 [Task submitter] INFO nextflow.Session - [b5/f38923] Submitted process > HUMAN_TRANSFORMER (39) +Mar-18 21:20:20.418 [Task submitter] DEBUG n.executor.local.LocalTaskHandler - Launch cmd line: /bin/bash -ue .command.run +Mar-18 21:20:20.418 [Task submitter] INFO nextflow.Session - [68/1826f5] Submitted process > HUMAN_TRANSFORMER (78) +Mar-18 21:20:20.424 [Task submitter] DEBUG n.executor.local.LocalTaskHandler - Launch cmd line: /bin/bash -ue .command.run +Mar-18 21:20:20.424 [Task submitter] INFO nextflow.Session - [ed/3b042b] Submitted process > HUMAN_TRANSFORMER (33) +Mar-18 21:20:20.431 [Task submitter] DEBUG n.executor.local.LocalTaskHandler - Launch cmd line: /bin/bash -ue .command.run +Mar-18 21:20:20.431 [Task submitter] INFO nextflow.Session - [3f/075456] Submitted process > HUMAN_TRANSFORMER (6) +Mar-18 21:20:20.436 [Task submitter] DEBUG n.executor.local.LocalTaskHandler - Launch cmd line: /bin/bash -ue .command.run +Mar-18 21:20:20.437 [Task submitter] INFO nextflow.Session - [7a/791a5f] Submitted process > HUMAN_TRANSFORMER (31) +Mar-18 21:20:20.442 [Task submitter] DEBUG n.executor.local.LocalTaskHandler - Launch cmd line: /bin/bash -ue .command.run +Mar-18 21:20:20.443 [Task submitter] INFO nextflow.Session - [74/3c1d46] Submitted process > HUMAN_TRANSFORMER (60) +Mar-18 21:20:20.449 [Task submitter] DEBUG n.executor.local.LocalTaskHandler - Launch cmd line: /bin/bash -ue .command.run +Mar-18 21:20:20.449 [Task submitter] INFO nextflow.Session - [03/bc533b] Submitted process > HUMAN_TRANSFORMER (42) +Mar-18 21:20:20.456 [Task submitter] DEBUG n.executor.local.LocalTaskHandler - Launch cmd line: /bin/bash -ue .command.run +Mar-18 21:20:20.456 [Task submitter] INFO nextflow.Session - [22/fd1af0] Submitted process > HUMAN_TRANSFORMER (49) +Mar-18 21:20:20.465 [Task submitter] DEBUG n.executor.local.LocalTaskHandler - Launch cmd line: /bin/bash -ue .command.run +Mar-18 21:20:20.466 [Task submitter] INFO nextflow.Session - [43/60db45] Submitted process > HUMAN_TRANSFORMER (61) +Mar-18 21:20:20.475 [Task submitter] DEBUG n.executor.local.LocalTaskHandler - Launch cmd line: /bin/bash -ue .command.run +Mar-18 21:20:20.476 [Task submitter] INFO nextflow.Session - [c3/96d9ca] Submitted process > HUMAN_TRANSFORMER (47) +Mar-18 21:20:20.485 [Task submitter] DEBUG n.executor.local.LocalTaskHandler - Launch cmd line: /bin/bash -ue .command.run +Mar-18 21:20:20.486 [Task submitter] INFO nextflow.Session - [1e/136b16] Submitted process > HUMAN_TRANSFORMER (28) +Mar-18 21:20:20.494 [Task submitter] DEBUG n.executor.local.LocalTaskHandler - Launch cmd line: /bin/bash -ue .command.run +Mar-18 21:20:20.495 [Task submitter] INFO nextflow.Session - [b3/18f2d8] Submitted process > HUMAN_TRANSFORMER (21) +Mar-18 21:20:20.503 [Task submitter] DEBUG n.executor.local.LocalTaskHandler - Launch cmd line: /bin/bash -ue .command.run +Mar-18 21:20:20.504 [Task submitter] INFO nextflow.Session - [eb/bd1719] Submitted process > HUMAN_TRANSFORMER (26) +Mar-18 21:20:20.511 [Task submitter] DEBUG n.executor.local.LocalTaskHandler - Launch cmd line: /bin/bash -ue .command.run +Mar-18 21:20:20.512 [Task submitter] INFO nextflow.Session - [2d/813f73] Submitted process > HUMAN_TRANSFORMER (69) +Mar-18 21:20:20.518 [Task submitter] DEBUG n.executor.local.LocalTaskHandler - Launch cmd line: /bin/bash -ue .command.run +Mar-18 21:20:20.518 [Task submitter] INFO nextflow.Session - [d6/469d3a] Submitted process > HUMAN_TRANSFORMER (62) +Mar-18 21:20:20.524 [Task submitter] DEBUG n.executor.local.LocalTaskHandler - Launch cmd line: /bin/bash -ue .command.run +Mar-18 21:20:20.524 [Task submitter] INFO nextflow.Session - [7d/6149e5] Submitted process > HUMAN_TRANSFORMER (15) +Mar-18 21:20:20.533 [Task submitter] DEBUG n.executor.local.LocalTaskHandler - Launch cmd line: /bin/bash -ue .command.run +Mar-18 21:20:20.533 [Task submitter] INFO nextflow.Session - [b0/358e08] Submitted process > HUMAN_TRANSFORMER (4) +Mar-18 21:20:20.539 [Task submitter] DEBUG n.executor.local.LocalTaskHandler - Launch cmd line: /bin/bash -ue .command.run +Mar-18 21:20:20.540 [Task submitter] INFO nextflow.Session - [97/d91d94] Submitted process > HUMAN_TRANSFORMER (79) +Mar-18 21:20:20.545 [Task submitter] DEBUG n.executor.local.LocalTaskHandler - Launch cmd line: /bin/bash -ue .command.run +Mar-18 21:20:20.546 [Task submitter] INFO nextflow.Session - [58/36391d] Submitted process > HUMAN_TRANSFORMER (52) +Mar-18 21:20:20.551 [Task submitter] DEBUG n.executor.local.LocalTaskHandler - Launch cmd line: /bin/bash -ue .command.run +Mar-18 21:20:20.552 [Task submitter] INFO nextflow.Session - [16/6dd6cf] Submitted process > HUMAN_TRANSFORMER (66) +Mar-18 21:20:20.558 [Task submitter] DEBUG n.executor.local.LocalTaskHandler - Launch cmd line: /bin/bash -ue .command.run +Mar-18 21:20:20.558 [Task submitter] INFO nextflow.Session - [44/42e04d] Submitted process > HUMAN_TRANSFORMER (43) +Mar-18 21:20:20.570 [Task submitter] DEBUG n.executor.local.LocalTaskHandler - Launch cmd line: /bin/bash -ue .command.run +Mar-18 21:20:20.571 [Task submitter] INFO nextflow.Session - [34/bc34df] Submitted process > HUMAN_TRANSFORMER (123) +Mar-18 21:20:20.578 [Task submitter] DEBUG n.executor.local.LocalTaskHandler - Launch cmd line: /bin/bash -ue .command.run +Mar-18 21:20:20.579 [Task submitter] INFO nextflow.Session - [23/9ecd04] Submitted process > HUMAN_TRANSFORMER (44) +Mar-18 21:20:20.585 [Task submitter] DEBUG n.executor.local.LocalTaskHandler - Launch cmd line: /bin/bash -ue .command.run +Mar-18 21:20:20.586 [Task submitter] INFO nextflow.Session - [72/752728] Submitted process > HUMAN_TRANSFORMER (30) +Mar-18 21:20:28.975 [SIGINT handler] DEBUG nextflow.Session - Session aborted -- Cause: SIGINT +Mar-18 21:20:28.996 [SIGINT handler] DEBUG nextflow.Session - The following nodes are still active: +[process] GET_FINAL_METABOLITES_STATIC + status=ACTIVE + port 0: (queue) OPEN ; channel: smiles_csv + port 1: (value) bound ; channel: chembl_db + port 2: (cntrl) - ; channel: $ + +[process] CONPLEX_ALL + status=ACTIVE + port 0: (queue) OPEN ; channel: - + port 1: (value) bound ; channel: input_zarr + port 2: (cntrl) - ; channel: $ + +[process] NETWORK_ENRICHMENT + status=ACTIVE + port 0: (queue) OPEN ; channel: interactions + port 1: (cntrl) - ; channel: $ + +[process] TISSUE_DISTRIBUTION + status=ACTIVE + port 0: (queue) OPEN ; channel: interaction + port 1: (cntrl) - ; channel: $ + +[process] BIO_METRICS + status=ACTIVE + port 0: (queue) OPEN ; channel: - + port 1: (cntrl) - ; channel: $ + +Mar-18 21:20:29.001 [main] DEBUG nextflow.Session - Session await > all processes finished +Mar-18 21:20:29.002 [main] DEBUG nextflow.Session - Session await > all barriers passed +Mar-18 21:20:29.008 [main] WARN n.processor.TaskPollingMonitor - Killing running tasks (50) +Mar-18 21:20:29.204 [Task monitor] DEBUG n.processor.TaskPollingMonitor - Task completed > TaskHandler[id: 74; name: HUMAN_TRANSFORMER (74); status: COMPLETED; exit: 130; error: -; workDir: /data/bugra/digital_trials/work/0f/9a0cd5d97aee26e6b419677d571f1d] +Mar-18 21:20:29.206 [Task monitor] DEBUG nextflow.util.ThreadPoolBuilder - Creating thread pool 'TaskFinalizer' minSize=10; maxSize=240; workQueue=LinkedBlockingQueue[-1]; allowCoreThreadTimeout=false +Mar-18 21:20:29.211 [Task monitor] DEBUG n.processor.TaskPollingMonitor - Task completed > TaskHandler[id: 29; name: HUMAN_TRANSFORMER (29); status: COMPLETED; exit: 130; error: -; workDir: /data/bugra/digital_trials/work/c4/e32501010caae58fa439c623a2fecd] +Mar-18 21:20:29.212 [Task monitor] DEBUG n.processor.TaskPollingMonitor - Task completed > TaskHandler[id: 54; name: HUMAN_TRANSFORMER (54); status: COMPLETED; exit: 130; error: -; workDir: /data/bugra/digital_trials/work/32/fb9e93711155e96b0eca9ca1a8454e] +Mar-18 21:20:29.214 [Task monitor] DEBUG n.processor.TaskPollingMonitor - Task completed > TaskHandler[id: 55; name: HUMAN_TRANSFORMER (55); status: COMPLETED; exit: 130; error: -; workDir: /data/bugra/digital_trials/work/fb/faa4aaa5a507b07f6ad9fb9cdf2127] +Mar-18 21:20:29.216 [Task monitor] DEBUG n.processor.TaskPollingMonitor - Task completed > TaskHandler[id: 40; name: HUMAN_TRANSFORMER (40); status: COMPLETED; exit: 130; error: -; workDir: /data/bugra/digital_trials/work/5a/faa523c3ce4d70240791b474747fde] +Mar-18 21:20:29.217 [Task monitor] DEBUG n.processor.TaskPollingMonitor - Task completed > TaskHandler[id: 67; name: HUMAN_TRANSFORMER (67); status: COMPLETED; exit: 130; error: -; workDir: /data/bugra/digital_trials/work/7d/2fa8150c57d90a74cd338cd5ce8bfe] +Mar-18 21:20:29.219 [Task monitor] DEBUG n.processor.TaskPollingMonitor - Task completed > TaskHandler[id: 35; name: HUMAN_TRANSFORMER (35); status: COMPLETED; exit: 130; error: -; workDir: /data/bugra/digital_trials/work/2a/96b957dfb012e27d77c31f4b94d051] +Mar-18 21:20:29.220 [Task monitor] DEBUG n.processor.TaskPollingMonitor - Task completed > TaskHandler[id: 86; name: HUMAN_TRANSFORMER (86); status: COMPLETED; exit: 130; error: -; workDir: /data/bugra/digital_trials/work/fd/0b14fd788e43705a0d86419395e93c] +Mar-18 21:20:29.221 [main] DEBUG n.executor.local.LocalTaskHandler - Unable to kill HUMAN_TRANSFORMER (45) -- command: kill -TERM 762008; exit: 1 + bash: line 1: kill: (762008) - No such process + +Mar-18 21:20:29.222 [Task monitor] DEBUG n.processor.TaskPollingMonitor - Task completed > TaskHandler[id: 51; name: HUMAN_TRANSFORMER (51); status: COMPLETED; exit: 130; error: -; workDir: /data/bugra/digital_trials/work/a6/cc7c28680437f5e2c42a1709323bb7] +Mar-18 21:20:29.223 [Task monitor] DEBUG n.processor.TaskPollingMonitor - Task completed > TaskHandler[id: 48; name: HUMAN_TRANSFORMER (48); status: COMPLETED; exit: 130; error: -; workDir: /data/bugra/digital_trials/work/b9/7e54d83d949dca0466afe4c816d12d] +Mar-18 21:20:29.225 [Task monitor] DEBUG n.processor.TaskPollingMonitor - Task completed > TaskHandler[id: 1; name: HUMAN_TRANSFORMER (1); status: COMPLETED; exit: 130; error: -; workDir: /data/bugra/digital_trials/work/a4/4bea8fb78d84cb4e6a1b3b78de1a1d] +Mar-18 21:20:29.226 [Task monitor] DEBUG n.processor.TaskPollingMonitor - Task completed > TaskHandler[id: 25; name: HUMAN_TRANSFORMER (25); status: COMPLETED; exit: 130; error: -; workDir: /data/bugra/digital_trials/work/a4/46870eb8ce5691c0f2149045550ad7] +Mar-18 21:20:29.227 [TaskFinalizer-2] DEBUG nextflow.processor.TaskProcessor - Handling unexpected condition for + task: name=HUMAN_TRANSFORMER (29); work-dir=/data/bugra/digital_trials/work/c4/e32501010caae58fa439c623a2fecd + error [nextflow.exception.ProcessFailedException]: Process `HUMAN_TRANSFORMER (29)` terminated with an error exit status (130) +Mar-18 21:20:29.227 [Task monitor] DEBUG n.processor.TaskPollingMonitor - Task completed > TaskHandler[id: 13; name: HUMAN_TRANSFORMER (13); status: COMPLETED; exit: 130; error: -; workDir: /data/bugra/digital_trials/work/99/0bf7d908b80de58cfef30a9ae30875] +Mar-18 21:20:29.228 [Task monitor] DEBUG n.processor.TaskPollingMonitor - Task completed > TaskHandler[id: 73; name: HUMAN_TRANSFORMER (73); status: COMPLETED; exit: 130; error: -; workDir: /data/bugra/digital_trials/work/7f/99628294d9fb367576004fc4cff3eb] +Mar-18 21:20:29.229 [main] DEBUG n.executor.local.LocalTaskHandler - Unable to kill HUMAN_TRANSFORMER (25) -- command: kill -TERM 762373; exit: 1 + bash: line 1: kill: (762373) - No such process + +Mar-18 21:20:29.229 [Task monitor] DEBUG n.processor.TaskPollingMonitor - Task completed > TaskHandler[id: 58; name: HUMAN_TRANSFORMER (58); status: COMPLETED; exit: 130; error: -; workDir: /data/bugra/digital_trials/work/95/e721b6a649d83eb7e942021377d531] +Mar-18 21:20:29.231 [Task monitor] DEBUG n.processor.TaskPollingMonitor - Task completed > TaskHandler[id: 95; name: HUMAN_TRANSFORMER (95); status: COMPLETED; exit: 130; error: -; workDir: /data/bugra/digital_trials/work/4c/6bcf63f1afb66a1ed51a58c8ef54a3] +Mar-18 21:20:29.232 [Task monitor] DEBUG n.processor.TaskPollingMonitor - Task completed > TaskHandler[id: 80; name: HUMAN_TRANSFORMER (80); status: COMPLETED; exit: 130; error: -; workDir: /data/bugra/digital_trials/work/75/1131f1d70cc028dd7b726be37d1e31] +Mar-18 21:20:29.233 [Task monitor] DEBUG n.processor.TaskPollingMonitor - Task completed > TaskHandler[id: 70; name: HUMAN_TRANSFORMER (70); status: COMPLETED; exit: 130; error: -; workDir: /data/bugra/digital_trials/work/21/9c8453efe5eeb789846c2451f0a13f] +Mar-18 21:20:29.234 [Task monitor] DEBUG n.processor.TaskPollingMonitor - Task completed > TaskHandler[id: 50; name: HUMAN_TRANSFORMER (50); status: COMPLETED; exit: 130; error: -; workDir: /data/bugra/digital_trials/work/45/5aca403dc4da2c3d24fe10177924c8] +Mar-18 21:20:29.234 [main] DEBUG n.executor.local.LocalTaskHandler - Unable to kill HUMAN_TRANSFORMER (80) -- command: kill -TERM 762532; exit: 1 + bash: line 1: kill: (762532) - No such process + +Mar-18 21:20:29.235 [Task monitor] DEBUG n.processor.TaskPollingMonitor - Task completed > TaskHandler[id: 100; name: HUMAN_TRANSFORMER (100); status: COMPLETED; exit: 130; error: -; workDir: /data/bugra/digital_trials/work/9f/6ebe51bfe8573e36f728abd651796c] +Mar-18 21:20:29.237 [Task monitor] DEBUG n.processor.TaskPollingMonitor - Task completed > TaskHandler[id: 5; name: HUMAN_TRANSFORMER (5); status: COMPLETED; exit: 130; error: -; workDir: /data/bugra/digital_trials/work/ab/216ae0fc95fd279206b22f34dc000a] +Mar-18 21:20:29.238 [Task monitor] DEBUG n.processor.TaskPollingMonitor - Task completed > TaskHandler[id: 46; name: HUMAN_TRANSFORMER (46); status: COMPLETED; exit: 130; error: -; workDir: /data/bugra/digital_trials/work/da/540299373969ef3de95545b6de644f] +Mar-18 21:20:29.239 [Task monitor] DEBUG n.processor.TaskPollingMonitor - Task completed > TaskHandler[id: 39; name: HUMAN_TRANSFORMER (39); status: COMPLETED; exit: 130; error: -; workDir: /data/bugra/digital_trials/work/b5/f389239211a370dc32541c3a4fa3e7] +Mar-18 21:20:29.239 [main] DEBUG n.executor.local.LocalTaskHandler - Unable to kill HUMAN_TRANSFORMER (5) -- command: kill -TERM 762695; exit: 1 + bash: line 1: kill: (762695) - No such process + +Mar-18 21:20:29.240 [Task monitor] DEBUG n.processor.TaskPollingMonitor - Task completed > TaskHandler[id: 78; name: HUMAN_TRANSFORMER (78); status: COMPLETED; exit: 130; error: -; workDir: /data/bugra/digital_trials/work/68/1826f56db8ca6748424d2048035406] +Mar-18 21:20:29.240 [TaskFinalizer-2] INFO nextflow.processor.TaskProcessor - [c4/e32501] NOTE: Process `HUMAN_TRANSFORMER (29)` terminated with an error exit status (130) -- Execution is retried (1) +Mar-18 21:20:29.241 [TaskFinalizer-10] DEBUG nextflow.processor.TaskProcessor - Handling unexpected condition for + task: name=HUMAN_TRANSFORMER (48); work-dir=/data/bugra/digital_trials/work/b9/7e54d83d949dca0466afe4c816d12d + error [nextflow.exception.ProcessFailedException]: Process `HUMAN_TRANSFORMER (48)` terminated with an error exit status (130) +Mar-18 21:20:29.241 [Task monitor] DEBUG n.processor.TaskPollingMonitor - Task completed > TaskHandler[id: 33; name: HUMAN_TRANSFORMER (33); status: COMPLETED; exit: 130; error: -; workDir: /data/bugra/digital_trials/work/ed/3b042b5b484c9ff44f2901ae29af3b] +Mar-18 21:20:29.242 [TaskFinalizer-10] INFO nextflow.processor.TaskProcessor - [b9/7e54d8] NOTE: Process `HUMAN_TRANSFORMER (48)` terminated with an error exit status (130) -- Execution is retried (1) +Mar-18 21:20:29.242 [Task monitor] DEBUG n.processor.TaskPollingMonitor - Task completed > TaskHandler[id: 6; name: HUMAN_TRANSFORMER (6); status: COMPLETED; exit: 130; error: -; workDir: /data/bugra/digital_trials/work/3f/075456044e2114e2f07d282a4652f8] +Mar-18 21:20:29.242 [TaskFinalizer-6] DEBUG nextflow.processor.TaskProcessor - Handling unexpected condition for + task: name=HUMAN_TRANSFORMER (67); work-dir=/data/bugra/digital_trials/work/7d/2fa8150c57d90a74cd338cd5ce8bfe + error [nextflow.exception.ProcessFailedException]: Process `HUMAN_TRANSFORMER (67)` terminated with an error exit status (130) +Mar-18 21:20:29.243 [TaskFinalizer-6] INFO nextflow.processor.TaskProcessor - [7d/2fa815] NOTE: Process `HUMAN_TRANSFORMER (67)` terminated with an error exit status (130) -- Execution is retried (1) +Mar-18 21:20:29.243 [Task monitor] DEBUG n.processor.TaskPollingMonitor - Task completed > TaskHandler[id: 31; name: HUMAN_TRANSFORMER (31); status: COMPLETED; exit: 130; error: -; workDir: /data/bugra/digital_trials/work/7a/791a5fc3d48e3532dd905a9d6ffe60] +Mar-18 21:20:29.244 [TaskFinalizer-3] DEBUG nextflow.processor.TaskProcessor - Handling unexpected condition for + task: name=HUMAN_TRANSFORMER (54); work-dir=/data/bugra/digital_trials/work/32/fb9e93711155e96b0eca9ca1a8454e + error [nextflow.exception.ProcessFailedException]: Process `HUMAN_TRANSFORMER (54)` terminated with an error exit status (130) +Mar-18 21:20:29.245 [TaskFinalizer-3] INFO nextflow.processor.TaskProcessor - [32/fb9e93] NOTE: Process `HUMAN_TRANSFORMER (54)` terminated with an error exit status (130) -- Execution is retried (1) +Mar-18 21:20:29.245 [TaskFinalizer-5] DEBUG nextflow.processor.TaskProcessor - Handling unexpected condition for + task: name=HUMAN_TRANSFORMER (40); work-dir=/data/bugra/digital_trials/work/5a/faa523c3ce4d70240791b474747fde + error [nextflow.exception.ProcessFailedException]: Process `HUMAN_TRANSFORMER (40)` terminated with an error exit status (130) +Mar-18 21:20:29.245 [main] DEBUG n.executor.local.LocalTaskHandler - Unable to kill HUMAN_TRANSFORMER (33) -- command: kill -TERM 762806; exit: 1 + bash: line 1: kill: (762806) - No such process + +Mar-18 21:20:29.246 [TaskFinalizer-5] INFO nextflow.processor.TaskProcessor - [5a/faa523] NOTE: Process `HUMAN_TRANSFORMER (40)` terminated with an error exit status (130) -- Execution is retried (1) +Mar-18 21:20:29.247 [TaskFinalizer-7] DEBUG nextflow.processor.TaskProcessor - Handling unexpected condition for + task: name=HUMAN_TRANSFORMER (35); work-dir=/data/bugra/digital_trials/work/2a/96b957dfb012e27d77c31f4b94d051 + error [nextflow.exception.ProcessFailedException]: Process `HUMAN_TRANSFORMER (35)` terminated with an error exit status (130) +Mar-18 21:20:29.247 [Task monitor] DEBUG n.processor.TaskPollingMonitor - Task completed > TaskHandler[id: 60; name: HUMAN_TRANSFORMER (60); status: COMPLETED; exit: 130; error: -; workDir: /data/bugra/digital_trials/work/74/3c1d464c97545d0573e617639c1996] +Mar-18 21:20:29.248 [TaskFinalizer-7] INFO nextflow.processor.TaskProcessor - [2a/96b957] NOTE: Process `HUMAN_TRANSFORMER (35)` terminated with an error exit status (130) -- Execution is retried (1) +Mar-18 21:20:29.248 [TaskFinalizer-1] DEBUG nextflow.processor.TaskProcessor - Handling unexpected condition for + task: name=HUMAN_TRANSFORMER (74); work-dir=/data/bugra/digital_trials/work/0f/9a0cd5d97aee26e6b419677d571f1d + error [nextflow.exception.ProcessFailedException]: Process `HUMAN_TRANSFORMER (74)` terminated with an error exit status (130) +Mar-18 21:20:29.248 [Task monitor] DEBUG n.processor.TaskPollingMonitor - Task completed > TaskHandler[id: 42; name: HUMAN_TRANSFORMER (42); status: COMPLETED; exit: 130; error: -; workDir: /data/bugra/digital_trials/work/03/bc533b3f0412ff4170434e49742e08] +Mar-18 21:20:29.249 [TaskFinalizer-1] INFO nextflow.processor.TaskProcessor - [0f/9a0cd5] NOTE: Process `HUMAN_TRANSFORMER (74)` terminated with an error exit status (130) -- Execution is retried (1) +Mar-18 21:20:29.249 [main] DEBUG n.executor.local.LocalTaskHandler - Unable to kill HUMAN_TRANSFORMER (60) -- command: kill -TERM 762866; exit: 1 + bash: line 1: kill: (762866) - No such process + +Mar-18 21:20:29.249 [TaskFinalizer-8] DEBUG nextflow.processor.TaskProcessor - Handling unexpected condition for + task: name=HUMAN_TRANSFORMER (86); work-dir=/data/bugra/digital_trials/work/fd/0b14fd788e43705a0d86419395e93c + error [nextflow.exception.ProcessFailedException]: Process `HUMAN_TRANSFORMER (86)` terminated with an error exit status (130) +Mar-18 21:20:29.250 [TaskFinalizer-8] INFO nextflow.processor.TaskProcessor - [fd/0b14fd] NOTE: Process `HUMAN_TRANSFORMER (86)` terminated with an error exit status (130) -- Execution is retried (1) +Mar-18 21:20:29.251 [TaskFinalizer-9] DEBUG nextflow.processor.TaskProcessor - Handling unexpected condition for + task: name=HUMAN_TRANSFORMER (51); work-dir=/data/bugra/digital_trials/work/a6/cc7c28680437f5e2c42a1709323bb7 + error [nextflow.exception.ProcessFailedException]: Process `HUMAN_TRANSFORMER (51)` terminated with an error exit status (130) +Mar-18 21:20:29.251 [Task monitor] DEBUG n.processor.TaskPollingMonitor - Task completed > TaskHandler[id: 49; name: HUMAN_TRANSFORMER (49); status: COMPLETED; exit: 130; error: -; workDir: /data/bugra/digital_trials/work/22/fd1af06b9e3d47711a38d32e512b6a] +Mar-18 21:20:29.252 [Task monitor] DEBUG n.processor.TaskPollingMonitor - Task completed > TaskHandler[id: 61; name: HUMAN_TRANSFORMER (61); status: COMPLETED; exit: 130; error: -; workDir: /data/bugra/digital_trials/work/43/60db45ede0bd4446d23695ada0d61e] +Mar-18 21:20:29.252 [TaskFinalizer-9] INFO nextflow.processor.TaskProcessor - [a6/cc7c28] NOTE: Process `HUMAN_TRANSFORMER (51)` terminated with an error exit status (130) -- Execution is retried (1) +Mar-18 21:20:29.252 [TaskFinalizer-4] DEBUG nextflow.processor.TaskProcessor - Handling unexpected condition for + task: name=HUMAN_TRANSFORMER (55); work-dir=/data/bugra/digital_trials/work/fb/faa4aaa5a507b07f6ad9fb9cdf2127 + error [nextflow.exception.ProcessFailedException]: Process `HUMAN_TRANSFORMER (55)` terminated with an error exit status (130) +Mar-18 21:20:29.253 [Task monitor] DEBUG n.processor.TaskPollingMonitor - Task completed > TaskHandler[id: 47; name: HUMAN_TRANSFORMER (47); status: COMPLETED; exit: 130; error: -; workDir: /data/bugra/digital_trials/work/c3/96d9ca9db58d7b185d3a1593398cf5] +Mar-18 21:20:29.253 [TaskFinalizer-4] INFO nextflow.processor.TaskProcessor - [fb/faa4aa] NOTE: Process `HUMAN_TRANSFORMER (55)` terminated with an error exit status (130) -- Execution is retried (1) +Mar-18 21:20:29.253 [TaskFinalizer-8] DEBUG nextflow.processor.TaskProcessor - Handling unexpected condition for + task: name=HUMAN_TRANSFORMER (70); work-dir=/data/bugra/digital_trials/work/21/9c8453efe5eeb789846c2451f0a13f + error [nextflow.exception.ProcessFailedException]: Process `HUMAN_TRANSFORMER (70)` terminated with an error exit status (130) +Mar-18 21:20:29.254 [main] DEBUG n.executor.local.LocalTaskHandler - Unable to kill HUMAN_TRANSFORMER (49) -- command: kill -TERM 762944; exit: 1 + bash: line 1: kill: (762944) - No such process + +Mar-18 21:20:29.254 [Task monitor] DEBUG n.processor.TaskPollingMonitor - Task completed > TaskHandler[id: 28; name: HUMAN_TRANSFORMER (28); status: COMPLETED; exit: 130; error: -; workDir: /data/bugra/digital_trials/work/1e/136b163a14f2e329c0a63def34303a] +Mar-18 21:20:29.254 [TaskFinalizer-8] INFO nextflow.processor.TaskProcessor - [21/9c8453] NOTE: Process `HUMAN_TRANSFORMER (70)` terminated with an error exit status (130) -- Execution is retried (1) +Mar-18 21:20:29.255 [TaskFinalizer-1] DEBUG nextflow.processor.TaskProcessor - Handling unexpected condition for + task: name=HUMAN_TRANSFORMER (80); work-dir=/data/bugra/digital_trials/work/75/1131f1d70cc028dd7b726be37d1e31 + error [nextflow.exception.ProcessFailedException]: Process `HUMAN_TRANSFORMER (80)` terminated with an error exit status (130) +Mar-18 21:20:29.255 [Task monitor] DEBUG n.processor.TaskPollingMonitor - Task completed > TaskHandler[id: 21; name: HUMAN_TRANSFORMER (21); status: COMPLETED; exit: 130; error: -; workDir: /data/bugra/digital_trials/work/b3/18f2d8de1dee7ebd1e29c36766bb38] +Mar-18 21:20:29.256 [TaskFinalizer-1] INFO nextflow.processor.TaskProcessor - [75/1131f1] NOTE: Process `HUMAN_TRANSFORMER (80)` terminated with an error exit status (130) -- Execution is retried (1) +Mar-18 21:20:29.256 [TaskFinalizer-7] DEBUG nextflow.processor.TaskProcessor - Handling unexpected condition for + task: name=HUMAN_TRANSFORMER (95); work-dir=/data/bugra/digital_trials/work/4c/6bcf63f1afb66a1ed51a58c8ef54a3 + error [nextflow.exception.ProcessFailedException]: Process `HUMAN_TRANSFORMER (95)` terminated with an error exit status (130) +Mar-18 21:20:29.256 [Task monitor] DEBUG n.processor.TaskPollingMonitor - Task completed > TaskHandler[id: 26; name: HUMAN_TRANSFORMER (26); status: COMPLETED; exit: 130; error: -; workDir: /data/bugra/digital_trials/work/eb/bd17199be64672ed1cd2a9c2de98fc] +Mar-18 21:20:29.257 [TaskFinalizer-7] INFO nextflow.processor.TaskProcessor - [4c/6bcf63] NOTE: Process `HUMAN_TRANSFORMER (95)` terminated with an error exit status (130) -- Execution is retried (1) +Mar-18 21:20:29.257 [Task monitor] DEBUG n.processor.TaskPollingMonitor - Task completed > TaskHandler[id: 69; name: HUMAN_TRANSFORMER (69); status: COMPLETED; exit: 130; error: -; workDir: /data/bugra/digital_trials/work/2d/813f736812d2fe55b217ee6f3a6080] +Mar-18 21:20:29.257 [TaskFinalizer-5] DEBUG nextflow.processor.TaskProcessor - Handling unexpected condition for + task: name=HUMAN_TRANSFORMER (58); work-dir=/data/bugra/digital_trials/work/95/e721b6a649d83eb7e942021377d531 + error [nextflow.exception.ProcessFailedException]: Process `HUMAN_TRANSFORMER (58)` terminated with an error exit status (130) +Mar-18 21:20:29.258 [Task monitor] DEBUG n.processor.TaskPollingMonitor - Task completed > TaskHandler[id: 62; name: HUMAN_TRANSFORMER (62); status: COMPLETED; exit: 130; error: -; workDir: /data/bugra/digital_trials/work/d6/469d3a52fd3e47c31e3f9629531225] +Mar-18 21:20:29.258 [TaskFinalizer-5] INFO nextflow.processor.TaskProcessor - [95/e721b6] NOTE: Process `HUMAN_TRANSFORMER (58)` terminated with an error exit status (130) -- Execution is retried (1) +Mar-18 21:20:29.258 [TaskFinalizer-3] DEBUG nextflow.processor.TaskProcessor - Handling unexpected condition for + task: name=HUMAN_TRANSFORMER (73); work-dir=/data/bugra/digital_trials/work/7f/99628294d9fb367576004fc4cff3eb + error [nextflow.exception.ProcessFailedException]: Process `HUMAN_TRANSFORMER (73)` terminated with an error exit status (130) +Mar-18 21:20:29.259 [main] DEBUG n.executor.local.LocalTaskHandler - Unable to kill HUMAN_TRANSFORMER (21) -- command: kill -TERM 763075; exit: 1 + bash: line 1: kill: (763075) - No such process + +Mar-18 21:20:29.259 [Task monitor] DEBUG n.processor.TaskPollingMonitor - Task completed > TaskHandler[id: 15; name: HUMAN_TRANSFORMER (15); status: COMPLETED; exit: 130; error: -; workDir: /data/bugra/digital_trials/work/7d/6149e5bb637d5906e412e869847053] +Mar-18 21:20:29.259 [TaskFinalizer-3] INFO nextflow.processor.TaskProcessor - [7f/996282] NOTE: Process `HUMAN_TRANSFORMER (73)` terminated with an error exit status (130) -- Execution is retried (1) +Mar-18 21:20:29.260 [TaskFinalizer-6] DEBUG nextflow.processor.TaskProcessor - Handling unexpected condition for + task: name=HUMAN_TRANSFORMER (13); work-dir=/data/bugra/digital_trials/work/99/0bf7d908b80de58cfef30a9ae30875 + error [nextflow.exception.ProcessFailedException]: Process `HUMAN_TRANSFORMER (13)` terminated with an error exit status (130) +Mar-18 21:20:29.260 [TaskFinalizer-6] INFO nextflow.processor.TaskProcessor - [99/0bf7d9] NOTE: Process `HUMAN_TRANSFORMER (13)` terminated with an error exit status (130) -- Execution is retried (1) +Mar-18 21:20:29.260 [Task monitor] DEBUG n.processor.TaskPollingMonitor - Task completed > TaskHandler[id: 4; name: HUMAN_TRANSFORMER (4); status: COMPLETED; exit: 130; error: -; workDir: /data/bugra/digital_trials/work/b0/358e0857d3fc84723c4c6f68449def] +Mar-18 21:20:29.261 [TaskFinalizer-10] DEBUG nextflow.processor.TaskProcessor - Handling unexpected condition for + task: name=HUMAN_TRANSFORMER (25); work-dir=/data/bugra/digital_trials/work/a4/46870eb8ce5691c0f2149045550ad7 + error [nextflow.exception.ProcessFailedException]: Process `HUMAN_TRANSFORMER (25)` terminated with an error exit status (130) +Mar-18 21:20:29.261 [Task monitor] DEBUG n.processor.TaskPollingMonitor - Task completed > TaskHandler[id: 79; name: HUMAN_TRANSFORMER (79); status: COMPLETED; exit: 130; error: -; workDir: /data/bugra/digital_trials/work/97/d91d948e50cf63f8b4ff02716cae35] +Mar-18 21:20:29.262 [TaskFinalizer-10] INFO nextflow.processor.TaskProcessor - [a4/46870e] NOTE: Process `HUMAN_TRANSFORMER (25)` terminated with an error exit status (130) -- Execution is retried (1) +Mar-18 21:20:29.262 [TaskFinalizer-2] DEBUG nextflow.processor.TaskProcessor - Handling unexpected condition for + task: name=HUMAN_TRANSFORMER (1); work-dir=/data/bugra/digital_trials/work/a4/4bea8fb78d84cb4e6a1b3b78de1a1d + error [nextflow.exception.ProcessFailedException]: Process `HUMAN_TRANSFORMER (1)` terminated with an error exit status (130) +Mar-18 21:20:29.263 [Task monitor] DEBUG n.processor.TaskPollingMonitor - Task completed > TaskHandler[id: 52; name: HUMAN_TRANSFORMER (52); status: COMPLETED; exit: 130; error: -; workDir: /data/bugra/digital_trials/work/58/36391d12e7f01e89c4c4b007a48fdf] +Mar-18 21:20:29.263 [TaskFinalizer-2] INFO nextflow.processor.TaskProcessor - [a4/4bea8f] NOTE: Process `HUMAN_TRANSFORMER (1)` terminated with an error exit status (130) -- Execution is retried (1) +Mar-18 21:20:29.263 [TaskFinalizer-6] DEBUG nextflow.processor.TaskProcessor - Handling unexpected condition for + task: name=HUMAN_TRANSFORMER (6); work-dir=/data/bugra/digital_trials/work/3f/075456044e2114e2f07d282a4652f8 + error [nextflow.exception.ProcessFailedException]: Process `HUMAN_TRANSFORMER (6)` terminated with an error exit status (130) +Mar-18 21:20:29.264 [main] DEBUG n.executor.local.LocalTaskHandler - Unable to kill HUMAN_TRANSFORMER (4) -- command: kill -TERM 763174; exit: 1 + bash: line 1: kill: (763174) - No such process + +Mar-18 21:20:29.264 [TaskFinalizer-6] INFO nextflow.processor.TaskProcessor - [3f/075456] NOTE: Process `HUMAN_TRANSFORMER (6)` terminated with an error exit status (130) -- Execution is retried (1) +Mar-18 21:20:29.264 [TaskFinalizer-3] DEBUG nextflow.processor.TaskProcessor - Handling unexpected condition for + task: name=HUMAN_TRANSFORMER (33); work-dir=/data/bugra/digital_trials/work/ed/3b042b5b484c9ff44f2901ae29af3b + error [nextflow.exception.ProcessFailedException]: Process `HUMAN_TRANSFORMER (33)` terminated with an error exit status (130) +Mar-18 21:20:29.264 [Task monitor] DEBUG n.processor.TaskPollingMonitor - Task completed > TaskHandler[id: 66; name: HUMAN_TRANSFORMER (66); status: COMPLETED; exit: 130; error: -; workDir: /data/bugra/digital_trials/work/16/6dd6cfac099d7134782d3b80712847] +Mar-18 21:20:29.265 [TaskFinalizer-3] INFO nextflow.processor.TaskProcessor - [ed/3b042b] NOTE: Process `HUMAN_TRANSFORMER (33)` terminated with an error exit status (130) -- Execution is retried (1) +Mar-18 21:20:29.265 [Task monitor] DEBUG n.processor.TaskPollingMonitor - Task completed > TaskHandler[id: 43; name: HUMAN_TRANSFORMER (43); status: COMPLETED; exit: 130; error: -; workDir: /data/bugra/digital_trials/work/44/42e04d6d950d65bdc5c53a29f24aff] +Mar-18 21:20:29.266 [TaskFinalizer-5] DEBUG nextflow.processor.TaskProcessor - Handling unexpected condition for + task: name=HUMAN_TRANSFORMER (78); work-dir=/data/bugra/digital_trials/work/68/1826f56db8ca6748424d2048035406 + error [nextflow.exception.ProcessFailedException]: Process `HUMAN_TRANSFORMER (78)` terminated with an error exit status (130) +Mar-18 21:20:29.266 [Task monitor] DEBUG n.processor.TaskPollingMonitor - Task completed > TaskHandler[id: 123; name: HUMAN_TRANSFORMER (123); status: COMPLETED; exit: 130; error: -; workDir: /data/bugra/digital_trials/work/34/bc34dfc5b77bd45bf850bbefd1ade3] +Mar-18 21:20:29.266 [TaskFinalizer-5] INFO nextflow.processor.TaskProcessor - [68/1826f5] NOTE: Process `HUMAN_TRANSFORMER (78)` terminated with an error exit status (130) -- Execution is retried (1) +Mar-18 21:20:29.267 [TaskFinalizer-7] DEBUG nextflow.processor.TaskProcessor - Handling unexpected condition for + task: name=HUMAN_TRANSFORMER (39); work-dir=/data/bugra/digital_trials/work/b5/f389239211a370dc32541c3a4fa3e7 + error [nextflow.exception.ProcessFailedException]: Process `HUMAN_TRANSFORMER (39)` terminated with an error exit status (130) +Mar-18 21:20:29.268 [TaskFinalizer-7] INFO nextflow.processor.TaskProcessor - [b5/f38923] NOTE: Process `HUMAN_TRANSFORMER (39)` terminated with an error exit status (130) -- Execution is retried (1) +Mar-18 21:20:29.268 [Task monitor] DEBUG n.processor.TaskPollingMonitor - Task completed > TaskHandler[id: 44; name: HUMAN_TRANSFORMER (44); status: COMPLETED; exit: 130; error: -; workDir: /data/bugra/digital_trials/work/23/9ecd04cb0afa1a6189c69d0c0fe507] +Mar-18 21:20:29.268 [TaskFinalizer-1] DEBUG nextflow.processor.TaskProcessor - Handling unexpected condition for + task: name=HUMAN_TRANSFORMER (46); work-dir=/data/bugra/digital_trials/work/da/540299373969ef3de95545b6de644f + error [nextflow.exception.ProcessFailedException]: Process `HUMAN_TRANSFORMER (46)` terminated with an error exit status (130) +Mar-18 21:20:29.268 [main] DEBUG n.executor.local.LocalTaskHandler - Unable to kill HUMAN_TRANSFORMER (43) -- command: kill -TERM 763252; exit: 1 + bash: line 1: kill: (763252) - No such process + +Mar-18 21:20:29.269 [TaskFinalizer-1] INFO nextflow.processor.TaskProcessor - [da/540299] NOTE: Process `HUMAN_TRANSFORMER (46)` terminated with an error exit status (130) -- Execution is retried (1) +Mar-18 21:20:29.269 [Task monitor] DEBUG n.processor.TaskPollingMonitor - Task completed > TaskHandler[id: 30; name: HUMAN_TRANSFORMER (30); status: COMPLETED; exit: 130; error: -; workDir: /data/bugra/digital_trials/work/72/7527282097aa9de800c0e570242280] +Mar-18 21:20:29.269 [TaskFinalizer-8] DEBUG nextflow.processor.TaskProcessor - Handling unexpected condition for + task: name=HUMAN_TRANSFORMER (5); work-dir=/data/bugra/digital_trials/work/ab/216ae0fc95fd279206b22f34dc000a + error [nextflow.exception.ProcessFailedException]: Process `HUMAN_TRANSFORMER (5)` terminated with an error exit status (130) +Mar-18 21:20:29.270 [TaskFinalizer-8] INFO nextflow.processor.TaskProcessor - [ab/216ae0] NOTE: Process `HUMAN_TRANSFORMER (5)` terminated with an error exit status (130) -- Execution is retried (1) +Mar-18 21:20:29.270 [TaskFinalizer-4] DEBUG nextflow.processor.TaskProcessor - Handling unexpected condition for + task: name=HUMAN_TRANSFORMER (100); work-dir=/data/bugra/digital_trials/work/9f/6ebe51bfe8573e36f728abd651796c + error [nextflow.exception.ProcessFailedException]: Process `HUMAN_TRANSFORMER (100)` terminated with an error exit status (130) +Mar-18 21:20:29.271 [Task monitor] DEBUG n.processor.TaskPollingMonitor - <<< barrier arrives (monitor: local) - terminating tasks monitor poll loop +Mar-18 21:20:29.271 [TaskFinalizer-4] INFO nextflow.processor.TaskProcessor - [9f/6ebe51] NOTE: Process `HUMAN_TRANSFORMER (100)` terminated with an error exit status (130) -- Execution is retried (1) +Mar-18 21:20:29.272 [TaskFinalizer-9] DEBUG nextflow.processor.TaskProcessor - Handling unexpected condition for + task: name=HUMAN_TRANSFORMER (50); work-dir=/data/bugra/digital_trials/work/45/5aca403dc4da2c3d24fe10177924c8 + error [nextflow.exception.ProcessFailedException]: Process `HUMAN_TRANSFORMER (50)` terminated with an error exit status (130) +Mar-18 21:20:29.272 [TaskFinalizer-9] INFO nextflow.processor.TaskProcessor - [45/5aca40] NOTE: Process `HUMAN_TRANSFORMER (50)` terminated with an error exit status (130) -- Execution is retried (1) +Mar-18 21:20:29.273 [TaskFinalizer-8] DEBUG nextflow.processor.TaskProcessor - Handling unexpected condition for + task: name=HUMAN_TRANSFORMER (21); work-dir=/data/bugra/digital_trials/work/b3/18f2d8de1dee7ebd1e29c36766bb38 + error [nextflow.exception.ProcessFailedException]: Process `HUMAN_TRANSFORMER (21)` terminated with an error exit status (130) +Mar-18 21:20:29.273 [main] DEBUG n.trace.WorkflowStatsObserver - Workflow completed > WorkflowStats[succeededCount=0; failedCount=24; ignoredCount=0; cachedCount=0; pendingCount=524; submittedCount=0; runningCount=13; retriesCount=24; abortedCount=13; succeedDuration=0ms; failedDuration=3m 33s; cachedDuration=0ms;loadCpus=13; loadMemory=65 GB; peakRunning=50; peakCpus=50; peakMemory=250 GB; ] +Mar-18 21:20:29.274 [TaskFinalizer-8] INFO nextflow.processor.TaskProcessor - [b3/18f2d8] NOTE: Process `HUMAN_TRANSFORMER (21)` terminated with an error exit status (130) -- Execution is retried (1) +Mar-18 21:20:29.274 [TaskFinalizer-1] DEBUG nextflow.processor.TaskProcessor - Handling unexpected condition for + task: name=HUMAN_TRANSFORMER (28); work-dir=/data/bugra/digital_trials/work/1e/136b163a14f2e329c0a63def34303a + error [nextflow.exception.ProcessFailedException]: Process `HUMAN_TRANSFORMER (28)` terminated with an error exit status (130) +Mar-18 21:20:29.275 [TaskFinalizer-1] INFO nextflow.processor.TaskProcessor - [1e/136b16] NOTE: Process `HUMAN_TRANSFORMER (28)` terminated with an error exit status (130) -- Execution is retried (1) +Mar-18 21:20:29.275 [TaskFinalizer-7] DEBUG nextflow.processor.TaskProcessor - Handling unexpected condition for + task: name=HUMAN_TRANSFORMER (47); work-dir=/data/bugra/digital_trials/work/c3/96d9ca9db58d7b185d3a1593398cf5 + error [nextflow.exception.ProcessFailedException]: Process `HUMAN_TRANSFORMER (47)` terminated with an error exit status (130) +Mar-18 21:20:29.277 [TaskFinalizer-7] ERROR nextflow.processor.TaskProcessor - Execution aborted due to an unexpected error +java.lang.NullPointerException: Cannot invoke method submit() on null object + at org.codehaus.groovy.runtime.NullObject.invokeMethod(NullObject.java:113) + at org.codehaus.groovy.vmplugin.v8.IndyGuardsFiltersAndSignatures.invokeGroovyObjectInvoker(IndyGuardsFiltersAndSignatures.java:151) + at org.codehaus.groovy.vmplugin.v8.IndyInterface.fromCache(IndyInterface.java:321) + at nextflow.processor.TaskProcessor.checkErrorStrategy(TaskProcessor.groovy:1163) + at org.codehaus.groovy.vmplugin.v8.IndyInterface.fromCache(IndyInterface.java:321) + at nextflow.processor.TaskProcessor.resumeOrDie(TaskProcessor.groovy:1077) + at org.codehaus.groovy.vmplugin.v8.IndyInterface.fromCache(IndyInterface.java:321) + at nextflow.processor.TaskProcessor.finalizeTask(TaskProcessor.groovy:2402) + at nextflow.processor.TaskPollingMonitor.finalizeTask(TaskPollingMonitor.groovy:696) + at nextflow.processor.TaskPollingMonitor.safeFinalizeTask(TaskPollingMonitor.groovy:686) + at java.base/jdk.internal.reflect.DirectMethodHandleAccessor.invoke(DirectMethodHandleAccessor.java:103) + at java.base/java.lang.reflect.Method.invoke(Method.java:580) + at org.codehaus.groovy.reflection.CachedMethod.invoke(CachedMethod.java:343) + at groovy.lang.MetaMethod.doMethodInvoke(MetaMethod.java:328) + at groovy.lang.MetaClassImpl.doInvokeMethod(MetaClassImpl.java:1333) + at groovy.lang.MetaClassImpl.invokeMethod(MetaClassImpl.java:1088) + at groovy.lang.MetaClassImpl.invokeMethod(MetaClassImpl.java:1007) + at org.codehaus.groovy.runtime.InvokerHelper.invokePogoMethod(InvokerHelper.java:645) + at org.codehaus.groovy.runtime.InvokerHelper.invokeMethod(InvokerHelper.java:628) + at org.codehaus.groovy.runtime.InvokerHelper.invokeMethodSafe(InvokerHelper.java:82) + at nextflow.processor.TaskPollingMonitor$_checkTaskStatus_lambda8.doCall(TaskPollingMonitor.groovy:676) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:572) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:317) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1144) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:642) + at java.base/java.lang.Thread.run(Thread.java:1583) +Mar-18 21:20:29.293 [TaskFinalizer-5] DEBUG nextflow.processor.TaskProcessor - Handling unexpected condition for + task: name=HUMAN_TRANSFORMER (61); work-dir=/data/bugra/digital_trials/work/43/60db45ede0bd4446d23695ada0d61e + error [nextflow.exception.ProcessFailedException]: Process `HUMAN_TRANSFORMER (61)` terminated with an error exit status (130) +Mar-18 21:20:29.294 [TaskFinalizer-5] ERROR nextflow.processor.TaskProcessor - Execution aborted due to an unexpected error +java.lang.NullPointerException: Cannot invoke method submit() on null object + at org.codehaus.groovy.runtime.NullObject.invokeMethod(NullObject.java:113) + at org.codehaus.groovy.vmplugin.v8.IndyGuardsFiltersAndSignatures.invokeGroovyObjectInvoker(IndyGuardsFiltersAndSignatures.java:151) + at org.codehaus.groovy.vmplugin.v8.IndyInterface.fromCache(IndyInterface.java:321) + at nextflow.processor.TaskProcessor.checkErrorStrategy(TaskProcessor.groovy:1163) + at org.codehaus.groovy.vmplugin.v8.IndyInterface.fromCache(IndyInterface.java:321) + at nextflow.processor.TaskProcessor.resumeOrDie(TaskProcessor.groovy:1077) + at org.codehaus.groovy.vmplugin.v8.IndyInterface.fromCache(IndyInterface.java:321) + at nextflow.processor.TaskProcessor.finalizeTask(TaskProcessor.groovy:2402) + at nextflow.processor.TaskPollingMonitor.finalizeTask(TaskPollingMonitor.groovy:696) + at nextflow.processor.TaskPollingMonitor.safeFinalizeTask(TaskPollingMonitor.groovy:686) + at java.base/jdk.internal.reflect.DirectMethodHandleAccessor.invoke(DirectMethodHandleAccessor.java:103) + at java.base/java.lang.reflect.Method.invoke(Method.java:580) + at org.codehaus.groovy.reflection.CachedMethod.invoke(CachedMethod.java:343) + at groovy.lang.MetaMethod.doMethodInvoke(MetaMethod.java:328) + at groovy.lang.MetaClassImpl.doInvokeMethod(MetaClassImpl.java:1333) + at groovy.lang.MetaClassImpl.invokeMethod(MetaClassImpl.java:1088) + at groovy.lang.MetaClassImpl.invokeMethod(MetaClassImpl.java:1007) + at org.codehaus.groovy.runtime.InvokerHelper.invokePogoMethod(InvokerHelper.java:645) + at org.codehaus.groovy.runtime.InvokerHelper.invokeMethod(InvokerHelper.java:628) + at org.codehaus.groovy.runtime.InvokerHelper.invokeMethodSafe(InvokerHelper.java:82) + at nextflow.processor.TaskPollingMonitor$_checkTaskStatus_lambda8.doCall(TaskPollingMonitor.groovy:676) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:572) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:317) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1144) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:642) + at java.base/java.lang.Thread.run(Thread.java:1583) +Mar-18 21:20:29.295 [TaskFinalizer-3] DEBUG nextflow.processor.TaskProcessor - Handling unexpected condition for + task: name=HUMAN_TRANSFORMER (49); work-dir=/data/bugra/digital_trials/work/22/fd1af06b9e3d47711a38d32e512b6a + error [nextflow.exception.ProcessFailedException]: Process `HUMAN_TRANSFORMER (49)` terminated with an error exit status (130) +Mar-18 21:20:29.295 [TaskFinalizer-3] ERROR nextflow.processor.TaskProcessor - Execution aborted due to an unexpected error +java.lang.NullPointerException: Cannot invoke method submit() on null object + at org.codehaus.groovy.runtime.NullObject.invokeMethod(NullObject.java:113) + at org.codehaus.groovy.vmplugin.v8.IndyGuardsFiltersAndSignatures.invokeGroovyObjectInvoker(IndyGuardsFiltersAndSignatures.java:151) + at org.codehaus.groovy.vmplugin.v8.IndyInterface.fromCache(IndyInterface.java:321) + at nextflow.processor.TaskProcessor.checkErrorStrategy(TaskProcessor.groovy:1163) + at org.codehaus.groovy.vmplugin.v8.IndyInterface.fromCache(IndyInterface.java:321) + at nextflow.processor.TaskProcessor.resumeOrDie(TaskProcessor.groovy:1077) + at org.codehaus.groovy.vmplugin.v8.IndyInterface.fromCache(IndyInterface.java:321) + at nextflow.processor.TaskProcessor.finalizeTask(TaskProcessor.groovy:2402) + at nextflow.processor.TaskPollingMonitor.finalizeTask(TaskPollingMonitor.groovy:696) + at nextflow.processor.TaskPollingMonitor.safeFinalizeTask(TaskPollingMonitor.groovy:686) + at java.base/jdk.internal.reflect.DirectMethodHandleAccessor.invoke(DirectMethodHandleAccessor.java:103) + at java.base/java.lang.reflect.Method.invoke(Method.java:580) + at org.codehaus.groovy.reflection.CachedMethod.invoke(CachedMethod.java:343) + at groovy.lang.MetaMethod.doMethodInvoke(MetaMethod.java:328) + at groovy.lang.MetaClassImpl.doInvokeMethod(MetaClassImpl.java:1333) + at groovy.lang.MetaClassImpl.invokeMethod(MetaClassImpl.java:1088) + at groovy.lang.MetaClassImpl.invokeMethod(MetaClassImpl.java:1007) + at org.codehaus.groovy.runtime.InvokerHelper.invokePogoMethod(InvokerHelper.java:645) + at org.codehaus.groovy.runtime.InvokerHelper.invokeMethod(InvokerHelper.java:628) + at org.codehaus.groovy.runtime.InvokerHelper.invokeMethodSafe(InvokerHelper.java:82) + at nextflow.processor.TaskPollingMonitor$_checkTaskStatus_lambda8.doCall(TaskPollingMonitor.groovy:676) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:572) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:317) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1144) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:642) + at java.base/java.lang.Thread.run(Thread.java:1583) +Mar-18 21:20:29.296 [TaskFinalizer-6] DEBUG nextflow.processor.TaskProcessor - Handling unexpected condition for + task: name=HUMAN_TRANSFORMER (42); work-dir=/data/bugra/digital_trials/work/03/bc533b3f0412ff4170434e49742e08 + error [nextflow.exception.ProcessFailedException]: Process `HUMAN_TRANSFORMER (42)` terminated with an error exit status (130) +Mar-18 21:20:29.296 [TaskFinalizer-6] ERROR nextflow.processor.TaskProcessor - Execution aborted due to an unexpected error +java.lang.NullPointerException: Cannot invoke method submit() on null object + at org.codehaus.groovy.runtime.NullObject.invokeMethod(NullObject.java:113) + at org.codehaus.groovy.vmplugin.v8.IndyGuardsFiltersAndSignatures.invokeGroovyObjectInvoker(IndyGuardsFiltersAndSignatures.java:151) + at org.codehaus.groovy.vmplugin.v8.IndyInterface.fromCache(IndyInterface.java:321) + at nextflow.processor.TaskProcessor.checkErrorStrategy(TaskProcessor.groovy:1163) + at org.codehaus.groovy.vmplugin.v8.IndyInterface.fromCache(IndyInterface.java:321) + at nextflow.processor.TaskProcessor.resumeOrDie(TaskProcessor.groovy:1077) + at org.codehaus.groovy.vmplugin.v8.IndyInterface.fromCache(IndyInterface.java:321) + at nextflow.processor.TaskProcessor.finalizeTask(TaskProcessor.groovy:2402) + at nextflow.processor.TaskPollingMonitor.finalizeTask(TaskPollingMonitor.groovy:696) + at nextflow.processor.TaskPollingMonitor.safeFinalizeTask(TaskPollingMonitor.groovy:686) + at java.base/jdk.internal.reflect.DirectMethodHandleAccessor.invoke(DirectMethodHandleAccessor.java:103) + at java.base/java.lang.reflect.Method.invoke(Method.java:580) + at org.codehaus.groovy.reflection.CachedMethod.invoke(CachedMethod.java:343) + at groovy.lang.MetaMethod.doMethodInvoke(MetaMethod.java:328) + at groovy.lang.MetaClassImpl.doInvokeMethod(MetaClassImpl.java:1333) + at groovy.lang.MetaClassImpl.invokeMethod(MetaClassImpl.java:1088) + at groovy.lang.MetaClassImpl.invokeMethod(MetaClassImpl.java:1007) + at org.codehaus.groovy.runtime.InvokerHelper.invokePogoMethod(InvokerHelper.java:645) + at org.codehaus.groovy.runtime.InvokerHelper.invokeMethod(InvokerHelper.java:628) + at org.codehaus.groovy.runtime.InvokerHelper.invokeMethodSafe(InvokerHelper.java:82) + at nextflow.processor.TaskPollingMonitor$_checkTaskStatus_lambda8.doCall(TaskPollingMonitor.groovy:676) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:572) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:317) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1144) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:642) + at java.base/java.lang.Thread.run(Thread.java:1583) +Mar-18 21:20:29.297 [TaskFinalizer-2] DEBUG nextflow.processor.TaskProcessor - Handling unexpected condition for + task: name=HUMAN_TRANSFORMER (60); work-dir=/data/bugra/digital_trials/work/74/3c1d464c97545d0573e617639c1996 + error [nextflow.exception.ProcessFailedException]: Process `HUMAN_TRANSFORMER (60)` terminated with an error exit status (130) +Mar-18 21:20:29.297 [TaskFinalizer-2] ERROR nextflow.processor.TaskProcessor - Execution aborted due to an unexpected error +java.lang.NullPointerException: Cannot invoke method submit() on null object + at org.codehaus.groovy.runtime.NullObject.invokeMethod(NullObject.java:113) + at org.codehaus.groovy.vmplugin.v8.IndyGuardsFiltersAndSignatures.invokeGroovyObjectInvoker(IndyGuardsFiltersAndSignatures.java:151) + at org.codehaus.groovy.vmplugin.v8.IndyInterface.fromCache(IndyInterface.java:321) + at nextflow.processor.TaskProcessor.checkErrorStrategy(TaskProcessor.groovy:1163) + at org.codehaus.groovy.vmplugin.v8.IndyInterface.fromCache(IndyInterface.java:321) + at nextflow.processor.TaskProcessor.resumeOrDie(TaskProcessor.groovy:1077) + at org.codehaus.groovy.vmplugin.v8.IndyInterface.fromCache(IndyInterface.java:321) + at nextflow.processor.TaskProcessor.finalizeTask(TaskProcessor.groovy:2402) + at nextflow.processor.TaskPollingMonitor.finalizeTask(TaskPollingMonitor.groovy:696) + at nextflow.processor.TaskPollingMonitor.safeFinalizeTask(TaskPollingMonitor.groovy:686) + at java.base/jdk.internal.reflect.DirectMethodHandleAccessor.invoke(DirectMethodHandleAccessor.java:103) + at java.base/java.lang.reflect.Method.invoke(Method.java:580) + at org.codehaus.groovy.reflection.CachedMethod.invoke(CachedMethod.java:343) + at groovy.lang.MetaMethod.doMethodInvoke(MetaMethod.java:328) + at groovy.lang.MetaClassImpl.doInvokeMethod(MetaClassImpl.java:1333) + at groovy.lang.MetaClassImpl.invokeMethod(MetaClassImpl.java:1088) + at groovy.lang.MetaClassImpl.invokeMethod(MetaClassImpl.java:1007) + at org.codehaus.groovy.runtime.InvokerHelper.invokePogoMethod(InvokerHelper.java:645) + at org.codehaus.groovy.runtime.InvokerHelper.invokeMethod(InvokerHelper.java:628) + at org.codehaus.groovy.runtime.InvokerHelper.invokeMethodSafe(InvokerHelper.java:82) + at nextflow.processor.TaskPollingMonitor$_checkTaskStatus_lambda8.doCall(TaskPollingMonitor.groovy:676) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:572) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:317) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1144) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:642) + at java.base/java.lang.Thread.run(Thread.java:1583) +Mar-18 21:20:29.298 [TaskFinalizer-10] DEBUG nextflow.processor.TaskProcessor - Handling unexpected condition for + task: name=HUMAN_TRANSFORMER (31); work-dir=/data/bugra/digital_trials/work/7a/791a5fc3d48e3532dd905a9d6ffe60 + error [nextflow.exception.ProcessFailedException]: Process `HUMAN_TRANSFORMER (31)` terminated with an error exit status (130) +Mar-18 21:20:29.298 [TaskFinalizer-10] ERROR nextflow.processor.TaskProcessor - Execution aborted due to an unexpected error +java.lang.NullPointerException: Cannot invoke method submit() on null object + at org.codehaus.groovy.runtime.NullObject.invokeMethod(NullObject.java:113) + at org.codehaus.groovy.vmplugin.v8.IndyGuardsFiltersAndSignatures.invokeGroovyObjectInvoker(IndyGuardsFiltersAndSignatures.java:151) + at org.codehaus.groovy.vmplugin.v8.IndyInterface.fromCache(IndyInterface.java:321) + at nextflow.processor.TaskProcessor.checkErrorStrategy(TaskProcessor.groovy:1163) + at org.codehaus.groovy.vmplugin.v8.IndyInterface.fromCache(IndyInterface.java:321) + at nextflow.processor.TaskProcessor.resumeOrDie(TaskProcessor.groovy:1077) + at org.codehaus.groovy.vmplugin.v8.IndyInterface.fromCache(IndyInterface.java:321) + at nextflow.processor.TaskProcessor.finalizeTask(TaskProcessor.groovy:2402) + at nextflow.processor.TaskPollingMonitor.finalizeTask(TaskPollingMonitor.groovy:696) + at nextflow.processor.TaskPollingMonitor.safeFinalizeTask(TaskPollingMonitor.groovy:686) + at java.base/jdk.internal.reflect.DirectMethodHandleAccessor.invoke(DirectMethodHandleAccessor.java:103) + at java.base/java.lang.reflect.Method.invoke(Method.java:580) + at org.codehaus.groovy.reflection.CachedMethod.invoke(CachedMethod.java:343) + at groovy.lang.MetaMethod.doMethodInvoke(MetaMethod.java:328) + at groovy.lang.MetaClassImpl.doInvokeMethod(MetaClassImpl.java:1333) + at groovy.lang.MetaClassImpl.invokeMethod(MetaClassImpl.java:1088) + at groovy.lang.MetaClassImpl.invokeMethod(MetaClassImpl.java:1007) + at org.codehaus.groovy.runtime.InvokerHelper.invokePogoMethod(InvokerHelper.java:645) + at org.codehaus.groovy.runtime.InvokerHelper.invokeMethod(InvokerHelper.java:628) + at org.codehaus.groovy.runtime.InvokerHelper.invokeMethodSafe(InvokerHelper.java:82) + at nextflow.processor.TaskPollingMonitor$_checkTaskStatus_lambda8.doCall(TaskPollingMonitor.groovy:676) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:572) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:317) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1144) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:642) + at java.base/java.lang.Thread.run(Thread.java:1583) +Mar-18 21:20:29.299 [TaskFinalizer-3] DEBUG nextflow.processor.TaskProcessor - Handling unexpected condition for + task: name=HUMAN_TRANSFORMER (52); work-dir=/data/bugra/digital_trials/work/58/36391d12e7f01e89c4c4b007a48fdf + error [nextflow.exception.ProcessFailedException]: Process `HUMAN_TRANSFORMER (52)` terminated with an error exit status (130) +Mar-18 21:20:29.299 [TaskFinalizer-3] ERROR nextflow.processor.TaskProcessor - Execution aborted due to an unexpected error +java.lang.NullPointerException: Cannot invoke method submit() on null object + at org.codehaus.groovy.runtime.NullObject.invokeMethod(NullObject.java:113) + at org.codehaus.groovy.vmplugin.v8.IndyGuardsFiltersAndSignatures.invokeGroovyObjectInvoker(IndyGuardsFiltersAndSignatures.java:151) + at org.codehaus.groovy.vmplugin.v8.IndyInterface.fromCache(IndyInterface.java:321) + at nextflow.processor.TaskProcessor.checkErrorStrategy(TaskProcessor.groovy:1163) + at org.codehaus.groovy.vmplugin.v8.IndyInterface.fromCache(IndyInterface.java:321) + at nextflow.processor.TaskProcessor.resumeOrDie(TaskProcessor.groovy:1077) + at org.codehaus.groovy.vmplugin.v8.IndyInterface.fromCache(IndyInterface.java:321) + at nextflow.processor.TaskProcessor.finalizeTask(TaskProcessor.groovy:2402) + at nextflow.processor.TaskPollingMonitor.finalizeTask(TaskPollingMonitor.groovy:696) + at nextflow.processor.TaskPollingMonitor.safeFinalizeTask(TaskPollingMonitor.groovy:686) + at java.base/jdk.internal.reflect.DirectMethodHandleAccessor.invoke(DirectMethodHandleAccessor.java:103) + at java.base/java.lang.reflect.Method.invoke(Method.java:580) + at org.codehaus.groovy.reflection.CachedMethod.invoke(CachedMethod.java:343) + at groovy.lang.MetaMethod.doMethodInvoke(MetaMethod.java:328) + at groovy.lang.MetaClassImpl.doInvokeMethod(MetaClassImpl.java:1333) + at groovy.lang.MetaClassImpl.invokeMethod(MetaClassImpl.java:1088) + at groovy.lang.MetaClassImpl.invokeMethod(MetaClassImpl.java:1007) + at org.codehaus.groovy.runtime.InvokerHelper.invokePogoMethod(InvokerHelper.java:645) + at org.codehaus.groovy.runtime.InvokerHelper.invokeMethod(InvokerHelper.java:628) + at org.codehaus.groovy.runtime.InvokerHelper.invokeMethodSafe(InvokerHelper.java:82) + at nextflow.processor.TaskPollingMonitor$_checkTaskStatus_lambda8.doCall(TaskPollingMonitor.groovy:676) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:572) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:317) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1144) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:642) + at java.base/java.lang.Thread.run(Thread.java:1583) +Mar-18 21:20:29.300 [TaskFinalizer-5] DEBUG nextflow.processor.TaskProcessor - Handling unexpected condition for + task: name=HUMAN_TRANSFORMER (79); work-dir=/data/bugra/digital_trials/work/97/d91d948e50cf63f8b4ff02716cae35 + error [nextflow.exception.ProcessFailedException]: Process `HUMAN_TRANSFORMER (79)` terminated with an error exit status (130) +Mar-18 21:20:29.301 [TaskFinalizer-5] ERROR nextflow.processor.TaskProcessor - Execution aborted due to an unexpected error +java.lang.NullPointerException: Cannot invoke method submit() on null object + at org.codehaus.groovy.runtime.NullObject.invokeMethod(NullObject.java:113) + at org.codehaus.groovy.vmplugin.v8.IndyGuardsFiltersAndSignatures.invokeGroovyObjectInvoker(IndyGuardsFiltersAndSignatures.java:151) + at org.codehaus.groovy.vmplugin.v8.IndyInterface.fromCache(IndyInterface.java:321) + at nextflow.processor.TaskProcessor.checkErrorStrategy(TaskProcessor.groovy:1163) + at org.codehaus.groovy.vmplugin.v8.IndyInterface.fromCache(IndyInterface.java:321) + at nextflow.processor.TaskProcessor.resumeOrDie(TaskProcessor.groovy:1077) + at org.codehaus.groovy.vmplugin.v8.IndyInterface.fromCache(IndyInterface.java:321) + at nextflow.processor.TaskProcessor.finalizeTask(TaskProcessor.groovy:2402) + at nextflow.processor.TaskPollingMonitor.finalizeTask(TaskPollingMonitor.groovy:696) + at nextflow.processor.TaskPollingMonitor.safeFinalizeTask(TaskPollingMonitor.groovy:686) + at java.base/jdk.internal.reflect.DirectMethodHandleAccessor.invoke(DirectMethodHandleAccessor.java:103) + at java.base/java.lang.reflect.Method.invoke(Method.java:580) + at org.codehaus.groovy.reflection.CachedMethod.invoke(CachedMethod.java:343) + at groovy.lang.MetaMethod.doMethodInvoke(MetaMethod.java:328) + at groovy.lang.MetaClassImpl.doInvokeMethod(MetaClassImpl.java:1333) + at groovy.lang.MetaClassImpl.invokeMethod(MetaClassImpl.java:1088) + at groovy.lang.MetaClassImpl.invokeMethod(MetaClassImpl.java:1007) + at org.codehaus.groovy.runtime.InvokerHelper.invokePogoMethod(InvokerHelper.java:645) + at org.codehaus.groovy.runtime.InvokerHelper.invokeMethod(InvokerHelper.java:628) + at org.codehaus.groovy.runtime.InvokerHelper.invokeMethodSafe(InvokerHelper.java:82) + at nextflow.processor.TaskPollingMonitor$_checkTaskStatus_lambda8.doCall(TaskPollingMonitor.groovy:676) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:572) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:317) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1144) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:642) + at java.base/java.lang.Thread.run(Thread.java:1583) +Mar-18 21:20:29.301 [TaskFinalizer-7] DEBUG nextflow.processor.TaskProcessor - Handling unexpected condition for + task: name=HUMAN_TRANSFORMER (4); work-dir=/data/bugra/digital_trials/work/b0/358e0857d3fc84723c4c6f68449def + error [nextflow.exception.ProcessFailedException]: Process `HUMAN_TRANSFORMER (4)` terminated with an error exit status (130) +Mar-18 21:20:29.301 [TaskFinalizer-7] ERROR nextflow.processor.TaskProcessor - Execution aborted due to an unexpected error +java.lang.NullPointerException: Cannot invoke method submit() on null object + at org.codehaus.groovy.runtime.NullObject.invokeMethod(NullObject.java:113) + at org.codehaus.groovy.vmplugin.v8.IndyGuardsFiltersAndSignatures.invokeGroovyObjectInvoker(IndyGuardsFiltersAndSignatures.java:151) + at org.codehaus.groovy.vmplugin.v8.IndyInterface.fromCache(IndyInterface.java:321) + at nextflow.processor.TaskProcessor.checkErrorStrategy(TaskProcessor.groovy:1163) + at org.codehaus.groovy.vmplugin.v8.IndyInterface.fromCache(IndyInterface.java:321) + at nextflow.processor.TaskProcessor.resumeOrDie(TaskProcessor.groovy:1077) + at org.codehaus.groovy.vmplugin.v8.IndyInterface.fromCache(IndyInterface.java:321) + at nextflow.processor.TaskProcessor.finalizeTask(TaskProcessor.groovy:2402) + at nextflow.processor.TaskPollingMonitor.finalizeTask(TaskPollingMonitor.groovy:696) + at nextflow.processor.TaskPollingMonitor.safeFinalizeTask(TaskPollingMonitor.groovy:686) + at java.base/jdk.internal.reflect.DirectMethodHandleAccessor.invoke(DirectMethodHandleAccessor.java:103) + at java.base/java.lang.reflect.Method.invoke(Method.java:580) + at org.codehaus.groovy.reflection.CachedMethod.invoke(CachedMethod.java:343) + at groovy.lang.MetaMethod.doMethodInvoke(MetaMethod.java:328) + at groovy.lang.MetaClassImpl.doInvokeMethod(MetaClassImpl.java:1333) + at groovy.lang.MetaClassImpl.invokeMethod(MetaClassImpl.java:1088) + at groovy.lang.MetaClassImpl.invokeMethod(MetaClassImpl.java:1007) + at org.codehaus.groovy.runtime.InvokerHelper.invokePogoMethod(InvokerHelper.java:645) + at org.codehaus.groovy.runtime.InvokerHelper.invokeMethod(InvokerHelper.java:628) + at org.codehaus.groovy.runtime.InvokerHelper.invokeMethodSafe(InvokerHelper.java:82) + at nextflow.processor.TaskPollingMonitor$_checkTaskStatus_lambda8.doCall(TaskPollingMonitor.groovy:676) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:572) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:317) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1144) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:642) + at java.base/java.lang.Thread.run(Thread.java:1583) +Mar-18 21:20:29.302 [TaskFinalizer-1] DEBUG nextflow.processor.TaskProcessor - Handling unexpected condition for + task: name=HUMAN_TRANSFORMER (15); work-dir=/data/bugra/digital_trials/work/7d/6149e5bb637d5906e412e869847053 + error [nextflow.exception.ProcessFailedException]: Process `HUMAN_TRANSFORMER (15)` terminated with an error exit status (130) +Mar-18 21:20:29.302 [TaskFinalizer-1] ERROR nextflow.processor.TaskProcessor - Execution aborted due to an unexpected error +java.lang.NullPointerException: Cannot invoke method submit() on null object + at org.codehaus.groovy.runtime.NullObject.invokeMethod(NullObject.java:113) + at org.codehaus.groovy.vmplugin.v8.IndyGuardsFiltersAndSignatures.invokeGroovyObjectInvoker(IndyGuardsFiltersAndSignatures.java:151) + at org.codehaus.groovy.vmplugin.v8.IndyInterface.fromCache(IndyInterface.java:321) + at nextflow.processor.TaskProcessor.checkErrorStrategy(TaskProcessor.groovy:1163) + at org.codehaus.groovy.vmplugin.v8.IndyInterface.fromCache(IndyInterface.java:321) + at nextflow.processor.TaskProcessor.resumeOrDie(TaskProcessor.groovy:1077) + at org.codehaus.groovy.vmplugin.v8.IndyInterface.fromCache(IndyInterface.java:321) + at nextflow.processor.TaskProcessor.finalizeTask(TaskProcessor.groovy:2402) + at nextflow.processor.TaskPollingMonitor.finalizeTask(TaskPollingMonitor.groovy:696) + at nextflow.processor.TaskPollingMonitor.safeFinalizeTask(TaskPollingMonitor.groovy:686) + at java.base/jdk.internal.reflect.DirectMethodHandleAccessor.invoke(DirectMethodHandleAccessor.java:103) + at java.base/java.lang.reflect.Method.invoke(Method.java:580) + at org.codehaus.groovy.reflection.CachedMethod.invoke(CachedMethod.java:343) + at groovy.lang.MetaMethod.doMethodInvoke(MetaMethod.java:328) + at groovy.lang.MetaClassImpl.doInvokeMethod(MetaClassImpl.java:1333) + at groovy.lang.MetaClassImpl.invokeMethod(MetaClassImpl.java:1088) + at groovy.lang.MetaClassImpl.invokeMethod(MetaClassImpl.java:1007) + at org.codehaus.groovy.runtime.InvokerHelper.invokePogoMethod(InvokerHelper.java:645) + at org.codehaus.groovy.runtime.InvokerHelper.invokeMethod(InvokerHelper.java:628) + at org.codehaus.groovy.runtime.InvokerHelper.invokeMethodSafe(InvokerHelper.java:82) + at nextflow.processor.TaskPollingMonitor$_checkTaskStatus_lambda8.doCall(TaskPollingMonitor.groovy:676) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:572) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:317) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1144) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:642) + at java.base/java.lang.Thread.run(Thread.java:1583) +Mar-18 21:20:29.303 [TaskFinalizer-8] DEBUG nextflow.processor.TaskProcessor - Handling unexpected condition for + task: name=HUMAN_TRANSFORMER (62); work-dir=/data/bugra/digital_trials/work/d6/469d3a52fd3e47c31e3f9629531225 + error [nextflow.exception.ProcessFailedException]: Process `HUMAN_TRANSFORMER (62)` terminated with an error exit status (130) +Mar-18 21:20:29.304 [TaskFinalizer-8] ERROR nextflow.processor.TaskProcessor - Execution aborted due to an unexpected error +java.lang.NullPointerException: Cannot invoke method submit() on null object + at org.codehaus.groovy.runtime.NullObject.invokeMethod(NullObject.java:113) + at org.codehaus.groovy.vmplugin.v8.IndyGuardsFiltersAndSignatures.invokeGroovyObjectInvoker(IndyGuardsFiltersAndSignatures.java:151) + at org.codehaus.groovy.vmplugin.v8.IndyInterface.fromCache(IndyInterface.java:321) + at nextflow.processor.TaskProcessor.checkErrorStrategy(TaskProcessor.groovy:1163) + at org.codehaus.groovy.vmplugin.v8.IndyInterface.fromCache(IndyInterface.java:321) + at nextflow.processor.TaskProcessor.resumeOrDie(TaskProcessor.groovy:1077) + at org.codehaus.groovy.vmplugin.v8.IndyInterface.fromCache(IndyInterface.java:321) + at nextflow.processor.TaskProcessor.finalizeTask(TaskProcessor.groovy:2402) + at nextflow.processor.TaskPollingMonitor.finalizeTask(TaskPollingMonitor.groovy:696) + at nextflow.processor.TaskPollingMonitor.safeFinalizeTask(TaskPollingMonitor.groovy:686) + at java.base/jdk.internal.reflect.DirectMethodHandleAccessor.invoke(DirectMethodHandleAccessor.java:103) + at java.base/java.lang.reflect.Method.invoke(Method.java:580) + at org.codehaus.groovy.reflection.CachedMethod.invoke(CachedMethod.java:343) + at groovy.lang.MetaMethod.doMethodInvoke(MetaMethod.java:328) + at groovy.lang.MetaClassImpl.doInvokeMethod(MetaClassImpl.java:1333) + at groovy.lang.MetaClassImpl.invokeMethod(MetaClassImpl.java:1088) + at groovy.lang.MetaClassImpl.invokeMethod(MetaClassImpl.java:1007) + at org.codehaus.groovy.runtime.InvokerHelper.invokePogoMethod(InvokerHelper.java:645) + at org.codehaus.groovy.runtime.InvokerHelper.invokeMethod(InvokerHelper.java:628) + at org.codehaus.groovy.runtime.InvokerHelper.invokeMethodSafe(InvokerHelper.java:82) + at nextflow.processor.TaskPollingMonitor$_checkTaskStatus_lambda8.doCall(TaskPollingMonitor.groovy:676) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:572) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:317) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1144) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:642) + at java.base/java.lang.Thread.run(Thread.java:1583) +Mar-18 21:20:29.304 [TaskFinalizer-9] DEBUG nextflow.processor.TaskProcessor - Handling unexpected condition for + task: name=HUMAN_TRANSFORMER (69); work-dir=/data/bugra/digital_trials/work/2d/813f736812d2fe55b217ee6f3a6080 + error [nextflow.exception.ProcessFailedException]: Process `HUMAN_TRANSFORMER (69)` terminated with an error exit status (130) +Mar-18 21:20:29.305 [TaskFinalizer-9] ERROR nextflow.processor.TaskProcessor - Execution aborted due to an unexpected error +java.lang.NullPointerException: Cannot invoke method submit() on null object + at org.codehaus.groovy.runtime.NullObject.invokeMethod(NullObject.java:113) + at org.codehaus.groovy.vmplugin.v8.IndyGuardsFiltersAndSignatures.invokeGroovyObjectInvoker(IndyGuardsFiltersAndSignatures.java:151) + at org.codehaus.groovy.vmplugin.v8.IndyInterface.fromCache(IndyInterface.java:321) + at nextflow.processor.TaskProcessor.checkErrorStrategy(TaskProcessor.groovy:1163) + at org.codehaus.groovy.vmplugin.v8.IndyInterface.fromCache(IndyInterface.java:321) + at nextflow.processor.TaskProcessor.resumeOrDie(TaskProcessor.groovy:1077) + at org.codehaus.groovy.vmplugin.v8.IndyInterface.fromCache(IndyInterface.java:321) + at nextflow.processor.TaskProcessor.finalizeTask(TaskProcessor.groovy:2402) + at nextflow.processor.TaskPollingMonitor.finalizeTask(TaskPollingMonitor.groovy:696) + at nextflow.processor.TaskPollingMonitor.safeFinalizeTask(TaskPollingMonitor.groovy:686) + at java.base/jdk.internal.reflect.DirectMethodHandleAccessor.invoke(DirectMethodHandleAccessor.java:103) + at java.base/java.lang.reflect.Method.invoke(Method.java:580) + at org.codehaus.groovy.reflection.CachedMethod.invoke(CachedMethod.java:343) + at groovy.lang.MetaMethod.doMethodInvoke(MetaMethod.java:328) + at groovy.lang.MetaClassImpl.doInvokeMethod(MetaClassImpl.java:1333) + at groovy.lang.MetaClassImpl.invokeMethod(MetaClassImpl.java:1088) + at groovy.lang.MetaClassImpl.invokeMethod(MetaClassImpl.java:1007) + at org.codehaus.groovy.runtime.InvokerHelper.invokePogoMethod(InvokerHelper.java:645) + at org.codehaus.groovy.runtime.InvokerHelper.invokeMethod(InvokerHelper.java:628) + at org.codehaus.groovy.runtime.InvokerHelper.invokeMethodSafe(InvokerHelper.java:82) + at nextflow.processor.TaskPollingMonitor$_checkTaskStatus_lambda8.doCall(TaskPollingMonitor.groovy:676) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:572) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:317) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1144) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:642) + at java.base/java.lang.Thread.run(Thread.java:1583) +Mar-18 21:20:29.305 [TaskFinalizer-4] DEBUG nextflow.processor.TaskProcessor - Handling unexpected condition for + task: name=HUMAN_TRANSFORMER (26); work-dir=/data/bugra/digital_trials/work/eb/bd17199be64672ed1cd2a9c2de98fc + error [nextflow.exception.ProcessFailedException]: Process `HUMAN_TRANSFORMER (26)` terminated with an error exit status (130) +Mar-18 21:20:29.306 [TaskFinalizer-4] ERROR nextflow.processor.TaskProcessor - Execution aborted due to an unexpected error +java.lang.NullPointerException: Cannot invoke method submit() on null object + at org.codehaus.groovy.runtime.NullObject.invokeMethod(NullObject.java:113) + at org.codehaus.groovy.vmplugin.v8.IndyGuardsFiltersAndSignatures.invokeGroovyObjectInvoker(IndyGuardsFiltersAndSignatures.java:151) + at org.codehaus.groovy.vmplugin.v8.IndyInterface.fromCache(IndyInterface.java:321) + at nextflow.processor.TaskProcessor.checkErrorStrategy(TaskProcessor.groovy:1163) + at org.codehaus.groovy.vmplugin.v8.IndyInterface.fromCache(IndyInterface.java:321) + at nextflow.processor.TaskProcessor.resumeOrDie(TaskProcessor.groovy:1077) + at org.codehaus.groovy.vmplugin.v8.IndyInterface.fromCache(IndyInterface.java:321) + at nextflow.processor.TaskProcessor.finalizeTask(TaskProcessor.groovy:2402) + at nextflow.processor.TaskPollingMonitor.finalizeTask(TaskPollingMonitor.groovy:696) + at nextflow.processor.TaskPollingMonitor.safeFinalizeTask(TaskPollingMonitor.groovy:686) + at java.base/jdk.internal.reflect.DirectMethodHandleAccessor.invoke(DirectMethodHandleAccessor.java:103) + at java.base/java.lang.reflect.Method.invoke(Method.java:580) + at org.codehaus.groovy.reflection.CachedMethod.invoke(CachedMethod.java:343) + at groovy.lang.MetaMethod.doMethodInvoke(MetaMethod.java:328) + at groovy.lang.MetaClassImpl.doInvokeMethod(MetaClassImpl.java:1333) + at groovy.lang.MetaClassImpl.invokeMethod(MetaClassImpl.java:1088) + at groovy.lang.MetaClassImpl.invokeMethod(MetaClassImpl.java:1007) + at org.codehaus.groovy.runtime.InvokerHelper.invokePogoMethod(InvokerHelper.java:645) + at org.codehaus.groovy.runtime.InvokerHelper.invokeMethod(InvokerHelper.java:628) + at org.codehaus.groovy.runtime.InvokerHelper.invokeMethodSafe(InvokerHelper.java:82) + at nextflow.processor.TaskPollingMonitor$_checkTaskStatus_lambda8.doCall(TaskPollingMonitor.groovy:676) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:572) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:317) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1144) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:642) + at java.base/java.lang.Thread.run(Thread.java:1583) +Mar-18 21:20:29.306 [TaskFinalizer-7] DEBUG nextflow.processor.TaskProcessor - Handling unexpected condition for + task: name=HUMAN_TRANSFORMER (30); work-dir=/data/bugra/digital_trials/work/72/7527282097aa9de800c0e570242280 + error [nextflow.exception.ProcessFailedException]: Process `HUMAN_TRANSFORMER (30)` terminated with an error exit status (130) +Mar-18 21:20:29.307 [TaskFinalizer-7] ERROR nextflow.processor.TaskProcessor - Execution aborted due to an unexpected error +java.lang.NullPointerException: Cannot invoke method submit() on null object + at org.codehaus.groovy.runtime.NullObject.invokeMethod(NullObject.java:113) + at org.codehaus.groovy.vmplugin.v8.IndyGuardsFiltersAndSignatures.invokeGroovyObjectInvoker(IndyGuardsFiltersAndSignatures.java:151) + at org.codehaus.groovy.vmplugin.v8.IndyInterface.fromCache(IndyInterface.java:321) + at nextflow.processor.TaskProcessor.checkErrorStrategy(TaskProcessor.groovy:1163) + at org.codehaus.groovy.vmplugin.v8.IndyInterface.fromCache(IndyInterface.java:321) + at nextflow.processor.TaskProcessor.resumeOrDie(TaskProcessor.groovy:1077) + at org.codehaus.groovy.vmplugin.v8.IndyInterface.fromCache(IndyInterface.java:321) + at nextflow.processor.TaskProcessor.finalizeTask(TaskProcessor.groovy:2402) + at nextflow.processor.TaskPollingMonitor.finalizeTask(TaskPollingMonitor.groovy:696) + at nextflow.processor.TaskPollingMonitor.safeFinalizeTask(TaskPollingMonitor.groovy:686) + at java.base/jdk.internal.reflect.DirectMethodHandleAccessor.invoke(DirectMethodHandleAccessor.java:103) + at java.base/java.lang.reflect.Method.invoke(Method.java:580) + at org.codehaus.groovy.reflection.CachedMethod.invoke(CachedMethod.java:343) + at groovy.lang.MetaMethod.doMethodInvoke(MetaMethod.java:328) + at groovy.lang.MetaClassImpl.doInvokeMethod(MetaClassImpl.java:1333) + at groovy.lang.MetaClassImpl.invokeMethod(MetaClassImpl.java:1088) + at groovy.lang.MetaClassImpl.invokeMethod(MetaClassImpl.java:1007) + at org.codehaus.groovy.runtime.InvokerHelper.invokePogoMethod(InvokerHelper.java:645) + at org.codehaus.groovy.runtime.InvokerHelper.invokeMethod(InvokerHelper.java:628) + at org.codehaus.groovy.runtime.InvokerHelper.invokeMethodSafe(InvokerHelper.java:82) + at nextflow.processor.TaskPollingMonitor$_checkTaskStatus_lambda8.doCall(TaskPollingMonitor.groovy:676) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:572) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:317) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1144) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:642) + at java.base/java.lang.Thread.run(Thread.java:1583) +Mar-18 21:20:29.307 [TaskFinalizer-3] DEBUG nextflow.processor.TaskProcessor - Handling unexpected condition for + task: name=HUMAN_TRANSFORMER (44); work-dir=/data/bugra/digital_trials/work/23/9ecd04cb0afa1a6189c69d0c0fe507 + error [nextflow.exception.ProcessFailedException]: Process `HUMAN_TRANSFORMER (44)` terminated with an error exit status (130) +Mar-18 21:20:29.308 [TaskFinalizer-3] ERROR nextflow.processor.TaskProcessor - Execution aborted due to an unexpected error +java.lang.NullPointerException: Cannot invoke method submit() on null object + at org.codehaus.groovy.runtime.NullObject.invokeMethod(NullObject.java:113) + at org.codehaus.groovy.vmplugin.v8.IndyGuardsFiltersAndSignatures.invokeGroovyObjectInvoker(IndyGuardsFiltersAndSignatures.java:151) + at org.codehaus.groovy.vmplugin.v8.IndyInterface.fromCache(IndyInterface.java:321) + at nextflow.processor.TaskProcessor.checkErrorStrategy(TaskProcessor.groovy:1163) + at org.codehaus.groovy.vmplugin.v8.IndyInterface.fromCache(IndyInterface.java:321) + at nextflow.processor.TaskProcessor.resumeOrDie(TaskProcessor.groovy:1077) + at org.codehaus.groovy.vmplugin.v8.IndyInterface.fromCache(IndyInterface.java:321) + at nextflow.processor.TaskProcessor.finalizeTask(TaskProcessor.groovy:2402) + at nextflow.processor.TaskPollingMonitor.finalizeTask(TaskPollingMonitor.groovy:696) + at nextflow.processor.TaskPollingMonitor.safeFinalizeTask(TaskPollingMonitor.groovy:686) + at java.base/jdk.internal.reflect.DirectMethodHandleAccessor.invoke(DirectMethodHandleAccessor.java:103) + at java.base/java.lang.reflect.Method.invoke(Method.java:580) + at org.codehaus.groovy.reflection.CachedMethod.invoke(CachedMethod.java:343) + at groovy.lang.MetaMethod.doMethodInvoke(MetaMethod.java:328) + at groovy.lang.MetaClassImpl.doInvokeMethod(MetaClassImpl.java:1333) + at groovy.lang.MetaClassImpl.invokeMethod(MetaClassImpl.java:1088) + at groovy.lang.MetaClassImpl.invokeMethod(MetaClassImpl.java:1007) + at org.codehaus.groovy.runtime.InvokerHelper.invokePogoMethod(InvokerHelper.java:645) + at org.codehaus.groovy.runtime.InvokerHelper.invokeMethod(InvokerHelper.java:628) + at org.codehaus.groovy.runtime.InvokerHelper.invokeMethodSafe(InvokerHelper.java:82) + at nextflow.processor.TaskPollingMonitor$_checkTaskStatus_lambda8.doCall(TaskPollingMonitor.groovy:676) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:572) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:317) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1144) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:642) + at java.base/java.lang.Thread.run(Thread.java:1583) +Mar-18 21:20:29.308 [TaskFinalizer-10] DEBUG nextflow.processor.TaskProcessor - Handling unexpected condition for + task: name=HUMAN_TRANSFORMER (123); work-dir=/data/bugra/digital_trials/work/34/bc34dfc5b77bd45bf850bbefd1ade3 + error [nextflow.exception.ProcessFailedException]: Process `HUMAN_TRANSFORMER (123)` terminated with an error exit status (130) +Mar-18 21:20:29.309 [TaskFinalizer-10] ERROR nextflow.processor.TaskProcessor - Execution aborted due to an unexpected error +java.lang.NullPointerException: Cannot invoke method submit() on null object + at org.codehaus.groovy.runtime.NullObject.invokeMethod(NullObject.java:113) + at org.codehaus.groovy.vmplugin.v8.IndyGuardsFiltersAndSignatures.invokeGroovyObjectInvoker(IndyGuardsFiltersAndSignatures.java:151) + at org.codehaus.groovy.vmplugin.v8.IndyInterface.fromCache(IndyInterface.java:321) + at nextflow.processor.TaskProcessor.checkErrorStrategy(TaskProcessor.groovy:1163) + at org.codehaus.groovy.vmplugin.v8.IndyInterface.fromCache(IndyInterface.java:321) + at nextflow.processor.TaskProcessor.resumeOrDie(TaskProcessor.groovy:1077) + at org.codehaus.groovy.vmplugin.v8.IndyInterface.fromCache(IndyInterface.java:321) + at nextflow.processor.TaskProcessor.finalizeTask(TaskProcessor.groovy:2402) + at nextflow.processor.TaskPollingMonitor.finalizeTask(TaskPollingMonitor.groovy:696) + at nextflow.processor.TaskPollingMonitor.safeFinalizeTask(TaskPollingMonitor.groovy:686) + at java.base/jdk.internal.reflect.DirectMethodHandleAccessor.invoke(DirectMethodHandleAccessor.java:103) + at java.base/java.lang.reflect.Method.invoke(Method.java:580) + at org.codehaus.groovy.reflection.CachedMethod.invoke(CachedMethod.java:343) + at groovy.lang.MetaMethod.doMethodInvoke(MetaMethod.java:328) + at groovy.lang.MetaClassImpl.doInvokeMethod(MetaClassImpl.java:1333) + at groovy.lang.MetaClassImpl.invokeMethod(MetaClassImpl.java:1088) + at groovy.lang.MetaClassImpl.invokeMethod(MetaClassImpl.java:1007) + at org.codehaus.groovy.runtime.InvokerHelper.invokePogoMethod(InvokerHelper.java:645) + at org.codehaus.groovy.runtime.InvokerHelper.invokeMethod(InvokerHelper.java:628) + at org.codehaus.groovy.runtime.InvokerHelper.invokeMethodSafe(InvokerHelper.java:82) + at nextflow.processor.TaskPollingMonitor$_checkTaskStatus_lambda8.doCall(TaskPollingMonitor.groovy:676) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:572) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:317) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1144) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:642) + at java.base/java.lang.Thread.run(Thread.java:1583) +Mar-18 21:20:29.309 [TaskFinalizer-2] DEBUG nextflow.processor.TaskProcessor - Handling unexpected condition for + task: name=HUMAN_TRANSFORMER (43); work-dir=/data/bugra/digital_trials/work/44/42e04d6d950d65bdc5c53a29f24aff + error [nextflow.exception.ProcessFailedException]: Process `HUMAN_TRANSFORMER (43)` terminated with an error exit status (130) +Mar-18 21:20:29.310 [TaskFinalizer-2] ERROR nextflow.processor.TaskProcessor - Execution aborted due to an unexpected error +java.lang.NullPointerException: Cannot invoke method submit() on null object + at org.codehaus.groovy.runtime.NullObject.invokeMethod(NullObject.java:113) + at org.codehaus.groovy.vmplugin.v8.IndyGuardsFiltersAndSignatures.invokeGroovyObjectInvoker(IndyGuardsFiltersAndSignatures.java:151) + at org.codehaus.groovy.vmplugin.v8.IndyInterface.fromCache(IndyInterface.java:321) + at nextflow.processor.TaskProcessor.checkErrorStrategy(TaskProcessor.groovy:1163) + at org.codehaus.groovy.vmplugin.v8.IndyInterface.fromCache(IndyInterface.java:321) + at nextflow.processor.TaskProcessor.resumeOrDie(TaskProcessor.groovy:1077) + at org.codehaus.groovy.vmplugin.v8.IndyInterface.fromCache(IndyInterface.java:321) + at nextflow.processor.TaskProcessor.finalizeTask(TaskProcessor.groovy:2402) + at nextflow.processor.TaskPollingMonitor.finalizeTask(TaskPollingMonitor.groovy:696) + at nextflow.processor.TaskPollingMonitor.safeFinalizeTask(TaskPollingMonitor.groovy:686) + at java.base/jdk.internal.reflect.DirectMethodHandleAccessor.invoke(DirectMethodHandleAccessor.java:103) + at java.base/java.lang.reflect.Method.invoke(Method.java:580) + at org.codehaus.groovy.reflection.CachedMethod.invoke(CachedMethod.java:343) + at groovy.lang.MetaMethod.doMethodInvoke(MetaMethod.java:328) + at groovy.lang.MetaClassImpl.doInvokeMethod(MetaClassImpl.java:1333) + at groovy.lang.MetaClassImpl.invokeMethod(MetaClassImpl.java:1088) + at groovy.lang.MetaClassImpl.invokeMethod(MetaClassImpl.java:1007) + at org.codehaus.groovy.runtime.InvokerHelper.invokePogoMethod(InvokerHelper.java:645) + at org.codehaus.groovy.runtime.InvokerHelper.invokeMethod(InvokerHelper.java:628) + at org.codehaus.groovy.runtime.InvokerHelper.invokeMethodSafe(InvokerHelper.java:82) + at nextflow.processor.TaskPollingMonitor$_checkTaskStatus_lambda8.doCall(TaskPollingMonitor.groovy:676) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:572) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:317) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1144) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:642) + at java.base/java.lang.Thread.run(Thread.java:1583) +Mar-18 21:20:29.310 [TaskFinalizer-6] DEBUG nextflow.processor.TaskProcessor - Handling unexpected condition for + task: name=HUMAN_TRANSFORMER (66); work-dir=/data/bugra/digital_trials/work/16/6dd6cfac099d7134782d3b80712847 + error [nextflow.exception.ProcessFailedException]: Process `HUMAN_TRANSFORMER (66)` terminated with an error exit status (130) +Mar-18 21:20:29.311 [TaskFinalizer-6] ERROR nextflow.processor.TaskProcessor - Execution aborted due to an unexpected error +java.lang.NullPointerException: Cannot invoke method submit() on null object + at org.codehaus.groovy.runtime.NullObject.invokeMethod(NullObject.java:113) + at org.codehaus.groovy.vmplugin.v8.IndyGuardsFiltersAndSignatures.invokeGroovyObjectInvoker(IndyGuardsFiltersAndSignatures.java:151) + at org.codehaus.groovy.vmplugin.v8.IndyInterface.fromCache(IndyInterface.java:321) + at nextflow.processor.TaskProcessor.checkErrorStrategy(TaskProcessor.groovy:1163) + at org.codehaus.groovy.vmplugin.v8.IndyInterface.fromCache(IndyInterface.java:321) + at nextflow.processor.TaskProcessor.resumeOrDie(TaskProcessor.groovy:1077) + at org.codehaus.groovy.vmplugin.v8.IndyInterface.fromCache(IndyInterface.java:321) + at nextflow.processor.TaskProcessor.finalizeTask(TaskProcessor.groovy:2402) + at nextflow.processor.TaskPollingMonitor.finalizeTask(TaskPollingMonitor.groovy:696) + at nextflow.processor.TaskPollingMonitor.safeFinalizeTask(TaskPollingMonitor.groovy:686) + at java.base/jdk.internal.reflect.DirectMethodHandleAccessor.invoke(DirectMethodHandleAccessor.java:103) + at java.base/java.lang.reflect.Method.invoke(Method.java:580) + at org.codehaus.groovy.reflection.CachedMethod.invoke(CachedMethod.java:343) + at groovy.lang.MetaMethod.doMethodInvoke(MetaMethod.java:328) + at groovy.lang.MetaClassImpl.doInvokeMethod(MetaClassImpl.java:1333) + at groovy.lang.MetaClassImpl.invokeMethod(MetaClassImpl.java:1088) + at groovy.lang.MetaClassImpl.invokeMethod(MetaClassImpl.java:1007) + at org.codehaus.groovy.runtime.InvokerHelper.invokePogoMethod(InvokerHelper.java:645) + at org.codehaus.groovy.runtime.InvokerHelper.invokeMethod(InvokerHelper.java:628) + at org.codehaus.groovy.runtime.InvokerHelper.invokeMethodSafe(InvokerHelper.java:82) + at nextflow.processor.TaskPollingMonitor$_checkTaskStatus_lambda8.doCall(TaskPollingMonitor.groovy:676) + at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:572) + at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:317) + at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1144) + at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:642) + at java.base/java.lang.Thread.run(Thread.java:1583) +Mar-18 21:20:29.452 [main] DEBUG nextflow.cache.CacheDB - Closing CacheDB done +Mar-18 21:20:29.612 [main] INFO org.pf4j.AbstractPluginManager - Stop plugin 'nf-tower@1.11.3' +Mar-18 21:20:29.612 [main] DEBUG nextflow.plugin.BasePlugin - Plugin stopped nf-tower +Mar-18 21:20:29.614 [main] DEBUG nextflow.script.ScriptRunner - > Execution complete -- Goodbye diff --git a/.nextflow.log.3 b/.nextflow.log.3 new file mode 100644 index 0000000..2970d16 --- /dev/null +++ b/.nextflow.log.3 @@ -0,0 +1,117 @@ +Mar-09 15:03:54.815 [main] DEBUG nextflow.cli.Launcher - $> nextflow run test.nf -params-file /data/dreamdock-data/caline-run6/digtrial/caline-run6.json +Mar-09 15:03:55.224 [main] DEBUG nextflow.cli.CmdRun - N E X T F L O W ~ version 25.04.3 +Mar-09 15:03:55.255 [main] DEBUG nextflow.plugin.PluginsFacade - Setting up plugin manager > mode=prod; embedded=false; plugins-dir=/home/omic/.nextflow/plugins; core-plugins: nf-amazon@2.15.0,nf-azure@1.16.0,nf-cloudcache@0.4.3,nf-codecommit@0.2.3,nf-console@1.2.1,nf-google@1.21.0,nf-k8s@1.0.0,nf-tower@1.11.3,nf-wave@1.12.1 +Mar-09 15:03:55.294 [main] INFO o.pf4j.DefaultPluginStatusProvider - Enabled plugins: [] +Mar-09 15:03:55.295 [main] INFO o.pf4j.DefaultPluginStatusProvider - Disabled plugins: [] +Mar-09 15:03:55.299 [main] INFO org.pf4j.DefaultPluginManager - PF4J version 3.12.0 in 'deployment' mode +Mar-09 15:03:55.314 [main] INFO org.pf4j.AbstractPluginManager - No plugins +Mar-09 15:03:55.342 [main] DEBUG nextflow.config.ConfigBuilder - Found config local: /data/bugra/digital_trials/nextflow.config +Mar-09 15:03:55.346 [main] DEBUG nextflow.config.ConfigBuilder - Parsing config file: /data/bugra/digital_trials/nextflow.config +Mar-09 15:03:55.386 [main] DEBUG n.secret.LocalSecretsProvider - Secrets store: /home/omic/.nextflow/secrets/store.json +Mar-09 15:03:55.391 [main] DEBUG nextflow.secret.SecretsLoader - Discovered secrets providers: [nextflow.secret.LocalSecretsProvider@6ef81f31] - activable => nextflow.secret.LocalSecretsProvider@6ef81f31 +Mar-09 15:03:55.422 [main] DEBUG nextflow.config.ConfigBuilder - Applying config profile: `standard` +Mar-09 15:03:56.211 [main] DEBUG nextflow.cli.CmdRun - Applied DSL=2 from script declaration +Mar-09 15:03:56.234 [main] DEBUG nextflow.cli.CmdRun - Launching `test.nf` [dreamy_panini] DSL2 - revision: 0e14afbd94 +Mar-09 15:03:56.236 [main] DEBUG nextflow.plugin.PluginsFacade - Plugins default=[] +Mar-09 15:03:56.238 [main] DEBUG nextflow.plugin.PluginsFacade - Plugins resolved requirement=[nf-tower@1.11.3] +Mar-09 15:03:56.240 [main] DEBUG nextflow.plugin.PluginUpdater - Installing plugin nf-tower version: 1.11.3 +Mar-09 15:03:56.252 [main] INFO org.pf4j.AbstractPluginManager - Plugin 'nf-tower@1.11.3' resolved +Mar-09 15:03:56.252 [main] INFO org.pf4j.AbstractPluginManager - Start plugin 'nf-tower@1.11.3' +Mar-09 15:03:56.269 [main] DEBUG nextflow.plugin.BasePlugin - Plugin started nf-tower@1.11.3 +Mar-09 15:03:56.340 [main] DEBUG nextflow.Session - Session UUID: c52cdca5-7bcc-4d96-8a19-824595cbfc30 +Mar-09 15:03:56.341 [main] DEBUG nextflow.Session - Run name: dreamy_panini +Mar-09 15:03:56.341 [main] DEBUG nextflow.Session - Executor pool size: 80 +Mar-09 15:03:56.354 [main] DEBUG nextflow.file.FilePorter - File porter settings maxRetries=3; maxTransfers=50; pollTimeout=null +Mar-09 15:03:56.362 [main] DEBUG nextflow.util.ThreadPoolBuilder - Creating thread pool 'FileTransfer' minSize=10; maxSize=240; workQueue=LinkedBlockingQueue[-1]; allowCoreThreadTimeout=false +Mar-09 15:03:56.395 [main] DEBUG nextflow.cli.CmdRun - + Version: 25.04.3 build 5949 + Created: 02-06-2025 20:56 UTC + System: Linux 6.11.0-26-generic + Runtime: Groovy 4.0.26 on OpenJDK 64-Bit Server VM 21.0.7+6-Ubuntu-0ubuntu124.04 + Encoding: UTF-8 (UTF-8) + Process: 2939340@k8s-node23 [127.0.1.1] + CPUs: 80 - Mem: 251.6 GB (33.6 GB) - Swap: 0 (0) +Mar-09 15:03:56.430 [main] DEBUG nextflow.Session - Work-dir: /data/bugra/digital_trials/work [btrfs] +Mar-09 15:03:56.430 [main] DEBUG nextflow.Session - Script base path does not exist or is not a directory: /data/bugra/digital_trials/bin +Mar-09 15:03:56.457 [main] DEBUG nextflow.executor.ExecutorFactory - Extension executors providers=[] +Mar-09 15:03:56.477 [main] DEBUG nextflow.Session - Observer factory: DefaultObserverFactory +Mar-09 15:03:56.483 [main] DEBUG nextflow.Session - Observer factory: TowerFactory +Mar-09 15:03:56.486 [main] DEBUG nextflow.Session - Observer factory (v2): LinObserverFactory +Mar-09 15:03:56.520 [main] DEBUG nextflow.cache.CacheFactory - Using Nextflow cache factory: nextflow.cache.DefaultCacheFactory +Mar-09 15:03:56.533 [main] DEBUG nextflow.util.CustomThreadPool - Creating default thread pool > poolSize: 81; maxThreads: 1000 +Mar-09 15:03:56.691 [main] DEBUG nextflow.Session - Session start +Mar-09 15:03:57.165 [main] DEBUG nextflow.script.ScriptRunner - > Launching execution +Mar-09 15:03:58.082 [main] DEBUG nextflow.executor.ExecutorFactory - << taskConfig executor: null +Mar-09 15:03:58.083 [main] DEBUG nextflow.executor.ExecutorFactory - >> processorType: 'local' +Mar-09 15:03:58.093 [main] DEBUG nextflow.executor.Executor - [warm up] executor > local +Mar-09 15:03:58.108 [main] DEBUG n.processor.LocalPollingMonitor - Creating local task monitor for executor 'local' > cpus=80; memory=251.6 GB; capacity=80; pollInterval=100ms; dumpInterval=5m +Mar-09 15:03:58.111 [main] DEBUG n.processor.TaskPollingMonitor - >>> barrier register (monitor: local) +Mar-09 15:03:58.146 [main] DEBUG nextflow.processor.TaskProcessor - Creating process 'HUMAN_TRANSFORMER': maxForks=0; fair=false; array=0 +Mar-09 15:03:58.247 [main] DEBUG nextflow.executor.ExecutorFactory - << taskConfig executor: null +Mar-09 15:03:58.247 [main] DEBUG nextflow.executor.ExecutorFactory - >> processorType: 'local' +Mar-09 15:03:58.249 [main] DEBUG nextflow.processor.TaskProcessor - Creating process 'GET_FINAL_METABOLITES_STATIC': maxForks=0; fair=false; array=0 +Mar-09 15:03:58.264 [main] DEBUG nextflow.script.ProcessConfig - Config settings `withLabel:gpu_process` matches labels `gpu_process` for process with name PREPROCESS_PROTEIN +Mar-09 15:03:58.269 [main] DEBUG nextflow.executor.ExecutorFactory - << taskConfig executor: null +Mar-09 15:03:58.270 [main] DEBUG nextflow.executor.ExecutorFactory - >> processorType: 'local' +Mar-09 15:03:58.271 [main] DEBUG nextflow.processor.TaskProcessor - Creating process 'PREPROCESS_PROTEIN': maxForks=0; fair=false; array=0 +Mar-09 15:03:58.337 [main] DEBUG nextflow.executor.ExecutorFactory - << taskConfig executor: null +Mar-09 15:03:58.337 [main] DEBUG nextflow.executor.ExecutorFactory - >> processorType: 'local' +Mar-09 15:03:58.338 [main] DEBUG nextflow.processor.TaskProcessor - Creating process 'CONPLEX_ALL': maxForks=0; fair=false; array=0 +Mar-09 15:03:58.371 [main] DEBUG nextflow.executor.ExecutorFactory - << taskConfig executor: null +Mar-09 15:03:58.371 [main] DEBUG nextflow.executor.ExecutorFactory - >> processorType: 'local' +Mar-09 15:03:58.372 [main] DEBUG nextflow.processor.TaskProcessor - Creating process 'NETWORK_ENRICHMENT': maxForks=0; fair=false; array=0 +Mar-09 15:03:58.380 [main] DEBUG nextflow.executor.ExecutorFactory - << taskConfig executor: null +Mar-09 15:03:58.380 [main] DEBUG nextflow.executor.ExecutorFactory - >> processorType: 'local' +Mar-09 15:03:58.381 [main] DEBUG nextflow.processor.TaskProcessor - Creating process 'TISSUE_DISTRIBUTION': maxForks=0; fair=false; array=0 +Mar-09 15:03:58.393 [main] DEBUG nextflow.executor.ExecutorFactory - << taskConfig executor: null +Mar-09 15:03:58.394 [main] DEBUG nextflow.executor.ExecutorFactory - >> processorType: 'local' +Mar-09 15:03:58.395 [main] DEBUG nextflow.processor.TaskProcessor - Creating process 'BIO_METRICS': maxForks=0; fair=false; array=0 +Mar-09 15:03:58.398 [main] DEBUG nextflow.Session - Workflow process names [dsl2]: HUMAN_TRANSFORMER, METABOLITES_BY_MASS, GET_FINAL_METABOLITES_STATIC, CONPLEX_ALL, NETWORK_ENRICHMENT, GET_FINAL_METABOLITES, CONPLEX, BIO_METRICS, SUPER_TRANSFORMER, TISSUE_DISTRIBUTION, MERGE_DRUG, MERGE_INTERACTIONS, PREPROCESS_PROTEIN, ORDERED_SEQUENCE +Mar-09 15:03:58.401 [main] DEBUG nextflow.Session - Igniting dataflow network (11) +Mar-09 15:03:58.408 [main] DEBUG nextflow.processor.TaskProcessor - Starting process > HUMAN_TRANSFORMER +Mar-09 15:03:58.410 [main] DEBUG nextflow.processor.TaskProcessor - Starting process > GET_FINAL_METABOLITES_STATIC +Mar-09 15:03:58.411 [main] DEBUG nextflow.processor.TaskProcessor - Starting process > PREPROCESS_PROTEIN +Mar-09 15:03:58.412 [main] DEBUG nextflow.processor.TaskProcessor - Starting process > CONPLEX_ALL +Mar-09 15:03:58.412 [main] DEBUG nextflow.processor.TaskProcessor - Starting process > NETWORK_ENRICHMENT +Mar-09 15:03:58.412 [PathVisitor-3] DEBUG nextflow.file.PathVisitor - files for syntax: glob; folder: /mnt/dreamdock-data/digital_trials/input/blank/; pattern: *.fasta; options: [:] +Mar-09 15:03:58.412 [PathVisitor-1] DEBUG nextflow.file.PathVisitor - files for syntax: glob; folder: /data/dreamdock-data/caline-run6/digtrial/input/; pattern: *.csv; options: [:] +Mar-09 15:03:58.413 [main] DEBUG nextflow.processor.TaskProcessor - Starting process > TISSUE_DISTRIBUTION +Mar-09 15:03:58.414 [main] DEBUG nextflow.processor.TaskProcessor - Starting process > BIO_METRICS +Mar-09 15:03:58.415 [main] DEBUG nextflow.script.ScriptRunner - Parsed script files: + Script_e39e54e7aa543fd0: /data/bugra/digital_trials/main_biotransformer.nf + Script_d345b7a65a8f3255: /data/bugra/digital_trials/main_conplex.nf + Script_ec2c89c0dbf76553: /data/bugra/digital_trials/test.nf + Script_ec01f2a38db15aa5: /data/bugra/digital_trials/main_tissue.nf +Mar-09 15:03:58.415 [main] DEBUG nextflow.script.ScriptRunner - > Awaiting termination +Mar-09 15:03:58.415 [main] DEBUG nextflow.Session - Session await +Mar-09 15:03:58.625 [Task submitter] DEBUG n.executor.local.LocalTaskHandler - Launch cmd line: /bin/bash -ue .command.run +Mar-09 15:03:58.629 [Task submitter] INFO nextflow.Session - [9f/8b91ca] Submitted process > HUMAN_TRANSFORMER (1) +Mar-09 15:04:06.589 [Task monitor] DEBUG n.processor.TaskPollingMonitor - Task completed > TaskHandler[id: 1; name: HUMAN_TRANSFORMER (1); status: COMPLETED; exit: 0; error: -; workDir: /data/bugra/digital_trials/work/9f/8b91caff0c52ded09b143e6e91cbc0] +Mar-09 15:04:06.591 [Task monitor] DEBUG nextflow.util.ThreadPoolBuilder - Creating thread pool 'TaskFinalizer' minSize=10; maxSize=240; workQueue=LinkedBlockingQueue[-1]; allowCoreThreadTimeout=false +Mar-09 15:04:06.623 [TaskFinalizer-1] DEBUG nextflow.util.ThreadPoolBuilder - Creating thread pool 'PublishDir' minSize=10; maxSize=240; workQueue=LinkedBlockingQueue[-1]; allowCoreThreadTimeout=false +Mar-09 15:04:06.635 [Task submitter] DEBUG n.executor.local.LocalTaskHandler - Launch cmd line: /bin/bash -ue .command.run +Mar-09 15:04:06.636 [Task submitter] INFO nextflow.Session - [08/710d4c] Submitted process > GET_FINAL_METABOLITES_STATIC (1) +Mar-09 15:04:11.034 [Task monitor] DEBUG n.processor.TaskPollingMonitor - Task completed > TaskHandler[id: 2; name: GET_FINAL_METABOLITES_STATIC (1); status: COMPLETED; exit: 0; error: -; workDir: /data/bugra/digital_trials/work/08/710d4cc4e2be03a44b2df2383e7d9b] +Mar-09 15:04:11.122 [Task submitter] DEBUG n.executor.local.LocalTaskHandler - Launch cmd line: /bin/bash -ue .command.run +Mar-09 15:04:11.125 [Task submitter] INFO nextflow.Session - [53/ea8e99] Submitted process > CONPLEX_ALL (1) +Mar-09 15:06:33.396 [Task monitor] DEBUG n.processor.TaskPollingMonitor - Task completed > TaskHandler[id: 3; name: CONPLEX_ALL (1); status: COMPLETED; exit: 0; error: -; workDir: /data/bugra/digital_trials/work/53/ea8e99cffaf7ca1272d091bfac2929] +Mar-09 15:06:33.433 [Task submitter] DEBUG n.executor.local.LocalTaskHandler - Launch cmd line: /bin/bash -ue .command.run +Mar-09 15:06:33.434 [Task submitter] INFO nextflow.Session - [fb/95c05c] Submitted process > TISSUE_DISTRIBUTION (1) +Mar-09 15:06:33.442 [Task submitter] DEBUG n.executor.local.LocalTaskHandler - Launch cmd line: /bin/bash -ue .command.run +Mar-09 15:06:33.442 [Task submitter] INFO nextflow.Session - [9a/9129e3] Submitted process > BIO_METRICS (1) +Mar-09 15:06:33.448 [Task submitter] DEBUG n.executor.local.LocalTaskHandler - Launch cmd line: /bin/bash -ue .command.run +Mar-09 15:06:33.449 [Task submitter] INFO nextflow.Session - [16/77a5f6] Submitted process > NETWORK_ENRICHMENT (1) +Mar-09 15:06:43.140 [Task monitor] DEBUG n.processor.TaskPollingMonitor - Task completed > TaskHandler[id: 6; name: NETWORK_ENRICHMENT (1); status: COMPLETED; exit: 0; error: -; workDir: /data/bugra/digital_trials/work/16/77a5f693ac1bd2bc124ddc7ec802e3] +Mar-09 15:06:44.636 [Task monitor] DEBUG n.processor.TaskPollingMonitor - Task completed > TaskHandler[id: 5; name: TISSUE_DISTRIBUTION (1); status: COMPLETED; exit: 0; error: -; workDir: /data/bugra/digital_trials/work/fb/95c05c31fa620d6901fbfc0de32259] +Mar-09 15:06:56.374 [Task monitor] DEBUG n.processor.TaskPollingMonitor - Task completed > TaskHandler[id: 4; name: BIO_METRICS (1); status: COMPLETED; exit: 0; error: -; workDir: /data/bugra/digital_trials/work/9a/9129e302133c74df23101091230822] +Mar-09 15:06:56.382 [main] DEBUG nextflow.Session - Session await > all processes finished +Mar-09 15:06:56.476 [Task monitor] DEBUG n.processor.TaskPollingMonitor - <<< barrier arrives (monitor: local) - terminating tasks monitor poll loop +Mar-09 15:06:56.477 [main] DEBUG nextflow.Session - Session await > all barriers passed +Mar-09 15:06:56.486 [main] DEBUG nextflow.util.ThreadPoolManager - Thread pool 'TaskFinalizer' shutdown completed (hard=false) +Mar-09 15:06:56.487 [main] DEBUG nextflow.util.ThreadPoolManager - Thread pool 'PublishDir' shutdown completed (hard=false) +Mar-09 15:06:56.501 [main] DEBUG n.trace.WorkflowStatsObserver - Workflow completed > WorkflowStats[succeededCount=6; failedCount=0; ignoredCount=0; cachedCount=0; pendingCount=0; submittedCount=0; runningCount=0; retriesCount=0; abortedCount=0; succeedDuration=3m 18s; failedDuration=0ms; cachedDuration=0ms;loadCpus=0; loadMemory=0; peakRunning=3; peakCpus=3; peakMemory=11 GB; ] +Mar-09 15:06:56.581 [main] DEBUG nextflow.cache.CacheDB - Closing CacheDB done +Mar-09 15:06:56.671 [main] INFO org.pf4j.AbstractPluginManager - Stop plugin 'nf-tower@1.11.3' +Mar-09 15:06:56.671 [main] DEBUG nextflow.plugin.BasePlugin - Plugin stopped nf-tower +Mar-09 15:06:56.673 [main] DEBUG nextflow.util.ThreadPoolManager - Thread pool 'FileTransfer' shutdown completed (hard=false) +Mar-09 15:06:56.674 [main] DEBUG nextflow.script.ScriptRunner - > Execution complete -- Goodbye diff --git a/.nextflow.log.4 b/.nextflow.log.4 new file mode 100644 index 0000000..e1a1446 --- /dev/null +++ b/.nextflow.log.4 @@ -0,0 +1,117 @@ +Feb-27 17:43:13.583 [main] DEBUG nextflow.cli.Launcher - $> nextflow run test.nf -params-file /data/dreamdock-data/caline-run6/digtrial/caline-run6.json +Feb-27 17:43:13.956 [main] DEBUG nextflow.cli.CmdRun - N E X T F L O W ~ version 25.04.3 +Feb-27 17:43:13.997 [main] DEBUG nextflow.plugin.PluginsFacade - Setting up plugin manager > mode=prod; embedded=false; plugins-dir=/home/omic/.nextflow/plugins; core-plugins: nf-amazon@2.15.0,nf-azure@1.16.0,nf-cloudcache@0.4.3,nf-codecommit@0.2.3,nf-console@1.2.1,nf-google@1.21.0,nf-k8s@1.0.0,nf-tower@1.11.3,nf-wave@1.12.1 +Feb-27 17:43:14.037 [main] INFO o.pf4j.DefaultPluginStatusProvider - Enabled plugins: [] +Feb-27 17:43:14.038 [main] INFO o.pf4j.DefaultPluginStatusProvider - Disabled plugins: [] +Feb-27 17:43:14.042 [main] INFO org.pf4j.DefaultPluginManager - PF4J version 3.12.0 in 'deployment' mode +Feb-27 17:43:14.057 [main] INFO org.pf4j.AbstractPluginManager - No plugins +Feb-27 17:43:14.085 [main] DEBUG nextflow.config.ConfigBuilder - Found config local: /data/bugra/digital_trials/nextflow.config +Feb-27 17:43:14.088 [main] DEBUG nextflow.config.ConfigBuilder - Parsing config file: /data/bugra/digital_trials/nextflow.config +Feb-27 17:43:14.130 [main] DEBUG n.secret.LocalSecretsProvider - Secrets store: /home/omic/.nextflow/secrets/store.json +Feb-27 17:43:14.136 [main] DEBUG nextflow.secret.SecretsLoader - Discovered secrets providers: [nextflow.secret.LocalSecretsProvider@6ef81f31] - activable => nextflow.secret.LocalSecretsProvider@6ef81f31 +Feb-27 17:43:14.166 [main] DEBUG nextflow.config.ConfigBuilder - Applying config profile: `standard` +Feb-27 17:43:14.913 [main] DEBUG nextflow.cli.CmdRun - Applied DSL=2 from script declaration +Feb-27 17:43:14.935 [main] DEBUG nextflow.cli.CmdRun - Launching `test.nf` [wise_snyder] DSL2 - revision: 5cb3581ad6 +Feb-27 17:43:14.938 [main] DEBUG nextflow.plugin.PluginsFacade - Plugins default=[] +Feb-27 17:43:14.939 [main] DEBUG nextflow.plugin.PluginsFacade - Plugins resolved requirement=[nf-tower@1.11.3] +Feb-27 17:43:14.942 [main] DEBUG nextflow.plugin.PluginUpdater - Installing plugin nf-tower version: 1.11.3 +Feb-27 17:43:14.955 [main] INFO org.pf4j.AbstractPluginManager - Plugin 'nf-tower@1.11.3' resolved +Feb-27 17:43:14.955 [main] INFO org.pf4j.AbstractPluginManager - Start plugin 'nf-tower@1.11.3' +Feb-27 17:43:14.972 [main] DEBUG nextflow.plugin.BasePlugin - Plugin started nf-tower@1.11.3 +Feb-27 17:43:15.045 [main] DEBUG nextflow.Session - Session UUID: ab7a7317-9f8e-49f9-8ba6-8349b24a36ef +Feb-27 17:43:15.046 [main] DEBUG nextflow.Session - Run name: wise_snyder +Feb-27 17:43:15.047 [main] DEBUG nextflow.Session - Executor pool size: 80 +Feb-27 17:43:15.059 [main] DEBUG nextflow.file.FilePorter - File porter settings maxRetries=3; maxTransfers=50; pollTimeout=null +Feb-27 17:43:15.067 [main] DEBUG nextflow.util.ThreadPoolBuilder - Creating thread pool 'FileTransfer' minSize=10; maxSize=240; workQueue=LinkedBlockingQueue[-1]; allowCoreThreadTimeout=false +Feb-27 17:43:15.104 [main] DEBUG nextflow.cli.CmdRun - + Version: 25.04.3 build 5949 + Created: 02-06-2025 20:56 UTC + System: Linux 6.11.0-26-generic + Runtime: Groovy 4.0.26 on OpenJDK 64-Bit Server VM 21.0.7+6-Ubuntu-0ubuntu124.04 + Encoding: UTF-8 (UTF-8) + Process: 3937567@k8s-node23 [127.0.1.1] + CPUs: 80 - Mem: 251.6 GB (5.3 GB) - Swap: 0 (0) +Feb-27 17:43:15.139 [main] DEBUG nextflow.Session - Work-dir: /data/bugra/digital_trials/work [btrfs] +Feb-27 17:43:15.140 [main] DEBUG nextflow.Session - Script base path does not exist or is not a directory: /data/bugra/digital_trials/bin +Feb-27 17:43:15.158 [main] DEBUG nextflow.executor.ExecutorFactory - Extension executors providers=[] +Feb-27 17:43:15.176 [main] DEBUG nextflow.Session - Observer factory: DefaultObserverFactory +Feb-27 17:43:15.182 [main] DEBUG nextflow.Session - Observer factory: TowerFactory +Feb-27 17:43:15.185 [main] DEBUG nextflow.Session - Observer factory (v2): LinObserverFactory +Feb-27 17:43:15.217 [main] DEBUG nextflow.cache.CacheFactory - Using Nextflow cache factory: nextflow.cache.DefaultCacheFactory +Feb-27 17:43:15.229 [main] DEBUG nextflow.util.CustomThreadPool - Creating default thread pool > poolSize: 81; maxThreads: 1000 +Feb-27 17:43:15.409 [main] DEBUG nextflow.Session - Session start +Feb-27 17:43:15.879 [main] DEBUG nextflow.script.ScriptRunner - > Launching execution +Feb-27 17:43:16.759 [main] DEBUG nextflow.executor.ExecutorFactory - << taskConfig executor: null +Feb-27 17:43:16.760 [main] DEBUG nextflow.executor.ExecutorFactory - >> processorType: 'local' +Feb-27 17:43:16.767 [main] DEBUG nextflow.executor.Executor - [warm up] executor > local +Feb-27 17:43:16.777 [main] DEBUG n.processor.LocalPollingMonitor - Creating local task monitor for executor 'local' > cpus=80; memory=251.6 GB; capacity=80; pollInterval=100ms; dumpInterval=5m +Feb-27 17:43:16.780 [main] DEBUG n.processor.TaskPollingMonitor - >>> barrier register (monitor: local) +Feb-27 17:43:16.815 [main] DEBUG nextflow.processor.TaskProcessor - Creating process 'HUMAN_TRANSFORMER': maxForks=0; fair=false; array=0 +Feb-27 17:43:16.900 [main] DEBUG nextflow.executor.ExecutorFactory - << taskConfig executor: null +Feb-27 17:43:16.900 [main] DEBUG nextflow.executor.ExecutorFactory - >> processorType: 'local' +Feb-27 17:43:16.902 [main] DEBUG nextflow.processor.TaskProcessor - Creating process 'GET_FINAL_METABOLITES_STATIC': maxForks=0; fair=false; array=0 +Feb-27 17:43:16.915 [main] DEBUG nextflow.script.ProcessConfig - Config settings `withLabel:gpu_process` matches labels `gpu_process` for process with name PREPROCESS_PROTEIN +Feb-27 17:43:16.920 [main] DEBUG nextflow.executor.ExecutorFactory - << taskConfig executor: null +Feb-27 17:43:16.920 [main] DEBUG nextflow.executor.ExecutorFactory - >> processorType: 'local' +Feb-27 17:43:16.922 [main] DEBUG nextflow.processor.TaskProcessor - Creating process 'PREPROCESS_PROTEIN': maxForks=0; fair=false; array=0 +Feb-27 17:43:16.984 [main] DEBUG nextflow.executor.ExecutorFactory - << taskConfig executor: null +Feb-27 17:43:16.984 [main] DEBUG nextflow.executor.ExecutorFactory - >> processorType: 'local' +Feb-27 17:43:16.985 [main] DEBUG nextflow.processor.TaskProcessor - Creating process 'CONPLEX_ALL': maxForks=0; fair=false; array=0 +Feb-27 17:43:17.016 [main] DEBUG nextflow.executor.ExecutorFactory - << taskConfig executor: null +Feb-27 17:43:17.016 [main] DEBUG nextflow.executor.ExecutorFactory - >> processorType: 'local' +Feb-27 17:43:17.017 [main] DEBUG nextflow.processor.TaskProcessor - Creating process 'NETWORK_ENRICHMENT': maxForks=0; fair=false; array=0 +Feb-27 17:43:17.025 [main] DEBUG nextflow.executor.ExecutorFactory - << taskConfig executor: null +Feb-27 17:43:17.025 [main] DEBUG nextflow.executor.ExecutorFactory - >> processorType: 'local' +Feb-27 17:43:17.026 [main] DEBUG nextflow.processor.TaskProcessor - Creating process 'TISSUE_DISTRIBUTION': maxForks=0; fair=false; array=0 +Feb-27 17:43:17.039 [main] DEBUG nextflow.executor.ExecutorFactory - << taskConfig executor: null +Feb-27 17:43:17.039 [main] DEBUG nextflow.executor.ExecutorFactory - >> processorType: 'local' +Feb-27 17:43:17.040 [main] DEBUG nextflow.processor.TaskProcessor - Creating process 'BIO_METRICS': maxForks=0; fair=false; array=0 +Feb-27 17:43:17.043 [main] DEBUG nextflow.Session - Workflow process names [dsl2]: HUMAN_TRANSFORMER, METABOLITES_BY_MASS, GET_FINAL_METABOLITES_STATIC, CONPLEX_ALL, NETWORK_ENRICHMENT, GET_FINAL_METABOLITES, CONPLEX, BIO_METRICS, SUPER_TRANSFORMER, TISSUE_DISTRIBUTION, MERGE_DRUG, MERGE_INTERACTIONS, PREPROCESS_PROTEIN, ORDERED_SEQUENCE +Feb-27 17:43:17.046 [main] DEBUG nextflow.Session - Igniting dataflow network (11) +Feb-27 17:43:17.053 [main] DEBUG nextflow.processor.TaskProcessor - Starting process > HUMAN_TRANSFORMER +Feb-27 17:43:17.069 [main] DEBUG nextflow.processor.TaskProcessor - Starting process > GET_FINAL_METABOLITES_STATIC +Feb-27 17:43:17.071 [main] DEBUG nextflow.processor.TaskProcessor - Starting process > PREPROCESS_PROTEIN +Feb-27 17:43:17.071 [PathVisitor-1] DEBUG nextflow.file.PathVisitor - files for syntax: glob; folder: /data/dreamdock-data/caline-run6/digtrial/input/; pattern: *.csv; options: [:] +Feb-27 17:43:17.071 [PathVisitor-3] DEBUG nextflow.file.PathVisitor - files for syntax: glob; folder: /mnt/dreamdock-data/digital_trials/input/blank/; pattern: *.fasta; options: [:] +Feb-27 17:43:17.071 [main] DEBUG nextflow.processor.TaskProcessor - Starting process > CONPLEX_ALL +Feb-27 17:43:17.072 [main] DEBUG nextflow.processor.TaskProcessor - Starting process > NETWORK_ENRICHMENT +Feb-27 17:43:17.073 [main] DEBUG nextflow.processor.TaskProcessor - Starting process > TISSUE_DISTRIBUTION +Feb-27 17:43:17.073 [main] DEBUG nextflow.processor.TaskProcessor - Starting process > BIO_METRICS +Feb-27 17:43:17.074 [main] DEBUG nextflow.script.ScriptRunner - Parsed script files: + Script_c432c676a3e7c0cb: /data/bugra/digital_trials/test.nf + Script_e39e54e7aa543fd0: /data/bugra/digital_trials/main_biotransformer.nf + Script_d345b7a65a8f3255: /data/bugra/digital_trials/main_conplex.nf + Script_ec01f2a38db15aa5: /data/bugra/digital_trials/main_tissue.nf +Feb-27 17:43:17.075 [main] DEBUG nextflow.script.ScriptRunner - > Awaiting termination +Feb-27 17:43:17.075 [main] DEBUG nextflow.Session - Session await +Feb-27 17:43:17.299 [Task submitter] DEBUG n.executor.local.LocalTaskHandler - Launch cmd line: /bin/bash -ue .command.run +Feb-27 17:43:17.303 [Task submitter] INFO nextflow.Session - [b8/48fb21] Submitted process > HUMAN_TRANSFORMER (1) +Feb-27 17:43:24.518 [Task monitor] DEBUG n.processor.TaskPollingMonitor - Task completed > TaskHandler[id: 1; name: HUMAN_TRANSFORMER (1); status: COMPLETED; exit: 0; error: -; workDir: /data/bugra/digital_trials/work/b8/48fb213f9b113a32b1649ada113509] +Feb-27 17:43:24.519 [Task monitor] DEBUG nextflow.util.ThreadPoolBuilder - Creating thread pool 'TaskFinalizer' minSize=10; maxSize=240; workQueue=LinkedBlockingQueue[-1]; allowCoreThreadTimeout=false +Feb-27 17:43:24.547 [TaskFinalizer-1] DEBUG nextflow.util.ThreadPoolBuilder - Creating thread pool 'PublishDir' minSize=10; maxSize=240; workQueue=LinkedBlockingQueue[-1]; allowCoreThreadTimeout=false +Feb-27 17:43:24.559 [Task submitter] DEBUG n.executor.local.LocalTaskHandler - Launch cmd line: /bin/bash -ue .command.run +Feb-27 17:43:24.560 [Task submitter] INFO nextflow.Session - [f5/a871d4] Submitted process > GET_FINAL_METABOLITES_STATIC (1) +Feb-27 17:43:28.371 [Task monitor] DEBUG n.processor.TaskPollingMonitor - Task completed > TaskHandler[id: 2; name: GET_FINAL_METABOLITES_STATIC (1); status: COMPLETED; exit: 0; error: -; workDir: /data/bugra/digital_trials/work/f5/a871d46063710b8620594ede8bc8f2] +Feb-27 17:43:28.423 [Task submitter] DEBUG n.executor.local.LocalTaskHandler - Launch cmd line: /bin/bash -ue .command.run +Feb-27 17:43:28.424 [Task submitter] INFO nextflow.Session - [54/3e3c99] Submitted process > CONPLEX_ALL (1) +Feb-27 17:45:36.007 [Task monitor] DEBUG n.processor.TaskPollingMonitor - Task completed > TaskHandler[id: 3; name: CONPLEX_ALL (1); status: COMPLETED; exit: 0; error: -; workDir: /data/bugra/digital_trials/work/54/3e3c99cd7077434aa2732f31dd7b5c] +Feb-27 17:45:36.075 [Task submitter] DEBUG n.executor.local.LocalTaskHandler - Launch cmd line: /bin/bash -ue .command.run +Feb-27 17:45:36.075 [Task submitter] INFO nextflow.Session - [24/f1f52e] Submitted process > TISSUE_DISTRIBUTION (1) +Feb-27 17:45:36.081 [Task submitter] DEBUG n.executor.local.LocalTaskHandler - Launch cmd line: /bin/bash -ue .command.run +Feb-27 17:45:36.082 [Task submitter] INFO nextflow.Session - [aa/de8363] Submitted process > BIO_METRICS (1) +Feb-27 17:45:36.087 [Task submitter] DEBUG n.executor.local.LocalTaskHandler - Launch cmd line: /bin/bash -ue .command.run +Feb-27 17:45:36.088 [Task submitter] INFO nextflow.Session - [f3/73824b] Submitted process > NETWORK_ENRICHMENT (1) +Feb-27 17:45:44.940 [Task monitor] DEBUG n.processor.TaskPollingMonitor - Task completed > TaskHandler[id: 6; name: NETWORK_ENRICHMENT (1); status: COMPLETED; exit: 0; error: -; workDir: /data/bugra/digital_trials/work/f3/73824bf939c5be1858680c6af0e5e6] +Feb-27 17:45:47.754 [Task monitor] DEBUG n.processor.TaskPollingMonitor - Task completed > TaskHandler[id: 4; name: TISSUE_DISTRIBUTION (1); status: COMPLETED; exit: 0; error: -; workDir: /data/bugra/digital_trials/work/24/f1f52e39bf1496db70950a7c5a04c8] +Feb-27 17:45:58.442 [Task monitor] DEBUG n.processor.TaskPollingMonitor - Task completed > TaskHandler[id: 5; name: BIO_METRICS (1); status: COMPLETED; exit: 0; error: -; workDir: /data/bugra/digital_trials/work/aa/de8363f3884d595a7a7df0291508ef] +Feb-27 17:45:58.448 [main] DEBUG nextflow.Session - Session await > all processes finished +Feb-27 17:45:58.542 [Task monitor] DEBUG n.processor.TaskPollingMonitor - <<< barrier arrives (monitor: local) - terminating tasks monitor poll loop +Feb-27 17:45:58.542 [main] DEBUG nextflow.Session - Session await > all barriers passed +Feb-27 17:45:58.548 [main] DEBUG nextflow.util.ThreadPoolManager - Thread pool 'TaskFinalizer' shutdown completed (hard=false) +Feb-27 17:45:58.549 [main] DEBUG nextflow.util.ThreadPoolManager - Thread pool 'PublishDir' shutdown completed (hard=false) +Feb-27 17:45:58.557 [main] DEBUG n.trace.WorkflowStatsObserver - Workflow completed > WorkflowStats[succeededCount=6; failedCount=0; ignoredCount=0; cachedCount=0; pendingCount=0; submittedCount=0; runningCount=0; retriesCount=0; abortedCount=0; succeedDuration=3m 1s; failedDuration=0ms; cachedDuration=0ms;loadCpus=0; loadMemory=0; peakRunning=3; peakCpus=3; peakMemory=11 GB; ] +Feb-27 17:45:58.693 [main] DEBUG nextflow.cache.CacheDB - Closing CacheDB done +Feb-27 17:45:58.772 [main] INFO org.pf4j.AbstractPluginManager - Stop plugin 'nf-tower@1.11.3' +Feb-27 17:45:58.772 [main] DEBUG nextflow.plugin.BasePlugin - Plugin stopped nf-tower +Feb-27 17:45:58.774 [main] DEBUG nextflow.util.ThreadPoolManager - Thread pool 'FileTransfer' shutdown completed (hard=false) +Feb-27 17:45:58.775 [main] DEBUG nextflow.script.ScriptRunner - > Execution complete -- Goodbye diff --git a/.nextflow.log.5 b/.nextflow.log.5 new file mode 100644 index 0000000..0b41152 --- /dev/null +++ b/.nextflow.log.5 @@ -0,0 +1,122 @@ +Feb-27 17:41:44.642 [main] DEBUG nextflow.cli.Launcher - $> nextflow run test.nf -params-file /data/dreamdock-data/caline-run6/digtrial/caline-run6.json +Feb-27 17:41:45.022 [main] DEBUG nextflow.cli.CmdRun - N E X T F L O W ~ version 25.04.3 +Feb-27 17:41:45.053 [main] DEBUG nextflow.plugin.PluginsFacade - Setting up plugin manager > mode=prod; embedded=false; plugins-dir=/home/omic/.nextflow/plugins; core-plugins: nf-amazon@2.15.0,nf-azure@1.16.0,nf-cloudcache@0.4.3,nf-codecommit@0.2.3,nf-console@1.2.1,nf-google@1.21.0,nf-k8s@1.0.0,nf-tower@1.11.3,nf-wave@1.12.1 +Feb-27 17:41:45.091 [main] INFO o.pf4j.DefaultPluginStatusProvider - Enabled plugins: [] +Feb-27 17:41:45.092 [main] INFO o.pf4j.DefaultPluginStatusProvider - Disabled plugins: [] +Feb-27 17:41:45.096 [main] INFO org.pf4j.DefaultPluginManager - PF4J version 3.12.0 in 'deployment' mode +Feb-27 17:41:45.109 [main] INFO org.pf4j.AbstractPluginManager - No plugins +Feb-27 17:41:45.142 [main] DEBUG nextflow.config.ConfigBuilder - Found config local: /data/bugra/digital_trials/nextflow.config +Feb-27 17:41:45.146 [main] DEBUG nextflow.config.ConfigBuilder - Parsing config file: /data/bugra/digital_trials/nextflow.config +Feb-27 17:41:45.190 [main] DEBUG n.secret.LocalSecretsProvider - Secrets store: /home/omic/.nextflow/secrets/store.json +Feb-27 17:41:45.196 [main] DEBUG nextflow.secret.SecretsLoader - Discovered secrets providers: [nextflow.secret.LocalSecretsProvider@6ef81f31] - activable => nextflow.secret.LocalSecretsProvider@6ef81f31 +Feb-27 17:41:45.226 [main] DEBUG nextflow.config.ConfigBuilder - Applying config profile: `standard` +Feb-27 17:41:45.999 [main] DEBUG nextflow.cli.CmdRun - Applied DSL=2 from script declaration +Feb-27 17:41:46.021 [main] DEBUG nextflow.cli.CmdRun - Launching `test.nf` [chaotic_leakey] DSL2 - revision: 5cb3581ad6 +Feb-27 17:41:46.024 [main] DEBUG nextflow.plugin.PluginsFacade - Plugins default=[] +Feb-27 17:41:46.025 [main] DEBUG nextflow.plugin.PluginsFacade - Plugins resolved requirement=[nf-tower@1.11.3] +Feb-27 17:41:46.028 [main] DEBUG nextflow.plugin.PluginUpdater - Installing plugin nf-tower version: 1.11.3 +Feb-27 17:41:46.042 [main] INFO org.pf4j.AbstractPluginManager - Plugin 'nf-tower@1.11.3' resolved +Feb-27 17:41:46.043 [main] INFO org.pf4j.AbstractPluginManager - Start plugin 'nf-tower@1.11.3' +Feb-27 17:41:46.062 [main] DEBUG nextflow.plugin.BasePlugin - Plugin started nf-tower@1.11.3 +Feb-27 17:41:46.139 [main] DEBUG nextflow.Session - Session UUID: 6d6a967c-f1c2-433b-8c30-4f047e71a910 +Feb-27 17:41:46.140 [main] DEBUG nextflow.Session - Run name: chaotic_leakey +Feb-27 17:41:46.140 [main] DEBUG nextflow.Session - Executor pool size: 80 +Feb-27 17:41:46.153 [main] DEBUG nextflow.file.FilePorter - File porter settings maxRetries=3; maxTransfers=50; pollTimeout=null +Feb-27 17:41:46.161 [main] DEBUG nextflow.util.ThreadPoolBuilder - Creating thread pool 'FileTransfer' minSize=10; maxSize=240; workQueue=LinkedBlockingQueue[-1]; allowCoreThreadTimeout=false +Feb-27 17:41:46.198 [main] DEBUG nextflow.cli.CmdRun - + Version: 25.04.3 build 5949 + Created: 02-06-2025 20:56 UTC + System: Linux 6.11.0-26-generic + Runtime: Groovy 4.0.26 on OpenJDK 64-Bit Server VM 21.0.7+6-Ubuntu-0ubuntu124.04 + Encoding: UTF-8 (UTF-8) + Process: 3934402@k8s-node23 [127.0.1.1] + CPUs: 80 - Mem: 251.6 GB (5 GB) - Swap: 0 (0) +Feb-27 17:41:46.237 [main] DEBUG nextflow.Session - Work-dir: /data/bugra/digital_trials/work [btrfs] +Feb-27 17:41:46.238 [main] DEBUG nextflow.Session - Script base path does not exist or is not a directory: /data/bugra/digital_trials/bin +Feb-27 17:41:46.254 [main] DEBUG nextflow.executor.ExecutorFactory - Extension executors providers=[] +Feb-27 17:41:46.273 [main] DEBUG nextflow.Session - Observer factory: DefaultObserverFactory +Feb-27 17:41:46.279 [main] DEBUG nextflow.Session - Observer factory: TowerFactory +Feb-27 17:41:46.281 [main] DEBUG nextflow.Session - Observer factory (v2): LinObserverFactory +Feb-27 17:41:46.315 [main] DEBUG nextflow.cache.CacheFactory - Using Nextflow cache factory: nextflow.cache.DefaultCacheFactory +Feb-27 17:41:46.328 [main] DEBUG nextflow.util.CustomThreadPool - Creating default thread pool > poolSize: 81; maxThreads: 1000 +Feb-27 17:41:46.574 [main] DEBUG nextflow.Session - Session start +Feb-27 17:41:47.067 [main] DEBUG nextflow.script.ScriptRunner - > Launching execution +Feb-27 17:41:47.963 [main] DEBUG nextflow.executor.ExecutorFactory - << taskConfig executor: null +Feb-27 17:41:47.964 [main] DEBUG nextflow.executor.ExecutorFactory - >> processorType: 'local' +Feb-27 17:41:47.971 [main] DEBUG nextflow.executor.Executor - [warm up] executor > local +Feb-27 17:41:47.981 [main] DEBUG n.processor.LocalPollingMonitor - Creating local task monitor for executor 'local' > cpus=80; memory=251.6 GB; capacity=80; pollInterval=100ms; dumpInterval=5m +Feb-27 17:41:47.984 [main] DEBUG n.processor.TaskPollingMonitor - >>> barrier register (monitor: local) +Feb-27 17:41:48.018 [main] DEBUG nextflow.processor.TaskProcessor - Creating process 'HUMAN_TRANSFORMER': maxForks=0; fair=false; array=0 +Feb-27 17:41:48.112 [main] DEBUG nextflow.executor.ExecutorFactory - << taskConfig executor: null +Feb-27 17:41:48.112 [main] DEBUG nextflow.executor.ExecutorFactory - >> processorType: 'local' +Feb-27 17:41:48.114 [main] DEBUG nextflow.processor.TaskProcessor - Creating process 'GET_FINAL_METABOLITES_STATIC': maxForks=0; fair=false; array=0 +Feb-27 17:41:48.127 [main] DEBUG nextflow.script.ProcessConfig - Config settings `withLabel:gpu_process` matches labels `gpu_process` for process with name PREPROCESS_PROTEIN +Feb-27 17:41:48.132 [main] DEBUG nextflow.executor.ExecutorFactory - << taskConfig executor: null +Feb-27 17:41:48.132 [main] DEBUG nextflow.executor.ExecutorFactory - >> processorType: 'local' +Feb-27 17:41:48.134 [main] DEBUG nextflow.processor.TaskProcessor - Creating process 'PREPROCESS_PROTEIN': maxForks=0; fair=false; array=0 +Feb-27 17:41:48.193 [main] DEBUG nextflow.executor.ExecutorFactory - << taskConfig executor: null +Feb-27 17:41:48.193 [main] DEBUG nextflow.executor.ExecutorFactory - >> processorType: 'local' +Feb-27 17:41:48.194 [main] DEBUG nextflow.processor.TaskProcessor - Creating process 'CONPLEX_ALL': maxForks=0; fair=false; array=0 +Feb-27 17:41:48.226 [main] DEBUG nextflow.executor.ExecutorFactory - << taskConfig executor: null +Feb-27 17:41:48.226 [main] DEBUG nextflow.executor.ExecutorFactory - >> processorType: 'local' +Feb-27 17:41:48.227 [main] DEBUG nextflow.processor.TaskProcessor - Creating process 'NETWORK_ENRICHMENT': maxForks=0; fair=false; array=0 +Feb-27 17:41:48.235 [main] DEBUG nextflow.executor.ExecutorFactory - << taskConfig executor: null +Feb-27 17:41:48.235 [main] DEBUG nextflow.executor.ExecutorFactory - >> processorType: 'local' +Feb-27 17:41:48.236 [main] DEBUG nextflow.processor.TaskProcessor - Creating process 'TISSUE_DISTRIBUTION': maxForks=0; fair=false; array=0 +Feb-27 17:41:48.247 [main] DEBUG nextflow.executor.ExecutorFactory - << taskConfig executor: null +Feb-27 17:41:48.248 [main] DEBUG nextflow.executor.ExecutorFactory - >> processorType: 'local' +Feb-27 17:41:48.248 [main] DEBUG nextflow.processor.TaskProcessor - Creating process 'BIO_METRICS': maxForks=0; fair=false; array=0 +Feb-27 17:41:48.251 [main] DEBUG nextflow.Session - Workflow process names [dsl2]: HUMAN_TRANSFORMER, METABOLITES_BY_MASS, GET_FINAL_METABOLITES_STATIC, CONPLEX_ALL, NETWORK_ENRICHMENT, GET_FINAL_METABOLITES, CONPLEX, BIO_METRICS, SUPER_TRANSFORMER, TISSUE_DISTRIBUTION, MERGE_DRUG, MERGE_INTERACTIONS, PREPROCESS_PROTEIN, ORDERED_SEQUENCE +Feb-27 17:41:48.254 [main] DEBUG nextflow.Session - Igniting dataflow network (11) +Feb-27 17:41:48.261 [main] DEBUG nextflow.processor.TaskProcessor - Starting process > HUMAN_TRANSFORMER +Feb-27 17:41:48.277 [main] DEBUG nextflow.processor.TaskProcessor - Starting process > GET_FINAL_METABOLITES_STATIC +Feb-27 17:41:48.278 [main] DEBUG nextflow.processor.TaskProcessor - Starting process > PREPROCESS_PROTEIN +Feb-27 17:41:48.279 [main] DEBUG nextflow.processor.TaskProcessor - Starting process > CONPLEX_ALL +Feb-27 17:41:48.279 [PathVisitor-3] DEBUG nextflow.file.PathVisitor - files for syntax: glob; folder: /mnt/dreamdock-data/digital_trials/input/blank/; pattern: *.fasta; options: [:] +Feb-27 17:41:48.279 [PathVisitor-1] DEBUG nextflow.file.PathVisitor - files for syntax: glob; folder: /data/dreamdock-data/caline-run6/digtrial/input/; pattern: *.csv; options: [:] +Feb-27 17:41:48.280 [main] DEBUG nextflow.processor.TaskProcessor - Starting process > NETWORK_ENRICHMENT +Feb-27 17:41:48.280 [main] DEBUG nextflow.processor.TaskProcessor - Starting process > TISSUE_DISTRIBUTION +Feb-27 17:41:48.281 [main] DEBUG nextflow.processor.TaskProcessor - Starting process > BIO_METRICS +Feb-27 17:41:48.282 [main] DEBUG nextflow.script.ScriptRunner - Parsed script files: + Script_c432c676a3e7c0cb: /data/bugra/digital_trials/test.nf + Script_e39e54e7aa543fd0: /data/bugra/digital_trials/main_biotransformer.nf + Script_d345b7a65a8f3255: /data/bugra/digital_trials/main_conplex.nf + Script_ec01f2a38db15aa5: /data/bugra/digital_trials/main_tissue.nf +Feb-27 17:41:48.282 [main] DEBUG nextflow.script.ScriptRunner - > Awaiting termination +Feb-27 17:41:48.282 [main] DEBUG nextflow.Session - Session await +Feb-27 17:41:48.510 [Task submitter] DEBUG n.executor.local.LocalTaskHandler - Launch cmd line: /bin/bash -ue .command.run +Feb-27 17:41:48.514 [Task submitter] INFO nextflow.Session - [9c/1a79a1] Submitted process > HUMAN_TRANSFORMER (1) +Feb-27 17:41:56.073 [Task monitor] DEBUG n.processor.TaskPollingMonitor - Task completed > TaskHandler[id: 1; name: HUMAN_TRANSFORMER (1); status: COMPLETED; exit: 0; error: -; workDir: /data/bugra/digital_trials/work/9c/1a79a1afef130a28212413d1c010fd] +Feb-27 17:41:56.075 [Task monitor] DEBUG nextflow.util.ThreadPoolBuilder - Creating thread pool 'TaskFinalizer' minSize=10; maxSize=240; workQueue=LinkedBlockingQueue[-1]; allowCoreThreadTimeout=false +Feb-27 17:41:56.102 [TaskFinalizer-1] DEBUG nextflow.util.ThreadPoolBuilder - Creating thread pool 'PublishDir' minSize=10; maxSize=240; workQueue=LinkedBlockingQueue[-1]; allowCoreThreadTimeout=false +Feb-27 17:41:56.117 [Task submitter] DEBUG n.executor.local.LocalTaskHandler - Launch cmd line: /bin/bash -ue .command.run +Feb-27 17:41:56.118 [Task submitter] INFO nextflow.Session - [3b/c06172] Submitted process > GET_FINAL_METABOLITES_STATIC (1) +Feb-27 17:42:01.333 [Task monitor] DEBUG n.processor.TaskPollingMonitor - Task completed > TaskHandler[id: 2; name: GET_FINAL_METABOLITES_STATIC (1); status: COMPLETED; exit: 0; error: -; workDir: /data/bugra/digital_trials/work/3b/c061720cd41597e8b90414cc4a66b0] +Feb-27 17:42:01.387 [Task submitter] DEBUG n.executor.local.LocalTaskHandler - Launch cmd line: /bin/bash -ue .command.run +Feb-27 17:42:01.388 [Task submitter] INFO nextflow.Session - [18/8af203] Submitted process > CONPLEX_ALL (1) +Feb-27 17:42:14.026 [SIGINT handler] DEBUG nextflow.Session - Session aborted -- Cause: SIGINT +Feb-27 17:42:14.046 [SIGINT handler] DEBUG nextflow.Session - The following nodes are still active: +[process] NETWORK_ENRICHMENT + status=ACTIVE + port 0: (queue) OPEN ; channel: interactions + port 1: (cntrl) - ; channel: $ + +[process] TISSUE_DISTRIBUTION + status=ACTIVE + port 0: (queue) OPEN ; channel: interaction + port 1: (cntrl) - ; channel: $ + +[process] BIO_METRICS + status=ACTIVE + port 0: (queue) OPEN ; channel: - + port 1: (cntrl) - ; channel: $ + +Feb-27 17:42:14.050 [main] DEBUG nextflow.Session - Session await > all processes finished +Feb-27 17:42:14.051 [main] DEBUG nextflow.Session - Session await > all barriers passed +Feb-27 17:42:14.051 [Task monitor] DEBUG n.processor.TaskPollingMonitor - <<< barrier arrives (monitor: local) - terminating tasks monitor poll loop +Feb-27 17:42:14.062 [main] WARN n.processor.TaskPollingMonitor - Killing running tasks (1) +Feb-27 17:42:14.084 [main] DEBUG n.trace.WorkflowStatsObserver - Workflow completed > WorkflowStats[succeededCount=2; failedCount=0; ignoredCount=0; cachedCount=0; pendingCount=0; submittedCount=0; runningCount=0; retriesCount=0; abortedCount=1; succeedDuration=12.6s; failedDuration=0ms; cachedDuration=0ms;loadCpus=0; loadMemory=0; peakRunning=1; peakCpus=1; peakMemory=5 GB; ] +Feb-27 17:42:14.099 [main] DEBUG nextflow.cache.CacheDB - Closing CacheDB done +Feb-27 17:42:14.172 [main] INFO org.pf4j.AbstractPluginManager - Stop plugin 'nf-tower@1.11.3' +Feb-27 17:42:14.173 [main] DEBUG nextflow.plugin.BasePlugin - Plugin stopped nf-tower +Feb-27 17:42:14.175 [main] DEBUG nextflow.script.ScriptRunner - > Execution complete -- Goodbye diff --git a/.nextflow.log.6 b/.nextflow.log.6 new file mode 100644 index 0000000..3a9475a --- /dev/null +++ b/.nextflow.log.6 @@ -0,0 +1,203 @@ +Feb-21 08:26:11.901 [main] DEBUG nextflow.cli.Launcher - $> nextflow run test.nf -params-file /data/dreamdock-data/gpr55-caline/digtrial/gpr55-2.json +Feb-21 08:26:12.274 [main] DEBUG nextflow.cli.CmdRun - N E X T F L O W ~ version 25.04.3 +Feb-21 08:26:12.306 [main] DEBUG nextflow.plugin.PluginsFacade - Setting up plugin manager > mode=prod; embedded=false; plugins-dir=/home/omic/.nextflow/plugins; core-plugins: nf-amazon@2.15.0,nf-azure@1.16.0,nf-cloudcache@0.4.3,nf-codecommit@0.2.3,nf-console@1.2.1,nf-google@1.21.0,nf-k8s@1.0.0,nf-tower@1.11.3,nf-wave@1.12.1 +Feb-21 08:26:12.344 [main] INFO o.pf4j.DefaultPluginStatusProvider - Enabled plugins: [] +Feb-21 08:26:12.345 [main] INFO o.pf4j.DefaultPluginStatusProvider - Disabled plugins: [] +Feb-21 08:26:12.349 [main] INFO org.pf4j.DefaultPluginManager - PF4J version 3.12.0 in 'deployment' mode +Feb-21 08:26:12.363 [main] INFO org.pf4j.AbstractPluginManager - No plugins +Feb-21 08:26:12.391 [main] DEBUG nextflow.config.ConfigBuilder - Found config local: /data/bugra/digital_trials/nextflow.config +Feb-21 08:26:12.394 [main] DEBUG nextflow.config.ConfigBuilder - Parsing config file: /data/bugra/digital_trials/nextflow.config +Feb-21 08:26:12.433 [main] DEBUG n.secret.LocalSecretsProvider - Secrets store: /home/omic/.nextflow/secrets/store.json +Feb-21 08:26:12.439 [main] DEBUG nextflow.secret.SecretsLoader - Discovered secrets providers: [nextflow.secret.LocalSecretsProvider@6ef81f31] - activable => nextflow.secret.LocalSecretsProvider@6ef81f31 +Feb-21 08:26:12.470 [main] DEBUG nextflow.config.ConfigBuilder - Applying config profile: `standard` +Feb-21 08:26:13.224 [main] DEBUG nextflow.cli.CmdRun - Applied DSL=2 from script declaration +Feb-21 08:26:13.248 [main] DEBUG nextflow.cli.CmdRun - Launching `test.nf` [happy_einstein] DSL2 - revision: 5cb3581ad6 +Feb-21 08:26:13.250 [main] DEBUG nextflow.plugin.PluginsFacade - Plugins default=[] +Feb-21 08:26:13.252 [main] DEBUG nextflow.plugin.PluginsFacade - Plugins resolved requirement=[nf-tower@1.11.3] +Feb-21 08:26:13.254 [main] DEBUG nextflow.plugin.PluginUpdater - Installing plugin nf-tower version: 1.11.3 +Feb-21 08:26:13.266 [main] INFO org.pf4j.AbstractPluginManager - Plugin 'nf-tower@1.11.3' resolved +Feb-21 08:26:13.266 [main] INFO org.pf4j.AbstractPluginManager - Start plugin 'nf-tower@1.11.3' +Feb-21 08:26:13.282 [main] DEBUG nextflow.plugin.BasePlugin - Plugin started nf-tower@1.11.3 +Feb-21 08:26:13.348 [main] DEBUG nextflow.Session - Session UUID: aaa33539-42d2-4a58-bb4f-dbf3ef8277f7 +Feb-21 08:26:13.349 [main] DEBUG nextflow.Session - Run name: happy_einstein +Feb-21 08:26:13.350 [main] DEBUG nextflow.Session - Executor pool size: 80 +Feb-21 08:26:13.360 [main] DEBUG nextflow.file.FilePorter - File porter settings maxRetries=3; maxTransfers=50; pollTimeout=null +Feb-21 08:26:13.368 [main] DEBUG nextflow.util.ThreadPoolBuilder - Creating thread pool 'FileTransfer' minSize=10; maxSize=240; workQueue=LinkedBlockingQueue[-1]; allowCoreThreadTimeout=false +Feb-21 08:26:13.399 [main] DEBUG nextflow.cli.CmdRun - + Version: 25.04.3 build 5949 + Created: 02-06-2025 20:56 UTC + System: Linux 6.11.0-26-generic + Runtime: Groovy 4.0.26 on OpenJDK 64-Bit Server VM 21.0.7+6-Ubuntu-0ubuntu124.04 + Encoding: UTF-8 (UTF-8) + Process: 2226167@k8s-node23 [127.0.1.1] + CPUs: 80 - Mem: 251.6 GB (54.1 GB) - Swap: 0 (0) +Feb-21 08:26:13.429 [main] DEBUG nextflow.Session - Work-dir: /data/bugra/digital_trials/work [btrfs] +Feb-21 08:26:13.430 [main] DEBUG nextflow.Session - Script base path does not exist or is not a directory: /data/bugra/digital_trials/bin +Feb-21 08:26:13.445 [main] DEBUG nextflow.executor.ExecutorFactory - Extension executors providers=[] +Feb-21 08:26:13.462 [main] DEBUG nextflow.Session - Observer factory: DefaultObserverFactory +Feb-21 08:26:13.467 [main] DEBUG nextflow.Session - Observer factory: TowerFactory +Feb-21 08:26:13.470 [main] DEBUG nextflow.Session - Observer factory (v2): LinObserverFactory +Feb-21 08:26:13.502 [main] DEBUG nextflow.cache.CacheFactory - Using Nextflow cache factory: nextflow.cache.DefaultCacheFactory +Feb-21 08:26:13.514 [main] DEBUG nextflow.util.CustomThreadPool - Creating default thread pool > poolSize: 81; maxThreads: 1000 +Feb-21 08:26:13.743 [main] DEBUG nextflow.Session - Session start +Feb-21 08:26:14.238 [main] DEBUG nextflow.script.ScriptRunner - > Launching execution +Feb-21 08:26:15.158 [main] DEBUG nextflow.executor.ExecutorFactory - << taskConfig executor: null +Feb-21 08:26:15.158 [main] DEBUG nextflow.executor.ExecutorFactory - >> processorType: 'local' +Feb-21 08:26:15.167 [main] DEBUG nextflow.executor.Executor - [warm up] executor > local +Feb-21 08:26:15.179 [main] DEBUG n.processor.LocalPollingMonitor - Creating local task monitor for executor 'local' > cpus=80; memory=251.6 GB; capacity=80; pollInterval=100ms; dumpInterval=5m +Feb-21 08:26:15.182 [main] DEBUG n.processor.TaskPollingMonitor - >>> barrier register (monitor: local) +Feb-21 08:26:15.220 [main] DEBUG nextflow.processor.TaskProcessor - Creating process 'HUMAN_TRANSFORMER': maxForks=0; fair=false; array=0 +Feb-21 08:26:15.319 [main] DEBUG nextflow.executor.ExecutorFactory - << taskConfig executor: null +Feb-21 08:26:15.319 [main] DEBUG nextflow.executor.ExecutorFactory - >> processorType: 'local' +Feb-21 08:26:15.321 [main] DEBUG nextflow.processor.TaskProcessor - Creating process 'GET_FINAL_METABOLITES_STATIC': maxForks=0; fair=false; array=0 +Feb-21 08:26:15.338 [main] DEBUG nextflow.script.ProcessConfig - Config settings `withLabel:gpu_process` matches labels `gpu_process` for process with name PREPROCESS_PROTEIN +Feb-21 08:26:15.344 [main] DEBUG nextflow.executor.ExecutorFactory - << taskConfig executor: null +Feb-21 08:26:15.344 [main] DEBUG nextflow.executor.ExecutorFactory - >> processorType: 'local' +Feb-21 08:26:15.346 [main] DEBUG nextflow.processor.TaskProcessor - Creating process 'PREPROCESS_PROTEIN': maxForks=0; fair=false; array=0 +Feb-21 08:26:15.417 [main] DEBUG nextflow.executor.ExecutorFactory - << taskConfig executor: null +Feb-21 08:26:15.417 [main] DEBUG nextflow.executor.ExecutorFactory - >> processorType: 'local' +Feb-21 08:26:15.419 [main] DEBUG nextflow.processor.TaskProcessor - Creating process 'CONPLEX_ALL': maxForks=0; fair=false; array=0 +Feb-21 08:26:15.452 [main] DEBUG nextflow.executor.ExecutorFactory - << taskConfig executor: null +Feb-21 08:26:15.453 [main] DEBUG nextflow.executor.ExecutorFactory - >> processorType: 'local' +Feb-21 08:26:15.454 [main] DEBUG nextflow.processor.TaskProcessor - Creating process 'NETWORK_ENRICHMENT': maxForks=0; fair=false; array=0 +Feb-21 08:26:15.462 [main] DEBUG nextflow.executor.ExecutorFactory - << taskConfig executor: null +Feb-21 08:26:15.463 [main] DEBUG nextflow.executor.ExecutorFactory - >> processorType: 'local' +Feb-21 08:26:15.464 [main] DEBUG nextflow.processor.TaskProcessor - Creating process 'TISSUE_DISTRIBUTION': maxForks=0; fair=false; array=0 +Feb-21 08:26:15.478 [main] DEBUG nextflow.executor.ExecutorFactory - << taskConfig executor: null +Feb-21 08:26:15.478 [main] DEBUG nextflow.executor.ExecutorFactory - >> processorType: 'local' +Feb-21 08:26:15.479 [main] DEBUG nextflow.processor.TaskProcessor - Creating process 'BIO_METRICS': maxForks=0; fair=false; array=0 +Feb-21 08:26:15.483 [main] DEBUG nextflow.Session - Workflow process names [dsl2]: HUMAN_TRANSFORMER, METABOLITES_BY_MASS, GET_FINAL_METABOLITES_STATIC, CONPLEX_ALL, NETWORK_ENRICHMENT, GET_FINAL_METABOLITES, CONPLEX, BIO_METRICS, SUPER_TRANSFORMER, TISSUE_DISTRIBUTION, MERGE_DRUG, MERGE_INTERACTIONS, ORDERED_SEQUENCE, PREPROCESS_PROTEIN +Feb-21 08:26:15.486 [main] DEBUG nextflow.Session - Igniting dataflow network (11) +Feb-21 08:26:15.493 [main] DEBUG nextflow.processor.TaskProcessor - Starting process > HUMAN_TRANSFORMER +Feb-21 08:26:15.494 [main] DEBUG nextflow.processor.TaskProcessor - Starting process > GET_FINAL_METABOLITES_STATIC +Feb-21 08:26:15.496 [main] DEBUG nextflow.processor.TaskProcessor - Starting process > PREPROCESS_PROTEIN +Feb-21 08:26:15.496 [PathVisitor-1] DEBUG nextflow.file.PathVisitor - files for syntax: glob; folder: /data/dreamdock-data/gpr55-caline/digtrial/input/ligands-2/; pattern: *.csv; options: [:] +Feb-21 08:26:15.496 [PathVisitor-3] DEBUG nextflow.file.PathVisitor - files for syntax: glob; folder: /mnt/dreamdock-data/digital_trials/input/blank/; pattern: *.fasta; options: [:] +Feb-21 08:26:15.497 [main] DEBUG nextflow.processor.TaskProcessor - Starting process > CONPLEX_ALL +Feb-21 08:26:15.498 [main] DEBUG nextflow.processor.TaskProcessor - Starting process > NETWORK_ENRICHMENT +Feb-21 08:26:15.499 [main] DEBUG nextflow.processor.TaskProcessor - Starting process > TISSUE_DISTRIBUTION +Feb-21 08:26:15.499 [main] DEBUG nextflow.processor.TaskProcessor - Starting process > BIO_METRICS +Feb-21 08:26:15.500 [main] DEBUG nextflow.script.ScriptRunner - Parsed script files: + Script_c432c676a3e7c0cb: /data/bugra/digital_trials/test.nf + Script_e39e54e7aa543fd0: /data/bugra/digital_trials/main_biotransformer.nf + Script_d345b7a65a8f3255: /data/bugra/digital_trials/main_conplex.nf + Script_ec01f2a38db15aa5: /data/bugra/digital_trials/main_tissue.nf +Feb-21 08:26:15.501 [main] DEBUG nextflow.script.ScriptRunner - > Awaiting termination +Feb-21 08:26:15.501 [main] DEBUG nextflow.Session - Session await +Feb-21 08:26:15.782 [Task submitter] DEBUG n.executor.local.LocalTaskHandler - Launch cmd line: /bin/bash -ue .command.run +Feb-21 08:26:15.786 [Task submitter] INFO nextflow.Session - [ca/885a1e] Submitted process > HUMAN_TRANSFORMER (2) +Feb-21 08:26:15.805 [Task submitter] DEBUG n.executor.local.LocalTaskHandler - Launch cmd line: /bin/bash -ue .command.run +Feb-21 08:26:15.806 [Task submitter] INFO nextflow.Session - [2d/bb32e3] Submitted process > HUMAN_TRANSFORMER (1) +Feb-21 08:26:15.817 [Task submitter] DEBUG n.executor.local.LocalTaskHandler - Launch cmd line: /bin/bash -ue .command.run +Feb-21 08:26:15.817 [Task submitter] INFO nextflow.Session - [0f/b91ea0] Submitted process > HUMAN_TRANSFORMER (3) +Feb-21 08:31:15.388 [Task monitor] DEBUG n.processor.TaskPollingMonitor - !! executor local > tasks to be completed: 3 -- submitted tasks are shown below +~> TaskHandler[id: 2; name: HUMAN_TRANSFORMER (2); status: RUNNING; exit: -; error: -; workDir: /data/bugra/digital_trials/work/ca/885a1e737e907d9d68c641155b12a7] +~> TaskHandler[id: 1; name: HUMAN_TRANSFORMER (1); status: RUNNING; exit: -; error: -; workDir: /data/bugra/digital_trials/work/2d/bb32e3b5f28c9eec85c5bb37846523] +~> TaskHandler[id: 3; name: HUMAN_TRANSFORMER (3); status: RUNNING; exit: -; error: -; workDir: /data/bugra/digital_trials/work/0f/b91ea06be4270d20b24cf9066994d1] +Feb-21 08:36:15.480 [Task monitor] DEBUG n.processor.TaskPollingMonitor - !! executor local > tasks to be completed: 3 -- submitted tasks are shown below +~> TaskHandler[id: 2; name: HUMAN_TRANSFORMER (2); status: RUNNING; exit: -; error: -; workDir: /data/bugra/digital_trials/work/ca/885a1e737e907d9d68c641155b12a7] +~> TaskHandler[id: 1; name: HUMAN_TRANSFORMER (1); status: RUNNING; exit: -; error: -; workDir: /data/bugra/digital_trials/work/2d/bb32e3b5f28c9eec85c5bb37846523] +~> TaskHandler[id: 3; name: HUMAN_TRANSFORMER (3); status: RUNNING; exit: -; error: -; workDir: /data/bugra/digital_trials/work/0f/b91ea06be4270d20b24cf9066994d1] +Feb-21 08:41:15.530 [Task monitor] DEBUG n.processor.TaskPollingMonitor - !! executor local > tasks to be completed: 3 -- submitted tasks are shown below +~> TaskHandler[id: 2; name: HUMAN_TRANSFORMER (2); status: RUNNING; exit: -; error: -; workDir: /data/bugra/digital_trials/work/ca/885a1e737e907d9d68c641155b12a7] +~> TaskHandler[id: 1; name: HUMAN_TRANSFORMER (1); status: RUNNING; exit: -; error: -; workDir: /data/bugra/digital_trials/work/2d/bb32e3b5f28c9eec85c5bb37846523] +~> TaskHandler[id: 3; name: HUMAN_TRANSFORMER (3); status: RUNNING; exit: -; error: -; workDir: /data/bugra/digital_trials/work/0f/b91ea06be4270d20b24cf9066994d1] +Feb-21 08:43:29.942 [Task monitor] DEBUG n.processor.TaskPollingMonitor - Task completed > TaskHandler[id: 1; name: HUMAN_TRANSFORMER (1); status: COMPLETED; exit: 0; error: -; workDir: /data/bugra/digital_trials/work/2d/bb32e3b5f28c9eec85c5bb37846523] +Feb-21 08:43:29.945 [Task monitor] DEBUG nextflow.util.ThreadPoolBuilder - Creating thread pool 'TaskFinalizer' minSize=10; maxSize=240; workQueue=LinkedBlockingQueue[-1]; allowCoreThreadTimeout=false +Feb-21 08:43:29.985 [TaskFinalizer-1] DEBUG nextflow.util.ThreadPoolBuilder - Creating thread pool 'PublishDir' minSize=10; maxSize=240; workQueue=LinkedBlockingQueue[-1]; allowCoreThreadTimeout=false +Feb-21 08:43:30.002 [Task submitter] DEBUG n.executor.local.LocalTaskHandler - Launch cmd line: /bin/bash -ue .command.run +Feb-21 08:43:30.003 [Task submitter] INFO nextflow.Session - [6a/f2fe26] Submitted process > GET_FINAL_METABOLITES_STATIC (1) +Feb-21 08:44:16.016 [Task monitor] DEBUG n.processor.TaskPollingMonitor - Task completed > TaskHandler[id: 4; name: GET_FINAL_METABOLITES_STATIC (1); status: COMPLETED; exit: 0; error: -; workDir: /data/bugra/digital_trials/work/6a/f2fe266d28b090525b076c6971a9ac] +Feb-21 08:44:16.071 [Task submitter] DEBUG n.executor.local.LocalTaskHandler - Launch cmd line: /bin/bash -ue .command.run +Feb-21 08:44:16.072 [Task submitter] INFO nextflow.Session - [b4/24dd60] Submitted process > CONPLEX_ALL (1) +Feb-21 08:45:20.806 [Task monitor] DEBUG n.processor.TaskPollingMonitor - Task completed > TaskHandler[id: 5; name: CONPLEX_ALL (1); status: COMPLETED; exit: 0; error: -; workDir: /data/bugra/digital_trials/work/b4/24dd60196c0971a4af54b5ad1565b0] +Feb-21 08:45:20.838 [Task submitter] DEBUG n.executor.local.LocalTaskHandler - Launch cmd line: /bin/bash -ue .command.run +Feb-21 08:45:20.838 [Task submitter] INFO nextflow.Session - [41/675f1d] Submitted process > TISSUE_DISTRIBUTION (1) +Feb-21 08:45:20.846 [Task submitter] DEBUG n.executor.local.LocalTaskHandler - Launch cmd line: /bin/bash -ue .command.run +Feb-21 08:45:20.847 [Task submitter] INFO nextflow.Session - [f4/4b8797] Submitted process > BIO_METRICS (1) +Feb-21 08:45:20.854 [Task submitter] DEBUG n.executor.local.LocalTaskHandler - Launch cmd line: /bin/bash -ue .command.run +Feb-21 08:45:20.854 [Task submitter] INFO nextflow.Session - [20/a798aa] Submitted process > NETWORK_ENRICHMENT (1) +Feb-21 08:45:30.689 [Task monitor] DEBUG n.processor.TaskPollingMonitor - Task completed > TaskHandler[id: 8; name: NETWORK_ENRICHMENT (1); status: COMPLETED; exit: 0; error: -; workDir: /data/bugra/digital_trials/work/20/a798aac4125b2c858745f2db23b064] +Feb-21 08:46:15.561 [Task monitor] DEBUG n.processor.TaskPollingMonitor - !! executor local > tasks to be completed: 4 -- submitted tasks are shown below +~> TaskHandler[id: 2; name: HUMAN_TRANSFORMER (2); status: RUNNING; exit: -; error: -; workDir: /data/bugra/digital_trials/work/ca/885a1e737e907d9d68c641155b12a7] +~> TaskHandler[id: 3; name: HUMAN_TRANSFORMER (3); status: RUNNING; exit: -; error: -; workDir: /data/bugra/digital_trials/work/0f/b91ea06be4270d20b24cf9066994d1] +~> TaskHandler[id: 7; name: TISSUE_DISTRIBUTION (1); status: RUNNING; exit: -; error: -; workDir: /data/bugra/digital_trials/work/41/675f1daadc6833d1ba6e5b5b97f981] +~> TaskHandler[id: 6; name: BIO_METRICS (1); status: RUNNING; exit: -; error: -; workDir: /data/bugra/digital_trials/work/f4/4b8797cf0b654d2d69742b17114257] +Feb-21 08:46:26.149 [Task monitor] DEBUG n.processor.TaskPollingMonitor - Task completed > TaskHandler[id: 6; name: BIO_METRICS (1); status: COMPLETED; exit: 0; error: -; workDir: /data/bugra/digital_trials/work/f4/4b8797cf0b654d2d69742b17114257] +Feb-21 08:46:43.111 [Task monitor] DEBUG n.processor.TaskPollingMonitor - Task completed > TaskHandler[id: 7; name: TISSUE_DISTRIBUTION (1); status: COMPLETED; exit: 0; error: -; workDir: /data/bugra/digital_trials/work/41/675f1daadc6833d1ba6e5b5b97f981] +Feb-21 08:51:15.624 [Task monitor] DEBUG n.processor.TaskPollingMonitor - !! executor local > tasks to be completed: 2 -- submitted tasks are shown below +~> TaskHandler[id: 2; name: HUMAN_TRANSFORMER (2); status: RUNNING; exit: -; error: -; workDir: /data/bugra/digital_trials/work/ca/885a1e737e907d9d68c641155b12a7] +~> TaskHandler[id: 3; name: HUMAN_TRANSFORMER (3); status: RUNNING; exit: -; error: -; workDir: /data/bugra/digital_trials/work/0f/b91ea06be4270d20b24cf9066994d1] +Feb-21 08:56:15.658 [Task monitor] DEBUG n.processor.TaskPollingMonitor - !! executor local > tasks to be completed: 2 -- submitted tasks are shown below +~> TaskHandler[id: 2; name: HUMAN_TRANSFORMER (2); status: RUNNING; exit: -; error: -; workDir: /data/bugra/digital_trials/work/ca/885a1e737e907d9d68c641155b12a7] +~> TaskHandler[id: 3; name: HUMAN_TRANSFORMER (3); status: RUNNING; exit: -; error: -; workDir: /data/bugra/digital_trials/work/0f/b91ea06be4270d20b24cf9066994d1] +Feb-21 09:01:15.658 [Task monitor] DEBUG n.processor.TaskPollingMonitor - !! executor local > tasks to be completed: 2 -- submitted tasks are shown below +~> TaskHandler[id: 2; name: HUMAN_TRANSFORMER (2); status: RUNNING; exit: -; error: -; workDir: /data/bugra/digital_trials/work/ca/885a1e737e907d9d68c641155b12a7] +~> TaskHandler[id: 3; name: HUMAN_TRANSFORMER (3); status: RUNNING; exit: -; error: -; workDir: /data/bugra/digital_trials/work/0f/b91ea06be4270d20b24cf9066994d1] +Feb-21 09:04:21.812 [Task monitor] DEBUG n.processor.TaskPollingMonitor - Task completed > TaskHandler[id: 2; name: HUMAN_TRANSFORMER (2); status: COMPLETED; exit: 0; error: -; workDir: /data/bugra/digital_trials/work/ca/885a1e737e907d9d68c641155b12a7] +Feb-21 09:04:21.842 [Task submitter] DEBUG n.executor.local.LocalTaskHandler - Launch cmd line: /bin/bash -ue .command.run +Feb-21 09:04:21.844 [Task submitter] INFO nextflow.Session - [bc/640502] Submitted process > GET_FINAL_METABOLITES_STATIC (2) +Feb-21 09:06:15.670 [Task monitor] DEBUG n.processor.TaskPollingMonitor - !! executor local > tasks to be completed: 2 -- submitted tasks are shown below +~> TaskHandler[id: 3; name: HUMAN_TRANSFORMER (3); status: RUNNING; exit: -; error: -; workDir: /data/bugra/digital_trials/work/0f/b91ea06be4270d20b24cf9066994d1] +~> TaskHandler[id: 9; name: GET_FINAL_METABOLITES_STATIC (2); status: RUNNING; exit: -; error: -; workDir: /data/bugra/digital_trials/work/bc/640502221e58476eee68f371fe82bb] +Feb-21 09:06:26.151 [Task monitor] DEBUG n.processor.TaskPollingMonitor - Task completed > TaskHandler[id: 9; name: GET_FINAL_METABOLITES_STATIC (2); status: COMPLETED; exit: 0; error: -; workDir: /data/bugra/digital_trials/work/bc/640502221e58476eee68f371fe82bb] +Feb-21 09:06:26.183 [Task submitter] DEBUG n.executor.local.LocalTaskHandler - Launch cmd line: /bin/bash -ue .command.run +Feb-21 09:06:26.184 [Task submitter] INFO nextflow.Session - [fc/c19a15] Submitted process > CONPLEX_ALL (2) +Feb-21 09:07:46.502 [Task monitor] DEBUG n.processor.TaskPollingMonitor - Task completed > TaskHandler[id: 10; name: CONPLEX_ALL (2); status: COMPLETED; exit: 0; error: -; workDir: /data/bugra/digital_trials/work/fc/c19a15943208e08e3abb897eb631c0] +Feb-21 09:07:46.745 [Task submitter] DEBUG n.executor.local.LocalTaskHandler - Launch cmd line: /bin/bash -ue .command.run +Feb-21 09:07:46.746 [Task submitter] INFO nextflow.Session - [1a/a9da00] Submitted process > BIO_METRICS (2) +Feb-21 09:07:46.758 [Task submitter] DEBUG n.executor.local.LocalTaskHandler - Launch cmd line: /bin/bash -ue .command.run +Feb-21 09:07:46.759 [Task submitter] INFO nextflow.Session - [88/9bf0d8] Submitted process > NETWORK_ENRICHMENT (2) +Feb-21 09:07:46.771 [Task submitter] DEBUG n.executor.local.LocalTaskHandler - Launch cmd line: /bin/bash -ue .command.run +Feb-21 09:07:46.772 [Task submitter] INFO nextflow.Session - [8f/a0549f] Submitted process > TISSUE_DISTRIBUTION (2) +Feb-21 09:07:54.952 [Task monitor] DEBUG n.processor.TaskPollingMonitor - Task completed > TaskHandler[id: 12; name: NETWORK_ENRICHMENT (2); status: COMPLETED; exit: 0; error: -; workDir: /data/bugra/digital_trials/work/88/9bf0d88d7aeba1db6fb5b607608d47] +Feb-21 09:08:30.010 [Task monitor] DEBUG n.processor.TaskPollingMonitor - Task completed > TaskHandler[id: 11; name: BIO_METRICS (2); status: COMPLETED; exit: 0; error: -; workDir: /data/bugra/digital_trials/work/1a/a9da0011763bb8b8bedaa177c7ad4d] +Feb-21 09:09:17.348 [Task monitor] DEBUG n.processor.TaskPollingMonitor - Task completed > TaskHandler[id: 13; name: TISSUE_DISTRIBUTION (2); status: COMPLETED; exit: 0; error: -; workDir: /data/bugra/digital_trials/work/8f/a0549f011b0670ee0efe79c24eed12] +Feb-21 09:11:15.719 [Task monitor] DEBUG n.processor.TaskPollingMonitor - !! executor local > tasks to be completed: 1 -- submitted tasks are shown below +~> TaskHandler[id: 3; name: HUMAN_TRANSFORMER (3); status: RUNNING; exit: -; error: -; workDir: /data/bugra/digital_trials/work/0f/b91ea06be4270d20b24cf9066994d1] +Feb-21 09:16:15.741 [Task monitor] DEBUG n.processor.TaskPollingMonitor - !! executor local > tasks to be completed: 1 -- submitted tasks are shown below +~> TaskHandler[id: 3; name: HUMAN_TRANSFORMER (3); status: RUNNING; exit: -; error: -; workDir: /data/bugra/digital_trials/work/0f/b91ea06be4270d20b24cf9066994d1] +Feb-21 09:21:15.743 [Task monitor] DEBUG n.processor.TaskPollingMonitor - !! executor local > tasks to be completed: 1 -- submitted tasks are shown below +~> TaskHandler[id: 3; name: HUMAN_TRANSFORMER (3); status: RUNNING; exit: -; error: -; workDir: /data/bugra/digital_trials/work/0f/b91ea06be4270d20b24cf9066994d1] +Feb-21 09:26:15.759 [Task monitor] DEBUG n.processor.TaskPollingMonitor - !! executor local > tasks to be completed: 1 -- submitted tasks are shown below +~> TaskHandler[id: 3; name: HUMAN_TRANSFORMER (3); status: RUNNING; exit: -; error: -; workDir: /data/bugra/digital_trials/work/0f/b91ea06be4270d20b24cf9066994d1] +Feb-21 09:31:15.772 [Task monitor] DEBUG n.processor.TaskPollingMonitor - !! executor local > tasks to be completed: 1 -- submitted tasks are shown below +~> TaskHandler[id: 3; name: HUMAN_TRANSFORMER (3); status: RUNNING; exit: -; error: -; workDir: /data/bugra/digital_trials/work/0f/b91ea06be4270d20b24cf9066994d1] +Feb-21 09:33:12.492 [Task monitor] DEBUG n.processor.TaskPollingMonitor - Task completed > TaskHandler[id: 3; name: HUMAN_TRANSFORMER (3); status: COMPLETED; exit: 0; error: -; workDir: /data/bugra/digital_trials/work/0f/b91ea06be4270d20b24cf9066994d1] +Feb-21 09:33:12.519 [Task submitter] DEBUG n.executor.local.LocalTaskHandler - Launch cmd line: /bin/bash -ue .command.run +Feb-21 09:33:12.521 [Task submitter] INFO nextflow.Session - [5a/66192c] Submitted process > GET_FINAL_METABOLITES_STATIC (3) +Feb-21 09:36:15.836 [Task monitor] DEBUG n.processor.TaskPollingMonitor - !! executor local > tasks to be completed: 1 -- submitted tasks are shown below +~> TaskHandler[id: 14; name: GET_FINAL_METABOLITES_STATIC (3); status: RUNNING; exit: -; error: -; workDir: /data/bugra/digital_trials/work/5a/66192c1bce02251dae996035f42b6c] +Feb-21 09:36:49.412 [Task monitor] DEBUG n.processor.TaskPollingMonitor - Task completed > TaskHandler[id: 14; name: GET_FINAL_METABOLITES_STATIC (3); status: COMPLETED; exit: 0; error: -; workDir: /data/bugra/digital_trials/work/5a/66192c1bce02251dae996035f42b6c] +Feb-21 09:36:49.436 [Task submitter] DEBUG n.executor.local.LocalTaskHandler - Launch cmd line: /bin/bash -ue .command.run +Feb-21 09:36:49.437 [Task submitter] INFO nextflow.Session - [1b/e37700] Submitted process > CONPLEX_ALL (3) +Feb-21 09:37:18.524 [Task monitor] DEBUG n.processor.TaskPollingMonitor - Task completed > TaskHandler[id: 15; name: CONPLEX_ALL (3); status: COMPLETED; exit: 137; error: -; workDir: /data/bugra/digital_trials/work/1b/e377009d05a6c1b5bb554d679c7b6d] +Feb-21 09:37:18.539 [TaskFinalizer-5] DEBUG nextflow.processor.TaskProcessor - Handling unexpected condition for + task: name=CONPLEX_ALL (3); work-dir=/data/bugra/digital_trials/work/1b/e377009d05a6c1b5bb554d679c7b6d + error [nextflow.exception.ProcessFailedException]: Process `CONPLEX_ALL (3)` terminated with an error exit status (137) +Feb-21 09:37:18.555 [TaskFinalizer-5] INFO nextflow.processor.TaskProcessor - [1b/e37700] NOTE: Process `CONPLEX_ALL (3)` terminated with an error exit status (137) -- Execution is retried (1) +Feb-21 09:37:18.569 [Task submitter] DEBUG n.executor.local.LocalTaskHandler - Launch cmd line: /bin/bash -ue .command.run +Feb-21 09:37:18.570 [Task submitter] INFO nextflow.Session - [f9/d09bf9] Re-submitted process > CONPLEX_ALL (3) +Feb-21 09:39:45.775 [Task monitor] DEBUG n.processor.TaskPollingMonitor - Task completed > TaskHandler[id: 16; name: CONPLEX_ALL (3); status: COMPLETED; exit: 0; error: -; workDir: /data/bugra/digital_trials/work/f9/d09bf98e06da2eff5d1cc7e692395e] +Feb-21 09:39:45.801 [Task submitter] DEBUG n.executor.local.LocalTaskHandler - Launch cmd line: /bin/bash -ue .command.run +Feb-21 09:39:45.803 [Task submitter] INFO nextflow.Session - [c5/08ec8c] Submitted process > TISSUE_DISTRIBUTION (3) +Feb-21 09:39:45.812 [Task submitter] DEBUG n.executor.local.LocalTaskHandler - Launch cmd line: /bin/bash -ue .command.run +Feb-21 09:39:45.813 [Task submitter] INFO nextflow.Session - [0a/3a0af0] Submitted process > NETWORK_ENRICHMENT (3) +Feb-21 09:39:45.833 [Task submitter] DEBUG n.executor.local.LocalTaskHandler - Launch cmd line: /bin/bash -ue .command.run +Feb-21 09:39:45.834 [Task submitter] INFO nextflow.Session - [49/7a1605] Submitted process > BIO_METRICS (3) +Feb-21 09:39:58.587 [Task monitor] DEBUG n.processor.TaskPollingMonitor - Task completed > TaskHandler[id: 18; name: NETWORK_ENRICHMENT (3); status: COMPLETED; exit: 0; error: -; workDir: /data/bugra/digital_trials/work/0a/3a0af0240fb975245cb9cab1214683] +Feb-21 09:41:15.781 [Task monitor] DEBUG n.processor.TaskPollingMonitor - Task completed > TaskHandler[id: 17; name: BIO_METRICS (3); status: COMPLETED; exit: 0; error: -; workDir: /data/bugra/digital_trials/work/49/7a16055c1c8edcda53d29edbffefb3] +Feb-21 09:41:15.882 [Task monitor] DEBUG n.processor.TaskPollingMonitor - !! executor local > tasks to be completed: 1 -- submitted tasks are shown below +~> TaskHandler[id: 19; name: TISSUE_DISTRIBUTION (3); status: RUNNING; exit: -; error: -; workDir: /data/bugra/digital_trials/work/c5/08ec8c52e99f1e5f8284b75bd0523d] +Feb-21 09:42:16.950 [Task monitor] DEBUG n.processor.TaskPollingMonitor - Task completed > TaskHandler[id: 19; name: TISSUE_DISTRIBUTION (3); status: COMPLETED; exit: 0; error: -; workDir: /data/bugra/digital_trials/work/c5/08ec8c52e99f1e5f8284b75bd0523d] +Feb-21 09:42:16.957 [main] DEBUG nextflow.Session - Session await > all processes finished +Feb-21 09:42:17.051 [Task monitor] DEBUG n.processor.TaskPollingMonitor - <<< barrier arrives (monitor: local) - terminating tasks monitor poll loop +Feb-21 09:42:17.051 [main] DEBUG nextflow.Session - Session await > all barriers passed +Feb-21 09:42:17.054 [main] DEBUG nextflow.util.ThreadPoolManager - Thread pool 'TaskFinalizer' shutdown completed (hard=false) +Feb-21 09:42:17.104 [main] DEBUG nextflow.util.ThreadPoolManager - Thread pool 'PublishDir' shutdown completed (hard=false) +Feb-21 09:42:17.122 [main] DEBUG n.trace.WorkflowStatsObserver - Workflow completed > WorkflowStats[succeededCount=18; failedCount=1; ignoredCount=0; cachedCount=0; pendingCount=0; submittedCount=0; runningCount=0; retriesCount=1; abortedCount=0; succeedDuration=2h 22m 49s; failedDuration=29s; cachedDuration=0ms;loadCpus=0; loadMemory=0; peakRunning=5; peakCpus=5; peakMemory=21 GB; ] +Feb-21 09:42:17.188 [main] DEBUG nextflow.cache.CacheDB - Closing CacheDB done +Feb-21 09:42:17.292 [main] INFO org.pf4j.AbstractPluginManager - Stop plugin 'nf-tower@1.11.3' +Feb-21 09:42:17.292 [main] DEBUG nextflow.plugin.BasePlugin - Plugin stopped nf-tower +Feb-21 09:42:17.294 [main] DEBUG nextflow.util.ThreadPoolManager - Thread pool 'FileTransfer' shutdown completed (hard=false) +Feb-21 09:42:17.295 [main] DEBUG nextflow.script.ScriptRunner - > Execution complete -- Goodbye diff --git a/.nextflow.log.7 b/.nextflow.log.7 new file mode 100644 index 0000000..920bb4f --- /dev/null +++ b/.nextflow.log.7 @@ -0,0 +1,189 @@ +Feb-20 12:47:41.705 [main] DEBUG nextflow.cli.Launcher - $> nextflow run test.nf -params-file /data/dreamdock-data/gpr55-caline/digtrial/gpr55-2.json +Feb-20 12:47:42.085 [main] DEBUG nextflow.cli.CmdRun - N E X T F L O W ~ version 25.04.3 +Feb-20 12:47:42.117 [main] DEBUG nextflow.plugin.PluginsFacade - Setting up plugin manager > mode=prod; embedded=false; plugins-dir=/home/omic/.nextflow/plugins; core-plugins: nf-amazon@2.15.0,nf-azure@1.16.0,nf-cloudcache@0.4.3,nf-codecommit@0.2.3,nf-console@1.2.1,nf-google@1.21.0,nf-k8s@1.0.0,nf-tower@1.11.3,nf-wave@1.12.1 +Feb-20 12:47:42.156 [main] INFO o.pf4j.DefaultPluginStatusProvider - Enabled plugins: [] +Feb-20 12:47:42.157 [main] INFO o.pf4j.DefaultPluginStatusProvider - Disabled plugins: [] +Feb-20 12:47:42.161 [main] INFO org.pf4j.DefaultPluginManager - PF4J version 3.12.0 in 'deployment' mode +Feb-20 12:47:42.176 [main] INFO org.pf4j.AbstractPluginManager - No plugins +Feb-20 12:47:42.204 [main] DEBUG nextflow.config.ConfigBuilder - Found config local: /data/bugra/digital_trials/nextflow.config +Feb-20 12:47:42.207 [main] DEBUG nextflow.config.ConfigBuilder - Parsing config file: /data/bugra/digital_trials/nextflow.config +Feb-20 12:47:42.249 [main] DEBUG n.secret.LocalSecretsProvider - Secrets store: /home/omic/.nextflow/secrets/store.json +Feb-20 12:47:42.254 [main] DEBUG nextflow.secret.SecretsLoader - Discovered secrets providers: [nextflow.secret.LocalSecretsProvider@6ef81f31] - activable => nextflow.secret.LocalSecretsProvider@6ef81f31 +Feb-20 12:47:42.284 [main] DEBUG nextflow.config.ConfigBuilder - Applying config profile: `standard` +Feb-20 12:47:43.029 [main] DEBUG nextflow.cli.CmdRun - Applied DSL=2 from script declaration +Feb-20 12:47:43.053 [main] DEBUG nextflow.cli.CmdRun - Launching `test.nf` [voluminous_meucci] DSL2 - revision: 5cb3581ad6 +Feb-20 12:47:43.055 [main] DEBUG nextflow.plugin.PluginsFacade - Plugins default=[] +Feb-20 12:47:43.057 [main] DEBUG nextflow.plugin.PluginsFacade - Plugins resolved requirement=[nf-tower@1.11.3] +Feb-20 12:47:43.059 [main] DEBUG nextflow.plugin.PluginUpdater - Installing plugin nf-tower version: 1.11.3 +Feb-20 12:47:43.073 [main] INFO org.pf4j.AbstractPluginManager - Plugin 'nf-tower@1.11.3' resolved +Feb-20 12:47:43.073 [main] INFO org.pf4j.AbstractPluginManager - Start plugin 'nf-tower@1.11.3' +Feb-20 12:47:43.090 [main] DEBUG nextflow.plugin.BasePlugin - Plugin started nf-tower@1.11.3 +Feb-20 12:47:43.163 [main] DEBUG nextflow.Session - Session UUID: a63634f0-49a8-483c-8fd6-7fb017f33c21 +Feb-20 12:47:43.163 [main] DEBUG nextflow.Session - Run name: voluminous_meucci +Feb-20 12:47:43.164 [main] DEBUG nextflow.Session - Executor pool size: 80 +Feb-20 12:47:43.176 [main] DEBUG nextflow.file.FilePorter - File porter settings maxRetries=3; maxTransfers=50; pollTimeout=null +Feb-20 12:47:43.183 [main] DEBUG nextflow.util.ThreadPoolBuilder - Creating thread pool 'FileTransfer' minSize=10; maxSize=240; workQueue=LinkedBlockingQueue[-1]; allowCoreThreadTimeout=false +Feb-20 12:47:43.216 [main] DEBUG nextflow.cli.CmdRun - + Version: 25.04.3 build 5949 + Created: 02-06-2025 20:56 UTC + System: Linux 6.11.0-26-generic + Runtime: Groovy 4.0.26 on OpenJDK 64-Bit Server VM 21.0.7+6-Ubuntu-0ubuntu124.04 + Encoding: UTF-8 (UTF-8) + Process: 854173@k8s-node23 [127.0.1.1] + CPUs: 80 - Mem: 251.6 GB (57.9 GB) - Swap: 0 (0) +Feb-20 12:47:43.251 [main] DEBUG nextflow.Session - Work-dir: /data/bugra/digital_trials/work [btrfs] +Feb-20 12:47:43.252 [main] DEBUG nextflow.Session - Script base path does not exist or is not a directory: /data/bugra/digital_trials/bin +Feb-20 12:47:43.270 [main] DEBUG nextflow.executor.ExecutorFactory - Extension executors providers=[] +Feb-20 12:47:43.287 [main] DEBUG nextflow.Session - Observer factory: DefaultObserverFactory +Feb-20 12:47:43.294 [main] DEBUG nextflow.Session - Observer factory: TowerFactory +Feb-20 12:47:43.296 [main] DEBUG nextflow.Session - Observer factory (v2): LinObserverFactory +Feb-20 12:47:43.328 [main] DEBUG nextflow.cache.CacheFactory - Using Nextflow cache factory: nextflow.cache.DefaultCacheFactory +Feb-20 12:47:43.340 [main] DEBUG nextflow.util.CustomThreadPool - Creating default thread pool > poolSize: 81; maxThreads: 1000 +Feb-20 12:47:43.528 [main] DEBUG nextflow.Session - Session start +Feb-20 12:47:44.002 [main] DEBUG nextflow.script.ScriptRunner - > Launching execution +Feb-20 12:47:44.878 [main] DEBUG nextflow.executor.ExecutorFactory - << taskConfig executor: null +Feb-20 12:47:44.879 [main] DEBUG nextflow.executor.ExecutorFactory - >> processorType: 'local' +Feb-20 12:47:44.887 [main] DEBUG nextflow.executor.Executor - [warm up] executor > local +Feb-20 12:47:44.897 [main] DEBUG n.processor.LocalPollingMonitor - Creating local task monitor for executor 'local' > cpus=80; memory=251.6 GB; capacity=80; pollInterval=100ms; dumpInterval=5m +Feb-20 12:47:44.900 [main] DEBUG n.processor.TaskPollingMonitor - >>> barrier register (monitor: local) +Feb-20 12:47:44.935 [main] DEBUG nextflow.processor.TaskProcessor - Creating process 'HUMAN_TRANSFORMER': maxForks=0; fair=false; array=0 +Feb-20 12:47:45.021 [main] DEBUG nextflow.executor.ExecutorFactory - << taskConfig executor: null +Feb-20 12:47:45.022 [main] DEBUG nextflow.executor.ExecutorFactory - >> processorType: 'local' +Feb-20 12:47:45.024 [main] DEBUG nextflow.processor.TaskProcessor - Creating process 'GET_FINAL_METABOLITES_STATIC': maxForks=0; fair=false; array=0 +Feb-20 12:47:45.036 [main] DEBUG nextflow.script.ProcessConfig - Config settings `withLabel:gpu_process` matches labels `gpu_process` for process with name PREPROCESS_PROTEIN +Feb-20 12:47:45.041 [main] DEBUG nextflow.executor.ExecutorFactory - << taskConfig executor: null +Feb-20 12:47:45.041 [main] DEBUG nextflow.executor.ExecutorFactory - >> processorType: 'local' +Feb-20 12:47:45.043 [main] DEBUG nextflow.processor.TaskProcessor - Creating process 'PREPROCESS_PROTEIN': maxForks=0; fair=false; array=0 +Feb-20 12:47:45.100 [main] DEBUG nextflow.executor.ExecutorFactory - << taskConfig executor: null +Feb-20 12:47:45.101 [main] DEBUG nextflow.executor.ExecutorFactory - >> processorType: 'local' +Feb-20 12:47:45.102 [main] DEBUG nextflow.processor.TaskProcessor - Creating process 'CONPLEX_ALL': maxForks=0; fair=false; array=0 +Feb-20 12:47:45.132 [main] DEBUG nextflow.executor.ExecutorFactory - << taskConfig executor: null +Feb-20 12:47:45.132 [main] DEBUG nextflow.executor.ExecutorFactory - >> processorType: 'local' +Feb-20 12:47:45.133 [main] DEBUG nextflow.processor.TaskProcessor - Creating process 'NETWORK_ENRICHMENT': maxForks=0; fair=false; array=0 +Feb-20 12:47:45.141 [main] DEBUG nextflow.executor.ExecutorFactory - << taskConfig executor: null +Feb-20 12:47:45.141 [main] DEBUG nextflow.executor.ExecutorFactory - >> processorType: 'local' +Feb-20 12:47:45.142 [main] DEBUG nextflow.processor.TaskProcessor - Creating process 'TISSUE_DISTRIBUTION': maxForks=0; fair=false; array=0 +Feb-20 12:47:45.174 [main] DEBUG nextflow.executor.ExecutorFactory - << taskConfig executor: null +Feb-20 12:47:45.174 [main] DEBUG nextflow.executor.ExecutorFactory - >> processorType: 'local' +Feb-20 12:47:45.175 [main] DEBUG nextflow.processor.TaskProcessor - Creating process 'BIO_METRICS': maxForks=0; fair=false; array=0 +Feb-20 12:47:45.179 [main] DEBUG nextflow.Session - Workflow process names [dsl2]: HUMAN_TRANSFORMER, METABOLITES_BY_MASS, GET_FINAL_METABOLITES_STATIC, CONPLEX_ALL, NETWORK_ENRICHMENT, GET_FINAL_METABOLITES, CONPLEX, BIO_METRICS, SUPER_TRANSFORMER, TISSUE_DISTRIBUTION, MERGE_DRUG, MERGE_INTERACTIONS, PREPROCESS_PROTEIN, ORDERED_SEQUENCE +Feb-20 12:47:45.182 [main] DEBUG nextflow.Session - Igniting dataflow network (11) +Feb-20 12:47:45.190 [main] DEBUG nextflow.processor.TaskProcessor - Starting process > HUMAN_TRANSFORMER +Feb-20 12:47:45.191 [main] DEBUG nextflow.processor.TaskProcessor - Starting process > GET_FINAL_METABOLITES_STATIC +Feb-20 12:47:45.192 [main] DEBUG nextflow.processor.TaskProcessor - Starting process > PREPROCESS_PROTEIN +Feb-20 12:47:45.192 [PathVisitor-1] DEBUG nextflow.file.PathVisitor - files for syntax: glob; folder: /data/dreamdock-data/gpr55-caline/digtrial/input/ligands-2/; pattern: *.csv; options: [:] +Feb-20 12:47:45.192 [PathVisitor-3] DEBUG nextflow.file.PathVisitor - files for syntax: glob; folder: /mnt/dreamdock-data/digital_trials/input/blank/; pattern: *.fasta; options: [:] +Feb-20 12:47:45.193 [main] DEBUG nextflow.processor.TaskProcessor - Starting process > CONPLEX_ALL +Feb-20 12:47:45.193 [main] DEBUG nextflow.processor.TaskProcessor - Starting process > NETWORK_ENRICHMENT +Feb-20 12:47:45.194 [main] DEBUG nextflow.processor.TaskProcessor - Starting process > TISSUE_DISTRIBUTION +Feb-20 12:47:45.194 [main] DEBUG nextflow.processor.TaskProcessor - Starting process > BIO_METRICS +Feb-20 12:47:45.195 [main] DEBUG nextflow.script.ScriptRunner - Parsed script files: + Script_c432c676a3e7c0cb: /data/bugra/digital_trials/test.nf + Script_e39e54e7aa543fd0: /data/bugra/digital_trials/main_biotransformer.nf + Script_d345b7a65a8f3255: /data/bugra/digital_trials/main_conplex.nf + Script_ec01f2a38db15aa5: /data/bugra/digital_trials/main_tissue.nf +Feb-20 12:47:45.195 [main] DEBUG nextflow.script.ScriptRunner - > Awaiting termination +Feb-20 12:47:45.195 [main] DEBUG nextflow.Session - Session await +Feb-20 12:47:45.473 [Task submitter] DEBUG n.executor.local.LocalTaskHandler - Launch cmd line: /bin/bash -ue .command.run +Feb-20 12:47:45.477 [Task submitter] INFO nextflow.Session - [97/35ef6b] Submitted process > HUMAN_TRANSFORMER (1) +Feb-20 12:47:45.496 [Task submitter] DEBUG n.executor.local.LocalTaskHandler - Launch cmd line: /bin/bash -ue .command.run +Feb-20 12:47:45.497 [Task submitter] INFO nextflow.Session - [2d/780298] Submitted process > HUMAN_TRANSFORMER (3) +Feb-20 12:47:45.505 [Task submitter] DEBUG n.executor.local.LocalTaskHandler - Launch cmd line: /bin/bash -ue .command.run +Feb-20 12:47:45.506 [Task submitter] INFO nextflow.Session - [61/1051d3] Submitted process > HUMAN_TRANSFORMER (2) +Feb-20 12:47:45.516 [Task submitter] DEBUG n.executor.local.LocalTaskHandler - Launch cmd line: /bin/bash -ue .command.run +Feb-20 12:47:45.517 [Task submitter] INFO nextflow.Session - [70/a09372] Submitted process > HUMAN_TRANSFORMER (4) +Feb-20 12:50:49.469 [Task monitor] DEBUG n.processor.TaskPollingMonitor - Task completed > TaskHandler[id: 3; name: HUMAN_TRANSFORMER (3); status: COMPLETED; exit: 0; error: -; workDir: /data/bugra/digital_trials/work/2d/780298364720d78ead18d8c29fdde5] +Feb-20 12:50:49.471 [Task monitor] DEBUG nextflow.util.ThreadPoolBuilder - Creating thread pool 'TaskFinalizer' minSize=10; maxSize=240; workQueue=LinkedBlockingQueue[-1]; allowCoreThreadTimeout=false +Feb-20 12:50:49.509 [TaskFinalizer-1] DEBUG nextflow.util.ThreadPoolBuilder - Creating thread pool 'PublishDir' minSize=10; maxSize=240; workQueue=LinkedBlockingQueue[-1]; allowCoreThreadTimeout=false +Feb-20 12:50:49.533 [Task submitter] DEBUG n.executor.local.LocalTaskHandler - Launch cmd line: /bin/bash -ue .command.run +Feb-20 12:50:49.534 [Task submitter] INFO nextflow.Session - [00/400028] Submitted process > GET_FINAL_METABOLITES_STATIC (1) +Feb-20 12:51:03.390 [Task monitor] DEBUG n.processor.TaskPollingMonitor - Task completed > TaskHandler[id: 5; name: GET_FINAL_METABOLITES_STATIC (1); status: COMPLETED; exit: 0; error: -; workDir: /data/bugra/digital_trials/work/00/400028dec573753492b97923ca40a4] +Feb-20 12:51:03.450 [Task submitter] DEBUG n.executor.local.LocalTaskHandler - Launch cmd line: /bin/bash -ue .command.run +Feb-20 12:51:03.452 [Task submitter] INFO nextflow.Session - [ab/173fd5] Submitted process > CONPLEX_ALL (1) +Feb-20 12:51:40.012 [Task monitor] DEBUG n.processor.TaskPollingMonitor - Task completed > TaskHandler[id: 4; name: HUMAN_TRANSFORMER (4); status: COMPLETED; exit: 0; error: -; workDir: /data/bugra/digital_trials/work/70/a09372fc0300634e7a2d63c19eca9e] +Feb-20 12:51:40.036 [Task submitter] DEBUG n.executor.local.LocalTaskHandler - Launch cmd line: /bin/bash -ue .command.run +Feb-20 12:51:40.037 [Task submitter] INFO nextflow.Session - [93/602233] Submitted process > GET_FINAL_METABOLITES_STATIC (2) +Feb-20 12:51:57.731 [Task monitor] DEBUG n.processor.TaskPollingMonitor - Task completed > TaskHandler[id: 7; name: GET_FINAL_METABOLITES_STATIC (2); status: COMPLETED; exit: 0; error: -; workDir: /data/bugra/digital_trials/work/93/602233592598ae353bc191fe5eb511] +Feb-20 12:51:57.751 [Task submitter] DEBUG n.executor.local.LocalTaskHandler - Launch cmd line: /bin/bash -ue .command.run +Feb-20 12:51:57.751 [Task submitter] INFO nextflow.Session - [27/09061e] Submitted process > CONPLEX_ALL (2) +Feb-20 12:52:04.582 [Task monitor] DEBUG n.processor.TaskPollingMonitor - Task completed > TaskHandler[id: 6; name: CONPLEX_ALL (1); status: COMPLETED; exit: 0; error: -; workDir: /data/bugra/digital_trials/work/ab/173fd53ee5af1f9a99547c251a3860] +Feb-20 12:52:04.619 [Task submitter] DEBUG n.executor.local.LocalTaskHandler - Launch cmd line: /bin/bash -ue .command.run +Feb-20 12:52:04.620 [Task submitter] INFO nextflow.Session - [97/9f27dd] Submitted process > TISSUE_DISTRIBUTION (1) +Feb-20 12:52:04.631 [Task submitter] DEBUG n.executor.local.LocalTaskHandler - Launch cmd line: /bin/bash -ue .command.run +Feb-20 12:52:04.632 [Task submitter] INFO nextflow.Session - [15/a3f493] Submitted process > BIO_METRICS (1) +Feb-20 12:52:04.641 [Task submitter] DEBUG n.executor.local.LocalTaskHandler - Launch cmd line: /bin/bash -ue .command.run +Feb-20 12:52:04.642 [Task submitter] INFO nextflow.Session - [9b/22fd33] Submitted process > NETWORK_ENRICHMENT (1) +Feb-20 12:52:19.322 [Task monitor] DEBUG n.processor.TaskPollingMonitor - Task completed > TaskHandler[id: 9; name: NETWORK_ENRICHMENT (1); status: COMPLETED; exit: 0; error: -; workDir: /data/bugra/digital_trials/work/9b/22fd33156ac8f5e161b52c59cefc81] +Feb-20 12:52:45.073 [Task monitor] DEBUG n.processor.TaskPollingMonitor - !! executor local > tasks to be completed: 5 -- submitted tasks are shown below +~> TaskHandler[id: 1; name: HUMAN_TRANSFORMER (1); status: RUNNING; exit: -; error: -; workDir: /data/bugra/digital_trials/work/97/35ef6b0fb9a5705089e16cf692f080] +~> TaskHandler[id: 2; name: HUMAN_TRANSFORMER (2); status: RUNNING; exit: -; error: -; workDir: /data/bugra/digital_trials/work/61/1051d32de7028657b1414e31f05229] +~> TaskHandler[id: 8; name: CONPLEX_ALL (2); status: RUNNING; exit: -; error: -; workDir: /data/bugra/digital_trials/work/27/09061ebd4aed37c8d9f75c62e056c9] +~> TaskHandler[id: 11; name: TISSUE_DISTRIBUTION (1); status: RUNNING; exit: -; error: -; workDir: /data/bugra/digital_trials/work/97/9f27dd23c432d4c981bc33a9fdea9d] +~> TaskHandler[id: 10; name: BIO_METRICS (1); status: RUNNING; exit: -; error: -; workDir: /data/bugra/digital_trials/work/15/a3f493c3f2ce41178d29e8ab6347a5] +Feb-20 12:52:47.429 [Task monitor] DEBUG n.processor.TaskPollingMonitor - Task completed > TaskHandler[id: 8; name: CONPLEX_ALL (2); status: COMPLETED; exit: 0; error: -; workDir: /data/bugra/digital_trials/work/27/09061ebd4aed37c8d9f75c62e056c9] +Feb-20 12:52:47.452 [Task submitter] DEBUG n.executor.local.LocalTaskHandler - Launch cmd line: /bin/bash -ue .command.run +Feb-20 12:52:47.453 [Task submitter] INFO nextflow.Session - [0a/f14dfa] Submitted process > NETWORK_ENRICHMENT (2) +Feb-20 12:52:47.463 [Task submitter] DEBUG n.executor.local.LocalTaskHandler - Launch cmd line: /bin/bash -ue .command.run +Feb-20 12:52:47.464 [Task submitter] INFO nextflow.Session - [e7/226b4c] Submitted process > TISSUE_DISTRIBUTION (2) +Feb-20 12:52:47.471 [Task submitter] DEBUG n.executor.local.LocalTaskHandler - Launch cmd line: /bin/bash -ue .command.run +Feb-20 12:52:47.472 [Task submitter] INFO nextflow.Session - [d6/fb313d] Submitted process > BIO_METRICS (2) +Feb-20 12:52:57.393 [Task monitor] DEBUG n.processor.TaskPollingMonitor - Task completed > TaskHandler[id: 14; name: NETWORK_ENRICHMENT (2); status: COMPLETED; exit: 0; error: -; workDir: /data/bugra/digital_trials/work/0a/f14dfa87e070755e2a9c79353c721d] +Feb-20 12:53:05.991 [Task monitor] DEBUG n.processor.TaskPollingMonitor - Task completed > TaskHandler[id: 10; name: BIO_METRICS (1); status: COMPLETED; exit: 0; error: -; workDir: /data/bugra/digital_trials/work/15/a3f493c3f2ce41178d29e8ab6347a5] +Feb-20 12:53:21.010 [Task monitor] DEBUG n.processor.TaskPollingMonitor - Task completed > TaskHandler[id: 13; name: BIO_METRICS (2); status: COMPLETED; exit: 0; error: -; workDir: /data/bugra/digital_trials/work/d6/fb313d80c7d4a29ba04f1238d20f9f] +Feb-20 12:53:40.394 [Task monitor] DEBUG n.processor.TaskPollingMonitor - Task completed > TaskHandler[id: 11; name: TISSUE_DISTRIBUTION (1); status: COMPLETED; exit: 0; error: -; workDir: /data/bugra/digital_trials/work/97/9f27dd23c432d4c981bc33a9fdea9d] +Feb-20 12:54:14.723 [Task monitor] DEBUG n.processor.TaskPollingMonitor - Task completed > TaskHandler[id: 12; name: TISSUE_DISTRIBUTION (2); status: COMPLETED; exit: 0; error: -; workDir: /data/bugra/digital_trials/work/e7/226b4ced31f47b82c4a3f8aa57125e] +Feb-20 12:55:18.592 [Task monitor] DEBUG n.processor.TaskPollingMonitor - Task completed > TaskHandler[id: 1; name: HUMAN_TRANSFORMER (1); status: COMPLETED; exit: 0; error: -; workDir: /data/bugra/digital_trials/work/97/35ef6b0fb9a5705089e16cf692f080] +Feb-20 12:55:18.619 [Task submitter] DEBUG n.executor.local.LocalTaskHandler - Launch cmd line: /bin/bash -ue .command.run +Feb-20 12:55:18.620 [Task submitter] INFO nextflow.Session - [69/5d280f] Submitted process > GET_FINAL_METABOLITES_STATIC (3) +Feb-20 12:55:51.877 [Task monitor] DEBUG n.processor.TaskPollingMonitor - Task completed > TaskHandler[id: 15; name: GET_FINAL_METABOLITES_STATIC (3); status: COMPLETED; exit: 0; error: -; workDir: /data/bugra/digital_trials/work/69/5d280fbd362e9d8b61059bbd73baf8] +Feb-20 12:55:51.907 [Task submitter] DEBUG n.executor.local.LocalTaskHandler - Launch cmd line: /bin/bash -ue .command.run +Feb-20 12:55:51.908 [Task submitter] INFO nextflow.Session - [74/48a2a7] Submitted process > CONPLEX_ALL (3) +Feb-20 12:57:06.254 [Task monitor] DEBUG n.processor.TaskPollingMonitor - Task completed > TaskHandler[id: 16; name: CONPLEX_ALL (3); status: COMPLETED; exit: 0; error: -; workDir: /data/bugra/digital_trials/work/74/48a2a7780c3f777bbb2ae0f25f0a8c] +Feb-20 12:57:06.278 [Task submitter] DEBUG n.executor.local.LocalTaskHandler - Launch cmd line: /bin/bash -ue .command.run +Feb-20 12:57:06.279 [Task submitter] INFO nextflow.Session - [4a/6f0805] Submitted process > TISSUE_DISTRIBUTION (3) +Feb-20 12:57:06.289 [Task submitter] DEBUG n.executor.local.LocalTaskHandler - Launch cmd line: /bin/bash -ue .command.run +Feb-20 12:57:06.290 [Task submitter] INFO nextflow.Session - [b8/073303] Submitted process > NETWORK_ENRICHMENT (3) +Feb-20 12:57:06.300 [Task submitter] DEBUG n.executor.local.LocalTaskHandler - Launch cmd line: /bin/bash -ue .command.run +Feb-20 12:57:06.301 [Task submitter] INFO nextflow.Session - [06/d7b03a] Submitted process > BIO_METRICS (3) +Feb-20 12:57:14.098 [Task monitor] DEBUG n.processor.TaskPollingMonitor - Task completed > TaskHandler[id: 18; name: NETWORK_ENRICHMENT (3); status: COMPLETED; exit: 0; error: -; workDir: /data/bugra/digital_trials/work/b8/073303b55a5a4562ac607a9627b4ce] +Feb-20 12:57:45.164 [Task monitor] DEBUG n.processor.TaskPollingMonitor - !! executor local > tasks to be completed: 3 -- submitted tasks are shown below +~> TaskHandler[id: 2; name: HUMAN_TRANSFORMER (2); status: RUNNING; exit: -; error: -; workDir: /data/bugra/digital_trials/work/61/1051d32de7028657b1414e31f05229] +~> TaskHandler[id: 19; name: TISSUE_DISTRIBUTION (3); status: RUNNING; exit: -; error: -; workDir: /data/bugra/digital_trials/work/4a/6f0805028d05f5942ff8c0dd6e0fb6] +~> TaskHandler[id: 17; name: BIO_METRICS (3); status: RUNNING; exit: -; error: -; workDir: /data/bugra/digital_trials/work/06/d7b03ab59a78de182f97d57a4af883] +Feb-20 12:58:34.071 [Task monitor] DEBUG n.processor.TaskPollingMonitor - Task completed > TaskHandler[id: 17; name: BIO_METRICS (3); status: COMPLETED; exit: 0; error: -; workDir: /data/bugra/digital_trials/work/06/d7b03ab59a78de182f97d57a4af883] +Feb-20 12:59:57.288 [Task monitor] DEBUG n.processor.TaskPollingMonitor - Task completed > TaskHandler[id: 19; name: TISSUE_DISTRIBUTION (3); status: COMPLETED; exit: 0; error: -; workDir: /data/bugra/digital_trials/work/4a/6f0805028d05f5942ff8c0dd6e0fb6] +Feb-20 13:02:45.233 [Task monitor] DEBUG n.processor.TaskPollingMonitor - !! executor local > tasks to be completed: 1 -- submitted tasks are shown below +~> TaskHandler[id: 2; name: HUMAN_TRANSFORMER (2); status: RUNNING; exit: -; error: -; workDir: /data/bugra/digital_trials/work/61/1051d32de7028657b1414e31f05229] +Feb-20 13:07:45.260 [Task monitor] DEBUG n.processor.TaskPollingMonitor - !! executor local > tasks to be completed: 1 -- submitted tasks are shown below +~> TaskHandler[id: 2; name: HUMAN_TRANSFORMER (2); status: RUNNING; exit: -; error: -; workDir: /data/bugra/digital_trials/work/61/1051d32de7028657b1414e31f05229] +Feb-20 13:12:45.271 [Task monitor] DEBUG n.processor.TaskPollingMonitor - !! executor local > tasks to be completed: 1 -- submitted tasks are shown below +~> TaskHandler[id: 2; name: HUMAN_TRANSFORMER (2); status: RUNNING; exit: -; error: -; workDir: /data/bugra/digital_trials/work/61/1051d32de7028657b1414e31f05229] +Feb-20 13:14:43.334 [Task monitor] DEBUG n.processor.TaskPollingMonitor - Task completed > TaskHandler[id: 2; name: HUMAN_TRANSFORMER (2); status: COMPLETED; exit: 0; error: -; workDir: /data/bugra/digital_trials/work/61/1051d32de7028657b1414e31f05229] +Feb-20 13:14:43.363 [Task submitter] DEBUG n.executor.local.LocalTaskHandler - Launch cmd line: /bin/bash -ue .command.run +Feb-20 13:14:43.364 [Task submitter] INFO nextflow.Session - [5f/44be98] Submitted process > GET_FINAL_METABOLITES_STATIC (4) +Feb-20 13:16:13.312 [Task monitor] DEBUG n.processor.TaskPollingMonitor - Task completed > TaskHandler[id: 20; name: GET_FINAL_METABOLITES_STATIC (4); status: COMPLETED; exit: 0; error: -; workDir: /data/bugra/digital_trials/work/5f/44be985eebec27883ed97d8dc19c80] +Feb-20 13:16:13.349 [Task submitter] DEBUG n.executor.local.LocalTaskHandler - Launch cmd line: /bin/bash -ue .command.run +Feb-20 13:16:13.350 [Task submitter] INFO nextflow.Session - [b4/630a29] Submitted process > CONPLEX_ALL (4) +Feb-20 13:17:45.345 [Task monitor] DEBUG n.processor.TaskPollingMonitor - !! executor local > tasks to be completed: 1 -- submitted tasks are shown below +~> TaskHandler[id: 21; name: CONPLEX_ALL (4); status: RUNNING; exit: -; error: -; workDir: /data/bugra/digital_trials/work/b4/630a2983878cda3d03d42c45cca98f] +Feb-20 13:17:48.021 [Task monitor] DEBUG n.processor.TaskPollingMonitor - Task completed > TaskHandler[id: 21; name: CONPLEX_ALL (4); status: COMPLETED; exit: 0; error: -; workDir: /data/bugra/digital_trials/work/b4/630a2983878cda3d03d42c45cca98f] +Feb-20 13:17:48.045 [Task submitter] DEBUG n.executor.local.LocalTaskHandler - Launch cmd line: /bin/bash -ue .command.run +Feb-20 13:17:48.046 [Task submitter] INFO nextflow.Session - [5c/ee7ebf] Submitted process > TISSUE_DISTRIBUTION (4) +Feb-20 13:17:48.057 [Task submitter] DEBUG n.executor.local.LocalTaskHandler - Launch cmd line: /bin/bash -ue .command.run +Feb-20 13:17:48.057 [Task submitter] INFO nextflow.Session - [09/a6adcd] Submitted process > BIO_METRICS (4) +Feb-20 13:17:48.066 [Task submitter] DEBUG n.executor.local.LocalTaskHandler - Launch cmd line: /bin/bash -ue .command.run +Feb-20 13:17:48.067 [Task submitter] INFO nextflow.Session - [5d/16d116] Submitted process > NETWORK_ENRICHMENT (4) +Feb-20 13:17:56.561 [Task monitor] DEBUG n.processor.TaskPollingMonitor - Task completed > TaskHandler[id: 23; name: NETWORK_ENRICHMENT (4); status: COMPLETED; exit: 0; error: -; workDir: /data/bugra/digital_trials/work/5d/16d1169328307314e2ca18b0d54c1f] +Feb-20 13:18:46.519 [Task monitor] DEBUG n.processor.TaskPollingMonitor - Task completed > TaskHandler[id: 22; name: BIO_METRICS (4); status: COMPLETED; exit: 0; error: -; workDir: /data/bugra/digital_trials/work/09/a6adcd0a29467e13550a9805afd96b] +Feb-20 13:20:03.461 [Task monitor] DEBUG n.processor.TaskPollingMonitor - Task completed > TaskHandler[id: 24; name: TISSUE_DISTRIBUTION (4); status: COMPLETED; exit: 0; error: -; workDir: /data/bugra/digital_trials/work/5c/ee7ebf9a1241900d75d373a0f55c6a] +Feb-20 13:20:03.466 [main] DEBUG nextflow.Session - Session await > all processes finished +Feb-20 13:20:03.563 [Task monitor] DEBUG n.processor.TaskPollingMonitor - <<< barrier arrives (monitor: local) - terminating tasks monitor poll loop +Feb-20 13:20:03.563 [main] DEBUG nextflow.Session - Session await > all barriers passed +Feb-20 13:20:03.572 [main] DEBUG nextflow.util.ThreadPoolManager - Thread pool 'TaskFinalizer' shutdown completed (hard=false) +Feb-20 13:20:03.576 [main] DEBUG nextflow.util.ThreadPoolManager - Thread pool 'PublishDir' shutdown completed (hard=false) +Feb-20 13:20:03.592 [main] DEBUG n.trace.WorkflowStatsObserver - Workflow completed > WorkflowStats[succeededCount=24; failedCount=0; ignoredCount=0; cachedCount=0; pendingCount=0; submittedCount=0; runningCount=0; retriesCount=0; abortedCount=0; succeedDuration=1h 1m 34s; failedDuration=0ms; cachedDuration=0ms;loadCpus=0; loadMemory=0; peakRunning=7; peakCpus=7; peakMemory=31 GB; ] +Feb-20 13:20:03.653 [main] DEBUG nextflow.cache.CacheDB - Closing CacheDB done +Feb-20 13:20:03.735 [main] INFO org.pf4j.AbstractPluginManager - Stop plugin 'nf-tower@1.11.3' +Feb-20 13:20:03.735 [main] DEBUG nextflow.plugin.BasePlugin - Plugin stopped nf-tower +Feb-20 13:20:03.737 [main] DEBUG nextflow.util.ThreadPoolManager - Thread pool 'FileTransfer' shutdown completed (hard=false) +Feb-20 13:20:03.738 [main] DEBUG nextflow.script.ScriptRunner - > Execution complete -- Goodbye diff --git a/.nextflow.log.8 b/.nextflow.log.8 new file mode 100644 index 0000000..70bccc8 --- /dev/null +++ b/.nextflow.log.8 @@ -0,0 +1,96 @@ +Feb-20 12:45:31.438 [main] DEBUG nextflow.cli.Launcher - $> nextflow run test.nf -params-file /data/dreamdock-data/gpr55-caline/digtrial/gpr55-2.json +Feb-20 12:45:31.816 [main] DEBUG nextflow.cli.CmdRun - N E X T F L O W ~ version 25.04.3 +Feb-20 12:45:31.845 [main] DEBUG nextflow.plugin.PluginsFacade - Setting up plugin manager > mode=prod; embedded=false; plugins-dir=/home/omic/.nextflow/plugins; core-plugins: nf-amazon@2.15.0,nf-azure@1.16.0,nf-cloudcache@0.4.3,nf-codecommit@0.2.3,nf-console@1.2.1,nf-google@1.21.0,nf-k8s@1.0.0,nf-tower@1.11.3,nf-wave@1.12.1 +Feb-20 12:45:31.879 [main] INFO o.pf4j.DefaultPluginStatusProvider - Enabled plugins: [] +Feb-20 12:45:31.880 [main] INFO o.pf4j.DefaultPluginStatusProvider - Disabled plugins: [] +Feb-20 12:45:31.884 [main] INFO org.pf4j.DefaultPluginManager - PF4J version 3.12.0 in 'deployment' mode +Feb-20 12:45:31.897 [main] INFO org.pf4j.AbstractPluginManager - No plugins +Feb-20 12:45:31.922 [main] DEBUG nextflow.config.ConfigBuilder - Found config local: /data/bugra/digital_trials/nextflow.config +Feb-20 12:45:31.925 [main] DEBUG nextflow.config.ConfigBuilder - Parsing config file: /data/bugra/digital_trials/nextflow.config +Feb-20 12:45:31.961 [main] DEBUG n.secret.LocalSecretsProvider - Secrets store: /home/omic/.nextflow/secrets/store.json +Feb-20 12:45:31.966 [main] DEBUG nextflow.secret.SecretsLoader - Discovered secrets providers: [nextflow.secret.LocalSecretsProvider@6ef81f31] - activable => nextflow.secret.LocalSecretsProvider@6ef81f31 +Feb-20 12:45:31.995 [main] DEBUG nextflow.config.ConfigBuilder - Applying config profile: `standard` +Feb-20 12:45:32.749 [main] DEBUG nextflow.cli.CmdRun - Applied DSL=2 from script declaration +Feb-20 12:45:32.771 [main] DEBUG nextflow.cli.CmdRun - Launching `test.nf` [mad_jepsen] DSL2 - revision: 5cb3581ad6 +Feb-20 12:45:32.773 [main] DEBUG nextflow.plugin.PluginsFacade - Plugins default=[] +Feb-20 12:45:32.775 [main] DEBUG nextflow.plugin.PluginsFacade - Plugins resolved requirement=[nf-tower@1.11.3] +Feb-20 12:45:32.777 [main] DEBUG nextflow.plugin.PluginUpdater - Installing plugin nf-tower version: 1.11.3 +Feb-20 12:45:32.790 [main] INFO org.pf4j.AbstractPluginManager - Plugin 'nf-tower@1.11.3' resolved +Feb-20 12:45:32.790 [main] INFO org.pf4j.AbstractPluginManager - Start plugin 'nf-tower@1.11.3' +Feb-20 12:45:32.808 [main] DEBUG nextflow.plugin.BasePlugin - Plugin started nf-tower@1.11.3 +Feb-20 12:45:32.881 [main] DEBUG nextflow.Session - Session UUID: 9b7d6ce5-46a6-43c0-accf-fd12d7d33e5d +Feb-20 12:45:32.882 [main] DEBUG nextflow.Session - Run name: mad_jepsen +Feb-20 12:45:32.883 [main] DEBUG nextflow.Session - Executor pool size: 80 +Feb-20 12:45:32.896 [main] DEBUG nextflow.file.FilePorter - File porter settings maxRetries=3; maxTransfers=50; pollTimeout=null +Feb-20 12:45:32.905 [main] DEBUG nextflow.util.ThreadPoolBuilder - Creating thread pool 'FileTransfer' minSize=10; maxSize=240; workQueue=LinkedBlockingQueue[-1]; allowCoreThreadTimeout=false +Feb-20 12:45:32.940 [main] DEBUG nextflow.cli.CmdRun - + Version: 25.04.3 build 5949 + Created: 02-06-2025 20:56 UTC + System: Linux 6.11.0-26-generic + Runtime: Groovy 4.0.26 on OpenJDK 64-Bit Server VM 21.0.7+6-Ubuntu-0ubuntu124.04 + Encoding: UTF-8 (UTF-8) + Process: 851238@k8s-node23 [127.0.1.1] + CPUs: 80 - Mem: 251.6 GB (56.5 GB) - Swap: 0 (0) +Feb-20 12:45:32.977 [main] DEBUG nextflow.Session - Work-dir: /data/bugra/digital_trials/work [btrfs] +Feb-20 12:45:32.978 [main] DEBUG nextflow.Session - Script base path does not exist or is not a directory: /data/bugra/digital_trials/bin +Feb-20 12:45:32.997 [main] DEBUG nextflow.executor.ExecutorFactory - Extension executors providers=[] +Feb-20 12:45:33.016 [main] DEBUG nextflow.Session - Observer factory: DefaultObserverFactory +Feb-20 12:45:33.022 [main] DEBUG nextflow.Session - Observer factory: TowerFactory +Feb-20 12:45:33.025 [main] DEBUG nextflow.Session - Observer factory (v2): LinObserverFactory +Feb-20 12:45:33.059 [main] DEBUG nextflow.cache.CacheFactory - Using Nextflow cache factory: nextflow.cache.DefaultCacheFactory +Feb-20 12:45:33.073 [main] DEBUG nextflow.util.CustomThreadPool - Creating default thread pool > poolSize: 81; maxThreads: 1000 +Feb-20 12:45:33.221 [main] DEBUG nextflow.Session - Session start +Feb-20 12:45:33.684 [main] DEBUG nextflow.script.ScriptRunner - > Launching execution +Feb-20 12:45:34.592 [main] DEBUG nextflow.executor.ExecutorFactory - << taskConfig executor: null +Feb-20 12:45:34.592 [main] DEBUG nextflow.executor.ExecutorFactory - >> processorType: 'local' +Feb-20 12:45:34.600 [main] DEBUG nextflow.executor.Executor - [warm up] executor > local +Feb-20 12:45:34.611 [main] DEBUG n.processor.LocalPollingMonitor - Creating local task monitor for executor 'local' > cpus=80; memory=251.6 GB; capacity=80; pollInterval=100ms; dumpInterval=5m +Feb-20 12:45:34.614 [main] DEBUG n.processor.TaskPollingMonitor - >>> barrier register (monitor: local) +Feb-20 12:45:34.649 [main] DEBUG nextflow.processor.TaskProcessor - Creating process 'HUMAN_TRANSFORMER': maxForks=0; fair=false; array=0 +Feb-20 12:45:34.755 [main] DEBUG nextflow.executor.ExecutorFactory - << taskConfig executor: null +Feb-20 12:45:34.755 [main] DEBUG nextflow.executor.ExecutorFactory - >> processorType: 'local' +Feb-20 12:45:34.757 [main] DEBUG nextflow.processor.TaskProcessor - Creating process 'GET_FINAL_METABOLITES_STATIC': maxForks=0; fair=false; array=0 +Feb-20 12:45:34.772 [main] DEBUG nextflow.script.ProcessConfig - Config settings `withLabel:gpu_process` matches labels `gpu_process` for process with name PREPROCESS_PROTEIN +Feb-20 12:45:34.778 [main] DEBUG nextflow.executor.ExecutorFactory - << taskConfig executor: null +Feb-20 12:45:34.779 [main] DEBUG nextflow.executor.ExecutorFactory - >> processorType: 'local' +Feb-20 12:45:34.781 [main] DEBUG nextflow.processor.TaskProcessor - Creating process 'PREPROCESS_PROTEIN': maxForks=0; fair=false; array=0 +Feb-20 12:45:34.850 [main] DEBUG nextflow.executor.ExecutorFactory - << taskConfig executor: null +Feb-20 12:45:34.850 [main] DEBUG nextflow.executor.ExecutorFactory - >> processorType: 'local' +Feb-20 12:45:34.851 [main] DEBUG nextflow.processor.TaskProcessor - Creating process 'CONPLEX_ALL': maxForks=0; fair=false; array=0 +Feb-20 12:45:34.887 [main] DEBUG nextflow.executor.ExecutorFactory - << taskConfig executor: null +Feb-20 12:45:34.887 [main] DEBUG nextflow.executor.ExecutorFactory - >> processorType: 'local' +Feb-20 12:45:34.888 [main] DEBUG nextflow.processor.TaskProcessor - Creating process 'NETWORK_ENRICHMENT': maxForks=0; fair=false; array=0 +Feb-20 12:45:34.897 [main] DEBUG nextflow.executor.ExecutorFactory - << taskConfig executor: null +Feb-20 12:45:34.897 [main] DEBUG nextflow.executor.ExecutorFactory - >> processorType: 'local' +Feb-20 12:45:34.899 [main] DEBUG nextflow.processor.TaskProcessor - Creating process 'TISSUE_DISTRIBUTION': maxForks=0; fair=false; array=0 +Feb-20 12:45:34.927 [main] DEBUG nextflow.executor.ExecutorFactory - << taskConfig executor: null +Feb-20 12:45:34.927 [main] DEBUG nextflow.executor.ExecutorFactory - >> processorType: 'local' +Feb-20 12:45:34.928 [main] DEBUG nextflow.processor.TaskProcessor - Creating process 'BIO_METRICS': maxForks=0; fair=false; array=0 +Feb-20 12:45:34.933 [main] DEBUG nextflow.Session - Workflow process names [dsl2]: HUMAN_TRANSFORMER, METABOLITES_BY_MASS, GET_FINAL_METABOLITES_STATIC, CONPLEX_ALL, NETWORK_ENRICHMENT, GET_FINAL_METABOLITES, CONPLEX, BIO_METRICS, SUPER_TRANSFORMER, TISSUE_DISTRIBUTION, MERGE_DRUG, MERGE_INTERACTIONS, PREPROCESS_PROTEIN, ORDERED_SEQUENCE +Feb-20 12:45:34.935 [main] DEBUG nextflow.Session - Igniting dataflow network (11) +Feb-20 12:45:34.942 [main] DEBUG nextflow.processor.TaskProcessor - Starting process > HUMAN_TRANSFORMER +Feb-20 12:45:34.944 [main] DEBUG nextflow.processor.TaskProcessor - Starting process > GET_FINAL_METABOLITES_STATIC +Feb-20 12:45:34.945 [main] DEBUG nextflow.processor.TaskProcessor - Starting process > PREPROCESS_PROTEIN +Feb-20 12:45:34.946 [main] DEBUG nextflow.processor.TaskProcessor - Starting process > CONPLEX_ALL +Feb-20 12:45:34.946 [PathVisitor-3] DEBUG nextflow.file.PathVisitor - files for syntax: glob; folder: /mnt/dreamdock-data/digital_trials/input/blank/; pattern: *.fasta; options: [:] +Feb-20 12:45:34.946 [PathVisitor-1] DEBUG nextflow.file.PathVisitor - files for syntax: glob; folder: /data/dreamdock-data/gpr55-caline/digtrial/input/ligands2/; pattern: *.csv; options: [:] +Feb-20 12:45:34.947 [main] DEBUG nextflow.processor.TaskProcessor - Starting process > NETWORK_ENRICHMENT +Feb-20 12:45:34.947 [main] DEBUG nextflow.processor.TaskProcessor - Starting process > TISSUE_DISTRIBUTION +Feb-20 12:45:34.948 [main] DEBUG nextflow.processor.TaskProcessor - Starting process > BIO_METRICS +Feb-20 12:45:34.949 [main] DEBUG nextflow.script.ScriptRunner - Parsed script files: + Script_c432c676a3e7c0cb: /data/bugra/digital_trials/test.nf + Script_e39e54e7aa543fd0: /data/bugra/digital_trials/main_biotransformer.nf + Script_d345b7a65a8f3255: /data/bugra/digital_trials/main_conplex.nf + Script_ec01f2a38db15aa5: /data/bugra/digital_trials/main_tissue.nf +Feb-20 12:45:34.949 [main] DEBUG nextflow.script.ScriptRunner - > Awaiting termination +Feb-20 12:45:34.949 [main] DEBUG nextflow.Session - Session await +Feb-20 12:45:34.951 [PathVisitor-1] DEBUG nextflow.file.PathVisitor - No such file or directory: /data/dreamdock-data/gpr55-caline/digtrial/input/ligands2/ -- Skipping visit +Feb-20 12:45:34.966 [main] DEBUG nextflow.Session - Session await > all processes finished +Feb-20 12:45:35.028 [Task monitor] DEBUG n.processor.TaskPollingMonitor - <<< barrier arrives (monitor: local) - terminating tasks monitor poll loop +Feb-20 12:45:35.028 [main] DEBUG nextflow.Session - Session await > all barriers passed +Feb-20 12:45:35.037 [main] DEBUG n.trace.WorkflowStatsObserver - Workflow completed > WorkflowStats[succeededCount=0; failedCount=0; ignoredCount=0; cachedCount=0; pendingCount=0; submittedCount=0; runningCount=0; retriesCount=0; abortedCount=0; succeedDuration=0ms; failedDuration=0ms; cachedDuration=0ms;loadCpus=0; loadMemory=0; peakRunning=0; peakCpus=0; peakMemory=0; ] +Feb-20 12:45:35.083 [main] DEBUG nextflow.cache.CacheDB - Closing CacheDB done +Feb-20 12:45:35.175 [main] INFO org.pf4j.AbstractPluginManager - Stop plugin 'nf-tower@1.11.3' +Feb-20 12:45:35.175 [main] DEBUG nextflow.plugin.BasePlugin - Plugin stopped nf-tower +Feb-20 12:45:35.179 [main] DEBUG nextflow.util.ThreadPoolManager - Thread pool 'FileTransfer' shutdown completed (hard=false) +Feb-20 12:45:35.180 [main] DEBUG nextflow.script.ScriptRunner - > Execution complete -- Goodbye diff --git a/.nextflow.log.9 b/.nextflow.log.9 new file mode 100644 index 0000000..a485f1a --- /dev/null +++ b/.nextflow.log.9 @@ -0,0 +1,189 @@ +Feb-18 08:16:32.779 [main] DEBUG nextflow.cli.Launcher - $> nextflow run test.nf -params-file /data/digital-trials-data/caline-run5/caline-run5.json +Feb-18 08:16:33.190 [main] DEBUG nextflow.cli.CmdRun - N E X T F L O W ~ version 25.04.3 +Feb-18 08:16:33.221 [main] DEBUG nextflow.plugin.PluginsFacade - Setting up plugin manager > mode=prod; embedded=false; plugins-dir=/home/omic/.nextflow/plugins; core-plugins: nf-amazon@2.15.0,nf-azure@1.16.0,nf-cloudcache@0.4.3,nf-codecommit@0.2.3,nf-console@1.2.1,nf-google@1.21.0,nf-k8s@1.0.0,nf-tower@1.11.3,nf-wave@1.12.1 +Feb-18 08:16:33.261 [main] INFO o.pf4j.DefaultPluginStatusProvider - Enabled plugins: [] +Feb-18 08:16:33.262 [main] INFO o.pf4j.DefaultPluginStatusProvider - Disabled plugins: [] +Feb-18 08:16:33.266 [main] INFO org.pf4j.DefaultPluginManager - PF4J version 3.12.0 in 'deployment' mode +Feb-18 08:16:33.284 [main] INFO org.pf4j.AbstractPluginManager - No plugins +Feb-18 08:16:33.314 [main] DEBUG nextflow.config.ConfigBuilder - Found config local: /data/bugra/digital_trials/nextflow.config +Feb-18 08:16:33.318 [main] DEBUG nextflow.config.ConfigBuilder - Parsing config file: /data/bugra/digital_trials/nextflow.config +Feb-18 08:16:33.362 [main] DEBUG n.secret.LocalSecretsProvider - Secrets store: /home/omic/.nextflow/secrets/store.json +Feb-18 08:16:33.368 [main] DEBUG nextflow.secret.SecretsLoader - Discovered secrets providers: [nextflow.secret.LocalSecretsProvider@6ef81f31] - activable => nextflow.secret.LocalSecretsProvider@6ef81f31 +Feb-18 08:16:33.406 [main] DEBUG nextflow.config.ConfigBuilder - Applying config profile: `standard` +Feb-18 08:16:34.180 [main] DEBUG nextflow.cli.CmdRun - Applied DSL=2 from script declaration +Feb-18 08:16:34.202 [main] DEBUG nextflow.cli.CmdRun - Launching `test.nf` [fabulous_marconi] DSL2 - revision: 5cb3581ad6 +Feb-18 08:16:34.204 [main] DEBUG nextflow.plugin.PluginsFacade - Plugins default=[] +Feb-18 08:16:34.206 [main] DEBUG nextflow.plugin.PluginsFacade - Plugins resolved requirement=[nf-tower@1.11.3] +Feb-18 08:16:34.208 [main] DEBUG nextflow.plugin.PluginUpdater - Installing plugin nf-tower version: 1.11.3 +Feb-18 08:16:34.221 [main] INFO org.pf4j.AbstractPluginManager - Plugin 'nf-tower@1.11.3' resolved +Feb-18 08:16:34.222 [main] INFO org.pf4j.AbstractPluginManager - Start plugin 'nf-tower@1.11.3' +Feb-18 08:16:34.239 [main] DEBUG nextflow.plugin.BasePlugin - Plugin started nf-tower@1.11.3 +Feb-18 08:16:34.310 [main] DEBUG nextflow.Session - Session UUID: ece3d722-9ceb-41e2-826d-635604e82e89 +Feb-18 08:16:34.311 [main] DEBUG nextflow.Session - Run name: fabulous_marconi +Feb-18 08:16:34.311 [main] DEBUG nextflow.Session - Executor pool size: 80 +Feb-18 08:16:34.324 [main] DEBUG nextflow.file.FilePorter - File porter settings maxRetries=3; maxTransfers=50; pollTimeout=null +Feb-18 08:16:34.332 [main] DEBUG nextflow.util.ThreadPoolBuilder - Creating thread pool 'FileTransfer' minSize=10; maxSize=240; workQueue=LinkedBlockingQueue[-1]; allowCoreThreadTimeout=false +Feb-18 08:16:34.414 [main] DEBUG nextflow.cli.CmdRun - + Version: 25.04.3 build 5949 + Created: 02-06-2025 20:56 UTC + System: Linux 6.11.0-26-generic + Runtime: Groovy 4.0.26 on OpenJDK 64-Bit Server VM 21.0.7+6-Ubuntu-0ubuntu124.04 + Encoding: UTF-8 (UTF-8) + Process: 1283371@k8s-node23 [127.0.1.1] + CPUs: 80 - Mem: 251.6 GB (50.5 GB) - Swap: 0 (0) +Feb-18 08:16:34.449 [main] DEBUG nextflow.Session - Work-dir: /data/bugra/digital_trials/work [btrfs] +Feb-18 08:16:34.450 [main] DEBUG nextflow.Session - Script base path does not exist or is not a directory: /data/bugra/digital_trials/bin +Feb-18 08:16:34.467 [main] DEBUG nextflow.executor.ExecutorFactory - Extension executors providers=[] +Feb-18 08:16:34.486 [main] DEBUG nextflow.Session - Observer factory: DefaultObserverFactory +Feb-18 08:16:34.492 [main] DEBUG nextflow.Session - Observer factory: TowerFactory +Feb-18 08:16:34.495 [main] DEBUG nextflow.Session - Observer factory (v2): LinObserverFactory +Feb-18 08:16:34.544 [main] DEBUG nextflow.cache.CacheFactory - Using Nextflow cache factory: nextflow.cache.DefaultCacheFactory +Feb-18 08:16:34.560 [main] DEBUG nextflow.util.CustomThreadPool - Creating default thread pool > poolSize: 81; maxThreads: 1000 +Feb-18 08:16:34.812 [main] DEBUG nextflow.Session - Session start +Feb-18 08:16:35.337 [main] DEBUG nextflow.script.ScriptRunner - > Launching execution +Feb-18 08:16:36.243 [main] DEBUG nextflow.executor.ExecutorFactory - << taskConfig executor: null +Feb-18 08:16:36.244 [main] DEBUG nextflow.executor.ExecutorFactory - >> processorType: 'local' +Feb-18 08:16:36.252 [main] DEBUG nextflow.executor.Executor - [warm up] executor > local +Feb-18 08:16:36.262 [main] DEBUG n.processor.LocalPollingMonitor - Creating local task monitor for executor 'local' > cpus=80; memory=251.6 GB; capacity=80; pollInterval=100ms; dumpInterval=5m +Feb-18 08:16:36.265 [main] DEBUG n.processor.TaskPollingMonitor - >>> barrier register (monitor: local) +Feb-18 08:16:36.300 [main] DEBUG nextflow.processor.TaskProcessor - Creating process 'HUMAN_TRANSFORMER': maxForks=0; fair=false; array=0 +Feb-18 08:16:36.400 [main] DEBUG nextflow.executor.ExecutorFactory - << taskConfig executor: null +Feb-18 08:16:36.400 [main] DEBUG nextflow.executor.ExecutorFactory - >> processorType: 'local' +Feb-18 08:16:36.402 [main] DEBUG nextflow.processor.TaskProcessor - Creating process 'GET_FINAL_METABOLITES_STATIC': maxForks=0; fair=false; array=0 +Feb-18 08:16:36.417 [main] DEBUG nextflow.script.ProcessConfig - Config settings `withLabel:gpu_process` matches labels `gpu_process` for process with name PREPROCESS_PROTEIN +Feb-18 08:16:36.422 [main] DEBUG nextflow.executor.ExecutorFactory - << taskConfig executor: null +Feb-18 08:16:36.422 [main] DEBUG nextflow.executor.ExecutorFactory - >> processorType: 'local' +Feb-18 08:16:36.424 [main] DEBUG nextflow.processor.TaskProcessor - Creating process 'PREPROCESS_PROTEIN': maxForks=0; fair=false; array=0 +Feb-18 08:16:36.485 [main] DEBUG nextflow.executor.ExecutorFactory - << taskConfig executor: null +Feb-18 08:16:36.486 [main] DEBUG nextflow.executor.ExecutorFactory - >> processorType: 'local' +Feb-18 08:16:36.487 [main] DEBUG nextflow.processor.TaskProcessor - Creating process 'CONPLEX_ALL': maxForks=0; fair=false; array=0 +Feb-18 08:16:36.516 [main] DEBUG nextflow.executor.ExecutorFactory - << taskConfig executor: null +Feb-18 08:16:36.516 [main] DEBUG nextflow.executor.ExecutorFactory - >> processorType: 'local' +Feb-18 08:16:36.518 [main] DEBUG nextflow.processor.TaskProcessor - Creating process 'NETWORK_ENRICHMENT': maxForks=0; fair=false; array=0 +Feb-18 08:16:36.525 [main] DEBUG nextflow.executor.ExecutorFactory - << taskConfig executor: null +Feb-18 08:16:36.525 [main] DEBUG nextflow.executor.ExecutorFactory - >> processorType: 'local' +Feb-18 08:16:36.526 [main] DEBUG nextflow.processor.TaskProcessor - Creating process 'TISSUE_DISTRIBUTION': maxForks=0; fair=false; array=0 +Feb-18 08:16:36.537 [main] DEBUG nextflow.executor.ExecutorFactory - << taskConfig executor: null +Feb-18 08:16:36.537 [main] DEBUG nextflow.executor.ExecutorFactory - >> processorType: 'local' +Feb-18 08:16:36.538 [main] DEBUG nextflow.processor.TaskProcessor - Creating process 'BIO_METRICS': maxForks=0; fair=false; array=0 +Feb-18 08:16:36.541 [main] DEBUG nextflow.Session - Workflow process names [dsl2]: HUMAN_TRANSFORMER, METABOLITES_BY_MASS, GET_FINAL_METABOLITES_STATIC, CONPLEX_ALL, NETWORK_ENRICHMENT, GET_FINAL_METABOLITES, CONPLEX, BIO_METRICS, SUPER_TRANSFORMER, TISSUE_DISTRIBUTION, MERGE_DRUG, MERGE_INTERACTIONS, PREPROCESS_PROTEIN, ORDERED_SEQUENCE +Feb-18 08:16:36.544 [main] DEBUG nextflow.Session - Igniting dataflow network (11) +Feb-18 08:16:36.551 [main] DEBUG nextflow.processor.TaskProcessor - Starting process > HUMAN_TRANSFORMER +Feb-18 08:16:36.552 [main] DEBUG nextflow.processor.TaskProcessor - Starting process > GET_FINAL_METABOLITES_STATIC +Feb-18 08:16:36.553 [main] DEBUG nextflow.processor.TaskProcessor - Starting process > PREPROCESS_PROTEIN +Feb-18 08:16:36.554 [main] DEBUG nextflow.processor.TaskProcessor - Starting process > CONPLEX_ALL +Feb-18 08:16:36.554 [PathVisitor-3] DEBUG nextflow.file.PathVisitor - files for syntax: glob; folder: /mnt/dreamdock-data/digital_trials/input/blank/; pattern: *.fasta; options: [:] +Feb-18 08:16:36.554 [PathVisitor-1] DEBUG nextflow.file.PathVisitor - files for syntax: glob; folder: /data/digital-trials-data/caline-run5/input/ligands/; pattern: *.csv; options: [:] +Feb-18 08:16:36.555 [main] DEBUG nextflow.processor.TaskProcessor - Starting process > NETWORK_ENRICHMENT +Feb-18 08:16:36.555 [main] DEBUG nextflow.processor.TaskProcessor - Starting process > TISSUE_DISTRIBUTION +Feb-18 08:16:36.556 [main] DEBUG nextflow.processor.TaskProcessor - Starting process > BIO_METRICS +Feb-18 08:16:36.557 [main] DEBUG nextflow.script.ScriptRunner - Parsed script files: + Script_c432c676a3e7c0cb: /data/bugra/digital_trials/test.nf + Script_e39e54e7aa543fd0: /data/bugra/digital_trials/main_biotransformer.nf + Script_d345b7a65a8f3255: /data/bugra/digital_trials/main_conplex.nf + Script_ec01f2a38db15aa5: /data/bugra/digital_trials/main_tissue.nf +Feb-18 08:16:36.557 [main] DEBUG nextflow.script.ScriptRunner - > Awaiting termination +Feb-18 08:16:36.557 [main] DEBUG nextflow.Session - Session await +Feb-18 08:16:36.797 [Task submitter] DEBUG n.executor.local.LocalTaskHandler - Launch cmd line: /bin/bash -ue .command.run +Feb-18 08:16:36.800 [Task submitter] INFO nextflow.Session - [b1/69b46f] Submitted process > HUMAN_TRANSFORMER (4) +Feb-18 08:16:36.815 [Task submitter] DEBUG n.executor.local.LocalTaskHandler - Launch cmd line: /bin/bash -ue .command.run +Feb-18 08:16:36.816 [Task submitter] INFO nextflow.Session - [10/2fb928] Submitted process > HUMAN_TRANSFORMER (3) +Feb-18 08:16:36.823 [Task submitter] DEBUG n.executor.local.LocalTaskHandler - Launch cmd line: /bin/bash -ue .command.run +Feb-18 08:16:36.824 [Task submitter] INFO nextflow.Session - [10/6b721f] Submitted process > HUMAN_TRANSFORMER (2) +Feb-18 08:16:36.831 [Task submitter] DEBUG n.executor.local.LocalTaskHandler - Launch cmd line: /bin/bash -ue .command.run +Feb-18 08:16:36.831 [Task submitter] INFO nextflow.Session - [ac/d9d808] Submitted process > HUMAN_TRANSFORMER (1) +Feb-18 08:19:47.743 [Task monitor] DEBUG n.processor.TaskPollingMonitor - Task completed > TaskHandler[id: 3; name: HUMAN_TRANSFORMER (3); status: COMPLETED; exit: 0; error: -; workDir: /data/bugra/digital_trials/work/10/2fb9287851aa5e184a108c2622d322] +Feb-18 08:19:47.747 [Task monitor] DEBUG nextflow.util.ThreadPoolBuilder - Creating thread pool 'TaskFinalizer' minSize=10; maxSize=240; workQueue=LinkedBlockingQueue[-1]; allowCoreThreadTimeout=false +Feb-18 08:19:47.788 [TaskFinalizer-1] DEBUG nextflow.util.ThreadPoolBuilder - Creating thread pool 'PublishDir' minSize=10; maxSize=240; workQueue=LinkedBlockingQueue[-1]; allowCoreThreadTimeout=false +Feb-18 08:19:47.801 [Task submitter] DEBUG n.executor.local.LocalTaskHandler - Launch cmd line: /bin/bash -ue .command.run +Feb-18 08:19:47.802 [Task submitter] INFO nextflow.Session - [4a/22722f] Submitted process > GET_FINAL_METABOLITES_STATIC (1) +Feb-18 08:19:56.711 [Task monitor] DEBUG n.processor.TaskPollingMonitor - Task completed > TaskHandler[id: 5; name: GET_FINAL_METABOLITES_STATIC (1); status: COMPLETED; exit: 0; error: -; workDir: /data/bugra/digital_trials/work/4a/22722f5d74d0ebe540d7d39ea06b1b] +Feb-18 08:19:56.775 [Task submitter] DEBUG n.executor.local.LocalTaskHandler - Launch cmd line: /bin/bash -ue .command.run +Feb-18 08:19:56.776 [Task submitter] INFO nextflow.Session - [7e/903d0b] Submitted process > CONPLEX_ALL (1) +Feb-18 08:20:40.566 [Task monitor] DEBUG n.processor.TaskPollingMonitor - Task completed > TaskHandler[id: 4; name: HUMAN_TRANSFORMER (4); status: COMPLETED; exit: 0; error: -; workDir: /data/bugra/digital_trials/work/b1/69b46f4ee44257fa109faa38046f22] +Feb-18 08:20:40.586 [Task submitter] DEBUG n.executor.local.LocalTaskHandler - Launch cmd line: /bin/bash -ue .command.run +Feb-18 08:20:40.587 [Task submitter] INFO nextflow.Session - [c6/ebbabc] Submitted process > GET_FINAL_METABOLITES_STATIC (2) +Feb-18 08:20:48.175 [Task monitor] DEBUG n.processor.TaskPollingMonitor - Task completed > TaskHandler[id: 7; name: GET_FINAL_METABOLITES_STATIC (2); status: COMPLETED; exit: 0; error: -; workDir: /data/bugra/digital_trials/work/c6/ebbabc26d328ed82ed29fa3420b345] +Feb-18 08:20:48.196 [Task submitter] DEBUG n.executor.local.LocalTaskHandler - Launch cmd line: /bin/bash -ue .command.run +Feb-18 08:20:48.197 [Task submitter] INFO nextflow.Session - [a8/9dfebd] Submitted process > CONPLEX_ALL (2) +Feb-18 08:21:02.719 [Task monitor] DEBUG n.processor.TaskPollingMonitor - Task completed > TaskHandler[id: 6; name: CONPLEX_ALL (1); status: COMPLETED; exit: 0; error: -; workDir: /data/bugra/digital_trials/work/7e/903d0be26b0f46094fa4124ea7429e] +Feb-18 08:21:02.753 [Task submitter] DEBUG n.executor.local.LocalTaskHandler - Launch cmd line: /bin/bash -ue .command.run +Feb-18 08:21:02.754 [Task submitter] INFO nextflow.Session - [80/5291a1] Submitted process > TISSUE_DISTRIBUTION (1) +Feb-18 08:21:02.761 [Task submitter] DEBUG n.executor.local.LocalTaskHandler - Launch cmd line: /bin/bash -ue .command.run +Feb-18 08:21:02.761 [Task submitter] INFO nextflow.Session - [b1/0c641f] Submitted process > BIO_METRICS (1) +Feb-18 08:21:02.768 [Task submitter] DEBUG n.executor.local.LocalTaskHandler - Launch cmd line: /bin/bash -ue .command.run +Feb-18 08:21:02.769 [Task submitter] INFO nextflow.Session - [41/ada4cf] Submitted process > NETWORK_ENRICHMENT (1) +Feb-18 08:21:13.500 [Task monitor] DEBUG n.processor.TaskPollingMonitor - Task completed > TaskHandler[id: 11; name: NETWORK_ENRICHMENT (1); status: COMPLETED; exit: 0; error: -; workDir: /data/bugra/digital_trials/work/41/ada4cffa7038bb6a904ad7adffab70] +Feb-18 08:21:36.459 [Task monitor] DEBUG n.processor.TaskPollingMonitor - !! executor local > tasks to be completed: 5 -- submitted tasks are shown below +~> TaskHandler[id: 2; name: HUMAN_TRANSFORMER (2); status: RUNNING; exit: -; error: -; workDir: /data/bugra/digital_trials/work/10/6b721ff03cf9bb6fdc069b2318e358] +~> TaskHandler[id: 1; name: HUMAN_TRANSFORMER (1); status: RUNNING; exit: -; error: -; workDir: /data/bugra/digital_trials/work/ac/d9d808f5e7ff0bc9ce47fce956e109] +~> TaskHandler[id: 8; name: CONPLEX_ALL (2); status: RUNNING; exit: -; error: -; workDir: /data/bugra/digital_trials/work/a8/9dfebda5ca5c8d25917ad9721d5ed6] +~> TaskHandler[id: 10; name: TISSUE_DISTRIBUTION (1); status: RUNNING; exit: -; error: -; workDir: /data/bugra/digital_trials/work/80/5291a1b8a9df4f84137206aab3afef] +~> TaskHandler[id: 9; name: BIO_METRICS (1); status: RUNNING; exit: -; error: -; workDir: /data/bugra/digital_trials/work/b1/0c641f36428a66f82eaaca889dfcc4] +Feb-18 08:21:36.580 [Task monitor] DEBUG n.processor.TaskPollingMonitor - Task completed > TaskHandler[id: 9; name: BIO_METRICS (1); status: COMPLETED; exit: 0; error: -; workDir: /data/bugra/digital_trials/work/b1/0c641f36428a66f82eaaca889dfcc4] +Feb-18 08:21:45.303 [Task monitor] DEBUG n.processor.TaskPollingMonitor - Task completed > TaskHandler[id: 8; name: CONPLEX_ALL (2); status: COMPLETED; exit: 0; error: -; workDir: /data/bugra/digital_trials/work/a8/9dfebda5ca5c8d25917ad9721d5ed6] +Feb-18 08:21:45.329 [Task submitter] DEBUG n.executor.local.LocalTaskHandler - Launch cmd line: /bin/bash -ue .command.run +Feb-18 08:21:45.330 [Task submitter] INFO nextflow.Session - [c7/e9aec0] Submitted process > TISSUE_DISTRIBUTION (2) +Feb-18 08:21:45.337 [Task submitter] DEBUG n.executor.local.LocalTaskHandler - Launch cmd line: /bin/bash -ue .command.run +Feb-18 08:21:45.337 [Task submitter] INFO nextflow.Session - [59/c2fca6] Submitted process > BIO_METRICS (2) +Feb-18 08:21:45.342 [Task submitter] DEBUG n.executor.local.LocalTaskHandler - Launch cmd line: /bin/bash -ue .command.run +Feb-18 08:21:45.343 [Task submitter] INFO nextflow.Session - [85/b01dc2] Submitted process > NETWORK_ENRICHMENT (2) +Feb-18 08:21:53.257 [Task monitor] DEBUG n.processor.TaskPollingMonitor - Task completed > TaskHandler[id: 13; name: NETWORK_ENRICHMENT (2); status: COMPLETED; exit: 0; error: -; workDir: /data/bugra/digital_trials/work/85/b01dc209496674d3dc3d3272884c01] +Feb-18 08:22:17.459 [Task monitor] DEBUG n.processor.TaskPollingMonitor - Task completed > TaskHandler[id: 12; name: BIO_METRICS (2); status: COMPLETED; exit: 0; error: -; workDir: /data/bugra/digital_trials/work/59/c2fca62fef3a938fdbc8b0223f741d] +Feb-18 08:22:50.627 [Task monitor] DEBUG n.processor.TaskPollingMonitor - Task completed > TaskHandler[id: 10; name: TISSUE_DISTRIBUTION (1); status: COMPLETED; exit: 0; error: -; workDir: /data/bugra/digital_trials/work/80/5291a1b8a9df4f84137206aab3afef] +Feb-18 08:23:28.694 [Task monitor] DEBUG n.processor.TaskPollingMonitor - Task completed > TaskHandler[id: 14; name: TISSUE_DISTRIBUTION (2); status: COMPLETED; exit: 0; error: -; workDir: /data/bugra/digital_trials/work/c7/e9aec0a45e4143e662078f6751029f] +Feb-18 08:24:20.543 [Task monitor] DEBUG n.processor.TaskPollingMonitor - Task completed > TaskHandler[id: 1; name: HUMAN_TRANSFORMER (1); status: COMPLETED; exit: 0; error: -; workDir: /data/bugra/digital_trials/work/ac/d9d808f5e7ff0bc9ce47fce956e109] +Feb-18 08:24:20.570 [Task submitter] DEBUG n.executor.local.LocalTaskHandler - Launch cmd line: /bin/bash -ue .command.run +Feb-18 08:24:20.571 [Task submitter] INFO nextflow.Session - [81/2dab34] Submitted process > GET_FINAL_METABOLITES_STATIC (3) +Feb-18 08:24:28.312 [Task monitor] DEBUG n.processor.TaskPollingMonitor - Task completed > TaskHandler[id: 15; name: GET_FINAL_METABOLITES_STATIC (3); status: COMPLETED; exit: 0; error: -; workDir: /data/bugra/digital_trials/work/81/2dab347a00f1c46abab44c67984a92] +Feb-18 08:24:28.339 [Task submitter] DEBUG n.executor.local.LocalTaskHandler - Launch cmd line: /bin/bash -ue .command.run +Feb-18 08:24:28.340 [Task submitter] INFO nextflow.Session - [c7/3c6e3d] Submitted process > CONPLEX_ALL (3) +Feb-18 08:25:56.687 [Task monitor] DEBUG n.processor.TaskPollingMonitor - Task completed > TaskHandler[id: 16; name: CONPLEX_ALL (3); status: COMPLETED; exit: 0; error: -; workDir: /data/bugra/digital_trials/work/c7/3c6e3d019680ae4510c31fc27d9df0] +Feb-18 08:25:56.912 [Task submitter] DEBUG n.executor.local.LocalTaskHandler - Launch cmd line: /bin/bash -ue .command.run +Feb-18 08:25:56.913 [Task submitter] INFO nextflow.Session - [81/f77500] Submitted process > TISSUE_DISTRIBUTION (3) +Feb-18 08:25:56.920 [Task submitter] DEBUG n.executor.local.LocalTaskHandler - Launch cmd line: /bin/bash -ue .command.run +Feb-18 08:25:56.921 [Task submitter] INFO nextflow.Session - [6d/83c7a3] Submitted process > NETWORK_ENRICHMENT (3) +Feb-18 08:25:56.930 [Task submitter] DEBUG n.executor.local.LocalTaskHandler - Launch cmd line: /bin/bash -ue .command.run +Feb-18 08:25:56.931 [Task submitter] INFO nextflow.Session - [60/56dbb4] Submitted process > BIO_METRICS (3) +Feb-18 08:26:05.728 [Task monitor] DEBUG n.processor.TaskPollingMonitor - Task completed > TaskHandler[id: 18; name: NETWORK_ENRICHMENT (3); status: COMPLETED; exit: 0; error: -; workDir: /data/bugra/digital_trials/work/6d/83c7a3352024b70f27bbb97877137d] +Feb-18 08:26:36.497 [Task monitor] DEBUG n.processor.TaskPollingMonitor - !! executor local > tasks to be completed: 3 -- submitted tasks are shown below +~> TaskHandler[id: 2; name: HUMAN_TRANSFORMER (2); status: RUNNING; exit: -; error: -; workDir: /data/bugra/digital_trials/work/10/6b721ff03cf9bb6fdc069b2318e358] +~> TaskHandler[id: 19; name: TISSUE_DISTRIBUTION (3); status: RUNNING; exit: -; error: -; workDir: /data/bugra/digital_trials/work/81/f775001059255636bc93e7534e6f1b] +~> TaskHandler[id: 17; name: BIO_METRICS (3); status: RUNNING; exit: -; error: -; workDir: /data/bugra/digital_trials/work/60/56dbb481dcd9014f733e6adcd305ac] +Feb-18 08:28:21.708 [Task monitor] DEBUG n.processor.TaskPollingMonitor - Task completed > TaskHandler[id: 17; name: BIO_METRICS (3); status: COMPLETED; exit: 0; error: -; workDir: /data/bugra/digital_trials/work/60/56dbb481dcd9014f733e6adcd305ac] +Feb-18 08:29:23.190 [Task monitor] DEBUG n.processor.TaskPollingMonitor - Task completed > TaskHandler[id: 19; name: TISSUE_DISTRIBUTION (3); status: COMPLETED; exit: 0; error: -; workDir: /data/bugra/digital_trials/work/81/f775001059255636bc93e7534e6f1b] +Feb-18 08:31:36.595 [Task monitor] DEBUG n.processor.TaskPollingMonitor - !! executor local > tasks to be completed: 1 -- submitted tasks are shown below +~> TaskHandler[id: 2; name: HUMAN_TRANSFORMER (2); status: RUNNING; exit: -; error: -; workDir: /data/bugra/digital_trials/work/10/6b721ff03cf9bb6fdc069b2318e358] +Feb-18 08:36:36.600 [Task monitor] DEBUG n.processor.TaskPollingMonitor - !! executor local > tasks to be completed: 1 -- submitted tasks are shown below +~> TaskHandler[id: 2; name: HUMAN_TRANSFORMER (2); status: RUNNING; exit: -; error: -; workDir: /data/bugra/digital_trials/work/10/6b721ff03cf9bb6fdc069b2318e358] +Feb-18 08:41:36.633 [Task monitor] DEBUG n.processor.TaskPollingMonitor - !! executor local > tasks to be completed: 1 -- submitted tasks are shown below +~> TaskHandler[id: 2; name: HUMAN_TRANSFORMER (2); status: RUNNING; exit: -; error: -; workDir: /data/bugra/digital_trials/work/10/6b721ff03cf9bb6fdc069b2318e358] +Feb-18 08:45:15.975 [Task monitor] DEBUG n.processor.TaskPollingMonitor - Task completed > TaskHandler[id: 2; name: HUMAN_TRANSFORMER (2); status: COMPLETED; exit: 0; error: -; workDir: /data/bugra/digital_trials/work/10/6b721ff03cf9bb6fdc069b2318e358] +Feb-18 08:45:15.999 [Task submitter] DEBUG n.executor.local.LocalTaskHandler - Launch cmd line: /bin/bash -ue .command.run +Feb-18 08:45:16.001 [Task submitter] INFO nextflow.Session - [ca/ecd442] Submitted process > GET_FINAL_METABOLITES_STATIC (4) +Feb-18 08:45:36.006 [Task monitor] DEBUG n.processor.TaskPollingMonitor - Task completed > TaskHandler[id: 20; name: GET_FINAL_METABOLITES_STATIC (4); status: COMPLETED; exit: 0; error: -; workDir: /data/bugra/digital_trials/work/ca/ecd44260f39786b4230f8c7740d148] +Feb-18 08:45:36.037 [Task submitter] DEBUG n.executor.local.LocalTaskHandler - Launch cmd line: /bin/bash -ue .command.run +Feb-18 08:45:36.038 [Task submitter] INFO nextflow.Session - [46/a43ec7] Submitted process > CONPLEX_ALL (4) +Feb-18 08:46:36.691 [Task monitor] DEBUG n.processor.TaskPollingMonitor - !! executor local > tasks to be completed: 1 -- submitted tasks are shown below +~> TaskHandler[id: 21; name: CONPLEX_ALL (4); status: RUNNING; exit: -; error: -; workDir: /data/bugra/digital_trials/work/46/a43ec7ee9aa22e1e774cee2c12ad30] +Feb-18 08:47:29.226 [Task monitor] DEBUG n.processor.TaskPollingMonitor - Task completed > TaskHandler[id: 21; name: CONPLEX_ALL (4); status: COMPLETED; exit: 0; error: -; workDir: /data/bugra/digital_trials/work/46/a43ec7ee9aa22e1e774cee2c12ad30] +Feb-18 08:47:29.251 [Task submitter] DEBUG n.executor.local.LocalTaskHandler - Launch cmd line: /bin/bash -ue .command.run +Feb-18 08:47:29.252 [Task submitter] INFO nextflow.Session - [cc/bb7703] Submitted process > TISSUE_DISTRIBUTION (4) +Feb-18 08:47:29.261 [Task submitter] DEBUG n.executor.local.LocalTaskHandler - Launch cmd line: /bin/bash -ue .command.run +Feb-18 08:47:29.262 [Task submitter] INFO nextflow.Session - [31/fe7897] Submitted process > NETWORK_ENRICHMENT (4) +Feb-18 08:47:29.273 [Task submitter] DEBUG n.executor.local.LocalTaskHandler - Launch cmd line: /bin/bash -ue .command.run +Feb-18 08:47:29.274 [Task submitter] INFO nextflow.Session - [4b/086a46] Submitted process > BIO_METRICS (4) +Feb-18 08:47:39.063 [Task monitor] DEBUG n.processor.TaskPollingMonitor - Task completed > TaskHandler[id: 24; name: NETWORK_ENRICHMENT (4); status: COMPLETED; exit: 0; error: -; workDir: /data/bugra/digital_trials/work/31/fe78970d1a3fa2033c4c4ace31eeea] +Feb-18 08:50:24.140 [Task monitor] DEBUG n.processor.TaskPollingMonitor - Task completed > TaskHandler[id: 22; name: TISSUE_DISTRIBUTION (4); status: COMPLETED; exit: 0; error: -; workDir: /data/bugra/digital_trials/work/cc/bb7703233cc2a65dbcc3a2cba4229f] +Feb-18 08:50:34.666 [Task monitor] DEBUG n.processor.TaskPollingMonitor - Task completed > TaskHandler[id: 23; name: BIO_METRICS (4); status: COMPLETED; exit: 0; error: -; workDir: /data/bugra/digital_trials/work/4b/086a4619532ee364d68e77bd33000f] +Feb-18 08:50:34.672 [main] DEBUG nextflow.Session - Session await > all processes finished +Feb-18 08:50:34.768 [Task monitor] DEBUG n.processor.TaskPollingMonitor - <<< barrier arrives (monitor: local) - terminating tasks monitor poll loop +Feb-18 08:50:34.768 [main] DEBUG nextflow.Session - Session await > all barriers passed +Feb-18 08:50:34.775 [main] DEBUG nextflow.util.ThreadPoolManager - Thread pool 'TaskFinalizer' shutdown completed (hard=false) +Feb-18 08:50:34.776 [main] DEBUG nextflow.util.ThreadPoolManager - Thread pool 'PublishDir' shutdown completed (hard=false) +Feb-18 08:50:34.789 [main] DEBUG n.trace.WorkflowStatsObserver - Workflow completed > WorkflowStats[succeededCount=24; failedCount=0; ignoredCount=0; cachedCount=0; pendingCount=0; submittedCount=0; runningCount=0; retriesCount=0; abortedCount=0; succeedDuration=1h 6m 51s; failedDuration=0ms; cachedDuration=0ms;loadCpus=0; loadMemory=0; peakRunning=6; peakCpus=6; peakMemory=26 GB; ] +Feb-18 08:50:34.967 [main] DEBUG nextflow.cache.CacheDB - Closing CacheDB done +Feb-18 08:50:35.030 [main] INFO org.pf4j.AbstractPluginManager - Stop plugin 'nf-tower@1.11.3' +Feb-18 08:50:35.030 [main] DEBUG nextflow.plugin.BasePlugin - Plugin stopped nf-tower +Feb-18 08:50:35.032 [main] DEBUG nextflow.util.ThreadPoolManager - Thread pool 'FileTransfer' shutdown completed (hard=false) +Feb-18 08:50:35.033 [main] DEBUG nextflow.script.ScriptRunner - > Execution complete -- Goodbye diff --git a/.nextflow.pid b/.nextflow.pid new file mode 100755 index 0000000..1447d0d --- /dev/null +++ b/.nextflow.pid @@ -0,0 +1 @@ +1195666 diff --git a/CLAUDE.md b/CLAUDE.md new file mode 100644 index 0000000..f4bed56 --- /dev/null +++ b/CLAUDE.md @@ -0,0 +1,121 @@ +# CLAUDE.md + +This file provides guidance to Claude Code (claude.ai/code) when working with code in this repository. + +## What This Is + +Digital Trials is a Nextflow pipeline that simulates drug-protein interactions for digital clinical trials. Given a drug (as SMILES), it predicts metabolites, screens the drug and its metabolites against a proteome, performs pathway enrichment, and maps tissue distribution of interacting proteins. + +## Running the Pipeline + +```bash +# Local test run (uses params defined in main.nf) +nextflow run main.nf + +# With parameter file for cluster runs +nextflow run main.nf -params-file params/input_to_run.json + +# Kubernetes via Tower +export TOWER_ACCESS_TOKEN=68358d90995ae27fe78b4c1818f9f0097d834b00 +nextflow run main.nf -profile k8s -with-tower https://tower.stg.cluster.omic.ai/api -params-file params/input_to_run.json +``` + +## Building Containers + +```bash +# Build and tag individual containers via docker-compose +docker-compose build tissue +docker-compose build chembl +docker-compose build network + +# Images push to harbor.cluster.omic.ai/omic/digitaltrials/ +``` + +Each pipeline step has its own Dockerfile: `Dockerfile_biotransformer`, `Dockerfile_conplex`, `Dockerfile_tissue`, `Dockerfile_chembl`, `Dockerfile_network`. + +## Pipeline Architecture + +The pipeline is orchestrated in `main.nf` (entry point and parameter definitions) and composed from three module files: + +### Stage 1: Metabolite Prediction (`main_biotransformer.nf`) +- **HUMAN_TRANSFORMER** — Runs BioTransformer (Java) to predict human metabolites from input SMILES. Only `HUMAN` mode is fully implemented. +- **GET_FINAL_METABOLITES_STATIC** — Filters to terminal metabolites (not precursors), checks against local ChEMBL SQLite DB and PubChem, outputs canonical SMILES list. + +### Stage 2: Proteome Screening (`main_conplex.nf`) +- **PREPROCESS_PROTEIN** — Merges patient FASTA files and projects them into a Zarr vector store (GPU, uses `/app/project.py` inside container). +- **CONPLEX** — Screens drug + metabolite SMILES against protein Zarr DBs using ConPLex model. Runs `/app/convert.py`, `/app/screen.py`, `/app/get_round_2.py` inside the `metabolite-screen` container. Outputs drug scores and significant interactions TSVs. +- **NETWORK_ENRICHMENT** — Queries STRING DB API for pathway enrichment and protein-protein interactions from significant hits. + +### Stage 3: Tissue & Biological Properties (`main_tissue.nf`) +- **TISSUE_DISTRIBUTION** — Maps interacting proteins to tissue expression using HPA data (`drug_tissue_distribution.py`). +- **BIO_METRICS** — Aggregates biological properties across metabolites, drug scores, and interactions (`digital_patient_extract_metrics.py`). + +### Data Flow +``` +Input CSVs (SMILES+TARGET) → HUMAN_TRANSFORMER → GET_FINAL_METABOLITES_STATIC + ↓ +Patient FASTA → PREPROCESS_PROTEIN → Zarr ──→ CONPLEX (drug + metabolites vs proteome) +Pre-built Zarr ─────────────────────────↗ ↓ ↓ + NETWORK_ENRICHMENT TISSUE_DISTRIBUTION + ↓ + BIO_METRICS +``` + +Channels are joined by ligand ID (CSV `simpleName`), ensuring each drug's metabolites are matched to the correct ConPLex screening run. + +## Key Parameters (in `main.nf`) + +| Parameter | Purpose | Default | +|-----------|---------|---------| +| `params.mode` | BioTransformer mode — **use `HUMAN` only** | `HUMAN` | +| `params.threshold` | ConPLex binding score cutoff for significant interactions | `0.65` | +| `params.protein_network_threshold` | STRING DB enrichment cutoff | `0.65` | +| `params.keep_enst` | Keep per-protein Zarr results from ConPLex | `false` | +| `params.ligands` | Input directory of per-compound CSV files | — | +| `params.mutated_protein_fasta` | Directory of patient-specific FASTA files (or `blank`) | — | +| `params.protein_zarr` | Pre-built protein sequence Zarr DB | — | +| `params.chembl_db` | Path to ChEMBL SQLite database file | — | +| `params.outdir` | Output root directory | — | +| `params.bt_initial_memory` | Biotransformer starting memory (GB) | `5` | +| `params.bt_growth_memory` | Biotransformer additional memory per retry (GB) | `15` | +| `params.bt_max_retries` | Biotransformer max retry attempts | `10` | +| `params.bt_fail_action` | Biotransformer failure strategy: `'terminate'` or `'ignore'` | `'terminate'` | +| `params.conplex_initial_memory` | ConPLex starting memory (GB) | `5` | +| `params.conplex_growth_memory` | ConPLex additional memory per retry (GB) | `15` | +| `params.conplex_max_retries` | ConPLex max retry attempts | `1` | +| `params.conplex_fail_action` | ConPLex failure strategy: `'terminate'` or `'ignore'` | `'ignore'` | + +## Nextflow Gotchas + +- Params loaded from JSON are strings — use `.toInteger()` when used in resource directives (e.g., `memory`, `maxRetries`) +- `main.nf` defines all default param values; params files only need to override what they change + +## Sub-pipeline: Metabolite Screen Adaptive + +`nf_metabol_screen_adaptive/` is a standalone Nextflow pipeline for ConPLex-based metabolite screening. It has its own `main.nf`, `test.nf`, `Dockerfile`, and `nextflow.config`. Used for development/testing of the screening step independently. + +## Container Registry + +All images are at `harbor.cluster.omic.ai/omic/digitaltrials/`. Container refs in `main.nf` use sha256 digests for reproducibility (except tissue which uses version tags). When updating containers, pin to a digest or explicit version tag. + +## Input Format + +Per-compound `.csv` files named by identifier (e.g., InChIKey). 4-line key-value format: +``` +SMILES + +TARGET + +``` + +Input directories are under `/data/digital-trials-data/` (e.g., `input_to_run/`, `input_knowen_target/`, `input_new/input/`). +See also `/data/runs/docs/digital-trials-input-format.md` for format details. + +## Output Structure + +Results are organized under `{outdir}/{project_name}/`: +- `1_biotransformer/` — Raw metabolite predictions +- `1b_final_metabolites/` — Filtered terminal metabolites +- `2_conplex/` — Drug scores and significant interaction TSVs +- `3_string/` — Network enrichment and interaction TSVs +- `4_tissue_distribution/` — Tissue distribution and biological properties TSVs diff --git a/Dockerfile_biotransformer b/Dockerfile_biotransformer new file mode 100755 index 0000000..f55036c --- /dev/null +++ b/Dockerfile_biotransformer @@ -0,0 +1,71 @@ +FROM debian:bullseye-slim + +USER root + +SHELL ["/bin/bash", "-c"] +WORKDIR /home +RUN mkdir -p /home/omic +WORKDIR /home/omic +ARG DEBIAN_FRONTEND=noninteractive + +RUN apt update -y && apt-get install -y --no-install-recommends \ + build-essential \ + cmake \ + curl \ + git \ + wget \ + ca-certificates \ + default-jre \ + unzip \ + && apt-get clean \ + && rm -rf /var/lib/apt/lists/* + +RUN wget https://repo.anaconda.com/miniconda/Miniconda3-latest-Linux-x86_64.sh -O miniconda.sh \ + && bash miniconda.sh -b -p /opt/conda \ + && rm miniconda.sh \ + && ln -s /opt/conda/etc/profile.d/conda.sh /etc/profile.d/conda.sh \ + && echo ". /opt/conda/etc/profile.d/conda.sh" >> ~/.bashrc \ + && echo "conda activate base" >> ~/.bashrc \ + && find /opt/conda/ -follow -type f -name '*.a' -delete \ + && find /opt/conda/ -follow -type f -name '*.js.map' -delete \ + && /opt/conda/bin/conda clean -afy + +ENV PATH /opt/conda/bin:$PATH + +# main conda env (biotransformer) +RUN conda create -n biotransformer +ENV PATH="$PATH:/opt/conda/envs/biotransformer/bin" +RUN echo "source activate biotransformer" >> ~/.bashrc +RUN conda clean --all -f -y + +# Install RDKit +RUN conda install -y -n biotransformer -c conda-forge rdkit + +WORKDIR /home/omic +# RUN wget https://bitbucket.org/wishartlab/biotransformer3.0jar/get/6432cf887ed7.zip && \ +# unzip 6432cf887ed7.zip && \ +# rm 6432cf887ed7.zip && \ +# mv wishartlab-biotransformer3.0jar-6432cf887ed7 biotransformer + +# RUN git clone https://github.com/Wishartlab-openscience/Biotransformer.git && \ +# mv Biotransformer biotransformer +RUN git clone https://bitbucket.org/wishartlab/biotransformer3.0jar biotransformer && mv biotransformer/BioTransformer3.0_20230525.jar biotransformer/biotransformer +WORKDIR /home/omic/biotransformer +# RUN wget https://bitbucket.org/wishartlab/biotransformer3.0jar/raw/6432cf887ed70c7c943c2dfeb60298ccdc788d7d/BioTransformer3.0_20230525.jar && \ +# mv BioTransformer3.0_20230525.jar biotransformer && \ +# chmod +x biotransformer +ENV PATH="$PATH:/home/omic/biotransformer" + +# Create a symlink from /home/omic/biotransformer/database to /home/omic/biotransformer/btkb +RUN ln -s /home/omic/biotransformer/database /home/omic/biotransformer/btkb + +## Test +# RUN java -jar biotransformer -multiThread "2 example.csv 36000 3 1 true" + +#Download The Human Metabolome Database smiles +RUN wget https://hmdb.ca/system/downloads/current/structures.zip +RUN unzip structures.zip + + +#install pandas and requests +RUN conda install -y -n biotransformer -c conda-forge pandas requests diff --git a/Dockerfile_chembl b/Dockerfile_chembl new file mode 100644 index 0000000..0473457 --- /dev/null +++ b/Dockerfile_chembl @@ -0,0 +1,15 @@ +FROM mambaorg/micromamba:2.1.1 + +USER root + +ARG MAMBA_DOCKERFILE_ACTIVATE=1 + +RUN micromamba install -n base -y -c conda-forge --channel-priority flexible \ + python=3.12 \ + numpy \ + pandas \ + rdkit \ + procps-ng + +# Note: No need for requests or chembl-downloader in the container +# since we're passing the pre-downloaded database as input \ No newline at end of file diff --git a/Dockerfile_conplex b/Dockerfile_conplex new file mode 100755 index 0000000..141c2cc --- /dev/null +++ b/Dockerfile_conplex @@ -0,0 +1,127 @@ +ARG CUDA=11.7 +FROM nvidia/cuda:${CUDA}.1-cudnn8-devel-ubuntu22.04 + +USER root +SHELL ["/bin/bash", "-c"] + +WORKDIR /home +RUN mkdir -p /home/omic +WORKDIR /home/omic + +ARG DEBIAN_FRONTEND=noninteractive +RUN apt-get update -y && apt-get install -y --no-install-recommends \ + build-essential \ + cmake \ + curl \ + git \ + wget \ + ca-certificates \ + hmmer \ + kalign \ + tzdata \ + && apt-get clean \ + && rm -rf /var/lib/apt/lists/* + +# Add the NVIDIA GPG key directly +RUN wget https://developer.download.nvidia.com/compute/cuda/repos/ubuntu2204/x86_64/cuda-keyring_1.0-1_all.deb +RUN dpkg -i cuda-keyring_1.0-1_all.deb && rm cuda-keyring_1.0-1_all.deb +RUN apt-get -y update && \ + apt-get install -y --no-install-recommends cuda-command-line-tools-11-7 + +RUN wget https://repo.anaconda.com/miniconda/Miniconda3-latest-Linux-x86_64.sh -O miniconda.sh \ + && bash miniconda.sh -b -p /opt/conda \ + && rm miniconda.sh \ + && ln -s /opt/conda/etc/profile.d/conda.sh /etc/profile.d/conda.sh \ + && echo ". /opt/conda/etc/profile.d/conda.sh" >> ~/.bashrc \ + && echo "conda activate base" >> ~/.bashrc \ + && find /opt/conda/ -follow -type f -name '*.a' -delete \ + && find /opt/conda/ -follow -type f -name '*.js.map' -delete \ + && /opt/conda/bin/conda clean -afy + +ENV PATH /opt/conda/bin:$PATH +RUN conda update -y -n base -c defaults conda + +# main conda env (conplex) +RUN conda create -n conplex-dti python=3.9 +ENV PATH "$PATH:/opt/conda/envs/conplex-dti/bin" +RUN echo "source activate conplex-dti" >> ~/.bashrc +RUN conda clean --all -f -y + +# main conda env (secse) +#RUN conda create --name secse -c conda-forge parallel tqdm biopandas openbabel chemprop xlrd=2 pandarallel python=3.9 perl=5.32 +#RUN conda install -y -n secse -c conda-forge pandas=1.3.5 +#RUN conda install -y -n secse -c conda-forge rdkit=2022.03.5 +#RUN echo "conda activate secse" >> ~/.bashrc +#ENV PATH="$PATH:/opt/conda/envs/secse/bin" +#ARG PATH="$PATH:/opt/conda/envs/secse/bin" + +RUN git clone https://github.com/samsledje/ConPLex.git +WORKDIR /home/omic/ConPLex + +# Install conplex +RUN apt-get -y update && apt-get install -y ca-certificates && update-ca-certificates +RUN /opt/conda/envs/conplex-dti/bin/python3 -m pip install conplex-dti +RUN conplex-dti --help + +# Package into python script for running in nextflow +COPY conplex.py /home/omic/ConPLex/conplex.py +RUN chmod +x /home/omic/ConPLex/conplex.py + +# Install pretrained models +RUN mkdir -p /home/omic/ConPLex/models +RUN wget --no-check-certificate -O /home/omic/ConPLex/models/ConPLex_v1_BindingDB.pt https://cb.csail.mit.edu/cb/conplex/data/models/BindingDB_ExperimentalValidModel.pt + +# Test +RUN conplex-dti predict --data-file /home/omic/ConPLex/tests/toy_predict.tsv --model-path /home/omic/ConPLex/models/ConPLex_v1_BindingDB.pt --outfile ./results.tsv + +#copy protein reference trascipt fasta file +COPY ensemble_reference.fasta . +COPY MANE_referent_transcipt_reference.fasta . +COPY MANE_all_transcipts.csv . +COPY get_round_2.py . +RUN chmod +x /home/omic/ConPLex/get_round_2.py +#new model weights +COPY Run_best_model_epoch46.pt /home/omic/ConPLex/models/ + + +# Fix predict.py not working on single protein-ligand complex +#COPY predict.py /home/omic/ConPLex/conplex_dti/cli/predict.py +#COPY predict.py /opt/conda/envs/conplex-dti/lib/python3.9/site-packages/conplex_dti/cli/predict.py +#RUN chmod +x /home/omic/ConPLex/conplex_dti/cli/predict.py +#RUN chmod +x /opt/conda/envs/conplex-dti/lib/python3.9/site-packages/conplex_dti/cli/predict.py + +# Clone secse +#RUN git clone https://github.com/KeenThera/SECSE.git +#RUN mv /home/omic/ConPLex/SECSE/secse /home/omic/ConPLex/secse && rm -r /home/omic/ConPLex/SECSE && rm -r /home/omic/ConPLex/secse/scoring +#COPY secse/scoring /home/omic/ConPLex/secse/scoring +#COPY secse/grow_processes.py /home/omic/ConPLex/secse/scoring/grow_processes.py +#RUN chmod +x /home/omic/ConPLex/secse/grow_processes.py +#RUN chmod +x /home/omic/ConPLex/secse/scoring/ranking.py +#RUN chmod +x /home/omic/ConPLex/secse/growing/mutation/mutation.py + +# Add missing boost +#RUN conda install -n secse -c conda-forge boost + +# Install CREM for chemical growth +#RUN git clone https://github.com/DrrDom/crem.git +#RUN /opt/conda/envs/conplex-dti/bin/python3 -m pip install crem pandas numpy + +#WORKDIR /home/omic/ConPLex +#RUN chmod -R +x /home/omic/ConPLex + +#ENV PATH="$PATH:/opt/conda/envs/secse/bin:/home/omic/ConPLex/secse" +#ENV SECSE="/home/omic/ConPLex/secse" +#ENV PYTHONPATH="PYTHONPATH=/home/omic/ConPLex/secse:/home/omic/ConPLex:/home/omic/ConPLex/crem" +#ARG PYTHONPATH="PYTHONPATH=/home/omic/ConPLex/secse:/home/omic/ConPLex:/home/omic/ConPLex/crem" + +# Package into python script for running in nextflow +#COPY conplex.py /home/omic/ConPLex/conplex.py +#RUN chmod +x /home/omic/ConPLex/conplex.py + +#Mutation file +#RUN /opt/conda/envs/conplex-dti/bin/python3 -m pip install crem +#RUN wget https://www.dropbox.com/s/4r48ohopechsd59/replacements02_sa2.db.gz?dl=0 +#RUN mv replacements02_sa2.db.gz?dl=0 replacements02_sa2.db.gz +#RUN gzip -d replacements02_sa2.db.gz +#COPY fragment_mutations.py /home/omic/ConPLex/fragment_mutations.py +#RUN chmod +x /home/omic/ConPLex/fragment_mutations.py diff --git a/Dockerfile_network b/Dockerfile_network new file mode 100644 index 0000000..3682741 --- /dev/null +++ b/Dockerfile_network @@ -0,0 +1,21 @@ +FROM mambaorg/micromamba:2.1.1 + +USER root + +ARG MAMBA_DOCKERFILE_ACTIVATE=1 + +RUN micromamba install -n base -y -c conda-forge -c bioconda --channel-priority flexible \ + python=3.12 \ + numpy \ + pandas \ + scipy \ + r-base=4.3 \ + bioconductor-stringdb \ + r-tidyverse \ + r-argparser \ + r-sqldf \ + r-rsqlite \ + r-argparse \ + procps-ng + +COPY ./app_network /app \ No newline at end of file diff --git a/Dockerfile_tissue b/Dockerfile_tissue new file mode 100755 index 0000000..1c01b67 --- /dev/null +++ b/Dockerfile_tissue @@ -0,0 +1,20 @@ +# Use the specified Micromamba base image with CUDA 11.7 +FROM mambaorg/micromamba:2.1.1 + + +USER root +ARG MAMBA_DOCKERFILE_ACTIVATE=1 + + +RUN micromamba install -y python=3.9 procps-ng pandas numpy && \ + pip install pandas numpy && \ + micromamba clean --all --yes + + +# Package into python script for running in nextflow +COPY drug_tissue_distribution.py /home/omic/drug_tissue_distribution.py + +# Copy reference files +COPY HPA_normal_ihc_data.tsv /home/omic/ +COPY MANE_all_transcipts.csv /home/omic/ +COPY digital_patient_extract_metrics.py /home/omic/ \ No newline at end of file diff --git a/Dockerfile_tissue.old b/Dockerfile_tissue.old new file mode 100755 index 0000000..d79bdd0 --- /dev/null +++ b/Dockerfile_tissue.old @@ -0,0 +1,61 @@ +ARG CUDA=11.7 +FROM nvidia/cuda:${CUDA}.1-cudnn8-devel-ubuntu22.04 + +USER root +SHELL ["/bin/bash", "-c"] + +WORKDIR /home +RUN mkdir -p /home/omic +WORKDIR /home/omic + +ARG DEBIAN_FRONTEND=noninteractive +RUN apt-get update -y && apt-get install -y --no-install-recommends \ + build-essential \ + cmake \ + curl \ + git \ + wget \ + ca-certificates \ + hmmer \ + kalign \ + tzdata \ + && apt-get clean \ + && rm -rf /var/lib/apt/lists/* + +# Add the NVIDIA GPG key directly +RUN wget https://developer.download.nvidia.com/compute/cuda/repos/ubuntu2204/x86_64/cuda-keyring_1.0-1_all.deb +RUN dpkg -i cuda-keyring_1.0-1_all.deb && rm cuda-keyring_1.0-1_all.deb +RUN apt-get -y update && \ + apt-get install -y --no-install-recommends cuda-command-line-tools-11-7 + +RUN wget https://repo.anaconda.com/miniconda/Miniconda3-latest-Linux-x86_64.sh -O miniconda.sh \ + && bash miniconda.sh -b -p /opt/conda \ + && rm miniconda.sh \ + && ln -s /opt/conda/etc/profile.d/conda.sh /etc/profile.d/conda.sh \ + && echo ". /opt/conda/etc/profile.d/conda.sh" >> ~/.bashrc \ + && echo "conda activate base" >> ~/.bashrc \ + && find /opt/conda/ -follow -type f -name '*.a' -delete \ + && find /opt/conda/ -follow -type f -name '*.js.map' -delete \ + && /opt/conda/bin/conda clean -afy + +ENV PATH /opt/conda/bin:$PATH +RUN conda update -y -n base -c defaults conda + +# main conda env (tissue) +RUN conda create -n tissue python=3.9 +ENV PATH "$PATH:/opt/conda/envs/tissue/bin" +RUN echo "source activate tissue" >> ~/.bashrc +RUN conda clean --all -f -y + +# Install packages +RUN apt-get -y update && apt-get install -y ca-certificates && update-ca-certificates +RUN /opt/conda/envs/tissue/bin/python3 -m pip install pandas numpy + +# Package into python script for running in nextflow +COPY drug_tissue_distribution.py /home/omic/drug_tissue_distribution.py +RUN chmod +x /home/omic/drug_tissue_distribution.py + +# copy reference file +COPY HPA_normal_ihc_data.tsv . +COPY MANE_all_transcipts.csv . +COPY digital_patient_extract_metrics.py . diff --git a/Dockerfile_tissue.old2 b/Dockerfile_tissue.old2 new file mode 100755 index 0000000..965fca0 --- /dev/null +++ b/Dockerfile_tissue.old2 @@ -0,0 +1,56 @@ +# Use the specified Micromamba base image with CUDA 11.7 +FROM mambaorg/micromamba:2.1.1-cuda11.7.1-ubuntu20.04 + + +USER root +ARG MAMBA_DOCKERFILE_ACTIVATE=1 + +# WORKDIR /home +# RUN mkdir -p /home/omic +WORKDIR /home/omic + +# Install system packages +ARG DEBIAN_FRONTEND=noninteractive +RUN micromamba install -y python=3.9 pandas numpy && \ + pip install pandas numpy && \ + micromamba clean --all --yes + +# Add the NVIDIA GPG key directly +RUN apt-get -y update \ + && apt-get install -y --no-install-recommends \ + build-essential \ + cmake \ + curl \ + git \ + wget \ + ca-certificates \ + hmmer \ + kalign \ + tzdata \ + && wget https://developer.download.nvidia.com/compute/cuda/repos/ubuntu2204/x86_64/cuda-keyring_1.0-1_all.deb \ + && dpkg -i cuda-keyring_1.0-1_all.deb && rm cuda-keyring_1.0-1_all.deb \ + && apt-get install -y --no-install-recommends cuda-command-line-tools-11-7 \ + && apt-get clean \ + && rm -rf /var/lib/apt/lists/* + + +# Switch to the mamba user for micromamba operations +# USER $MAMBA_USER +# WORKDIR /home/omic + +# Install Python and packages into the base environment + +# Activate the base environment for subsequent RUN commands +# ARG MAMBA_DOCKERFILE_ACTIVATE=1 + +# # Install Python packages with pip (now runs in the activated environment) +# RUN python -m pip install pandas numpy + +# Package into python script for running in nextflow +COPY drug_tissue_distribution.py /home/omic/drug_tissue_distribution.py +RUN chmod +x /home/omic/drug_tissue_distribution.py + +# Copy reference files +COPY HPA_normal_ihc_data.tsv . +COPY MANE_all_transcipts.csv . +COPY digital_patient_extract_metrics.py . \ No newline at end of file diff --git a/Note.txt b/Note.txt new file mode 100755 index 0000000..15cdebd --- /dev/null +++ b/Note.txt @@ -0,0 +1,5 @@ +Add options for metabolites not existing and process failed +Remove unnecessary data while process is running, take up too much memory + + +ncbiproteins_seq_exist.csv is replaced with ncbiproteins_seq_exist_reduce.csv so it will be able to fit to gitlab diff --git a/app_network/network.r b/app_network/network.r new file mode 100644 index 0000000..6f9003b --- /dev/null +++ b/app_network/network.r @@ -0,0 +1,248 @@ +#!/usr/bin/env Rscript +# +# Network enrichment and interaction analysis using STRINGdb package. +# R equivalent of the NETWORK_ENRICHMENT Nextflow process. +# + +suppressPackageStartupMessages({ + library(STRINGdb) + library(data.table) + library(argparse) +}) + +#' Main function +main <- function() { + # Parse command line arguments + parser <- ArgumentParser( + description = "Network enrichment analysis using STRINGdb package" + ) + + parser$add_argument( + "interactions_file", + type = "character", + help = "Input TSV file with significant interactions (conplex output)" + ) + + parser$add_argument( + "--threshold", + type = "double", + default = 0.65, + help = "ConPlex score threshold for protein network" + ) + + parser$add_argument( + "--max-proteins", + type = "integer", + default = 450L, + help = "Maximum number of proteins to analyze (STRING API limitation)" + ) + + parser$add_argument( + "--output-dir", + type = "character", + default = ".", + help = "Output directory for results" + ) + + parser$add_argument( + "--species", + type = "integer", + default = 9606L, + help = "NCBI taxon ID (default: 9606 for Homo sapiens)" + ) + + parser$add_argument( + "--score-threshold", + type = "integer", + default = 400L, + help = "STRING combined score threshold (0-1000, default: 400)" + ) + + args <- parser$parse_args() + + # Initialize STRINGdb + cat("Initializing STRINGdb...\n") + string_db <- STRINGdb$new( + version = "12.0", + species = args$species, + score_threshold = args$score_threshold, + network_type = "full", + input_directory = "/app" + ) + + # Load interaction data + cat(sprintf("Loading interaction data from %s...\n", args$interactions_file)) + interaction_data <- fread(args$interactions_file, sep = "\t") + interaction_data <- interaction_data[order(-conplex_score)] + + # Remove duplicates and limit (replicates Nextflow logic) + interaction_data <- unique(interaction_data, by = "transcipt") + + if (nrow(interaction_data) > args$max_proteins) { + cat(sprintf("Limiting to top %d proteins (STRING API limitation)\n", args$max_proteins)) + interaction_data <- interaction_data[1:args$max_proteins] + } + + # Filter by threshold + filtered_data <- interaction_data[conplex_score > args$threshold] + cat(sprintf("Found %d proteins above threshold %.2f\n", + nrow(filtered_data), args$threshold)) + + if (nrow(filtered_data) == 0) { + stop("ERROR: No proteins above threshold!") + } + + # Prepare data for STRING mapping + gene_list <- data.frame( + gene = filtered_data$transcipt, + stringsAsFactors = FALSE + ) + + # Map genes to STRING IDs + cat("Mapping genes to STRING database...\n") + mapped <- string_db$map(gene_list, "gene", removeUnmappedRows = TRUE) + + if (nrow(mapped) == 0) { + stop("ERROR: No genes could be mapped to STRING database!") + } + + cat(sprintf("Successfully mapped %d/%d genes to STRING IDs\n", + nrow(mapped), nrow(gene_list))) + + # Get STRING IDs + string_ids <- mapped$STRING_id + + # Get enrichment analysis + cat("\nPerforming enrichment analysis...\n") + enrichment_results <- string_db$get_enrichment(string_ids, category = "all", methodMT = "fdr") + + if (nrow(enrichment_results) == 0) { + cat("WARNING: No enrichment results found\n") + enrichment_df <- data.table() + } else { + cat(sprintf("Found %d enriched terms\n", nrow(enrichment_results))) + + # Convert to data.table and rename columns to match Python output + enrichment_df <- as.data.table(enrichment_results) + + # The STRINGdb enrichment output has columns: + # category, term, number_of_genes, number_of_genes_in_background, + # ncbiTaxonId, inputGenes, preferredNames, p_value, fdr, description + # This should already match the Python output format + } + + # Get network interactions with detailed scores + cat("\nExtracting network interactions...\n") + interactions <- string_db$get_interactions(string_ids) + + if (nrow(interactions) == 0) { + cat("WARNING: No interactions found\n") + interactions_df <- data.table() + } else { + cat(sprintf("Found %d protein-protein interactions\n", nrow(interactions))) + + # Convert to data.table + interactions_df <- as.data.table(interactions) + + # The get_interactions() function returns: + # from, to, combined_score, and potentially other columns + # We need to get detailed scores separately + + # Get the interaction network with all score types + # Use get_png to access the full network data including detailed scores + network_image <- string_db$plot_network(string_ids) + + # Alternative: Access the graph directly for detailed scores + # The STRINGdb object stores the full network internally + graph <- string_db$get_graph() + + # Extract edge attributes which contain detailed scores + if (!is.null(graph)) { + edge_data <- igraph::as_data_frame(graph, what = "edges") + edge_dt <- as.data.table(edge_data) + + # Filter for our query proteins + edge_dt <- edge_dt[from %in% string_ids & to %in% string_ids] + + # Rename columns to match Python output format + if ("from" %in% names(edge_dt)) setnames(edge_dt, "from", "stringId_A") + if ("to" %in% names(edge_dt)) setnames(edge_dt, "to", "stringId_B") + + # Add preferred names + edge_dt[, preferredName_A := string_db$get_aliases(stringId_A)$alias[1], by = stringId_A] + edge_dt[, preferredName_B := string_db$get_aliases(stringId_B)$alias[1], by = stringId_B] + + # Normalize scores to 0-1 range if they're in 0-1000 range + score_cols <- c("combined_score", "neighborhood", "fusion", "cooccurence", + "coexpression", "experimental", "database", "textmining") + target_cols <- c("score", "nscore", "fscore", "pscore", + "ascore", "escore", "dscore", "tscore") + + for (i in seq_along(score_cols)) { + src <- score_cols[i] + tgt <- target_cols[i] + if (src %in% names(edge_dt)) { + # Check if scores are in 0-1000 range (need normalization) + max_val <- max(edge_dt[[src]], na.rm = TRUE) + if (max_val > 1) { + edge_dt[, (tgt) := get(src) / 1000.0] + } else { + edge_dt[, (tgt) := get(src)] + } + } + } + + # Add ncbiTaxonId + edge_dt[, ncbiTaxonId := args$species] + + # Select and order columns to match Python output + output_cols <- c("stringId_A", "stringId_B", "preferredName_A", "preferredName_B", + "ncbiTaxonId", "score", "nscore", "fscore", "pscore", + "ascore", "escore", "dscore", "tscore") + + # Keep only columns that exist + existing_cols <- intersect(output_cols, names(edge_dt)) + interactions_df <- edge_dt[, ..existing_cols] + + } else { + # Fallback: use the interactions data from get_interactions() + # Rename columns to match output format + if ("from" %in% names(interactions_df)) { + setnames(interactions_df, "from", "stringId_A") + } + if ("to" %in% names(interactions_df)) { + setnames(interactions_df, "to", "stringId_B") + } + if ("combined_score" %in% names(interactions_df)) { + interactions_df[, score := combined_score / 1000.0] + } + + interactions_df[, ncbiTaxonId := args$species] + } + } + + # Generate output filename + output_name <- gsub("_significant_interactions", "", + tools::file_path_sans_ext(basename(args$interactions_file))) + + # Create output directory if needed + dir.create(args$output_dir, showWarnings = FALSE, recursive = TRUE) + + # Save results + enrichment_file <- file.path(args$output_dir, + sprintf("%s_network_enrichment.tsv", output_name)) + interactions_file <- file.path(args$output_dir, + sprintf("%s_network_interactions.tsv", output_name)) + + fwrite(enrichment_df, enrichment_file, sep = "\t") + fwrite(interactions_df, interactions_file, sep = "\t") + + cat("\nResults saved:\n") + cat(sprintf(" Enrichment: %s\n", enrichment_file)) + cat(sprintf(" Interactions: %s\n", interactions_file)) +} + +# Run main function +if (!interactive()) { + main() +} \ No newline at end of file diff --git a/app_network/network2.r b/app_network/network2.r new file mode 100644 index 0000000..7359401 --- /dev/null +++ b/app_network/network2.r @@ -0,0 +1,376 @@ +#!/usr/bin/env Rscript +# +# Offline network enrichment and interaction analysis using local STRING-DB files. +# Replicates the NETWORK_ENRICHMENT Nextflow process without internet connection. +# R equivalent of the Python script using STRINGdb package. +# + +suppressPackageStartupMessages({ + library(STRINGdb) + library(data.table) + library(argparse) +}) + +#' Load STRING-DB data from local files +#' +#' @param string_db_dir Directory containing STRING-DB files +#' @return List containing mappings and data frames +load_string_data <- function(string_db_dir) { + cat("Loading STRING-DB files...\n") + + # Load alias mapping (ENST -> ENSP) + aliases <- fread( + file.path(string_db_dir, "9606.protein.aliases.enst.v12.0.tsv"), + sep = "\t", + header = FALSE, + col.names = c("string_protein_id", "alias", "source") + ) + + enst_to_ensp <- aliases[source == "Ensembl_transcript", + .(string_protein_id, alias)] + setkey(enst_to_ensp, alias) + + # Load protein info (for preferred names) + info <- fread( + file.path(string_db_dir, "9606.protein.info.v12.0.txt"), + sep = "\t", + header = FALSE, + col.names = c("string_protein_id", "preferred_name", "protein_size", "annotation") + ) + setkey(info, string_protein_id) + + # Load protein links - USE DETAILED FILE + links <- fread( + file.path(string_db_dir, "9606.protein.links.detailed.v12.0.txt"), + sep = " " + ) + + # Load enrichment terms + enrichment <- fread( + file.path(string_db_dir, "9606.protein.enrichment.terms.v12.0.txt"), + sep = "\t", + header = FALSE, + col.names = c("string_protein_id", "category", "term", "description") + ) + + cat(sprintf("Loaded %d ENST->ENSP mappings\n", nrow(enst_to_ensp))) + cat(sprintf("Loaded %d protein-protein interactions\n", nrow(links))) + cat(sprintf("Loaded %d enrichment annotations\n", nrow(enrichment))) + + list( + enst_to_ensp = enst_to_ensp, + ensp_to_name = info, + links = links, + enrichment = enrichment + ) +} + +#' Perform enrichment analysis using Fisher's exact test +#' +#' @param query_proteins Vector of ENSP protein IDs +#' @param enrichment_df Data table with enrichment annotations +#' @param ensp_to_name Data table mapping ENSP to preferred names +#' @param ensp_to_input_map Named vector mapping ENSP back to ENST +#' @return Data table with enrichment results +perform_enrichment_analysis <- function(query_proteins, enrichment_df, + ensp_to_name, ensp_to_input_map) { + query_set <- unique(query_proteins) + n_query <- length(query_set) + + cat(sprintf("Analyzing enrichment for %d proteins...\n", n_query)) + + results_list <- list() + + # Group by category + categories <- unique(enrichment_df$category) + + for (cat in categories) { + cat_group <- enrichment_df[category == cat] + + # Background: Total unique proteins annotated in this category + category_universe <- unique(cat_group$string_protein_id) + background_size <- length(category_universe) + + # Iterate over terms within this category + terms <- unique(cat_group$term) + + for (tm in terms) { + term_group <- cat_group[term == tm] + term_proteins <- unique(term_group$string_protein_id) + + # Intersection: proteins in both query and term + intersection <- intersect(query_set, term_proteins) + n_intersection <- length(intersection) + + if (n_intersection == 0) next + + # Background term count + n_term_background <- length(term_proteins) + + # Fisher's exact test + # Contingency table: + # In term Not in term + # In query a b + # Not in query c d + + a <- n_intersection + b <- n_query - a + c <- n_term_background - a + d <- background_size - n_term_background - b + + # Ensure no negative values + if (c < 0 || d < 0) next + + # One-sided test for enrichment + contingency_matrix <- matrix(c(a, b, c, d), nrow = 2, byrow = TRUE) + fisher_result <- fisher.test(contingency_matrix, alternative = "greater") + pvalue <- fisher_result$p.value + + # Get description + description <- term_group$description[1] + + # Get input genes (map ENSP back to ENST input) + intersection_sorted <- sort(intersection) + + input_genes_list <- sapply(intersection_sorted, function(ensp) { + if (ensp %in% names(ensp_to_input_map)) { + ensp_to_input_map[ensp] + } else { + ensp + } + }) + + input_genes <- paste(input_genes_list, collapse = ",") + + # Get preferred names + preferred_names_list <- sapply(intersection_sorted, function(p) { + name <- ensp_to_name[string_protein_id == p, preferred_name] + if (length(name) > 0) name[1] else strsplit(p, "\\.")[[1]][length(strsplit(p, "\\.")[[1]])] + }) + preferred_names <- paste(preferred_names_list, collapse = ",") + + results_list[[length(results_list) + 1]] <- data.table( + category = cat, + term = tm, + number_of_genes = n_intersection, + number_of_genes_in_background = n_term_background, + ncbiTaxonId = 9606, + inputGenes = input_genes, + preferredNames = preferred_names, + p_value = pvalue, + description = description + ) + } + } + + if (length(results_list) == 0) { + return(data.table()) + } + + # Combine results + results_df <- rbindlist(results_list) + + # Benjamini-Hochberg FDR correction + results_df <- results_df[order(p_value)] + n_tests <- nrow(results_df) + results_df[, fdr := p_value * n_tests / seq_len(n_tests)] + results_df[fdr > 1.0, fdr := 1.0] + + # Reorder columns to match API output + setcolorder(results_df, c( + "category", "term", "number_of_genes", "number_of_genes_in_background", + "ncbiTaxonId", "inputGenes", "preferredNames", "p_value", "fdr", "description" + )) + + return(results_df) +} + +#' Extract network interactions for query proteins +#' +#' @param query_proteins Vector of ENSP protein IDs +#' @param links_df Data table with protein-protein interactions +#' @param ensp_to_name Data table mapping ENSP to preferred names +#' @return Data table with network interactions +get_network_interactions <- function(query_proteins, links_df, ensp_to_name) { + query_set <- unique(query_proteins) + + # Filter links where both proteins are in query set + interactions <- links_df[protein1 %in% query_set & protein2 %in% query_set] + + if (nrow(interactions) == 0) { + return(data.table()) + } + + # Normalize scores (STRING files are integers 0-1000, API is float 0-1) + score_cols <- c("combined_score", "neighborhood", "fusion", "cooccurence", + "coexpression", "experimental", "database", "textmining") + target_cols <- c("score", "nscore", "fscore", "pscore", + "ascore", "escore", "dscore", "tscore") + + for (i in seq_along(score_cols)) { + src <- score_cols[i] + tgt <- target_cols[i] + if (src %in% names(interactions)) { + interactions[, (tgt) := get(src) / 1000.0] + } else { + interactions[, (tgt) := 0.0] + } + } + + # Add preferred names + interactions[, preferredName_A := sapply(protein1, function(p) { + name <- ensp_to_name[string_protein_id == p, preferred_name] + if (length(name) > 0) name[1] else strsplit(p, "\\.")[[1]][length(strsplit(p, "\\.")[[1]])] + })] + + interactions[, preferredName_B := sapply(protein2, function(p) { + name <- ensp_to_name[string_protein_id == p, preferred_name] + if (length(name) > 0) name[1] else strsplit(p, "\\.")[[1]][length(strsplit(p, "\\.")[[1]])] + })] + + # Rename columns to match STRING API output + setnames(interactions, c("protein1", "protein2"), c("stringId_A", "stringId_B")) + + interactions[, ncbiTaxonId := 9606] + + # Select and order columns to match original output + column_order <- c( + "stringId_A", "stringId_B", "preferredName_A", "preferredName_B", + "ncbiTaxonId", "score", "nscore", "fscore", "pscore", + "ascore", "escore", "dscore", "tscore" + ) + + interactions <- interactions[, ..column_order] + + return(interactions) +} + +#' Main function +main <- function() { + # Parse command line arguments + parser <- ArgumentParser( + description = "Offline network enrichment analysis using local STRING-DB files" + ) + + parser$add_argument( + "interactions_file", + type = "character", + help = "Input TSV file with significant interactions (conplex output)" + ) + + parser$add_argument( + "--string-db-dir", + type = "character", + default = "/app", + help = "Directory containing STRING-DB files" + ) + + parser$add_argument( + "--threshold", + type = "double", + default = 0.65, + help = "ConPlex score threshold for protein network" + ) + + parser$add_argument( + "--max-proteins", + type = "integer", + default = 450L, + help = "Maximum number of proteins to analyze" + ) + + parser$add_argument( + "--output-dir", + type = "character", + default = ".", + help = "Output directory for results" + ) + + args <- parser$parse_args() + + # Load STRING-DB data + string_data <- load_string_data(args$string_db_dir) + + # Load interaction data + cat(sprintf("\nLoading interaction data from %s...\n", args$interactions_file)) + interaction_data <- fread(args$interactions_file, sep = "\t") + interaction_data <- interaction_data[order(-conplex_score)] + + # Remove duplicates and limit + # Replicates Nextflow logic: drops duplicates on transcript BEFORE limit + interaction_data <- unique(interaction_data, by = "transcipt") + + if (nrow(interaction_data) > args$max_proteins) { + cat(sprintf("Limiting to top %d proteins\n", args$max_proteins)) + interaction_data <- interaction_data[1:args$max_proteins] + } + + # Filter by threshold + filtered_data <- interaction_data[conplex_score > args$threshold] + cat(sprintf("Found %d proteins above threshold %.2f\n", + nrow(filtered_data), args$threshold)) + + # Map ENST to ENSP and keep track of mapping for output + enst_list <- filtered_data$transcipt + ensp_list <- character() + ensp_to_input_map <- character() + + for (enst in enst_list) { + ensp <- string_data$enst_to_ensp[alias == enst, string_protein_id] + if (length(ensp) > 0) { + ensp <- ensp[1] + ensp_list <- c(ensp_list, ensp) + ensp_to_input_map[ensp] <- enst + } + } + + cat(sprintf("Mapped %d ENST IDs to ENSP IDs\n", length(ensp_list))) + + if (length(ensp_list) == 0) { + stop("ERROR: No valid ENSP mappings found!") + } + + # Perform enrichment analysis + cat("\nPerforming enrichment analysis...\n") + enrichment_results <- perform_enrichment_analysis( + ensp_list, + string_data$enrichment, + string_data$ensp_to_name, + ensp_to_input_map + ) + cat(sprintf("Found %d enriched terms\n", nrow(enrichment_results))) + + # Get network interactions + cat("\nExtracting network interactions...\n") + network_interactions <- get_network_interactions( + ensp_list, + string_data$links, + string_data$ensp_to_name + ) + cat(sprintf("Found %d protein-protein interactions\n", nrow(network_interactions))) + + # Generate output filename + output_name <- gsub("_significant_interactions", "", + tools::file_path_sans_ext(basename(args$interactions_file))) + + # Create output directory if needed + dir.create(args$output_dir, showWarnings = FALSE, recursive = TRUE) + + # Save results + enrichment_file <- file.path(args$output_dir, + sprintf("%s_network_enrichment.tsv", output_name)) + interactions_file <- file.path(args$output_dir, + sprintf("%s_network_interactions.tsv", output_name)) + + fwrite(enrichment_results, enrichment_file, sep = "\t") + fwrite(network_interactions, interactions_file, sep = "\t") + + cat("\nResults saved:\n") + cat(sprintf(" Enrichment: %s\n", enrichment_file)) + cat(sprintf(" Interactions: %s\n", interactions_file)) +} + +# Run main function +if (!interactive()) { + main() +} \ No newline at end of file diff --git a/app_network/network_enrich.py b/app_network/network_enrich.py new file mode 100644 index 0000000..662728b --- /dev/null +++ b/app_network/network_enrich.py @@ -0,0 +1,283 @@ +#!/usr/bin/env python3 +""" +Offline network enrichment and interaction analysis using local STRING-DB files. +Replicates the NETWORK_ENRICHMENT Nextflow process without internet connection. +""" + +import pandas as pd +import argparse +from pathlib import Path +from scipy import stats +import numpy as np + + +def load_string_data(string_db_dir): + """Load all required STRING-DB files.""" + string_db_dir = Path(string_db_dir) + + print("Loading STRING-DB files...") + + # Load alias mapping (ENST -> ENSP) + aliases = pd.read_csv( + string_db_dir / "9606.protein.aliases.enst.v12.0.tsv", + sep='\t', + comment='#', + names=['string_protein_id', 'alias', 'source'] + ) + enst_to_ensp = aliases[aliases['source'] == 'Ensembl_transcript'].set_index('alias')['string_protein_id'].to_dict() + + # Load protein info (for preferred names) + info = pd.read_csv( + string_db_dir / "9606.protein.info.v12.0.txt", + sep='\t', + comment='#', + names=['string_protein_id', 'preferred_name', 'protein_size', 'annotation'] + ) + ensp_to_name = info.set_index('string_protein_id')['preferred_name'].to_dict() + + # Load protein links + # Load protein links - USE DETAILED FILE + links = pd.read_csv( + string_db_dir / "9606.protein.links.detailed.v12.0.txt", + sep=' ' + ) + + # Load enrichment terms + enrichment = pd.read_csv( + string_db_dir / "9606.protein.enrichment.terms.v12.0.txt", + sep='\t', + comment='#', + names=['string_protein_id', 'category', 'term', 'description'] + ) + + print(f"Loaded {len(enst_to_ensp)} ENST->ENSP mappings") + print(f"Loaded {len(links)} protein-protein interactions") + print(f"Loaded {len(enrichment)} enrichment annotations") + + return enst_to_ensp, ensp_to_name, links, enrichment + + +def perform_enrichment_analysis(query_proteins, enrichment_df, ensp_to_name, background_size=20000): + """ + Perform enrichment analysis similar to STRING-DB API. + Uses Fisher's exact test for each term. + """ + results = [] + + query_set = set(query_proteins) + n_query = len(query_set) + + # Group by category and term + for (category, term), group in enrichment_df.groupby(['category', 'term']): + term_proteins = set(group['string_protein_id']) + + # Intersection: proteins in both query and term + intersection = query_set & term_proteins + n_intersection = len(intersection) + + if n_intersection == 0: + continue + + # Background: total proteins with this term + n_term_background = len(term_proteins) + + # Fisher's exact test + # Contingency table: + # In term Not in term + # In query a b + # Not in query c d + + a = n_intersection + b = n_query - a + c = n_term_background - a + d = background_size - n_term_background - b + + # One-sided test for enrichment + oddsratio, pvalue = stats.fisher_exact([[a, b], [c, d]], alternative='greater') + + # Get description (take first) + description = group['description'].iloc[0] + + # Get gene names + intersection_list = list(intersection) + input_genes = ','.join(intersection_list) + preferred_names = ','.join([ensp_to_name.get(p, p.split('.')[-1]) for p in intersection_list]) + + results.append({ + 'category': category, + 'term': term, + 'number_of_genes': n_intersection, + 'number_of_genes_in_background': n_term_background, + 'ncbiTaxonId': 9606, + 'inputGenes': input_genes, + 'preferredNames': preferred_names, + 'p_value': pvalue, + 'description': description + }) + + if not results: + return pd.DataFrame() + + # Create DataFrame and calculate FDR + results_df = pd.DataFrame(results) + results_df = results_df.sort_values('p_value') + + # Benjamini-Hochberg FDR correction + n_tests = len(results_df) + results_df['fdr'] = results_df['p_value'] * n_tests / (np.arange(1, n_tests + 1)) + results_df['fdr'] = results_df['fdr'].clip(upper=1.0) + + # Sort by p-value + results_df = results_df.sort_values('p_value').reset_index(drop=True) + + return results_df + + +def get_network_interactions(query_proteins, links_df, ensp_to_name): + """ + Extract network interactions for query proteins. + Converts combined_score to normalized scores similar to STRING API. + """ + query_set = set(query_proteins) + + # Filter links where both proteins are in query set + interactions = links_df[ + links_df['protein1'].isin(query_set) & + links_df['protein2'].isin(query_set) + ].copy() + + if len(interactions) == 0: + return pd.DataFrame() + + interactions['score'] = interactions['combined_score'] / 1000.0 + interactions['nscore'] = interactions['neighborhood'] / 1000.0 + interactions['fscore'] = interactions['fusion'] / 1000.0 + interactions['pscore'] = interactions['cooccurence'] / 1000.0 # Note: typo in STRING file + interactions['ascore'] = interactions['coexpression'] / 1000.0 + interactions['escore'] = interactions['experimental'] / 1000.0 + interactions['dscore'] = interactions['database'] / 1000.0 + interactions['tscore'] = interactions['textmining'] / 1000.0 + + # Add preferred names + interactions['preferredName_A'] = interactions['protein1'].map( + lambda x: ensp_to_name.get(x, x.split('.')[-1]) + ) + interactions['preferredName_B'] = interactions['protein2'].map( + lambda x: ensp_to_name.get(x, x.split('.')[-1]) + ) + + # Rename columns to match STRING API output + interactions = interactions.rename(columns={ + 'protein1': 'stringId_A', + 'protein2': 'stringId_B' + }) + + interactions['ncbiTaxonId'] = 9606 + + # Select and order columns to match original output + column_order = [ + 'stringId_A', 'stringId_B', 'preferredName_A', 'preferredName_B', + 'ncbiTaxonId', 'score', 'nscore', 'fscore', 'pscore', + 'ascore', 'escore', 'dscore', 'tscore' + ] + + interactions = interactions[column_order].reset_index(drop=True) + + return interactions + + +def main(): + parser = argparse.ArgumentParser( + description='Offline network enrichment analysis using local STRING-DB files' + ) + parser.add_argument( + 'interactions_file', + type=str, + help='Input TSV file with significant interactions (conplex output)' + ) + parser.add_argument( + '--string-db-dir', + type=str, + default='/data/bugra/digital_trials/app_network', + help='Directory containing STRING-DB files' + ) + parser.add_argument( + '--threshold', + type=float, + default=0.0, + help='ConPlex score threshold for protein network' + ) + parser.add_argument( + '--max-proteins', + type=int, + default=450, + help='Maximum number of proteins to analyze' + ) + parser.add_argument( + '--output-dir', + type=str, + default='.', + help='Output directory for results' + ) + + args = parser.parse_args() + + # Load STRING-DB data + enst_to_ensp, ensp_to_name, links, enrichment = load_string_data(args.string_db_dir) + + # Load interaction data + print(f"\nLoading interaction data from {args.interactions_file}...") + interaction_data = pd.read_csv(args.interactions_file, sep='\t') + interaction_data = interaction_data.sort_values('conplex_score', ascending=False) + + # Remove duplicates and limit + interaction_data = interaction_data.drop_duplicates('transcipt') + if interaction_data.shape[0] > args.max_proteins: + print(f"Limiting to top {args.max_proteins} proteins") + interaction_data = interaction_data.iloc[:args.max_proteins] + + # Filter by threshold + filtered_data = interaction_data[interaction_data['conplex_score'] > args.threshold] + print(f"Found {len(filtered_data)} proteins above threshold {args.threshold}") + + # Convert ENST to ENSP + enst_list = filtered_data['transcipt'].tolist() + ensp_list = [enst_to_ensp.get(enst) for enst in enst_list] + ensp_list = [e for e in ensp_list if e is not None] + + print(f"Mapped {len(ensp_list)} ENST IDs to ENSP IDs") + + if len(ensp_list) == 0: + print("ERROR: No valid ENSP mappings found!") + return + + # Perform enrichment analysis + print("\nPerforming enrichment analysis...") + enrichment_results = perform_enrichment_analysis(ensp_list, enrichment, ensp_to_name) + print(f"Found {len(enrichment_results)} enriched terms") + + # Get network interactions + print("\nExtracting network interactions...") + network_interactions = get_network_interactions(ensp_list, links, ensp_to_name) + print(f"Found {len(network_interactions)} protein-protein interactions") + + # Generate output filename + input_path = Path(args.interactions_file) + output_name = input_path.stem.replace('_significant_interactions', '') + output_dir = Path(args.output_dir) + output_dir.mkdir(parents=True, exist_ok=True) + + # Save results + enrichment_file = output_dir / f"{output_name}_network_enrichment.tsv" + interactions_file = output_dir / f"{output_name}_network_interactions.tsv" + + enrichment_results.to_csv(enrichment_file, sep='\t') + network_interactions.to_csv(interactions_file, sep='\t') + + print(f"\nResults saved:") + print(f" Enrichment: {enrichment_file}") + print(f" Interactions: {interactions_file}") + + +if __name__ == '__main__': + main() \ No newline at end of file diff --git a/app_network/network_enrich_offline.py b/app_network/network_enrich_offline.py new file mode 100644 index 0000000..64b4059 --- /dev/null +++ b/app_network/network_enrich_offline.py @@ -0,0 +1,332 @@ +#!/usr/bin/env python3 +""" +Offline network enrichment and interaction analysis using local STRING-DB files. +Replicates the NETWORK_ENRICHMENT Nextflow process without internet connection. +""" + +import pandas as pd +import argparse +from pathlib import Path +from scipy import stats +import numpy as np + + +def load_string_data(string_db_dir): + """Load all required STRING-DB files.""" + string_db_dir = Path(string_db_dir) + + print("Loading STRING-DB files...") + + # Load alias mapping (ENST -> ENSP) + aliases = pd.read_csv( + string_db_dir / "9606.protein.aliases.enst.v12.0.tsv", + sep='\t', + comment='#', + names=['string_protein_id', 'alias', 'source'] + ) + enst_to_ensp = aliases[aliases['source'] == 'Ensembl_transcript'].set_index('alias')['string_protein_id'].to_dict() + + # Load protein info (for preferred names) + info = pd.read_csv( + string_db_dir / "9606.protein.info.v12.0.txt", + sep='\t', + comment='#', + names=['string_protein_id', 'preferred_name', 'protein_size', 'annotation'] + ) + ensp_to_name = info.set_index('string_protein_id')['preferred_name'].to_dict() + + # Load protein links - USE DETAILED FILE + links = pd.read_csv( + string_db_dir / "9606.protein.links.detailed.v12.0.txt", + sep=' ' + ) + + # Load enrichment terms + # Note: STRING files usually don't have headers, or have specific comment lines. + # We ensure we capture string_protein_id, category, term, description + enrichment = pd.read_csv( + string_db_dir / "9606.protein.enrichment.terms.v12.0.txt", + sep='\t', + comment='#', + names=['string_protein_id', 'category', 'term', 'description'] + ) + + print(f"Loaded {len(enst_to_ensp)} ENST->ENSP mappings") + print(f"Loaded {len(links)} protein-protein interactions") + print(f"Loaded {len(enrichment)} enrichment annotations") + + return enst_to_ensp, ensp_to_name, links, enrichment + + +def perform_enrichment_analysis(query_proteins, enrichment_df, ensp_to_name, ensp_to_input_map): + """ + Perform enrichment analysis similar to STRING-DB API. + Uses Fisher's exact test for each term. + """ + results = [] + + query_set = set(query_proteins) + n_query = len(query_set) + + print(f"Analyzing enrichment for {n_query} proteins...") + + # Group by category to calculate background size per category + for category, cat_group in enrichment_df.groupby('category'): + + # Background: Total unique proteins annotated in this category + category_universe = set(cat_group['string_protein_id']) + background_size = len(category_universe) + + # Now iterate over terms within this category + for term, group in cat_group.groupby('term'): + term_proteins = set(group['string_protein_id']) + + # Intersection: proteins in both query and term + intersection = query_set & term_proteins + n_intersection = len(intersection) + + if n_intersection == 0: + continue + + # Background term count + n_term_background = len(term_proteins) + + # Fisher's exact test + # Contingency table: + # In term Not in term + # In query a b + # Not in query c d + + a = n_intersection + b = n_query - a + c = n_term_background - a + d = background_size - n_term_background - b + + # Ensure no negative values (safety check) + if c < 0 or d < 0: + continue + + # One-sided test for enrichment + oddsratio, pvalue = stats.fisher_exact([[a, b], [c, d]], alternative='greater') + + # Get description (take first) + description = group['description'].iloc[0] + + # Get input genes (map ENSP back to ENST input) + intersection_list = sorted(list(intersection)) + + # Reconstruct the 'inputGenes' list using the original ENST IDs + # If an ENSP maps to multiple ENSTs in the input, we list them all + input_genes_list = [] + for ensp in intersection_list: + if ensp in ensp_to_input_map: + # Append the ENST that mapped to this ENSP + input_genes_list.append(ensp_to_input_map[ensp]) + else: + input_genes_list.append(ensp) + + input_genes = ','.join(input_genes_list) + + preferred_names = ','.join([ensp_to_name.get(p, p.split('.')[-1]) for p in intersection_list]) + + results.append({ + 'category': category, + 'term': term, + 'number_of_genes': n_intersection, + 'number_of_genes_in_background': n_term_background, + 'ncbiTaxonId': 9606, + 'inputGenes': input_genes, + 'preferredNames': preferred_names, + 'p_value': pvalue, + 'description': description + }) + + if not results: + return pd.DataFrame() + + # Create DataFrame and calculate FDR + results_df = pd.DataFrame(results) + + # Benjamini-Hochberg FDR correction + results_df = results_df.sort_values('p_value') + n_tests = len(results_df) + results_df['fdr'] = results_df['p_value'] * n_tests / (np.arange(1, n_tests + 1)) + results_df['fdr'] = results_df['fdr'].clip(upper=1.0) + + # Sort by p-value + results_df = results_df.sort_values('p_value').reset_index(drop=True) + + # Reorder columns to match API output + # API Order: category, term, number_of_genes, number_of_genes_in_background, ncbiTaxonId, inputGenes, preferredNames, p_value, fdr, description + cols = [ + 'category', 'term', 'number_of_genes', 'number_of_genes_in_background', + 'ncbiTaxonId', 'inputGenes', 'preferredNames', 'p_value', 'fdr', 'description' + ] + results_df = results_df[cols] + + return results_df + + +def get_network_interactions(query_proteins, links_df, ensp_to_name): + """ + Extract network interactions for query proteins. + Converts combined_score to normalized scores similar to STRING API. + """ + query_set = set(query_proteins) + + # Filter links where both proteins are in query set + interactions = links_df[ + links_df['protein1'].isin(query_set) & + links_df['protein2'].isin(query_set) + ].copy() + + if len(interactions) == 0: + return pd.DataFrame() + + # Normalize scores (STRING files are integers 0-1000, API is float 0-1) + score_cols = ['combined_score', 'neighborhood', 'fusion', 'cooccurence', + 'coexpression', 'experimental', 'database', 'textmining'] + + target_cols = ['score', 'nscore', 'fscore', 'pscore', + 'ascore', 'escore', 'dscore', 'tscore'] + + for src, tgt in zip(score_cols, target_cols): + if src in interactions.columns: + interactions[tgt] = interactions[src] / 1000.0 + else: + interactions[tgt] = 0.0 + + # Add preferred names + interactions['preferredName_A'] = interactions['protein1'].map( + lambda x: ensp_to_name.get(x, x.split('.')[-1]) + ) + interactions['preferredName_B'] = interactions['protein2'].map( + lambda x: ensp_to_name.get(x, x.split('.')[-1]) + ) + + # Rename columns to match STRING API output + interactions = interactions.rename(columns={ + 'protein1': 'stringId_A', + 'protein2': 'stringId_B' + }) + + interactions['ncbiTaxonId'] = 9606 + + # Select and order columns to match original output + column_order = [ + 'stringId_A', 'stringId_B', 'preferredName_A', 'preferredName_B', + 'ncbiTaxonId', 'score', 'nscore', 'fscore', 'pscore', + 'ascore', 'escore', 'dscore', 'tscore' + ] + + interactions = interactions[column_order].reset_index(drop=True) + + return interactions + + +def main(): + parser = argparse.ArgumentParser( + description='Offline network enrichment analysis using local STRING-DB files' + ) + parser.add_argument( + 'interactions_file', + type=str, + help='Input TSV file with significant interactions (conplex output)' + ) + parser.add_argument( + '--string-db-dir', + type=str, + default='/data/bugra/digital_trials/app_network', + help='Directory containing STRING-DB files' + ) + parser.add_argument( + '--threshold', + type=float, + default=0.65, + help='ConPlex score threshold for protein network' + ) + parser.add_argument( + '--max-proteins', + type=int, + default=450, + help='Maximum number of proteins to analyze' + ) + parser.add_argument( + '--output-dir', + type=str, + default='.', + help='Output directory for results' + ) + + args = parser.parse_args() + + # Load STRING-DB data + enst_to_ensp, ensp_to_name, links, enrichment = load_string_data(args.string_db_dir) + + # Load interaction data + print(f"\nLoading interaction data from {args.interactions_file}...") + interaction_data = pd.read_csv(args.interactions_file, sep='\t') + interaction_data = interaction_data.sort_values('conplex_score', ascending=False) + + # Remove duplicates and limit + # Replicates Nextflow logic: drops duplicates on transcript BEFORE limit + interaction_data = interaction_data.drop_duplicates('transcipt') + if interaction_data.shape[0] > args.max_proteins: + print(f"Limiting to top {args.max_proteins} proteins") + interaction_data = interaction_data.iloc[:args.max_proteins] + + # Filter by threshold + filtered_data = interaction_data[interaction_data['conplex_score'] > args.threshold] + print(f"Found {len(filtered_data)} proteins above threshold {args.threshold}") + + # Map ENST to ENSP and keep track of mapping for output + enst_list = filtered_data['transcipt'].tolist() + ensp_list = [] + ensp_to_input_map = {} # Map ENSP back to ENST for output generation + + for enst in enst_list: + ensp = enst_to_ensp.get(enst) + if ensp: + ensp_list.append(ensp) + # We map ENSP back to the ENST. If multiple ENSTs map to one ENSP, + # this simple dict keeps the last one. + # However, since input is deduped on transcript, this is mostly 1-to-1 + # for the query set. + ensp_to_input_map[ensp] = enst + + print(f"Mapped {len(ensp_list)} ENST IDs to ENSP IDs") + + if len(ensp_list) == 0: + print("ERROR: No valid ENSP mappings found!") + return + + # Perform enrichment analysis + print("\nPerforming enrichment analysis...") + enrichment_results = perform_enrichment_analysis(ensp_list, enrichment, ensp_to_name, ensp_to_input_map) + print(f"Found {len(enrichment_results)} enriched terms") + + # Get network interactions + print("\nExtracting network interactions...") + network_interactions = get_network_interactions(ensp_list, links, ensp_to_name) + print(f"Found {len(network_interactions)} protein-protein interactions") + + # Generate output filename + input_path = Path(args.interactions_file) + output_name = input_path.stem.replace('_significant_interactions', '') + output_dir = Path(args.output_dir) + output_dir.mkdir(parents=True, exist_ok=True) + + # Save results + enrichment_file = output_dir / f"{output_name}_network_enrichment.tsv" + interactions_file = output_dir / f"{output_name}_network_interactions.tsv" + + enrichment_results.to_csv(enrichment_file, sep='\t', index=False) + network_interactions.to_csv(interactions_file, sep='\t', index=False) + + print(f"\nResults saved:") + print(f" Enrichment: {enrichment_file}") + print(f" Interactions: {interactions_file}") + + +if __name__ == '__main__': + main() \ No newline at end of file diff --git a/conplex.py b/conplex.py new file mode 100755 index 0000000..45dff64 --- /dev/null +++ b/conplex.py @@ -0,0 +1,145 @@ +import argparse +import pandas as pd +import os +import numpy as np +import re +import subprocess +import sys + +def parse_fasta_seq(fasta_file): + try: + with open(fasta_file, 'r') as file: + return [line.strip() for line in file if not line.startswith('>')] + except Exception as e: + raise ValueError(f"Error parsing FASTA file: {fasta_file}") from e + +def parse_fasta_name(fasta_file): + try: + with open(fasta_file, 'r') as file: + return [line.strip()[1:] for line in file if line.startswith('>')] + except Exception as e: + raise ValueError(f"Error parsing FASTA file: {fasta_file}") from e + +def create_tsv_frags(fastas, smis, screening_batch_size): + protein_sequence_list = parse_fasta_seq(fastas) + protein_name_list = parse_fasta_name(fastas) + full_df = pd.read_csv(smis, delimiter='\t', names=['smiles', 'chem_id']) + + #splits = int(np.ceil((len(protein_sequence_list))/screening_batch_size)) + #protein_sequence_list = np.array_split(protein_sequence_list, splits) + #protein_name_list = np.array_split(protein_name_list, splits) + + try: + [full_df.assign(protein_id = [protein_id]*full_df.shape[0]).assign(protein_sequence = [protein_sequence]*full_df.shape[0])[['protein_id', 'chem_id', 'protein_sequence', 'smiles']].to_csv(f"{protein_id}.tsv", sep='\t', header=False, index=False) for protein_id, protein_sequence in zip(protein_name_list,protein_sequence_list)] + tsv_files = [f"{protein_id}.tsv" for protein_id in protein_name_list] + return tsv_files + + except Exception as e: + print(f"Failed to process files: {e}") + raise + + +def screen_frags(tsv_files): + #[subprocess.run(["conplex-dti", "predict","--data-file", tsv_file,"--model-path", "/home/omic/ConPLex/models/ConPLex_v1_BindingDB.pt","--outfile", f"{os.path.splitext(os.path.basename(tsv_file))[0]}_results.tsv"]) for tsv_file in tsv_files] + [subprocess.run(["conplex-dti", "predict","--data-file", tsv_file,"--model-path", "/home/omic/ConPLex/models/Run_best_model_epoch46.pt","--outfile", f"{os.path.splitext(os.path.basename(tsv_file))[0]}_results.tsv"]) for tsv_file in tsv_files] + scores_files = [f"{os.path.splitext(os.path.basename(tsv_file))[0]}_results.tsv" for tsv_file in tsv_files] + #scores_files = [] + #for tsv_file in tsv_files: + #base_name = os.path.splitext(os.path.basename(tsv_file))[0] + #scores_file = f"{base_name}_scores.tsv" + + #subprocess.run([ + # "conplex-dti", "predict", + # "--data-file", tsv_file, + # "--model-path", "/home/omic/ConPLex/models/ConPLex_v1_BindingDB.pt", + # "--outfile", f"{base_name}_results.tsv" + #]) + + #with open(scores_file, 'w') as f: + # f.write("chem_id\tprotein_id\tscore\n") + + #with open(f"{base_name}_results.tsv", 'r') as results_file, open(f"{base_name}_temp.tsv", 'w') as temp_file: + # for line in results_file: + # fields = line.strip().split('\t') + # temp_file.write('\t'.join(fields) + '\n') + + #merged_df = pd.read_csv(f"{base_name}_temp.tsv", sep='\t', names=['chem_id', 'protein_id', 'score']) + #tsv_df = pd.read_csv(tsv_file, sep='\t', names=['protein_id', 'chem_id', 'sequence', 'smiles']) + + #merged_df = merged_df.merge(tsv_df[['chem_id', 'smiles']], on='chem_id') + #merged_df.to_csv(scores_file, sep='\t', index=False) + + #os.remove(f"{base_name}_temp.tsv") + #scores_files.append(scores_file) + return scores_files + +def collect_frags(scores_files, fasta_file, outdir, split_write_df = 'no'): + def concatenate_dataframes(file_list): + df_list = [] + header = None + for i, file in enumerate(file_list): + if os.path.getsize(file) > 0: + if i == 0: + df = pd.read_csv(file, sep='\t', index_col=None) + if df.columns[0] == 'chem_id': + header = df.columns + else: + df = pd.read_csv(file, sep='\t', index_col=None, header=None) + df.columns = ['chem_id', 'protein_id', 'score', 'smiles'] + else: + df = pd.read_csv(file, sep='\t', index_col=None, header=None) + if header is not None: + df.columns = header + df_list.append(df) + else: + print(f"Skipping empty file: {file}") + if df_list: + concatenated_df = pd.concat(df_list, ignore_index=True) + return concatenated_df + else: + return pd.DataFrame() + + scores_df = concatenate_dataframes(scores_files) + + if not scores_df.empty: + score_column_index = 2 if 'score' not in scores_df.columns else 'score' + scores_df[score_column_index] = pd.to_numeric(scores_df[score_column_index], errors='coerce') + scores_df = scores_df.dropna(subset=[score_column_index]) + sorted_scores_df = scores_df.sort_values(by=score_column_index, ascending=False) + if 'score' not in scores_df.columns: + sorted_scores_df.columns = ['chem_id', 'protein_id', 'score', 'hit', 'smiles'] + + base_name = os.path.splitext(os.path.basename(fasta_file))[0] + all_scores_file = os.path.join(outdir, f"{base_name}_all_scores.tsv") + sorted_scores_df.to_csv(all_scores_file, sep='\t', index=False, header=True) + + else: + print("No score files found or all score files are empty.") + + with open(fasta_file, 'r') as fasta: + fasta_lines = fasta.readlines() + fasta_sequence = fasta_lines[1].strip() if len(fasta_lines) > 1 else '' + + if not scores_df.empty: + df = sorted_scores_df + header = df.columns.tolist() + + if split_write_df == 'yes': + for index, row in df.iterrows(): + row_df = pd.DataFrame([row], columns=header) + csv_filename = f"{row['complex_name'].replace(' ', '-')}_hit.csv" + row_df.to_csv(os.path.join(outdir, csv_filename), index=False) + +if __name__ == "__main__": + parser = argparse.ArgumentParser(description="Process and screen fragments.") + parser.add_argument("--fastas", required=True, help="Path to the FASTA file.") + parser.add_argument("--smis", required=True, help="Path to the SMILES file.") + parser.add_argument("--screening_batch_size", type=int, default=100000, help="Batch size for screening.") + parser.add_argument("--outdir", default="output", help="Output directory.") + parser.add_argument("--split_write_df", default="no", help="Write all complexes in separate files") + + args = parser.parse_args() + + tsv_files = create_tsv_frags(args.fastas, args.smis, args.screening_batch_size) + scores_files = screen_frags(tsv_files) + #collect_frags(scores_files, args.fastas, args.outdir, args.split_write_df) diff --git a/digital-trial/Dockerfile_biotransformer b/digital-trial/Dockerfile_biotransformer new file mode 100644 index 0000000..f55036c --- /dev/null +++ b/digital-trial/Dockerfile_biotransformer @@ -0,0 +1,71 @@ +FROM debian:bullseye-slim + +USER root + +SHELL ["/bin/bash", "-c"] +WORKDIR /home +RUN mkdir -p /home/omic +WORKDIR /home/omic +ARG DEBIAN_FRONTEND=noninteractive + +RUN apt update -y && apt-get install -y --no-install-recommends \ + build-essential \ + cmake \ + curl \ + git \ + wget \ + ca-certificates \ + default-jre \ + unzip \ + && apt-get clean \ + && rm -rf /var/lib/apt/lists/* + +RUN wget https://repo.anaconda.com/miniconda/Miniconda3-latest-Linux-x86_64.sh -O miniconda.sh \ + && bash miniconda.sh -b -p /opt/conda \ + && rm miniconda.sh \ + && ln -s /opt/conda/etc/profile.d/conda.sh /etc/profile.d/conda.sh \ + && echo ". /opt/conda/etc/profile.d/conda.sh" >> ~/.bashrc \ + && echo "conda activate base" >> ~/.bashrc \ + && find /opt/conda/ -follow -type f -name '*.a' -delete \ + && find /opt/conda/ -follow -type f -name '*.js.map' -delete \ + && /opt/conda/bin/conda clean -afy + +ENV PATH /opt/conda/bin:$PATH + +# main conda env (biotransformer) +RUN conda create -n biotransformer +ENV PATH="$PATH:/opt/conda/envs/biotransformer/bin" +RUN echo "source activate biotransformer" >> ~/.bashrc +RUN conda clean --all -f -y + +# Install RDKit +RUN conda install -y -n biotransformer -c conda-forge rdkit + +WORKDIR /home/omic +# RUN wget https://bitbucket.org/wishartlab/biotransformer3.0jar/get/6432cf887ed7.zip && \ +# unzip 6432cf887ed7.zip && \ +# rm 6432cf887ed7.zip && \ +# mv wishartlab-biotransformer3.0jar-6432cf887ed7 biotransformer + +# RUN git clone https://github.com/Wishartlab-openscience/Biotransformer.git && \ +# mv Biotransformer biotransformer +RUN git clone https://bitbucket.org/wishartlab/biotransformer3.0jar biotransformer && mv biotransformer/BioTransformer3.0_20230525.jar biotransformer/biotransformer +WORKDIR /home/omic/biotransformer +# RUN wget https://bitbucket.org/wishartlab/biotransformer3.0jar/raw/6432cf887ed70c7c943c2dfeb60298ccdc788d7d/BioTransformer3.0_20230525.jar && \ +# mv BioTransformer3.0_20230525.jar biotransformer && \ +# chmod +x biotransformer +ENV PATH="$PATH:/home/omic/biotransformer" + +# Create a symlink from /home/omic/biotransformer/database to /home/omic/biotransformer/btkb +RUN ln -s /home/omic/biotransformer/database /home/omic/biotransformer/btkb + +## Test +# RUN java -jar biotransformer -multiThread "2 example.csv 36000 3 1 true" + +#Download The Human Metabolome Database smiles +RUN wget https://hmdb.ca/system/downloads/current/structures.zip +RUN unzip structures.zip + + +#install pandas and requests +RUN conda install -y -n biotransformer -c conda-forge pandas requests diff --git a/digital-trial/Dockerfile_conplex b/digital-trial/Dockerfile_conplex new file mode 100644 index 0000000..141c2cc --- /dev/null +++ b/digital-trial/Dockerfile_conplex @@ -0,0 +1,127 @@ +ARG CUDA=11.7 +FROM nvidia/cuda:${CUDA}.1-cudnn8-devel-ubuntu22.04 + +USER root +SHELL ["/bin/bash", "-c"] + +WORKDIR /home +RUN mkdir -p /home/omic +WORKDIR /home/omic + +ARG DEBIAN_FRONTEND=noninteractive +RUN apt-get update -y && apt-get install -y --no-install-recommends \ + build-essential \ + cmake \ + curl \ + git \ + wget \ + ca-certificates \ + hmmer \ + kalign \ + tzdata \ + && apt-get clean \ + && rm -rf /var/lib/apt/lists/* + +# Add the NVIDIA GPG key directly +RUN wget https://developer.download.nvidia.com/compute/cuda/repos/ubuntu2204/x86_64/cuda-keyring_1.0-1_all.deb +RUN dpkg -i cuda-keyring_1.0-1_all.deb && rm cuda-keyring_1.0-1_all.deb +RUN apt-get -y update && \ + apt-get install -y --no-install-recommends cuda-command-line-tools-11-7 + +RUN wget https://repo.anaconda.com/miniconda/Miniconda3-latest-Linux-x86_64.sh -O miniconda.sh \ + && bash miniconda.sh -b -p /opt/conda \ + && rm miniconda.sh \ + && ln -s /opt/conda/etc/profile.d/conda.sh /etc/profile.d/conda.sh \ + && echo ". /opt/conda/etc/profile.d/conda.sh" >> ~/.bashrc \ + && echo "conda activate base" >> ~/.bashrc \ + && find /opt/conda/ -follow -type f -name '*.a' -delete \ + && find /opt/conda/ -follow -type f -name '*.js.map' -delete \ + && /opt/conda/bin/conda clean -afy + +ENV PATH /opt/conda/bin:$PATH +RUN conda update -y -n base -c defaults conda + +# main conda env (conplex) +RUN conda create -n conplex-dti python=3.9 +ENV PATH "$PATH:/opt/conda/envs/conplex-dti/bin" +RUN echo "source activate conplex-dti" >> ~/.bashrc +RUN conda clean --all -f -y + +# main conda env (secse) +#RUN conda create --name secse -c conda-forge parallel tqdm biopandas openbabel chemprop xlrd=2 pandarallel python=3.9 perl=5.32 +#RUN conda install -y -n secse -c conda-forge pandas=1.3.5 +#RUN conda install -y -n secse -c conda-forge rdkit=2022.03.5 +#RUN echo "conda activate secse" >> ~/.bashrc +#ENV PATH="$PATH:/opt/conda/envs/secse/bin" +#ARG PATH="$PATH:/opt/conda/envs/secse/bin" + +RUN git clone https://github.com/samsledje/ConPLex.git +WORKDIR /home/omic/ConPLex + +# Install conplex +RUN apt-get -y update && apt-get install -y ca-certificates && update-ca-certificates +RUN /opt/conda/envs/conplex-dti/bin/python3 -m pip install conplex-dti +RUN conplex-dti --help + +# Package into python script for running in nextflow +COPY conplex.py /home/omic/ConPLex/conplex.py +RUN chmod +x /home/omic/ConPLex/conplex.py + +# Install pretrained models +RUN mkdir -p /home/omic/ConPLex/models +RUN wget --no-check-certificate -O /home/omic/ConPLex/models/ConPLex_v1_BindingDB.pt https://cb.csail.mit.edu/cb/conplex/data/models/BindingDB_ExperimentalValidModel.pt + +# Test +RUN conplex-dti predict --data-file /home/omic/ConPLex/tests/toy_predict.tsv --model-path /home/omic/ConPLex/models/ConPLex_v1_BindingDB.pt --outfile ./results.tsv + +#copy protein reference trascipt fasta file +COPY ensemble_reference.fasta . +COPY MANE_referent_transcipt_reference.fasta . +COPY MANE_all_transcipts.csv . +COPY get_round_2.py . +RUN chmod +x /home/omic/ConPLex/get_round_2.py +#new model weights +COPY Run_best_model_epoch46.pt /home/omic/ConPLex/models/ + + +# Fix predict.py not working on single protein-ligand complex +#COPY predict.py /home/omic/ConPLex/conplex_dti/cli/predict.py +#COPY predict.py /opt/conda/envs/conplex-dti/lib/python3.9/site-packages/conplex_dti/cli/predict.py +#RUN chmod +x /home/omic/ConPLex/conplex_dti/cli/predict.py +#RUN chmod +x /opt/conda/envs/conplex-dti/lib/python3.9/site-packages/conplex_dti/cli/predict.py + +# Clone secse +#RUN git clone https://github.com/KeenThera/SECSE.git +#RUN mv /home/omic/ConPLex/SECSE/secse /home/omic/ConPLex/secse && rm -r /home/omic/ConPLex/SECSE && rm -r /home/omic/ConPLex/secse/scoring +#COPY secse/scoring /home/omic/ConPLex/secse/scoring +#COPY secse/grow_processes.py /home/omic/ConPLex/secse/scoring/grow_processes.py +#RUN chmod +x /home/omic/ConPLex/secse/grow_processes.py +#RUN chmod +x /home/omic/ConPLex/secse/scoring/ranking.py +#RUN chmod +x /home/omic/ConPLex/secse/growing/mutation/mutation.py + +# Add missing boost +#RUN conda install -n secse -c conda-forge boost + +# Install CREM for chemical growth +#RUN git clone https://github.com/DrrDom/crem.git +#RUN /opt/conda/envs/conplex-dti/bin/python3 -m pip install crem pandas numpy + +#WORKDIR /home/omic/ConPLex +#RUN chmod -R +x /home/omic/ConPLex + +#ENV PATH="$PATH:/opt/conda/envs/secse/bin:/home/omic/ConPLex/secse" +#ENV SECSE="/home/omic/ConPLex/secse" +#ENV PYTHONPATH="PYTHONPATH=/home/omic/ConPLex/secse:/home/omic/ConPLex:/home/omic/ConPLex/crem" +#ARG PYTHONPATH="PYTHONPATH=/home/omic/ConPLex/secse:/home/omic/ConPLex:/home/omic/ConPLex/crem" + +# Package into python script for running in nextflow +#COPY conplex.py /home/omic/ConPLex/conplex.py +#RUN chmod +x /home/omic/ConPLex/conplex.py + +#Mutation file +#RUN /opt/conda/envs/conplex-dti/bin/python3 -m pip install crem +#RUN wget https://www.dropbox.com/s/4r48ohopechsd59/replacements02_sa2.db.gz?dl=0 +#RUN mv replacements02_sa2.db.gz?dl=0 replacements02_sa2.db.gz +#RUN gzip -d replacements02_sa2.db.gz +#COPY fragment_mutations.py /home/omic/ConPLex/fragment_mutations.py +#RUN chmod +x /home/omic/ConPLex/fragment_mutations.py diff --git a/digital-trial/Dockerfile_tissue b/digital-trial/Dockerfile_tissue new file mode 100755 index 0000000..91ccdba --- /dev/null +++ b/digital-trial/Dockerfile_tissue @@ -0,0 +1,60 @@ +ARG CUDA=11.7 +FROM nvidia/cuda:${CUDA}.1-cudnn8-devel-ubuntu22.04 + +USER root +SHELL ["/bin/bash", "-c"] + +WORKDIR /home +RUN mkdir -p /home/omic +WORKDIR /home/omic + +ARG DEBIAN_FRONTEND=noninteractive +RUN apt-get update -y && apt-get install -y --no-install-recommends \ + build-essential \ + cmake \ + curl \ + git \ + wget \ + ca-certificates \ + hmmer \ + kalign \ + tzdata \ + && apt-get clean \ + && rm -rf /var/lib/apt/lists/* + +# Add the NVIDIA GPG key directly +RUN wget https://developer.download.nvidia.com/compute/cuda/repos/ubuntu2204/x86_64/cuda-keyring_1.0-1_all.deb +RUN dpkg -i cuda-keyring_1.0-1_all.deb && rm cuda-keyring_1.0-1_all.deb +RUN apt-get -y update && \ + apt-get install -y --no-install-recommends cuda-command-line-tools-11-7 + +RUN wget https://repo.anaconda.com/miniconda/Miniconda3-latest-Linux-x86_64.sh -O miniconda.sh \ + && bash miniconda.sh -b -p /opt/conda \ + && rm miniconda.sh \ + && ln -s /opt/conda/etc/profile.d/conda.sh /etc/profile.d/conda.sh \ + && echo ". /opt/conda/etc/profile.d/conda.sh" >> ~/.bashrc \ + && echo "conda activate base" >> ~/.bashrc \ + && find /opt/conda/ -follow -type f -name '*.a' -delete \ + && find /opt/conda/ -follow -type f -name '*.js.map' -delete \ + && /opt/conda/bin/conda clean -afy + +ENV PATH /opt/conda/bin:$PATH +RUN conda update -y -n base -c defaults conda + +# main conda env (tissue) +RUN conda create -n tissue python=3.9 +ENV PATH "$PATH:/opt/conda/envs/tissue/bin" +RUN echo "source activate tissue" >> ~/.bashrc +RUN conda clean --all -f -y + +# Install packages +RUN apt-get -y update && apt-get install -y ca-certificates && update-ca-certificates +RUN /opt/conda/envs/tissue/bin/python3 -m pip install pandas numpy + +# Package into python script for running in nextflow +COPY drug_tissue_distribution.py /home/omic/drug_tissue_distribution.py +RUN chmod +x /home/omic/drug_tissue_distribution.py + +# copy reference file +COPY HPA_normal_ihc_data.tsv . +COPY MANE_all_transcipts.csv . diff --git a/digital-trial/Note.txt b/digital-trial/Note.txt new file mode 100644 index 0000000..15cdebd --- /dev/null +++ b/digital-trial/Note.txt @@ -0,0 +1,5 @@ +Add options for metabolites not existing and process failed +Remove unnecessary data while process is running, take up too much memory + + +ncbiproteins_seq_exist.csv is replaced with ncbiproteins_seq_exist_reduce.csv so it will be able to fit to gitlab diff --git a/digital-trial/Phase1-2proteins.tsv b/digital-trial/Phase1-2proteins.tsv new file mode 100644 index 0000000..6f7731c --- /dev/null +++ b/digital-trial/Phase1-2proteins.tsv @@ -0,0 +1,217 @@ +MoleculeType Uniprot Symbol +Phase1 P22760 AADAC +Phase1 P08684 CYP3A4 +Phase1 Q96SQ9 CYP2S1 +Phase1 P10635 CYP2D6 +Phase1 Q8TAV3 CYP2W1 +Phase1 Q9HB55 CYP3A43 +Phase1 Q5TCH4 CYP4A22 +Phase1 Q6NT55 CYP4F22 +Phase1 P13584 CYP4B1 +Phase1 Q02928 CYP4A11 +Phase1 P78329 CYP4F2 +Phase1 Q08477 CYP4F3 +Phase1 Q9HBI6 CYP4F11 +Phase1 Q7Z449 CYP2U1 +Phase1 Q9UNU6 CYP8B1 +Phase1 Q16647 PTGIS +Phase1 P98187 CYP4F8 +Phase1 P24557 TBXAS1 +Phase1 Q9HCS2 CYP4F12 +Phase1 P22680 CYP7A1 +Phase1 O75881 CYP7B1 +Phase1 P19793 RXRA +Phase1 Q15788 NCOA1 +Phase1 Q96RI1 NR1H4 +Phase1 Q15596 NCOA2 +Phase1 P19099 CYP11B2 +Phase1 P11511 CYP19A1 +Phase1 Q16678 CYP1B1 +Phase1 A9YTQ3 AHRR +Phase1 P27540 ARNT +Phase1 Q9HBZ2 ARNT2 +Phase1 P35869 AHR +Phase1 P08686 CYP21A2 +Phase1 P10109 FDX1 +Phase1 Q6P4F2 FDX2 +Phase1 P05108 CYP11A1 +Phase1 P22570 FDXR +Phase1 P15538 CYP11B1 +Phase1 P01189 POMC +Phase1 Q9NYL5 CYP39A1 +Phase1 Q16850 CYP51A1 +Phase1 Q6ZWL3 CYP4V2 +Phase1 Q02318 CYP27A1 +Phase1 Q9Y6A2 CYP46A1 +Phase1 P20853 CYP2A7 +Phase1 P20813 CYP2B6 +Phase1 Q16696 CYP2A13 +Phase1 P24903 CYP2F1 +Phase1 P51589 CYP2J2 +Phase1 P05181 CYP2E1 +Phase1 P11509 CYP2A6 +Phase1 P33260 CYP2C18 +Phase1 P11712 CYP2C9 +Phase1 P33261 CYP2C19 +Phase1 P10632 CYP2C8 +Phase1 P20815 CYP3A5 +Phase1 P24462 CYP3A7 +Phase1 P05177 CYP1A2 +Phase1 P04798 CYP1A1 +Phase1 P16435 POR +Phase1 Q6V0L0 CYP26C1 +Phase1 Q9NR63 CYP26B1 +Phase1 O43174 CYP26A1 +Phase1 Q6VVX0 CYP2R1 +Phase1 Q07973 CYP24A1 +Phase1 O15528 CYP27B1 +Phase1 Q9NUB1 ACSS1 +Phase1 Q9NR19 ACSS2 +Phase1 P07327 ADH1A +Phase1 P00325 ADH1B +Phase1 P08319 ADH4 +Phase1 P00326 ADH1C +Phase1 P28332 ADH6 +Phase1 P40394 ADH7 +Phase1 P05091 ALDH2 +Phase1 P00352 ALDH1A1 +Phase1 P11766 ADH5 +Phase1 P30837 ALDH1B1 +Phase1 Q86WA6 BPHL +Phase1 P23219 PTGS1 +Phase1 P19801 AOC1 +Phase1 P31513 FMO3 +Phase1 Q01740 FMO1 +Phase1 Q99518 FMO2 +Phase1 Q969Z3 MTARC2 +Phase1 P00387 CYB5R3 +Phase1 Q5VT66 MTARC1 +Phase1 O43169 CYB5B +Phase1 Q6QHF9 PAOX +Phase1 Q9NWM0-3 SMOX +Phase1 P27338 MAOB +Phase1 P21397 MAOA +Phase1 Q15185 PTGES3 +Phase1 P08238 HSP90AB1 +Phase1 O00170 AIP +Phase1 P16083 NQO2 +Phase1 P23141 CES1 +Phase1 O00748 CES2 +Phase1 P30838 ALDH3A1 +Phase1 P07099 EPHX1 +Phase1 Q6UWW8 CES3 +Phase1 Q96DG6 CMBL +Phase1 O75106 AOC2 +Phase1 O75828 CBR3 +Phase1 Q16853 AOC3 +Phase2 P18440 NAT1 +Phase2 P11245 NAT2 +Phase2 P05177 CYP1A2 +Phase2 P23526 AHCY +Phase2 Q9HBK9 AS3MT +Phase2 Q99707 MTR +Phase2 Q9UBK8 MTRR +Phase2 P21964 COMT +Phase2 P78417 GSTO1 +Phase2 P40261 NNMT +Phase2 Q9Y5N5 N6AMT1 +Phase2 Q9UI30 TRMT112 +Phase2 P51580 TPMT +Phase2 Q00266 MAT1A +Phase2 P31153 MAT2A +Phase2 Q9NZL9 MAT2B +Phase2 Q68CK6 ACSM2B +Phase2 Q08AH1 ACSM1 +Phase2 Q8WU03 GLYATL2 +Phase2 Q5SZD4 GLYATL3 +Phase2 Q969I3 GLYATL1 +Phase2 Q6IB77 GLYAT +Phase2 P0C7M7 ACSM4 +Phase2 Q08AH3 ACSM2A +Phase2 Q6NUN0 ACSM5 +Phase2 P50225 SULT1A1 +Phase2 O00204-1 SULT2B1 +Phase2 P50226 SULT1A2 +Phase2 O75897 SULT1C4 +Phase2 Q9BR01 SULT4A1 +Phase2 O00204-2 SULT2B1 +Phase2 P49888 SULT1E1 +Phase2 Q96IU4 ABHD14B +Phase2 O00338 SULT1C2 +Phase2 P0DMM9 SULT1A3 +Phase2 Q06520 SULT2A1 +Phase2 O43704 SULT1B1 +Phase2 Q6IMI4 SULT6B1 +Phase2 Q9NX62 BPNT2 +Phase2 Q8TB61 SLC35B2 +Phase2 Q9H1N7 SLC35B3 +Phase2 P50443 SLC26A2 +Phase2 Q9H2B4 SLC26A1 +Phase2 O43252 PAPSS1 +Phase2 O95340 PAPSS2 +Phase2 P0DMN0 SULT1A4 +Phase2 O95861 BPNT1 +Phase2 O60704 TPST2 +Phase2 O60507 TPST1 +Phase2 Q9NZ53 PODXL2 +Phase2 O75223 GGCT +Phase2 Q96KP4 CNDP2 +Phase2 Q6P531 GGT6 +Phase2 P36269 GGT5 +Phase2 A6NGU5 GGT3P +Phase2 Q9UJ14 GGT7 +Phase2 P19440 GGT1 +Phase2 P48637 GSS +Phase2 O14841 OPLAH +Phase2 P48506 GCLC +Phase2 P48507 GCLM +Phase2 Q8WUX2 CHAC2 +Phase2 Q9BUX1 CHAC1 +Phase2 P0CG29 GSTT2 +Phase2 Q7RTV2 GSTA5 +Phase2 O15217 GSTA4 +Phase2 O60760 HPGDS +Phase2 P09211 GSTP1 +Phase2 P0CG30 GSTT2B +Phase2 Q9H4Y5 GSTO2 +Phase2 P21266 GSTM3 +Phase2 P30711 GSTT1 +Phase2 P09488 GSTM1 +Phase2 Q16772 GSTA3 +Phase2 Q03013 GSTM4 +Phase2 O43708 GSTZ1 +Phase2 P09210 GSTA2 +Phase2 P08263 GSTA1 +Phase2 P28161 GSTM2 +Phase2 P46439 GSTM5 +Phase2 Q9Y2Q3 GSTK1 +Phase2 P10620 MGST1 +Phase2 O14880 MGST3 +Phase2 Q99735 MGST2 +Phase2 P10768 ESD +Phase2 P14550 AKR1A1 +Phase2 P0DTE4 UGT2A1 +Phase2 P0DTE5 UGT2A1 +Phase2 Q9BY64 UGT2B28 +Phase2 P35504 UGT1A5 +Phase2 P36537 UGT2B10 +Phase2 O75310 UGT2B11 +Phase2 Q9HAW7 UGT1A7 +Phase2 O75795 UGT2B17 +Phase2 P16662 UGT2B7 +Phase2 Q9HAW9 UGT1A8 +Phase2 Q6NUS8 UGT3A1 +Phase2 P35503 UGT1A3 +Phase2 O60656 UGT1A9 +Phase2 P54855 UGT2B15 +Phase2 P06133 UGT2B4 +Phase2 P22310 UGT1A4 +Phase2 Q6UWM9 UGT2A3 +Phase2 Q3SY77 UGT3A2 +Phase2 P22309 UGT1A1 +Phase2 P19224 UGT1A6 +Phase2 Q9NUJ1 ABHD10 +Phase2 Q9NTN3 SLC35D1 +Phase2 Q16851 UGP2 +Phase2 O60701 UGDH +Phase2 Q9HAW8 UGT1A10 diff --git a/digital-trial/README.md b/digital-trial/README.md new file mode 100644 index 0000000..6769df4 --- /dev/null +++ b/digital-trial/README.md @@ -0,0 +1,42 @@ +# Digital Trial Pipeline +## v1 steps +| Step | Status | Model | Input | Output | Notes | +| ---- | ------ | ----- | ----- | ------ | ----- | +|1. Metabolite Prediction | done | biotransformer | SMILES | DRUG_out.txt | intermediate step | +|2. Drug & metabolite - screening against patient proteome | done | ConPlex | patient.fasta from digital patient step 3 (vcf2prot); "DRUG_out.txt" | "patientID_DRUG_significant_interactions.tsv" | intermediate step - pairs are sorted by scores and filtered for next step +|3. Biological processes/Pathway enrichment analysis | done | stringDB API | "patientID_DRUG_significant_interactions.tsv" | DRUG_patientID_network_enrichment.tsv; DRUG_patientID_network_interactions.tsv | biological processes/pathways for proteins that bind to the drug or metabolites - to use ML model to summarise output +|4. Drug localization | | | | | + + +### Pipeline steps descriptions and tasks + +1. Metabolite Prediction + - predicted metabolites of input drug + - filtered out intermediate metabolites and excluded from subsequent steps + +2. Drug/Metabolite screen against patient proteome + - columns 2 & 3 being a pair (SMILES-ENST#) and column 4 with corresponding score for the pair in each row + - UI tasks + - [ ] allow user to input target [Ensembl ID] of test drug and we show score of interaction as main interactions; add following description: + +##### +| Score | Interaction probability | +| > 0.9 | Excellent | +| 0.8 - 0.9 | Acceptable | +| < 0.8 | Highly unlikely | + - [ ] add a slider for adjusting the cutoff score (set default cutoff on slider to 0.75) + - [ ] show the significant interactions as table for top 20 drugs/metabolites against proteins ordered by scores below the main interaction + +3. Biological processes/Pathway enrichment + - Is the drug strongly and specifically interacting with the target and/or do we have a lot of drug or metabolite off-target effects + - [ ] create ML model to create summary description using "XXX_network_enrichment.tsv" + +4. Drug localization + - which organs/tissues are the interacting proteins usually localised, Human Protein Atlas tissue-enhanced protein lists for tissue proportion estimate. Heat map of proteins of interest expressed in each tissue. + - [ ] get list of protein expressed in which tissue from HPA and upload to gitlab + +___________________________________ + +## v2 planned steps +5. Drug clearance + - mutations in Phase1/2 proteins diff --git a/digital-trial/conplex.py b/digital-trial/conplex.py new file mode 100755 index 0000000..45dff64 --- /dev/null +++ b/digital-trial/conplex.py @@ -0,0 +1,145 @@ +import argparse +import pandas as pd +import os +import numpy as np +import re +import subprocess +import sys + +def parse_fasta_seq(fasta_file): + try: + with open(fasta_file, 'r') as file: + return [line.strip() for line in file if not line.startswith('>')] + except Exception as e: + raise ValueError(f"Error parsing FASTA file: {fasta_file}") from e + +def parse_fasta_name(fasta_file): + try: + with open(fasta_file, 'r') as file: + return [line.strip()[1:] for line in file if line.startswith('>')] + except Exception as e: + raise ValueError(f"Error parsing FASTA file: {fasta_file}") from e + +def create_tsv_frags(fastas, smis, screening_batch_size): + protein_sequence_list = parse_fasta_seq(fastas) + protein_name_list = parse_fasta_name(fastas) + full_df = pd.read_csv(smis, delimiter='\t', names=['smiles', 'chem_id']) + + #splits = int(np.ceil((len(protein_sequence_list))/screening_batch_size)) + #protein_sequence_list = np.array_split(protein_sequence_list, splits) + #protein_name_list = np.array_split(protein_name_list, splits) + + try: + [full_df.assign(protein_id = [protein_id]*full_df.shape[0]).assign(protein_sequence = [protein_sequence]*full_df.shape[0])[['protein_id', 'chem_id', 'protein_sequence', 'smiles']].to_csv(f"{protein_id}.tsv", sep='\t', header=False, index=False) for protein_id, protein_sequence in zip(protein_name_list,protein_sequence_list)] + tsv_files = [f"{protein_id}.tsv" for protein_id in protein_name_list] + return tsv_files + + except Exception as e: + print(f"Failed to process files: {e}") + raise + + +def screen_frags(tsv_files): + #[subprocess.run(["conplex-dti", "predict","--data-file", tsv_file,"--model-path", "/home/omic/ConPLex/models/ConPLex_v1_BindingDB.pt","--outfile", f"{os.path.splitext(os.path.basename(tsv_file))[0]}_results.tsv"]) for tsv_file in tsv_files] + [subprocess.run(["conplex-dti", "predict","--data-file", tsv_file,"--model-path", "/home/omic/ConPLex/models/Run_best_model_epoch46.pt","--outfile", f"{os.path.splitext(os.path.basename(tsv_file))[0]}_results.tsv"]) for tsv_file in tsv_files] + scores_files = [f"{os.path.splitext(os.path.basename(tsv_file))[0]}_results.tsv" for tsv_file in tsv_files] + #scores_files = [] + #for tsv_file in tsv_files: + #base_name = os.path.splitext(os.path.basename(tsv_file))[0] + #scores_file = f"{base_name}_scores.tsv" + + #subprocess.run([ + # "conplex-dti", "predict", + # "--data-file", tsv_file, + # "--model-path", "/home/omic/ConPLex/models/ConPLex_v1_BindingDB.pt", + # "--outfile", f"{base_name}_results.tsv" + #]) + + #with open(scores_file, 'w') as f: + # f.write("chem_id\tprotein_id\tscore\n") + + #with open(f"{base_name}_results.tsv", 'r') as results_file, open(f"{base_name}_temp.tsv", 'w') as temp_file: + # for line in results_file: + # fields = line.strip().split('\t') + # temp_file.write('\t'.join(fields) + '\n') + + #merged_df = pd.read_csv(f"{base_name}_temp.tsv", sep='\t', names=['chem_id', 'protein_id', 'score']) + #tsv_df = pd.read_csv(tsv_file, sep='\t', names=['protein_id', 'chem_id', 'sequence', 'smiles']) + + #merged_df = merged_df.merge(tsv_df[['chem_id', 'smiles']], on='chem_id') + #merged_df.to_csv(scores_file, sep='\t', index=False) + + #os.remove(f"{base_name}_temp.tsv") + #scores_files.append(scores_file) + return scores_files + +def collect_frags(scores_files, fasta_file, outdir, split_write_df = 'no'): + def concatenate_dataframes(file_list): + df_list = [] + header = None + for i, file in enumerate(file_list): + if os.path.getsize(file) > 0: + if i == 0: + df = pd.read_csv(file, sep='\t', index_col=None) + if df.columns[0] == 'chem_id': + header = df.columns + else: + df = pd.read_csv(file, sep='\t', index_col=None, header=None) + df.columns = ['chem_id', 'protein_id', 'score', 'smiles'] + else: + df = pd.read_csv(file, sep='\t', index_col=None, header=None) + if header is not None: + df.columns = header + df_list.append(df) + else: + print(f"Skipping empty file: {file}") + if df_list: + concatenated_df = pd.concat(df_list, ignore_index=True) + return concatenated_df + else: + return pd.DataFrame() + + scores_df = concatenate_dataframes(scores_files) + + if not scores_df.empty: + score_column_index = 2 if 'score' not in scores_df.columns else 'score' + scores_df[score_column_index] = pd.to_numeric(scores_df[score_column_index], errors='coerce') + scores_df = scores_df.dropna(subset=[score_column_index]) + sorted_scores_df = scores_df.sort_values(by=score_column_index, ascending=False) + if 'score' not in scores_df.columns: + sorted_scores_df.columns = ['chem_id', 'protein_id', 'score', 'hit', 'smiles'] + + base_name = os.path.splitext(os.path.basename(fasta_file))[0] + all_scores_file = os.path.join(outdir, f"{base_name}_all_scores.tsv") + sorted_scores_df.to_csv(all_scores_file, sep='\t', index=False, header=True) + + else: + print("No score files found or all score files are empty.") + + with open(fasta_file, 'r') as fasta: + fasta_lines = fasta.readlines() + fasta_sequence = fasta_lines[1].strip() if len(fasta_lines) > 1 else '' + + if not scores_df.empty: + df = sorted_scores_df + header = df.columns.tolist() + + if split_write_df == 'yes': + for index, row in df.iterrows(): + row_df = pd.DataFrame([row], columns=header) + csv_filename = f"{row['complex_name'].replace(' ', '-')}_hit.csv" + row_df.to_csv(os.path.join(outdir, csv_filename), index=False) + +if __name__ == "__main__": + parser = argparse.ArgumentParser(description="Process and screen fragments.") + parser.add_argument("--fastas", required=True, help="Path to the FASTA file.") + parser.add_argument("--smis", required=True, help="Path to the SMILES file.") + parser.add_argument("--screening_batch_size", type=int, default=100000, help="Batch size for screening.") + parser.add_argument("--outdir", default="output", help="Output directory.") + parser.add_argument("--split_write_df", default="no", help="Write all complexes in separate files") + + args = parser.parse_args() + + tsv_files = create_tsv_frags(args.fastas, args.smis, args.screening_batch_size) + scores_files = screen_frags(tsv_files) + #collect_frags(scores_files, args.fastas, args.outdir, args.split_write_df) diff --git a/digital-trial/drug_tissue_distribution.py b/digital-trial/drug_tissue_distribution.py new file mode 100644 index 0000000..a57a260 --- /dev/null +++ b/digital-trial/drug_tissue_distribution.py @@ -0,0 +1,39 @@ +import argparse +import pandas as pd +import numpy as np + +def get_tissue_distribution(file_name): + #load protein expression per tissue + HPA = pd.read_csv('/home/omic/HPA_normal_ihc_data.tsv', sep = '\t') + #load enst symbol mapping data + MANE_all_transcipts = pd.read_csv('/home/omic/MANE_all_transcipts.csv') + + #load interaction data + significant_interactions = pd.read_csv(file_name, sep = '\t') + + #filter out tissues with low confidence + HPA = HPA[(HPA['Level'] == 'Medium') | (HPA['Level'] == 'High')] + + #get protrin symbols from siginificant interactions + prot_enst = [i.split('_')[0] for i in pd.unique(significant_interactions['transcipt'])] + prot_symbol = [MANE_all_transcipts[MANE_all_transcipts['transcipt'] == i]['symbol'].iloc[0] for i in prot_enst] + prot_symbol = pd.unique(prot_symbol) + + #get protein expression per tissue + tissue_per_prot_symbol = [list(pd.unique(HPA[HPA['Gene name'] == i]['Tissue'])) for i in prot_symbol] + #transform list do array + tissue_per_prot_symbol_array = np.array([[i in j for i in pd.unique(HPA['Tissue'])] for j in tissue_per_prot_symbol]) + tissue_per_prot_symbol_pd = pd.DataFrame(tissue_per_prot_symbol_array) + tissue_per_prot_symbol_pd.columns = pd.unique(HPA['Tissue']) + tissue_per_prot_symbol_pd = tissue_per_prot_symbol_pd.set_index(prot_symbol) + + #save + save_name = file_name.split('significant_interactions.tsv')[0] + 'tissue_distribution.tsv' + tissue_per_prot_symbol_pd.to_csv(save_name, sep = '\t') + +if __name__ == "__main__": + parser = argparse.ArgumentParser(description="Get tissue distribution from *significant_interactions.tsv.") + parser.add_argument("--file_name", required=True, help="file_name") + args = parser.parse_args() + + get_tissue_distribution(args.file_name) diff --git a/digital-trial/get_round_2.py b/digital-trial/get_round_2.py new file mode 100755 index 0000000..14eea26 --- /dev/null +++ b/digital-trial/get_round_2.py @@ -0,0 +1,78 @@ +import argparse +import pandas as pd +import numpy as np +import subprocess +from itertools import chain + +seq_exist = pd.read_csv('/home/omic/ConPLex/MANE_all_transcipts.csv') + +def get_round_2(threshold, workdir, round): + #get output names + #get patient fasta name + fasta_name = subprocess.check_output([f'find {workdir} -name \*_variants_transcript_id_mutations.fasta' ], shell = True) + fasta_name = str(fasta_name).split('/')[-1].split('_variants_transcript_id_mutations.fasta')[0] + #get test drug + drug_name = subprocess.check_output([f'find {workdir} -name \*.csv' ], shell = True) + drug_name = [x for x in str(drug_name).split('/') if "round_1.csv" not in x][-1].split('.csv')[0] + name_out = drug_name + '_' + fasta_name + #get all work dir conplex files + #res_list = subprocess.check_output([f'ls {workdir}/*_results.tsv'], shell = True) + res_list = subprocess.check_output([f'find {workdir} -name \*_results.tsv' ], shell = True) + round_1_score_list = str(res_list).split('\'')[1].split('\\n')[:-1] + #read 1. round + transcipts_1 = [pd.read_csv(i, sep = '\t', header=None).sort_values([2], ascending=False) for i in round_1_score_list] + #get poition of drag interaction vs all metabolites + drug_pos = [[n for n, j in enumerate(list(i[0])) if j[:4] == 'drug'] for i in transcipts_1] + #drug score + drug_0_score = pd.concat([i[i[0] =='drug_0'] for i in transcipts_1]).rename({0:'Drug', 1:'Transcript', 2:'Score'}, axis = 1) + #filter all below threshold + transcipts_1 = [i[i[2] > threshold] for i in transcipts_1] + #save transcipt_conplex above threshold to one file + if round == 2: + inter_import = pd.concat(transcipts_1, ignore_index=True).rename({0:'drug/metabolite',1:'transcipt',2:'conplex_score'},axis = 1) + #add drug + test_smiles = pd.read_csv(f'{workdir}/smiles.smi', sep = '\t', header=None) + smi_ = [test_smiles[test_smiles[1] == i].iloc[0][0] for i in list(inter_import['drug/metabolite'])] + inter_import['smile'] = smi_ + inter_import[['drug/metabolite','smile','transcipt','conplex_score']].to_csv(f'{workdir}/{name_out}_significant_interactions.tsv',sep = '\t',index = False) + drug_0_score.to_csv(f'{workdir}/{name_out}_drug_scores.tsv',sep = '\t',index = False) + transcipts_1 = pd.DataFrame([(j.split('/')[-1].split('_results')[0], i.shape[0], i[2].mean(), k[0]) for i,j, k in zip(transcipts_1, round_1_score_list, drug_pos) if i.shape[0] != 0]) + #chack if any interaction is is above threshold for first roud + if round == 1: + if transcipts_1.shape == (0,0): + transcipts_1.to_csv(f'{workdir}/round_1.csv', index = False) + with open(f'{workdir}/round_1.fasta', 'w') as f: + f.write("all_data_is_filtered_out\n") + return 'STOP NO TRANSCIPTS ABOVE THRESHOLD' + + transcipts_1 = transcipts_1.rename({0:'transcipt_name',1:'number_of_iteracting_compounds', 2:'mean_binding_above_threshold', 3:'drug_position'}, axis='columns') + transcipts_1['if_drug_above_threshold'] = transcipts_1.iloc[:,1] > transcipts_1.iloc[:,3] + #if protein is mutated it has _2 in name, removes it + transcipt_names = [i.split('_')[0] for i in list(transcipts_1['transcipt_name'])] + transcipts_1['protein_name'] = [[seq_exist[seq_exist['transcipt'] == i].iloc[0]['symbol']][0] for i in transcipt_names] + #save data on first round + transcipts_1.to_csv(f'{workdir}/round_{round}.csv', index = False) + #get fasta for second round + if round == 1: + #get all transcipts of proteins above threshold + name_2_filttered = list(transcipts_1['protein_name']) + transcipts_2 = [list(seq_exist[seq_exist['symbol'] == i]['transcipt']) for i in name_2_filttered] + transcipts_2 = list(chain(*transcipts_2)) + transcipts_2 = list(np.unique((transcipts_2))) + #filter out transcripts already ran through complex + transcipts_2 = list(np.array(transcipts_2)[[i not in list(transcipts_1['transcipt_name']) for i in transcipts_2]]) + fasta_new = [['>'+i, seq_exist[seq_exist['transcipt'] == i]['seq'].iloc[0]] for i in transcipts_2] + fasta_new = list(chain(*fasta_new)) + #write fasta to run + with open(f'{workdir}/round_2.fasta', 'w') as f: + for line in fasta_new: + f.write(f"{line}\n") + +if __name__ == "__main__": + parser = argparse.ArgumentParser(description="Process and screen fragments.") + parser.add_argument("--threshold", required=True, type=float, help="Threshold for 1. round.of conplex scores") + parser.add_argument("--workdir", required=True, help="workdir") + parser.add_argument("--round", required=True, type=int, help="Round 1 or 2") + args = parser.parse_args() + + get_round_2(args.threshold, args.workdir, args.round) diff --git a/digital-trial/main_biotransformer.nf b/digital-trial/main_biotransformer.nf new file mode 100644 index 0000000..f7a332d --- /dev/null +++ b/digital-trial/main_biotransformer.nf @@ -0,0 +1,220 @@ +nextflow.enable.dsl=2 + + +process SUPER_TRANSFORMER { + container "${params.container_biotransformer}" + containerOptions "${params.containerOptions}" + publishDir "${params.outdir}/${params.project_name}/receptors", mode: 'copy' + debug true + + input: + path smiles_csv + + output: + path "${smiles_csv.simpleName}_out.csv" + + script: + """ + #!/bin/bash + workdir=`pwd` + cd /home/omic/biotransformer + ## Predicting Biotransformation Using the Human Super Transformer: + # This command predicts the biotransformation of molecules from an SDF input (example.csv) using the human super transformer (superbio) and annotates the metabolites with names and database IDs (from PubChem). + java -jar /home/omic/biotransformer/biotransformer -k pred -b superbio -isdf \$workdir/${smiles_csv.simpleName}.csv -ocsv \${workdir}/${smiles_csv.simpleName}_out.csv -osdf \${workdir}/${smiles_csv.simpleName}.sdf -a + """ +} + +process HUMAN_TRANSFORMER { + container "${params.container_biotransformer}" + containerOptions "${params.containerOptions}" + publishDir "${params.outdir}/${params.project_name}/sdf", mode: 'copy' + debug true + + input: + path smiles_csv + + output: + path "${smiles_csv.simpleName}_out.csv" + + script: + """ + #!/bin/bash + set -e + workdir=\$(pwd) + cd /home/omic/biotransformer + + # Function to get available memory percentage + get_available_mem_percent() { + free | awk '/Mem:/ {print int(\$7/\$2 * 100)}' + } + + # Function to log memory usage + log_memory() { + local pid=\$1 + echo "MEMLOG: Timestamp,BioTransformer Memory (MB),Available System Memory (%)" >&2 + while kill -0 \$pid 2>/dev/null; do + local biotrans_mem=\$(ps -o rss= -p \$pid | awk '{print \$1/1024}') + local avail_mem=\$(get_available_mem_percent) + echo "MEMLOG: \$(date '+%Y-%m-%d %H:%M:%S'),\$biotrans_mem,\$avail_mem" >&2 + if [ \$avail_mem -lt 5 ]; then + echo "MEMLOG: Available memory below 5%. Terminating process." >&2 + kill -15 \$pid + wait \$pid + echo 'PROCESS TERMINATED DUE TO LOW MEMORY' > "\${workdir}/${smiles_csv.simpleName}_out.csv" + exit 1 + fi + sleep 1800 # Sleep for 30 minutes + done + } + + # Calculate max Java heap size (90% of available memory) + max_heap=\$(free -g | awk '/Mem:/ {print int(\$7 * 0.9)}') + + # Start the biotransformer process + java -Xmx"\${max_heap}g" -jar /home/omic/biotransformer/biotransformer -a -k pred -b superbio -isdf "\$workdir/${smiles_csv.simpleName}.csv" -ocsv "\${workdir}/${smiles_csv.simpleName}_out.csv" -osdf "\${workdir}/${smiles_csv.simpleName}.sdf" -s 100 & + biotrans_pid=\$! + + # Start memory logging in the background + log_memory \$biotrans_pid & + log_pid=\$! + + # Wait for the biotransformer process to finish + wait \$biotrans_pid + status=\$? + + # Stop the logging process + kill \$log_pid 2>/dev/null || true + + if [ ! -s "\${workdir}/${smiles_csv.simpleName}_out.csv" ]; then + if [ \$status -ne 0 ] && [ ! -f "\${workdir}/${smiles_csv.simpleName}_out.csv" ]; then + echo 'PROCESS FAILED' > "\${workdir}/${smiles_csv.simpleName}_out.csv" + else + echo 'NO METABOLITES' > "\${workdir}/${smiles_csv.simpleName}_out.csv" + fi + fi + """ +} + +process METABOLITES_BY_MASS { + container "${params.container_biotransformer}" + containerOptions "${params.containerOptions}" + publishDir "${params.outdir}/${params.project_name}/graphs", mode: 'copy' + debug true + + input: + path smiles_csv + + output: + path "${smiles_csv.simpleName}_out.csv" + + script: + """ + #!/bin/bash + workdir=`pwd` + cd /home/omic/biotransformer + ## Identifying Metabolites with Specific Masses: + # This command identifies all human metabolites of compounds in example.csv with masses 292.0946 Da and 304.0946 Da (max depth = 2), with a mass tolerance of 0.01 Da. It provides annotations when available. + java -jar /home/omic/biotransformer/biotransformer -k cid -b allHuman -isdf \$workdir/${smiles_csv.simpleName}.csv -ocsv \${workdir}/${smiles_csv.simpleName}_out.csv -osdf \${workdir}/${smiles_csv.simpleName}.sdf -s 2 -m "292.0946;304.0946" -t 0.01 -a + """ +} + +process ORDERED_SEQUENCE { + container "${params.container_biotransformer}" + containerOptions "${params.containerOptions}" + publishDir "${params.outdir}/${params.project_name}/screening", mode: 'copy' + debug true + + input: + path smiles_csv + + output: + path "${smiles_csv.simpleName}_out.csv" + + script: + """ + #!/bin/bash + workdir=`pwd` + cd /home/omic/biotransformer + ## Simulating an Ordered Sequence of Metabolism: + # This command simulates an ordered sequence of metabolism for compounds in example.csv, starting with two steps of CYP450 oxidation, followed by one step of conjugation. The output is saved in an SDF file (output.sdf). + java -jar /home/omic/biotransformer/biotransformer -isdf \$workdir/${smiles_csv.simpleName}.csv -ocsv \${workdir}/${smiles_csv.simpleName}_out.csv -osdf \${workdir}/${smiles_csv.simpleName}.sdf -k pred -q "cyp450:2; phaseII:1" + """ +} + +process GET_FINAL_METABOLITES { + container "${params.container_biotransformer}" + containerOptions "${params.containerOptions}" + publishDir "${params.outdir}/${params.project_name}/screening", mode: 'copy' + debug true + + input: + path smiles_csv + + output: + path "${smiles_csv.simpleName}.txt" + + script: + """ + #!/opt/conda/envs/biotransformer/bin/python + from rdkit import Chem + import numpy as np + import pandas as pd + import requests + + #load biotransformet ouput + biotransformer = pd.read_csv('$smiles_csv') + + #check if metabolites exist + if biotransformer.shape[0] == 0: + with open('${smiles_csv.simpleName}.txt', 'w') as f: + f.write(f"NO_METABOLITES\\n") + + else: + metabolite_id = biotransformer['Metabolite ID'] + #get only metabolites that are not precursors for next metabolisam step + last_step_metabolites = biotransformer[[i not in list(biotransformer['Precursor ID']) for i in metabolite_id]] + last_step_metabolites = last_step_metabolites.drop_duplicates() + + #get only "active" ones + InChIKey = last_step_metabolites['InChIKey'] + InChIKey = pd.unique(InChIKey) + + #look if metabolite is in chembl + chembl = [] + for i in InChIKey: + curl_commend = f"https://www.ebi.ac.uk/chembl/api/data/molecule/{i}" + c = requests.get(curl_commend) + if c.status_code == 200: + #compund exists in chembl + chembl.append(True) + else: + #compund does not exists in chembl + chembl.append(False) + + + ChEMBL_bool = pd.DataFrame([InChIKey, chembl]).T.rename({0:'InChIKey',1:'in_ChEMBL'}, axis = 1) + last_step_metabolites = last_step_metabolites.merge(ChEMBL_bool, how='inner', on='InChIKey') + #if in PUBCHEM + last_step_metabolites['in_PUBCHEM'] = ~last_step_metabolites['PUBCHEM_CID'].isna() + ##logic + #if metabolite is not in PUBCHEM pass it to next step. We don't know if it's "active" + #has to be in ChEMBL and PUBCHEM to have "activity" + mask = (last_step_metabolites['in_PUBCHEM'] == False) | (np.sum(last_step_metabolites[['in_ChEMBL','in_PUBCHEM']], 1) == 2) + + #filtered metabolites + last_step_metabolites = last_step_metabolites[mask] + + + #convert biotransformer smi to canonical smi and eliminate nonsense structures + metabolite_smi = list(np.unique(last_step_metabolites['SMILES'])) + metabolite_smi = [Chem.CanonSmiles(i) for i in metabolite_smi if Chem.MolFromSmiles(i) != None] + + #final metabolites + metabolite_smi_filteres = np.array(metabolite_smi) + + #save smi + with open('${smiles_csv.simpleName}.txt', 'w') as f: + for n, line in enumerate(metabolite_smi_filteres): + f.write(f"{line}\\tmetabol_{n}\\n") + """ +} diff --git a/digital-trial/main_conplex.nf b/digital-trial/main_conplex.nf new file mode 100644 index 0000000..eb7d0ff --- /dev/null +++ b/digital-trial/main_conplex.nf @@ -0,0 +1,123 @@ +nextflow.enable.dsl=2 + + +process CONPLEX { + container "${params.container_conplex}" + containerOptions "${params.containerOptions}" + publishDir "${params.outdir}/${params.project_name}/receptors", mode: 'copy' + debug true + maxForks 5 + // scratch true //deletes workdir after successful completion + + input: + path smi_drug + path smi_metabolite + path mut_fasta + + output: + path "*drug_scores.tsv", emit: drug + path "*significant_interactions.tsv", emit: interactions + + script: + """ + workdir=`pwd` + + #concat mutated and reference fasta files. If it has name with _2 its mutated. + #after test is don retrun this + cat $mut_fasta /home/omic/ConPLex/MANE_referent_transcipt_reference.fasta > \$workdir/all_protein.fasta + + ### Test + #head -n 100 /home/omic/ConPLex/MANE_referent_transcipt_reference.fasta > \$workdir/test.fasta + #cat $mut_fasta \$workdir/test.fasta > \$workdir/all_protein.fasta + ### + + . activate conplex-dti + + #transform smi for conplex + python3 -c " +import sys +from rdkit import Chem +import numpy as np +import pandas as pd + +def converter(drug_csv, outname): + #open file to write drug/matabolite smi + out_file = open(outname + '.txt', 'w') + + #load drug csv; only has drug in separate lines + drug_smi_list = np.array(pd.read_csv(drug_csv)['SMILES']).tolist() + #original drugs are anotated with drug_{} + for n, smi in enumerate(drug_smi_list): + out_file.write('{}\\tdrug_{}\\n'.format(smi, n)) + + out_file.close() + +converter('$smi_drug', 'drag') + " + #concatinate drag and metabolites + cat drag.txt $smi_metabolite > \$workdir/smiles.smi + #conplex predicition 1. round + python3 /home/omic/ConPLex/conplex.py --fastas \$workdir/all_protein.fasta --smis \$workdir/smiles.smi --screening_batch_size ${params.screening_batch_size} --outdir \$workdir --split_write_df 'no' + #### this part is use to test all alternative transcripts (this part can be skipped for now, cuz we will use it for tissue specific analysis later) + ##get fasta for 2. round transcripts for proteins above threshold + #python3 /home/omic/ConPLex/get_round_2.py --threshold ${params.threshold} --workdir \$workdir --round 1 + ##conplex all transcipt for protrin above threshold + #python3 /home/omic/ConPLex/conplex.py --fastas \$workdir/round_2.fasta --smis \$workdir/smiles.smi --screening_batch_size ${params.screening_batch_size} --outdir \$workdir --split_write_df 'no' + #### + #get data for second run + python3 /home/omic/ConPLex/get_round_2.py --threshold ${params.threshold} --workdir \$workdir --round 2 + """ +} + +process NETWORK_ENRICHMENT { + container "${params.container_conplex}" + containerOptions "${params.containerOptions}" + publishDir "${params.outdir}/${params.project_name}/receptors", mode: 'copy' + debug true + maxForks 5 + + input: + path interactions + + output: + path "*_network_enrichment.tsv", emit: network_enrichment + path "*_network_interactions.tsv", emit: network_interactions + + script: + """ +#!/opt/conda/envs/conplex-dti/bin/python +import pandas as pd +import requests + +interaction_data = pd.read_csv('$interactions', sep = '\\t') +interaction_data = interaction_data.sort_values('conplex_score', ascending=False) + +#get list of enst above threshold +protein_network_list = '%0d'.join(list(pd.unique(interaction_data[interaction_data['conplex_score'] > ${params.protein_network_threshold}]['transcipt']))) + +#get urls +url_network = f'https://string-db.org/api/tsv/network?identifiers={protein_network_list}&species=9606' +url_enrichment = f'https://string-db.org/api/tsv/enrichment?identifiers={protein_network_list}&species=9606' + +#get enrichment dataframe +r = requests.get(url_enrichment) +lines = r.text.split('\\n') # pull the text from the response object and split based on new lines +data = [l.split('\\t') for l in lines] # split each line into its components based on tabs +enrichment_df = pd.DataFrame(data[1:-1], columns = data[0]) # convert to dataframe using the first row as the column names; drop empty, final row +#get protein interaction dataframe +r = requests.get(url_network) +lines = r.text.split('\\n') # pull the text from the response object and split based on new lines +data = [l.split('\\t') for l in lines] # split each line into its components based on tabs +# convert to dataframe using the first row as the column names; drop empty, final row +interactions_df = pd.DataFrame(data[1:-1], columns = data[0]) +# dataframe with the preferred names of the two proteins and the score of the interaction +#interactions_df = interactions_df[['preferredName_A', 'preferredName_B', 'score']] + +#output name +output_name = '$interactions'.split('/')[-1].split('_significant_interactions.tsv')[0] + +#save +enrichment_df.to_csv(f'{output_name }_network_enrichment.tsv',sep='\\t') +interactions_df.to_csv(f'{output_name }_network_interactions.tsv',sep='\\t') + """ +} diff --git a/digital-trial/main_tissue.nf b/digital-trial/main_tissue.nf new file mode 100755 index 0000000..156e75e --- /dev/null +++ b/digital-trial/main_tissue.nf @@ -0,0 +1,22 @@ +nextflow.enable.dsl=2 + + +process TISSUE_DISTRIBUTION { + container "${params.container_tissue}" + containerOptions "${params.containerOptions}" + publishDir "${params.outdir}/${params.project_name}/tissue_distribution", mode: 'copy' + debug true + + input: + path interaction + + output: + path "*tissue_distribution.tsv", emit: tissue_dist + + script: + """ + . activate tissue + + python3 /home/omic/drug_tissue_distribution.py --file_name ${interaction} + """ +} diff --git a/digital-trial/nextflow.config b/digital-trial/nextflow.config new file mode 100644 index 0000000..3141b76 --- /dev/null +++ b/digital-trial/nextflow.config @@ -0,0 +1,15 @@ +manifest { + name = 'Digital Trial' + author = 'omic' + recurseSubmodules = true + homePage = 'https://gitlab.com/omic/next/registry/tools/digital-trial.git' + description = 'Digital drug protein interactions' + mainScript = 'main.nf' + nextflowVersion = '!>=21.04.3' + defaultBranch = 'master' +} + +docker { + enabled = true + temp = 'auto' +} diff --git a/digital-trial/params.json b/digital-trial/params.json new file mode 100644 index 0000000..49b74cc --- /dev/null +++ b/digital-trial/params.json @@ -0,0 +1,192 @@ +{ + "params": { + "// GENERAL PARAMETERS": {}, + "outdir": { + "type": "folder", + "description": "Output directory for results", + "default": "/mnt/OmicNAS/private/old/gabe/digital_trials", + "required": true, + "pipeline_io": "output", + "var_name": "params.outdir", + "examples": [ + "/mnt/OmicNAS/private/old/gabe/digital_trials", + "/path/to/custom/output" + ], + "pattern": ".*", + "validation": {}, + "notes": "Directory where all pipeline results will be stored" + }, + "project_name": { + "type": "string", + "description": "Project identifier", + "default": "test", + "required": true, + "pipeline_io": "parameter", + "var_name": "params.project_name", + "examples": [ + "test", + "production", + "drug_metabolism_study" + ], + "pattern": ".*", + "validation": {}, + "notes": "Identifier for the digital trials project" + }, + "containerOptions": { + "type": "string", + "description": "Container runtime options", + "default": "--gpus all --rm -v /mnt:/mnt", + "required": false, + "pipeline_io": "parameter", + "var_name": "params.containerOptions", + "examples": [ + "--gpus all --rm -v /mnt:/mnt", + "--rm -v /data:/data" + ], + "pattern": ".*", + "validation": {}, + "notes": "Docker container runtime options for GPU usage and volume mounts" + }, + "// BIOTRANSFORMER PARAMETERS": {}, + "container_biotransformer": { + "type": "string", + "description": "BioTransformer container image", + "default": "biotransformer:latest", + "required": true, + "pipeline_io": "parameter", + "var_name": "params.container_biotransformer", + "examples": [ + "biotransformer:latest", + "biotransformer:v1.0" + ], + "pattern": ".*", + "validation": {}, + "notes": "Docker container image for BioTransformer module" + }, + "ligands": { + "type": "folder", + "description": "Path to input ligands directory", + "default": "/Workspace/next/registry/pipelines/digital_trials/input", + "required": true, + "pipeline_io": "input", + "var_name": "params.ligands", + "examples": [ + "/Workspace/next/registry/pipelines/digital_trials/input", + "/path/to/ligands" + ], + "pattern": ".*", + "validation": {}, + "notes": "Directory containing CSV files with ligand data for metabolic transformation" + }, + "mode": { + "type": "string", + "description": "BioTransformer operation mode", + "default": "HUMAN", + "required": true, + "pipeline_io": "parameter", + "var_name": "params.mode", + "examples": [ + "HUMAN", + "SUPER", + "MASS", + "ORDERED" + ], + "pattern": "^(HUMAN|SUPER|MASS|ORDERED)$", + "enum": [ + "HUMAN", + "SUPER", + "MASS", + "ORDERED" + ], + "validation": {}, + "notes": "IMPORTANT: Use HUMAN mode as it's the only fully implemented option that returns expected metabolism to the last step" + }, + "// CONPLEX PARAMETERS": {}, + "container_conplex": { + "type": "string", + "description": "CONPLEX container image", + "default": "conplex_dig_pat:latest", + "required": true, + "pipeline_io": "parameter", + "var_name": "params.container_conplex", + "examples": [ + "conplex_dig_pat:latest", + "conplex_dig_pat:v1.0" + ], + "pattern": ".*", + "validation": {}, + "notes": "Docker container image for CONPLEX module" + }, + "mutated_protein_fasta": { + "type": "folder", + "description": "Path to mutated protein FASTA files directory", + "default": "/Workspace/next/registry/pipelines/digital_trials/input", + "required": true, + "pipeline_io": "input", + "var_name": "params.mutated_protein_fasta", + "examples": [ + "/Workspace/next/registry/pipelines/digital_trials/input", + "/path/to/protein/fasta/files" + ], + "pattern": ".*", + "validation": {}, + "notes": "Directory containing FASTA files with mutated protein sequences" + }, + "threshold": { + "type": "number", + "description": "Binding affinity threshold for interactions", + "default": 0.7, + "required": false, + "pipeline_io": "parameter", + "var_name": "params.threshold", + "examples": [ + 0.5, + 0.7, + 0.9 + ], + "pattern": "^\\d+(\\.\\d+)?$", + "validation": { + "min": 0.0, + "max": 1.0 + }, + "notes": "Threshold value for determining significant binding interactions" + }, + "screening_batch_size": { + "type": "integer", + "description": "Batch size for virtual screening", + "default": 100000, + "required": false, + "pipeline_io": "parameter", + "var_name": "params.screening_batch_size", + "examples": [ + 10000, + 100000, + 1000000 + ], + "pattern": "^\\d+$", + "validation": { + "min": 1 + }, + "notes": "Batch size for virtual screening (100k is ideal to optimize performance)" + }, + "protein_network_threshold": { + "type": "number", + "description": "Threshold for protein network analysis", + "default": 0.95, + "required": false, + "pipeline_io": "parameter", + "var_name": "params.protein_network_threshold", + "examples": [ + 0.9, + 0.95, + 0.99 + ], + "pattern": "^\\d+(\\.\\d+)?$", + "validation": { + "min": 0.0, + "max": 1.0 + }, + "notes": "Threshold value for protein-protein interaction network construction" + } + } +} diff --git a/digital-trial/test.nf b/digital-trial/test.nf new file mode 100644 index 0000000..456f794 --- /dev/null +++ b/digital-trial/test.nf @@ -0,0 +1,61 @@ +nextflow.enable.dsl=2 + +//BIOTRANSFORMER +params.container_biotransformer = 'biotransformer:latest' +params.containerOptions = '--gpus all --rm -v /mnt:/mnt' +params.outdir = '/mnt/OmicNAS/private/old/gabe/digital_trials' +params.project_name = 'test' +params.ligands = '/Workspace/next/registry/pipelines/digital_trials/input' + +//IMPOTRANT!!! use HUMAN. Only one that returns what is expected. metabolism to the last step. It's only one properly set up +params.mode = 'HUMAN' // Options: SUPER, HUMAN, MASS, ORDERED # only HUMAN is fully implemented + +//CONPLEX +params.container_conplex = 'conplex_dig_pat:latest' +params.mutated_protein_fasta = '/Workspace/next/registry/pipelines/digital_trials/input' +params.threshold = 0.8 //0.5 //0.7 +params.screening_batch_size =100000 //100k is ideal to optimize performance with virtual screening +params.protein_network_threshold = 0.95 + +//TISSUE DISTRIBUTION +params.container_tissue = 'tissue:latest' + +//BIOTRANSFORMER +include { SUPER_TRANSFORMER } from './main_biotransformer.nf' +include { HUMAN_TRANSFORMER } from './main_biotransformer.nf' +include { METABOLITES_BY_MASS } from './main_biotransformer.nf' +include { ORDERED_SEQUENCE } from './main_biotransformer.nf' +include { GET_FINAL_METABOLITES } from './main_biotransformer.nf' +//CONPLEX +include { CONPLEX } from './main_conplex.nf' +include { NETWORK_ENRICHMENT } from './main_conplex.nf' +//TISSUE_DISTRIBUTION +include { TISSUE_DISTRIBUTION } from './main_tissue.nf' + +workflow { + //BIOTRANSFORMER + lig_ch = Channel.fromPath("${params.ligands}/*.csv") + switch (params.mode) { + case 'SUPER': + SUPER_TRANSFORMER(lig_ch) + break + case 'HUMAN': + HUMAN_TRANSFORMER(lig_ch) + break + case 'MASS': + METABOLITES_BY_MASS(lig_ch) + break + case 'ORDERED': + ORDERED_SEQUENCE(lig_ch) + break + default: + println("Invalid mode specified: ${params.mode}") + } + GET_FINAL_METABOLITES(HUMAN_TRANSFORMER.out) + //CONPLEX + pat_fasta = Channel.fromPath("${params.mutated_protein_fasta}/*.fasta") + CONPLEX(lig_ch, GET_FINAL_METABOLITES.out, pat_fasta) + NETWORK_ENRICHMENT(CONPLEX.out.interactions) + //TISSUE DISTRIBUTION + TISSUE_DISTRIBUTION(CONPLEX.out.interactions) +} diff --git a/digital-trial/test.nf.save b/digital-trial/test.nf.save new file mode 100644 index 0000000..a7a05ff --- /dev/null +++ b/digital-trial/test.nf.save @@ -0,0 +1,49 @@ +nextflow.enable.dsl=2 + +//BIOTRANSFORMER +params.container_biotransformer = 'biotransformer:latest' +params.containerOptions = '--gpus all --rm -v /mnt:/mnt' +params.outdir = '/mnt/OmicNAS/private/old/gabe/digital_trials' +params.project_name = 'test' +params.ligands = '/Workspace/next/registry/pipelines/digital_trials/input' + +//IMPOTRANT!!! use HUMAN. Only one that returns what is expected. metabolism to the last step. It's only one properly set up +params.mode = 'HUMAN' // Options: SUPER, HUMAN, MASS, ORDERED # only HUMAN is fully implemented + +//CONPLEX +params.container_conplex= 'conplex_dig_pat' +params.mutated_protein_fasta = '/Workspace/next/registry/pipelines/digital_trials/input/*.fasta' +params.threshold = 0.2 //0.75 +params.screening_batch_size =100000 //100k is ideal to optimize performance with virtual screening + +//BIOTRANSFORMER +include { SUPER_TRANSFORMER } from './main_biotransformer.nf' +include { HUMAN_TRANSFORMER } from './main_biotransformer.nf' +include { METABOLITES_BY_MASS } from './main_biotransformer.nf' +include { ORDERED_SEQUENCE } from './main_biotransformer.nf' +include { GET_FINAL_METABOLITES } from './main_biotransformer.nf' +//CONPLEX +include { CONPLEX } from './main_conplex.nf' + +workflow { + //BIOTRANSFORMER + lig_ch = Channel.fromPath("${params.ligands}/*.csv") + switch (params.mode) { + case 'SUPER': + SUPER_TRANSFORMER(lig_ch) + break + case 'HUMAN': + HUMAN_TRANSFORMER(lig_ch) + break + case 'MASS': + METABOLITES_BY_MASS(lig_ch) + break + case 'ORDERED': + ORDERED_SEQUENCE(lig_ch) + break + default: + println("Invalid mode specified: ${params.mode}") + } + GET_FINAL_METABOLITES(HUMAN_TRANSFORMER.out) + //CONPLEX +} diff --git a/digital_patient_extract_metrics.py b/digital_patient_extract_metrics.py new file mode 100644 index 0000000..5c7328c --- /dev/null +++ b/digital_patient_extract_metrics.py @@ -0,0 +1,239 @@ +import pandas as pd +import numpy as np +import argparse + +#get data framw with ENST ids and tissue specific expression +human_protein_atlas = '/home/omic/HPA_normal_ihc_data.tsv' +mane = '/home/omic/MANE_all_transcipts.csv' + +#extrect enst with hight expression per tissue and match to enst ids +HPA_normal_ihc_data = pd.read_csv(human_protein_atlas, sep = '\t') +MANE_all_transcipts = pd.read_csv(mane) + +#change name to merge +HPA_normal_ihc_data = HPA_normal_ihc_data.rename({'Gene':'Ensembl_Gene'}, axis=1) + +#merge dfs +HPA_normal_ihc_data = MANE_all_transcipts.merge(HPA_normal_ihc_data, left_on='Ensembl_Gene', right_on='Ensembl_Gene') + +#drop not needed colums +HPA_normal_ihc_data = HPA_normal_ihc_data.drop(['Unnamed: 0', 'seq', 'Ensembl_Gene'], axis=1) + +#get only hight expressed proteins +HPA_normal_hight = HPA_normal_ihc_data[HPA_normal_ihc_data['Level'] == 'High'] + +def get_n_metabolites(file): + """ + Get number of metabolites for a drug + input metabolite file from GET_FINAL_METABOLITES + """ + with open(file, 'r') as f: + first_line = f.readline().strip() + if first_line == 'NO_METABOLITES' or first_line == '': + return 0 + metabol = pd.read_csv(file, sep = '\t', header=None) + return metabol.shape[0] + +def get_conplex_metric(file_drug, file_all_interactions, target): + """ + Get merrics of interest in dataframe and a list of ENTSs with durg/metabolite interactions + with high expression based on Human Protein Atlas + input files from CONPLEX (first for drug interaction only, second for all interaction above threshold) + and traget ids from pipeline input csv file + """ + #drug target interaction + drug_interactions = pd.read_csv(file_drug, sep = '\t') + + #drug target protein ents + ensts = target + scors = [] + for enst in ensts: + scor = drug_interactions[drug_interactions['Transcript'] == enst]['Score'] + scors.append(scor) + + # mean_drug_scor = avg(scors) + mean_drug_scor = 0 + max_drug_scor = 0 + if len(scors) > 0: + mean_drug_scor = pd.concat(scors).mean() # 0 if empty + max_drug_scor = pd.concat(scors).max() # 0 if empty + + #drug/metabolite target interaction — only 'transcipt' and 'conplex_score' are + # referenced below (the 'smile' and 'drug/metabolite' columns are the bulk of the + # 5+ GB file). Skipping them cuts memory ~10x and prevents OOM in 5 GB pods. + drug_interactions = pd.read_csv(file_all_interactions, sep = '\t', usecols=['transcipt', 'conplex_score']) + n_significant_int = len(drug_interactions) + + # Handle empty DataFrame case + if n_significant_int == 0: + df = pd.DataFrame([max_drug_scor, mean_drug_scor, np.nan, np.nan, 0, 0, 0, 0, np.nan]).T.rename( + {0:'max_drug_scor',1:'mean_drug_scor',2:'max_target_scor',3:'mean_target_scor', + 4:'n_significant_int',5:'n_unique_proteins_above_target_interaction', + 6:'n_interactions_above_target_interaction',7:'n_enst_with_hight_expression', + 8:'mean_scor_with_hight_expression'}, axis = 1) + return df, [], drug_interactions + + #drug target protein ents + ensts = target + scors = [] + for enst in ensts: + scor = drug_interactions[drug_interactions['transcipt'] == enst]['conplex_score'] + scors.append(scor) + + mean_target_scor = 0 + max_target_scor = 0 + if len(scors) > 0: + mean_target_scor = pd.concat(scors).mean() # 0 if empty + max_target_scor = pd.concat(scors).max() # 0 if empty + + if np.isnan(max_target_scor): + pass + else: + drug_interactions = drug_interactions[drug_interactions['conplex_score'] >= max_target_scor].sort_values('conplex_score',ascending=False) + + n_unique_proteins_above_target_interaction = pd.unique(drug_interactions['transcipt']).shape[0] + n_interactions_above_target_interaction = drug_interactions.shape[0] + + uniq_enst = pd.unique(drug_interactions['transcipt']) + + #get only ensts with hight expression + uniq_enst_hight = list(set(pd.unique(HPA_normal_hight['transcipt'])).intersection(uniq_enst)) + enst_with_hight_expression = len(uniq_enst_hight) + + #sort based on a conplex score + drug_interactions = drug_interactions[[i in uniq_enst_hight for i in drug_interactions['transcipt']]] + + if len(drug_interactions) > 0: + mean_scor_with_hight_expression = drug_interactions['conplex_score'].mean() + hight_expression_enst_per_drug = pd.unique(drug_interactions['transcipt']) + else: + mean_scor_with_hight_expression = np.nan + hight_expression_enst_per_drug = [] + + df = pd.DataFrame([max_drug_scor, mean_drug_scor, max_target_scor, mean_target_scor, n_significant_int,n_unique_proteins_above_target_interaction,n_interactions_above_target_interaction,enst_with_hight_expression, mean_scor_with_hight_expression]).T.rename({0:'max_drug_scor',1:'mean_drug_scor',2:'max_target_scor',3:'mean_target_scor',4:'n_significant_int',5:'n_unique_proteins_above_target_interaction',6:'n_interactions_above_target_interaction',7:'n_enst_with_hight_expression',8:'mean_scor_with_hight_expression'}, axis = 1) + + return df, hight_expression_enst_per_drug, drug_interactions + +#look at tissue interactions specificly +def get_number_of_interacting_prot_per_tissue(names, hight_expression_enst_per_drug, drug_interactions, n_of_interactions = None): + ''' + Tissue specific interactions, only for high expressed proteins + input: + names; drug id, list + hight_expression_enst_per_drug; ensts with interaction of interest, make sure if follows names order and enst orderd by importance based on highest conplex score, lisf of list + drug_interactions; significant interactions filtered + n_of_interactions; n proteins to analyse ,default None use all proteins, use when there is no drug target interaction, interger + output: + number and min_max of tissue highly exprest proteins in interaction with a drug/metabolites, pandas df + ''' + n_interactions = [] + min_max_df = [] + + list_of_tissue_ids = [['Heart muscle'],\ + ['Rectum', 'Gallbladder', 'Esophagus', 'Stomach', 'Small intestine', 'Duodenum', 'Colon', 'Salivary gland'],\ + ['Breast', 'Lactating breast', 'Cervix', 'Fallopian tube', 'Ovary', 'Placenta', 'Endometrium', 'Vagina'],\ + ['Testis', 'Prostate', 'Epididymis', 'Seminal vesicle'],\ + ['Liver'],\ + ['Kidney', 'Urinary bladder'],\ + ['Cerebral cortex', 'Cerebellum', 'Caudate', 'Hippocampus', 'Hypothalamus', 'Dorsal raphe', 'Choroid plexus', 'Pituitary gland', 'Substantia nigra'],\ + ['Adrenal gland', 'Pancreas', 'Parathyroid gland', 'Thyroid gland'],\ + ['Appendix', 'Lymph node', 'Spleen', 'Thymus', 'Tonsil'],\ + ['Bone marrow'],\ + ['Bronchus', 'Lung', 'Nasopharynx', 'Oral mucosa'],\ + ['Eye', 'Retina'],\ + ['Skeletal muscle', 'Cartilage'],\ + ['Adipose tissue', 'Hair', 'Skin', 'Smooth muscle', 'Soft tissue', 'Sole of foot']] + + list_of_tissue_names = ['heart', 'gasrto_intestin', 'female_tissues', 'male_tissues', 'liver', 'kidney', 'brain', 'endocrine', 'immune',\ + 'hematopoietic', 'respiratory', 'sensory', 'musculoskeletal', 'others'] + + for t_id, t_name in zip(list_of_tissue_ids, list_of_tissue_names): + HPA_normal_hight_tis = HPA_normal_hight[[i in t_id for i in HPA_normal_hight['Tissue']]] + + tis = [HPA_normal_hight_tis[[i in j[:n_of_interactions] for i in HPA_normal_hight_tis['transcipt']]] for j in hight_expression_enst_per_drug] + tis = [i.drop_duplicates('transcipt') for i in tis] + + # Calculate highly expressed proteins once to use in both branches + num_highly_expressed = len(HPA_normal_hight_tis.drop_duplicates('transcipt')) + + # Handle empty drug_interactions case + if len(drug_interactions) == 0 or len(tis[0]) == 0: + min_max_df.append(pd.DataFrame([names, [np.nan], [np.nan], [np.nan], [num_highly_expressed], [0.0], [np.nan]])\ + .T.rename({0:'Drug_ID', + 1:f'max_{t_name}_interaction', + 2:f'min_{t_name}_interaction', + 3:f'mean_{t_name}_interaction', + 4:f'n_high_protein_in_{t_name}', + 5:f'share_affected_{t_name}', + 6:f'weighted_score_{t_name}'}, axis = 1)) + else: + #get max and min conplex sores for tissue specific ents !!! only for one drug ate a time not for a list (n_interactions is for a list) + inter = drug_interactions[drug_interactions['transcipt'].isin(tis[0]['transcipt'])].sort_values('conplex_score', ascending=False) + + # Calculate new metrics based on `inter` + num_affected = inter.shape[0] + share_affected = num_affected / num_highly_expressed if num_highly_expressed > 0 else 0.0 + mean_score = inter['conplex_score'].mean() + weighted_score = share_affected * mean_score + + min_max_df.append(pd.DataFrame([names, [inter['conplex_score'].max()], [inter['conplex_score'].min()], [mean_score], [num_highly_expressed], [share_affected], [weighted_score]])\ + .T.rename({0:'Drug_ID', + 1:f'max_{t_name}_interaction', + 2:f'min_{t_name}_interaction', + 3:f'mean_{t_name}_interaction', + 4:f'n_high_protein_in_{t_name}', + 5:f'share_affected_{t_name}', + 6:f'weighted_score_{t_name}'}, axis = 1)) + + #get number of interactions for tissue specific ents + n_interactions.append(pd.DataFrame([names, [len(i) for i in tis]]).T.rename({0:'Drug_ID',1:f'n_enst_{t_name}_above_target_interaction'}, axis = 1)) + + #merge interaction data + df_n_interactions = n_interactions[0] + for d in n_interactions[1:]: + df_n_interactions = df_n_interactions.merge(d, on='Drug_ID') + + #merge min max data + df_min_max_df = min_max_df[0] + for d in min_max_df[1:]: + df_min_max_df = df_min_max_df.merge(d, on='Drug_ID') + + n_interactions = df_n_interactions.merge(df_min_max_df, left_on='Drug_ID', right_on='Drug_ID') + + return n_interactions + +if __name__ == "__main__": + parser = argparse.ArgumentParser(description="Calculate biological metrics.") + parser.add_argument("--metabolites", required=True, help="Path to the metabolites file.") + parser.add_argument("--conplex_all_interactions", required=True, help="Path to the conplex_significant_interaction file.") + parser.add_argument("--conplex_drug", required=True, help="Path to the conplex_significant_interaction_drug_only file.") + parser.add_argument("--target", required=True, help="PATH to file csv with drug targets in ENST formet separated by space.") + + args = parser.parse_args() + + drug_name = args.metabolites.split('/')[-1].split('_out.txt')[0] + n_metabolites = get_n_metabolites(args.metabolites) + + #get target + target = pd.read_csv(args.target, header=None)[2:] + if len(target) == 2: + target = list(target.iloc[-1]) + target = target[0].split(' ') + else: + target = [] + + df_1, target_ents, drug_interactions = get_conplex_metric(args.conplex_drug, args.conplex_all_interactions, target) + + #if no target interaction use only 200 unique proteins with highest interactions per tissue + if df_1['max_target_scor'].isna()[0]: + target_interaction = 0 + df_2 = get_number_of_interacting_prot_per_tissue([drug_name], [target_ents], drug_interactions, n_of_interactions = 200) + else: + target_interaction = 1 + df_2 = get_number_of_interacting_prot_per_tissue([drug_name], [target_ents], drug_interactions) + + df = pd.concat([df_2, df_1], axis=1) + df['target_interaction_found'] = target_interaction + df['n_metabolites'] = n_metabolites + + df.to_csv(f'{drug_name}_biological_properties.tsv', sep = '\t', index=False) \ No newline at end of file diff --git a/docker-compose.yml b/docker-compose.yml new file mode 100644 index 0000000..c7e238a --- /dev/null +++ b/docker-compose.yml @@ -0,0 +1,21 @@ +version: '3.8' + +services: + tissue: + build: + context: . + dockerfile: Dockerfile_tissue + image: harbor.cluster.omic.ai/omic/digitaltrials/tissue:1.1.1 + chembl: + build: + context: . + dockerfile: Dockerfile_chembl + image: harbor.cluster.omic.ai/omic/digitaltrials/chembl:1.0.0 + network: + build: + context: . + dockerfile: Dockerfile_network + image: harbor.cluster.omic.ai/omic/digitaltrials/network:1.0.0 + volumes: + - /data/bugra/digital_trials/work/48/1e78bc2c0d60c8f0e72800d6226604:/workdir + - /data/:/data \ No newline at end of file diff --git a/drug_tissue_distribution.py b/drug_tissue_distribution.py new file mode 100644 index 0000000..bf190b1 --- /dev/null +++ b/drug_tissue_distribution.py @@ -0,0 +1,67 @@ +from pathlib import Path +import argparse +import pandas as pd +import numpy as np + +def get_tissue_distribution(file_name): + # Convert to Path object + file_path = Path(file_name) + + # Load interaction data — only the 'transcipt' column is referenced downstream + # (the bulk of the file is the 'smile' column we never use). Skipping it cuts + # memory ~30x on metabolite-heavy drugs (11 GB file -> ~400 MB resident). + significant_interactions = pd.read_csv(file_path, sep='\t', usecols=['transcipt']) + + # Check if data exists + if len(significant_interactions) == 0: + print(f"No significant interactions found in {file_name}. Creating empty output.") + tissue_per_prot_symbol_pd = pd.DataFrame() + save_name = str(file_path.parent / (file_path.stem.replace('_significant_interactions', '_tissue_distribution') + '.tsv')) + tissue_per_prot_symbol_pd.to_csv(save_name, sep='\t') + print(f"Saved empty tissue distribution to: {save_name}") + return + + # Load protein expression per tissue + HPA = pd.read_csv('/home/omic/HPA_normal_ihc_data.tsv', sep='\t') + # Load enst symbol mapping data + MANE_all_transcipts = pd.read_csv('/home/omic/MANE_all_transcipts.csv') + + # Filter out tissues with low confidence + HPA = HPA[(HPA['Level'] == 'Medium') | (HPA['Level'] == 'High')] + + + # Get protein symbols from significant interactions + prot_enst = [i.split('_')[0] for i in significant_interactions['transcipt'].unique()] + + # Safely map to symbols, skipping missing ones + prot_symbol = [] + for i in prot_enst: + matches = MANE_all_transcipts[MANE_all_transcipts['transcipt'] == i] + if not matches.empty: + prot_symbol.append(matches['symbol'].iloc[0]) + else: + print(f"Warning: Transcript {i} not found in MANE mapping. Skipping.") + + prot_symbol = pd.unique(prot_symbol) + + # Get unique tissues + unique_tissues = HPA['Tissue'].unique() + + # Get protein expression per tissue + tissue_per_prot_symbol = [list(HPA[HPA['Gene name'] == i]['Tissue'].unique()) for i in prot_symbol] + # Transform list to array + tissue_per_prot_symbol_array = np.array([[tissue in gene_tissues for tissue in unique_tissues] for gene_tissues in tissue_per_prot_symbol]) + + tissue_per_prot_symbol_pd = pd.DataFrame(tissue_per_prot_symbol_array, columns=unique_tissues, index=prot_symbol) + + # Save + save_name = str(file_path.parent / (file_path.stem.replace('_significant_interactions', '_tissue_distribution') + '.tsv')) + tissue_per_prot_symbol_pd.to_csv(save_name, sep='\t') + print(f"Saved tissue distribution to: {save_name}") + +if __name__ == "__main__": + parser = argparse.ArgumentParser(description="Get tissue distribution from *significant_interactions.tsv.") + parser.add_argument("--file_name", required=True, help="file_name") + args = parser.parse_args() + + get_tissue_distribution(args.file_name) \ No newline at end of file diff --git a/get_round_2.py b/get_round_2.py new file mode 100755 index 0000000..14eea26 --- /dev/null +++ b/get_round_2.py @@ -0,0 +1,78 @@ +import argparse +import pandas as pd +import numpy as np +import subprocess +from itertools import chain + +seq_exist = pd.read_csv('/home/omic/ConPLex/MANE_all_transcipts.csv') + +def get_round_2(threshold, workdir, round): + #get output names + #get patient fasta name + fasta_name = subprocess.check_output([f'find {workdir} -name \*_variants_transcript_id_mutations.fasta' ], shell = True) + fasta_name = str(fasta_name).split('/')[-1].split('_variants_transcript_id_mutations.fasta')[0] + #get test drug + drug_name = subprocess.check_output([f'find {workdir} -name \*.csv' ], shell = True) + drug_name = [x for x in str(drug_name).split('/') if "round_1.csv" not in x][-1].split('.csv')[0] + name_out = drug_name + '_' + fasta_name + #get all work dir conplex files + #res_list = subprocess.check_output([f'ls {workdir}/*_results.tsv'], shell = True) + res_list = subprocess.check_output([f'find {workdir} -name \*_results.tsv' ], shell = True) + round_1_score_list = str(res_list).split('\'')[1].split('\\n')[:-1] + #read 1. round + transcipts_1 = [pd.read_csv(i, sep = '\t', header=None).sort_values([2], ascending=False) for i in round_1_score_list] + #get poition of drag interaction vs all metabolites + drug_pos = [[n for n, j in enumerate(list(i[0])) if j[:4] == 'drug'] for i in transcipts_1] + #drug score + drug_0_score = pd.concat([i[i[0] =='drug_0'] for i in transcipts_1]).rename({0:'Drug', 1:'Transcript', 2:'Score'}, axis = 1) + #filter all below threshold + transcipts_1 = [i[i[2] > threshold] for i in transcipts_1] + #save transcipt_conplex above threshold to one file + if round == 2: + inter_import = pd.concat(transcipts_1, ignore_index=True).rename({0:'drug/metabolite',1:'transcipt',2:'conplex_score'},axis = 1) + #add drug + test_smiles = pd.read_csv(f'{workdir}/smiles.smi', sep = '\t', header=None) + smi_ = [test_smiles[test_smiles[1] == i].iloc[0][0] for i in list(inter_import['drug/metabolite'])] + inter_import['smile'] = smi_ + inter_import[['drug/metabolite','smile','transcipt','conplex_score']].to_csv(f'{workdir}/{name_out}_significant_interactions.tsv',sep = '\t',index = False) + drug_0_score.to_csv(f'{workdir}/{name_out}_drug_scores.tsv',sep = '\t',index = False) + transcipts_1 = pd.DataFrame([(j.split('/')[-1].split('_results')[0], i.shape[0], i[2].mean(), k[0]) for i,j, k in zip(transcipts_1, round_1_score_list, drug_pos) if i.shape[0] != 0]) + #chack if any interaction is is above threshold for first roud + if round == 1: + if transcipts_1.shape == (0,0): + transcipts_1.to_csv(f'{workdir}/round_1.csv', index = False) + with open(f'{workdir}/round_1.fasta', 'w') as f: + f.write("all_data_is_filtered_out\n") + return 'STOP NO TRANSCIPTS ABOVE THRESHOLD' + + transcipts_1 = transcipts_1.rename({0:'transcipt_name',1:'number_of_iteracting_compounds', 2:'mean_binding_above_threshold', 3:'drug_position'}, axis='columns') + transcipts_1['if_drug_above_threshold'] = transcipts_1.iloc[:,1] > transcipts_1.iloc[:,3] + #if protein is mutated it has _2 in name, removes it + transcipt_names = [i.split('_')[0] for i in list(transcipts_1['transcipt_name'])] + transcipts_1['protein_name'] = [[seq_exist[seq_exist['transcipt'] == i].iloc[0]['symbol']][0] for i in transcipt_names] + #save data on first round + transcipts_1.to_csv(f'{workdir}/round_{round}.csv', index = False) + #get fasta for second round + if round == 1: + #get all transcipts of proteins above threshold + name_2_filttered = list(transcipts_1['protein_name']) + transcipts_2 = [list(seq_exist[seq_exist['symbol'] == i]['transcipt']) for i in name_2_filttered] + transcipts_2 = list(chain(*transcipts_2)) + transcipts_2 = list(np.unique((transcipts_2))) + #filter out transcripts already ran through complex + transcipts_2 = list(np.array(transcipts_2)[[i not in list(transcipts_1['transcipt_name']) for i in transcipts_2]]) + fasta_new = [['>'+i, seq_exist[seq_exist['transcipt'] == i]['seq'].iloc[0]] for i in transcipts_2] + fasta_new = list(chain(*fasta_new)) + #write fasta to run + with open(f'{workdir}/round_2.fasta', 'w') as f: + for line in fasta_new: + f.write(f"{line}\n") + +if __name__ == "__main__": + parser = argparse.ArgumentParser(description="Process and screen fragments.") + parser.add_argument("--threshold", required=True, type=float, help="Threshold for 1. round.of conplex scores") + parser.add_argument("--workdir", required=True, help="workdir") + parser.add_argument("--round", required=True, type=int, help="Round 1 or 2") + args = parser.parse_args() + + get_round_2(args.threshold, args.workdir, args.round) diff --git a/k8s/README.md b/k8s/README.md new file mode 100644 index 0000000..bf8df32 --- /dev/null +++ b/k8s/README.md @@ -0,0 +1,15 @@ +# access the current workspace +kubectl exec -it -n bioinformatics $(kubectl get pod -l app=digital-trials-nextflow -n bioinformatics | grep Run | awk '{ print $1 }') -- bash +nextflow run main.nf -profile k8s + +# DEPRECATE: cleanup error pods in bioinformatics +kubectl get pod -n bioinformatics | grep -E "Pending|Error" | awk '{print $1}' | xargs -P 10 -I {} kubectl delete pod -n bioinformatics {} + +# sync data (/data/bugra/similarity-search/utility/vec_db/nf_fingerptint) from node to workspace +kubectl delete -f k8s/job-copy-node-to-pvc.yaml; kubectl apply -f k8s/job-copy-node-to-pvc.yaml + +# run the actual nextflow jobs +kubectl apply -f k8s/job-nextflow-digital-trials.yaml + +# [WARNING] destroy the curent nextflow job +kubectl delete -f k8s/job-nextflow-digital-trials.yaml \ No newline at end of file diff --git a/k8s/deployment-worksplace.yaml b/k8s/deployment-worksplace.yaml new file mode 100644 index 0000000..cb91799 --- /dev/null +++ b/k8s/deployment-worksplace.yaml @@ -0,0 +1,73 @@ +apiVersion: apps/v1 +kind: Deployment +metadata: + name: digital-trials-nextflow + namespace: bioinformatics +spec: + progressDeadlineSeconds: 600 + replicas: 1 + revisionHistoryLimit: 10 + selector: + matchLabels: + app: digital-trials-nextflow + strategy: + rollingUpdate: + maxSurge: 25% + maxUnavailable: 25% + type: RollingUpdate + template: + metadata: + creationTimestamp: null + labels: + app: digital-trials-nextflow + spec: + containers: + - command: + - sleep + - infinity + image: nextflow/nextflow:25.04.6 + imagePullPolicy: IfNotPresent + name: nextflow + workingDir: /mnt/dreamdock-data/digital_trials + resources: + limits: + cpu: "2" + memory: 4Gi + requests: + cpu: "1" + memory: 2Gi + terminationMessagePath: /dev/termination-log + terminationMessagePolicy: File + volumeMounts: + - mountPath: /mnt/ZINC-22 + name: zinc-22-volume + - mountPath: /mnt/dreamdock-data + name: dreamdock-volume + dnsPolicy: ClusterFirst + restartPolicy: Always + schedulerName: default-scheduler + securityContext: {} + serviceAccount: nextflow-sa + serviceAccountName: nextflow-sa + terminationGracePeriodSeconds: 30 + volumes: + - name: zinc-22-volume + hostPath: + path: /mnt/ZINC-22 + type: Directory + - name: dreamdock-volume + persistentVolumeClaim: + claimName: dreamdock-data +# --- +# apiVersion: v1 +# kind: PersistentVolumeClaim +# metadata: +# name: digital-trials-data +# namespace: bioinformatics +# spec: +# accessModes: +# - ReadWriteMany +# resources: +# requests: +# storage: 6000Gi +# storageClassName: truenas-nfs \ No newline at end of file diff --git a/k8s/job-copy-node-to-pvc.yaml b/k8s/job-copy-node-to-pvc.yaml new file mode 100644 index 0000000..77e7241 --- /dev/null +++ b/k8s/job-copy-node-to-pvc.yaml @@ -0,0 +1,54 @@ +apiVersion: batch/v1 +kind: Job +metadata: + name: job-data-copy-digital-trials-node-to-pvc + namespace: bioinformatics +spec: + backoffLimit: 6 + completionMode: NonIndexed + completions: 1 + manualSelector: false + parallelism: 1 + suspend: false + template: + spec: + containers: + - args: + - | + apk add --no-cache rsync + mkdir -p /target + rsync -av --exclude .git/ --exclude .git-old/ --exclude work/ /source/ /target/digital_trials/ + command: + - /bin/sh + - -c + image: alpine + imagePullPolicy: Always + name: data-copy + resources: {} + terminationMessagePath: /dev/termination-log + terminationMessagePolicy: File + volumeMounts: + - mountPath: /source + name: k8s-node + - mountPath: /target + name: pvc-volume + dnsPolicy: ClusterFirst + nodeSelector: + kubernetes.io/hostname: k8s-node23 + restartPolicy: Never + schedulerName: default-scheduler + securityContext: {} + terminationGracePeriodSeconds: 30 + tolerations: + - effect: NoExecute + key: omic-app + operator: Equal + value: similarity-search + volumes: + - name: pvc-volume + persistentVolumeClaim: + claimName: dreamdock-data + - hostPath: + path: /data/bugra/digital_trials ## CHANGE ME + type: "" + name: k8s-node \ No newline at end of file diff --git a/k8s/job-nextflow-digital-trials.yaml b/k8s/job-nextflow-digital-trials.yaml new file mode 100644 index 0000000..30b2d48 --- /dev/null +++ b/k8s/job-nextflow-digital-trials.yaml @@ -0,0 +1,52 @@ +apiVersion: batch/v1 +kind: Job +metadata: + name: job-nextflow-digital-trials + namespace: bioinformatics +spec: + backoffLimit: 1 + completionMode: NonIndexed + completions: 1 + manualSelector: false + parallelism: 1 + podReplacementPolicy: TerminatingOrFailed + suspend: false + template: + spec: + containers: + - command: + - /bin/bash + - -c + - cd /mnt/dreamdock-data/digital_trials && nextflow run main.nf -profile k8s ## CHANGE ME + image: nextflow/nextflow:25.04.6 + imagePullPolicy: IfNotPresent + name: nextflow + resources: + limits: + cpu: "4" + memory: 8Gi + requests: + cpu: "2" + memory: 4Gi + terminationMessagePath: /dev/termination-log + terminationMessagePolicy: File + volumeMounts: ## CHANGE ME + - mountPath: /mnt/ZINC-22 + name: zinc-22-volume + - mountPath: /mnt/dreamdock-data + name: dreamdock-volume + dnsPolicy: ClusterFirst + restartPolicy: Never + schedulerName: default-scheduler + securityContext: {} + serviceAccount: nextflow-sa + serviceAccountName: nextflow-sa + terminationGracePeriodSeconds: 30 + volumes: ## CHANGE ME + - name: zinc-22-volume + hostPath: + path: /mnt/ZINC-22 + type: Directory + - name: dreamdock-volume + persistentVolumeClaim: + claimName: dreamdock-data diff --git a/main.nf b/main.nf new file mode 100644 index 0000000..c11dd9c --- /dev/null +++ b/main.nf @@ -0,0 +1,169 @@ +nextflow.enable.dsl=2 + +// params.container_biotransformer = 'harbor.cluster.omic.ai/omic/digitaltrials/biotransformer:latest' +// params.container_conplex = 'harbor.cluster.omic.ai/omic/digitaltrials/conplex_dig_pat:latest' +// params.container_tissue = 'harbor.cluster.omic.ai/omic/digitaltrials/tissue:latest' +// params.container_preprocess = 'harbor.cluster.omic.ai/omic/metabolite-screen:project' +// params.container_mass_screen = 'harbor.cluster.omic.ai/omic/metabolite-screen:adaptive' +// params.container_chembl = 'harbor.cluster.omic.ai/omic/digitaltrials/chembl:1.0.0' + +params.container_biotransformer = 'harbor.cluster.omic.ai/omic/digitaltrials/biotransformer@sha256:fb8bdc0b65376bc154b6051ae07079dd9a0e25c3f4c02de73c502002a94d69d5' +params.container_conplex = 'harbor.cluster.omic.ai/omic/digitaltrials/conplex_dig_pat@sha256:7a3523dba6fa01e3adc9cb79af5e1dcbd2a19d9f92e37cd10df462766078ede3' +params.container_tissue = 'harbor.cluster.omic.ai/omic/digitaltrials/tissue:1.1.2' +params.container_preprocess = 'harbor.cluster.omic.ai/omic/metabolite-screen@sha256:872c395e21abd4afea4185b269a8218da4737bd7adbb2cbe2bdf9a1b9c70db17' +params.container_mass_screen = 'harbor.cluster.omic.ai/omic/metabolite-screen:adaptive-1.2.0' +params.container_chembl = 'harbor.cluster.omic.ai/omic/digitaltrials/chembl:1.0.0' + +params.containerOptions = '--rm' // '--gpus all --rm -v /mnt:/mnt' + + +//BIOTRANSFORMER +params.project_name = 'test' +//params.ligands = '/Workspace/next/registry/pipelines/digital_trials/input' + +//IMPOTRANT!!! use HUMAN. Only one that returns what is expected. metabolism to the last step. It's only one properly set up +params.mode = 'HUMAN' // Options: SUPER, HUMAN, MASS, ORDERED # only HUMAN is fully implemented +params.bt_initial_memory = 5 // GB - starting memory for biotransformer +params.bt_growth_memory = 15 // GB - additional memory per retry +params.bt_max_retries = 10 +params.bt_fail_action = 'ignore' // 'terminate' or 'ignore' +params.bt_max_forks = 0 // 0 = unlimited, set to N to limit concurrency + +//CONPLEX +params.keep_enst = 'false' //'true' //'false' //to keep individual protein data created by conplex step +params.conplex_initial_memory = 5 // GB - starting memory for conplex +params.conplex_growth_memory = 15 // GB - additional memory per retry +params.conplex_max_retries = 1 +params.conplex_fail_action = 'ignore' // 'terminate' or 'ignore' +// params.mutated_protein_csv = '/Workspace/next/registry/pipelines/digital_trials/MANE_all_transcipts.csv' +params.threshold = 0.65 //0.65 //0.8 //0.5 //0.7 +// params.screening_batch_size =100000 //100k is ideal to optimize performance with virtual screening +params.protein_network_threshold = 0.65 //0.65 //threshold for stirng input +// NETWORK_ENRICHMENT (string-db) — Python-level urllib3 Retry handles 429/5xx blips first +// so most rate-limit failures are absorbed without spawning a Nextflow retry workdir. +params.string_max_forks = 5 // 0 = unlimited; cap below string-db's ~10 req/s throttle +params.string_max_retries = 1 // Nextflow-level fallback retries (kept low — Python retries are the primary defense) +params.string_fail_action = 'ignore' // 'terminate' or 'ignore' after max retries exhausted +params.string_initial_memory = 1 // GB - starting memory; the script reads only transcipt+conplex_score columns +params.string_growth_memory = 2 // GB - additional memory per retry attempt + +// TISSUE_DISTRIBUTION + BIO_METRICS (tissue container) — both scripts now use +// usecols= on significant_interactions.tsv so a 5+ GB input only loads the +// 'transcipt' (and 'conplex_score' for BIO_METRICS) column. +params.tissue_initial_memory = 5 // GB +params.tissue_growth_memory = 5 // GB per retry attempt +params.tissue_max_retries = 2 +params.tissue_fail_action = 'ignore' + +params.bio_initial_memory = 5 // GB +params.bio_growth_memory = 5 // GB per retry attempt +params.bio_max_retries = 2 +params.bio_fail_action = 'ignore' + +//TISSUE DISTRIBUTION / BIO PROP + +// ========================================= ALL RELEVANT FILEPATHS IN THIS SECTION =================================================== +// Defaults below are the PVC mount paths used for local/k8s execution. WES overrides +// ligands/outdir via experiment_params (it translates s3:// URIs to PVC mount paths). + +params.outdir = '/omic/eureka/digital-trial/output' + +// Ligand CSVs staged in the eureka workspace (s3://omic/eureka/digital-trial/input/ligands/) +params.ligands = '/omic/eureka/digital-trial/input/ligands' + +// Intentionally empty: no *.fasta here means PREPROCESS_PROTEIN is never scheduled and +// the pipeline screens against the prebuilt protein_zarr below. Do NOT point this at a +// directory containing .fasta files — params.container_preprocess is pinned to a digest +// that no longer exists in Harbor, so the process would fail on image pull. +params.mutated_protein_fasta = '/mnt/dreamdock-data/digital_trials/input/blank' + +// Prebuilt reference data on the dreamdock-data PVC (verified present on k8s-node23) +params.protein_zarr = '/mnt/dreamdock-data/digital_trials/zarr/protein_seq.zarr' // 7.5 MB +params.chembl_db = '/mnt/dreamdock-data/digital_trials/chembl/chembl_36.db' // 9.2 GB + +// ===================================================================================================================================== + +//BIOTRANSFORMER +include { SUPER_TRANSFORMER } from './main_biotransformer.nf' +include { HUMAN_TRANSFORMER } from './main_biotransformer.nf' +include { METABOLITES_BY_MASS } from './main_biotransformer.nf' +include { ORDERED_SEQUENCE } from './main_biotransformer.nf' +// include { GET_FINAL_METABOLITES } from './main_biotransformer.nf' +include { GET_FINAL_METABOLITES_STATIC } from './main_biotransformer.nf' +//CONPLEX +include { CONPLEX as CONPLEX_ALL } from './main_conplex.nf' +include { PREPROCESS_PROTEIN } from './main_conplex.nf' + +include { MERGE_DRUG } from './main_conplex.nf' +include { MERGE_INTERACTIONS } from './main_conplex.nf' + +include { NETWORK_ENRICHMENT } from './main_conplex.nf' +//TISSUE_DISTRIBUTION / BIO_PROP +include { TISSUE_DISTRIBUTION } from './main_tissue.nf' +include { BIO_METRICS } from './main_tissue.nf' + +workflow { + //BIOTRANSFORMER + lig_ch = Channel.fromPath("${params.ligands}/*.csv") + switch (params.mode) { + case 'SUPER': + SUPER_TRANSFORMER(lig_ch) + break + case 'HUMAN': + HUMAN_TRANSFORMER(lig_ch) + break + case 'MASS': + METABOLITES_BY_MASS(lig_ch) + break + case 'ORDERED': + ORDERED_SEQUENCE(lig_ch) + break + default: + println("Invalid mode specified: ${params.mode}") + } + chembl_ch = Channel.fromPath(params.chembl_db).collect() + // GET_FINAL_METABOLITES(HUMAN_TRANSFORMER.out) // TODO: LOCALIZE + GET_FINAL_METABOLITES_STATIC(HUMAN_TRANSFORMER.out, chembl_ch) + //CONPLEX + + protein_fasta = Channel + .fromPath("${params.mutated_protein_fasta}/*.fasta") + .collect() + // protein_csv = file(params.mutated_protein_csv) + protein_zarr = PREPROCESS_PROTEIN(protein_fasta).collect().map { it[0] } + pre_protein_zarr = Channel.fromPath(params.protein_zarr) + + // Merge both zarr channels into a single list + merged_zarr = protein_zarr.concat(pre_protein_zarr).collect() + + lig_with_id = lig_ch.map { csv -> + [csv.simpleName, csv] + } + + metabolite_with_id = GET_FINAL_METABOLITES_STATIC.out.map { txt -> + def name = txt.simpleName.replaceAll(/_out$/, '') + [name, txt] + } + + // Join on the identifier and remove it + matched_ch = lig_with_id + .join(metabolite_with_id) + // .map { id, ligand, metabolite -> [ligand, metabolite] } + + // DEBUG_MATCH(matched_ch, merged_zarr) + + CONPLEX_ALL(matched_ch, merged_zarr) + + conplex_drug_ch = CONPLEX_ALL.out.map { id, drug, interactions -> drug } + conplex_interactions_ch = CONPLEX_ALL.out.map { id, drug, interactions -> interactions } + + NETWORK_ENRICHMENT(conplex_interactions_ch) // TODO: Localize this (use human only) + //TISSUE DISTRIBUTION + TISSUE_DISTRIBUTION(conplex_interactions_ch) + + biometric_ch = matched_ch.join(CONPLEX_ALL.out) + + // BIO_METRICS(GET_FINAL_METABOLITES.out,conplex_interactions_ch,conplex_drug_ch,lig_ch) + BIO_METRICS(biometric_ch) +} + diff --git a/main_biotransformer.nf b/main_biotransformer.nf new file mode 100755 index 0000000..23ec209 --- /dev/null +++ b/main_biotransformer.nf @@ -0,0 +1,392 @@ +nextflow.enable.dsl=2 + + +process SUPER_TRANSFORMER { + container "${params.container_biotransformer}" + containerOptions "${params.containerOptions}" + publishDir "${params.outdir}/${params.project_name}/receptors", mode: 'copy' + debug true + + input: + path smiles_csv + + output: + path "${smiles_csv.simpleName}_out.csv" + + script: + """ + #!/bin/bash + workdir=`pwd` + cd /home/omic/biotransformer + ## Predicting Biotransformation Using the Human Super Transformer: + # This command predicts the biotransformation of molecules from an SDF input (example.csv) using the human super transformer (superbio) and annotates the metabolites with names and database IDs (from PubChem). + java -jar /home/omic/biotransformer/biotransformer -k pred -b superbio -isdf \$workdir/${smiles_csv.simpleName}.csv -ocsv \${workdir}/${smiles_csv.simpleName}_out.csv -osdf \${workdir}/${smiles_csv.simpleName}.sdf -a + """ +} + +process HUMAN_TRANSFORMER { + memory { params.bt_initial_memory.toFloat().GB + (task.attempt - 1) * params.bt_growth_memory.toFloat().GB } + errorStrategy { task.attempt <= params.bt_max_retries.toInteger() ? 'retry' : params.bt_fail_action } + maxRetries params.bt_max_retries.toInteger() + maxForks params.bt_max_forks.toInteger() ?: null + + container "${params.container_biotransformer}" + // containerOptions "${params.containerOptions}" + publishDir "${params.outdir}/${params.project_name}/1_biotransformer", mode: 'copy' + // // Temporarily disabled debug prints + // debug true + // maxForks 5 + + input: + path smiles_csv + + output: + path "${smiles_csv.simpleName}_out.csv" + + script: + """ + #!/bin/bash + set -e + workdir=\$(pwd) + cd /home/omic/biotransformer + + # Function to get available memory percentage + get_available_mem_percent() { + free | awk '/Mem:/ {print int(\$7/\$2 * 100)}' + } + + # Function to log memory usage + log_memory() { + local pid=\$1 + echo "MEMLOG: Timestamp,BioTransformer Memory (MB),Available System Memory (%)" >&2 + while kill -0 \$pid 2>/dev/null; do + local biotrans_mem=\$(ps -o rss= -p \$pid | awk '{print \$1/1024}') + local avail_mem=\$(get_available_mem_percent) + echo "MEMLOG: \$(date '+%Y-%m-%d %H:%M:%S'),\$biotrans_mem,\$avail_mem" >&2 + if [ \$avail_mem -lt 5 ]; then + echo "MEMLOG: Available memory below 5%. Terminating process." >&2 + kill -15 \$pid + wait \$pid + echo 'PROCESS TERMINATED DUE TO LOW MEMORY' > "\${workdir}/${smiles_csv.simpleName}_out.csv" + exit 1 + fi + sleep 1800 # Sleep for 30 minutes + done + } + + # Calculate max Java heap size (90% of available memory) + # max_heap=\$(free -g | awk '/Mem:/ {print int(\$7 * 0.9)}') + + #remove unnecessary data to run biotransformer + head -n 2 "\$workdir/${smiles_csv.simpleName}.csv" > "\$workdir/${smiles_csv.simpleName}_run.csv" + + get_container_mem_bytes() { + if [ -f /sys/fs/cgroup/memory/memory.limit_in_bytes ]; then + cat /sys/fs/cgroup/memory/memory.limit_in_bytes + elif [ -f /sys/fs/cgroup/memory.max ]; then + # cgroup v2; "max" means no limit + val=\$(cat /sys/fs/cgroup/memory.max) + if [ "\$val" = "max" ]; then + # fall back to host MemTotal + awk '/MemTotal:/ {print \$2 * 1024}' /proc/meminfo + else + echo "\$val" + fi + else + # fallback to host MemTotal + awk '/MemTotal:/ {print \$2 * 1024}' /proc/meminfo + fi + } + + container_mem_bytes=\$(get_container_mem_bytes) + # 95% of container memory, in MB (integer) + heap_mb=\$(awk -v m="\$container_mem_bytes" 'BEGIN { printf "%d", (m*0.95)/(1024*1024) }') + + echo "Using Java heap: \${heap_mb}m (95% of container limit)" >&2 + + java -Xmx"\${heap_mb}m" -jar /home/omic/biotransformer/biotransformer \ + -a -k pred -b superbio \ + -isdf "\$workdir/${smiles_csv.simpleName}_run.csv" \ + -ocsv "\${workdir}/${smiles_csv.simpleName}_out.csv" \ + -osdf "\${workdir}/${smiles_csv.simpleName}.sdf" \ + -s 100 + biotrans_pid=\$! + + # Start memory logging in the background + log_memory \$biotrans_pid & + log_pid=\$! + + # Wait for the biotransformer process to finish + wait \$biotrans_pid + status=\$? + + # Stop the logging process + kill \$log_pid 2>/dev/null || true + + if [ ! -s "\${workdir}/${smiles_csv.simpleName}_out.csv" ]; then + if [ \$status -ne 0 ] && [ ! -f "\${workdir}/${smiles_csv.simpleName}_out.csv" ]; then + echo 'PROCESS FAILED' > "\${workdir}/${smiles_csv.simpleName}_out.csv" + else + echo 'NO METABOLITES' > "\${workdir}/${smiles_csv.simpleName}_out.csv" + fi + fi + """ +} + +process METABOLITES_BY_MASS { + container "${params.container_biotransformer}" + containerOptions "${params.containerOptions}" + publishDir "${params.outdir}/${params.project_name}/graphs", mode: 'copy' + debug true + + input: + path smiles_csv + + output: + path "${smiles_csv.simpleName}_out.csv" + + script: + """ + #!/bin/bash + workdir=`pwd` + cd /home/omic/biotransformer + ## Identifying Metabolites with Specific Masses: + # This command identifies all human metabolites of compounds in example.csv with masses 292.0946 Da and 304.0946 Da (max depth = 2), with a mass tolerance of 0.01 Da. It provides annotations when available. + java -jar /home/omic/biotransformer/biotransformer -k cid -b allHuman -isdf \$workdir/${smiles_csv.simpleName}.csv -ocsv \${workdir}/${smiles_csv.simpleName}_out.csv -osdf \${workdir}/${smiles_csv.simpleName}.sdf -s 2 -m "292.0946;304.0946" -t 0.01 -a + """ +} + +process ORDERED_SEQUENCE { + container "${params.container_biotransformer}" + containerOptions "${params.containerOptions}" + publishDir "${params.outdir}/${params.project_name}/screening", mode: 'copy' + debug true + errorStrategy 'ignore' + + input: + path smiles_csv + + output: + path "${smiles_csv.simpleName}_out.csv" + + script: + """ + #!/bin/bash + workdir=`pwd` + cd /home/omic/biotransformer + ## Simulating an Ordered Sequence of Metabolism: + # This command simulates an ordered sequence of metabolism for compounds in example.csv, starting with two steps of CYP450 oxidation, followed by one step of conjugation. The output is saved in an SDF file (output.sdf). + java -jar /home/omic/biotransformer/biotransformer -isdf \$workdir/${smiles_csv.simpleName}.csv -ocsv \${workdir}/${smiles_csv.simpleName}_out.csv -osdf \${workdir}/${smiles_csv.simpleName}.sdf -k pred -q "cyp450:2; phaseII:1" + """ +} + +process GET_FINAL_METABOLITES { + container "${params.container_biotransformer}" + containerOptions "${params.containerOptions}" + publishDir "${params.outdir}/${params.project_name}/screening", mode: 'copy' + // // Temporarily disabled debug prints + // debug true + // maxForks 1 + // errorStrategy 'ignore' + + errorStrategy { task.attempt <= 10 ? 'retry' : 'ignore' } + maxRetries 10 + + input: + path smiles_csv + + output: + path "${smiles_csv.simpleName}.txt" + + script: + """ + #!/opt/conda/envs/biotransformer/bin/python + from rdkit import Chem + import numpy as np + import pandas as pd + import requests + + #load biotransformet ouput + biotransformer = pd.read_csv('$smiles_csv') + + #check if metabolites exist + if biotransformer.shape[0] == 0: + with open('${smiles_csv.simpleName}.txt', 'w') as f: + f.write(f"NO_METABOLITES\\n") + + else: + metabolite_id = biotransformer['Metabolite ID'] + #get only metabolites that are not precursors for next metabolisam step + last_step_metabolites = biotransformer[[i not in list(biotransformer['Precursor ID']) for i in metabolite_id]] + last_step_metabolites = last_step_metabolites.drop_duplicates() + + #get only "active" ones + InChIKey = last_step_metabolites['InChIKey'] + InChIKey = pd.unique(InChIKey) + + #look if metabolite is in chembl + chembl = [] + for i in InChIKey: + curl_commend = f"https://www.ebi.ac.uk/chembl/api/data/molecule/{i}" + c = requests.get(curl_commend) + if c.status_code == 200: + #compund exists in chembl + chembl.append(True) + else: + #compund does not exists in chembl + chembl.append(False) + + + ChEMBL_bool = pd.DataFrame([InChIKey, chembl]).T.rename({0:'InChIKey',1:'in_ChEMBL'}, axis = 1) + last_step_metabolites = last_step_metabolites.merge(ChEMBL_bool, how='inner', on='InChIKey') + #if in PUBCHEM + last_step_metabolites['in_PUBCHEM'] = ~last_step_metabolites['PUBCHEM_CID'].isna() + ##logic + #if metabolite is not in PUBCHEM pass it to next step. We don't know if it's "active" + #has to be in ChEMBL and PUBCHEM to have "activity" + mask = (last_step_metabolites['in_PUBCHEM'] == False) | (np.sum(last_step_metabolites[['in_ChEMBL','in_PUBCHEM']], 1) == 2) + + #filtered metabolites + last_step_metabolites = last_step_metabolites[mask] + + #check for empty smile positions + last_step_metabolites = last_step_metabolites.reset_index() + if last_step_metabolites['SMILES'].isnull().any(): + for i in range(len(last_step_metabolites)): + if pd.isna(last_step_metabolites.at[i, 'SMILES']): + last_step_metabolites.at[i, 'SMILES'] = Chem.MolToSmiles(Chem.MolFromInchi(last_step_metabolites.at[i, 'InChI'])) + + #convert biotransformer smi to canonical smi and eliminate nonsense structures + metabolite_smi = list(np.unique(last_step_metabolites['SMILES'])) + metabolite_smi = [Chem.CanonSmiles(i) for i in metabolite_smi if Chem.MolFromSmiles(i) != None] + + #final metabolites + metabolite_smi_filteres = np.array(metabolite_smi) + + #save smi + with open('${smiles_csv.simpleName}.txt', 'w') as f: + if len(metabolite_smi_filteres) == 0: + f.write(f"NO_METABOLITES\\n") + else: + for n, line in enumerate(metabolite_smi_filteres): + f.write(f"{line}\\tmetabol_{n}\\n") + """ +} + +process GET_FINAL_METABOLITES_STATIC { + memory 1.GB + + container "${params.container_chembl}" + containerOptions "${params.containerOptions}" + publishDir "${params.outdir}/${params.project_name}/1b_final_metabolites", mode: 'copy' + + errorStrategy { task.attempt <= 10 ? 'retry' : 'ignore' } + maxRetries 10 + + input: + path smiles_csv + path chembl_db // Add ChEMBL SQLite database as input + + output: + path "${smiles_csv.simpleName}.txt" + + script: + """ + #!/opt/conda/bin/python + from rdkit import Chem + import numpy as np + import pandas as pd + import sqlite3 + + # Connect to ChEMBL database + conn = sqlite3.connect('file:$chembl_db?mode=ro&immutable=1', uri=True) + # conn = sqlite3.connect('$chembl_db') + + cursor = conn.cursor() + + # Load biotransformer output + biotransformer = pd.read_csv('$smiles_csv') + + # Check if metabolites exist + if biotransformer.shape[0] == 0: + with open('${smiles_csv.simpleName}.txt', 'w') as f: + f.write(f"NO_METABOLITES\\n") + + else: + # metabolite_id = biotransformer['Metabolite ID'] + # # Get only metabolites that are not precursors for next metabolism step + # last_step_metabolites = biotransformer[[i not in list(biotransformer['Precursor ID']) for i in metabolite_id]] + # last_step_metabolites = last_step_metabolites.drop_duplicates() + + # Get metabolite IDs that are NOT precursors for other metabolites + metabolite_id = biotransformer['Metabolite ID'] + precursor_ids = set(biotransformer['Precursor ID'].dropna()) # Remove NaN values + final_metabolite_mask = ~metabolite_id.isin(precursor_ids) + + # Filter to get only final metabolites + last_step_metabolites = biotransformer[final_metabolite_mask].copy() + last_step_metabolites = last_step_metabolites.drop_duplicates() + + # Get only "active" ones + InChIKey = last_step_metabolites['InChIKey'] + InChIKey = pd.unique(InChIKey) + + # Look if metabolite is in ChEMBL using local database + chembl = [] + for inchikey in InChIKey: + # Query ChEMBL SQLite database for the InChIKey + # The standard InChIKey is stored in COMPOUND_STRUCTURES table + cursor.execute(\""" + SELECT COUNT(*) + FROM COMPOUND_STRUCTURES + WHERE STANDARD_INCHI_KEY = ? + LIMIT 1 + \""", (inchikey,)) + + result = cursor.fetchone() + chembl.append(result[0] > 0) + + # ChEMBL_bool = pd.DataFrame([InChIKey, chembl]).T.rename({0:'InChIKey',1:'in_ChEMBL'}, axis=1) + ChEMBL_bool = pd.DataFrame({ + 'InChIKey': InChIKey, + 'in_ChEMBL': chembl + }) + last_step_metabolites = last_step_metabolites.merge(ChEMBL_bool, how='inner', on='InChIKey') + + # If in PUBCHEM + last_step_metabolites['in_PUBCHEM'] = ~last_step_metabolites['PUBCHEM_CID'].isna() + + # Logic + # If metabolite is not in PUBCHEM pass it to next step. We don't know if it's "active" + # Has to be in ChEMBL and PUBCHEM to have "activity" + mask = (last_step_metabolites['in_PUBCHEM'] == False) | (np.sum(last_step_metabolites[['in_ChEMBL','in_PUBCHEM']], 1) == 2) + + # Filtered metabolites + last_step_metabolites = last_step_metabolites[mask] + + # Check for empty smile positions + last_step_metabolites = last_step_metabolites.reset_index() + if last_step_metabolites['SMILES'].isnull().any(): + for i in range(len(last_step_metabolites)): + if pd.isna(last_step_metabolites.at[i, 'SMILES']): + last_step_metabolites.at[i, 'SMILES'] = Chem.MolToSmiles(Chem.MolFromInchi(last_step_metabolites.at[i, 'InChI'])) + + # Convert biotransformer smi to canonical smi and eliminate nonsense structures + metabolite_smi = list(np.unique(last_step_metabolites['SMILES'])) + metabolite_smi = [Chem.CanonSmiles(i) for i in metabolite_smi if Chem.MolFromSmiles(i) != None] + + # Final metabolites + metabolite_smi_filteres = np.array(metabolite_smi) + + # Save smi + with open('${smiles_csv.simpleName}.txt', 'w') as f: + if len(metabolite_smi_filteres) == 0: + f.write(f"NO_METABOLITES\\n") + else: + for n, line in enumerate(metabolite_smi_filteres): + f.write(f"{line}\\tmetabol_{n}\\n") + + # Close database connection + conn.close() + """ +} \ No newline at end of file diff --git a/main_conplex.nf b/main_conplex.nf new file mode 100644 index 0000000..6f2b47e --- /dev/null +++ b/main_conplex.nf @@ -0,0 +1,239 @@ +#!/usr/bin/env nextflow + + +process CONPLEX { + //debug true + + publishDir "${params.outdir}/${params.project_name}/2_conplex", mode: 'copy' + + memory { params.conplex_initial_memory.toInteger().GB + (task.attempt - 1) * params.conplex_growth_memory.toInteger().GB } + errorStrategy { task.attempt <= params.conplex_max_retries.toInteger() ? 'retry' : params.conplex_fail_action } + maxRetries params.conplex_max_retries.toInteger() + + container "${params.container_mass_screen}" + // containerOptions "--rm --gpus all" + // maxForks 1 + // errorStrategy 'ignore' + + afterScript "if [[ ${params.keep_enst} == 'false' ]]; then find . -name '*_results.zarr' -type d -exec rm -rf {} + 2>/dev/null || true; fi" + + input: + tuple( + val( id ), + path( input_drug, arity: '1') , // CSV file with SMILES column + path( input_metabol, arity: '1') // TSV file with SMILES and metabolite IDs + ) + path input_zarr, arity: '1..*' // ZARR DB holding all the protein vectors and their names + + output: + tuple( + val ( id ), + path( "*drug_scores.tsv"), + path( "*significant_interactions.tsv") + ) + + script: + """ + set -e + + # Set up trap to clean up on any exit (success, failure, or signal) + if [[ ${params.keep_enst} == 'false' ]]; then + trap 'find \$PWD -name "*_results.zarr" -type d -exec rm -rf {} + 2>/dev/null || true' EXIT + fi + + #remove unnecessary data to run conplex + head -n 2 ${input_drug} > run.csv + + # Convert drug CSV and metabolite TSV to smiles.smi format + python /app/convert.py run.csv ${input_metabol} -o smiles.smi + + # Run screening for each zarr database + for zarr_dir in ${input_zarr}; do + python /app/screen.py -i smiles.smi -z "\${zarr_dir}" + done + + # Process results and generate final outputs + python /app/get_round_2.py --threshold ${params.threshold} --workdir \$PWD --round 2 --drug-csv ${input_drug} + """ +} + +process MERGE_DRUG { + //debug true + + memory '10 GB' + + container "${params.container_mass_screen}" + // maxForks 1 + // errorStrategy 'ignore' + + input: + path 'inputs/drug_*.tsv', arity: '1..*' + + output: + path "patient_0_drug_scores.tsv" + + script: +""" +#!/opt/conda/bin/python +import pandas as pd +from pathlib import Path + +inputs_dir = Path("inputs") +tsv_files = sorted(inputs_dir.glob("drug_*.tsv")) + +dfs = [pd.read_csv(f, sep="\\t") for f in tsv_files] +df_out = pd.concat(dfs, ignore_index=True) + +df_out.to_csv("patient_0_drug_scores.tsv", sep="\\t", index=False) +""" +} + +process MERGE_INTERACTIONS { + //debug true + + memory '10 GB' + + container "${params.container_mass_screen}" + // maxForks 1 + // errorStrategy 'ignore' + + input: + path 'inputs/interaction_*.tsv' + + output: + path "patient_0_significant_interactions.tsv" + + script: +""" +#!/opt/conda/bin/python +import pandas as pd +from pathlib import Path + +inputs_dir = Path("inputs") +tsv_files = sorted(inputs_dir.glob("interaction_*.tsv")) + +dfs = [pd.read_csv(f, sep="\\t") for f in tsv_files] +df_out = pd.concat(dfs, ignore_index=True) + +df_out.to_csv("patient_0_significant_interactions.tsv", sep="\\t", index=False) +""" +} + + +process NETWORK_ENRICHMENT { + memory { params.string_initial_memory.toInteger().GB + (task.attempt - 1) * params.string_growth_memory.toInteger().GB } + + container "${params.container_conplex}" + // containerOptions "${params.containerOptions}" + publishDir "${params.outdir}/${params.project_name}/3_string", mode: 'copy' + // // Temporarily disabled debug prints + // debug true + maxForks params.string_max_forks.toInteger() ?: null + errorStrategy { task.attempt <= params.string_max_retries.toInteger() ? 'retry' : params.string_fail_action } + maxRetries params.string_max_retries.toInteger() + + input: + path interactions + + output: + path "*_network_enrichment.tsv", emit: network_enrichment + path "*_network_interactions.tsv", emit: network_interactions + + script: + """ +#!/opt/conda/envs/conplex-dti/bin/python +import sys +import pandas as pd +import requests +from requests.adapters import HTTPAdapter +from urllib3.util.retry import Retry + +# Read ONLY the columns we use. The 'smile' column in significant_interactions.tsv +# is the bulk of the file (long SMILES strings × millions of rows for metabolite-heavy +# drugs → ~2 GB on disk), and we never reference it here. Dropping it on read cuts +# the in-memory DataFrame from ~2 GB to ~350 MB on worst-case drugs and prevents OOM. +interaction_data = pd.read_csv('$interactions', sep='\\t', usecols=['transcipt', 'conplex_score']) +interaction_data = interaction_data.sort_values('conplex_score', ascending=False) + +# string-db accepts at most 450 identifiers per call. +interaction_data = interaction_data.drop_duplicates('transcipt') +if interaction_data.shape[0] > 450: + interaction_data = interaction_data.iloc[:450] + +proteins = list(pd.unique( + interaction_data[interaction_data['conplex_score'] > ${params.protein_network_threshold}]['transcipt'] +)) +output_name = '$interactions'.split('/')[-1].split('_significant_interactions.tsv')[0] + +# Empty-identifier early exit: nothing to enrich; write empty outputs so the +# task succeeds without hitting string-db (which would otherwise return an +# error for an empty identifier list and trip a Nextflow retry). +if not proteins: + print(f"NETWORK_ENRICHMENT: no proteins above threshold for {output_name}", flush=True) + pd.DataFrame().to_csv(f'{output_name}_network_enrichment.tsv', sep='\\t') + pd.DataFrame().to_csv(f'{output_name}_network_interactions.tsv', sep='\\t') + sys.exit(0) + +# urllib3 Retry handles 429 / 5xx / connection blips transparently at the +# adapter layer — no exception reaches user code, and Nextflow does not see a +# task failure. backoff_factor=2 produces delays 2,4,8,16,32 s (capped at +# Retry.BACKOFF_MAX), respecting any Retry-After header string-db sends. +# This absorbs the common rate-limit case WITHOUT spawning a fresh workdir, +# which would just get throttled the same way. +session = requests.Session() +session.mount('https://', HTTPAdapter(max_retries=Retry( + total=5, + backoff_factor=2, + status_forcelist=[429, 500, 502, 503, 504], +))) + + +def fetch(url, kind): + r = session.get(url, timeout=60) + r.raise_for_status() + if not r.text.strip(): + raise RuntimeError(f"{kind}: 200 but empty body from string-db") + lines = r.text.split('\\n') + data = [l.split('\\t') for l in lines] + if not data or not data[0]: + raise RuntimeError(f"{kind}: malformed response (no header row)") + return pd.DataFrame(data[1:-1], columns=data[0]) + + +protein_network_list = '%0d'.join(proteins) +url_network = f'https://string-db.org/api/tsv/network?identifiers={protein_network_list}&species=9606' +url_enrichment = f'https://string-db.org/api/tsv/enrichment?identifiers={protein_network_list}&species=9606' + +enrichment_df = fetch(url_enrichment, 'enrichment') +interactions_df = fetch(url_network, 'network') + +enrichment_df.to_csv(f'{output_name}_network_enrichment.tsv', sep='\\t') +interactions_df.to_csv(f'{output_name}_network_interactions.tsv', sep='\\t') +""" +} + + +process PREPROCESS_PROTEIN { + + memory '10 GB' + accelerator 1 + + container "${params.container_preprocess}" + label 'gpu_process' + // containerOptions "--rm --gpus all" + + // errorStrategy 'ignore' + + input: + path("input_*.fasta", arity: '1..*') + + output: + path "mutated.zarr" + + script: + """ + set -e + cat input_*.fasta > merged.fasta + python /app/project.py merged.fasta mutated.zarr + """ +} \ No newline at end of file diff --git a/main_conplex.nf.old b/main_conplex.nf.old new file mode 100755 index 0000000..f60c2e2 --- /dev/null +++ b/main_conplex.nf.old @@ -0,0 +1,125 @@ +nextflow.enable.dsl=2 + + +process CONPLEX { + container "${params.container_conplex}" + containerOptions "${params.containerOptions}" + publishDir "${params.outdir}/${params.project_name}/receptors", mode: 'copy' + // // Temporarily disabled debug prints + // debug true + maxForks 5 + // scratch true //deletes workdir after successful completion + + input: + path smi_drug + path smi_metabolite + path mut_fasta + + output: + path "*drug_scores.tsv", emit: drug + path "*significant_interactions.tsv", emit: interactions + + script: + """ + workdir=`pwd` + + #concat mutated and reference fasta files. If it has name with _2 its mutated. + #after test is don retrun this + cat $mut_fasta /home/omic/ConPLex/MANE_referent_transcipt_reference.fasta > \$workdir/all_protein.fasta + + ### Test + #head -n 100 /home/omic/ConPLex/MANE_referent_transcipt_reference.fasta > \$workdir/test.fasta + #cat $mut_fasta \$workdir/test.fasta > \$workdir/all_protein.fasta + ### + + . activate conplex-dti + + #transform smi for conplex + python3 -c " +import sys +from rdkit import Chem +import numpy as np +import pandas as pd + +def converter(drug_csv, outname): + #open file to write drug/matabolite smi + out_file = open(outname + '.txt', 'w') + + #load drug csv; only has drug in separate lines + drug_smi_list = np.array(pd.read_csv(drug_csv)['SMILES']).tolist() + #original drugs are anotated with drug_{} + for n, smi in enumerate(drug_smi_list): + out_file.write('{}\\tdrug_{}\\n'.format(smi, n)) + + out_file.close() + +converter('$smi_drug', 'drag') + " + #concatinate drag and metabolites + cat drag.txt $smi_metabolite > \$workdir/smiles.smi + #conplex predicition 1. round + python3 /home/omic/ConPLex/conplex.py --fastas \$workdir/all_protein.fasta --smis \$workdir/smiles.smi --screening_batch_size ${params.screening_batch_size} --outdir \$workdir --split_write_df 'no' + #### this part is use to test all alternative transcripts (this part can be skipped for now, cuz we will use it for tissue specific analysis later) + ##get fasta for 2. round transcripts for proteins above threshold + #python3 /home/omic/ConPLex/get_round_2.py --threshold ${params.threshold} --workdir \$workdir --round 1 + ##conplex all transcipt for protrin above threshold + #python3 /home/omic/ConPLex/conplex.py --fastas \$workdir/round_2.fasta --smis \$workdir/smiles.smi --screening_batch_size ${params.screening_batch_size} --outdir \$workdir --split_write_df 'no' + #### + #get data for second run + python3 /home/omic/ConPLex/get_round_2.py --threshold ${params.threshold} --workdir \$workdir --round 2 + """ +} + +process NETWORK_ENRICHMENT { + container "${params.container_conplex}" + containerOptions "${params.containerOptions}" + publishDir "${params.outdir}/${params.project_name}/receptors", mode: 'copy' + // // Temporarily disabled debug prints + // debug true + maxForks 5 + + input: + path interactions + + output: + path "*_network_enrichment.tsv", emit: network_enrichment + path "*_network_interactions.tsv", emit: network_interactions + + script: + """ +#!/opt/conda/envs/conplex-dti/bin/python +import pandas as pd +import requests + +interaction_data = pd.read_csv('$interactions', sep = '\\t') +interaction_data = interaction_data.sort_values('conplex_score', ascending=False) + +#get list of enst above threshold +protein_network_list = '%0d'.join(list(pd.unique(interaction_data[interaction_data['conplex_score'] > ${params.protein_network_threshold}]['transcipt']))) + +#get urls +url_network = f'https://string-db.org/api/tsv/network?identifiers={protein_network_list}&species=9606' +url_enrichment = f'https://string-db.org/api/tsv/enrichment?identifiers={protein_network_list}&species=9606' + +#get enrichment dataframe +r = requests.get(url_enrichment) +lines = r.text.split('\\n') # pull the text from the response object and split based on new lines +data = [l.split('\\t') for l in lines] # split each line into its components based on tabs +enrichment_df = pd.DataFrame(data[1:-1], columns = data[0]) # convert to dataframe using the first row as the column names; drop empty, final row +#get protein interaction dataframe +r = requests.get(url_network) +lines = r.text.split('\\n') # pull the text from the response object and split based on new lines +data = [l.split('\\t') for l in lines] # split each line into its components based on tabs +# convert to dataframe using the first row as the column names; drop empty, final row +interactions_df = pd.DataFrame(data[1:-1], columns = data[0]) +# dataframe with the preferred names of the two proteins and the score of the interaction +#interactions_df = interactions_df[['preferredName_A', 'preferredName_B', 'score']] + +#output name +output_name = '$interactions'.split('/')[-1].split('_significant_interactions.tsv')[0] + +#save +enrichment_df.to_csv(f'{output_name }_network_enrichment.tsv',sep='\\t') +interactions_df.to_csv(f'{output_name }_network_interactions.tsv',sep='\\t') + """ +} diff --git a/main_tissue.nf b/main_tissue.nf new file mode 100755 index 0000000..e220c37 --- /dev/null +++ b/main_tissue.nf @@ -0,0 +1,57 @@ +nextflow.enable.dsl=2 + + +process TISSUE_DISTRIBUTION { + memory { params.tissue_initial_memory.toInteger().GB + (task.attempt - 1) * params.tissue_growth_memory.toInteger().GB } + + container "${params.container_tissue}" + // containerOptions "${params.containerOptions}" + publishDir "${params.outdir}/${params.project_name}/4_tissue_distribution", mode: 'copy' + // // Temporarily disabled debug prints + // debug true + + errorStrategy { task.attempt <= params.tissue_max_retries.toInteger() ? 'retry' : params.tissue_fail_action } + maxRetries params.tissue_max_retries.toInteger() + + input: + path interaction + + output: + path "*tissue_distribution.tsv", emit: tissue_dist + + script: + """ + # . activate tissue + python /home/omic/drug_tissue_distribution.py --file_name ${interaction} + """ +} + +process BIO_METRICS { + memory { params.bio_initial_memory.toInteger().GB + (task.attempt - 1) * params.bio_growth_memory.toInteger().GB } + + container "${params.container_tissue}" + // containerOptions "${params.containerOptions}" + publishDir "${params.outdir}/${params.project_name}/4_tissue_distribution", mode: 'copy' + // debug true + + errorStrategy { task.attempt <= params.bio_max_retries.toInteger() ? 'retry' : params.bio_fail_action } + maxRetries params.bio_max_retries.toInteger() + + input: + tuple ( + val(id), + path( target), + path( metabolites), + path( conplex_drug), + path( conplex_all_interactions), + ) + + output: + path "*_biological_properties.tsv", emit: bio_prop + + script: + """ + # . activate tissue + python /home/omic/digital_patient_extract_metrics.py --metabolites ${metabolites} --conplex_all_interactions ${conplex_all_interactions} --conplex_drug ${conplex_drug} --target ${target} + """ +} diff --git a/nextflow.config b/nextflow.config new file mode 100755 index 0000000..96a1e41 --- /dev/null +++ b/nextflow.config @@ -0,0 +1,90 @@ +manifest { + name = 'Digital Trial' + author = 'omic' + recurseSubmodules = true + homePage = 'https://gitlab.com/omic/next/registry/tools/digital-trial.git' + description = 'Digital drug protein interactions' + mainScript = 'main.nf' + nextflowVersion = '!>=21.04.3' + defaultBranch = 'master' +} + +docker { + enabled = true + temp = 'auto' + remove = true +} + +process { + withLabel: 'gpu_process' { + containerOptions = '--gpus all --rm' + + pod = [ + [nodeSelector: [gpu: 'yes', 'gpu-type': 'geforce-rtx-3090']] + ] + } + + withLabel: 'cpu_process' { + containerOptions = '--rm' + } +} + +profiles { + // Minimal k8s profile: WES injects its own profile.config via -C, which supplies the + // executor, namespace, service account, workDir and PVC mounts. Anything set here that + // WES also sets is either overridden or conflicts, so keep this deliberately sparse. + // + // NOTE: the dreamdock-data PVC must be mounted by the WES-side profile for + // params.protein_zarr and params.chembl_db (/mnt/dreamdock-data/...) to resolve. + k8s { + process.executor = 'k8s' + } + + // Full standalone k8s profile for running this pipeline directly (not via WES), + // e.g. `nextflow run main.nf -profile k8s_standalone` from a pod on the cluster. + k8s_standalone { + process.executor = 'k8s' + process.namespace = 'bioinformatics' + process.debug = true + + workDir = "/mnt/dreamdock-data/digital_trials/workdir" + + executor { + queueSize = 0 // Increase to desired concurrency +// submitRateLimit = '1 sec' // Recommended to prevent K8s API timeouts + } + + k8s { + serviceAccount = 'nextflow-sa' + namespace = 'bioinformatics' + storageClaimName = 'dreamdock-data' + storageMountPath = '/mnt/dreamdock-data' + + pullPolicy = 'IfNotPresent' + cleanup = true // delete pods after Ctrl+C or finished? + + imagePullSecrets = 'omic-registry-secret' + + // RUN AS DIFFERENT USERS + // securityContext = [fsGroup: 1000] + // securityContext = [ + // runAsUser: 1000, + // fsGroup: 1000, + // runAsNonRoot: true + // ] + } + + // Pod-level customization + process.pod = [ + [env: 'NXF_DEBUG', value: '0'], + [label: 'omic-app', value: 'dreamdock'], + [imagePullSecret: 'gitlab-registry-secret'], + // [nodeSelector: [gpu: 'yes', 'gpu-type': 'rtx-3090']], + [hostPath: '/mnt/ZINC-22/', mountPath: '/mnt/ZINC-22/'] + // [volumeClaim: 'conplex-index-builder-data', mountPath: '/mnt/conplex-index/'] + // [privileged: true], + ] + + } +} + diff --git a/nextflow.config.old b/nextflow.config.old new file mode 100755 index 0000000..4cf8d10 --- /dev/null +++ b/nextflow.config.old @@ -0,0 +1,69 @@ +manifest { + name = 'Dream Dock' + author = 'omic' + recurseSubmodules = true + homePage = 'https://gitlab.com/omic/next/registry/pipelines/dreamdock' + description = 'Small drug creation based on a protein target' + mainScript = 'main.nf' + nextflowVersion = '!>=21.04.3' + defaultBranch = 'master' +} + +docker { + enabled = true + temp = 'auto' +} + +profiles { + k8s { + process.executor = 'k8s' + process.namespace = 'bioinformatics' + process.debug = true + + workDir = "/mnt/dreamdock-data/work" + + k8s { + serviceAccount = 'nextflow-sa' + namespace = 'bioinformatics' + storageClaimName = 'dreamdock-data' + storageMountPath = '/mnt/dreamdock-data' + + pullPolicy = 'IfNotPresent' + cleanup = true // delete pods after Ctrl+C or finished? + + + // RUN AS DIFFERENT USERS + // securityContext = [fsGroup: 1000] + // securityContext = [ + // runAsUser: 1000, + // fsGroup: 1000, + // runAsNonRoot: true + // ] + } + + // Use container image + // process.container = 'harbor.cluster.omic.ai/omic/faiss-indexer:latest' + + // Pod-level customization + process.pod = [ + [env: 'NXF_DEBUG', value: '0'], + [label: 'omic-app', value: 'dreamdock'], + [imagePullSecret: 'gitlab-registry-secret'], + [hostPath: '/mnt/ZINC-22/', mountPath: '/mnt/ZINC-22/'], + [nodeSelector: [gpu: 'yes', 'gpu-type': 'rtx-3090']], + [volumeClaim: 'conplex-index-builder-data', mountPath: '/mnt/conplex-index/'] + //[nodeSelector: [gpu: 'yes', 'kubernetes.io/hostname': 'k8s-node25']], + // [privileged: true], + ] + + } + + docker { + // Docker/Singularity configuration + docker { + enabled = true + runOptions = '--rm' + } + } +} + diff --git a/nf_metabol_screen_adaptive/.nextflow.log b/nf_metabol_screen_adaptive/.nextflow.log new file mode 100644 index 0000000..5aec055 --- /dev/null +++ b/nf_metabol_screen_adaptive/.nextflow.log @@ -0,0 +1,94 @@ +Jul-21 03:07:10.282 [main] DEBUG nextflow.cli.Launcher - $> nextflow run test.nf +Jul-21 03:07:10.349 [main] DEBUG nextflow.cli.CmdRun - N E X T F L O W ~ version 25.04.2 +Jul-21 03:07:10.366 [main] DEBUG nextflow.plugin.PluginsFacade - Setting up plugin manager > mode=prod; embedded=false; plugins-dir=/root/.nextflow/plugins; core-plugins: nf-amazon@2.15.0,nf-azure@1.16.0,nf-cloudcache@0.4.3,nf-codecommit@0.2.3,nf-console@1.2.1,nf-google@1.21.0,nf-k8s@1.0.0,nf-tower@1.11.2,nf-wave@1.12.1 +Jul-21 03:07:10.387 [main] INFO o.pf4j.DefaultPluginStatusProvider - Enabled plugins: [] +Jul-21 03:07:10.388 [main] INFO o.pf4j.DefaultPluginStatusProvider - Disabled plugins: [] +Jul-21 03:07:10.390 [main] INFO org.pf4j.DefaultPluginManager - PF4J version 3.12.0 in 'deployment' mode +Jul-21 03:07:10.399 [main] INFO org.pf4j.AbstractPluginManager - No plugins +Jul-21 03:07:10.415 [main] DEBUG nextflow.config.ConfigBuilder - Found config local: /dbs/metabolite-screen-alt/nf_metabol_screen_adaptive/nextflow.config +Jul-21 03:07:10.417 [main] DEBUG nextflow.config.ConfigBuilder - Parsing config file: /dbs/metabolite-screen-alt/nf_metabol_screen_adaptive/nextflow.config +Jul-21 03:07:10.442 [main] DEBUG n.secret.LocalSecretsProvider - Secrets store: /root/.nextflow/secrets/store.json +Jul-21 03:07:10.445 [main] DEBUG nextflow.secret.SecretsLoader - Discovered secrets providers: [nextflow.secret.LocalSecretsProvider@759d81f3] - activable => nextflow.secret.LocalSecretsProvider@759d81f3 +Jul-21 03:07:10.450 [main] DEBUG nextflow.config.ConfigBuilder - Applying config profile: `standard` +Jul-21 03:07:10.819 [main] DEBUG nextflow.cli.CmdRun - Applied DSL=2 by global default +Jul-21 03:07:10.830 [main] DEBUG nextflow.cli.CmdRun - Launching `test.nf` [confident_euler] DSL2 - revision: b00b655f5b +Jul-21 03:07:10.831 [main] DEBUG nextflow.plugin.PluginsFacade - Plugins default=[] +Jul-21 03:07:10.831 [main] DEBUG nextflow.plugin.PluginsFacade - Plugins resolved requirement=[] +Jul-21 03:07:10.871 [main] DEBUG nextflow.Session - Session UUID: 5e2c3d52-6405-43b3-a203-f96c06488e9b +Jul-21 03:07:10.871 [main] DEBUG nextflow.Session - Run name: confident_euler +Jul-21 03:07:10.871 [main] DEBUG nextflow.Session - Executor pool size: 20 +Jul-21 03:07:10.878 [main] DEBUG nextflow.file.FilePorter - File porter settings maxRetries=3; maxTransfers=50; pollTimeout=null +Jul-21 03:07:10.883 [main] DEBUG nextflow.util.ThreadPoolBuilder - Creating thread pool 'FileTransfer' minSize=10; maxSize=60; workQueue=LinkedBlockingQueue[-1]; allowCoreThreadTimeout=false +Jul-21 03:07:10.901 [main] DEBUG nextflow.cli.CmdRun - + Version: 25.04.2 build 5947 + Created: 13-05-2025 21:58 UTC (14:58 PDT) + System: Linux 6.8.0-52-generic + Runtime: Groovy 4.0.26 on OpenJDK 64-Bit Server VM 17.0.15+6-Ubuntu-0ubuntu122.04 + Encoding: UTF-8 (UTF-8) + Process: 3902257@alien [127.0.1.1] + CPUs: 20 - Mem: 62.6 GB (836.3 MB) - Swap: 2 GB (96.4 MB) +Jul-21 03:07:10.924 [main] DEBUG nextflow.Session - Work-dir: /dbs/metabolite-screen-alt/nf_metabol_screen_adaptive/work [ext2/ext3] +Jul-21 03:07:10.925 [main] DEBUG nextflow.Session - Script base path does not exist or is not a directory: /dbs/metabolite-screen-alt/nf_metabol_screen_adaptive/bin +Jul-21 03:07:10.935 [main] DEBUG nextflow.executor.ExecutorFactory - Extension executors providers=[] +Jul-21 03:07:10.946 [main] DEBUG nextflow.Session - Observer factory: DefaultObserverFactory +Jul-21 03:07:10.967 [main] DEBUG nextflow.Session - Observer factory (v2): LinObserverFactory +Jul-21 03:07:10.993 [main] DEBUG nextflow.cache.CacheFactory - Using Nextflow cache factory: nextflow.cache.DefaultCacheFactory +Jul-21 03:07:11.002 [main] DEBUG nextflow.util.CustomThreadPool - Creating default thread pool > poolSize: 21; maxThreads: 1000 +Jul-21 03:07:11.051 [main] DEBUG nextflow.Session - Session start +Jul-21 03:07:11.055 [main] DEBUG nextflow.trace.TraceFileObserver - Workflow started -- trace file: /dbs/metabolite-screen-alt/nf_metabol_screen_adaptive/execution_trace.txt +Jul-21 03:07:11.178 [main] DEBUG nextflow.script.ScriptRunner - > Launching execution +Jul-21 03:07:11.314 [main] DEBUG nextflow.executor.ExecutorFactory - << taskConfig executor: null +Jul-21 03:07:11.315 [main] DEBUG nextflow.executor.ExecutorFactory - >> processorType: 'local' +Jul-21 03:07:11.320 [main] DEBUG nextflow.executor.Executor - [warm up] executor > local +Jul-21 03:07:11.324 [main] DEBUG n.processor.LocalPollingMonitor - Creating local task monitor for executor 'local' > cpus=20; memory=62.6 GB; capacity=20; pollInterval=100ms; dumpInterval=5m +Jul-21 03:07:11.327 [main] DEBUG n.processor.TaskPollingMonitor - >>> barrier register (monitor: local) +Jul-21 03:07:11.348 [main] DEBUG nextflow.processor.TaskProcessor - Creating process 'METABOLITE_SCREEN': maxForks=0; fair=false; array=0 +Jul-21 03:07:11.396 [main] DEBUG nextflow.Session - Workflow process names [dsl2]: METABOLITE_SCREEN +Jul-21 03:07:11.397 [main] DEBUG nextflow.Session - Igniting dataflow network (1) +Jul-21 03:07:11.398 [main] DEBUG nextflow.processor.TaskProcessor - Starting process > METABOLITE_SCREEN +Jul-21 03:07:11.399 [main] DEBUG nextflow.script.ScriptRunner - Parsed script files: + Script_9d98cafae0c3b8e5: /dbs/metabolite-screen-alt/nf_metabol_screen_adaptive/test.nf + Script_c8d2b32ed0aeeac9: /dbs/metabolite-screen-alt/nf_metabol_screen_adaptive/main.nf +Jul-21 03:07:11.399 [main] DEBUG nextflow.script.ScriptRunner - > Awaiting termination +Jul-21 03:07:11.399 [main] DEBUG nextflow.Session - Session await +Jul-21 03:07:11.552 [Task submitter] DEBUG n.executor.local.LocalTaskHandler - Launch cmd line: /bin/bash -ue .command.run +Jul-21 03:07:11.554 [Task submitter] INFO nextflow.Session - [f9/21c381] Submitted process > METABOLITE_SCREEN +Jul-21 03:07:11.590 [Task monitor] DEBUG n.processor.TaskPollingMonitor - Task completed > TaskHandler[id: 1; name: METABOLITE_SCREEN; status: COMPLETED; exit: 127; error: -; workDir: /dbs/metabolite-screen-alt/nf_metabol_screen_adaptive/work/f9/21c381bcd7594501602fb392f344c9] +Jul-21 03:07:11.591 [Task monitor] DEBUG nextflow.util.ThreadPoolBuilder - Creating thread pool 'TaskFinalizer' minSize=10; maxSize=60; workQueue=LinkedBlockingQueue[-1]; allowCoreThreadTimeout=false +Jul-21 03:07:11.600 [TaskFinalizer-1] DEBUG nextflow.processor.TaskProcessor - Handling unexpected condition for + task: name=METABOLITE_SCREEN; work-dir=/dbs/metabolite-screen-alt/nf_metabol_screen_adaptive/work/f9/21c381bcd7594501602fb392f344c9 + error [nextflow.exception.ProcessFailedException]: Process `METABOLITE_SCREEN` terminated with an error exit status (127) +Jul-21 03:07:11.615 [TaskFinalizer-1] ERROR nextflow.processor.TaskProcessor - Error executing process > 'METABOLITE_SCREEN' + +Caused by: + Process `METABOLITE_SCREEN` terminated with an error exit status (127) + + +Command executed: + + set -e + python /app/screen.py -i metabolites-rev.tsv -z protein_seq.zarr + +Command exit status: + 127 + +Command output: + (empty) + +Command error: + .command.sh: line 3: python: command not found + +Work dir: + /dbs/metabolite-screen-alt/nf_metabol_screen_adaptive/work/f9/21c381bcd7594501602fb392f344c9 + +Tip: view the complete command output by changing to the process work dir and entering the command `cat .command.out` +Jul-21 03:07:11.621 [main] DEBUG nextflow.Session - Session await > all processes finished +Jul-21 03:07:11.628 [TaskFinalizer-1] DEBUG nextflow.Session - Session aborted -- Cause: Process `METABOLITE_SCREEN` terminated with an error exit status (127) +Jul-21 03:07:11.643 [main] DEBUG nextflow.Session - Session await > all barriers passed +Jul-21 03:07:11.643 [Task monitor] DEBUG n.processor.TaskPollingMonitor - <<< barrier arrives (monitor: local) - terminating tasks monitor poll loop +Jul-21 03:07:11.648 [main] DEBUG n.trace.WorkflowStatsObserver - Workflow completed > WorkflowStats[succeededCount=0; failedCount=1; ignoredCount=0; cachedCount=0; pendingCount=0; submittedCount=0; runningCount=0; retriesCount=0; abortedCount=0; succeedDuration=0ms; failedDuration=18ms; cachedDuration=0ms;loadCpus=0; loadMemory=0; peakRunning=1; peakCpus=1; peakMemory=10 GB; ] +Jul-21 03:07:11.648 [main] DEBUG nextflow.trace.TraceFileObserver - Workflow completed -- saving trace file +Jul-21 03:07:11.649 [main] DEBUG nextflow.trace.ReportObserver - Workflow completed -- rendering execution report +Jul-21 03:07:12.149 [main] DEBUG nextflow.trace.TimelineObserver - Workflow completed -- rendering execution timeline +Jul-21 03:07:12.189 [main] DEBUG nextflow.cache.CacheDB - Closing CacheDB done +Jul-21 03:07:12.197 [main] DEBUG nextflow.script.ScriptRunner - > Execution complete -- Goodbye diff --git a/nf_metabol_screen_adaptive/.nextflow.log.1 b/nf_metabol_screen_adaptive/.nextflow.log.1 new file mode 100644 index 0000000..15babcf --- /dev/null +++ b/nf_metabol_screen_adaptive/.nextflow.log.1 @@ -0,0 +1,67 @@ +Jul-15 07:43:54.338 [main] DEBUG nextflow.cli.Launcher - $> nextflow run -profile docker test.nf +Jul-15 07:43:54.407 [main] DEBUG nextflow.cli.CmdRun - N E X T F L O W ~ version 24.10.3 +Jul-15 07:43:54.418 [main] DEBUG nextflow.plugin.PluginsFacade - Setting up plugin manager > mode=prod; embedded=false; plugins-dir=/root/.nextflow/plugins; core-plugins: nf-amazon@2.9.2,nf-azure@1.10.2,nf-cloudcache@0.4.2,nf-codecommit@0.2.2,nf-console@1.1.4,nf-google@1.15.3,nf-tower@1.9.3,nf-wave@1.7.4 +Jul-15 07:43:54.443 [main] INFO o.pf4j.DefaultPluginStatusProvider - Enabled plugins: [] +Jul-15 07:43:54.443 [main] INFO o.pf4j.DefaultPluginStatusProvider - Disabled plugins: [] +Jul-15 07:43:54.445 [main] INFO org.pf4j.DefaultPluginManager - PF4J version 3.12.0 in 'deployment' mode +Jul-15 07:43:54.452 [main] INFO org.pf4j.AbstractPluginManager - No plugins +Jul-15 07:43:54.463 [main] DEBUG nextflow.config.ConfigBuilder - Found config local: /data/bugrasWorkspace3/metabolite-screen-alt/nf_metabol_screen_adaptive/nextflow.config +Jul-15 07:43:54.464 [main] DEBUG nextflow.config.ConfigBuilder - Parsing config file: /data/bugrasWorkspace3/metabolite-screen-alt/nf_metabol_screen_adaptive/nextflow.config +Jul-15 07:43:54.479 [main] DEBUG n.secret.LocalSecretsProvider - Secrets store: /root/.nextflow/secrets/store.json +Jul-15 07:43:54.481 [main] DEBUG nextflow.secret.SecretsLoader - Discovered secrets providers: [nextflow.secret.LocalSecretsProvider@17ca8b92] - activable => nextflow.secret.LocalSecretsProvider@17ca8b92 +Jul-15 07:43:54.484 [main] DEBUG nextflow.config.ConfigBuilder - Applying config profile: `docker` +Jul-15 07:43:54.738 [main] DEBUG nextflow.config.ConfigBuilder - Available config profiles: [k8s, docker] +Jul-15 07:43:54.752 [main] DEBUG nextflow.cli.CmdRun - Applied DSL=2 by global default +Jul-15 07:43:54.763 [main] DEBUG nextflow.cli.CmdRun - Launching `test.nf` [boring_faggin] DSL2 - revision: b00b655f5b +Jul-15 07:43:54.764 [main] DEBUG nextflow.plugin.PluginsFacade - Plugins default=[] +Jul-15 07:43:54.764 [main] DEBUG nextflow.plugin.PluginsFacade - Plugins resolved requirement=[] +Jul-15 07:43:54.796 [main] DEBUG nextflow.Session - Session UUID: 063177a9-1ffb-407e-a41d-e6a1184c5dd1 +Jul-15 07:43:54.796 [main] DEBUG nextflow.Session - Run name: boring_faggin +Jul-15 07:43:54.797 [main] DEBUG nextflow.Session - Executor pool size: 32 +Jul-15 07:43:54.803 [main] DEBUG nextflow.file.FilePorter - File porter settings maxRetries=3; maxTransfers=50; pollTimeout=null +Jul-15 07:43:54.807 [main] DEBUG nextflow.util.ThreadPoolBuilder - Creating thread pool 'FileTransfer' minSize=10; maxSize=96; workQueue=LinkedBlockingQueue[10000]; allowCoreThreadTimeout=false +Jul-15 07:43:54.825 [main] DEBUG nextflow.cli.CmdRun - + Version: 24.10.3 build 5933 + Created: 16-12-2024 15:34 UTC (07:34 PDT) + System: Linux 6.8.0-58-generic + Runtime: Groovy 4.0.23 on OpenJDK 64-Bit Server VM 21.0.7+6-Ubuntu-0ubuntu124.04 + Encoding: UTF-8 (UTF-8) + Process: 3458331@bigbertha [127.0.1.1] + CPUs: 32 - Mem: 61.9 GB (4.3 GB) - Swap: 8 GB (128 KB) +Jul-15 07:43:54.842 [main] DEBUG nextflow.Session - Work-dir: /data/bugrasWorkspace3/metabolite-screen-alt/nf_metabol_screen_adaptive/work [ext2/ext3] +Jul-15 07:43:54.842 [main] DEBUG nextflow.Session - Script base path does not exist or is not a directory: /data/bugrasWorkspace3/metabolite-screen-alt/nf_metabol_screen_adaptive/bin +Jul-15 07:43:54.848 [main] DEBUG nextflow.executor.ExecutorFactory - Extension executors providers=[] +Jul-15 07:43:54.853 [main] DEBUG nextflow.Session - Observer factory: DefaultObserverFactory +Jul-15 07:43:54.872 [main] DEBUG nextflow.cache.CacheFactory - Using Nextflow cache factory: nextflow.cache.DefaultCacheFactory +Jul-15 07:43:54.877 [main] DEBUG nextflow.util.CustomThreadPool - Creating default thread pool > poolSize: 33; maxThreads: 1000 +Jul-15 07:43:55.002 [main] DEBUG nextflow.Session - Session start +Jul-15 07:43:55.003 [main] DEBUG nextflow.trace.TraceFileObserver - Workflow started -- trace file: /data/bugrasWorkspace3/metabolite-screen-alt/nf_metabol_screen_adaptive/execution_trace.txt +Jul-15 07:43:55.083 [main] DEBUG nextflow.script.ScriptRunner - > Launching execution +Jul-15 07:43:55.196 [main] DEBUG nextflow.executor.ExecutorFactory - << taskConfig executor: null +Jul-15 07:43:55.196 [main] DEBUG nextflow.executor.ExecutorFactory - >> processorType: 'local' +Jul-15 07:43:55.199 [main] DEBUG nextflow.executor.Executor - [warm up] executor > local +Jul-15 07:43:55.204 [main] DEBUG n.processor.LocalPollingMonitor - Creating local task monitor for executor 'local' > cpus=32; memory=61.9 GB; capacity=32; pollInterval=100ms; dumpInterval=5m +Jul-15 07:43:55.205 [main] DEBUG n.processor.TaskPollingMonitor - >>> barrier register (monitor: local) +Jul-15 07:43:55.246 [main] DEBUG nextflow.Session - Workflow process names [dsl2]: METABOLITE_SCREEN +Jul-15 07:43:55.247 [main] DEBUG nextflow.Session - Igniting dataflow network (1) +Jul-15 07:43:55.247 [main] DEBUG nextflow.processor.TaskProcessor - Starting process > METABOLITE_SCREEN +Jul-15 07:43:55.247 [main] DEBUG nextflow.script.ScriptRunner - Parsed script files: + Script_9d98cafae0c3b8e5: /data/bugrasWorkspace3/metabolite-screen-alt/nf_metabol_screen_adaptive/test.nf + Script_c8d2b32ed0aeeac9: /data/bugrasWorkspace3/metabolite-screen-alt/nf_metabol_screen_adaptive/./main.nf +Jul-15 07:43:55.247 [main] DEBUG nextflow.script.ScriptRunner - > Awaiting termination +Jul-15 07:43:55.247 [main] DEBUG nextflow.Session - Session await +Jul-15 07:43:55.334 [Task submitter] DEBUG n.executor.local.LocalTaskHandler - Launch cmd line: /bin/bash -ue .command.run +Jul-15 07:43:55.336 [Task submitter] INFO nextflow.Session - [5b/95e3bb] Submitted process > METABOLITE_SCREEN +Jul-15 07:44:05.790 [Task monitor] DEBUG n.processor.TaskPollingMonitor - Task completed > TaskHandler[id: 1; name: METABOLITE_SCREEN; status: COMPLETED; exit: 0; error: -; workDir: /data/bugrasWorkspace3/metabolite-screen-alt/nf_metabol_screen_adaptive/work/5b/95e3bb5e9a086140ca514eab04dd78] +Jul-15 07:44:05.791 [Task monitor] DEBUG nextflow.util.ThreadPoolBuilder - Creating thread pool 'TaskFinalizer' minSize=10; maxSize=96; workQueue=LinkedBlockingQueue[10000]; allowCoreThreadTimeout=false +Jul-15 07:44:06.031 [main] DEBUG nextflow.Session - Session await > all processes finished +Jul-15 07:44:06.090 [Task monitor] DEBUG n.processor.TaskPollingMonitor - <<< barrier arrives (monitor: local) - terminating tasks monitor poll loop +Jul-15 07:44:06.090 [main] DEBUG nextflow.Session - Session await > all barriers passed +Jul-15 07:44:06.091 [main] DEBUG nextflow.util.ThreadPoolManager - Thread pool 'TaskFinalizer' shutdown completed (hard=false) +Jul-15 07:44:06.094 [main] DEBUG n.trace.WorkflowStatsObserver - Workflow completed > WorkflowStats[succeededCount=1; failedCount=0; ignoredCount=0; cachedCount=0; pendingCount=0; submittedCount=0; runningCount=0; retriesCount=0; abortedCount=0; succeedDuration=2.8s; failedDuration=0ms; cachedDuration=0ms;loadCpus=0; loadMemory=0; peakRunning=1; peakCpus=1; peakMemory=10 GB; ] +Jul-15 07:44:06.094 [main] DEBUG nextflow.trace.TraceFileObserver - Workflow completed -- saving trace file +Jul-15 07:44:06.095 [main] DEBUG nextflow.trace.ReportObserver - Workflow completed -- rendering execution report +Jul-15 07:44:06.349 [main] DEBUG nextflow.trace.TimelineObserver - Workflow completed -- rendering execution timeline +Jul-15 07:44:06.431 [main] DEBUG nextflow.cache.CacheDB - Closing CacheDB done +Jul-15 07:44:06.436 [main] DEBUG nextflow.util.ThreadPoolManager - Thread pool 'FileTransfer' shutdown completed (hard=false) +Jul-15 07:44:06.436 [main] DEBUG nextflow.script.ScriptRunner - > Execution complete -- Goodbye diff --git a/nf_metabol_screen_adaptive/.nextflow.log.2 b/nf_metabol_screen_adaptive/.nextflow.log.2 new file mode 100644 index 0000000..9092994 --- /dev/null +++ b/nf_metabol_screen_adaptive/.nextflow.log.2 @@ -0,0 +1,80 @@ +Jul-11 04:23:14.724 [main] DEBUG nextflow.cli.Launcher - $> nextflow run -profile docker test.nf -bg -with-tower 'http://nucleus.omic.ai:8000/api' +Jul-11 04:23:14.779 [main] INFO nextflow.cli.CmdRun - N E X T F L O W ~ version 24.10.3 +Jul-11 04:23:14.789 [main] DEBUG nextflow.plugin.PluginsFacade - Setting up plugin manager > mode=prod; embedded=false; plugins-dir=/root/.nextflow/plugins; core-plugins: nf-amazon@2.9.2,nf-azure@1.10.2,nf-cloudcache@0.4.2,nf-codecommit@0.2.2,nf-console@1.1.4,nf-google@1.15.3,nf-tower@1.9.3,nf-wave@1.7.4 +Jul-11 04:23:14.808 [main] INFO o.pf4j.DefaultPluginStatusProvider - Enabled plugins: [] +Jul-11 04:23:14.808 [main] INFO o.pf4j.DefaultPluginStatusProvider - Disabled plugins: [] +Jul-11 04:23:14.810 [main] INFO org.pf4j.DefaultPluginManager - PF4J version 3.12.0 in 'deployment' mode +Jul-11 04:23:14.820 [main] INFO org.pf4j.AbstractPluginManager - No plugins +Jul-11 04:23:14.831 [main] DEBUG nextflow.config.ConfigBuilder - Found config local: /data/bugrasWorkspace3/metabolite-screen/nf_metabol_screen_adaptive/nextflow.config +Jul-11 04:23:14.832 [main] DEBUG nextflow.config.ConfigBuilder - Parsing config file: /data/bugrasWorkspace3/metabolite-screen/nf_metabol_screen_adaptive/nextflow.config +Jul-11 04:23:14.849 [main] DEBUG n.secret.LocalSecretsProvider - Secrets store: /root/.nextflow/secrets/store.json +Jul-11 04:23:14.851 [main] DEBUG nextflow.secret.SecretsLoader - Discovered secrets providers: [nextflow.secret.LocalSecretsProvider@26a94fa5] - activable => nextflow.secret.LocalSecretsProvider@26a94fa5 +Jul-11 04:23:14.853 [main] DEBUG nextflow.config.ConfigBuilder - Applying config profile: `docker` +Jul-11 04:23:15.119 [main] DEBUG nextflow.config.ConfigBuilder - Available config profiles: [k8s, docker] +Jul-11 04:23:15.133 [main] DEBUG nextflow.cli.CmdRun - Applied DSL=2 by global default +Jul-11 04:23:15.145 [main] INFO nextflow.cli.CmdRun - Launching `test.nf` [admiring_magritte] DSL2 - revision: 5f66a2b283 +Jul-11 04:23:15.145 [main] DEBUG nextflow.plugin.PluginsFacade - Plugins default=[] +Jul-11 04:23:15.146 [main] DEBUG nextflow.plugin.PluginsFacade - Plugins resolved requirement=[nf-tower@1.9.3] +Jul-11 04:23:15.146 [main] DEBUG nextflow.plugin.PluginUpdater - Installing plugin nf-tower version: 1.9.3 +Jul-11 04:23:15.150 [main] INFO org.pf4j.AbstractPluginManager - Plugin 'nf-tower@1.9.3' resolved +Jul-11 04:23:15.150 [main] INFO org.pf4j.AbstractPluginManager - Start plugin 'nf-tower@1.9.3' +Jul-11 04:23:15.165 [main] DEBUG nextflow.plugin.BasePlugin - Plugin started nf-tower@1.9.3 +Jul-11 04:23:15.195 [main] DEBUG nextflow.Session - Session UUID: 8abf60bb-5459-4d36-9886-d8f0064971ac +Jul-11 04:23:15.195 [main] DEBUG nextflow.Session - Run name: admiring_magritte +Jul-11 04:23:15.195 [main] DEBUG nextflow.Session - Executor pool size: 32 +Jul-11 04:23:15.200 [main] DEBUG nextflow.file.FilePorter - File porter settings maxRetries=3; maxTransfers=50; pollTimeout=null +Jul-11 04:23:15.203 [main] DEBUG nextflow.util.ThreadPoolBuilder - Creating thread pool 'FileTransfer' minSize=10; maxSize=96; workQueue=LinkedBlockingQueue[10000]; allowCoreThreadTimeout=false +Jul-11 04:23:15.205 [main] DEBUG nextflow.config.ConfigBuilder - Found config local: /data/bugrasWorkspace3/metabolite-screen/nf_metabol_screen_adaptive/nextflow.config +Jul-11 04:23:15.205 [main] DEBUG nextflow.config.ConfigBuilder - Parsing config file: /data/bugrasWorkspace3/metabolite-screen/nf_metabol_screen_adaptive/nextflow.config +Jul-11 04:23:15.206 [main] DEBUG nextflow.config.ConfigBuilder - Applying config profile: `docker` +Jul-11 04:23:15.243 [main] DEBUG nextflow.config.ConfigBuilder - Available config profiles: [k8s, docker] +Jul-11 04:23:15.269 [main] DEBUG nextflow.cli.CmdRun - + Version: 24.10.3 build 5933 + Created: 16-12-2024 15:34 UTC (07:34 PDT) + System: Linux 6.8.0-58-generic + Runtime: Groovy 4.0.23 on OpenJDK 64-Bit Server VM 21.0.7+6-Ubuntu-0ubuntu124.04 + Encoding: UTF-8 (UTF-8) + Process: 2298940@bigbertha [127.0.1.1] + CPUs: 32 - Mem: 61.9 GB (882.4 MB) - Swap: 8 GB (972 KB) +Jul-11 04:23:15.288 [main] DEBUG nextflow.Session - Work-dir: /data/bugrasWorkspace3/metabolite-screen/nf_metabol_screen_adaptive/work [ext2/ext3] +Jul-11 04:23:15.288 [main] DEBUG nextflow.Session - Script base path does not exist or is not a directory: /data/bugrasWorkspace3/metabolite-screen/nf_metabol_screen_adaptive/bin +Jul-11 04:23:15.295 [main] DEBUG nextflow.executor.ExecutorFactory - Extension executors providers=[] +Jul-11 04:23:15.301 [main] DEBUG nextflow.Session - Observer factory: DefaultObserverFactory +Jul-11 04:23:15.309 [main] DEBUG nextflow.Session - Observer factory: TowerFactory +Jul-11 04:23:15.438 [main] DEBUG nextflow.cache.CacheFactory - Using Nextflow cache factory: nextflow.cache.DefaultCacheFactory +Jul-11 04:23:15.444 [main] DEBUG nextflow.util.CustomThreadPool - Creating default thread pool > poolSize: 33; maxThreads: 1000 +Jul-11 04:23:15.651 [main] DEBUG nextflow.Session - Session start +Jul-11 04:23:15.653 [main] DEBUG nextflow.trace.TraceFileObserver - Workflow started -- trace file: /data/bugrasWorkspace3/metabolite-screen/nf_metabol_screen_adaptive/execution_trace.txt +Jul-11 04:23:15.656 [main] DEBUG io.seqera.tower.plugin.TowerClient - Creating Seqera Platform observer -- endpoint=http://nucleus.omic.ai:8000/api; requestInterval=1s; aliveInterval=1m; maxRetries=5; backOffBase=3; backOffDelay=250 +Jul-11 04:23:15.893 [main] DEBUG nextflow.script.ScriptRunner - > Launching execution +Jul-11 04:23:15.972 [main] DEBUG nextflow.executor.ExecutorFactory - << taskConfig executor: null +Jul-11 04:23:15.973 [main] DEBUG nextflow.executor.ExecutorFactory - >> processorType: 'local' +Jul-11 04:23:15.975 [main] DEBUG nextflow.executor.Executor - [warm up] executor > local +Jul-11 04:23:15.979 [main] DEBUG n.processor.LocalPollingMonitor - Creating local task monitor for executor 'local' > cpus=32; memory=61.9 GB; capacity=32; pollInterval=100ms; dumpInterval=5m +Jul-11 04:23:15.980 [main] DEBUG n.processor.TaskPollingMonitor - >>> barrier register (monitor: local) +Jul-11 04:23:16.020 [main] DEBUG nextflow.Session - Workflow process names [dsl2]: METABOLITE_SCREEN +Jul-11 04:23:16.140 [main] INFO io.seqera.tower.plugin.TowerClient - Monitor the execution with Seqera Platform using this URL: http://localhost:8000/watch/J8JA6yEb +Jul-11 04:23:16.141 [main] DEBUG nextflow.Session - Igniting dataflow network (1) +Jul-11 04:23:16.141 [main] DEBUG nextflow.processor.TaskProcessor - Starting process > METABOLITE_SCREEN +Jul-11 04:23:16.141 [main] DEBUG nextflow.script.ScriptRunner - Parsed script files: + Script_c8d2b32ed0aeeac9: /data/bugrasWorkspace3/metabolite-screen/nf_metabol_screen_adaptive/./main.nf + Script_85e5efa6aea507c6: /data/bugrasWorkspace3/metabolite-screen/nf_metabol_screen_adaptive/test.nf +Jul-11 04:23:16.141 [main] DEBUG nextflow.script.ScriptRunner - > Awaiting termination +Jul-11 04:23:16.141 [main] DEBUG nextflow.Session - Session await +Jul-11 04:23:16.243 [Task submitter] DEBUG n.executor.local.LocalTaskHandler - Launch cmd line: /bin/bash -ue .command.run +Jul-11 04:23:16.245 [Task submitter] INFO nextflow.Session - [cf/a7b064] Submitted process > METABOLITE_SCREEN +Jul-11 04:23:34.062 [Task monitor] DEBUG n.processor.TaskPollingMonitor - Task completed > TaskHandler[id: 1; name: METABOLITE_SCREEN; status: COMPLETED; exit: 0; error: -; workDir: /data/bugrasWorkspace3/metabolite-screen/nf_metabol_screen_adaptive/work/cf/a7b0643787b68bed3189f63698ed53] +Jul-11 04:23:34.063 [Task monitor] DEBUG nextflow.util.ThreadPoolBuilder - Creating thread pool 'TaskFinalizer' minSize=10; maxSize=96; workQueue=LinkedBlockingQueue[10000]; allowCoreThreadTimeout=false +Jul-11 04:23:34.299 [main] DEBUG nextflow.Session - Session await > all processes finished +Jul-11 04:23:34.362 [Task monitor] DEBUG n.processor.TaskPollingMonitor - <<< barrier arrives (monitor: local) - terminating tasks monitor poll loop +Jul-11 04:23:34.362 [main] DEBUG nextflow.Session - Session await > all barriers passed +Jul-11 04:23:34.364 [main] DEBUG nextflow.util.ThreadPoolManager - Thread pool 'TaskFinalizer' shutdown completed (hard=false) +Jul-11 04:23:34.366 [main] DEBUG n.trace.WorkflowStatsObserver - Workflow completed > WorkflowStats[succeededCount=1; failedCount=0; ignoredCount=0; cachedCount=0; pendingCount=0; submittedCount=0; runningCount=0; retriesCount=0; abortedCount=0; succeedDuration=7.7s; failedDuration=0ms; cachedDuration=0ms;loadCpus=0; loadMemory=0; peakRunning=1; peakCpus=1; peakMemory=10 GB; ] +Jul-11 04:23:34.366 [main] DEBUG nextflow.trace.TraceFileObserver - Workflow completed -- saving trace file +Jul-11 04:23:34.367 [main] DEBUG nextflow.trace.ReportObserver - Workflow completed -- rendering execution report +Jul-11 04:23:34.614 [main] DEBUG nextflow.trace.TimelineObserver - Workflow completed -- rendering execution timeline +Jul-11 04:23:34.743 [main] DEBUG nextflow.cache.CacheDB - Closing CacheDB done +Jul-11 04:23:34.748 [main] INFO org.pf4j.AbstractPluginManager - Stop plugin 'nf-tower@1.9.3' +Jul-11 04:23:34.748 [main] DEBUG nextflow.plugin.BasePlugin - Plugin stopped nf-tower +Jul-11 04:23:34.749 [main] DEBUG nextflow.util.ThreadPoolManager - Thread pool 'FileTransfer' shutdown completed (hard=false) +Jul-11 04:23:34.749 [main] DEBUG nextflow.script.ScriptRunner - > Execution complete -- Goodbye diff --git a/nf_metabol_screen_adaptive/.nextflow.log.3 b/nf_metabol_screen_adaptive/.nextflow.log.3 new file mode 100644 index 0000000..ed29f43 --- /dev/null +++ b/nf_metabol_screen_adaptive/.nextflow.log.3 @@ -0,0 +1,67 @@ +Jul-10 05:08:04.417 [main] DEBUG nextflow.cli.Launcher - $> nextflow run -profile docker test.nf +Jul-10 05:08:04.464 [main] DEBUG nextflow.cli.CmdRun - N E X T F L O W ~ version 24.10.3 +Jul-10 05:08:04.474 [main] DEBUG nextflow.plugin.PluginsFacade - Setting up plugin manager > mode=prod; embedded=false; plugins-dir=/root/.nextflow/plugins; core-plugins: nf-amazon@2.9.2,nf-azure@1.10.2,nf-cloudcache@0.4.2,nf-codecommit@0.2.2,nf-console@1.1.4,nf-google@1.15.3,nf-tower@1.9.3,nf-wave@1.7.4 +Jul-10 05:08:04.515 [main] INFO o.pf4j.DefaultPluginStatusProvider - Enabled plugins: [] +Jul-10 05:08:04.516 [main] INFO o.pf4j.DefaultPluginStatusProvider - Disabled plugins: [] +Jul-10 05:08:04.517 [main] INFO org.pf4j.DefaultPluginManager - PF4J version 3.12.0 in 'deployment' mode +Jul-10 05:08:04.523 [main] INFO org.pf4j.AbstractPluginManager - No plugins +Jul-10 05:08:04.533 [main] DEBUG nextflow.config.ConfigBuilder - Found config local: /data/bugrasWorkspace3/metabolite-screen/nf_metabol_screen_adaptive/nextflow.config +Jul-10 05:08:04.534 [main] DEBUG nextflow.config.ConfigBuilder - Parsing config file: /data/bugrasWorkspace3/metabolite-screen/nf_metabol_screen_adaptive/nextflow.config +Jul-10 05:08:04.549 [main] DEBUG n.secret.LocalSecretsProvider - Secrets store: /root/.nextflow/secrets/store.json +Jul-10 05:08:04.551 [main] DEBUG nextflow.secret.SecretsLoader - Discovered secrets providers: [nextflow.secret.LocalSecretsProvider@17ca8b92] - activable => nextflow.secret.LocalSecretsProvider@17ca8b92 +Jul-10 05:08:04.556 [main] DEBUG nextflow.config.ConfigBuilder - Applying config profile: `docker` +Jul-10 05:08:04.812 [main] DEBUG nextflow.config.ConfigBuilder - Available config profiles: [k8s, docker] +Jul-10 05:08:04.827 [main] DEBUG nextflow.cli.CmdRun - Applied DSL=2 by global default +Jul-10 05:08:04.834 [main] DEBUG nextflow.cli.CmdRun - Launching `test.nf` [drunk_swartz] DSL2 - revision: 8594c93ec6 +Jul-10 05:08:04.834 [main] DEBUG nextflow.plugin.PluginsFacade - Plugins default=[] +Jul-10 05:08:04.835 [main] DEBUG nextflow.plugin.PluginsFacade - Plugins resolved requirement=[] +Jul-10 05:08:04.859 [main] DEBUG nextflow.Session - Session UUID: 925b41d5-7b1c-4ed9-b34c-88420509e2e8 +Jul-10 05:08:04.859 [main] DEBUG nextflow.Session - Run name: drunk_swartz +Jul-10 05:08:04.859 [main] DEBUG nextflow.Session - Executor pool size: 32 +Jul-10 05:08:04.863 [main] DEBUG nextflow.file.FilePorter - File porter settings maxRetries=3; maxTransfers=50; pollTimeout=null +Jul-10 05:08:04.866 [main] DEBUG nextflow.util.ThreadPoolBuilder - Creating thread pool 'FileTransfer' minSize=10; maxSize=96; workQueue=LinkedBlockingQueue[10000]; allowCoreThreadTimeout=false +Jul-10 05:08:04.878 [main] DEBUG nextflow.cli.CmdRun - + Version: 24.10.3 build 5933 + Created: 16-12-2024 15:34 UTC (07:34 PDT) + System: Linux 6.8.0-58-generic + Runtime: Groovy 4.0.23 on OpenJDK 64-Bit Server VM 21.0.7+6-Ubuntu-0ubuntu124.04 + Encoding: UTF-8 (UTF-8) + Process: 324567@bigbertha [127.0.1.1] + CPUs: 32 - Mem: 61.9 GB (4 GB) - Swap: 8 GB (5.6 MB) +Jul-10 05:08:04.889 [main] DEBUG nextflow.Session - Work-dir: /data/bugrasWorkspace3/metabolite-screen/nf_metabol_screen_adaptive/work [ext2/ext3] +Jul-10 05:08:04.889 [main] DEBUG nextflow.Session - Script base path does not exist or is not a directory: /data/bugrasWorkspace3/metabolite-screen/nf_metabol_screen_adaptive/bin +Jul-10 05:08:04.894 [main] DEBUG nextflow.executor.ExecutorFactory - Extension executors providers=[] +Jul-10 05:08:04.899 [main] DEBUG nextflow.Session - Observer factory: DefaultObserverFactory +Jul-10 05:08:04.921 [main] DEBUG nextflow.cache.CacheFactory - Using Nextflow cache factory: nextflow.cache.DefaultCacheFactory +Jul-10 05:08:04.926 [main] DEBUG nextflow.util.CustomThreadPool - Creating default thread pool > poolSize: 33; maxThreads: 1000 +Jul-10 05:08:05.053 [main] DEBUG nextflow.Session - Session start +Jul-10 05:08:05.054 [main] DEBUG nextflow.trace.TraceFileObserver - Workflow started -- trace file: /data/bugrasWorkspace3/metabolite-screen/nf_metabol_screen_adaptive/execution_trace.txt +Jul-10 05:08:05.123 [main] DEBUG nextflow.script.ScriptRunner - > Launching execution +Jul-10 05:08:05.213 [main] DEBUG nextflow.executor.ExecutorFactory - << taskConfig executor: null +Jul-10 05:08:05.213 [main] DEBUG nextflow.executor.ExecutorFactory - >> processorType: 'local' +Jul-10 05:08:05.216 [main] DEBUG nextflow.executor.Executor - [warm up] executor > local +Jul-10 05:08:05.220 [main] DEBUG n.processor.LocalPollingMonitor - Creating local task monitor for executor 'local' > cpus=32; memory=61.9 GB; capacity=32; pollInterval=100ms; dumpInterval=5m +Jul-10 05:08:05.221 [main] DEBUG n.processor.TaskPollingMonitor - >>> barrier register (monitor: local) +Jul-10 05:08:05.260 [main] DEBUG nextflow.Session - Workflow process names [dsl2]: METABOLITE_SCREEN +Jul-10 05:08:05.261 [main] DEBUG nextflow.Session - Igniting dataflow network (1) +Jul-10 05:08:05.261 [main] DEBUG nextflow.processor.TaskProcessor - Starting process > METABOLITE_SCREEN +Jul-10 05:08:05.261 [main] DEBUG nextflow.script.ScriptRunner - Parsed script files: + Script_c8d2b32ed0aeeac9: /data/bugrasWorkspace3/metabolite-screen/nf_metabol_screen_adaptive/./main.nf + Script_041bcf7aceb7d897: /data/bugrasWorkspace3/metabolite-screen/nf_metabol_screen_adaptive/test.nf +Jul-10 05:08:05.261 [main] DEBUG nextflow.script.ScriptRunner - > Awaiting termination +Jul-10 05:08:05.261 [main] DEBUG nextflow.Session - Session await +Jul-10 05:08:05.359 [Task submitter] DEBUG n.executor.local.LocalTaskHandler - Launch cmd line: /bin/bash -ue .command.run +Jul-10 05:08:05.360 [Task submitter] INFO nextflow.Session - [0a/8843c6] Submitted process > METABOLITE_SCREEN +Jul-10 05:08:37.851 [Task monitor] DEBUG n.processor.TaskPollingMonitor - Task completed > TaskHandler[id: 1; name: METABOLITE_SCREEN; status: COMPLETED; exit: 0; error: -; workDir: /data/bugrasWorkspace3/metabolite-screen/nf_metabol_screen_adaptive/work/0a/8843c652f011dbd021cd836c526d44] +Jul-10 05:08:37.852 [Task monitor] DEBUG nextflow.util.ThreadPoolBuilder - Creating thread pool 'TaskFinalizer' minSize=10; maxSize=96; workQueue=LinkedBlockingQueue[10000]; allowCoreThreadTimeout=false +Jul-10 05:08:38.827 [main] DEBUG nextflow.Session - Session await > all processes finished +Jul-10 05:08:38.852 [Task monitor] DEBUG n.processor.TaskPollingMonitor - <<< barrier arrives (monitor: local) - terminating tasks monitor poll loop +Jul-10 05:08:38.852 [main] DEBUG nextflow.Session - Session await > all barriers passed +Jul-10 05:08:38.853 [main] DEBUG nextflow.util.ThreadPoolManager - Thread pool 'TaskFinalizer' shutdown completed (hard=false) +Jul-10 05:08:38.857 [main] DEBUG n.trace.WorkflowStatsObserver - Workflow completed > WorkflowStats[succeededCount=1; failedCount=0; ignoredCount=0; cachedCount=0; pendingCount=0; submittedCount=0; runningCount=0; retriesCount=0; abortedCount=0; succeedDuration=13.6s; failedDuration=0ms; cachedDuration=0ms;loadCpus=0; loadMemory=0; peakRunning=1; peakCpus=1; peakMemory=10 GB; ] +Jul-10 05:08:38.857 [main] DEBUG nextflow.trace.TraceFileObserver - Workflow completed -- saving trace file +Jul-10 05:08:38.858 [main] DEBUG nextflow.trace.ReportObserver - Workflow completed -- rendering execution report +Jul-10 05:08:39.681 [main] DEBUG nextflow.trace.TimelineObserver - Workflow completed -- rendering execution timeline +Jul-10 05:08:39.893 [main] DEBUG nextflow.cache.CacheDB - Closing CacheDB done +Jul-10 05:08:39.897 [main] DEBUG nextflow.util.ThreadPoolManager - Thread pool 'FileTransfer' shutdown completed (hard=false) +Jul-10 05:08:39.897 [main] DEBUG nextflow.script.ScriptRunner - > Execution complete -- Goodbye diff --git a/nf_metabol_screen_adaptive/.nextflow.log.4 b/nf_metabol_screen_adaptive/.nextflow.log.4 new file mode 100644 index 0000000..435e7c3 --- /dev/null +++ b/nf_metabol_screen_adaptive/.nextflow.log.4 @@ -0,0 +1,67 @@ +Jul-10 05:06:57.796 [main] DEBUG nextflow.cli.Launcher - $> nextflow run -profile docker test.nf +Jul-10 05:06:57.858 [main] DEBUG nextflow.cli.CmdRun - N E X T F L O W ~ version 24.10.3 +Jul-10 05:06:57.870 [main] DEBUG nextflow.plugin.PluginsFacade - Setting up plugin manager > mode=prod; embedded=false; plugins-dir=/root/.nextflow/plugins; core-plugins: nf-amazon@2.9.2,nf-azure@1.10.2,nf-cloudcache@0.4.2,nf-codecommit@0.2.2,nf-console@1.1.4,nf-google@1.15.3,nf-tower@1.9.3,nf-wave@1.7.4 +Jul-10 05:06:57.889 [main] INFO o.pf4j.DefaultPluginStatusProvider - Enabled plugins: [] +Jul-10 05:06:57.890 [main] INFO o.pf4j.DefaultPluginStatusProvider - Disabled plugins: [] +Jul-10 05:06:57.891 [main] INFO org.pf4j.DefaultPluginManager - PF4J version 3.12.0 in 'deployment' mode +Jul-10 05:06:57.899 [main] INFO org.pf4j.AbstractPluginManager - No plugins +Jul-10 05:06:57.909 [main] DEBUG nextflow.config.ConfigBuilder - Found config local: /data/bugrasWorkspace3/metabolite-screen/nf_metabol_screen_adaptive/nextflow.config +Jul-10 05:06:57.911 [main] DEBUG nextflow.config.ConfigBuilder - Parsing config file: /data/bugrasWorkspace3/metabolite-screen/nf_metabol_screen_adaptive/nextflow.config +Jul-10 05:06:57.927 [main] DEBUG n.secret.LocalSecretsProvider - Secrets store: /root/.nextflow/secrets/store.json +Jul-10 05:06:57.929 [main] DEBUG nextflow.secret.SecretsLoader - Discovered secrets providers: [nextflow.secret.LocalSecretsProvider@17ca8b92] - activable => nextflow.secret.LocalSecretsProvider@17ca8b92 +Jul-10 05:06:57.931 [main] DEBUG nextflow.config.ConfigBuilder - Applying config profile: `docker` +Jul-10 05:06:58.207 [main] DEBUG nextflow.config.ConfigBuilder - Available config profiles: [k8s, docker] +Jul-10 05:06:58.222 [main] DEBUG nextflow.cli.CmdRun - Applied DSL=2 by global default +Jul-10 05:06:58.232 [main] DEBUG nextflow.cli.CmdRun - Launching `test.nf` [nice_lagrange] DSL2 - revision: 8594c93ec6 +Jul-10 05:06:58.233 [main] DEBUG nextflow.plugin.PluginsFacade - Plugins default=[] +Jul-10 05:06:58.233 [main] DEBUG nextflow.plugin.PluginsFacade - Plugins resolved requirement=[] +Jul-10 05:06:58.266 [main] DEBUG nextflow.Session - Session UUID: 63ec0e24-1334-45e4-a396-bb1b7734bb1c +Jul-10 05:06:58.266 [main] DEBUG nextflow.Session - Run name: nice_lagrange +Jul-10 05:06:58.266 [main] DEBUG nextflow.Session - Executor pool size: 32 +Jul-10 05:06:58.271 [main] DEBUG nextflow.file.FilePorter - File porter settings maxRetries=3; maxTransfers=50; pollTimeout=null +Jul-10 05:06:58.274 [main] DEBUG nextflow.util.ThreadPoolBuilder - Creating thread pool 'FileTransfer' minSize=10; maxSize=96; workQueue=LinkedBlockingQueue[10000]; allowCoreThreadTimeout=false +Jul-10 05:06:58.292 [main] DEBUG nextflow.cli.CmdRun - + Version: 24.10.3 build 5933 + Created: 16-12-2024 15:34 UTC (07:34 PDT) + System: Linux 6.8.0-58-generic + Runtime: Groovy 4.0.23 on OpenJDK 64-Bit Server VM 21.0.7+6-Ubuntu-0ubuntu124.04 + Encoding: UTF-8 (UTF-8) + Process: 318707@bigbertha [127.0.1.1] + CPUs: 32 - Mem: 61.9 GB (5.9 GB) - Swap: 8 GB (692 KB) +Jul-10 05:06:58.308 [main] DEBUG nextflow.Session - Work-dir: /data/bugrasWorkspace3/metabolite-screen/nf_metabol_screen_adaptive/work [ext2/ext3] +Jul-10 05:06:58.309 [main] DEBUG nextflow.Session - Script base path does not exist or is not a directory: /data/bugrasWorkspace3/metabolite-screen/nf_metabol_screen_adaptive/bin +Jul-10 05:06:58.314 [main] DEBUG nextflow.executor.ExecutorFactory - Extension executors providers=[] +Jul-10 05:06:58.319 [main] DEBUG nextflow.Session - Observer factory: DefaultObserverFactory +Jul-10 05:06:58.338 [main] DEBUG nextflow.cache.CacheFactory - Using Nextflow cache factory: nextflow.cache.DefaultCacheFactory +Jul-10 05:06:58.344 [main] DEBUG nextflow.util.CustomThreadPool - Creating default thread pool > poolSize: 33; maxThreads: 1000 +Jul-10 05:06:58.461 [main] DEBUG nextflow.Session - Session start +Jul-10 05:06:58.463 [main] DEBUG nextflow.trace.TraceFileObserver - Workflow started -- trace file: /data/bugrasWorkspace3/metabolite-screen/nf_metabol_screen_adaptive/execution_trace.txt +Jul-10 05:06:58.544 [main] DEBUG nextflow.script.ScriptRunner - > Launching execution +Jul-10 05:06:58.620 [main] DEBUG nextflow.executor.ExecutorFactory - << taskConfig executor: null +Jul-10 05:06:58.620 [main] DEBUG nextflow.executor.ExecutorFactory - >> processorType: 'local' +Jul-10 05:06:58.623 [main] DEBUG nextflow.executor.Executor - [warm up] executor > local +Jul-10 05:06:58.627 [main] DEBUG n.processor.LocalPollingMonitor - Creating local task monitor for executor 'local' > cpus=32; memory=61.9 GB; capacity=32; pollInterval=100ms; dumpInterval=5m +Jul-10 05:06:58.628 [main] DEBUG n.processor.TaskPollingMonitor - >>> barrier register (monitor: local) +Jul-10 05:06:58.667 [main] DEBUG nextflow.Session - Workflow process names [dsl2]: METABOLITE_SCREEN +Jul-10 05:06:58.668 [main] DEBUG nextflow.Session - Igniting dataflow network (1) +Jul-10 05:06:58.668 [main] DEBUG nextflow.processor.TaskProcessor - Starting process > METABOLITE_SCREEN +Jul-10 05:06:58.668 [main] DEBUG nextflow.script.ScriptRunner - Parsed script files: + Script_c8d2b32ed0aeeac9: /data/bugrasWorkspace3/metabolite-screen/nf_metabol_screen_adaptive/./main.nf + Script_041bcf7aceb7d897: /data/bugrasWorkspace3/metabolite-screen/nf_metabol_screen_adaptive/test.nf +Jul-10 05:06:58.668 [main] DEBUG nextflow.script.ScriptRunner - > Awaiting termination +Jul-10 05:06:58.668 [main] DEBUG nextflow.Session - Session await +Jul-10 05:06:58.759 [Task submitter] DEBUG n.executor.local.LocalTaskHandler - Launch cmd line: /bin/bash -ue .command.run +Jul-10 05:06:58.761 [Task submitter] INFO nextflow.Session - [b1/b3e41f] Submitted process > METABOLITE_SCREEN +Jul-10 05:07:34.617 [Task monitor] DEBUG n.processor.TaskPollingMonitor - Task completed > TaskHandler[id: 1; name: METABOLITE_SCREEN; status: COMPLETED; exit: 0; error: -; workDir: /data/bugrasWorkspace3/metabolite-screen/nf_metabol_screen_adaptive/work/b1/b3e41f08bc233c93e7ac82702bb856] +Jul-10 05:07:34.617 [Task monitor] DEBUG nextflow.util.ThreadPoolBuilder - Creating thread pool 'TaskFinalizer' minSize=10; maxSize=96; workQueue=LinkedBlockingQueue[10000]; allowCoreThreadTimeout=false +Jul-10 05:07:35.660 [main] DEBUG nextflow.Session - Session await > all processes finished +Jul-10 05:07:35.716 [Task monitor] DEBUG n.processor.TaskPollingMonitor - <<< barrier arrives (monitor: local) - terminating tasks monitor poll loop +Jul-10 05:07:35.716 [main] DEBUG nextflow.Session - Session await > all barriers passed +Jul-10 05:07:35.718 [main] DEBUG nextflow.util.ThreadPoolManager - Thread pool 'TaskFinalizer' shutdown completed (hard=false) +Jul-10 05:07:35.721 [main] DEBUG n.trace.WorkflowStatsObserver - Workflow completed > WorkflowStats[succeededCount=1; failedCount=0; ignoredCount=0; cachedCount=0; pendingCount=0; submittedCount=0; runningCount=0; retriesCount=0; abortedCount=0; succeedDuration=15.9s; failedDuration=0ms; cachedDuration=0ms;loadCpus=0; loadMemory=0; peakRunning=1; peakCpus=1; peakMemory=10 GB; ] +Jul-10 05:07:35.721 [main] DEBUG nextflow.trace.TraceFileObserver - Workflow completed -- saving trace file +Jul-10 05:07:35.722 [main] DEBUG nextflow.trace.ReportObserver - Workflow completed -- rendering execution report +Jul-10 05:07:35.973 [main] DEBUG nextflow.trace.TimelineObserver - Workflow completed -- rendering execution timeline +Jul-10 05:07:36.099 [main] DEBUG nextflow.cache.CacheDB - Closing CacheDB done +Jul-10 05:07:36.104 [main] DEBUG nextflow.util.ThreadPoolManager - Thread pool 'FileTransfer' shutdown completed (hard=false) +Jul-10 05:07:36.104 [main] DEBUG nextflow.script.ScriptRunner - > Execution complete -- Goodbye diff --git a/nf_metabol_screen_adaptive/.nextflow.log.5 b/nf_metabol_screen_adaptive/.nextflow.log.5 new file mode 100644 index 0000000..8e005e9 --- /dev/null +++ b/nf_metabol_screen_adaptive/.nextflow.log.5 @@ -0,0 +1,69 @@ +Jul-03 12:08:35.777 [main] DEBUG nextflow.cli.Launcher - $> nextflow run -profile docker test.nf +Jul-03 12:08:35.914 [main] DEBUG nextflow.cli.CmdRun - N E X T F L O W ~ version 25.04.3 +Jul-03 12:08:35.944 [main] DEBUG nextflow.plugin.PluginsFacade - Setting up plugin manager > mode=prod; embedded=false; plugins-dir=/home/omic/.nextflow/plugins; core-plugins: nf-amazon@2.15.0,nf-azure@1.16.0,nf-cloudcache@0.4.3,nf-codecommit@0.2.3,nf-console@1.2.1,nf-google@1.21.0,nf-k8s@1.0.0,nf-tower@1.11.3,nf-wave@1.12.1 +Jul-03 12:08:35.978 [main] INFO o.pf4j.DefaultPluginStatusProvider - Enabled plugins: [] +Jul-03 12:08:35.979 [main] INFO o.pf4j.DefaultPluginStatusProvider - Disabled plugins: [] +Jul-03 12:08:35.983 [main] INFO org.pf4j.DefaultPluginManager - PF4J version 3.12.0 in 'deployment' mode +Jul-03 12:08:35.996 [main] INFO org.pf4j.AbstractPluginManager - No plugins +Jul-03 12:08:36.024 [main] DEBUG nextflow.config.ConfigBuilder - Found config local: /data/bugra/metabolite-screen/nf_metabol_screen/nextflow.config +Jul-03 12:08:36.028 [main] DEBUG nextflow.config.ConfigBuilder - Parsing config file: /data/bugra/metabolite-screen/nf_metabol_screen/nextflow.config +Jul-03 12:08:36.073 [main] DEBUG n.secret.LocalSecretsProvider - Secrets store: /home/omic/.nextflow/secrets/store.json +Jul-03 12:08:36.078 [main] DEBUG nextflow.secret.SecretsLoader - Discovered secrets providers: [nextflow.secret.LocalSecretsProvider@29314cc9] - activable => nextflow.secret.LocalSecretsProvider@29314cc9 +Jul-03 12:08:36.086 [main] DEBUG nextflow.config.ConfigBuilder - Applying config profile: `docker` +Jul-03 12:08:36.792 [main] DEBUG nextflow.config.ConfigBuilder - Available config profiles: [k8s, docker] +Jul-03 12:08:36.833 [main] DEBUG nextflow.cli.CmdRun - Applied DSL=2 by global default +Jul-03 12:08:36.850 [main] DEBUG nextflow.cli.CmdRun - Launching `test.nf` [insane_woese] DSL2 - revision: 063b5cd9a9 +Jul-03 12:08:36.852 [main] DEBUG nextflow.plugin.PluginsFacade - Plugins default=[] +Jul-03 12:08:36.852 [main] DEBUG nextflow.plugin.PluginsFacade - Plugins resolved requirement=[] +Jul-03 12:08:36.922 [main] DEBUG nextflow.Session - Session UUID: a62b6efd-60bb-4b97-a6e1-a68592f7d53f +Jul-03 12:08:36.923 [main] DEBUG nextflow.Session - Run name: insane_woese +Jul-03 12:08:36.923 [main] DEBUG nextflow.Session - Executor pool size: 80 +Jul-03 12:08:36.935 [main] DEBUG nextflow.file.FilePorter - File porter settings maxRetries=3; maxTransfers=50; pollTimeout=null +Jul-03 12:08:36.943 [main] DEBUG nextflow.util.ThreadPoolBuilder - Creating thread pool 'FileTransfer' minSize=10; maxSize=240; workQueue=LinkedBlockingQueue[-1]; allowCoreThreadTimeout=false +Jul-03 12:08:36.975 [main] DEBUG nextflow.cli.CmdRun - + Version: 25.04.3 build 5949 + Created: 02-06-2025 20:56 UTC + System: Linux 6.11.0-26-generic + Runtime: Groovy 4.0.26 on OpenJDK 64-Bit Server VM 21.0.7+6-Ubuntu-0ubuntu124.04 + Encoding: UTF-8 (UTF-8) + Process: 3786813@k8s-node23 [127.0.1.1] + CPUs: 80 - Mem: 251.6 GB (220.6 GB) - Swap: 0 (0) +Jul-03 12:08:37.006 [main] DEBUG nextflow.Session - Work-dir: /data/bugra/metabolite-screen/nf_metabol_screen/work [btrfs] +Jul-03 12:08:37.007 [main] DEBUG nextflow.Session - Script base path does not exist or is not a directory: /data/bugra/metabolite-screen/nf_metabol_screen/bin +Jul-03 12:08:37.022 [main] DEBUG nextflow.executor.ExecutorFactory - Extension executors providers=[] +Jul-03 12:08:37.034 [main] DEBUG nextflow.Session - Observer factory: DefaultObserverFactory +Jul-03 12:08:37.060 [main] DEBUG nextflow.Session - Observer factory (v2): LinObserverFactory +Jul-03 12:08:37.087 [main] DEBUG nextflow.cache.CacheFactory - Using Nextflow cache factory: nextflow.cache.DefaultCacheFactory +Jul-03 12:08:37.098 [main] DEBUG nextflow.util.CustomThreadPool - Creating default thread pool > poolSize: 81; maxThreads: 1000 +Jul-03 12:08:37.228 [main] DEBUG nextflow.Session - Session start +Jul-03 12:08:37.233 [main] DEBUG nextflow.trace.TraceFileObserver - Workflow started -- trace file: /data/bugra/metabolite-screen/nf_metabol_screen/execution_trace.txt +Jul-03 12:08:37.394 [main] DEBUG nextflow.script.ScriptRunner - > Launching execution +Jul-03 12:08:37.590 [main] DEBUG nextflow.executor.ExecutorFactory - << taskConfig executor: null +Jul-03 12:08:37.591 [main] DEBUG nextflow.executor.ExecutorFactory - >> processorType: 'local' +Jul-03 12:08:37.598 [main] DEBUG nextflow.executor.Executor - [warm up] executor > local +Jul-03 12:08:37.609 [main] DEBUG n.processor.LocalPollingMonitor - Creating local task monitor for executor 'local' > cpus=80; memory=251.6 GB; capacity=80; pollInterval=100ms; dumpInterval=5m +Jul-03 12:08:37.612 [main] DEBUG n.processor.TaskPollingMonitor - >>> barrier register (monitor: local) +Jul-03 12:08:37.646 [main] DEBUG nextflow.processor.TaskProcessor - Creating process 'METABOLITE_SCREEN': maxForks=0; fair=false; array=0 +Jul-03 12:08:37.724 [main] DEBUG nextflow.Session - Workflow process names [dsl2]: METABOLITE_SCREEN +Jul-03 12:08:37.726 [main] DEBUG nextflow.Session - Igniting dataflow network (1) +Jul-03 12:08:37.727 [main] DEBUG nextflow.processor.TaskProcessor - Starting process > METABOLITE_SCREEN +Jul-03 12:08:37.728 [main] DEBUG nextflow.script.ScriptRunner - Parsed script files: + Script_181c5ac3efe09ab5: /data/bugra/metabolite-screen/nf_metabol_screen/main.nf + Script_3b80613f4955047b: /data/bugra/metabolite-screen/nf_metabol_screen/test.nf +Jul-03 12:08:37.728 [main] DEBUG nextflow.script.ScriptRunner - > Awaiting termination +Jul-03 12:08:37.728 [main] DEBUG nextflow.Session - Session await +Jul-03 12:08:38.010 [Task submitter] DEBUG n.executor.local.LocalTaskHandler - Launch cmd line: /bin/bash -ue .command.run +Jul-03 12:08:38.016 [Task submitter] INFO nextflow.Session - [3d/10f68f] Submitted process > METABOLITE_SCREEN +Jul-03 12:08:44.784 [Task monitor] DEBUG n.processor.TaskPollingMonitor - Task completed > TaskHandler[id: 1; name: METABOLITE_SCREEN; status: COMPLETED; exit: 0; error: -; workDir: /data/bugra/metabolite-screen/nf_metabol_screen/work/3d/10f68ffcfb09a7b35f3b90f43efbd9] +Jul-03 12:08:44.786 [Task monitor] DEBUG nextflow.util.ThreadPoolBuilder - Creating thread pool 'TaskFinalizer' minSize=10; maxSize=240; workQueue=LinkedBlockingQueue[-1]; allowCoreThreadTimeout=false +Jul-03 12:08:45.543 [main] DEBUG nextflow.Session - Session await > all processes finished +Jul-03 12:08:45.581 [Task monitor] DEBUG n.processor.TaskPollingMonitor - <<< barrier arrives (monitor: local) - terminating tasks monitor poll loop +Jul-03 12:08:45.582 [main] DEBUG nextflow.Session - Session await > all barriers passed +Jul-03 12:08:45.586 [main] DEBUG nextflow.util.ThreadPoolManager - Thread pool 'TaskFinalizer' shutdown completed (hard=false) +Jul-03 12:08:45.596 [main] DEBUG n.trace.WorkflowStatsObserver - Workflow completed > WorkflowStats[succeededCount=1; failedCount=0; ignoredCount=0; cachedCount=0; pendingCount=0; submittedCount=0; runningCount=0; retriesCount=0; abortedCount=0; succeedDuration=3.7s; failedDuration=0ms; cachedDuration=0ms;loadCpus=0; loadMemory=0; peakRunning=1; peakCpus=1; peakMemory=10 GB; ] +Jul-03 12:08:45.596 [main] DEBUG nextflow.trace.TraceFileObserver - Workflow completed -- saving trace file +Jul-03 12:08:45.598 [main] DEBUG nextflow.trace.ReportObserver - Workflow completed -- rendering execution report +Jul-03 12:08:46.431 [main] DEBUG nextflow.trace.TimelineObserver - Workflow completed -- rendering execution timeline +Jul-03 12:08:46.525 [main] DEBUG nextflow.cache.CacheDB - Closing CacheDB done +Jul-03 12:08:46.538 [main] DEBUG nextflow.util.ThreadPoolManager - Thread pool 'FileTransfer' shutdown completed (hard=false) +Jul-03 12:08:46.538 [main] DEBUG nextflow.script.ScriptRunner - > Execution complete -- Goodbye diff --git a/nf_metabol_screen_adaptive/.nextflow.log.6 b/nf_metabol_screen_adaptive/.nextflow.log.6 new file mode 100644 index 0000000..c2cf3bd --- /dev/null +++ b/nf_metabol_screen_adaptive/.nextflow.log.6 @@ -0,0 +1,78 @@ +Jul-03 12:08:15.992 [main] DEBUG nextflow.cli.Launcher - $> nextflow run -profile docker test.nf +Jul-03 12:08:16.116 [main] DEBUG nextflow.cli.CmdRun - N E X T F L O W ~ version 25.04.3 +Jul-03 12:08:16.165 [main] DEBUG nextflow.plugin.PluginsFacade - Setting up plugin manager > mode=prod; embedded=false; plugins-dir=/home/omic/.nextflow/plugins; core-plugins: nf-amazon@2.15.0,nf-azure@1.16.0,nf-cloudcache@0.4.3,nf-codecommit@0.2.3,nf-console@1.2.1,nf-google@1.21.0,nf-k8s@1.0.0,nf-tower@1.11.3,nf-wave@1.12.1 +Jul-03 12:08:16.218 [main] INFO o.pf4j.DefaultPluginStatusProvider - Enabled plugins: [] +Jul-03 12:08:16.219 [main] INFO o.pf4j.DefaultPluginStatusProvider - Disabled plugins: [] +Jul-03 12:08:16.223 [main] INFO org.pf4j.DefaultPluginManager - PF4J version 3.12.0 in 'deployment' mode +Jul-03 12:08:16.239 [main] INFO org.pf4j.AbstractPluginManager - No plugins +Jul-03 12:08:16.269 [main] DEBUG nextflow.config.ConfigBuilder - Found config local: /data/bugra/metabolite-screen/nf_metabol_screen/nextflow.config +Jul-03 12:08:16.274 [main] DEBUG nextflow.config.ConfigBuilder - Parsing config file: /data/bugra/metabolite-screen/nf_metabol_screen/nextflow.config +Jul-03 12:08:16.319 [main] DEBUG n.secret.LocalSecretsProvider - Secrets store: /home/omic/.nextflow/secrets/store.json +Jul-03 12:08:16.323 [main] DEBUG nextflow.secret.SecretsLoader - Discovered secrets providers: [nextflow.secret.LocalSecretsProvider@1ddd3478] - activable => nextflow.secret.LocalSecretsProvider@1ddd3478 +Jul-03 12:08:16.339 [main] DEBUG nextflow.config.ConfigBuilder - Applying config profile: `docker` +Jul-03 12:08:17.003 [main] DEBUG nextflow.config.ConfigBuilder - Available config profiles: [k8s, docker] +Jul-03 12:08:17.044 [main] DEBUG nextflow.cli.CmdRun - Applied DSL=2 by global default +Jul-03 12:08:17.064 [main] DEBUG nextflow.cli.CmdRun - Launching `test.nf` [insane_snyder] DSL2 - revision: 49b8a74e0c +Jul-03 12:08:17.066 [main] DEBUG nextflow.plugin.PluginsFacade - Plugins default=[] +Jul-03 12:08:17.066 [main] DEBUG nextflow.plugin.PluginsFacade - Plugins resolved requirement=[] +Jul-03 12:08:17.150 [main] DEBUG nextflow.Session - Session UUID: 8cc53326-d69c-4269-9519-4eb256ccbbd2 +Jul-03 12:08:17.151 [main] DEBUG nextflow.Session - Run name: insane_snyder +Jul-03 12:08:17.152 [main] DEBUG nextflow.Session - Executor pool size: 80 +Jul-03 12:08:17.163 [main] DEBUG nextflow.file.FilePorter - File porter settings maxRetries=3; maxTransfers=50; pollTimeout=null +Jul-03 12:08:17.180 [main] DEBUG nextflow.util.ThreadPoolBuilder - Creating thread pool 'FileTransfer' minSize=10; maxSize=240; workQueue=LinkedBlockingQueue[-1]; allowCoreThreadTimeout=false +Jul-03 12:08:17.322 [main] DEBUG nextflow.cli.CmdRun - + Version: 25.04.3 build 5949 + Created: 02-06-2025 20:56 UTC + System: Linux 6.11.0-26-generic + Runtime: Groovy 4.0.26 on OpenJDK 64-Bit Server VM 21.0.7+6-Ubuntu-0ubuntu124.04 + Encoding: UTF-8 (UTF-8) + Process: 3786432@k8s-node23 [127.0.1.1] + CPUs: 80 - Mem: 251.6 GB (220.7 GB) - Swap: 0 (0) +Jul-03 12:08:17.386 [main] DEBUG nextflow.Session - Work-dir: /data/bugra/metabolite-screen/nf_metabol_screen/work [btrfs] +Jul-03 12:08:17.386 [main] DEBUG nextflow.Session - Script base path does not exist or is not a directory: /data/bugra/metabolite-screen/nf_metabol_screen/bin +Jul-03 12:08:17.401 [main] DEBUG nextflow.executor.ExecutorFactory - Extension executors providers=[] +Jul-03 12:08:17.413 [main] DEBUG nextflow.Session - Observer factory: DefaultObserverFactory +Jul-03 12:08:17.440 [main] DEBUG nextflow.Session - Observer factory (v2): LinObserverFactory +Jul-03 12:08:17.469 [main] DEBUG nextflow.cache.CacheFactory - Using Nextflow cache factory: nextflow.cache.DefaultCacheFactory +Jul-03 12:08:17.483 [main] DEBUG nextflow.util.CustomThreadPool - Creating default thread pool > poolSize: 81; maxThreads: 1000 +Jul-03 12:08:17.707 [main] DEBUG nextflow.Session - Session start +Jul-03 12:08:17.717 [main] DEBUG nextflow.trace.TraceFileObserver - Workflow started -- trace file: /data/bugra/metabolite-screen/nf_metabol_screen/execution_trace.txt +Jul-03 12:08:17.950 [main] DEBUG nextflow.script.ScriptRunner - > Launching execution +Jul-03 12:08:18.079 [main] DEBUG nextflow.script.ScriptRunner - Parsed script files: + Script_e80a6c5924994093: /data/bugra/metabolite-screen/nf_metabol_screen/test.nf + Script_181c5ac3efe09ab5: /data/bugra/metabolite-screen/nf_metabol_screen/main.nf +Jul-03 12:08:18.081 [main] DEBUG nextflow.Session - Session aborted -- Cause: No such property: chunks for class: nextflow.script.WorkflowBinding +Jul-03 12:08:18.096 [main] ERROR nextflow.cli.Launcher - @unknown +groovy.lang.MissingPropertyException: No such property: chunks for class: nextflow.script.WorkflowBinding + at groovy.lang.Binding.getVariable(Binding.java:61) + at nextflow.script.WorkflowBinding.getVariable(WorkflowBinding.groovy:143) + at groovy.lang.Binding.getProperty(Binding.java:117) + at nextflow.script.WorkflowBinding.getProperty(WorkflowBinding.groovy:132) + at org.codehaus.groovy.runtime.InvokerHelper.getProperty(InvokerHelper.java:167) + at groovy.lang.Closure.getPropertyTryThese(Closure.java:325) + at groovy.lang.Closure.getPropertyDelegateFirst(Closure.java:315) + at groovy.lang.Closure.getProperty(Closure.java:301) + at org.codehaus.groovy.vmplugin.v8.IndyInterface.fromCache(IndyInterface.java:321) + at Script_e80a6c5924994093$_runScript_closure1$_closure2.doCall(Script_e80a6c5924994093:13) + at java.base/jdk.internal.reflect.DirectMethodHandleAccessor.invoke(DirectMethodHandleAccessor.java:103) + at java.base/java.lang.reflect.Method.invoke(Method.java:580) + at org.codehaus.groovy.reflection.CachedMethod.invoke(CachedMethod.java:343) + at groovy.lang.MetaMethod.doMethodInvoke(MetaMethod.java:328) + at org.codehaus.groovy.runtime.metaclass.ClosureMetaClass.invokeMethod(ClosureMetaClass.java:280) + at groovy.lang.MetaClassImpl.invokeMethod(MetaClassImpl.java:1007) + at groovy.lang.Closure.call(Closure.java:433) + at groovy.lang.Closure.call(Closure.java:412) + at nextflow.script.WorkflowDef.run0(WorkflowDef.groovy:205) + at nextflow.script.WorkflowDef.run(WorkflowDef.groovy:189) + at nextflow.script.BindableDef.invoke_a(BindableDef.groovy:51) + at org.codehaus.groovy.vmplugin.v8.IndyInterface.fromCache(IndyInterface.java:321) + at nextflow.script.BaseScript.run0(BaseScript.groovy:182) + at org.codehaus.groovy.vmplugin.v8.IndyInterface.fromCache(IndyInterface.java:321) + at nextflow.script.BaseScript.run(BaseScript.groovy:193) + at nextflow.script.parser.v1.ScriptLoaderV1.runScript(ScriptLoaderV1.groovy:246) + at nextflow.script.parser.v1.ScriptLoaderV1.runScript(ScriptLoaderV1.groovy) + at nextflow.script.ScriptRunner.run(ScriptRunner.groovy:246) + 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) diff --git a/nf_metabol_screen_adaptive/.nextflow.pid b/nf_metabol_screen_adaptive/.nextflow.pid new file mode 100644 index 0000000..c971846 --- /dev/null +++ b/nf_metabol_screen_adaptive/.nextflow.pid @@ -0,0 +1 @@ +2298940 diff --git a/nf_metabol_screen_adaptive/Dockerfile b/nf_metabol_screen_adaptive/Dockerfile new file mode 100644 index 0000000..6c916a7 --- /dev/null +++ b/nf_metabol_screen_adaptive/Dockerfile @@ -0,0 +1,20 @@ +FROM mambaorg/micromamba:2.1.1 + +USER root + +COPY ./app /app + +ARG MAMBA_DOCKERFILE_ACTIVATE=1 + +RUN micromamba install -n base -y -c conda-forge --channel-priority flexible \ + python=3.12 \ + numpy \ + "pandas<3" \ + scikit-learn \ + parallelbar \ + zarr=3.0.7 \ + onnxruntime \ + procps-ng && \ + pip install \ + /app/bitexpand-0.1.0-cp38-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl \ + /app/mol_fingerprint-0.1.0-cp312-cp312-manylinux_2_34_x86_64.whl diff --git a/nf_metabol_screen_adaptive/app/bitexpand-0.1.0-cp38-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl b/nf_metabol_screen_adaptive/app/bitexpand-0.1.0-cp38-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl new file mode 100644 index 0000000..480d8cf Binary files /dev/null and b/nf_metabol_screen_adaptive/app/bitexpand-0.1.0-cp38-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl differ diff --git a/nf_metabol_screen_adaptive/app/convert.py b/nf_metabol_screen_adaptive/app/convert.py new file mode 100644 index 0000000..cadbb0e --- /dev/null +++ b/nf_metabol_screen_adaptive/app/convert.py @@ -0,0 +1,134 @@ +#!/usr/bin/env python3 + +import argparse +import pandas as pd +import sys +from pathlib import Path + +def create_smiles_file(drug_csv_path, metabolite_file_path, output_path="smiles.smi"): + """ + Create smiles.smi file by combining drug CSV and metabolite file. + + Args: + drug_csv_path: Path to CSV file with 'SMILES' header + metabolite_file_path: Path to tab-separated file with SMILES and metabolite IDs + output_path: Output file path (default: smiles.smi) + """ + + # Convert to Path objects for better handling + drug_csv_path = Path(drug_csv_path) + metabolite_file_path = Path(metabolite_file_path) + output_path = Path(output_path) + + # Check if input files exist + if not drug_csv_path.exists(): + raise FileNotFoundError(f"Drug CSV file not found: {drug_csv_path}") + + if not metabolite_file_path.exists(): + raise FileNotFoundError(f"Metabolite file not found: {metabolite_file_path}") + + # Read drug CSV + try: + drug_df = pd.read_csv(drug_csv_path) + except Exception as e: + raise Exception(f"Error reading drug CSV file: {e}") + + # Validate drug CSV has SMILES column + if 'SMILES' not in drug_df.columns: + raise ValueError("Drug CSV file must have 'SMILES' column") + + # Check if metabolite file contains "NO_METABOLITES" + try: + with open(metabolite_file_path, 'r') as f: + first_line = f.readline().strip() + except Exception as e: + raise Exception(f"Error reading metabolite file: {e}") + + # Handle no metabolites case + if first_line == "NO_METABOLITES": + print("No metabolites found, creating output file with drugs only") + + # Create drug dataframe with drug_N format + drug_output = drug_df.copy() + drug_output['ID'] = [f'drug_{i}' for i in range(len(drug_df))] + drug_output = drug_output[['SMILES', 'ID']] + + # Write only drugs to output file + try: + drug_output.to_csv(output_path, sep='\t', header=False, index=False) + except Exception as e: + raise Exception(f"Error writing output file: {e}") + + print(f"Successfully created {output_path}") + print(f" - {len(drug_df)} drugs") + print(f" - 0 metabolites") + return + + # Read metabolite file normally (tab-separated, no header) + try: + metabolite_df = pd.read_csv(metabolite_file_path, sep='\t', header=None, names=['SMILES', 'ID']) + except Exception as e: + raise Exception(f"Error reading metabolite file: {e}") + + # Validate metabolite file has at least 2 columns + if metabolite_df.shape[1] < 2: + raise ValueError("Metabolite file must have at least 2 columns (SMILES and ID)") + + # Create drug dataframe with drug_N format + drug_output = drug_df.copy() + drug_output['ID'] = [f'drug_{i}' for i in range(len(drug_df))] + drug_output = drug_output[['SMILES', 'ID']] + + # Use metabolite dataframe as-is (already has SMILES and ID columns) + metabolite_output = metabolite_df[['SMILES', 'ID']] + + # Combine drug and metabolite dataframes + combined_df = pd.concat([drug_output, metabolite_output], ignore_index=True) + + # Write to output file (tab-separated, no header) + try: + combined_df.to_csv(output_path, sep='\t', header=False, index=False) + except Exception as e: + raise Exception(f"Error writing output file: {e}") + + print(f"Successfully created {output_path}") + print(f" - {len(drug_df)} drugs") + print(f" - {len(metabolite_df)} metabolites") + +def main(): + parser = argparse.ArgumentParser( + description="Create smiles.smi file by combining drug CSV and metabolite file", + formatter_class=argparse.RawDescriptionHelpFormatter, + epilog=""" +Examples: + python3 create_smiles.py drug.csv metabolites.txt + python3 create_smiles.py drug.csv metabolites.txt -o compounds.smi + """ + ) + + parser.add_argument( + 'drug_csv', + help='Path to CSV file with SMILES column containing drug compounds' + ) + + parser.add_argument( + 'metabolite_file', + help='Path to tab-separated file with SMILES and metabolite IDs' + ) + + parser.add_argument( + '-o', '--output', + default='smiles.smi', + help='Output file path (default: smiles.smi)' + ) + + args = parser.parse_args() + + try: + create_smiles_file(args.drug_csv, args.metabolite_file, args.output) + except Exception as e: + print(f"Error: {e}", file=sys.stderr) + sys.exit(1) + +if __name__ == "__main__": + main() \ No newline at end of file diff --git a/nf_metabol_screen_adaptive/app/get_round_2.py b/nf_metabol_screen_adaptive/app/get_round_2.py new file mode 100755 index 0000000..0fad1f8 --- /dev/null +++ b/nf_metabol_screen_adaptive/app/get_round_2.py @@ -0,0 +1,225 @@ +import argparse +import pandas as pd +import numpy as np +from collections import defaultdict +from itertools import chain +from pathlib import Path + +import zarr +from zarr.storage import LocalStore + +# Load reference data +seq_exist = pd.read_csv('/app/MANE_all_transcipts.csv') + + +def get_round_2(threshold, workdir, round, drug_csv: Path): + workdir = Path(workdir) + fasta_name = "patient_0" + drug_name = drug_csv.stem + name_out = f"{drug_name}_{fasta_name}" + + # Load all zarr score stores produced by screen.py. + results_zarr = list(workdir.glob('*_results.zarr')) + if not results_zarr: + raise FileNotFoundError("No results Zarr stores found") + + print("Loading Zarr results...") + # Lazy zarr handles per file; we read the (proteins, compounds) score matrix + # in protein chunks rather than loading it fully — keeps peak memory bounded + # regardless of compound count. + zarr_groups = [] + compound_ids_per = [] + protein_ids_per = [] + for z_path in results_zarr: + store = LocalStore(z_path, read_only=True) + group = zarr.open(store, mode="r") + zarr_groups.append(group) + # numpy 2.4+ returns StringDType for these arrays; convert via tolist() + # because direct .astype(str) raises "cannot cast StringDType to StrDType". + compound_ids_per.append(np.array(group["compound_ids"][:].tolist(), dtype=str)) + protein_ids_per.append(np.array(group["protein_ids"][:].tolist(), dtype=str)) + + # All zarrs share the same compound axis (drug + same metabolites). + all_compound_ids = compound_ids_per[0] + for cids in compound_ids_per[1:]: + if cids.shape != all_compound_ids.shape or not np.array_equal(cids, all_compound_ids): + raise ValueError("All *_results.zarr stores must share the same compound_ids axis") + all_protein_ids = np.concatenate(protein_ids_per) if len(protein_ids_per) > 1 else protein_ids_per[0] + n_proteins = sum(g["scores"].shape[0] for g in zarr_groups) + n_compounds = all_compound_ids.shape[0] + + # ---- Compound-axis indices (tiny) ---- + drug_mask_cmpd = np.array([s.startswith("drug") for s in all_compound_ids], dtype=bool) + if not drug_mask_cmpd.any(): + raise ValueError("No 'drug_*' compounds present in compound_ids") + drug_cols_idx = np.where(drug_mask_cmpd)[0] + drug0_search = np.where(all_compound_ids == 'drug_0')[0] + if drug0_search.size == 0: + raise ValueError("'drug_0' not found in compound_ids") + drug0_idx = int(drug0_search[0]) + + # ---- Stream the score matrix in protein chunks, writing significant_interactions + # incrementally and accumulating per-protein summary stats. Avoids both the + # full score matrix load and the giant in-memory above-threshold DataFrame. ---- + # Per chunk peak ≈ CHUNK_PROTEINS * n_compounds * 4 bytes; for 1000×38k ≈ 150 MB. + CHUNK_PROTEINS = 1000 + drug_position = np.zeros(n_proteins, dtype=np.int64) + drug_0_col_full = np.empty(n_proteins, dtype=np.float32) + prot_count = defaultdict(int) # protein_id -> count of above-threshold compounds + prot_sum = defaultdict(float) # protein_id -> sum of above-threshold scores + + # Open significant_interactions.tsv before the loop (round 2 only); write rows per chunk. + sig_path = workdir / f'{name_out}_significant_interactions.tsv' + sig_writer = None + smile_dict = None + if round == 2: + test_smiles = pd.read_csv(workdir / 'smiles.smi', sep='\t', header=None) + smile_dict = dict(zip(test_smiles[1], test_smiles[0])) + sig_writer = open(sig_path, 'w') + sig_writer.write("drug/metabolite\tsmile\ttranscipt\tconplex_score\n") + + cursor = 0 + for group in zarr_groups: + scores_arr = group["scores"] + n_this = scores_arr.shape[0] + for start in range(0, n_this, CHUNK_PROTEINS): + end = min(start + CHUNK_PROTEINS, n_this) + chunk = np.asarray(scores_arr[start:end]) # (chunk_size, n_compounds) + global_start = cursor + start + global_end = cursor + end + chunk_size = end - start + + # drug score columns + max-per-protein for this chunk + chunk_max_drug = chunk[:, drug_cols_idx].max(axis=1) + + # drug_position[i] = # compounds with score strictly > max_drug_score_i. + # Matches production's stable-sort + first-drug-position convention. + drug_position[global_start:global_end] = (chunk > chunk_max_drug[:, None]).sum(axis=1) + + # drug_0 column + drug_0_col_full[global_start:global_end] = chunk[:, drug0_idx].astype(np.float32, copy=False) + + # Above-threshold rows for this chunk + pi_local, ci = np.where(chunk > threshold) + if pi_local.size: + scores_vec = chunk[pi_local, ci].astype(np.float32, copy=False) + + # Per-protein aggregates accumulated via bincount on local indices. + counts_local = np.bincount(pi_local, minlength=chunk_size) + sums_local = np.bincount(pi_local, weights=scores_vec.astype(np.float64), minlength=chunk_size) + for pi in np.flatnonzero(counts_local): + pid = all_protein_ids[global_start + pi] + prot_count[pid] += int(counts_local[pi]) + prot_sum[pid] += float(sums_local[pi]) + + # Write significant_interactions rows for this chunk directly to the file. + if sig_writer is not None: + compound_ids_vec = all_compound_ids[ci] + protein_ids_vec = all_protein_ids[global_start + pi_local] + smiles_vec = np.array( + [smile_dict.get(c, "UNKNOWN") for c in compound_ids_vec] + ) + pd.DataFrame({ + "drug/metabolite": compound_ids_vec, + "smile": smiles_vec, + "transcipt": protein_ids_vec, + "conplex_score": scores_vec, + }).to_csv(sig_writer, sep='\t', index=False, header=False) + cursor += n_this + + if sig_writer is not None: + sig_writer.close() + + drug_0_score = pd.DataFrame({ + "Drug": "drug_0", + "Transcript": all_protein_ids, + "Score": drug_0_col_full, + }) + + if round == 2: + drug_0_score.to_csv(workdir / f'{name_out}_drug_scores.tsv', sep='\t', index=False) + + # ---- Per-protein summary (only proteins with any above-threshold compound) ---- + drug_pos_map = dict(zip(all_protein_ids, drug_position)) + + if round == 1 and not prot_count: + # Equivalent to old "transcipts_summary.empty" early-out for round 1. + pd.DataFrame().to_csv(workdir / 'round_1.csv', index=False) + with open(workdir / 'round_1.fasta', 'w') as f: + f.write("all_data_is_filtered_out\n") + return 'STOP NO TRANSCIPTS ABOVE THRESHOLD' + + if prot_count: + proteins_with_above = list(prot_count.keys()) + # mean dtype kept as float32 to match the precision of the previous + # groupby-on-float32 path (CSV output is bit-identical that way). + means = np.array( + [prot_sum[p] / prot_count[p] for p in proteins_with_above], + dtype=np.float32, + ) + summary = pd.DataFrame({ + 'transcipt_name': proteins_with_above, + 'number_of_iteracting_compounds': [prot_count[p] for p in proteins_with_above], + 'mean_binding_above_threshold': means, + }) + else: + summary = pd.DataFrame(columns=[ + 'transcipt_name', 'number_of_iteracting_compounds', 'mean_binding_above_threshold' + ]) + summary['drug_position'] = summary['transcipt_name'].map(drug_pos_map) + + path_out = workdir / f'round_{round}.csv' + if len(summary) == 0: + with path_out.open("w") as f: + f.write("NO TRANSCIPTS ABOVE THRESHOLD") + return 'STOP NO TRANSCIPTS ABOVE THRESHOLD' + + summary['if_drug_above_threshold'] = ( + summary['number_of_iteracting_compounds'] > summary['drug_position'] + ) + + # MANE symbol lookup; strip mutated-protein "_2" suffix. + clean_transcript_names = [str(t).split('_')[0] for t in summary['transcipt_name']] + seq_lookup = seq_exist.set_index('transcipt')['symbol'] + summary['protein_name'] = [ + seq_lookup.get(t, "") for t in clean_transcript_names + ] + + summary.to_csv(path_out, index=False) + + # ---- Round 1 also writes the round-2 FASTA ---- + if round == 1: + name_2_filtered = list(summary['protein_name']) + transcipts_2 = list(chain.from_iterable( + list(seq_exist[seq_exist['symbol'] == sym]['transcipt']) + for sym in name_2_filtered + )) + transcipts_2 = list(np.unique(transcipts_2)) + existing = set(summary['transcipt_name']) + transcipts_2 = [t for t in transcipts_2 if t not in existing] + + fasta_new = [] + for t in transcipts_2: + row = seq_exist[seq_exist['transcipt'] == t] + if not row.empty: + fasta_new.append(f">{t}") + fasta_new.append(row['seq'].iloc[0]) + + with open(workdir / 'round_2.fasta', 'w') as f: + for line in fasta_new: + f.write(f"{line}\n") + + print(f"Round {round} processing complete.") + + +if __name__ == "__main__": + parser = argparse.ArgumentParser(description="Process and screen fragments.") + parser.add_argument("--threshold", required=True, type=float, + help="Threshold for 1. round of conplex scores") + parser.add_argument("--workdir", required=True, type=Path, help="workdir") + parser.add_argument("--round", required=True, type=int, help="Round 1 or 2") + parser.add_argument("--drug-csv", required=True, type=Path, + help="csv file with drug smiles") + args = parser.parse_args() + + get_round_2(args.threshold, args.workdir, args.round, args.drug_csv) diff --git a/nf_metabol_screen_adaptive/app/old_get_round_20.py b/nf_metabol_screen_adaptive/app/old_get_round_20.py new file mode 100644 index 0000000..f2de4c3 --- /dev/null +++ b/nf_metabol_screen_adaptive/app/old_get_round_20.py @@ -0,0 +1,143 @@ +import argparse +import pandas as pd +import numpy as np +from itertools import chain +from pathlib import PosixPath as Path + +seq_exist = pd.read_csv('/app/MANE_all_transcipts.csv') + +def get_round_2(threshold, workdir, round, drug_csv : Path): + workdir = Path(workdir) + + # Get output names + # Get patient fasta name + # fasta_files = list(workdir.glob('*_variants_transcript_id_mutations.fasta')) + # if not fasta_files: + # raise FileNotFoundError("No variants transcript mutations fasta file found") + # fasta_name = fasta_files[0].stem.replace('_variants_transcript_id_mutations', '') + fasta_name = "patient_0" + + # Get test drug + drug_name = drug_csv.stem + + name_out = f"{drug_name}_{fasta_name}" + + # Get all work dir complex files + results_files = list(workdir.glob('*_results.tsv')) + if not results_files: + raise FileNotFoundError("No results TSV files found") + + round_1_score_list = [str(f) for f in results_files] + + # Read 1st round + transcipts_1 = [ + pd.read_csv(i, sep='\t', header=None).sort_values([2], ascending=False) + for i in round_1_score_list + ] + + # Get position of drug interaction vs all metabolites + drug_pos = [ + [ + n + for n, j in enumerate(list(i[0])) + if j[:4] == 'drug' + ] + for i in transcipts_1 + ] + + # Drug score + drug_0_score = pd.concat([i[i[0] =='drug_0'] for i in transcipts_1]).rename({0:'Drug', 1:'Transcript', 2:'Score'}, axis=1) + + # Filter all below threshold + transcipts_1 = [i[i[2] > threshold] for i in transcipts_1] + + # Save transcript_complex above threshold to one file + if round == 2: + inter_import = pd.concat(transcipts_1, ignore_index=True).rename({0:'drug/metabolite',1:'transcipt',2:'conplex_score'},axis=1) + # Add drug + test_smiles = pd.read_csv(workdir / 'smiles.smi', sep='\t', header=None) + smi_ = [test_smiles[test_smiles[1] == i].iloc[0][0] for i in list(inter_import['drug/metabolite'])] + inter_import['smile'] = smi_ + inter_import[['drug/metabolite','smile','transcipt','conplex_score']].to_csv( + workdir / f'{name_out}_significant_interactions.tsv', sep='\t', index=False + ) + drug_0_score.to_csv(workdir / f'{name_out}_drug_scores.tsv', sep='\t', index=False) + + transcipts_1 = pd.DataFrame([ + (Path(j).stem.replace('_results', ''), i.shape[0], i[2].mean(), k[0]) + for i, j, k in zip(transcipts_1, round_1_score_list, drug_pos) + if i.shape[0] != 0 + ]) + + # Check if any interaction is above threshold for first round + if round == 1: + if transcipts_1.shape == (0,0): + transcipts_1.to_csv(workdir / 'round_1.csv', index=False) + with open(workdir / 'round_1.fasta', 'w') as f: + f.write("all_data_is_filtered_out\n") + return 'STOP NO TRANSCIPTS ABOVE THRESHOLD' + + transcipts_1 = transcipts_1.rename({ + 0:'transcipt_name', + 1:'number_of_iteracting_compounds', + 2:'mean_binding_above_threshold', + 3:'drug_position' + }, axis='columns') + + path_out = workdir / f'round_{round}.csv' + + if len(transcipts_1) == 0: + with path_out.open("w") as f: + f.write("NO TRANSCIPTS ABOVE THRESHOLD") + return 'STOP NO TRANSCIPTS ABOVE THRESHOLD' + + + transcipts_1['if_drug_above_threshold'] = transcipts_1.iloc[:,1] > transcipts_1.iloc[:,3] + + # If protein is mutated it has _2 in name, removes it + transcipt_names = [i.split('_')[0] for i in list(transcipts_1['transcipt_name'])] + temp = [ + seq_exist[seq_exist['transcipt'] == i] + for i in transcipt_names + ] + transcipts_1['protein_name'] =[ + i.iloc[0]['symbol'] if len(i) > 0 else "" + for i in temp + ] + + # Save data on first round + transcipts_1.to_csv(path_out, index=False) + + # Get fasta for second round + if round == 1: + # Get all transcripts of proteins above threshold + name_2_filttered = list(transcipts_1['protein_name']) + transcipts_2 = [list(seq_exist[seq_exist['symbol'] == i]['transcipt']) for i in name_2_filttered] + transcipts_2 = list(chain(*transcipts_2)) + transcipts_2 = list(np.unique((transcipts_2))) + + # Filter out transcripts already ran through complex + transcipts_2 = list(np.array(transcipts_2)[ + [i not in list(transcipts_1['transcipt_name']) for i in transcipts_2] + ]) + + fasta_new = [ + ['>'+i, seq_exist[seq_exist['transcipt'] == i]['seq'].iloc[0]] + for i in transcipts_2 + ] + fasta_new = list(chain(*fasta_new)) + + # Write fasta to run + with open(workdir / 'round_2.fasta', 'w') as f: + for line in fasta_new: + f.write(f"{line}\n") + +if __name__ == "__main__": + parser = argparse.ArgumentParser(description="Process and screen fragments.") + parser.add_argument("--threshold", required=True, type=float, help="Threshold for 1. round.of conplex scores") + parser.add_argument("--workdir", required=True, type=Path, help="workdir") + parser.add_argument("--round", required=True, type=int, help="Round 1 or 2") + parser.add_argument("--drug-csv", required=True, type=Path, help="csv file with drug smiles") + args = parser.parse_args() + + get_round_2(args.threshold, args.workdir, args.round, args.drug_csv) \ No newline at end of file diff --git a/nf_metabol_screen_adaptive/app/old_screen.py b/nf_metabol_screen_adaptive/app/old_screen.py new file mode 100644 index 0000000..7f95f8e --- /dev/null +++ b/nf_metabol_screen_adaptive/app/old_screen.py @@ -0,0 +1,127 @@ +# Custom Rust modules +import mol_fingerprint as mf +import bitexpand + +import pandas as pd +import numpy as np +from pathlib import Path +from argparse import ArgumentParser + +import zarr +from zarr.storage import LocalStore + +from sklearn.preprocessing import normalize +from parallelbar import progress_map + +import onnxruntime as ort +print('CUDA available:', 'CUDAExecutionProvider' in ort.get_available_providers()) + + + +def parse_args(): + parser = ArgumentParser() + parser.add_argument("-i","--input-tsv", type=Path, required=True, help="Input TSV file with molecules to screen. It must not have any labels and has only two columns, 1st molecule_label, 2nd molecule_smiles") + parser.add_argument("-z","--zarr-protein", type=Path, required=True, help="Input Zarr DB that holds the protein ids and their normalized projection vectors") + return parser + +parser = parse_args() + +args = parser.parse_args() + +# path_fp_basedir : Path = args.input_dir +# my_id :int = args.chunk_id + +path_metabolites : Path = args.input_tsv +if not path_metabolites.is_file(): + raise ValueError(f"{path_metabolites} IS MISSING OR NOT A FILE") + +df_metabolite = pd.read_csv( + path_metabolites, + sep="\t", + header=None, + names=["smiles" ,"compound_id"] +) + +path_zarr = args.zarr_protein +store_zarr = LocalStore(path_zarr , read_only=True) +group_zarr = zarr.open(store_zarr, mode="r") +protein_vecs = (group_zarr["normalized"][:]) + + +path_onnx = Path("/app/drug_projector.onnx") + +def load_model(model_path): + """Load ONNX model with GPU support""" + model_path = Path(model_path) + + # Set up providers for GPU execution + # providers = ['CUDAExecutionProvider', 'CPUExecutionProvider'] + providers = ['CPUExecutionProvider'] + + # Create inference session + session = ort.InferenceSession(str(model_path), providers=providers) + + # Verify GPU is being used + print(f"Available providers: {session.get_providers()}") + + return session + +session = load_model(path_onnx) + +def run_inference(input_vector): + """Run inference on the model""" + # Get input/output names + input_name = session.get_inputs()[0].name + output_name = session.get_outputs()[0].name + + # Ensure input is the correct shape and type + # if input_vector.shape != (2048,): + # raise ValueError(f"Input shape should be (2048,), got {input_vector.shape}") + + # Add batch dimension if needed + input_data = input_vector + + # Run inference + outputs = session.run([output_name], {input_name: input_data}) + + # Return the output vector (remove batch dimension) + return outputs[0] + +def normalize_vectors_sklearn(vectors): + """Normalize using sklearn - often fastest for large arrays""" + return normalize(vectors, norm='l2', axis=1) + +def project_drugs(smiles : list[str]) -> np.ndarray : + fps = bitexpand.expand_bits(np.array([ + np.frombuffer(fp,dtype=np.uint8) + for fp in mf.generate_fingerprints(smiles) + ])) + return normalize_vectors_sklearn(run_inference(fps)) + +pvecs = project_drugs(df_metabolite["smiles"].values.tolist()) + +my_results = np.dot(protein_vecs,pvecs.T) + +pids = group_zarr["ids"][:] + +path_outdir = Path("./") +def write_protein(i : int): + df_out = df_metabolite[["compound_id"]].copy() + df_out["protein_id"] = pids[i] + df_out["score"] = my_results[i] + # df_out["protein_sequence"] = group_zarr["sequences"][i] + path_out = path_outdir / f"{pids[i]}_results.tsv" + + df_out.to_csv( + path_out, + sep="\t", + index=False, + header=False + ) + +tasks = list(range(my_results.shape[0])) +progress_map( + write_protein, tasks +) + +print("PROCESS COMPLETED SUCCESSFULLY") diff --git a/nf_metabol_screen_adaptive/app/screen.py b/nf_metabol_screen_adaptive/app/screen.py new file mode 100644 index 0000000..139424b --- /dev/null +++ b/nf_metabol_screen_adaptive/app/screen.py @@ -0,0 +1,144 @@ +# Custom Rust modules +import mol_fingerprint as mf +import bitexpand + +import pandas as pd +import numpy as np +from pathlib import Path +from argparse import ArgumentParser + +import zarr +from zarr.storage import LocalStore +from zarr.codecs import ZstdCodec + +from sklearn.preprocessing import normalize +from parallelbar import progress_map + +import onnxruntime as ort +print('CUDA available:', 'CUDAExecutionProvider' in ort.get_available_providers()) + + +def parse_args(): + parser = ArgumentParser() + parser.add_argument("-i","--input-tsv", type=Path, required=True, help="Input TSV file with molecules to screen. It must not have any labels and has only two columns, 1st molecule_label, 2nd molecule_smiles") + parser.add_argument("-z","--zarr-protein", type=Path, required=True, help="Input Zarr DB that holds the protein ids and their normalized projection vectors") + return parser + +parser = parse_args() +args = parser.parse_args() + +path_metabolites : Path = args.input_tsv +if not path_metabolites.is_file(): + raise ValueError(f"{path_metabolites} IS MISSING OR NOT A FILE") + +df_metabolite = pd.read_csv( + path_metabolites, + sep="\t", + header=None, + names=["smiles" ,"compound_id"] +) + +path_zarr = args.zarr_protein +store_zarr = LocalStore(path_zarr, read_only=True) +group_zarr = zarr.open(store_zarr, mode="r") +protein_vecs = (group_zarr["normalized"][:]) + + +path_onnx = Path("/app/drug_projector.onnx") + +def load_model(model_path): + """Load ONNX model with GPU support""" + model_path = Path(model_path) + + # Set up providers for GPU execution + # providers = ['CUDAExecutionProvider', 'CPUExecutionProvider'] + providers = ['CPUExecutionProvider'] + + # Create inference session + session = ort.InferenceSession(str(model_path), providers=providers) + + # Verify GPU is being used + print(f"Available providers: {session.get_providers()}") + + return session + +session = load_model(path_onnx) + +def run_inference(input_vector): + """Run inference on the model""" + # Get input/output names + input_name = session.get_inputs()[0].name + output_name = session.get_outputs()[0].name + + # Run inference + outputs = session.run([output_name], {input_name: input_vector}) + + return outputs[0] + +def normalize_vectors_sklearn(vectors): + """Normalize using sklearn - often fastest for large arrays""" + return normalize(vectors, norm='l2', axis=1) + +def project_drugs(smiles : list[str]) -> np.ndarray : + fps = bitexpand.expand_bits(np.array([ + np.frombuffer(fp,dtype=np.uint8) + for fp in mf.generate_fingerprints(smiles) + ])) + return normalize_vectors_sklearn(run_inference(fps)) + +pvecs = project_drugs(df_metabolite["smiles"].values.tolist()) + +my_results = np.dot(protein_vecs, pvecs.T) + +pids = group_zarr["ids"][:] + +# Create output zarr store +path_outdir = Path("./") +zarr_name = path_zarr.stem + "_results.zarr" +path_output_zarr = path_outdir / zarr_name + +# Create zarr store +store_output = LocalStore(path_output_zarr, read_only=False) +group_output = zarr.open(store_output, mode="w") + +out_compress =[ + ZstdCodec( level=13 ) +] + +# Store the data +# Similarity matrix: (n_proteins, n_compounds) +z1 = group_output.create_array( + "scores", + dtype="float32", + shape=my_results.shape, + chunks=(min(1000, my_results.shape[0]), my_results.shape[1]), + compressors=out_compress +) +z1[:] = my_results + +# Compound IDs +z2 = group_output.create_array( + "compound_ids", + dtype="str", + shape=(len(df_metabolite),), + compressors=out_compress +) +z2[:] = df_metabolite["compound_id"].values + +# Protein IDs +z3 = group_output.create_array( + "protein_ids", + dtype="str", + shape=(len(pids),), + compressors=out_compress +) +z3[:] = pids + +# Store metadata +group_output.attrs['n_proteins'] = my_results.shape[0] +group_output.attrs['n_compounds'] = my_results.shape[1] +group_output.attrs['source_zarr'] = str(path_zarr) + +print(f"Results saved to {path_output_zarr}") +print(f"Shape: {my_results.shape[0]} proteins x {my_results.shape[1]} compounds") +print("PROCESS COMPLETED SUCCESSFULLY") \ No newline at end of file diff --git a/nf_metabol_screen_adaptive/docker-compose.yml b/nf_metabol_screen_adaptive/docker-compose.yml new file mode 100644 index 0000000..e8080bb --- /dev/null +++ b/nf_metabol_screen_adaptive/docker-compose.yml @@ -0,0 +1,14 @@ +version: '3.8' + +services: + metabolite-screen: + build: + context: . + dockerfile: Dockerfile + image: harbor.cluster.omic.ai/omic/metabolite-screen:adaptive-1.1.1 + command: bash + stdin_open: true + tty: true + volumes: + - /mnt/dreamdock-data/digital_trials/workdir/52/6cdef3797446aec540843481dae1ca:/workdir + - /mnt/dreamdock-data/digital_trials:/mnt/dreamdock-data/digital_trials diff --git a/nf_metabol_screen_adaptive/execution_timeline.html b/nf_metabol_screen_adaptive/execution_timeline.html new file mode 100644 index 0000000..47bf342 --- /dev/null +++ b/nf_metabol_screen_adaptive/execution_timeline.html @@ -0,0 +1,223 @@ + + + + + + + + + + + + + +
+

Processes execution timeline

+

+ Launch time:
+ Elapsed time:
+ Legend: job wall time / memory usage (RAM) +

+
+
+ + + + + + + diff --git a/nf_metabol_screen_adaptive/execution_trace.txt b/nf_metabol_screen_adaptive/execution_trace.txt new file mode 100644 index 0000000..d5fa949 --- /dev/null +++ b/nf_metabol_screen_adaptive/execution_trace.txt @@ -0,0 +1,2 @@ +task_id hash native_id name status exit submit duration realtime %cpu peak_rss peak_vmem rchar wchar +1 f9/21c381 3902375 METABOLITE_SCREEN FAILED 127 2025-07-21 03:07:11.554 35ms 18ms - - - - - diff --git a/nf_metabol_screen_adaptive/main.nf b/nf_metabol_screen_adaptive/main.nf new file mode 100644 index 0000000..7fe2e87 --- /dev/null +++ b/nf_metabol_screen_adaptive/main.nf @@ -0,0 +1,24 @@ +#!/usr/bin/env nextflow + +process METABOLITE_SCREEN { + + memory '10 GB' + + container "harbor.cluster.omic.ai/omic/metabolite-screen:adaptive" + // containerOptions "--rm --gpus all" + + // errorStrategy 'ignore' + + input: + path input_tsv // TSV file with the smiles + path input_zarr // ZARR DB holding all the protein vectors and their names + + output: + path "*_result.tsv" + + script: + """ + set -e + python /app/screen.py -i ${input_tsv} -z ${input_zarr} + """ +} diff --git a/nf_metabol_screen_adaptive/nextflow.config b/nf_metabol_screen_adaptive/nextflow.config new file mode 100644 index 0000000..c912c79 --- /dev/null +++ b/nf_metabol_screen_adaptive/nextflow.config @@ -0,0 +1,113 @@ +// Nextflow configuration file + +// Execution report +report { + enabled = true + file = "execution_report.html" + overwrite = true} + + +// Resource usage tracking +trace { + enabled = true + file = "execution_trace.txt" + overwrite = true +} + +// Error reporting +timeline { + enabled = true + file = "execution_timeline.html" + overwrite = true +} + +// // Max resources +// executor { +// $local { +// memory = '80 GB' +// cpus = 2 +// } +// } + +// Default parameters (overridden by test.nf) +params { + // Set defaults here + // input = '/mnt/ZINC-22/conplex/total.zarr' + nshards = 12 + outdir = "$launchDir" +} + +profiles { + k8s { + process.executor = 'k8s' + process.namespace = 'bioinformatics' + process.debug = true + + workDir = "/workdir/work" + + k8s { + serviceAccount = 'nextflow-sa' + namespace = 'bioinformatics' + storageClaimName = 'conplex-data' + storageMountPath = '/workdir' + + pullPolicy = 'IfNotPresent' + cleanup = true // delete pods after Ctrl+C or finished? + + + // RUN AS DIFFERENT USERS + // securityContext = [fsGroup: 1000] + // securityContext = [ + // runAsUser: 1000, + // fsGroup: 1000, + // runAsNonRoot: true + // ] + } + + // Use container image + // process.container = 'harbor.cluster.omic.ai/omic/faiss-indexer:latest' + + // Pod-level customization + process.pod = [ + [env: 'NXF_DEBUG', value: '0'], + [label: 'omic-app', value: 'conplex'], + [imagePullSecret: 'gitlab-registry-secret'], + [volumeClaim: 'fingerprint-data', mountPath: '/fingerprint-data'] + //[nodeSelector: [gpu: 'yes', 'kubernetes.io/hostname': 'k8s-node25']], + // [privileged: true], + ] + + // process { + // withName: 'trainIndex' { + // container = 'harbor.cluster.omic.ai/omic/conplex-faiss-train:latest' + // accelerator = 1 + // memory = '75 GB' + // cpus = 1 + + // // GPU-specific pod settings + // pod = [ + // [nodeSelector: [gpu: 'yes']] + // ] + // } + + // // Specific settings for addToIndex process (CPU only) + // withName: 'addToIndex' { + // container = 'harbor.cluster.omic.ai/omic/conplex-faiss-add:latest' + // memory = '75 GB' + // cpus = 1 + + // // Explicitly ensure no GPU requirements + // // No accelerator property set, and no GPU nodeSelector + // } + // } + } + + docker { + // Docker/Singularity configuration + docker { + enabled = true + runOptions = '--rm' + } + } +} + diff --git a/nf_metabol_screen_adaptive/test.nf b/nf_metabol_screen_adaptive/test.nf new file mode 100644 index 0000000..82e2d23 --- /dev/null +++ b/nf_metabol_screen_adaptive/test.nf @@ -0,0 +1,17 @@ +#!/usr/bin/env nextflow + +// params.input_tsv = '../sample/in-molecule/test_known_drugs.tsv' //metabolites.tsv' +params.input_tsv = '../sample/in-molecule/metabolites-rev.tsv' //metabolites.tsv' +params.input_zarr = '../data/protein_seq.zarr' //mane_all.zarr' + +// Include the buildFaissIndex workflow from main.nf +include { METABOLITE_SCREEN } from './main.nf' + +workflow { + + input_tsv = file(params.input_tsv) + input_zarr = file(params.input_zarr) + + // Call the combined workflow with both inputs + protein_scores = METABOLITE_SCREEN(input_tsv, input_zarr) +} diff --git a/params.json b/params.json new file mode 100644 index 0000000..49b74cc --- /dev/null +++ b/params.json @@ -0,0 +1,192 @@ +{ + "params": { + "// GENERAL PARAMETERS": {}, + "outdir": { + "type": "folder", + "description": "Output directory for results", + "default": "/mnt/OmicNAS/private/old/gabe/digital_trials", + "required": true, + "pipeline_io": "output", + "var_name": "params.outdir", + "examples": [ + "/mnt/OmicNAS/private/old/gabe/digital_trials", + "/path/to/custom/output" + ], + "pattern": ".*", + "validation": {}, + "notes": "Directory where all pipeline results will be stored" + }, + "project_name": { + "type": "string", + "description": "Project identifier", + "default": "test", + "required": true, + "pipeline_io": "parameter", + "var_name": "params.project_name", + "examples": [ + "test", + "production", + "drug_metabolism_study" + ], + "pattern": ".*", + "validation": {}, + "notes": "Identifier for the digital trials project" + }, + "containerOptions": { + "type": "string", + "description": "Container runtime options", + "default": "--gpus all --rm -v /mnt:/mnt", + "required": false, + "pipeline_io": "parameter", + "var_name": "params.containerOptions", + "examples": [ + "--gpus all --rm -v /mnt:/mnt", + "--rm -v /data:/data" + ], + "pattern": ".*", + "validation": {}, + "notes": "Docker container runtime options for GPU usage and volume mounts" + }, + "// BIOTRANSFORMER PARAMETERS": {}, + "container_biotransformer": { + "type": "string", + "description": "BioTransformer container image", + "default": "biotransformer:latest", + "required": true, + "pipeline_io": "parameter", + "var_name": "params.container_biotransformer", + "examples": [ + "biotransformer:latest", + "biotransformer:v1.0" + ], + "pattern": ".*", + "validation": {}, + "notes": "Docker container image for BioTransformer module" + }, + "ligands": { + "type": "folder", + "description": "Path to input ligands directory", + "default": "/Workspace/next/registry/pipelines/digital_trials/input", + "required": true, + "pipeline_io": "input", + "var_name": "params.ligands", + "examples": [ + "/Workspace/next/registry/pipelines/digital_trials/input", + "/path/to/ligands" + ], + "pattern": ".*", + "validation": {}, + "notes": "Directory containing CSV files with ligand data for metabolic transformation" + }, + "mode": { + "type": "string", + "description": "BioTransformer operation mode", + "default": "HUMAN", + "required": true, + "pipeline_io": "parameter", + "var_name": "params.mode", + "examples": [ + "HUMAN", + "SUPER", + "MASS", + "ORDERED" + ], + "pattern": "^(HUMAN|SUPER|MASS|ORDERED)$", + "enum": [ + "HUMAN", + "SUPER", + "MASS", + "ORDERED" + ], + "validation": {}, + "notes": "IMPORTANT: Use HUMAN mode as it's the only fully implemented option that returns expected metabolism to the last step" + }, + "// CONPLEX PARAMETERS": {}, + "container_conplex": { + "type": "string", + "description": "CONPLEX container image", + "default": "conplex_dig_pat:latest", + "required": true, + "pipeline_io": "parameter", + "var_name": "params.container_conplex", + "examples": [ + "conplex_dig_pat:latest", + "conplex_dig_pat:v1.0" + ], + "pattern": ".*", + "validation": {}, + "notes": "Docker container image for CONPLEX module" + }, + "mutated_protein_fasta": { + "type": "folder", + "description": "Path to mutated protein FASTA files directory", + "default": "/Workspace/next/registry/pipelines/digital_trials/input", + "required": true, + "pipeline_io": "input", + "var_name": "params.mutated_protein_fasta", + "examples": [ + "/Workspace/next/registry/pipelines/digital_trials/input", + "/path/to/protein/fasta/files" + ], + "pattern": ".*", + "validation": {}, + "notes": "Directory containing FASTA files with mutated protein sequences" + }, + "threshold": { + "type": "number", + "description": "Binding affinity threshold for interactions", + "default": 0.7, + "required": false, + "pipeline_io": "parameter", + "var_name": "params.threshold", + "examples": [ + 0.5, + 0.7, + 0.9 + ], + "pattern": "^\\d+(\\.\\d+)?$", + "validation": { + "min": 0.0, + "max": 1.0 + }, + "notes": "Threshold value for determining significant binding interactions" + }, + "screening_batch_size": { + "type": "integer", + "description": "Batch size for virtual screening", + "default": 100000, + "required": false, + "pipeline_io": "parameter", + "var_name": "params.screening_batch_size", + "examples": [ + 10000, + 100000, + 1000000 + ], + "pattern": "^\\d+$", + "validation": { + "min": 1 + }, + "notes": "Batch size for virtual screening (100k is ideal to optimize performance)" + }, + "protein_network_threshold": { + "type": "number", + "description": "Threshold for protein network analysis", + "default": 0.95, + "required": false, + "pipeline_io": "parameter", + "var_name": "params.protein_network_threshold", + "examples": [ + 0.9, + 0.95, + 0.99 + ], + "pattern": "^\\d+(\\.\\d+)?$", + "validation": { + "min": 0.0, + "max": 1.0 + }, + "notes": "Threshold value for protein-protein interaction network construction" + } + } +} diff --git a/params/input_knowen_target.json b/params/input_knowen_target.json new file mode 100644 index 0000000..6b8bf89 --- /dev/null +++ b/params/input_knowen_target.json @@ -0,0 +1,19 @@ +{ + "container_biotransformer": "harbor.cluster.omic.ai/omic/digitaltrials/biotransformer@sha256:fb8bdc0b65376bc154b6051ae07079dd9a0e25c3f4c02de73c502002a94d69d5", + "container_conplex": "harbor.cluster.omic.ai/omic/digitaltrials/conplex_dig_pat@sha256:7a3523dba6fa01e3adc9cb79af5e1dcbd2a19d9f92e37cd10df462766078ede3", + "container_tissue": "harbor.cluster.omic.ai/omic/digitaltrials/tissue:1.0.2", + "container_preprocess": "harbor.cluster.omic.ai/omic/metabolite-screen@sha256:872c395e21abd4afea4185b269a8218da4737bd7adbb2cbe2bdf9a1b9c70db17", + "container_mass_screen": "harbor.cluster.omic.ai/omic/metabolite-screen:adaptive-1.1.1", + "container_chembl": "harbor.cluster.omic.ai/omic/digitaltrials/chembl:1.0.0", + "containerOptions": "--rm", + "project_name": "test2", + "mode": "HUMAN", + "keep_enst": false, + "threshold": 0.65, + "protein_network_threshold": 0.65, + "outdir": "/mnt/dreamdock-data/digital_trials/output/test2", + "ligands": "/mnt/dreamdock-data/digital_trials/input/input_knowen_target", + "mutated_protein_fasta": "/mnt/dreamdock-data/digital_trials/input/blank", + "protein_zarr": "/mnt/dreamdock-data/digital_trials/zarr/protein_seq.zarr", + "chembl_db": "/mnt/dreamdock-data/digital_trials/chembl/chembl_36.db" +} diff --git a/params/input_to_run.json b/params/input_to_run.json new file mode 100644 index 0000000..0efb3e0 --- /dev/null +++ b/params/input_to_run.json @@ -0,0 +1,19 @@ +{ + "container_biotransformer": "harbor.cluster.omic.ai/omic/digitaltrials/biotransformer@sha256:fb8bdc0b65376bc154b6051ae07079dd9a0e25c3f4c02de73c502002a94d69d5", + "container_conplex": "harbor.cluster.omic.ai/omic/digitaltrials/conplex_dig_pat@sha256:7a3523dba6fa01e3adc9cb79af5e1dcbd2a19d9f92e37cd10df462766078ede3", + "container_tissue": "harbor.cluster.omic.ai/omic/digitaltrials/tissue:1.0.2", + "container_preprocess": "harbor.cluster.omic.ai/omic/metabolite-screen@sha256:872c395e21abd4afea4185b269a8218da4737bd7adbb2cbe2bdf9a1b9c70db17", + "container_mass_screen": "harbor.cluster.omic.ai/omic/metabolite-screen@sha256:89fe2221ff6c1e67d20294944f97418f2665d95b9fb873eba9e1fcf3dc6d1ea7", + "container_chembl": "harbor.cluster.omic.ai/omic/digitaltrials/chembl:1.0.0", + "containerOptions": "--rm", + "mode": "HUMAN", + "keep_enst": false, + "threshold": 0.65, + "protein_network_threshold": 0.65, + "project_name": "input_to_run", + "outdir": "/mnt/dreamdock-data/digital_trials/output", + "ligands": "/mnt/dreamdock-data/digital_trials/input/input_to_run", + "mutated_protein_fasta": "/mnt/dreamdock-data/digital_trials/input/blank", + "protein_zarr": "/mnt/dreamdock-data/digital_trials/zarr/protein_seq.zarr", + "chembl_db": "/mnt/dreamdock-data/digital_trials/chembl/chembl_36.db" +} diff --git a/test.nf.bk b/test.nf.bk new file mode 100755 index 0000000..456f794 --- /dev/null +++ b/test.nf.bk @@ -0,0 +1,61 @@ +nextflow.enable.dsl=2 + +//BIOTRANSFORMER +params.container_biotransformer = 'biotransformer:latest' +params.containerOptions = '--gpus all --rm -v /mnt:/mnt' +params.outdir = '/mnt/OmicNAS/private/old/gabe/digital_trials' +params.project_name = 'test' +params.ligands = '/Workspace/next/registry/pipelines/digital_trials/input' + +//IMPOTRANT!!! use HUMAN. Only one that returns what is expected. metabolism to the last step. It's only one properly set up +params.mode = 'HUMAN' // Options: SUPER, HUMAN, MASS, ORDERED # only HUMAN is fully implemented + +//CONPLEX +params.container_conplex = 'conplex_dig_pat:latest' +params.mutated_protein_fasta = '/Workspace/next/registry/pipelines/digital_trials/input' +params.threshold = 0.8 //0.5 //0.7 +params.screening_batch_size =100000 //100k is ideal to optimize performance with virtual screening +params.protein_network_threshold = 0.95 + +//TISSUE DISTRIBUTION +params.container_tissue = 'tissue:latest' + +//BIOTRANSFORMER +include { SUPER_TRANSFORMER } from './main_biotransformer.nf' +include { HUMAN_TRANSFORMER } from './main_biotransformer.nf' +include { METABOLITES_BY_MASS } from './main_biotransformer.nf' +include { ORDERED_SEQUENCE } from './main_biotransformer.nf' +include { GET_FINAL_METABOLITES } from './main_biotransformer.nf' +//CONPLEX +include { CONPLEX } from './main_conplex.nf' +include { NETWORK_ENRICHMENT } from './main_conplex.nf' +//TISSUE_DISTRIBUTION +include { TISSUE_DISTRIBUTION } from './main_tissue.nf' + +workflow { + //BIOTRANSFORMER + lig_ch = Channel.fromPath("${params.ligands}/*.csv") + switch (params.mode) { + case 'SUPER': + SUPER_TRANSFORMER(lig_ch) + break + case 'HUMAN': + HUMAN_TRANSFORMER(lig_ch) + break + case 'MASS': + METABOLITES_BY_MASS(lig_ch) + break + case 'ORDERED': + ORDERED_SEQUENCE(lig_ch) + break + default: + println("Invalid mode specified: ${params.mode}") + } + GET_FINAL_METABOLITES(HUMAN_TRANSFORMER.out) + //CONPLEX + pat_fasta = Channel.fromPath("${params.mutated_protein_fasta}/*.fasta") + CONPLEX(lig_ch, GET_FINAL_METABOLITES.out, pat_fasta) + NETWORK_ENRICHMENT(CONPLEX.out.interactions) + //TISSUE DISTRIBUTION + TISSUE_DISTRIBUTION(CONPLEX.out.interactions) +} diff --git a/test.nf.save b/test.nf.save new file mode 100755 index 0000000..a7a05ff --- /dev/null +++ b/test.nf.save @@ -0,0 +1,49 @@ +nextflow.enable.dsl=2 + +//BIOTRANSFORMER +params.container_biotransformer = 'biotransformer:latest' +params.containerOptions = '--gpus all --rm -v /mnt:/mnt' +params.outdir = '/mnt/OmicNAS/private/old/gabe/digital_trials' +params.project_name = 'test' +params.ligands = '/Workspace/next/registry/pipelines/digital_trials/input' + +//IMPOTRANT!!! use HUMAN. Only one that returns what is expected. metabolism to the last step. It's only one properly set up +params.mode = 'HUMAN' // Options: SUPER, HUMAN, MASS, ORDERED # only HUMAN is fully implemented + +//CONPLEX +params.container_conplex= 'conplex_dig_pat' +params.mutated_protein_fasta = '/Workspace/next/registry/pipelines/digital_trials/input/*.fasta' +params.threshold = 0.2 //0.75 +params.screening_batch_size =100000 //100k is ideal to optimize performance with virtual screening + +//BIOTRANSFORMER +include { SUPER_TRANSFORMER } from './main_biotransformer.nf' +include { HUMAN_TRANSFORMER } from './main_biotransformer.nf' +include { METABOLITES_BY_MASS } from './main_biotransformer.nf' +include { ORDERED_SEQUENCE } from './main_biotransformer.nf' +include { GET_FINAL_METABOLITES } from './main_biotransformer.nf' +//CONPLEX +include { CONPLEX } from './main_conplex.nf' + +workflow { + //BIOTRANSFORMER + lig_ch = Channel.fromPath("${params.ligands}/*.csv") + switch (params.mode) { + case 'SUPER': + SUPER_TRANSFORMER(lig_ch) + break + case 'HUMAN': + HUMAN_TRANSFORMER(lig_ch) + break + case 'MASS': + METABOLITES_BY_MASS(lig_ch) + break + case 'ORDERED': + ORDERED_SEQUENCE(lig_ch) + break + default: + println("Invalid mode specified: ${params.mode}") + } + GET_FINAL_METABOLITES(HUMAN_TRANSFORMER.out) + //CONPLEX +} diff --git a/test_bio_metrics_only.nf b/test_bio_metrics_only.nf new file mode 100644 index 0000000..b5f924e --- /dev/null +++ b/test_bio_metrics_only.nf @@ -0,0 +1,33 @@ +nextflow.enable.dsl=2 + +// Default parameters (override via -params-file). Listed here to document every +// parameter this workflow needs. Values copied from a representative job +// (R06-ivan-gabe-bioprops-rerun/J17-bioprops/params.json). +params.container_biotransformer = "harbor.cluster.omic.ai/omic/digitaltrials/biotransformer@sha256:fb8bdc0b65376bc154b6051ae07079dd9a0e25c3f4c02de73c502002a94d69d5" +params.container_conplex = "harbor.cluster.omic.ai/omic/digitaltrials/conplex_dig_pat@sha256:7a3523dba6fa01e3adc9cb79af5e1dcbd2a19d9f92e37cd10df462766078ede3" +params.container_tissue = "harbor.cluster.omic.ai/omic/digitaltrials/tissue:1.1.0" +params.container_preprocess = "harbor.cluster.omic.ai/omic/metabolite-screen@sha256:872c395e21abd4afea4185b269a8218da4737bd7adbb2cbe2bdf9a1b9c70db17" +params.container_mass_screen = "harbor.cluster.omic.ai/omic/metabolite-screen:adaptive-1.1.1" +params.container_chembl = "harbor.cluster.omic.ai/omic/digitaltrials/chembl:1.0.0" +params.containerOptions = "--rm" +params.project_name = "bioprops-gabe-run-drug-target" +params.outdir = "/mnt/dreamdock-data/digital_trials/runs/R06-ivan-gabe-bioprops-rerun/J17-bioprops/output" +params.ligands = "/mnt/dreamdock-data/digital_trials/input/gabe-run/input/ligand-drug-target" +params.metabolites = "/mnt/dreamdock-data/digital_trials/input/gabe-run/output/drug-target/screening" +params.conplex_dir = "/mnt/dreamdock-data/digital_trials/input/gabe-run/output/drug-target/conplex" + +include { BIO_METRICS } from './main_tissue.nf' + +workflow { + lig_ch = Channel.fromPath("${params.ligands}/*.csv") + .map { [it.simpleName, it] } + met_ch = Channel.fromPath("${params.metabolites}/*_out.txt") + .map { f -> [f.simpleName.replaceAll(/_out$/, ''), f] } + drug_ch = Channel.fromPath("${params.conplex_dir}/*_patient_0_drug_scores.tsv") + .map { f -> [f.simpleName.replaceAll(/_patient_0_drug_scores$/, ''), f] } + int_ch = Channel.fromPath("${params.conplex_dir}/*_patient_0_significant_interactions.tsv") + .map { f -> [f.simpleName.replaceAll(/_patient_0_significant_interactions$/, ''), f] } + + biometric_ch = lig_ch.join(met_ch).join(drug_ch).join(int_ch) + BIO_METRICS(biometric_ch) +} diff --git a/test_no_bt.nf b/test_no_bt.nf new file mode 100644 index 0000000..e506d4b --- /dev/null +++ b/test_no_bt.nf @@ -0,0 +1,93 @@ +nextflow.enable.dsl=2 + +// Digital-trials pipeline WITHOUT biotransformer. +// Metabolites are supplied externally (e.g. the consolidated final-metabolites +// dir from prior gabe runs). Otherwise identical to test.nf. +// +// New required param vs test.nf: +// params.metabolites - dir of `_out.txt` files matching ligand `.csv` +// Dropped (no biotransformer/chembl): +// container_biotransformer, container_chembl, bt_* knobs, chembl_db, mode + +params.container_conplex = 'harbor.cluster.omic.ai/omic/digitaltrials/conplex_dig_pat@sha256:7a3523dba6fa01e3adc9cb79af5e1dcbd2a19d9f92e37cd10df462766078ede3' +params.container_tissue = 'harbor.cluster.omic.ai/omic/digitaltrials/tissue:1.0.6' +params.container_preprocess = 'harbor.cluster.omic.ai/omic/metabolite-screen@sha256:872c395e21abd4afea4185b269a8218da4737bd7adbb2cbe2bdf9a1b9c70db17' +params.container_mass_screen = 'harbor.cluster.omic.ai/omic/metabolite-screen:adaptive-1.1.1' + +params.containerOptions = '--rm' + +params.project_name = 'test_no_bt' + +//CONPLEX +params.keep_enst = 'false' +params.conplex_initial_memory = 5 +params.conplex_growth_memory = 15 +params.conplex_max_retries = 1 +params.conplex_fail_action = 'ignore' +params.threshold = 0.65 +params.protein_network_threshold = 0.65 + +// NETWORK_ENRICHMENT (string-db) +params.string_max_forks = 5 +params.string_max_retries = 1 +params.string_fail_action = 'ignore' +params.string_initial_memory = 1 +params.string_growth_memory = 2 + +// TISSUE_DISTRIBUTION + BIO_METRICS +params.tissue_initial_memory = 5 +params.tissue_growth_memory = 5 +params.tissue_max_retries = 2 +params.tissue_fail_action = 'ignore' + +params.bio_initial_memory = 5 +params.bio_growth_memory = 5 +params.bio_max_retries = 2 +params.bio_fail_action = 'ignore' + +// ========================================= FILEPATHS =================================================== +params.outdir = '/mnt/omic-next-apis/wes/digital_trials/' +params.ligands = '/mnt/dreamdock-data/digital_trials/input/test_multitaget' +params.metabolites = '/mnt/dreamdock-data/digital_trials/input/test_metabolites' +params.mutated_protein_fasta = '/mnt/dreamdock-data/digital_trials/input/blank' +params.protein_zarr = '/mnt/dreamdock-data/digital_trials/zarr/protein_seq.zarr' +// ===================================================================================================================================== + +include { CONPLEX as CONPLEX_ALL } from './main_conplex.nf' +include { PREPROCESS_PROTEIN } from './main_conplex.nf' +include { NETWORK_ENRICHMENT } from './main_conplex.nf' +include { TISSUE_DISTRIBUTION } from './main_tissue.nf' +include { BIO_METRICS } from './main_tissue.nf' + +workflow { + lig_ch = Channel.fromPath("${params.ligands}/*.csv") + metabolite_ch = Channel.fromPath("${params.metabolites}/*_out.txt") + + protein_fasta = Channel + .fromPath("${params.mutated_protein_fasta}/*.fasta") + .collect() + protein_zarr = PREPROCESS_PROTEIN(protein_fasta).collect().map { it[0] } + pre_protein_zarr = Channel.fromPath(params.protein_zarr) + merged_zarr = protein_zarr.concat(pre_protein_zarr).collect() + + lig_with_id = lig_ch.map { csv -> + [csv.simpleName, csv] + } + + metabolite_with_id = metabolite_ch.map { txt -> + def name = txt.simpleName.replaceAll(/_out$/, '') + [name, txt] + } + + matched_ch = lig_with_id.join(metabolite_with_id) + + CONPLEX_ALL(matched_ch, merged_zarr) + + conplex_interactions_ch = CONPLEX_ALL.out.map { id, drug, interactions -> interactions } + + NETWORK_ENRICHMENT(conplex_interactions_ch) + TISSUE_DISTRIBUTION(conplex_interactions_ch) + + biometric_ch = matched_ch.join(CONPLEX_ALL.out) + BIO_METRICS(biometric_ch) +} diff --git a/test_string_only.nf b/test_string_only.nf new file mode 100644 index 0000000..baea617 --- /dev/null +++ b/test_string_only.nf @@ -0,0 +1,27 @@ +nextflow.enable.dsl=2 + +// STRING-only re-run workflow +// Feeds existing ConPLex significant_interactions files into NETWORK_ENRICHMENT +// +// Required params: +// interactions - directory containing *_significant_interactions.tsv files +// interaction_ids - comma-separated InChIKey prefixes to select (e.g. "PWKSKIMOESPYIA_SCSAIBSYSA_N,ZETLRLRYANUSAI_SCSAIBSYSA_N") +// if empty/not set, all files in the directory are used + +params.protein_network_threshold = 0.65 + +include { NETWORK_ENRICHMENT } from './main_conplex.nf' + +workflow { + if (params.interaction_ids) { + // Build a channel from the explicit list of IDs + ids = params.interaction_ids.tokenize(',') + interactions_ch = Channel + .fromList(ids) + .map { id -> file("${params.interactions}/${id}_patient_0_significant_interactions.tsv") } + } else { + interactions_ch = Channel.fromPath("${params.interactions}/*_significant_interactions.tsv") + } + + NETWORK_ENRICHMENT(interactions_ch) +}