You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@iotdb.apache.org by Haonan Hou <hh...@qq.com.INVALID> on 2022/09/07 03:49:03 UTC

[VOTE] Apache IoTDB 0.14.0-preview2 RC2 release

Hi all,

Apache IoTDB 0.14.0-preview2 version only contains the new cluster version.

Apache IoTDB 0.14.0-preview2 has been staged under [2] and it’s time to vote
on accepting it for release.  All Maven artifacts are available under [1].
Voting will be open for 72hr.
A minimum of 3 binding +1 votes and more binding +1 than binding -1
are required to pass.

Release tag: v0.14.0-preview2
Hash for the release tag: 17c64784a866f583b59d4e583670233b70f0e291

Before voting +1, PMC members are required to download
the signed source code package, compile it as provided, and test
the resulting executable on their own platform, along with also
verifying that the package meets the requirements of the ASF policy
on releases. [3]

You can achieve the above by following [4].

[ ]  +1 accept (indicate what you validated - e.g. performed the non-RM items in [4])
[ ]  -1 reject (explanation required)


[1] https://repository.apache.org/content/repositories/orgapacheiotdb-1086
[2] https://dist.apache.org/repos/dist/dev/iotdb/0.14.0-preview2/rc2
[3] https://www.apache.org/dev/release.html#approving-a-release
[4] https://cwiki.apache.org/confluence/display/IOTDB/Validating+a+staged+Release

[5] https://dist.apache.org/repos/dist/dev/iotdb/0.14.0-preview2/rc2/RELEASE_NOTES.md

[6] https://dist.apache.org/repos/dist/dev/iotdb/KEYS 

Best,

Haonan Hou
Apache IoTDB PMC

Re: [VOTE] Apache IoTDB 0.14.0-preview2 RC2 release

Posted by Gaofei Cao <ca...@apache.org>.
Hi,

+1 (binding)

The source release:
apache headers [ok]
signatures and hashes [ok]
LICENSE and NOTICE [ok]
no jar files [ok]
could compile from source: ./mvnw.sh clean install

The binary distribution:
version number in CLI [ok]
signatures and hashes [ok]
start in mac M1 pro, jdk11-liberica [ok]
statements executed successfully:  [ok]

