fix: SQLAlchemy coercing subquery warning on RLS (#21257)

This commit is contained in:
Daniel Vaz Gaspar 2022-08-31 08:16:57 +01:00 committed by GitHub
parent 034ee1c3c1
commit 6223042050
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

View File

@ -1467,7 +1467,6 @@ class SupersetSecurityManager( # pylint: disable=too-many-public-methods
RowLevelSecurityFilter.filter_type == RowLevelSecurityFilterType.REGULAR RowLevelSecurityFilter.filter_type == RowLevelSecurityFilterType.REGULAR
) )
.filter(RLSFilterRoles.c.role_id.in_(user_roles)) .filter(RLSFilterRoles.c.role_id.in_(user_roles))
.subquery()
) )
base_filter_roles = ( base_filter_roles = (
self.get_session() self.get_session()
@ -1477,13 +1476,11 @@ class SupersetSecurityManager( # pylint: disable=too-many-public-methods
RowLevelSecurityFilter.filter_type == RowLevelSecurityFilterType.BASE RowLevelSecurityFilter.filter_type == RowLevelSecurityFilterType.BASE
) )
.filter(RLSFilterRoles.c.role_id.in_(user_roles)) .filter(RLSFilterRoles.c.role_id.in_(user_roles))
.subquery()
) )
filter_tables = ( filter_tables = (
self.get_session() self.get_session()
.query(RLSFilterTables.c.rls_filter_id) .query(RLSFilterTables.c.rls_filter_id)
.filter(RLSFilterTables.c.table_id == table.id) .filter(RLSFilterTables.c.table_id == table.id)
.subquery()
) )
query = ( query = (
self.get_session() self.get_session()