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/01/18 02:20:00 UTC

[jira] [Commented] (IOTDB-1478) The whole IoTDB can not read/write if any one sg is not ready

    [ https://issues.apache.org/jira/browse/IOTDB-1478?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17477527#comment-17477527 ] 

刘珍 commented on IOTDB-1478:
---------------------------

通过。
iotdb修改配置参数
 avg_series_point_number_threshold=1000000

测试用例:
set storage group to root.lz1;
set storage group to root.lz2;
CREATE TIMESERIES root.lz1.dev.s_1 WITH DATATYPE=INT32, ENCODING=PLAIN,compression=SNAPPY ;

CREATE TIMESERIES root.lz2.dev.s_1 WITH DATATYPE=INT32, ENCODING=PLAIN,compression=SNAPPY ;
./sbin/start-cli.sh -e "insert into root.lz1.dev(time,s_1)values(1,1),(2,2);  "
./sbin/start-cli.sh -e "insert into root.lz2.dev(time,s_1)values(1,1),(2,2);  "
./sbin/start-cli.sh -e "flush"

benchmark写入数据,运行50%后,kill -u 当前用户

 nohup ./sbin/start-server.sh >/dev/null 2>&1 &
 手动输入上面的启动iotdb命令后,立即执行下面的脚本(预先复制好):

 ./sbin/start-cli.sh -e "insert into root.lz1.dev(time,s_1)values(3,3),(4,4);  "
./sbin/start-cli.sh -e "insert into root.test.g_0.d_9(time,s_1)values(3,3),(4,4); "
sleep 1
./sbin/start-cli.sh -e "insert into root.lz1.dev(time,s_1)values(5,5),(6,6);  "
./sbin/start-cli.sh -e "insert into root.lz2.dev(time,s_1)values(5,5),(6,6); "
./sbin/start-cli.sh -e "insert into root.test.g_0.d_9(time,s_1)values(5,5),(6,6); "
sleep 1
./sbin/start-cli.sh -e "insert into root.lz1.dev(time,s_1)values(7,7),(8,8);  "
./sbin/start-cli.sh -e "insert into root.lz2.dev(time,s_1)values(7,7),(8,8); "
./sbin/start-cli.sh -e "insert into root.test.g_0.d_9(time,s_1)values(7,7),(8,8); "
sleep 1
./sbin/start-cli.sh -e "insert into root.lz1.dev(time,s_1)values(17,17),(18,18);  "
./sbin/start-cli.sh -e "insert into root.lz2.dev(time,s_1)values(17,17),(18,18); "
./sbin/start-cli.sh -e "insert into root.test.g_0.d_9(time,s_1)values(17,17),(18,18); "
sleep 1
./sbin/start-cli.sh -e "insert into root.lz1.dev(time,s_1)values(17,17),(18,18);  "
./sbin/start-cli.sh -e "insert into root.lz2.dev(time,s_1)values(17,17),(18,18); "
./sbin/start-cli.sh -e "insert into root.test.g_0.d_9(time,s_1)values(17,17),(18,18); "

 测试结果见下图。test存储组恢复完成之前,lz1和lz2是可以insert数据的。

!screenshot-1.png! 

> The whole IoTDB can not read/write if any one sg is not ready
> -------------------------------------------------------------
>
>                 Key: IOTDB-1478
>                 URL: https://issues.apache.org/jira/browse/IOTDB-1478
>             Project: Apache IoTDB
>          Issue Type: Bug
>          Components: Core/Engine
>    Affects Versions: master branch, 0.11.4, 0.12.1
>            Reporter: Jialin Qiao
>            Priority: Major
>              Labels: pull-request-available
>             Fix For: 0.13.0
>
>         Attachments: screenshot-1.png
>
>
> When recovering IoTDB, if one storage group is not ready, all read/write requests will be rejected, which is not our respected.
>  
> Each virtual storage group should be independent.
>  
> Please fix this in master branch.



--
This message was sent by Atlassian Jira
(v8.20.1#820001)