diff --git a/lib/galaxy/webapps/galaxy/api/tool_data.py b/lib/galaxy/webapps/galaxy/api/tool_data.py index b9f051c7413..cb9b1ad03db 100644 --- a/lib/galaxy/webapps/galaxy/api/tool_data.py +++ b/lib/galaxy/webapps/galaxy/api/tool_data.py @@ -5,6 +5,7 @@ from galaxy import web from galaxy.web import _future_expose_api as expose_api from galaxy.web import _future_expose_api_raw as expose_api_raw from galaxy.web.base.controller import BaseAPIController +import galaxy.queue_worker class ToolData( BaseAPIController ): @@ -36,7 +37,11 @@ class ToolData( BaseAPIController ): """ decoded_tool_data_id = id data_table = trans.app.tool_data_tables.data_tables.get(decoded_tool_data_id) - return data_table.reload_from_files() + data_table.reload_from_files() + galaxy.queue_worker.send_control_task( trans, 'reload_tool_data_tables', + noop_self=True, + kwargs={'table_name': decoded_tool_data_id} ) + return self._data_table( decoded_tool_data_id ).to_dict( view='element' ) @web.require_admin @@ -78,7 +83,11 @@ class ToolData( BaseAPIController ): trans.response.status = 400 return "Invalid data table item ( %s ) specified. Wrong number of columns (%s given, %s required)." % ( str( values ), str(len(split_values)), str(len(data_table.get_column_name_list()))) - return data_table.remove_entry(split_values) + data_table.remove_entry(split_values) + galaxy.queue_worker.send_control_task( trans, 'reload_tool_data_tables', + noop_self=True, + kwargs={'table_name': decoded_tool_data_id} ) + return self._data_table( decoded_tool_data_id ).to_dict( view='element' ) @web.require_admin @expose_api