fix: dataset update uniqueness (#25756)

This commit is contained in:
Beto Dealmeida
2023-10-25 16:49:32 -04:00
committed by GitHub
parent cee8532733
commit c7f8d11a7e
3 changed files with 92 additions and 2 deletions

View File

@@ -99,11 +99,15 @@ class DatasetDAO(BaseDAO[SqlaTable]):
@staticmethod
def validate_update_uniqueness(
database_id: int, dataset_id: int, name: str
database_id: int,
schema: str | None,
dataset_id: int,
name: str,
) -> bool:
dataset_query = db.session.query(SqlaTable).filter(
SqlaTable.table_name == name,
SqlaTable.database_id == database_id,
SqlaTable.schema == schema,
SqlaTable.id != dataset_id,
)
return not db.session.query(dataset_query.exists()).scalar()