SET STORAGE GROUP TO root.sg1;
create aligned timeseries root.sg1.d1(s1 FLOAT encoding=RLE, s2 INT32
encoding=Gorilla compression=SNAPPY, s3 INT64, s4 BOOLEAN, s5 TEXT);
create timeseries root.sg1.d2.s1 WITH DATATYPE=FLOAT, encoding=RLE;
create timeseries root.sg1.d2.s2 WITH DATATYPE=INT32, encoding=Gorilla;
create timeseries root.sg1.d2.s3 WITH DATATYPE=INT64;
create timeseries root.sg1.d2.s4 WITH DATATYPE=BOOLEAN;
create timeseries root.sg1.d2.s5 WITH DATATYPE=TEXT;
insert into root.sg1.d1(time, s1, s2, s3, s4, s5) aligned
values(1,1.0, 1, 1, TRUE, 'aligned_test1');
insert into root.sg1.d1(time, s1, s2, s3, s5) aligned values(2, 2.0,
2, 2, 'aligned_test2');
insert into root.sg1.d1(time, s1, s3, s4, s5) aligned values(3, 3.0,
3, FALSE, 'aligned_test3');
insert into root.sg1.d1(time, s1, s2, s4, s5) aligned values(4, 4.0,
4, TRUE, 'aligned_test4');
insert into root.sg1.d1(time, s1, s2, s4, s5) aligned values(5, 5.0,
5, TRUE, 'aligned_test5');
insert into root.sg1.d1(time, s1, s2, s3, s4) aligned values(6, 6.0,
6, 6, TRUE);
insert into root.sg1.d1(time, s1, s2, s3, s4, s5) aligned values(7,
7.0, 7, 7, FALSE, 'aligned_test7');
insert into root.sg1.d1(time, s1, s2, s3, s5) aligned values(8, 8.0,
8, 8, 'aligned_test8');
insert into root.sg1.d1(time, s1, s2, s3, s4, s5) aligned values(9,
9.0, 9, 9, FALSE, 'aligned_test9');
insert into root.sg1.d1(time, s2, s3, s4, s5) aligned values(10, 10,
10, TRUE, 'aligned_test10');
insert into root.sg1.d2(time, s1, s2, s3, s4, s5) values(1, 1.0, 1, 1,
TRUE, 'non_aligned_test1');
insert into root.sg1.d2(time, s1, s2, s3, s5) values(2, 2.0, 2, 2,
'non_aligned_test2');
insert into root.sg1.d2(time, s1, s3, s4, s5) values(3, 3.0, 3, FALSE,
'non_aligned_test3');
insert into root.sg1.d2(time, s1, s2, s4, s5) values(4, 4.0, 4, TRUE,
'non_aligned_test4');
insert into root.sg1.d2(time, s1, s2, s4, s5) values(5, 5.0, 5, TRUE,
'non_aligned_test5');
insert into root.sg1.d2(time, s1, s2, s3, s4) values(6, 6.0, 6, 6, TRUE);
insert into root.sg1.d2(time, s1, s2, s3, s4, s5) values(7, 7.0, 7, 7,
FALSE, 'non_aligned_test7');
insert into root.sg1.d2(time, s1, s2, s3, s5) values(8, 8.0, 8, 8,
'non_aligned_test8');
insert into root.sg1.d2(time, s1, s2, s3, s4, s5) values(9, 9.0, 9, 9,
FALSE, 'non_aligned_test9');
insert into root.sg1.d2(time, s2, s3, s4, s5) values(10, 10, 10, TRUE,
'non_aligned_test10');
flush;
insert into root.sg1.d1(time, s1, s3, s4, s5) aligned values(3,
30000.0, 30000, TRUE, 'aligned_unseq_test3');
insert into root.sg1.d1(time, s1, s2, s3) aligned values(11, 11.0, 11, 11);
insert into root.sg1.d1(time, s1, s2, s3) aligned values(12, 12.0, 12, 12);
insert into root.sg1.d1(time, s1, s2, s3) aligned values(13, 13.0, 13, 13);
insert into root.sg1.d1(time, s1, s2, s3) aligned values(14, 14.0, 14, 14);
insert into root.sg1.d1(time, s1, s2, s3) aligned values(15, 15.0, 15, 15);
insert into root.sg1.d1(time, s1, s2, s3) aligned values(16, 16.0, 16, 16);
insert into root.sg1.d1(time, s1, s2, s3) aligned values(17, 17.0, 17, 17);
insert into root.sg1.d1(time, s1, s2, s3) aligned values(18, 18.0, 18, 18);
insert into root.sg1.d1(time, s1, s2, s3) aligned values(19, 19.0, 19, 19);
insert into root.sg1.d1(time, s1, s2, s3) aligned values(20, 20.0, 20, 20);
insert into root.sg1.d2(time, s1, s2, s3) values(11, 11.0, 11, 11);
insert into root.sg1.d2(time, s1, s2, s3) values(12, 12.0, 12, 12);
insert into root.sg1.d2(time, s1, s2, s3) values(13, 13.0, 13, 13);
insert into root.sg1.d2(time, s1, s2, s3) values(14, 14.0, 14, 14);
insert into root.sg1.d2(time, s1, s2, s3) values(15, 15.0, 15, 15);
insert into root.sg1.d2(time, s1, s2, s3) values(16, 16.0, 16, 16);
insert into root.sg1.d2(time, s1, s2, s3) values(17, 17.0, 17, 17);
insert into root.sg1.d2(time, s1, s2, s3) values(18, 18.0, 18, 18);
insert into root.sg1.d2(time, s1, s2, s3) values(19, 19.0, 19, 19);
insert into root.sg1.d2(time, s1, s2, s3) values(20, 20.0, 20, 20);
flush;
insert into root.sg1.d1(time, s1, s2, s3, s4, s5) aligned values(13,
130000.0, 130000, 130000, TRUE, 'aligned_unseq_test13');
insert into root.sg1.d1(time, s3, s4) aligned values(21, 21, TRUE);
insert into root.sg1.d1(time, s3, s4) aligned values(22, 22, TRUE);
insert into root.sg1.d1(time, s3, s4) aligned values(23, 23, TRUE);
insert into root.sg1.d1(time, s3, s4) aligned values(24, 24, TRUE);
insert into root.sg1.d1(time, s3, s4) aligned values(25, 25, TRUE);
insert into root.sg1.d1(time, s3, s4) aligned values(26, 26, FALSE);
insert into root.sg1.d1(time, s3, s4) aligned values(27, 27, FALSE);
insert into root.sg1.d1(time, s3, s4) aligned values(28, 28, FALSE);
insert into root.sg1.d1(time, s3, s4) aligned values(29, 29, FALSE);
insert into root.sg1.d1(time, s3, s4) aligned values(30, 30, FALSE);
insert into root.sg1.d2(time, s3, s4) values(21, 21, TRUE);
insert into root.sg1.d2(time, s3, s4) values(22, 22, TRUE);
insert into root.sg1.d2(time, s3, s4) values(23, 23, TRUE);
insert into root.sg1.d2(time, s3, s4) values(24, 24, TRUE);
insert into root.sg1.d2(time, s3, s4) values(25, 25, TRUE);
insert into root.sg1.d2(time, s3, s4) values(26, 26, FALSE);
insert into root.sg1.d2(time, s3, s4) values(27, 27, FALSE);
insert into root.sg1.d2(time, s3, s4) values(28, 28, FALSE);
insert into root.sg1.d2(time, s3, s4) values(29, 29, FALSE);
insert into root.sg1.d2(time, s3, s4) values(30, 30, FALSE);
flush;
insert into root.sg1.d1(time, s1, s3, s4) aligned values(23, 230000.0,
230000, FALSE);
insert into root.sg1.d1(time, s2, s5) aligned values(31, 31, 'aligned_test31');
insert into root.sg1.d1(time, s2, s5) aligned values(32, 32, 'aligned_test32');
insert into root.sg1.d1(time, s2, s5) aligned values(33, 33, 'aligned_test33');
insert into root.sg1.d1(time, s2, s5) aligned values(34, 34, 'aligned_test34');
insert into root.sg1.d1(time, s2, s5) aligned values(35, 35, 'aligned_test35');
insert into root.sg1.d1(time, s2, s5) aligned values(36, 36, 'aligned_test36');
insert into root.sg1.d1(time, s2, s5) aligned values(37, 37, 'aligned_test37');
insert into root.sg1.d1(time, s2, s5) aligned values(38, 38, 'aligned_test38');
insert into root.sg1.d1(time, s2, s5) aligned values(39, 39, 'aligned_test39');
insert into root.sg1.d1(time, s2, s5) aligned values(40, 40, 'aligned_test40');
insert into root.sg1.d2(time, s2, s5) values(31, 31, 'non_aligned_test31');
insert into root.sg1.d2(time, s2, s5) values(32, 32, 'non_aligned_test32');
insert into root.sg1.d2(time, s2, s5) values(33, 33, 'non_aligned_test33');
insert into root.sg1.d2(time, s2, s5) values(34, 34, 'non_aligned_test34');
insert into root.sg1.d2(time, s2, s5) values(35, 35, 'non_aligned_test35');
insert into root.sg1.d2(time, s2, s5) values(36, 36, 'non_aligned_test36');
insert into root.sg1.d2(time, s2, s5) values(37, 37, 'non_aligned_test37');
insert into root.sg1.d2(time, s2, s5) values(38, 38, 'non_aligned_test38');
insert into root.sg1.d2(time, s2, s5) values(39, 39, 'non_aligned_test39');
insert into root.sg1.d2(time, s2, s5) values(40, 40, 'non_aligned_test40');

select ** from root;
select last ** from root.sg1.*;
select ** from root.sg1.d1 where time >= 9 and time <= 33 and s1 < 19
align by device;
select max_value(s3), min_value(s1), max_time(s2), min_time(s3) from
root.sg1.d1 where time > 5 GROUP BY ([1, 41), 10ms) order by time
desc;

Thanks,
—————————————————
Gaofei Cao
Apache IoTDB PMC

