Example #1
0
 def run(self):
     self.validate()
     try:
         dataset = DatasetDAO.create(self._properties)
     except CreateFailedError as e:
         logger.exception(e.exception)
         raise DatasetCreateFailedError()
     return dataset
Example #2
0
 def run(self) -> Model:
     self.validate()
     try:
         # Creates SqlaTable (Dataset)
         dataset = DatasetDAO.create(self._properties, commit=False)
         # Updates columns and metrics from the dataset
         dataset.fetch_metadata(commit=False)
         # Add datasource access permission
         security_manager.add_permission_view_menu("datasource_access",
                                                   dataset.get_perm())
         # Add schema access permission if exists
         if dataset.schema:
             security_manager.add_permission_view_menu(
                 "schema_access", dataset.schema_perm)
         db.session.commit()
     except (SQLAlchemyError, DAOCreateFailedError) as ex:
         logger.warning(ex, exc_info=True)
         db.session.rollback()
         raise DatasetCreateFailedError()
     return dataset