diff --git a/doc/source/admin/galaxy_options.rst b/doc/source/admin/galaxy_options.rst index cf1b0b04673..a4d1cfd449e 100644 --- a/doc/source/admin/galaxy_options.rst +++ b/doc/source/admin/galaxy_options.rst @@ -630,27 +630,6 @@ :Type: str -~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -``legacy_eager_objectstore_initialization`` -~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - -:Description: - As of 18.09, Galaxy defaults to setting up the object store - configuration for output datasets during the job queue step in job - handlers. This should generally provide for more robust job - submission, more configurability, and a better user experience but - may in some cases slightly slow down the job handler job setup - process. On the off chance that an admin would like to or need to - optimize job handlers at the expense of user experience and web - handling this option will remain for some time by setting this - option to true. This behavior however should be considered - deprecated and this option will likely be removed in future - versions of Galaxy. For more information see - https://github.com/galaxyproject/galaxy/issues/6513. -:Default: ``false`` -:Type: bool - - ~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ``file_sources_config_file`` ~~~~~~~~~~~~~~~~~~~~~~~~~~~~ diff --git a/lib/galaxy/config/config_manage.py b/lib/galaxy/config/config_manage.py index 7491e314ad9..3217a09de0b 100644 --- a/lib/galaxy/config/config_manage.py +++ b/lib/galaxy/config/config_manage.py @@ -316,6 +316,7 @@ OPTION_ACTIONS = { 'communication_server_host': _DeprecatedAndDroppedAction(), 'communication_server_port': _DeprecatedAndDroppedAction(), 'persistent_communication_rooms': _DeprecatedAndDroppedAction(), + 'legacy_eager_objectstore_initialization': _DeprecatedAndDroppedAction(), } diff --git a/lib/galaxy/config/sample/galaxy.yml.sample b/lib/galaxy/config/sample/galaxy.yml.sample index de35bbda802..a984cfeb109 100644 --- a/lib/galaxy/config/sample/galaxy.yml.sample +++ b/lib/galaxy/config/sample/galaxy.yml.sample @@ -412,20 +412,6 @@ galaxy: # option. #watch_tours: 'false' - # As of 18.09, Galaxy defaults to setting up the object store - # configuration for output datasets during the job queue step in job - # handlers. This should generally provide for more robust job - # submission, more configurability, and a better user experience but - # may in some cases slightly slow down the job handler job setup - # process. On the off chance that an admin would like to or need to - # optimize job handlers at the expense of user experience and web - # handling this option will remain for some time by setting this - # option to true. This behavior however should be considered - # deprecated and this option will likely be removed in future versions - # of Galaxy. For more information see - # https://github.com/galaxyproject/galaxy/issues/6513. - #legacy_eager_objectstore_initialization: false - # Configured FileSource plugins. # The value of this option will be resolved with respect to # . diff --git a/lib/galaxy/tools/actions/__init__.py b/lib/galaxy/tools/actions/__init__.py index 577b2254dbb..ce8ad7c229a 100644 --- a/lib/galaxy/tools/actions/__init__.py +++ b/lib/galaxy/tools/actions/__init__.py @@ -12,7 +12,6 @@ from galaxy.jobs.actions.post import ActionBox from galaxy.model import LibraryDatasetDatasetAssociation, WorkflowRequestInputParameter from galaxy.model.dataset_collections.builder import CollectionBuilder from galaxy.model.none_like import NoneDataset -from galaxy.objectstore import ObjectStorePopulator from galaxy.tools.parameters import update_dataset_ids from galaxy.tools.parameters.basic import DataCollectionToolParameter, DataToolParameter, RuntimeValue from galaxy.tools.parameters.wrapped import WrappedParameters @@ -363,7 +362,6 @@ class DefaultToolAction: # datasets first, then create the associations parent_to_child_pairs = [] child_dataset_names = set() - object_store_populator = ObjectStorePopulator(app, trans.user) async_tool = tool.tool_type == 'data_source_async' def handle_output(name, output, hidden=None): @@ -415,11 +413,6 @@ class DefaultToolAction: trans.app.security_agent.set_all_dataset_permissions(data.dataset, output_permissions, new=True, flush=False) data.copy_tags_to(preserved_tags.values()) - if not completed_job and trans.app.config.legacy_eager_objectstore_initialization: - # Must flush before setting object store id currently. - trans.sa_session.flush() - object_store_populator.set_object_store_id(data) - # This may not be neccesary with the new parent/child associations data.designation = name # Copy metadata from one of the inputs if requested. @@ -543,7 +536,6 @@ class DefaultToolAction: job, galaxy_session = self._new_job_for_session(trans, tool, history) self._record_inputs(trans, tool, job, incoming, inp_data, inp_dataset_collections) self._record_outputs(job, out_data, output_collections) - job.object_store_id = object_store_populator.object_store_id if job_params: job.params = dumps(job_params) if completed_job: diff --git a/lib/galaxy/tools/actions/upload_common.py b/lib/galaxy/tools/actions/upload_common.py index 7a6dd302fd1..cfebfc3365a 100644 --- a/lib/galaxy/tools/actions/upload_common.py +++ b/lib/galaxy/tools/actions/upload_common.py @@ -14,7 +14,6 @@ from webob.compat import cgi_FieldStorage from galaxy import datatypes, util from galaxy.exceptions import ( ConfigDoesNotAllowException, - ObjectInvalid, RequestParameterInvalidException, ) from galaxy.model import tags @@ -430,14 +429,6 @@ def create_job(trans, params, tool, json_file_path, outputs, folder=None, histor job.add_output_library_dataset(output_name, dataset) else: job.add_output_dataset(output_name, dataset) - # Create an empty file immediately - if not dataset.dataset.external_filename and trans.app.config.legacy_eager_objectstore_initialization: - dataset.dataset.object_store_id = object_store_id - try: - trans.app.object_store.create(dataset.dataset) - except ObjectInvalid: - raise Exception('Unable to create output dataset: object store is full') - object_store_id = dataset.dataset.object_store_id trans.sa_session.add(output_object) diff --git a/lib/galaxy/webapps/galaxy/config_schema.yml b/lib/galaxy/webapps/galaxy/config_schema.yml index 9ada4169497..52224bcfe02 100644 --- a/lib/galaxy/webapps/galaxy/config_schema.yml +++ b/lib/galaxy/webapps/galaxy/config_schema.yml @@ -471,21 +471,6 @@ mapping: changes are found, modified tours are automatically reloaded. Takes the same values as the 'watch_tools' option. - legacy_eager_objectstore_initialization: - type: bool - default: false - required: false - desc: | - As of 18.09, Galaxy defaults to setting up the object store configuration - for output datasets during the job queue step in job handlers. This should generally - provide for more robust job submission, more configurability, and a better - user experience but may in some cases slightly slow down the job handler job - setup process. On the off chance that an admin would like to or need to optimize job - handlers at the expense of user experience and web handling this option will remain - for some time by setting this option to true. This behavior however should be - considered deprecated and this option will likely be removed in future versions of - Galaxy. For more information see https://github.com/galaxyproject/galaxy/issues/6513. - file_sources_config_file: type: str default: file_sources_conf.yml diff --git a/test/unit/unittest_utils/galaxy_mock.py b/test/unit/unittest_utils/galaxy_mock.py index 0206af17ed1..b0513375184 100644 --- a/test/unit/unittest_utils/galaxy_mock.py +++ b/test/unit/unittest_utils/galaxy_mock.py @@ -164,7 +164,6 @@ class MockAppConfig(Bunch): self.shed_tool_config_file_set = False self.preserve_python_environment = "always" self.enable_beta_gdpr = False - self.legacy_eager_objectstore_initialization = True self.version_major = "19.09"