Jialin Qiao <qi...@apache.org> 于2022年9月8日周四 17:46写道:
>
> Hi,
>
> +1 (binding)
>
> The source release:
> apache headers [ok]
> signatures and hashes [ok]
> LICENSE and NOTICE [ok]
> no jar files [ok]
> could compile from source: ./mvnw clean install -DskipTests  [ok]
>
>
> The binary distribution:
> version number in CLI [ok]
> signatures and hashes [ok]
> 3C3D start in mac, jdk8 [ok]
> Insert and query statements executed successfully:  [ok]
>
> Thanks,
> —————————————————
> Jialin Qiao
> Apache IoTDB PMC
>
> Yuan Tian <ja...@gmail.com> 于2022年9月8日周四 09:40写道:
> >
> > Hi,
> >
> > +1 (binding)
> >
> > The source release:
> > apache headers [ok]
> > signatures and hashes [ok]
> > LICENSE and NOTICE [ok]
> > no jar files [ok]
> > could compile from source: ./mvnw.sh clean install  [minor issue with
> > a target file not ignored by apache-rat]
> >
> >
> > The binary distribution:
> > version number in CLI [ok]
> > signatures and hashes [ok]
> > start in mac M1 pro, jdk11-liberica [ok]
> > statements executed successfully:  [ok]
> >
> > SET STORAGE GROUP TO root.sg1;
> > create aligned timeseries root.sg1.d1(s1 FLOAT encoding=RLE, s2 INT32
> > encoding=Gorilla compression=SNAPPY, s3 INT64, s4 BOOLEAN, s5 TEXT);
> > create timeseries root.sg1.d2.s1 WITH DATATYPE=FLOAT, encoding=RLE;
> > create timeseries root.sg1.d2.s2 WITH DATATYPE=INT32, encoding=Gorilla;
> > create timeseries root.sg1.d2.s3 WITH DATATYPE=INT64;
> > create timeseries root.sg1.d2.s4 WITH DATATYPE=BOOLEAN;
> > create timeseries root.sg1.d2.s5 WITH DATATYPE=TEXT;
> > insert into root.sg1.d1(time, s1, s2, s3, s4, s5) aligned values(1,
> > 1.0, 1, 1, TRUE, 'aligned_test1');
> > insert into root.sg1.d1(time, s1, s2, s3, s5) aligned values(2, 2.0,
> > 2, 2, 'aligned_test2');
> > insert into root.sg1.d1(time, s1, s3, s4, s5) aligned values(3, 3.0,
> > 3, FALSE, 'aligned_test3');
> > insert into root.sg1.d1(time, s1, s2, s4, s5) aligned values(4, 4.0,
> > 4, TRUE, 'aligned_test4');
> > insert into root.sg1.d1(time, s1, s2, s4, s5) aligned values(5, 5.0,
> > 5, TRUE, 'aligned_test5');
> > insert into root.sg1.d1(time, s1, s2, s3, s4) aligned values(6, 6.0,
> > 6, 6, TRUE);
> > insert into root.sg1.d1(time, s1, s2, s3, s4, s5) aligned values(7,
> > 7.0, 7, 7, FALSE, 'aligned_test7');
> > insert into root.sg1.d1(time, s1, s2, s3, s5) aligned values(8, 8.0,
> > 8, 8, 'aligned_test8');
> > insert into root.sg1.d1(time, s1, s2, s3, s4, s5) aligned values(9,
> > 9.0, 9, 9, FALSE, 'aligned_test9');
> > insert into root.sg1.d1(time, s2, s3, s4, s5) aligned values(10, 10,
> > 10, TRUE, 'aligned_test10');
> > insert into root.sg1.d2(time, s1, s2, s3, s4, s5) values(1, 1.0, 1, 1,
> > TRUE, 'non_aligned_test1');
> > insert into root.sg1.d2(time, s1, s2, s3, s5) values(2, 2.0, 2, 2,
> > 'non_aligned_test2');
> > insert into root.sg1.d2(time, s1, s3, s4, s5) values(3, 3.0, 3, FALSE,
> > 'non_aligned_test3');
> > insert into root.sg1.d2(time, s1, s2, s4, s5) values(4, 4.0, 4, TRUE,
> > 'non_aligned_test4');
> > insert into root.sg1.d2(time, s1, s2, s4, s5) values(5, 5.0, 5, TRUE,
> > 'non_aligned_test5');
> > insert into root.sg1.d2(time, s1, s2, s3, s4) values(6, 6.0, 6, 6, TRUE);
> > insert into root.sg1.d2(time, s1, s2, s3, s4, s5) values(7, 7.0, 7, 7,
> > FALSE, 'non_aligned_test7');
> > insert into root.sg1.d2(time, s1, s2, s3, s5) values(8, 8.0, 8, 8,
> > 'non_aligned_test8');
> > insert into root.sg1.d2(time, s1, s2, s3, s4, s5) values(9, 9.0, 9, 9,
> > FALSE, 'non_aligned_test9');
> > insert into root.sg1.d2(time, s2, s3, s4, s5) values(10, 10, 10, TRUE,
> > 'non_aligned_test10');
> > flush;
> > insert into root.sg1.d1(time, s1, s3, s4, s5) aligned values(3,
> > 30000.0, 30000, TRUE, 'aligned_unseq_test3');
> > insert into root.sg1.d1(time, s1, s2, s3) aligned values(11, 11.0, 11, 11);
> > insert into root.sg1.d1(time, s1, s2, s3) aligned values(12, 12.0, 12, 12);
> > insert into root.sg1.d1(time, s1, s2, s3) aligned values(13, 13.0, 13, 13);
> > insert into root.sg1.d1(time, s1, s2, s3) aligned values(14, 14.0, 14, 14);
> > insert into root.sg1.d1(time, s1, s2, s3) aligned values(15, 15.0, 15, 15);
> > insert into root.sg1.d1(time, s1, s2, s3) aligned values(16, 16.0, 16, 16);
> > insert into root.sg1.d1(time, s1, s2, s3) aligned values(17, 17.0, 17, 17);
> > insert into root.sg1.d1(time, s1, s2, s3) aligned values(18, 18.0, 18, 18);
> > insert into root.sg1.d1(time, s1, s2, s3) aligned values(19, 19.0, 19, 19);
> > insert into root.sg1.d1(time, s1, s2, s3) aligned values(20, 20.0, 20, 20);
> > insert into root.sg1.d2(time, s1, s2, s3) values(11, 11.0, 11, 11);
> > insert into root.sg1.d2(time, s1, s2, s3) values(12, 12.0, 12, 12);
> > insert into root.sg1.d2(time, s1, s2, s3) values(13, 13.0, 13, 13);
> > insert into root.sg1.d2(time, s1, s2, s3) values(14, 14.0, 14, 14);
> > insert into root.sg1.d2(time, s1, s2, s3) values(15, 15.0, 15, 15);
> > insert into root.sg1.d2(time, s1, s2, s3) values(16, 16.0, 16, 16);
> > insert into root.sg1.d2(time, s1, s2, s3) values(17, 17.0, 17, 17);
> > insert into root.sg1.d2(time, s1, s2, s3) values(18, 18.0, 18, 18);
> > insert into root.sg1.d2(time, s1, s2, s3) values(19, 19.0, 19, 19);
> > insert into root.sg1.d2(time, s1, s2, s3) values(20, 20.0, 20, 20);
> > flush;
> > insert into root.sg1.d1(time, s1, s2, s3, s4, s5) aligned values(13,
> > 130000.0, 130000, 130000, TRUE, 'aligned_unseq_test13');
> > insert into root.sg1.d1(time, s3, s4) aligned values(21, 21, TRUE);
> > insert into root.sg1.d1(time, s3, s4) aligned values(22, 22, TRUE);
> > insert into root.sg1.d1(time, s3, s4) aligned values(23, 23, TRUE);
> > insert into root.sg1.d1(time, s3, s4) aligned values(24, 24, TRUE);
> > insert into root.sg1.d1(time, s3, s4) aligned values(25, 25, TRUE);
> > insert into root.sg1.d1(time, s3, s4) aligned values(26, 26, FALSE);
> > insert into root.sg1.d1(time, s3, s4) aligned values(27, 27, FALSE);
> > insert into root.sg1.d1(time, s3, s4) aligned values(28, 28, FALSE);
> > insert into root.sg1.d1(time, s3, s4) aligned values(29, 29, FALSE);
> > insert into root.sg1.d1(time, s3, s4) aligned values(30, 30, FALSE);
> > insert into root.sg1.d2(time, s3, s4) values(21, 21, TRUE);
> > insert into root.sg1.d2(time, s3, s4) values(22, 22, TRUE);
> > insert into root.sg1.d2(time, s3, s4) values(23, 23, TRUE);
> > insert into root.sg1.d2(time, s3, s4) values(24, 24, TRUE);
> > insert into root.sg1.d2(time, s3, s4) values(25, 25, TRUE);
> > insert into root.sg1.d2(time, s3, s4) values(26, 26, FALSE);
> > insert into root.sg1.d2(time, s3, s4) values(27, 27, FALSE);
> > insert into root.sg1.d2(time, s3, s4) values(28, 28, FALSE);
> > insert into root.sg1.d2(time, s3, s4) values(29, 29, FALSE);
> > insert into root.sg1.d2(time, s3, s4) values(30, 30, FALSE);
> > flush;
> > insert into root.sg1.d1(time, s1, s3, s4) aligned values(23, 230000.0,
> > 230000, FALSE);
> > insert into root.sg1.d1(time, s2, s5) aligned values(31, 31, 'aligned_test31');
> > insert into root.sg1.d1(time, s2, s5) aligned values(32, 32, 'aligned_test32');
> > insert into root.sg1.d1(time, s2, s5) aligned values(33, 33, 'aligned_test33');
> > insert into root.sg1.d1(time, s2, s5) aligned values(34, 34, 'aligned_test34');
> > insert into root.sg1.d1(time, s2, s5) aligned values(35, 35, 'aligned_test35');
> > insert into root.sg1.d1(time, s2, s5) aligned values(36, 36, 'aligned_test36');
> > insert into root.sg1.d1(time, s2, s5) aligned values(37, 37, 'aligned_test37');
> > insert into root.sg1.d1(time, s2, s5) aligned values(38, 38, 'aligned_test38');
> > insert into root.sg1.d1(time, s2, s5) aligned values(39, 39, 'aligned_test39');
> > insert into root.sg1.d1(time, s2, s5) aligned values(40, 40, 'aligned_test40');
> > insert into root.sg1.d2(time, s2, s5) values(31, 31, 'non_aligned_test31');
> > insert into root.sg1.d2(time, s2, s5) values(32, 32, 'non_aligned_test32');
> > insert into root.sg1.d2(time, s2, s5) values(33, 33, 'non_aligned_test33');
> > insert into root.sg1.d2(time, s2, s5) values(34, 34, 'non_aligned_test34');
> > insert into root.sg1.d2(time, s2, s5) values(35, 35, 'non_aligned_test35');
> > insert into root.sg1.d2(time, s2, s5) values(36, 36, 'non_aligned_test36');
> > insert into root.sg1.d2(time, s2, s5) values(37, 37, 'non_aligned_test37');
> > insert into root.sg1.d2(time, s2, s5) values(38, 38, 'non_aligned_test38');
> > insert into root.sg1.d2(time, s2, s5) values(39, 39, 'non_aligned_test39');
> > insert into root.sg1.d2(time, s2, s5) values(40, 40, 'non_aligned_test40');
> >
> > select * from root;
> > select last * from root.sg1.*;
> > select * from root.sg1.d1 where time >= 9 and time <= 33 and s1 < 19
> > align by device;
> > select max_value(s3), min_value(s1), max_time(s2), min_time(s3) from
> > root.sg1.d1 where time > 5 GROUP BY ([1, 41), 10ms) order by time
> > desc;
> >
> >
> > Best,
> > ———————
> > Yuan Tian
> >
> > On Wed, Sep 7, 2022 at 11:49 AM Haonan Hou <hh...@qq.com.invalid> wrote:
> > >
> > > Hi all,
> > >
> > > Apache IoTDB 0.14.0-preview2 version only contains the new cluster version.
> > >
> > > Apache IoTDB 0.14.0-preview2 has been staged under [2] and it’s time to vote
> > > on accepting it for release.  All Maven artifacts are available under [1].
> > > Voting will be open for 72hr.
> > > A minimum of 3 binding +1 votes and more binding +1 than binding -1
> > > are required to pass.
> > >
> > > Release tag: v0.14.0-preview2
> > > Hash for the release tag: 17c64784a866f583b59d4e583670233b70f0e291
> > >
> > > Before voting +1, PMC members are required to download
> > > the signed source code package, compile it as provided, and test
> > > the resulting executable on their own platform, along with also
> > > verifying that the package meets the requirements of the ASF policy
> > > on releases. [3]
> > >
> > > You can achieve the above by following [4].
> > >
> > > [ ]  +1 accept (indicate what you validated - e.g. performed the non-RM items in [4])
> > > [ ]  -1 reject (explanation required)
> > >
> > >
> > > [1] https://repository.apache.org/content/repositories/orgapacheiotdb-1086
> > > [2] https://dist.apache.org/repos/dist/dev/iotdb/0.14.0-preview2/rc2
> > > [3] https://www.apache.org/dev/release.html#approving-a-release
> > > [4] https://cwiki.apache.org/confluence/display/IOTDB/Validating+a+staged+Release
> > >
> > > [5] https://dist.apache.org/repos/dist/dev/iotdb/0.14.0-preview2/rc2/RELEASE_NOTES.md
> > >
> > > [6] https://dist.apache.org/repos/dist/dev/iotdb/KEYS
> > >
> > > Best,
> > >
> > > Haonan Hou
> > > Apache IoTDB PMC

