对象所有权改变删除和重新创建表上

使用截断或替换表并改变视图视图而不是删除和重新创建它们。

写的akash.bhat

去年发表在:2022年12月15日

问题

SQL对象的所有权变更后删除和重新创建它们。这会导致工作失败由于权限问题。

导致

在砖LTS 7.3运行时,当工作运行表acl关闭,任何行动,和重新创建表或视图保存表acl是上一次的工作是运行表acl。

在砖运行时9.1 LTS以上这种行为改变。任何行动,一个表或视图清空表ACL的状态。

解决方案

你应该使用截断取代为表和改变观点的观点而不是删除和重新创建它们。

替换一个视图中,您应该视图的所有者或管理员。

删除

信息

如果你想恢复的行为从砖LTS 7.3运行时,您可以添加spark.databricks.acl.enforceTableOwnerAssignmentfalse集群的火花配置

spark.databricks.acl.enforceTableOwnerAssignment介绍了在运行时9.1 LTS砖。

以前,当对象被创建外部表的ACL启用集群ACL系统没有的知识。砖管理员会为新对象和设置所有权权限清理晃来晃去的权限删除对象。

现在,创建的对象以外的砖SQL或表ACL启用集群创建ACL系统表征,根据需要自动分配所有权或删除权限。

这篇文章有用吗?