From b374de60f39583e3bac6d1b94483aa80e612e4d9 Mon Sep 17 00:00:00 2001 From: Juan Felipe Florez Ospina Date: Thu, 6 Feb 2025 16:07:45 +0100 Subject: [PATCH] Add try except block to trigger errors for invalid group names. --- src/hdf5_writer.py | 27 ++++++++++++++++----------- 1 file changed, 16 insertions(+), 11 deletions(-) diff --git a/src/hdf5_writer.py b/src/hdf5_writer.py index 739562e..a990b22 100644 --- a/src/hdf5_writer.py +++ b/src/hdf5_writer.py @@ -191,18 +191,23 @@ def create_hdf5_file_from_filesystem_path(path_to_input_directory: str, offset = 1 tmp_list = group_name.split('/') if len(tmp_list) > offset+1: - group_name = '/'.join([tmp_list[i] for i in range(offset+1)]) + group_name = '/'.join([tmp_list[i] for i in range(offset+1)]) - # Create group called "group_name". Hierarchy of nested groups can be implicitly defined by the forward slashes - if not group_name in h5file.keys(): - h5file.create_group(group_name) - h5file[group_name].attrs['creation_date'] = utils.created_at().encode('utf-8') - #h5file[group_name].attrs.create(name='filtered_file_list',data=convert_string_to_bytes(filtered_filename_list)) - #h5file[group_name].attrs.create(name='file_list',data=convert_string_to_bytes(filenames_list)) - #else: - #print(group_name,' was already created.') - instFoldermsgStart = f'Starting data transfer from instFolder: {group_name}' - print(instFoldermsgStart) + try: + # Create group called "group_name". Hierarchy of nested groups can be implicitly defined by the forward slashes + if not group_name in h5file.keys(): + h5file.create_group(group_name) + h5file[group_name].attrs['creation_date'] = utils.created_at().encode('utf-8') + #h5file[group_name].attrs.create(name='filtered_file_list',data=convert_string_to_bytes(filtered_filename_list)) + #h5file[group_name].attrs.create(name='file_list',data=convert_string_to_bytes(filenames_list)) + #else: + #print(group_name,' was already created.') + instFoldermsgStart = f'Starting data transfer from instFolder: {group_name}' + print(instFoldermsgStart) + + except Exception as inst: + stdout = inst + logging.error('Failed to create group %s into HDF5: %s', group_name, inst) for filenumber, filename in enumerate(filtered_filenames_list):