Re: [VOTE] Apache IoTDB 0.14.0-preview2 RC2 release

Posted by Jialin Qiao <qi...@apache.org>.
Hi,

+1 (binding)

The source release:
apache headers [ok]
signatures and hashes [ok]
LICENSE and NOTICE [ok]
no jar files [ok]
could compile from source: ./mvnw clean install -DskipTests  [ok]


The binary distribution:
version number in CLI [ok]
signatures and hashes [ok]
3C3D start in mac, jdk8 [ok]
Insert and query statements executed successfully:  [ok]

Thanks,
—————————————————
Jialin Qiao
Apache IoTDB PMC

Yuan Tian <ja...@gmail.com> 于2022年9月8日周四 09:40写道:
>
> Hi,
>
> +1 (binding)
>
> The source release:
> apache headers [ok]
> signatures and hashes [ok]
> LICENSE and NOTICE [ok]
> no jar files [ok]
> could compile from source: ./mvnw.sh clean install  [minor issue with
> a target file not ignored by apache-rat]
>
>
> The binary distribution:
> version number in CLI [ok]
> signatures and hashes [ok]
> start in mac M1 pro, jdk11-liberica [ok]
> statements executed successfully:  [ok]
>
> SET STORAGE GROUP TO root.sg1;
> create aligned timeseries root.sg1.d1(s1 FLOAT encoding=RLE, s2 INT32
> encoding=Gorilla compression=SNAPPY, s3 INT64, s4 BOOLEAN, s5 TEXT);
> create timeseries root.sg1.d2.s1 WITH DATATYPE=FLOAT, encoding=RLE;
> create timeseries root.sg1.d2.s2 WITH DATATYPE=INT32, encoding=Gorilla;
> create timeseries root.sg1.d2.s3 WITH DATATYPE=INT64;
> create timeseries root.sg1.d2.s4 WITH DATATYPE=BOOLEAN;
> create timeseries root.sg1.d2.s5 WITH DATATYPE=TEXT;
> insert into root.sg1.d1(time, s1, s2, s3, s4, s5) aligned values(1,
> 1.0, 1, 1, TRUE, 'aligned_test1');
> insert into root.sg1.d1(time, s1, s2, s3, s5) aligned values(2, 2.0,
> 2, 2, 'aligned_test2');
> insert into root.sg1.d1(time, s1, s3, s4, s5) aligned values(3, 3.0,
> 3, FALSE, 'aligned_test3');
> insert into root.sg1.d1(time, s1, s2, s4, s5) aligned values(4, 4.0,
> 4, TRUE, 'aligned_test4');
> insert into root.sg1.d1(time, s1, s2, s4, s5) aligned values(5, 5.0,
> 5, TRUE, 'aligned_test5');
> insert into root.sg1.d1(time, s1, s2, s3, s4) aligned values(6, 6.0,
> 6, 6, TRUE);
> insert into root.sg1.d1(time, s1, s2, s3, s4, s5) aligned values(7,
> 7.0, 7, 7, FALSE, 'aligned_test7');
> insert into root.sg1.d1(time, s1, s2, s3, s5) aligned values(8, 8.0,
> 8, 8, 'aligned_test8');
> insert into root.sg1.d1(time, s1, s2, s3, s4, s5) aligned values(9,
> 9.0, 9, 9, FALSE, 'aligned_test9');
> insert into root.sg1.d1(time, s2, s3, s4, s5) aligned values(10, 10,
> 10, TRUE, 'aligned_test10');
> insert into root.sg1.d2(time, s1, s2, s3, s4, s5) values(1, 1.0, 1, 1,
> TRUE, 'non_aligned_test1');
> insert into root.sg1.d2(time, s1, s2, s3, s5) values(2, 2.0, 2, 2,
> 'non_aligned_test2');
> insert into root.sg1.d2(time, s1, s3, s4, s5) values(3, 3.0, 3, FALSE,
> 'non_aligned_test3');
> insert into root.sg1.d2(time, s1, s2, s4, s5) values(4, 4.0, 4, TRUE,
> 'non_aligned_test4');
> insert into root.sg1.d2(time, s1, s2, s4, s5) values(5, 5.0, 5, TRUE,
> 'non_aligned_test5');
> insert into root.sg1.d2(time, s1, s2, s3, s4) values(6, 6.0, 6, 6, TRUE);
> insert into root.sg1.d2(time, s1, s2, s3, s4, s5) values(7, 7.0, 7, 7,
> FALSE, 'non_aligned_test7');
> insert into root.sg1.d2(time, s1, s2, s3, s5) values(8, 8.0, 8, 8,
> 'non_aligned_test8');
> insert into root.sg1.d2(time, s1, s2, s3, s4, s5) values(9, 9.0, 9, 9,
> FALSE, 'non_aligned_test9');
> insert into root.sg1.d2(time, s2, s3, s4, s5) values(10, 10, 10, TRUE,
> 'non_aligned_test10');
> flush;
> insert into root.sg1.d1(time, s1, s3, s4, s5) aligned values(3,
> 30000.0, 30000, TRUE, 'aligned_unseq_test3');
> insert into root.sg1.d1(time, s1, s2, s3) aligned values(11, 11.0, 11, 11);
> insert into root.sg1.d1(time, s1, s2, s3) aligned values(12, 12.0, 12, 12);
> insert into root.sg1.d1(time, s1, s2, s3) aligned values(13, 13.0, 13, 13);
> insert into root.sg1.d1(time, s1, s2, s3) aligned values(14, 14.0, 14, 14);
> insert into root.sg1.d1(time, s1, s2, s3) aligned values(15, 15.0, 15, 15);
> insert into root.sg1.d1(time, s1, s2, s3) aligned values(16, 16.0, 16, 16);
> insert into root.sg1.d1(time, s1, s2, s3) aligned values(17, 17.0, 17, 17);
> insert into root.sg1.d1(time, s1, s2, s3) aligned values(18, 18.0, 18, 18);
> insert into root.sg1.d1(time, s1, s2, s3) aligned values(19, 19.0, 19, 19);
> insert into root.sg1.d1(time, s1, s2, s3) aligned values(20, 20.0, 20, 20);
> insert into root.sg1.d2(time, s1, s2, s3) values(11, 11.0, 11, 11);
> insert into root.sg1.d2(time, s1, s2, s3) values(12, 12.0, 12, 12);
> insert into root.sg1.d2(time, s1, s2, s3) values(13, 13.0, 13, 13);
> insert into root.sg1.d2(time, s1, s2, s3) values(14, 14.0, 14, 14);
> insert into root.sg1.d2(time, s1, s2, s3) values(15, 15.0, 15, 15);
> insert into root.sg1.d2(time, s1, s2, s3) values(16, 16.0, 16, 16);
> insert into root.sg1.d2(time, s1, s2, s3) values(17, 17.0, 17, 17);
> insert into root.sg1.d2(time, s1, s2, s3) values(18, 18.0, 18, 18);
> insert into root.sg1.d2(time, s1, s2, s3) values(19, 19.0, 19, 19);
> insert into root.sg1.d2(time, s1, s2, s3) values(20, 20.0, 20, 20);
> flush;
> insert into root.sg1.d1(time, s1, s2, s3, s4, s5) aligned values(13,
> 130000.0, 130000, 130000, TRUE, 'aligned_unseq_test13');
> insert into root.sg1.d1(time, s3, s4) aligned values(21, 21, TRUE);
> insert into root.sg1.d1(time, s3, s4) aligned values(22, 22, TRUE);
> insert into root.sg1.d1(time, s3, s4) aligned values(23, 23, TRUE);
> insert into root.sg1.d1(time, s3, s4) aligned values(24, 24, TRUE);
> insert into root.sg1.d1(time, s3, s4) aligned values(25, 25, TRUE);
> insert into root.sg1.d1(time, s3, s4) aligned values(26, 26, FALSE);
> insert into root.sg1.d1(time, s3, s4) aligned values(27, 27, FALSE);
> insert into root.sg1.d1(time, s3, s4) aligned values(28, 28, FALSE);
> insert into root.sg1.d1(time, s3, s4) aligned values(29, 29, FALSE);
> insert into root.sg1.d1(time, s3, s4) aligned values(30, 30, FALSE);
> insert into root.sg1.d2(time, s3, s4) values(21, 21, TRUE);
> insert into root.sg1.d2(time, s3, s4) values(22, 22, TRUE);
> insert into root.sg1.d2(time, s3, s4) values(23, 23, TRUE);
> insert into root.sg1.d2(time, s3, s4) values(24, 24, TRUE);
> insert into root.sg1.d2(time, s3, s4) values(25, 25, TRUE);
> insert into root.sg1.d2(time, s3, s4) values(26, 26, FALSE);
> insert into root.sg1.d2(time, s3, s4) values(27, 27, FALSE);
> insert into root.sg1.d2(time, s3, s4) values(28, 28, FALSE);
> insert into root.sg1.d2(time, s3, s4) values(29, 29, FALSE);
> insert into root.sg1.d2(time, s3, s4) values(30, 30, FALSE);
> flush;
> insert into root.sg1.d1(time, s1, s3, s4) aligned values(23, 230000.0,
> 230000, FALSE);
> insert into root.sg1.d1(time, s2, s5) aligned values(31, 31, 'aligned_test31');
> insert into root.sg1.d1(time, s2, s5) aligned values(32, 32, 'aligned_test32');
> insert into root.sg1.d1(time, s2, s5) aligned values(33, 33, 'aligned_test33');
> insert into root.sg1.d1(time, s2, s5) aligned values(34, 34, 'aligned_test34');
> insert into root.sg1.d1(time, s2, s5) aligned values(35, 35, 'aligned_test35');
> insert into root.sg1.d1(time, s2, s5) aligned values(36, 36, 'aligned_test36');
> insert into root.sg1.d1(time, s2, s5) aligned values(37, 37, 'aligned_test37');
> insert into root.sg1.d1(time, s2, s5) aligned values(38, 38, 'aligned_test38');
> insert into root.sg1.d1(time, s2, s5) aligned values(39, 39, 'aligned_test39');
> insert into root.sg1.d1(time, s2, s5) aligned values(40, 40, 'aligned_test40');
> insert into root.sg1.d2(time, s2, s5) values(31, 31, 'non_aligned_test31');
> insert into root.sg1.d2(time, s2, s5) values(32, 32, 'non_aligned_test32');
> insert into root.sg1.d2(time, s2, s5) values(33, 33, 'non_aligned_test33');
> insert into root.sg1.d2(time, s2, s5) values(34, 34, 'non_aligned_test34');
> insert into root.sg1.d2(time, s2, s5) values(35, 35, 'non_aligned_test35');
> insert into root.sg1.d2(time, s2, s5) values(36, 36, 'non_aligned_test36');
> insert into root.sg1.d2(time, s2, s5) values(37, 37, 'non_aligned_test37');
> insert into root.sg1.d2(time, s2, s5) values(38, 38, 'non_aligned_test38');
> insert into root.sg1.d2(time, s2, s5) values(39, 39, 'non_aligned_test39');
> insert into root.sg1.d2(time, s2, s5) values(40, 40, 'non_aligned_test40');
>
> select * from root;
> select last * from root.sg1.*;
> select * from root.sg1.d1 where time >= 9 and time <= 33 and s1 < 19
> align by device;
> select max_value(s3), min_value(s1), max_time(s2), min_time(s3) from
> root.sg1.d1 where time > 5 GROUP BY ([1, 41), 10ms) order by time
> desc;
>
>
> Best,
> ———————
> Yuan Tian
>
> On Wed, Sep 7, 2022 at 11:49 AM Haonan Hou <hh...@qq.com.invalid> wrote:
> >
> > Hi all,
> >
> > Apache IoTDB 0.14.0-preview2 version only contains the new cluster version.
> >
> > Apache IoTDB 0.14.0-preview2 has been staged under [2] and it’s time to vote
> > on accepting it for release.  All Maven artifacts are available under [1].
> > Voting will be open for 72hr.
> > A minimum of 3 binding +1 votes and more binding +1 than binding -1
> > are required to pass.
> >
> > Release tag: v0.14.0-preview2
> > Hash for the release tag: 17c64784a866f583b59d4e583670233b70f0e291
> >
> > Before voting +1, PMC members are required to download
> > the signed source code package, compile it as provided, and test
> > the resulting executable on their own platform, along with also
> > verifying that the package meets the requirements of the ASF policy
> > on releases. [3]
> >
> > You can achieve the above by following [4].
> >
> > [ ]  +1 accept (indicate what you validated - e.g. performed the non-RM items in [4])
> > [ ]  -1 reject (explanation required)
> >
> >
> > [1] https://repository.apache.org/content/repositories/orgapacheiotdb-1086
> > [2] https://dist.apache.org/repos/dist/dev/iotdb/0.14.0-preview2/rc2
> > [3] https://www.apache.org/dev/release.html#approving-a-release
> > [4] https://cwiki.apache.org/confluence/display/IOTDB/Validating+a+staged+Release
> >
> > [5] https://dist.apache.org/repos/dist/dev/iotdb/0.14.0-preview2/rc2/RELEASE_NOTES.md
> >
> > [6] https://dist.apache.org/repos/dist/dev/iotdb/KEYS
> >
> > Best,
> >
> > Haonan Hou
> > Apache IoTDB PMC

