You are viewing a plain text version of this content. The canonical link for it is here.
Posted to reviews@iotdb.apache.org by GitBox <gi...@apache.org> on 2021/09/26 03:52:13 UTC

[GitHub] [iotdb] SteveYurongSu opened a new pull request #4033: [IOTDB-1739] Constant timeseries generating functions

SteveYurongSu opened a new pull request #4033:
URL: https://github.com/apache/iotdb/pull/4033


   Using constants in nested expressions is a common requirement.
   
   With constant timeseries generating functions, a lot of calculations are going to be very convenient.
   
   


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: reviews-unsubscribe@iotdb.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org



[GitHub] [iotdb] SteveYurongSu merged pull request #4033: [IOTDB-1739] Constant timeseries generating functions

Posted by GitBox <gi...@apache.org>.
SteveYurongSu merged pull request #4033:
URL: https://github.com/apache/iotdb/pull/4033


   


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: reviews-unsubscribe@iotdb.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org



[GitHub] [iotdb] sonarcloud[bot] commented on pull request #4033: [IOTDB-1739] Constant timeseries generating functions

Posted by GitBox <gi...@apache.org>.
sonarcloud[bot] commented on pull request #4033:
URL: https://github.com/apache/iotdb/pull/4033#issuecomment-927453859


   SonarCloud Quality Gate failed.&nbsp; &nbsp; ![Quality Gate failed](https://sonarsource.github.io/sonarcloud-github-static-resources/v2/checks/QualityGateBadge/failed-16px.png 'Quality Gate failed')
   
   [![Bug](https://sonarsource.github.io/sonarcloud-github-static-resources/v2/common/bug-16px.png 'Bug')](https://sonarcloud.io/project/issues?id=apache_incubator-iotdb&pullRequest=4033&resolved=false&types=BUG) [![A](https://sonarsource.github.io/sonarcloud-github-static-resources/v2/checks/RatingBadge/A-16px.png 'A')](https://sonarcloud.io/project/issues?id=apache_incubator-iotdb&pullRequest=4033&resolved=false&types=BUG) [0 Bugs](https://sonarcloud.io/project/issues?id=apache_incubator-iotdb&pullRequest=4033&resolved=false&types=BUG)  
   [![Vulnerability](https://sonarsource.github.io/sonarcloud-github-static-resources/v2/common/vulnerability-16px.png 'Vulnerability')](https://sonarcloud.io/project/issues?id=apache_incubator-iotdb&pullRequest=4033&resolved=false&types=VULNERABILITY) [![A](https://sonarsource.github.io/sonarcloud-github-static-resources/v2/checks/RatingBadge/A-16px.png 'A')](https://sonarcloud.io/project/issues?id=apache_incubator-iotdb&pullRequest=4033&resolved=false&types=VULNERABILITY) [0 Vulnerabilities](https://sonarcloud.io/project/issues?id=apache_incubator-iotdb&pullRequest=4033&resolved=false&types=VULNERABILITY)  
   [![Security Hotspot](https://sonarsource.github.io/sonarcloud-github-static-resources/v2/common/security_hotspot-16px.png 'Security Hotspot')](https://sonarcloud.io/project/security_hotspots?id=apache_incubator-iotdb&pullRequest=4033&resolved=false&types=SECURITY_HOTSPOT) [![A](https://sonarsource.github.io/sonarcloud-github-static-resources/v2/checks/RatingBadge/A-16px.png 'A')](https://sonarcloud.io/project/security_hotspots?id=apache_incubator-iotdb&pullRequest=4033&resolved=false&types=SECURITY_HOTSPOT) [0 Security Hotspots](https://sonarcloud.io/project/security_hotspots?id=apache_incubator-iotdb&pullRequest=4033&resolved=false&types=SECURITY_HOTSPOT)  
   [![Code Smell](https://sonarsource.github.io/sonarcloud-github-static-resources/v2/common/code_smell-16px.png 'Code Smell')](https://sonarcloud.io/project/issues?id=apache_incubator-iotdb&pullRequest=4033&resolved=false&types=CODE_SMELL) [![A](https://sonarsource.github.io/sonarcloud-github-static-resources/v2/checks/RatingBadge/A-16px.png 'A')](https://sonarcloud.io/project/issues?id=apache_incubator-iotdb&pullRequest=4033&resolved=false&types=CODE_SMELL) [5 Code Smells](https://sonarcloud.io/project/issues?id=apache_incubator-iotdb&pullRequest=4033&resolved=false&types=CODE_SMELL)
   
   [![57.0%](https://sonarsource.github.io/sonarcloud-github-static-resources/v2/checks/CoverageChart/50-16px.png '57.0%')](https://sonarcloud.io/component_measures?id=apache_incubator-iotdb&pullRequest=4033&metric=new_coverage&view=list) [57.0% Coverage](https://sonarcloud.io/component_measures?id=apache_incubator-iotdb&pullRequest=4033&metric=new_coverage&view=list)  
   [![0.0%](https://sonarsource.github.io/sonarcloud-github-static-resources/v2/checks/Duplications/3-16px.png '0.0%')](https://sonarcloud.io/component_measures?id=apache_incubator-iotdb&pullRequest=4033&metric=new_duplicated_lines_density&view=list) [0.0% Duplication](https://sonarcloud.io/component_measures?id=apache_incubator-iotdb&pullRequest=4033&metric=new_duplicated_lines_density&view=list)
   
   


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: reviews-unsubscribe@iotdb.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org



[GitHub] [iotdb] sonarcloud[bot] removed a comment on pull request #4033: [IOTDB-1739] Constant timeseries generating functions

Posted by GitBox <gi...@apache.org>.
sonarcloud[bot] removed a comment on pull request #4033:
URL: https://github.com/apache/iotdb/pull/4033#issuecomment-927229928


   SonarCloud Quality Gate failed.&nbsp; &nbsp; ![Quality Gate failed](https://sonarsource.github.io/sonarcloud-github-static-resources/v2/checks/QualityGateBadge/failed-16px.png 'Quality Gate failed')
   
   [![Bug](https://sonarsource.github.io/sonarcloud-github-static-resources/v2/common/bug-16px.png 'Bug')](https://sonarcloud.io/project/issues?id=apache_incubator-iotdb&pullRequest=4033&resolved=false&types=BUG) [![A](https://sonarsource.github.io/sonarcloud-github-static-resources/v2/checks/RatingBadge/A-16px.png 'A')](https://sonarcloud.io/project/issues?id=apache_incubator-iotdb&pullRequest=4033&resolved=false&types=BUG) [0 Bugs](https://sonarcloud.io/project/issues?id=apache_incubator-iotdb&pullRequest=4033&resolved=false&types=BUG)  
   [![Vulnerability](https://sonarsource.github.io/sonarcloud-github-static-resources/v2/common/vulnerability-16px.png 'Vulnerability')](https://sonarcloud.io/project/issues?id=apache_incubator-iotdb&pullRequest=4033&resolved=false&types=VULNERABILITY) [![A](https://sonarsource.github.io/sonarcloud-github-static-resources/v2/checks/RatingBadge/A-16px.png 'A')](https://sonarcloud.io/project/issues?id=apache_incubator-iotdb&pullRequest=4033&resolved=false&types=VULNERABILITY) [0 Vulnerabilities](https://sonarcloud.io/project/issues?id=apache_incubator-iotdb&pullRequest=4033&resolved=false&types=VULNERABILITY)  
   [![Security Hotspot](https://sonarsource.github.io/sonarcloud-github-static-resources/v2/common/security_hotspot-16px.png 'Security Hotspot')](https://sonarcloud.io/project/security_hotspots?id=apache_incubator-iotdb&pullRequest=4033&resolved=false&types=SECURITY_HOTSPOT) [![A](https://sonarsource.github.io/sonarcloud-github-static-resources/v2/checks/RatingBadge/A-16px.png 'A')](https://sonarcloud.io/project/security_hotspots?id=apache_incubator-iotdb&pullRequest=4033&resolved=false&types=SECURITY_HOTSPOT) [0 Security Hotspots](https://sonarcloud.io/project/security_hotspots?id=apache_incubator-iotdb&pullRequest=4033&resolved=false&types=SECURITY_HOTSPOT)  
   [![Code Smell](https://sonarsource.github.io/sonarcloud-github-static-resources/v2/common/code_smell-16px.png 'Code Smell')](https://sonarcloud.io/project/issues?id=apache_incubator-iotdb&pullRequest=4033&resolved=false&types=CODE_SMELL) [![A](https://sonarsource.github.io/sonarcloud-github-static-resources/v2/checks/RatingBadge/A-16px.png 'A')](https://sonarcloud.io/project/issues?id=apache_incubator-iotdb&pullRequest=4033&resolved=false&types=CODE_SMELL) [5 Code Smells](https://sonarcloud.io/project/issues?id=apache_incubator-iotdb&pullRequest=4033&resolved=false&types=CODE_SMELL)
   
   [![57.0%](https://sonarsource.github.io/sonarcloud-github-static-resources/v2/checks/CoverageChart/50-16px.png '57.0%')](https://sonarcloud.io/component_measures?id=apache_incubator-iotdb&pullRequest=4033&metric=new_coverage&view=list) [57.0% Coverage](https://sonarcloud.io/component_measures?id=apache_incubator-iotdb&pullRequest=4033&metric=new_coverage&view=list)  
   [![0.0%](https://sonarsource.github.io/sonarcloud-github-static-resources/v2/checks/Duplications/3-16px.png '0.0%')](https://sonarcloud.io/component_measures?id=apache_incubator-iotdb&pullRequest=4033&metric=new_duplicated_lines_density&view=list) [0.0% Duplication](https://sonarcloud.io/component_measures?id=apache_incubator-iotdb&pullRequest=4033&metric=new_duplicated_lines_density&view=list)
   
   


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: reviews-unsubscribe@iotdb.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org



[GitHub] [iotdb] coveralls commented on pull request #4033: [IOTDB-1739] Constant timeseries generating functions

Posted by GitBox <gi...@apache.org>.
coveralls commented on pull request #4033:
URL: https://github.com/apache/iotdb/pull/4033#issuecomment-927452451


   
   [![Coverage Status](https://coveralls.io/builds/43075879/badge)](https://coveralls.io/builds/43075879)
   
   Coverage decreased (-0.02%) to 67.459% when pulling **e34cd5f4a7ccc5da8409e3148d6b77498eded92e on const** into **bc3b736834b364ce4fddeed3780de8655ec33e03 on master**.
   


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: reviews-unsubscribe@iotdb.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org



[GitHub] [iotdb] ericpai commented on pull request #4033: [IOTDB-1739] Constant timeseries generating functions

Posted by GitBox <gi...@apache.org>.
ericpai commented on pull request #4033:
URL: https://github.com/apache/iotdb/pull/4033#issuecomment-927504558


   @SteveYurongSu BTW, I'm glad to join the following discussions about UDF design, bugfix and code reviews. If anything is kicked off, it's better to send a mail or wechat group message to let me get the notice. Or I may lack of some context :D


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: reviews-unsubscribe@iotdb.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org



[GitHub] [iotdb] sonarcloud[bot] removed a comment on pull request #4033: [IOTDB-1739] Constant timeseries generating functions

Posted by GitBox <gi...@apache.org>.
sonarcloud[bot] removed a comment on pull request #4033:
URL: https://github.com/apache/iotdb/pull/4033#issuecomment-927260076


   SonarCloud Quality Gate failed.&nbsp; &nbsp; ![Quality Gate failed](https://sonarsource.github.io/sonarcloud-github-static-resources/v2/checks/QualityGateBadge/failed-16px.png 'Quality Gate failed')
   
   [![Bug](https://sonarsource.github.io/sonarcloud-github-static-resources/v2/common/bug-16px.png 'Bug')](https://sonarcloud.io/project/issues?id=apache_incubator-iotdb&pullRequest=4033&resolved=false&types=BUG) [![A](https://sonarsource.github.io/sonarcloud-github-static-resources/v2/checks/RatingBadge/A-16px.png 'A')](https://sonarcloud.io/project/issues?id=apache_incubator-iotdb&pullRequest=4033&resolved=false&types=BUG) [0 Bugs](https://sonarcloud.io/project/issues?id=apache_incubator-iotdb&pullRequest=4033&resolved=false&types=BUG)  
   [![Vulnerability](https://sonarsource.github.io/sonarcloud-github-static-resources/v2/common/vulnerability-16px.png 'Vulnerability')](https://sonarcloud.io/project/issues?id=apache_incubator-iotdb&pullRequest=4033&resolved=false&types=VULNERABILITY) [![A](https://sonarsource.github.io/sonarcloud-github-static-resources/v2/checks/RatingBadge/A-16px.png 'A')](https://sonarcloud.io/project/issues?id=apache_incubator-iotdb&pullRequest=4033&resolved=false&types=VULNERABILITY) [0 Vulnerabilities](https://sonarcloud.io/project/issues?id=apache_incubator-iotdb&pullRequest=4033&resolved=false&types=VULNERABILITY)  
   [![Security Hotspot](https://sonarsource.github.io/sonarcloud-github-static-resources/v2/common/security_hotspot-16px.png 'Security Hotspot')](https://sonarcloud.io/project/security_hotspots?id=apache_incubator-iotdb&pullRequest=4033&resolved=false&types=SECURITY_HOTSPOT) [![A](https://sonarsource.github.io/sonarcloud-github-static-resources/v2/checks/RatingBadge/A-16px.png 'A')](https://sonarcloud.io/project/security_hotspots?id=apache_incubator-iotdb&pullRequest=4033&resolved=false&types=SECURITY_HOTSPOT) [0 Security Hotspots](https://sonarcloud.io/project/security_hotspots?id=apache_incubator-iotdb&pullRequest=4033&resolved=false&types=SECURITY_HOTSPOT)  
   [![Code Smell](https://sonarsource.github.io/sonarcloud-github-static-resources/v2/common/code_smell-16px.png 'Code Smell')](https://sonarcloud.io/project/issues?id=apache_incubator-iotdb&pullRequest=4033&resolved=false&types=CODE_SMELL) [![A](https://sonarsource.github.io/sonarcloud-github-static-resources/v2/checks/RatingBadge/A-16px.png 'A')](https://sonarcloud.io/project/issues?id=apache_incubator-iotdb&pullRequest=4033&resolved=false&types=CODE_SMELL) [5 Code Smells](https://sonarcloud.io/project/issues?id=apache_incubator-iotdb&pullRequest=4033&resolved=false&types=CODE_SMELL)
   
   [![57.0%](https://sonarsource.github.io/sonarcloud-github-static-resources/v2/checks/CoverageChart/50-16px.png '57.0%')](https://sonarcloud.io/component_measures?id=apache_incubator-iotdb&pullRequest=4033&metric=new_coverage&view=list) [57.0% Coverage](https://sonarcloud.io/component_measures?id=apache_incubator-iotdb&pullRequest=4033&metric=new_coverage&view=list)  
   [![0.0%](https://sonarsource.github.io/sonarcloud-github-static-resources/v2/checks/Duplications/3-16px.png '0.0%')](https://sonarcloud.io/component_measures?id=apache_incubator-iotdb&pullRequest=4033&metric=new_duplicated_lines_density&view=list) [0.0% Duplication](https://sonarcloud.io/component_measures?id=apache_incubator-iotdb&pullRequest=4033&metric=new_duplicated_lines_density&view=list)
   
   


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: reviews-unsubscribe@iotdb.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org



[GitHub] [iotdb] sonarcloud[bot] removed a comment on pull request #4033: [IOTDB-1739] Constant timeseries generating functions

Posted by GitBox <gi...@apache.org>.
sonarcloud[bot] removed a comment on pull request #4033:
URL: https://github.com/apache/iotdb/pull/4033#issuecomment-927453669


   SonarCloud Quality Gate failed.&nbsp; &nbsp; ![Quality Gate failed](https://sonarsource.github.io/sonarcloud-github-static-resources/v2/checks/QualityGateBadge/failed-16px.png 'Quality Gate failed')
   
   [![Bug](https://sonarsource.github.io/sonarcloud-github-static-resources/v2/common/bug-16px.png 'Bug')](https://sonarcloud.io/project/issues?id=apache_incubator-iotdb&pullRequest=4033&resolved=false&types=BUG) [![A](https://sonarsource.github.io/sonarcloud-github-static-resources/v2/checks/RatingBadge/A-16px.png 'A')](https://sonarcloud.io/project/issues?id=apache_incubator-iotdb&pullRequest=4033&resolved=false&types=BUG) [0 Bugs](https://sonarcloud.io/project/issues?id=apache_incubator-iotdb&pullRequest=4033&resolved=false&types=BUG)  
   [![Vulnerability](https://sonarsource.github.io/sonarcloud-github-static-resources/v2/common/vulnerability-16px.png 'Vulnerability')](https://sonarcloud.io/project/issues?id=apache_incubator-iotdb&pullRequest=4033&resolved=false&types=VULNERABILITY) [![A](https://sonarsource.github.io/sonarcloud-github-static-resources/v2/checks/RatingBadge/A-16px.png 'A')](https://sonarcloud.io/project/issues?id=apache_incubator-iotdb&pullRequest=4033&resolved=false&types=VULNERABILITY) [0 Vulnerabilities](https://sonarcloud.io/project/issues?id=apache_incubator-iotdb&pullRequest=4033&resolved=false&types=VULNERABILITY)  
   [![Security Hotspot](https://sonarsource.github.io/sonarcloud-github-static-resources/v2/common/security_hotspot-16px.png 'Security Hotspot')](https://sonarcloud.io/project/security_hotspots?id=apache_incubator-iotdb&pullRequest=4033&resolved=false&types=SECURITY_HOTSPOT) [![A](https://sonarsource.github.io/sonarcloud-github-static-resources/v2/checks/RatingBadge/A-16px.png 'A')](https://sonarcloud.io/project/security_hotspots?id=apache_incubator-iotdb&pullRequest=4033&resolved=false&types=SECURITY_HOTSPOT) [0 Security Hotspots](https://sonarcloud.io/project/security_hotspots?id=apache_incubator-iotdb&pullRequest=4033&resolved=false&types=SECURITY_HOTSPOT)  
   [![Code Smell](https://sonarsource.github.io/sonarcloud-github-static-resources/v2/common/code_smell-16px.png 'Code Smell')](https://sonarcloud.io/project/issues?id=apache_incubator-iotdb&pullRequest=4033&resolved=false&types=CODE_SMELL) [![A](https://sonarsource.github.io/sonarcloud-github-static-resources/v2/checks/RatingBadge/A-16px.png 'A')](https://sonarcloud.io/project/issues?id=apache_incubator-iotdb&pullRequest=4033&resolved=false&types=CODE_SMELL) [5 Code Smells](https://sonarcloud.io/project/issues?id=apache_incubator-iotdb&pullRequest=4033&resolved=false&types=CODE_SMELL)
   
   [![57.0%](https://sonarsource.github.io/sonarcloud-github-static-resources/v2/checks/CoverageChart/50-16px.png '57.0%')](https://sonarcloud.io/component_measures?id=apache_incubator-iotdb&pullRequest=4033&metric=new_coverage&view=list) [57.0% Coverage](https://sonarcloud.io/component_measures?id=apache_incubator-iotdb&pullRequest=4033&metric=new_coverage&view=list)  
   [![0.0%](https://sonarsource.github.io/sonarcloud-github-static-resources/v2/checks/Duplications/3-16px.png '0.0%')](https://sonarcloud.io/component_measures?id=apache_incubator-iotdb&pullRequest=4033&metric=new_duplicated_lines_density&view=list) [0.0% Duplication](https://sonarcloud.io/component_measures?id=apache_incubator-iotdb&pullRequest=4033&metric=new_duplicated_lines_density&view=list)
   
   


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: reviews-unsubscribe@iotdb.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org



[GitHub] [iotdb] SteveYurongSu commented on a change in pull request #4033: [IOTDB-1739] Constant timeseries generating functions

Posted by GitBox <gi...@apache.org>.
SteveYurongSu commented on a change in pull request #4033:
URL: https://github.com/apache/iotdb/pull/4033#discussion_r716166121



##########
File path: docs/zh/UserGuide/IoTDB-SQL-Language/DML-Data-Manipulation-Language.md
##########
@@ -432,6 +432,43 @@ Total line number = 5
 It costs 0.014s
 ```
 
+#### 常序列生成函数
+
+常序列生成函数用于生成所有数据点的值都相同的时间序列。
+
+常序列生成函数接受一个或者多个时间序列输入,其输出的数据点的时间戳集合是这些输入序列时间戳集合的并集。
+
+目前 IoTDB 支持如下常序列生成函数:
+
+| 函数名 | 输入序列类型                                    | 必要的属性参数                                               | 输出序列类型               | 功能描述                                                     |

Review comment:
       Good idea!




-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: reviews-unsubscribe@iotdb.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org



[GitHub] [iotdb] ericpai commented on pull request #4033: [IOTDB-1739] Constant timeseries generating functions

Posted by GitBox <gi...@apache.org>.
ericpai commented on pull request #4033:
URL: https://github.com/apache/iotdb/pull/4033#issuecomment-927252578


   > @ericpai Take a look? 😁
   
   Sure~


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: reviews-unsubscribe@iotdb.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org



[GitHub] [iotdb] sonarcloud[bot] commented on pull request #4033: [IOTDB-1739] Constant timeseries generating functions

Posted by GitBox <gi...@apache.org>.
sonarcloud[bot] commented on pull request #4033:
URL: https://github.com/apache/iotdb/pull/4033#issuecomment-927279075


   SonarCloud Quality Gate failed.&nbsp; &nbsp; ![Quality Gate failed](https://sonarsource.github.io/sonarcloud-github-static-resources/v2/checks/QualityGateBadge/failed-16px.png 'Quality Gate failed')
   
   [![Bug](https://sonarsource.github.io/sonarcloud-github-static-resources/v2/common/bug-16px.png 'Bug')](https://sonarcloud.io/project/issues?id=apache_incubator-iotdb&pullRequest=4033&resolved=false&types=BUG) [![A](https://sonarsource.github.io/sonarcloud-github-static-resources/v2/checks/RatingBadge/A-16px.png 'A')](https://sonarcloud.io/project/issues?id=apache_incubator-iotdb&pullRequest=4033&resolved=false&types=BUG) [0 Bugs](https://sonarcloud.io/project/issues?id=apache_incubator-iotdb&pullRequest=4033&resolved=false&types=BUG)  
   [![Vulnerability](https://sonarsource.github.io/sonarcloud-github-static-resources/v2/common/vulnerability-16px.png 'Vulnerability')](https://sonarcloud.io/project/issues?id=apache_incubator-iotdb&pullRequest=4033&resolved=false&types=VULNERABILITY) [![A](https://sonarsource.github.io/sonarcloud-github-static-resources/v2/checks/RatingBadge/A-16px.png 'A')](https://sonarcloud.io/project/issues?id=apache_incubator-iotdb&pullRequest=4033&resolved=false&types=VULNERABILITY) [0 Vulnerabilities](https://sonarcloud.io/project/issues?id=apache_incubator-iotdb&pullRequest=4033&resolved=false&types=VULNERABILITY)  
   [![Security Hotspot](https://sonarsource.github.io/sonarcloud-github-static-resources/v2/common/security_hotspot-16px.png 'Security Hotspot')](https://sonarcloud.io/project/security_hotspots?id=apache_incubator-iotdb&pullRequest=4033&resolved=false&types=SECURITY_HOTSPOT) [![A](https://sonarsource.github.io/sonarcloud-github-static-resources/v2/checks/RatingBadge/A-16px.png 'A')](https://sonarcloud.io/project/security_hotspots?id=apache_incubator-iotdb&pullRequest=4033&resolved=false&types=SECURITY_HOTSPOT) [0 Security Hotspots](https://sonarcloud.io/project/security_hotspots?id=apache_incubator-iotdb&pullRequest=4033&resolved=false&types=SECURITY_HOTSPOT)  
   [![Code Smell](https://sonarsource.github.io/sonarcloud-github-static-resources/v2/common/code_smell-16px.png 'Code Smell')](https://sonarcloud.io/project/issues?id=apache_incubator-iotdb&pullRequest=4033&resolved=false&types=CODE_SMELL) [![A](https://sonarsource.github.io/sonarcloud-github-static-resources/v2/checks/RatingBadge/A-16px.png 'A')](https://sonarcloud.io/project/issues?id=apache_incubator-iotdb&pullRequest=4033&resolved=false&types=CODE_SMELL) [5 Code Smells](https://sonarcloud.io/project/issues?id=apache_incubator-iotdb&pullRequest=4033&resolved=false&types=CODE_SMELL)
   
   [![57.0%](https://sonarsource.github.io/sonarcloud-github-static-resources/v2/checks/CoverageChart/50-16px.png '57.0%')](https://sonarcloud.io/component_measures?id=apache_incubator-iotdb&pullRequest=4033&metric=new_coverage&view=list) [57.0% Coverage](https://sonarcloud.io/component_measures?id=apache_incubator-iotdb&pullRequest=4033&metric=new_coverage&view=list)  
   [![0.0%](https://sonarsource.github.io/sonarcloud-github-static-resources/v2/checks/Duplications/3-16px.png '0.0%')](https://sonarcloud.io/component_measures?id=apache_incubator-iotdb&pullRequest=4033&metric=new_duplicated_lines_density&view=list) [0.0% Duplication](https://sonarcloud.io/component_measures?id=apache_incubator-iotdb&pullRequest=4033&metric=new_duplicated_lines_density&view=list)
   
   


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: reviews-unsubscribe@iotdb.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org



[GitHub] [iotdb] sonarcloud[bot] removed a comment on pull request #4033: [IOTDB-1739] Constant timeseries generating functions

Posted by GitBox <gi...@apache.org>.
sonarcloud[bot] removed a comment on pull request #4033:
URL: https://github.com/apache/iotdb/pull/4033#issuecomment-927279075


   SonarCloud Quality Gate failed.&nbsp; &nbsp; ![Quality Gate failed](https://sonarsource.github.io/sonarcloud-github-static-resources/v2/checks/QualityGateBadge/failed-16px.png 'Quality Gate failed')
   
   [![Bug](https://sonarsource.github.io/sonarcloud-github-static-resources/v2/common/bug-16px.png 'Bug')](https://sonarcloud.io/project/issues?id=apache_incubator-iotdb&pullRequest=4033&resolved=false&types=BUG) [![A](https://sonarsource.github.io/sonarcloud-github-static-resources/v2/checks/RatingBadge/A-16px.png 'A')](https://sonarcloud.io/project/issues?id=apache_incubator-iotdb&pullRequest=4033&resolved=false&types=BUG) [0 Bugs](https://sonarcloud.io/project/issues?id=apache_incubator-iotdb&pullRequest=4033&resolved=false&types=BUG)  
   [![Vulnerability](https://sonarsource.github.io/sonarcloud-github-static-resources/v2/common/vulnerability-16px.png 'Vulnerability')](https://sonarcloud.io/project/issues?id=apache_incubator-iotdb&pullRequest=4033&resolved=false&types=VULNERABILITY) [![A](https://sonarsource.github.io/sonarcloud-github-static-resources/v2/checks/RatingBadge/A-16px.png 'A')](https://sonarcloud.io/project/issues?id=apache_incubator-iotdb&pullRequest=4033&resolved=false&types=VULNERABILITY) [0 Vulnerabilities](https://sonarcloud.io/project/issues?id=apache_incubator-iotdb&pullRequest=4033&resolved=false&types=VULNERABILITY)  
   [![Security Hotspot](https://sonarsource.github.io/sonarcloud-github-static-resources/v2/common/security_hotspot-16px.png 'Security Hotspot')](https://sonarcloud.io/project/security_hotspots?id=apache_incubator-iotdb&pullRequest=4033&resolved=false&types=SECURITY_HOTSPOT) [![A](https://sonarsource.github.io/sonarcloud-github-static-resources/v2/checks/RatingBadge/A-16px.png 'A')](https://sonarcloud.io/project/security_hotspots?id=apache_incubator-iotdb&pullRequest=4033&resolved=false&types=SECURITY_HOTSPOT) [0 Security Hotspots](https://sonarcloud.io/project/security_hotspots?id=apache_incubator-iotdb&pullRequest=4033&resolved=false&types=SECURITY_HOTSPOT)  
   [![Code Smell](https://sonarsource.github.io/sonarcloud-github-static-resources/v2/common/code_smell-16px.png 'Code Smell')](https://sonarcloud.io/project/issues?id=apache_incubator-iotdb&pullRequest=4033&resolved=false&types=CODE_SMELL) [![A](https://sonarsource.github.io/sonarcloud-github-static-resources/v2/checks/RatingBadge/A-16px.png 'A')](https://sonarcloud.io/project/issues?id=apache_incubator-iotdb&pullRequest=4033&resolved=false&types=CODE_SMELL) [5 Code Smells](https://sonarcloud.io/project/issues?id=apache_incubator-iotdb&pullRequest=4033&resolved=false&types=CODE_SMELL)
   
   [![57.0%](https://sonarsource.github.io/sonarcloud-github-static-resources/v2/checks/CoverageChart/50-16px.png '57.0%')](https://sonarcloud.io/component_measures?id=apache_incubator-iotdb&pullRequest=4033&metric=new_coverage&view=list) [57.0% Coverage](https://sonarcloud.io/component_measures?id=apache_incubator-iotdb&pullRequest=4033&metric=new_coverage&view=list)  
   [![0.0%](https://sonarsource.github.io/sonarcloud-github-static-resources/v2/checks/Duplications/3-16px.png '0.0%')](https://sonarcloud.io/component_measures?id=apache_incubator-iotdb&pullRequest=4033&metric=new_duplicated_lines_density&view=list) [0.0% Duplication](https://sonarcloud.io/component_measures?id=apache_incubator-iotdb&pullRequest=4033&metric=new_duplicated_lines_density&view=list)
   
   


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: reviews-unsubscribe@iotdb.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org



[GitHub] [iotdb] SteveYurongSu commented on pull request #4033: [IOTDB-1739] Constant timeseries generating functions

Posted by GitBox <gi...@apache.org>.
SteveYurongSu commented on pull request #4033:
URL: https://github.com/apache/iotdb/pull/4033#issuecomment-927270982


   @ericpai Updated~ 😆😆😆


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: reviews-unsubscribe@iotdb.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org



[GitHub] [iotdb] ericpai edited a comment on pull request #4033: [IOTDB-1739] Constant timeseries generating functions

Posted by GitBox <gi...@apache.org>.
ericpai edited a comment on pull request #4033:
URL: https://github.com/apache/iotdb/pull/4033#issuecomment-927450310


   > @ericpai Please take a look again :D
   
   The code is OK now. Here I have another one question about the design.
   
   _Does the result of wildcard path query of `const` function really satisfy user's actual requirement?_ 
   
      For example there're 2 timeseries root.sg.d1.s1, root.sg.d1.s2. And we have a query `SELECT const(*, type='int32', value='10') FROM root.sg.d1`.  In our logic, the function will be separated into two columns `const(root.sg.d1.s1, type='int32', 'value'='10')` and `const(root.sg.d1.s2, type='int32', 'value'='10')` right? But maybe a user wants to a single column with the union timestamps of all the measurements of `root.sg.d1`.  Moreover the user can't specify every timeseries in the parameters as there're so many ones.


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: reviews-unsubscribe@iotdb.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org



[GitHub] [iotdb] ericpai commented on a change in pull request #4033: [IOTDB-1739] Constant timeseries generating functions

Posted by GitBox <gi...@apache.org>.
ericpai commented on a change in pull request #4033:
URL: https://github.com/apache/iotdb/pull/4033#discussion_r716176449



##########
File path: docs/UserGuide/IoTDB-SQL-Language/DML-Data-Manipulation-Language.md
##########
@@ -423,6 +423,43 @@ Total line number = 5
 It costs 0.014s
 ```
 
+#### Constant Timeseries Generating Functions
+
+The constant timeseries generating function is used to generate a timeseries in which the values of all data points are the same.
+
+The constant timeseries generating function accepts one or more timeseries inputs, and the timestamp set of the output data points is the union of the timestamp sets of the input timeseries.
+
+Currently, IoTDB supports the following constant timeseries generating functions:
+
+| Function Name | Required Attributes                                          | Output Series Data Type                      | Description                                                  |
+| ------------- | ------------------------------------------------------------ | -------------------------------------------- | ------------------------------------------------------------ |
+| CONST         | `value`: the value of the output data point <br />`type`: the type of the output data point, it can only be INT32 / INT64 / FLOAT / DOUBLE / BOOLEAN / TEXT | Determined by the required attribute  `type` | Output the user-specified constant timeseries according to the  attributes `value` and `type`. |
+| PI            | None                                                         | DOUBLE                                       | Data point value: a double value that is closer than any other to `pi`, the ratio of the circumference of a circle to its diameter. |

Review comment:
       This statement `a double value that is closer than any other to` is a little tricky and hard to understand. How about 
   `a double value of `pi`, the ratio of the circumference of a circle to its diameter, with errors less than 1e-6`?
   And I think we can use the letter π instead of `pi` in the description,  everyone may know this letter :)




-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: reviews-unsubscribe@iotdb.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org



[GitHub] [iotdb] SteveYurongSu commented on pull request #4033: [IOTDB-1739] Constant timeseries generating functions

Posted by GitBox <gi...@apache.org>.
SteveYurongSu commented on pull request #4033:
URL: https://github.com/apache/iotdb/pull/4033#issuecomment-927657226


   @ericpai
   
   > I will watch out the real requirements of our users. if I'm certain about some usages, I will discuss in that JIRA thread.
    
   This issue has been mentioned by many users, it's time to start the discussion! Looking forwards to your ideas! 
   
   > @SteveYurongSu BTW, I'm glad to join the following discussions about UDF design, bugfix and code reviews. If anything is kicked off, it's better to send a mail or wechat group message to let me get the notice. Or I may lack of some context :D
   
   Sure! Let's make the UDF function better!


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: reviews-unsubscribe@iotdb.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org



[GitHub] [iotdb] SteveYurongSu commented on a change in pull request #4033: [IOTDB-1739] Constant timeseries generating functions

Posted by GitBox <gi...@apache.org>.
SteveYurongSu commented on a change in pull request #4033:
URL: https://github.com/apache/iotdb/pull/4033#discussion_r716169366



##########
File path: server/src/test/java/org/apache/iotdb/db/integration/IoTDBUDTFBuiltinFunctionIT.java
##########
@@ -295,4 +295,39 @@ public void testVariationTrendCalculationFunction(String functionName, double ex
       fail(throwable.getMessage());
     }
   }
+
+  @Test
+  public void testConstantTimeSeriesGeneratingFunctions() {
+    String[] expected = {
+      "0, 0.0, 0.0, 1024, 3.141592653589793, 2.718281828459045, ",
+      "2, 1.0, null, 1024, 3.141592653589793, 2.718281828459045, ",
+      "4, 2.0, null, 1024, 3.141592653589793, 2.718281828459045, ",
+      "6, null, 3.0, null, null, 2.718281828459045, ",
+      "8, null, 4.0, null, null, 2.718281828459045, ",
+    };
+
+    try (Connection connection =
+            DriverManager.getConnection(
+                Config.IOTDB_URL_PREFIX + "127.0.0.1:6667/", "root", "root");
+        Statement statement = connection.createStatement();
+        ResultSet resultSet =
+            statement.executeQuery(
+                "select s7, s8, const(s7, 'value'='1024', 'type'='INT64'), pi(s7, s7), e(s7, s8, s7, s8) from root.sg.d1")) {
+
+      assertEquals(1 + 5, resultSet.getMetaData().getColumnCount());
+
+      for (int i = 0; i < INSERTION_SQLS.length; ++i) {
+        resultSet.next();
+        StringBuilder actual = new StringBuilder();
+        for (int j = 0; j < 1 + 5; ++j) {
+          actual.append(resultSet.getString(1 + j)).append(", ");
+        }
+        assertEquals(expected[i], actual.toString());
+      }
+
+      assertFalse(resultSet.next());
+    } catch (SQLException throwable) {
+      fail(throwable.getMessage());
+    }
+  }

Review comment:
       Thanks for your review!
   
   > May add some more test cases.
   > 1. Invalid queries to test the validate rule.
   
   I will add tests to test the validation rule.
   
   > 2. Wildcard paths as the UDF parameter.
   > 3. Invalid paths as the UDF parameter.
   
   These 2 are well tested in other ITs, so I think those tests are not necessary here.
   
   > And I'm not very sure whether the nested function query is available currently. If so, is this working well in complicated queries lacking IT cases to prove, or the following queries are not allowed by design?
   
   The nested expression (#4012) is available now! :D
   
   Please see the user docs for more detail: https://github.com/apache/iotdb/blob/master/docs/UserGuide/IoTDB-SQL-Language/DML-Data-Manipulation-Language.md#nested-query-subquery
   
   Functions of all kinds (multi inputs, single inputs, row-by-row iteration, window-by-window iteration, etc), arithmetic operators, and time series are proved to work well in nested expression by several ITs. The code coverage of the expression framework is about 90%. (See https://github.com/apache/iotdb/blob/master/server/src/test/java/org/apache/iotdb/db/integration/IoTDBNestedQueryIT.java)
   
   So I think we don't need to test all functions in nested expressions. The only thing we need to do is to check the basic behavior of the function, which will simplify our work.
   




-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: reviews-unsubscribe@iotdb.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org



[GitHub] [iotdb] SteveYurongSu commented on pull request #4033: [IOTDB-1739] Constant timeseries generating functions

Posted by GitBox <gi...@apache.org>.
SteveYurongSu commented on pull request #4033:
URL: https://github.com/apache/iotdb/pull/4033#issuecomment-927251057


   @ericpai Take a look? 😁


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: reviews-unsubscribe@iotdb.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org



[GitHub] [iotdb] sonarcloud[bot] commented on pull request #4033: [IOTDB-1739] Constant timeseries generating functions

Posted by GitBox <gi...@apache.org>.
sonarcloud[bot] commented on pull request #4033:
URL: https://github.com/apache/iotdb/pull/4033#issuecomment-927260076


   SonarCloud Quality Gate failed.&nbsp; &nbsp; ![Quality Gate failed](https://sonarsource.github.io/sonarcloud-github-static-resources/v2/checks/QualityGateBadge/failed-16px.png 'Quality Gate failed')
   
   [![Bug](https://sonarsource.github.io/sonarcloud-github-static-resources/v2/common/bug-16px.png 'Bug')](https://sonarcloud.io/project/issues?id=apache_incubator-iotdb&pullRequest=4033&resolved=false&types=BUG) [![A](https://sonarsource.github.io/sonarcloud-github-static-resources/v2/checks/RatingBadge/A-16px.png 'A')](https://sonarcloud.io/project/issues?id=apache_incubator-iotdb&pullRequest=4033&resolved=false&types=BUG) [0 Bugs](https://sonarcloud.io/project/issues?id=apache_incubator-iotdb&pullRequest=4033&resolved=false&types=BUG)  
   [![Vulnerability](https://sonarsource.github.io/sonarcloud-github-static-resources/v2/common/vulnerability-16px.png 'Vulnerability')](https://sonarcloud.io/project/issues?id=apache_incubator-iotdb&pullRequest=4033&resolved=false&types=VULNERABILITY) [![A](https://sonarsource.github.io/sonarcloud-github-static-resources/v2/checks/RatingBadge/A-16px.png 'A')](https://sonarcloud.io/project/issues?id=apache_incubator-iotdb&pullRequest=4033&resolved=false&types=VULNERABILITY) [0 Vulnerabilities](https://sonarcloud.io/project/issues?id=apache_incubator-iotdb&pullRequest=4033&resolved=false&types=VULNERABILITY)  
   [![Security Hotspot](https://sonarsource.github.io/sonarcloud-github-static-resources/v2/common/security_hotspot-16px.png 'Security Hotspot')](https://sonarcloud.io/project/security_hotspots?id=apache_incubator-iotdb&pullRequest=4033&resolved=false&types=SECURITY_HOTSPOT) [![A](https://sonarsource.github.io/sonarcloud-github-static-resources/v2/checks/RatingBadge/A-16px.png 'A')](https://sonarcloud.io/project/security_hotspots?id=apache_incubator-iotdb&pullRequest=4033&resolved=false&types=SECURITY_HOTSPOT) [0 Security Hotspots](https://sonarcloud.io/project/security_hotspots?id=apache_incubator-iotdb&pullRequest=4033&resolved=false&types=SECURITY_HOTSPOT)  
   [![Code Smell](https://sonarsource.github.io/sonarcloud-github-static-resources/v2/common/code_smell-16px.png 'Code Smell')](https://sonarcloud.io/project/issues?id=apache_incubator-iotdb&pullRequest=4033&resolved=false&types=CODE_SMELL) [![A](https://sonarsource.github.io/sonarcloud-github-static-resources/v2/checks/RatingBadge/A-16px.png 'A')](https://sonarcloud.io/project/issues?id=apache_incubator-iotdb&pullRequest=4033&resolved=false&types=CODE_SMELL) [5 Code Smells](https://sonarcloud.io/project/issues?id=apache_incubator-iotdb&pullRequest=4033&resolved=false&types=CODE_SMELL)
   
   [![57.0%](https://sonarsource.github.io/sonarcloud-github-static-resources/v2/checks/CoverageChart/50-16px.png '57.0%')](https://sonarcloud.io/component_measures?id=apache_incubator-iotdb&pullRequest=4033&metric=new_coverage&view=list) [57.0% Coverage](https://sonarcloud.io/component_measures?id=apache_incubator-iotdb&pullRequest=4033&metric=new_coverage&view=list)  
   [![0.0%](https://sonarsource.github.io/sonarcloud-github-static-resources/v2/checks/Duplications/3-16px.png '0.0%')](https://sonarcloud.io/component_measures?id=apache_incubator-iotdb&pullRequest=4033&metric=new_duplicated_lines_density&view=list) [0.0% Duplication](https://sonarcloud.io/component_measures?id=apache_incubator-iotdb&pullRequest=4033&metric=new_duplicated_lines_density&view=list)
   
   


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: reviews-unsubscribe@iotdb.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org



[GitHub] [iotdb] ericpai commented on a change in pull request #4033: [IOTDB-1739] Constant timeseries generating functions

Posted by GitBox <gi...@apache.org>.
ericpai commented on a change in pull request #4033:
URL: https://github.com/apache/iotdb/pull/4033#discussion_r716170007



##########
File path: server/src/test/java/org/apache/iotdb/db/integration/IoTDBUDTFBuiltinFunctionIT.java
##########
@@ -295,4 +295,39 @@ public void testVariationTrendCalculationFunction(String functionName, double ex
       fail(throwable.getMessage());
     }
   }
+
+  @Test
+  public void testConstantTimeSeriesGeneratingFunctions() {
+    String[] expected = {
+      "0, 0.0, 0.0, 1024, 3.141592653589793, 2.718281828459045, ",
+      "2, 1.0, null, 1024, 3.141592653589793, 2.718281828459045, ",
+      "4, 2.0, null, 1024, 3.141592653589793, 2.718281828459045, ",
+      "6, null, 3.0, null, null, 2.718281828459045, ",
+      "8, null, 4.0, null, null, 2.718281828459045, ",
+    };
+
+    try (Connection connection =
+            DriverManager.getConnection(
+                Config.IOTDB_URL_PREFIX + "127.0.0.1:6667/", "root", "root");
+        Statement statement = connection.createStatement();
+        ResultSet resultSet =
+            statement.executeQuery(
+                "select s7, s8, const(s7, 'value'='1024', 'type'='INT64'), pi(s7, s7), e(s7, s8, s7, s8) from root.sg.d1")) {
+
+      assertEquals(1 + 5, resultSet.getMetaData().getColumnCount());
+
+      for (int i = 0; i < INSERTION_SQLS.length; ++i) {
+        resultSet.next();
+        StringBuilder actual = new StringBuilder();
+        for (int j = 0; j < 1 + 5; ++j) {
+          actual.append(resultSet.getString(1 + j)).append(", ");
+        }
+        assertEquals(expected[i], actual.toString());
+      }
+
+      assertFalse(resultSet.next());
+    } catch (SQLException throwable) {
+      fail(throwable.getMessage());
+    }
+  }

Review comment:
       > So I think we don't need to test all functions in nested expressions. The only thing we need to do is to check the basic behavior of the function, which will simplify our work.
   Agreed.




-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: reviews-unsubscribe@iotdb.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org



[GitHub] [iotdb] SteveYurongSu commented on pull request #4033: [IOTDB-1739] Constant timeseries generating functions

Posted by GitBox <gi...@apache.org>.
SteveYurongSu commented on pull request #4033:
URL: https://github.com/apache/iotdb/pull/4033#issuecomment-927501849


   @ericpai 
   
   > For example there're 2 timeseries root.sg.d1.s1, root.sg.d1.s2. And we have a query `SELECT const(*, type='int32', value='10') FROM root.sg.d1`. In our logic, the function will be separated into two columns `const(root.sg.d1.s1, type='int32', 'value'='10')` and `const(root.sg.d1.s2, type='int32', 'value'='10')` right?
   
   You are right.
   
   > _Does the result of wildcard path query of `const` function really satisfy user's actual requirement?_
   > 
   >  Maybe a user wants a single column with the union timestamps of all the measurements of `root.sg.d1`. Moreover the user can't specify every timeseries in the parameters as there're so many ones.
   
   I understand your concern, and I've been aware of the issue for a long time.
   
   I think this is a semantic issue of the * symbol in the UDF parameters, not just a semantic issue of the `const` function.
   
   In fact, we already have a JIRA to record the issue, we can move the discussion on it: 
   
   [IOTDB-1397] https://issues.apache.org/jira/browse/IOTDB-1397
   
   Welcome to re-define (and re-implement :D) the semantic of the * symbol in the UDF parameters!
   


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: reviews-unsubscribe@iotdb.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org



[GitHub] [iotdb] sonarcloud[bot] commented on pull request #4033: [IOTDB-1739] Constant timeseries generating functions

Posted by GitBox <gi...@apache.org>.
sonarcloud[bot] commented on pull request #4033:
URL: https://github.com/apache/iotdb/pull/4033#issuecomment-927229928


   SonarCloud Quality Gate failed.&nbsp; &nbsp; ![Quality Gate failed](https://sonarsource.github.io/sonarcloud-github-static-resources/v2/checks/QualityGateBadge/failed-16px.png 'Quality Gate failed')
   
   [![Bug](https://sonarsource.github.io/sonarcloud-github-static-resources/v2/common/bug-16px.png 'Bug')](https://sonarcloud.io/project/issues?id=apache_incubator-iotdb&pullRequest=4033&resolved=false&types=BUG) [![A](https://sonarsource.github.io/sonarcloud-github-static-resources/v2/checks/RatingBadge/A-16px.png 'A')](https://sonarcloud.io/project/issues?id=apache_incubator-iotdb&pullRequest=4033&resolved=false&types=BUG) [0 Bugs](https://sonarcloud.io/project/issues?id=apache_incubator-iotdb&pullRequest=4033&resolved=false&types=BUG)  
   [![Vulnerability](https://sonarsource.github.io/sonarcloud-github-static-resources/v2/common/vulnerability-16px.png 'Vulnerability')](https://sonarcloud.io/project/issues?id=apache_incubator-iotdb&pullRequest=4033&resolved=false&types=VULNERABILITY) [![A](https://sonarsource.github.io/sonarcloud-github-static-resources/v2/checks/RatingBadge/A-16px.png 'A')](https://sonarcloud.io/project/issues?id=apache_incubator-iotdb&pullRequest=4033&resolved=false&types=VULNERABILITY) [0 Vulnerabilities](https://sonarcloud.io/project/issues?id=apache_incubator-iotdb&pullRequest=4033&resolved=false&types=VULNERABILITY)  
   [![Security Hotspot](https://sonarsource.github.io/sonarcloud-github-static-resources/v2/common/security_hotspot-16px.png 'Security Hotspot')](https://sonarcloud.io/project/security_hotspots?id=apache_incubator-iotdb&pullRequest=4033&resolved=false&types=SECURITY_HOTSPOT) [![A](https://sonarsource.github.io/sonarcloud-github-static-resources/v2/checks/RatingBadge/A-16px.png 'A')](https://sonarcloud.io/project/security_hotspots?id=apache_incubator-iotdb&pullRequest=4033&resolved=false&types=SECURITY_HOTSPOT) [0 Security Hotspots](https://sonarcloud.io/project/security_hotspots?id=apache_incubator-iotdb&pullRequest=4033&resolved=false&types=SECURITY_HOTSPOT)  
   [![Code Smell](https://sonarsource.github.io/sonarcloud-github-static-resources/v2/common/code_smell-16px.png 'Code Smell')](https://sonarcloud.io/project/issues?id=apache_incubator-iotdb&pullRequest=4033&resolved=false&types=CODE_SMELL) [![A](https://sonarsource.github.io/sonarcloud-github-static-resources/v2/checks/RatingBadge/A-16px.png 'A')](https://sonarcloud.io/project/issues?id=apache_incubator-iotdb&pullRequest=4033&resolved=false&types=CODE_SMELL) [5 Code Smells](https://sonarcloud.io/project/issues?id=apache_incubator-iotdb&pullRequest=4033&resolved=false&types=CODE_SMELL)
   
   [![57.0%](https://sonarsource.github.io/sonarcloud-github-static-resources/v2/checks/CoverageChart/50-16px.png '57.0%')](https://sonarcloud.io/component_measures?id=apache_incubator-iotdb&pullRequest=4033&metric=new_coverage&view=list) [57.0% Coverage](https://sonarcloud.io/component_measures?id=apache_incubator-iotdb&pullRequest=4033&metric=new_coverage&view=list)  
   [![0.0%](https://sonarsource.github.io/sonarcloud-github-static-resources/v2/checks/Duplications/3-16px.png '0.0%')](https://sonarcloud.io/component_measures?id=apache_incubator-iotdb&pullRequest=4033&metric=new_duplicated_lines_density&view=list) [0.0% Duplication](https://sonarcloud.io/component_measures?id=apache_incubator-iotdb&pullRequest=4033&metric=new_duplicated_lines_density&view=list)
   
   


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: reviews-unsubscribe@iotdb.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org



[GitHub] [iotdb] ericpai commented on pull request #4033: [IOTDB-1739] Constant timeseries generating functions

Posted by GitBox <gi...@apache.org>.
ericpai commented on pull request #4033:
URL: https://github.com/apache/iotdb/pull/4033#issuecomment-927503066


   > @ericpai
   > 
   > > For example there're 2 timeseries root.sg.d1.s1, root.sg.d1.s2. And we have a query `SELECT const(*, type='int32', value='10') FROM root.sg.d1`. In our logic, the function will be separated into two columns `const(root.sg.d1.s1, type='int32', 'value'='10')` and `const(root.sg.d1.s2, type='int32', 'value'='10')` right?
   > 
   > You are right.
   > 
   > > _Does the result of wildcard path query of `const` function really satisfy user's actual requirement?_
   > > Maybe a user wants a single column with the union timestamps of all the measurements of `root.sg.d1`. Moreover the user can't specify every timeseries in the parameters as there're so many ones.
   > 
   > I understand your concern, and I've been aware of the issue for a long time.
   > 
   > I think this is a semantic issue of the * symbol in the UDF parameters, not just a semantic issue of the `const` function.
   > 
   > In fact, we already have a JIRA to record the issue, we can move the discussion on it:
   > 
   > [[IOTDB-1397](https://issues.apache.org/jira/browse/IOTDB-1397)] https://issues.apache.org/jira/browse/IOTDB-1397
   > 
   > Welcome to re-define (and re-implement :D) the semantic of the * symbol in the UDF parameters!
   
   Yes, the wildcard in function parameter should be more clear and closer to our user business scenarios. I will watch out the real requirements of our users. if I'm certain about some usages, I will discuss in that JIRA thread.
   
   I have approved this PR.


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: reviews-unsubscribe@iotdb.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org



[GitHub] [iotdb] ericpai commented on a change in pull request #4033: [IOTDB-1739] Constant timeseries generating functions

Posted by GitBox <gi...@apache.org>.
ericpai commented on a change in pull request #4033:
URL: https://github.com/apache/iotdb/pull/4033#discussion_r716170007



##########
File path: server/src/test/java/org/apache/iotdb/db/integration/IoTDBUDTFBuiltinFunctionIT.java
##########
@@ -295,4 +295,39 @@ public void testVariationTrendCalculationFunction(String functionName, double ex
       fail(throwable.getMessage());
     }
   }
+
+  @Test
+  public void testConstantTimeSeriesGeneratingFunctions() {
+    String[] expected = {
+      "0, 0.0, 0.0, 1024, 3.141592653589793, 2.718281828459045, ",
+      "2, 1.0, null, 1024, 3.141592653589793, 2.718281828459045, ",
+      "4, 2.0, null, 1024, 3.141592653589793, 2.718281828459045, ",
+      "6, null, 3.0, null, null, 2.718281828459045, ",
+      "8, null, 4.0, null, null, 2.718281828459045, ",
+    };
+
+    try (Connection connection =
+            DriverManager.getConnection(
+                Config.IOTDB_URL_PREFIX + "127.0.0.1:6667/", "root", "root");
+        Statement statement = connection.createStatement();
+        ResultSet resultSet =
+            statement.executeQuery(
+                "select s7, s8, const(s7, 'value'='1024', 'type'='INT64'), pi(s7, s7), e(s7, s8, s7, s8) from root.sg.d1")) {
+
+      assertEquals(1 + 5, resultSet.getMetaData().getColumnCount());
+
+      for (int i = 0; i < INSERTION_SQLS.length; ++i) {
+        resultSet.next();
+        StringBuilder actual = new StringBuilder();
+        for (int j = 0; j < 1 + 5; ++j) {
+          actual.append(resultSet.getString(1 + j)).append(", ");
+        }
+        assertEquals(expected[i], actual.toString());
+      }
+
+      assertFalse(resultSet.next());
+    } catch (SQLException throwable) {
+      fail(throwable.getMessage());
+    }
+  }

Review comment:
       > So I think we don't need to test all functions in nested expressions. The only thing we need to do is to check the basic behavior of the function, which will simplify our work.
   
   Agreed.




-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: reviews-unsubscribe@iotdb.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org



[GitHub] [iotdb] SteveYurongSu commented on a change in pull request #4033: [IOTDB-1739] Constant timeseries generating functions

Posted by GitBox <gi...@apache.org>.
SteveYurongSu commented on a change in pull request #4033:
URL: https://github.com/apache/iotdb/pull/4033#discussion_r716179032



##########
File path: docs/UserGuide/IoTDB-SQL-Language/DML-Data-Manipulation-Language.md
##########
@@ -423,6 +423,43 @@ Total line number = 5
 It costs 0.014s
 ```
 
+#### Constant Timeseries Generating Functions
+
+The constant timeseries generating function is used to generate a timeseries in which the values of all data points are the same.
+
+The constant timeseries generating function accepts one or more timeseries inputs, and the timestamp set of the output data points is the union of the timestamp sets of the input timeseries.
+
+Currently, IoTDB supports the following constant timeseries generating functions:
+
+| Function Name | Required Attributes                                          | Output Series Data Type                      | Description                                                  |
+| ------------- | ------------------------------------------------------------ | -------------------------------------------- | ------------------------------------------------------------ |
+| CONST         | `value`: the value of the output data point <br />`type`: the type of the output data point, it can only be INT32 / INT64 / FLOAT / DOUBLE / BOOLEAN / TEXT | Determined by the required attribute  `type` | Output the user-specified constant timeseries according to the  attributes `value` and `type`. |
+| PI            | None                                                         | DOUBLE                                       | Data point value: a double value that is closer than any other to `pi`, the ratio of the circumference of a circle to its diameter. |

Review comment:
       > a double value that is closer than any other to
   
   Well, I copied the statement from the Java Standard Library... :D
   
   I will modify the statement referring to yours, thanks for your suggestions!




-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: reviews-unsubscribe@iotdb.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org



[GitHub] [iotdb] ericpai commented on a change in pull request #4033: [IOTDB-1739] Constant timeseries generating functions

Posted by GitBox <gi...@apache.org>.
ericpai commented on a change in pull request #4033:
URL: https://github.com/apache/iotdb/pull/4033#discussion_r716161873



##########
File path: server/src/test/java/org/apache/iotdb/db/integration/IoTDBUDTFBuiltinFunctionIT.java
##########
@@ -295,4 +295,39 @@ public void testVariationTrendCalculationFunction(String functionName, double ex
       fail(throwable.getMessage());
     }
   }
+
+  @Test
+  public void testConstantTimeSeriesGeneratingFunctions() {
+    String[] expected = {
+      "0, 0.0, 0.0, 1024, 3.141592653589793, 2.718281828459045, ",
+      "2, 1.0, null, 1024, 3.141592653589793, 2.718281828459045, ",
+      "4, 2.0, null, 1024, 3.141592653589793, 2.718281828459045, ",
+      "6, null, 3.0, null, null, 2.718281828459045, ",
+      "8, null, 4.0, null, null, 2.718281828459045, ",
+    };
+
+    try (Connection connection =
+            DriverManager.getConnection(
+                Config.IOTDB_URL_PREFIX + "127.0.0.1:6667/", "root", "root");
+        Statement statement = connection.createStatement();
+        ResultSet resultSet =
+            statement.executeQuery(
+                "select s7, s8, const(s7, 'value'='1024', 'type'='INT64'), pi(s7, s7), e(s7, s8, s7, s8) from root.sg.d1")) {
+
+      assertEquals(1 + 5, resultSet.getMetaData().getColumnCount());
+
+      for (int i = 0; i < INSERTION_SQLS.length; ++i) {
+        resultSet.next();
+        StringBuilder actual = new StringBuilder();
+        for (int j = 0; j < 1 + 5; ++j) {
+          actual.append(resultSet.getString(1 + j)).append(", ");
+        }
+        assertEquals(expected[i], actual.toString());
+      }
+
+      assertFalse(resultSet.next());
+    } catch (SQLException throwable) {
+      fail(throwable.getMessage());
+    }
+  }

Review comment:
       May add some more test cases.
   1. Invalid queries to test the validate rule.
   2. Wildcard paths as the UDF parameter.
   3. Invalid paths as the UDF parameter.
   
   And I'm not very sure whether the nested function query is available currently. If so, is this working well in complicated queries lacking of IT cases to prove, or the following queries are not allowed by design? 
   
   Such as `SELECT const(avg(s1), 'value'='1024', 'type'='int64')`, `SELECT const(sin(avg(s1)), 'value'='1024', 'type'='int64')` and so on.




-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: reviews-unsubscribe@iotdb.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org



[GitHub] [iotdb] ericpai commented on pull request #4033: [IOTDB-1739] Constant timeseries generating functions

Posted by GitBox <gi...@apache.org>.
ericpai commented on pull request #4033:
URL: https://github.com/apache/iotdb/pull/4033#issuecomment-927450310


   > @ericpai Please take a look again :D
   
   The code is OK now. Here I have another one question about the design.
   
   _Does the result of wildcard path query of `const` function really satisfy user's actual requirement?_ 
   
      For example there're 2 timeseries root.sg.d1.s1, root.sg.d1.s2. And we have a query `SELECT const(*, type='int32', value='10') FROM root.sg.d1`.  In our logic, the function will be separated into two columns `const(root.sg.d1.s1, type='int32', 'value'='10')` and `const(root.sg.d1.s2, type='int32', 'value'='10')` right? But maybe a user want's to a single column with the union timestamps of all the measurements of `root.sg.d1`.  Moreover the user can't specify every timeseries in the parameters as there're so many ones.


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: reviews-unsubscribe@iotdb.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org



[GitHub] [iotdb] SteveYurongSu commented on pull request #4033: [IOTDB-1739] Constant timeseries generating functions

Posted by GitBox <gi...@apache.org>.
SteveYurongSu commented on pull request #4033:
URL: https://github.com/apache/iotdb/pull/4033#issuecomment-927436780


   @ericpai Please take a look again :D


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: reviews-unsubscribe@iotdb.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org



[GitHub] [iotdb] ericpai commented on a change in pull request #4033: [IOTDB-1739] Constant timeseries generating functions

Posted by GitBox <gi...@apache.org>.
ericpai commented on a change in pull request #4033:
URL: https://github.com/apache/iotdb/pull/4033#discussion_r716161873



##########
File path: server/src/test/java/org/apache/iotdb/db/integration/IoTDBUDTFBuiltinFunctionIT.java
##########
@@ -295,4 +295,39 @@ public void testVariationTrendCalculationFunction(String functionName, double ex
       fail(throwable.getMessage());
     }
   }
+
+  @Test
+  public void testConstantTimeSeriesGeneratingFunctions() {
+    String[] expected = {
+      "0, 0.0, 0.0, 1024, 3.141592653589793, 2.718281828459045, ",
+      "2, 1.0, null, 1024, 3.141592653589793, 2.718281828459045, ",
+      "4, 2.0, null, 1024, 3.141592653589793, 2.718281828459045, ",
+      "6, null, 3.0, null, null, 2.718281828459045, ",
+      "8, null, 4.0, null, null, 2.718281828459045, ",
+    };
+
+    try (Connection connection =
+            DriverManager.getConnection(
+                Config.IOTDB_URL_PREFIX + "127.0.0.1:6667/", "root", "root");
+        Statement statement = connection.createStatement();
+        ResultSet resultSet =
+            statement.executeQuery(
+                "select s7, s8, const(s7, 'value'='1024', 'type'='INT64'), pi(s7, s7), e(s7, s8, s7, s8) from root.sg.d1")) {
+
+      assertEquals(1 + 5, resultSet.getMetaData().getColumnCount());
+
+      for (int i = 0; i < INSERTION_SQLS.length; ++i) {
+        resultSet.next();
+        StringBuilder actual = new StringBuilder();
+        for (int j = 0; j < 1 + 5; ++j) {
+          actual.append(resultSet.getString(1 + j)).append(", ");
+        }
+        assertEquals(expected[i], actual.toString());
+      }
+
+      assertFalse(resultSet.next());
+    } catch (SQLException throwable) {
+      fail(throwable.getMessage());
+    }
+  }

Review comment:
       May add some more test cases.
   1. Invalid queries to test the validate rule.
   2. Wildcard paths as the UDF parameter.
   3. Invalid paths as the UDF parameter.
   
   And I'm not very sure whether the nested function query is available currently. If so, is this working well in complicated queries lessing IT cases to prove, or the following queries are not allowed by design? 
   
   Such as `SELECT const(avg(s1), 'value'='1024', 'type'='int64')`, `SELECT const(sin(avg(s1)), 'value'='1024', 'type'='int64')` and so on.

##########
File path: docs/zh/UserGuide/IoTDB-SQL-Language/DML-Data-Manipulation-Language.md
##########
@@ -432,6 +432,43 @@ Total line number = 5
 It costs 0.014s
 ```
 
+#### 常序列生成函数
+
+常序列生成函数用于生成所有数据点的值都相同的时间序列。
+
+常序列生成函数接受一个或者多个时间序列输入,其输出的数据点的时间戳集合是这些输入序列时间戳集合的并集。
+
+目前 IoTDB 支持如下常序列生成函数:
+
+| 函数名 | 输入序列类型                                    | 必要的属性参数                                               | 输出序列类型               | 功能描述                                                     |

Review comment:
       As we only care about the union of the timestamps of each input timeseries, the data type doesn't matter. So the docs can remove the 'Allowed Input Series Data Types' column. What do you think?




-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: reviews-unsubscribe@iotdb.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org



[GitHub] [iotdb] ericpai edited a comment on pull request #4033: [IOTDB-1739] Constant timeseries generating functions

Posted by GitBox <gi...@apache.org>.
ericpai edited a comment on pull request #4033:
URL: https://github.com/apache/iotdb/pull/4033#issuecomment-927450310


   > @ericpai Please take a look again :D
   
   The code is OK now. Here I have another one question about the design.
   
   _Does the result of wildcard path query of `const` function really satisfy user's actual requirement?_ 
   
      For example there're 2 timeseries root.sg.d1.s1, root.sg.d1.s2. And we have a query `SELECT const(*, type='int32', value='10') FROM root.sg.d1`.  In our logic, the function will be separated into two columns `const(root.sg.d1.s1, type='int32', 'value'='10')` and `const(root.sg.d1.s2, type='int32', 'value'='10')` right? But maybe a user wants a single column with the union timestamps of all the measurements of `root.sg.d1`.  Moreover the user can't specify every timeseries in the parameters as there're so many ones.


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: reviews-unsubscribe@iotdb.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org



[GitHub] [iotdb] sonarcloud[bot] commented on pull request #4033: [IOTDB-1739] Constant timeseries generating functions

Posted by GitBox <gi...@apache.org>.
sonarcloud[bot] commented on pull request #4033:
URL: https://github.com/apache/iotdb/pull/4033#issuecomment-927453669


   SonarCloud Quality Gate failed.&nbsp; &nbsp; ![Quality Gate failed](https://sonarsource.github.io/sonarcloud-github-static-resources/v2/checks/QualityGateBadge/failed-16px.png 'Quality Gate failed')
   
   [![Bug](https://sonarsource.github.io/sonarcloud-github-static-resources/v2/common/bug-16px.png 'Bug')](https://sonarcloud.io/project/issues?id=apache_incubator-iotdb&pullRequest=4033&resolved=false&types=BUG) [![A](https://sonarsource.github.io/sonarcloud-github-static-resources/v2/checks/RatingBadge/A-16px.png 'A')](https://sonarcloud.io/project/issues?id=apache_incubator-iotdb&pullRequest=4033&resolved=false&types=BUG) [0 Bugs](https://sonarcloud.io/project/issues?id=apache_incubator-iotdb&pullRequest=4033&resolved=false&types=BUG)  
   [![Vulnerability](https://sonarsource.github.io/sonarcloud-github-static-resources/v2/common/vulnerability-16px.png 'Vulnerability')](https://sonarcloud.io/project/issues?id=apache_incubator-iotdb&pullRequest=4033&resolved=false&types=VULNERABILITY) [![A](https://sonarsource.github.io/sonarcloud-github-static-resources/v2/checks/RatingBadge/A-16px.png 'A')](https://sonarcloud.io/project/issues?id=apache_incubator-iotdb&pullRequest=4033&resolved=false&types=VULNERABILITY) [0 Vulnerabilities](https://sonarcloud.io/project/issues?id=apache_incubator-iotdb&pullRequest=4033&resolved=false&types=VULNERABILITY)  
   [![Security Hotspot](https://sonarsource.github.io/sonarcloud-github-static-resources/v2/common/security_hotspot-16px.png 'Security Hotspot')](https://sonarcloud.io/project/security_hotspots?id=apache_incubator-iotdb&pullRequest=4033&resolved=false&types=SECURITY_HOTSPOT) [![A](https://sonarsource.github.io/sonarcloud-github-static-resources/v2/checks/RatingBadge/A-16px.png 'A')](https://sonarcloud.io/project/security_hotspots?id=apache_incubator-iotdb&pullRequest=4033&resolved=false&types=SECURITY_HOTSPOT) [0 Security Hotspots](https://sonarcloud.io/project/security_hotspots?id=apache_incubator-iotdb&pullRequest=4033&resolved=false&types=SECURITY_HOTSPOT)  
   [![Code Smell](https://sonarsource.github.io/sonarcloud-github-static-resources/v2/common/code_smell-16px.png 'Code Smell')](https://sonarcloud.io/project/issues?id=apache_incubator-iotdb&pullRequest=4033&resolved=false&types=CODE_SMELL) [![A](https://sonarsource.github.io/sonarcloud-github-static-resources/v2/checks/RatingBadge/A-16px.png 'A')](https://sonarcloud.io/project/issues?id=apache_incubator-iotdb&pullRequest=4033&resolved=false&types=CODE_SMELL) [5 Code Smells](https://sonarcloud.io/project/issues?id=apache_incubator-iotdb&pullRequest=4033&resolved=false&types=CODE_SMELL)
   
   [![57.0%](https://sonarsource.github.io/sonarcloud-github-static-resources/v2/checks/CoverageChart/50-16px.png '57.0%')](https://sonarcloud.io/component_measures?id=apache_incubator-iotdb&pullRequest=4033&metric=new_coverage&view=list) [57.0% Coverage](https://sonarcloud.io/component_measures?id=apache_incubator-iotdb&pullRequest=4033&metric=new_coverage&view=list)  
   [![0.0%](https://sonarsource.github.io/sonarcloud-github-static-resources/v2/checks/Duplications/3-16px.png '0.0%')](https://sonarcloud.io/component_measures?id=apache_incubator-iotdb&pullRequest=4033&metric=new_duplicated_lines_density&view=list) [0.0% Duplication](https://sonarcloud.io/component_measures?id=apache_incubator-iotdb&pullRequest=4033&metric=new_duplicated_lines_density&view=list)
   
   


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: reviews-unsubscribe@iotdb.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org