rocH
#1
【 使用环境 】生产环境
【 OB or 其他组件 】oceanbase
【 使用版本 】4.2.2.0
【问题描述】
准备给表prod_sync_p_tiktok_extra 按照store_acct_id作hash分区
执行sql报错:
ALTER TABLE
prod_sync_p_tiktok_extra
DROP PRIMARY KEY,
ADD PRIMARY KEY (
id
,
store_acct_id
) USING BTREE;
ocp显示数据使用量情况:
表prod_sync_p_tiktok_extra总数据大小:
表prod_sync_p_tiktok_extra存在2个大字段,分别为varchar(5000)和varchar(10000)
秃蛙
#3
这个是有可能的,当前部分算子是不支持临时文件压缩的,修改表类型时数据重分布会先落到临时文件中,当前库里的数据是压缩的,临时文件不压缩可能会膨胀多倍,超出磁盘大小。后续版本会逐渐优化临时文件压缩问题。
当前可以新建个hash表,insert into select方式绕过下。
1 个赞
靖顺
#4
直接2.2.0 版本的obdiag 根因分析
obdiag rca run --scene=ddl_disk_full
渠磊
#5
关于使用可以看下这篇博客:OceanBase 社区
渠磊
#6
obdiag rca run --scene=ddl_disk_full --input_parameters='{"tenant_name":"xxxx","table_name":"xxxx","action_type":"add_index","index_name":"xxxx"}'
xxxx部分自行替换下即可