Component:
pipelines/shared/scripts/get_community_distribution.py
NextFlow: 23.10.1
Description:
Setting verbose = "True" in distribution.config causes the getCommunityDistribution process to hang forever instead of completing. The process produces no output and eventually gets killed after hitting Nextflow's process.time limit.
Root cause:
In get_lists_of_distributions(), the sampling loop only exits when view_distribution is False:
while True:
add_initial_log_distribution(list_population, log_mu, log_sigma)
if modus == 'replicates':
add_replicates(list_population, gauss_mu, gauss_sigma)
...
if not view_distribution:
break
When view_distribution (i.e. verbose) is True, there is no break condition and no plotting/visualization code — the loop re-draws random values indefinitely with no exit and no output.
Steps to reproduce:
Set verbose = "True" in distribution.config.
Run nextflow run main.nf with any genome set and mode="replicates" (or any mode).
getCommunityDistribution runs indefinitely, produces no output, and is eventually killed by process.time.
Expected behavior:
verbose = True should show/plot the sampled distribution and then proceed normally.
Actual behavior:
Process hangs indefinitely with no output until killed by the Nextflow process time limit.
Suggested fix:
Add a break after the (missing) visualization step, or otherwise ensure the loop always terminates regardless of view_distribution's value.
Workaround:
Set verbose = "False" in distribution.config.
Component:
pipelines/shared/scripts/get_community_distribution.pyNextFlow: 23.10.1
Description:
Setting verbose = "True" in distribution.config causes the getCommunityDistribution process to hang forever instead of completing. The process produces no output and eventually gets killed after hitting Nextflow's process.time limit.
Root cause:
In get_lists_of_distributions(), the sampling loop only exits when view_distribution is False:
When view_distribution (i.e. verbose) is True, there is no break condition and no plotting/visualization code — the loop re-draws random values indefinitely with no exit and no output.
Steps to reproduce:
Set verbose = "True" in distribution.config.
Run nextflow run main.nf with any genome set and mode="replicates" (or any mode).
getCommunityDistribution runs indefinitely, produces no output, and is eventually killed by process.time.
Expected behavior:
verbose = True should show/plot the sampled distribution and then proceed normally.
Actual behavior:
Process hangs indefinitely with no output until killed by the Nextflow process time limit.
Suggested fix:
Add a break after the (missing) visualization step, or otherwise ensure the loop always terminates regardless of view_distribution's value.
Workaround:
Set verbose = "False" in distribution.config.