执行drop partition语句后,目前OB在DDL流程中仅会修改schema和更新相关内部表信息,然后就返回客户端删除成功了。
想请教下大佬们:
- 底层的分区数据是什么时候彻底删除的?OB如何找到那些需要删除分区呢?
- 彻底删除分区的整体逻辑大概是怎么样的?
谢谢!!!
执行drop partition语句后,目前OB在DDL流程中仅会修改schema和更新相关内部表信息,然后就返回客户端删除成功了。
想请教下大佬们:
谢谢!!!
请稍等下
老师您好,补充一下源码版本是3.1.4
您说的“存储结构将被删除”,“存储结构”是指schema吗?314源码中我只看到对__all_part/__all_part_history等内部表的更新,最后publish schema的流程,并没有去存储层执行删除分区的操作。
另外源码中是怎么判断到“所有引用失效且资源不被使用” 呢,具体是哪个函数,以及在什么时候呢(合并?负载均衡?)?
存储结构是指OBPGPartition,可以看下上一个回答中有贴的博客,竹翁老师有在里面对分区的整个生命周期进行描述