Nested dataset collection queries in Galaxy degrade from ~8ms to 843 seconds
when PostgreSQL's planner chooses hash/merge joins for dataset_collection_element
self-joins. The fix: replace DCE-to-DCE joins with nested ARRAY(subquery) expressions.
| { | |
| "$defs": { | |
| "BatchDataInstance": { | |
| "additionalProperties": false, | |
| "properties": { | |
| "src": { | |
| "enum": [ | |
| "hda", | |
| "ldda", | |
| "hdca" |
When metadata_strategy: directory_celery (or celery_extended) is configured, if the Celery process is interrupted (OOM killed, process restart, etc.) while executing a set_job_metadata task, jobs become permanently stuck in a non-terminal state (running) with no recovery mechanism.
The handler blocks forever on .get() when a worker dies.
| diff --git a/lib/galaxy/model/migrations/alembic/env.py b/lib/galaxy/model/migrations/alembic/env.py | |
| index 98091912b80..c9db41cc84d 100644 | |
| --- a/lib/galaxy/model/migrations/alembic/env.py | |
| +++ b/lib/galaxy/model/migrations/alembic/env.py | |
| @@ -1,7 +1,7 @@ | |
| import logging | |
| import re | |
| +from collections.abc import Callable | |
| from typing import ( | |
| - Callable, |
Galaxy's workflow engine currently defines input forms server-side for data_input steps, requiring server round-trips and complex translation code (step_state_to_tool_state, _parse_state_into_dict). PR #19313 successfully migrated data_collection_input to client-side rendering. This plan extends that pattern to data_input, which is simpler since it manages only three parameters: optional, format, and tag.
| #!/usr/bin/env python3 | |
| """ | |
| Fetch 100 random small (<500MB) SRR/ERR accessions from ENA and write their FTP links to a file. | |
| """ | |
| import csv | |
| import io | |
| import random | |
| import sys | |
| import urllib.request |
| rnaseq_de: | |
| workflow_id: 8cd7bdc8d3cf35cd | |
| workflow_target_type: stored_workflow | |
| request_state: | |
| Sample sheet of sequencing reads: | |
| class: Collection | |
| collection_type: sample_sheet:paired | |
| name: RNA-Seq DE sample sheet | |
| elements: | |
| - class: Collection |
This document outlines the implementation plan for creating a Galaxy file source plugin that uses Aspera ascp for high-speed file downloads. The implementation will be a configured plugin (not stock) with download-only functionality, using a custom fsspec filesystem.
- Plugin Type: Configured plugin only (requires explicit configuration)
- Features: Download-only (no upload or browsing)