fix: make dataset update methods static instead of global (#16044)

This commit is contained in:
Erik Ritter 2021-08-03 08:47:52 -07:00 committed by GitHub
parent 7b15b7690d
commit 7c059cda39
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
2 changed files with 31 additions and 31 deletions

View File

@ -1690,10 +1690,10 @@ class DruidDatasource(Model, BaseDatasource):
latest_metadata = self.latest_metadata() or {}
return [{"name": k, "type": v.get("type")} for k, v in latest_metadata.items()]
def update_datasource(
@staticmethod
def update_datasource(
_mapper: Mapper, _connection: Connection, obj: Union[DruidColumn, DruidMetric]
) -> None:
) -> None:
"""
Forces an update to the datasource's changed_on value when a metric or column on
the datasource is updated. This busts the cache key for all charts that use the
@ -1710,5 +1710,5 @@ def update_datasource(
sa.event.listen(DruidDatasource, "after_insert", security_manager.set_perm)
sa.event.listen(DruidDatasource, "after_update", security_manager.set_perm)
sa.event.listen(DruidMetric, "after_update", update_datasource)
sa.event.listen(DruidColumn, "after_update", update_datasource)
sa.event.listen(DruidMetric, "after_update", DruidDatasource.update_datasource)
sa.event.listen(DruidColumn, "after_update", DruidDatasource.update_datasource)

View File

@ -1653,10 +1653,10 @@ class SqlaTable( # pylint: disable=too-many-public-methods,too-many-instance-at
):
raise Exception(get_dataset_exist_error_msg(target.full_name))
def update_table(
@staticmethod
def update_table(
_mapper: Mapper, _connection: Connection, obj: Union[SqlMetric, TableColumn]
) -> None:
) -> None:
"""
Forces an update to the table's changed_on value when a metric or column on the
table is updated. This busts the cache key for all charts that use the table.
@ -1671,8 +1671,8 @@ def update_table(
sa.event.listen(SqlaTable, "after_insert", security_manager.set_perm)
sa.event.listen(SqlaTable, "after_update", security_manager.set_perm)
sa.event.listen(SqlaTable, "before_update", SqlaTable.before_update)
sa.event.listen(SqlMetric, "after_update", update_table)
sa.event.listen(TableColumn, "after_update", update_table)
sa.event.listen(SqlMetric, "after_update", SqlaTable.update_table)
sa.event.listen(TableColumn, "after_update", SqlaTable.update_table)
RLSFilterRoles = Table(
"rls_filter_roles",