|
@@ -240,7 +240,20 @@ class MongodbHandler:
|
|
|
self._database[collection_name].insert_many(data, ordered=ordered)
|
|
|
|
|
|
except Exception as error:
|
|
|
- self._log.log_and_raise_error(('An error occured when trying to insert data into {}, {}. \nError: {}').format(self._database_name, collection_name, error))
|
|
|
+ if len(data) > 1:
|
|
|
+ self._log.warning(('An error occured inserting {} documents into database: {} and collection: {}.').format(len(data.index), self._database_name, collection_name)
|
|
|
+ self._log.warning('This might be because one or more documents are invalid.')
|
|
|
+ self._log.warning('We will try to insert the documents one-by-one and report which are invalid.')
|
|
|
+ self._log.warning('Error: {}').format(error))
|
|
|
+ for row in data:
|
|
|
+ try:
|
|
|
+ self._database[collection_name].insert_one(row)
|
|
|
+ except Exception as error:
|
|
|
+ pprint(row)
|
|
|
+ print(error)
|
|
|
+ break
|
|
|
+ else:
|
|
|
+ self._log.log_and_raise_error(('An error occured when trying to insert data into {}, {}. \nError: {}').format(self._database_name, collection_name, error))
|
|
|
|
|
|
self._log.info(('Data has been inserted into the {} collection').format(collection_name))
|
|
|
|