IoTDB 官网:https://iotdb.apache.org/
代码库:https://github.com/apache/iotdb/tree/master
Go语言的代码库:https://github.com/apache/iotdb-client-go
资源库(包含项目文件等):https://github.com/apache/iotdb-bin-resources
快速上手:http://iotdb.apache.org/UserGuide/master/Get%20Started/QuickStart.html
Jira 任务管理:https://issues.apache.org/jira/projects/IOTDB/issues
Wiki 文档管理:https://cwiki.apache.org/confluence/display/IOTDB/Home
邮件列表: https://lists.apache.org/list.html?dev@iotdb.apache.org
每日构建: https://ci-builds.apache.org/job/IoTDB/job/IoTDB-Pipe/job/master/
邮件列表是 Apache 项目进行技术讨论和用户沟通的地方,订阅邮件列表就可以收到邮件了。
订阅方法:用想接收邮件的邮箱向 dev-subscribe@iotdb.apache.org 发一封邮件,主题内容不限,收到回复后,再次向确认地址发一封确认邮件(确认地址比较长,推荐 qq 邮箱)。
其他邮件列表:
所有希望 IoTDB 做的功能或修的 bug,都可以在 Jira 上提 issue
可以选择 issue 类型:bug、improvement、new feature 等。新建的 issue 会自动向邮件列表中同步邮件,之后的讨论可在 jira 上留言,也可以在邮件列表进行。当问题解决后请关闭 issue。
第一次参与邮件列表可以简单介绍一下自己。(Hi, I'm xxx ...)
开发功能前可以发邮件声明一下自己想做的任务。(Hi,I'm working on issue IOTDB-XXX,My plan is ...)
IoTDB 所有官网上的内容都在项目根目录的 docs 中:
官网上的版本和分支的对应关系:
注意事项:
我们使用 Spotless plugin 和 google-java-format 格式化 Java 代码。你可以通过以下步骤将 IDE 配置为在保存时自动应用格式以 IDEA 为例):
可以到 jira 上领取现有 issue 或者自己创建 issue 再领取,评论说我要做这个 issue 就可以。
mvn spotless:check 检查代码样式,并用mvn spotless:apply修复样式推荐使用 Intellij idea。mvn clean package -DskipTests
之后把 antlr/target/generated-sources/antlr4 和 thrift/target/generated-sources/thrift 标记为 Source Root。
如果是 eclipse 2019 之前的版本,需要现在 IoTDB 根目录执行 mvn eclipse:eclipse -DskipTests。
import -> General -> Existing Projects into Workspace -> 选择 IoTDB 根目录
如果 eclipse 2019 之后的版本
import -> Maven -> Existing Maven Projects
服务器主函数:server/src/main/java/org/apache/iotdb/db/service/IoTDB,可以 debug 模式启动
命令行界面:cli/src/main/java/org/apache/iotdb/cli/,linux 用 Cli,windows 用 WinCli,可以直接启动。启动时需要参数"-h 127.0.0.1 -p 6667 -u root -pw root"
服务器的 rpc 实现(主要用来客户端和服务器通信,一般在这里开始打断点):server/src/main/java/org/apache/iotdb/db/service/TSServiceImpl
存储引擎 org.apache.iotdb.db.engine.StorageEngine
查询引擎 org.apache.iotdb.db.qp.Planner
无法下载 thrift-* 等文件,例如 Could not get content org.apache.maven.wagon.TransferFailedException: Transfer failed for https://github.com/apache/iotdb-bin-resources/blob/main/compile-tools/thrift-0.14-ubuntu 这一般是网络问题,这时候需要手动下载上述文件:
根据以下网址手动下载上述文件;
将该文件拷贝到 thrift/target/tools/目录下
重新执行 maven 的编译命令