You are viewing a plain text version of this content. The canonical link for it is here.
Posted to notifications@iotdb.apache.org by "刘珍 (Jira)" <ji...@apache.org> on 2022/03/09 05:46:00 UTC
[jira] [Assigned] (IOTDB-2708) [merge recover] The query result contains deleted records
[ https://issues.apache.org/jira/browse/IOTDB-2708?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
刘珍 reassigned IOTDB-2708:
-------------------------
Assignee: Jialin Qiao
> [merge recover] The query result contains deleted records
> ---------------------------------------------------------
>
> Key: IOTDB-2708
> URL: https://issues.apache.org/jira/browse/IOTDB-2708
> Project: Apache IoTDB
> Issue Type: Bug
> Components: Core/Compaction
> Affects Versions: 0.12.5
> Reporter: 刘珍
> Assignee: Jialin Qiao
> Priority: Major
> Attachments: image-2022-03-09-13-43-54-412.png, q.sh, select.sh
>
>
> iotdb版本:0.12.5 rc1
> 问题描述:
> merge_thread_num=3
> 合并过程中,执行delete,kill iotdb。
> 启动iotdb,执行查询,部分设备可以查询到已经delete的数据。
> 测试流程:
> 1. 0.12.5 pre4 关合并,生成数据,存放在192.168.10.68的/data/liuzhen_test/1205_pre4/data_bk_close-comp
> 2.copy 步骤1中的备份,到/data/liuzhen_test/1205_rc1
> 执行恢复。
> 2022-03-09 10:52:17,714 [main] INFO o.a.i.db.service.IoTDB:153 - Congratulation, IoTDB is set up successfully. Now, enjoy yourself!
> 2022-03-09 11:16:08,221 执行delete_when_comp.sh(每个设备delete2条记录,100个设备串行执行):
> #!/bin/bash
> base_db_dir="/data/liuzhen_test/1205_rc1"
> out_dev="dev_name.txt"
> function expDevNameToFile()
> {
> ${base_db_dir}/sbin/start-cli.sh -e "set max_display_num=0 ;show devices;"|grep root|awk -F '|' '{print $2}'>${out_dev}
> }
> expDevNameToFile
> # delete 2 row 1 of seq ,1 of unseq
> function del2rows()
> {
> while read LINE
> do
> ${base_db_dir}/sbin/start-cli.sh -e " select s_0 from "$LINE" where time=2024-05-24T18:00:05.000+08:00 or time=2034-01-24T18:53:22.000+08:00" >> sel.out
> ${base_db_dir}/sbin/start-cli.sh -e " delete from "$LINE" where time=2034-01-24T18:53:22.000+08:00" >> sel.out
> ${base_db_dir}/sbin/start-cli.sh -e " delete from "$LINE" where time=2024-05-24T18:00:05.000+08:00" >> sel.out
> ${base_db_dir}/sbin/start-cli.sh -e " select s_0 from "$LINE" where time=2024-05-24T18:00:05.000+08:00 or time=2034-01-24T18:53:22.000+08:00" >> sel.out
> echo $LINE
> done < ${out_dev}
> }
> del2rows
> 这个脚本执行完后,killall -u liuzhen
> 备份data,存放在/data/liuzhen_test/1205_rc1/data_del-2rows_stop-merge-3threads_01
> 3. 清操作系统缓存
> sudo -s <<EOF
> echo 3 >/proc/sys/vm/drop_caches
> EOF
> 4.启动iotdb
> 启动成功后,串行执行查询脚本
> select.sh
> 和
> q.sh
> 5.查看查询结果,root.ip5.ip52存储组下的10个设备中已经delete的记录,可以查询到。
> !image-2022-03-09-13-43-54-412.png!
--
This message was sent by Atlassian Jira
(v8.20.1#820001)