Re: [VOTE] Apache IoTDB 0.14.0-preview2 RC2 release

Posted by Yuan Tian <ja...@gmail.com>.
Hi,

+1 (binding)

The source release:
apache headers [ok]
signatures and hashes [ok]
LICENSE and NOTICE [ok]
no jar files [ok]
could compile from source: ./mvnw.sh clean install  [minor issue with
a target file not ignored by apache-rat]


The binary distribution:
version number in CLI [ok]
signatures and hashes [ok]
start in mac M1 pro, jdk11-liberica [ok]
statements executed successfully:  [ok]

SET STORAGE GROUP TO root.sg1;
create aligned timeseries root.sg1.d1(s1 FLOAT encoding=RLE, s2 INT32
encoding=Gorilla compression=SNAPPY, s3 INT64, s4 BOOLEAN, s5 TEXT);
create timeseries root.sg1.d2.s1 WITH DATATYPE=FLOAT, encoding=RLE;
create timeseries root.sg1.d2.s2 WITH DATATYPE=INT32, encoding=Gorilla;
create timeseries root.sg1.d2.s3 WITH DATATYPE=INT64;
create timeseries root.sg1.d2.s4 WITH DATATYPE=BOOLEAN;
create timeseries root.sg1.d2.s5 WITH DATATYPE=TEXT;
insert into root.sg1.d1(time, s1, s2, s3, s4, s5) aligned values(1,
1.0, 1, 1, TRUE, 'aligned_test1');
insert into root.sg1.d1(time, s1, s2, s3, s5) aligned values(2, 2.0,
2, 2, 'aligned_test2');
insert into root.sg1.d1(time, s1, s3, s4, s5) aligned values(3, 3.0,
3, FALSE, 'aligned_test3');
insert into root.sg1.d1(time, s1, s2, s4, s5) aligned values(4, 4.0,
4, TRUE, 'aligned_test4');
insert into root.sg1.d1(time, s1, s2, s4, s5) aligned values(5, 5.0,
5, TRUE, 'aligned_test5');
insert into root.sg1.d1(time, s1, s2, s3, s4) aligned values(6, 6.0,
6, 6, TRUE);
insert into root.sg1.d1(time, s1, s2, s3, s4, s5) aligned values(7,
7.0, 7, 7, FALSE, 'aligned_test7');
insert into root.sg1.d1(time, s1, s2, s3, s5) aligned values(8, 8.0,
8, 8, 'aligned_test8');
insert into root.sg1.d1(time, s1, s2, s3, s4, s5) aligned values(9,
9.0, 9, 9, FALSE, 'aligned_test9');
insert into root.sg1.d1(time, s2, s3, s4, s5) aligned values(10, 10,
10, TRUE, 'aligned_test10');
insert into root.sg1.d2(time, s1, s2, s3, s4, s5) values(1, 1.0, 1, 1,
TRUE, 'non_aligned_test1');
insert into root.sg1.d2(time, s1, s2, s3, s5) values(2, 2.0, 2, 2,
'non_aligned_test2');
insert into root.sg1.d2(time, s1, s3, s4, s5) values(3, 3.0, 3, FALSE,
'non_aligned_test3');
insert into root.sg1.d2(time, s1, s2, s4, s5) values(4, 4.0, 4, TRUE,
'non_aligned_test4');
insert into root.sg1.d2(time, s1, s2, s4, s5) values(5, 5.0, 5, TRUE,
'non_aligned_test5');
insert into root.sg1.d2(time, s1, s2, s3, s4) values(6, 6.0, 6, 6, TRUE);
insert into root.sg1.d2(time, s1, s2, s3, s4, s5) values(7, 7.0, 7, 7,
FALSE, 'non_aligned_test7');
insert into root.sg1.d2(time, s1, s2, s3, s5) values(8, 8.0, 8, 8,
'non_aligned_test8');
insert into root.sg1.d2(time, s1, s2, s3, s4, s5) values(9, 9.0, 9, 9,
FALSE, 'non_aligned_test9');
insert into root.sg1.d2(time, s2, s3, s4, s5) values(10, 10, 10, TRUE,
'non_aligned_test10');
flush;
insert into root.sg1.d1(time, s1, s3, s4, s5) aligned values(3,
30000.0, 30000, TRUE, 'aligned_unseq_test3');
insert into root.sg1.d1(time, s1, s2, s3) aligned values(11, 11.0, 11, 11);
insert into root.sg1.d1(time, s1, s2, s3) aligned values(12, 12.0, 12, 12);
insert into root.sg1.d1(time, s1, s2, s3) aligned values(13, 13.0, 13, 13);
insert into root.sg1.d1(time, s1, s2, s3) aligned values(14, 14.0, 14, 14);
insert into root.sg1.d1(time, s1, s2, s3) aligned values(15, 15.0, 15, 15);
insert into root.sg1.d1(time, s1, s2, s3) aligned values(16, 16.0, 16, 16);
insert into root.sg1.d1(time, s1, s2, s3) aligned values(17, 17.0, 17, 17);
insert into root.sg1.d1(time, s1, s2, s3) aligned values(18, 18.0, 18, 18);
insert into root.sg1.d1(time, s1, s2, s3) aligned values(19, 19.0, 19, 19);
insert into root.sg1.d1(time, s1, s2, s3) aligned values(20, 20.0, 20, 20);
insert into root.sg1.d2(time, s1, s2, s3) values(11, 11.0, 11, 11);
insert into root.sg1.d2(time, s1, s2, s3) values(12, 12.0, 12, 12);
insert into root.sg1.d2(time, s1, s2, s3) values(13, 13.0, 13, 13);
insert into root.sg1.d2(time, s1, s2, s3) values(14, 14.0, 14, 14);
insert into root.sg1.d2(time, s1, s2, s3) values(15, 15.0, 15, 15);
insert into root.sg1.d2(time, s1, s2, s3) values(16, 16.0, 16, 16);
insert into root.sg1.d2(time, s1, s2, s3) values(17, 17.0, 17, 17);
insert into root.sg1.d2(time, s1, s2, s3) values(18, 18.0, 18, 18);
insert into root.sg1.d2(time, s1, s2, s3) values(19, 19.0, 19, 19);
insert into root.sg1.d2(time, s1, s2, s3) values(20, 20.0, 20, 20);
flush;
insert into root.sg1.d1(time, s1, s2, s3, s4, s5) aligned values(13,
130000.0, 130000, 130000, TRUE, 'aligned_unseq_test13');
insert into root.sg1.d1(time, s3, s4) aligned values(21, 21, TRUE);
insert into root.sg1.d1(time, s3, s4) aligned values(22, 22, TRUE);
insert into root.sg1.d1(time, s3, s4) aligned values(23, 23, TRUE);
insert into root.sg1.d1(time, s3, s4) aligned values(24, 24, TRUE);
insert into root.sg1.d1(time, s3, s4) aligned values(25, 25, TRUE);
insert into root.sg1.d1(time, s3, s4) aligned values(26, 26, FALSE);
insert into root.sg1.d1(time, s3, s4) aligned values(27, 27, FALSE);
insert into root.sg1.d1(time, s3, s4) aligned values(28, 28, FALSE);
insert into root.sg1.d1(time, s3, s4) aligned values(29, 29, FALSE);
insert into root.sg1.d1(time, s3, s4) aligned values(30, 30, FALSE);
insert into root.sg1.d2(time, s3, s4) values(21, 21, TRUE);
insert into root.sg1.d2(time, s3, s4) values(22, 22, TRUE);
insert into root.sg1.d2(time, s3, s4) values(23, 23, TRUE);
insert into root.sg1.d2(time, s3, s4) values(24, 24, TRUE);
insert into root.sg1.d2(time, s3, s4) values(25, 25, TRUE);
insert into root.sg1.d2(time, s3, s4) values(26, 26, FALSE);
insert into root.sg1.d2(time, s3, s4) values(27, 27, FALSE);
insert into root.sg1.d2(time, s3, s4) values(28, 28, FALSE);
insert into root.sg1.d2(time, s3, s4) values(29, 29, FALSE);
insert into root.sg1.d2(time, s3, s4) values(30, 30, FALSE);
flush;
insert into root.sg1.d1(time, s1, s3, s4) aligned values(23, 230000.0,
230000, FALSE);
insert into root.sg1.d1(time, s2, s5) aligned values(31, 31, 'aligned_test31');
insert into root.sg1.d1(time, s2, s5) aligned values(32, 32, 'aligned_test32');
insert into root.sg1.d1(time, s2, s5) aligned values(33, 33, 'aligned_test33');
insert into root.sg1.d1(time, s2, s5) aligned values(34, 34, 'aligned_test34');
insert into root.sg1.d1(time, s2, s5) aligned values(35, 35, 'aligned_test35');
insert into root.sg1.d1(time, s2, s5) aligned values(36, 36, 'aligned_test36');
insert into root.sg1.d1(time, s2, s5) aligned values(37, 37, 'aligned_test37');
insert into root.sg1.d1(time, s2, s5) aligned values(38, 38, 'aligned_test38');
insert into root.sg1.d1(time, s2, s5) aligned values(39, 39, 'aligned_test39');
insert into root.sg1.d1(time, s2, s5) aligned values(40, 40, 'aligned_test40');
insert into root.sg1.d2(time, s2, s5) values(31, 31, 'non_aligned_test31');
insert into root.sg1.d2(time, s2, s5) values(32, 32, 'non_aligned_test32');
insert into root.sg1.d2(time, s2, s5) values(33, 33, 'non_aligned_test33');
insert into root.sg1.d2(time, s2, s5) values(34, 34, 'non_aligned_test34');
insert into root.sg1.d2(time, s2, s5) values(35, 35, 'non_aligned_test35');
insert into root.sg1.d2(time, s2, s5) values(36, 36, 'non_aligned_test36');
insert into root.sg1.d2(time, s2, s5) values(37, 37, 'non_aligned_test37');
insert into root.sg1.d2(time, s2, s5) values(38, 38, 'non_aligned_test38');
insert into root.sg1.d2(time, s2, s5) values(39, 39, 'non_aligned_test39');
insert into root.sg1.d2(time, s2, s5) values(40, 40, 'non_aligned_test40');

