diff --git a/CAL/CalibrationProcessing/bin/holography_process.py b/CAL/CalibrationProcessing/bin/holography_process.py
index a5bba07ce7a41a578fc2cff5bfa77d1f7d5484a7..688360a4b9482d23146eeef17ce0679f94bc7c41 100644
--- a/CAL/CalibrationProcessing/bin/holography_process.py
+++ b/CAL/CalibrationProcessing/bin/holography_process.py
@@ -136,6 +136,7 @@ def compute_gains_step(dataset, input_datatable, direct_complex=True):
     dataset.derived_data['GAINS'] = output_datable
     return output_datable
 
+
 @log_step_execution('gains interpolation')
 def interpolate_gains_step(dataset, input_datatable):
     """
@@ -152,6 +153,7 @@ def interpolate_gains_step(dataset, input_datatable):
     dataset.derived_data['INTERPOLATED_GAINS'] = output_datable
     return output_datable
 
+
 @log_step_execution('save')
 def store_step(dataset, filepath):
     absolute_filepath = os.path.abspath(filepath)
@@ -166,6 +168,7 @@ def prepare_dataset_for_processing(dataset: datacontainers.HolographyDataset):
     if dataset.derived_data is None:
         dataset.derived_data = dict()
 
+
 def execute_processing(arguments):
     dataset = loading(arguments.input_path)
     prepare_dataset_for_processing(dataset)
diff --git a/CAL/CalibrationProcessing/lib/processing/averaging.py b/CAL/CalibrationProcessing/lib/processing/averaging.py
index 81636c40646ecfffc01830aa049ff2e41b3039e5..cadc8666510b8c79aa3c60488b12f7c834390eb6 100644
--- a/CAL/CalibrationProcessing/lib/processing/averaging.py
+++ b/CAL/CalibrationProcessing/lib/processing/averaging.py
@@ -466,7 +466,6 @@ def weighted_average_dataset_per_station(dataset, input_data_table):
     stations = dataset.reference_stations
 
     frequencies = dataset.frequencies
-    beams = dataset.beamlets
 
     result_ALL = dict()
     result = dict(all=result_ALL)
@@ -474,8 +473,8 @@ def weighted_average_dataset_per_station(dataset, input_data_table):
         result_per_frequency = dict()
         result_ALL[str(frequency)] = result_per_frequency
 
-        for beam in beams:
-            beam_str = str(beam)
+        for beam_str in input_data_table[frequencies]:
+
             result_per_beam = numpy.zeros(1, dtype=HDS_data_sample_type)
 
             average_per_beam_station, std_real_per_beam_station, std_imag_per_beam_station = \
diff --git a/CAL/CalibrationProcessing/lib/processing/solver.py b/CAL/CalibrationProcessing/lib/processing/solver.py
index 9326ba84a3765c79869f2781f448ff6bc17ac182..b08c40f89bdd153ba6396171c1e5fef8fc5bf9c4 100644
--- a/CAL/CalibrationProcessing/lib/processing/solver.py
+++ b/CAL/CalibrationProcessing/lib/processing/solver.py
@@ -223,8 +223,9 @@ def _solve_gains(visibilities, matrix, **kwargs):
 
         return dict(gains=gains.A1, residual=residual, relative_error=noise,
                     flag=numpy.array(False))
-    except numpy.linalg.LinAlgError as e:
-        logger.warning('error solving for the gains: %s', e)
+    except Exception as e:
+        logger.warning('error solving for the gains: %s - %s', e.__class__.__name__, e)
+        logger.exception(e)
         __empty = dict(gains=numpy.array(numpy.nan),
                        residual=numpy.array(numpy.nan),
                        relative_error=numpy.array(numpy.nan),