diff --git a/lib/galaxy/tools/parameters/dynamic_options.py b/lib/galaxy/tools/parameters/dynamic_options.py index c93665945d26..0062a2a94aca 100644 --- a/lib/galaxy/tools/parameters/dynamic_options.py +++ b/lib/galaxy/tools/parameters/dynamic_options.py @@ -766,7 +766,14 @@ def get_user_options(self, user: User): hdas = user.get_user_data_tables(self.tool_data_table_name) by_dbkey = {} for hda in hdas: - by_dbkey.update(self.hda_to_table_entries(hda, self.tool_data_table_name)) + try: + table_entries = self.hda_to_table_entries(hda, self.tool_data_table_name) + except Exception as e: + # This is a bug, `hda_to_table_entries` is not generic enough for certain loc file + # structures, such as for the dada2_species, which doesn't have a dbkey column + table_entries = {} + log.warning("Failed to read data table bundle entries: %s", e) + by_dbkey.update(table_entries) for data_table_entry in by_dbkey.values(): field_entry = [] for column_key in self.tool_data_table.columns.keys():