select * from root;
select last * from root.sg1.*;
select * from root.sg1.d1 where time >= 9 and time <= 33 and s1 < 19
align by device;
select max_value(s3), min_value(s1), max_time(s2), min_time(s3) from
root.sg1.d1 where time > 5 GROUP BY ([1, 41), 10ms) order by time
desc;


Best,
———————
Yuan Tian

On Wed, Sep 7, 2022 at 11:49 AM Haonan Hou <hh...@qq.com.invalid> wrote:
>
> Hi all,
>
> Apache IoTDB 0.14.0-preview2 version only contains the new cluster version.
>
> Apache IoTDB 0.14.0-preview2 has been staged under [2] and it’s time to vote
> on accepting it for release.  All Maven artifacts are available under [1].
> Voting will be open for 72hr.
> A minimum of 3 binding +1 votes and more binding +1 than binding -1
> are required to pass.
>
> Release tag: v0.14.0-preview2
> Hash for the release tag: 17c64784a866f583b59d4e583670233b70f0e291
>
> Before voting +1, PMC members are required to download
> the signed source code package, compile it as provided, and test
> the resulting executable on their own platform, along with also
> verifying that the package meets the requirements of the ASF policy
> on releases. [3]
>
> You can achieve the above by following [4].
>
> [ ]  +1 accept (indicate what you validated - e.g. performed the non-RM items in [4])
> [ ]  -1 reject (explanation required)
>
>
> [1] https://repository.apache.org/content/repositories/orgapacheiotdb-1086
> [2] https://dist.apache.org/repos/dist/dev/iotdb/0.14.0-preview2/rc2
> [3] https://www.apache.org/dev/release.html#approving-a-release
> [4] https://cwiki.apache.org/confluence/display/IOTDB/Validating+a+staged+Release
>
> [5] https://dist.apache.org/repos/dist/dev/iotdb/0.14.0-preview2/rc2/RELEASE_NOTES.md
>
> [6] https://dist.apache.org/repos/dist/dev/iotdb/KEYS
>
> Best,
>
> Haonan Hou
> Apache IoTDB PMC