Skip to content

Commit

Permalink
Merge pull request #360 from samperson1997/split_development
Browse files Browse the repository at this point in the history
[IOTDB-183] Split Development pages and update rpc changelist
  • Loading branch information
Jialin Qiao committed Aug 31, 2019
2 parents a9e0166 + b5b2873 commit 6c4e432
Show file tree
Hide file tree
Showing 3 changed files with 76 additions and 40 deletions.
39 changes: 0 additions & 39 deletions docs/Development.md → docs/Development-Contributing.md
Expand Up @@ -22,11 +22,6 @@
<!-- TOC -->

## Outline

- How to develop IoTDB in IDE
- IDEA
- Eclipse
- Debugging IoTDB
- Have Questions
- Mailing Lists
- JIRA issues
Expand All @@ -46,40 +41,6 @@
- Code Style

<!-- /TOC -->
# How to develop IoTDB in IDE

There are many ways to compile the source code of IoTDB,
e.g., modify and compile with IDEA or Eclipse.

Once all UTs are passed after you modify codes, your modification basically works!

## IDEA

* "File" -> "Open" -> choose the root path of IoTDB source code.
* mark directory ***iotdb/target/generated-sources/antlr3*** as source code
* mark directory ***service-rpc/target/generated-sources/thrift*** as source code

## Eclipse

Using Eclipse to develop IoTDB is also simple but requires some plugins of Eclipse.

- If your Eclipse version is released before 2019, Antlr plugin maybe not work in Eclipse. In this way, you have to run the command in your console first: `mvn eclipse:eclipse -DskipTests`.
After the command is done, you can import IoTDB as an existing project:
- Choose menu "import" -> "General" -> "Existing Projects into Workspace" -> Choose IoTDB
root path;
- Done.

- If your Eclipse version is fashion enough (e.g., you are using the latest version of Eclipse),
you can just choose menu "import" -> "Maven" -> "Existing Maven Projects".

## Debugging IoTDB
The main class of IoTDB server is `org.apache.iotdb.db.service.IoTDB`.
The main class of IoTDB cli is `org.apache.iotdb.client.Client`
(or `org.apache.iotdb.client.WinClient` on Win OS).

You can run/debug IoTDB by using the two classes as the entrance.

Another way to understand IoTDB is to read and try Unit Tests.

# Have Questions

Expand Down
65 changes: 65 additions & 0 deletions docs/Development-IDE.md
@@ -0,0 +1,65 @@
<!--
Licensed to the Apache Software Foundation (ASF) under one
or more contributor license agreements. See the NOTICE file
distributed with this work for additional information
regarding copyright ownership. The ASF licenses this file
to you under the Apache License, Version 2.0 (the
"License"); you may not use this file except in compliance
with the License. You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing,
software distributed under the License is distributed on an
"AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
KIND, either express or implied. See the License for the
specific language governing permissions and limitations
under the License.
-->

<!-- TOC -->

## Outline
- How to develop IoTDB in IDE
- IDEA
- Eclipse
- Debugging IoTDB

<!-- /TOC -->
# How to develop IoTDB in IDE

There are many ways to compile the source code of IoTDB,
e.g., modify and compile with IDEA or Eclipse.

Once all UTs are passed after you modify codes, your modification basically works!

## IDEA

* "File" -> "Open" -> choose the root path of IoTDB source code.
* use `mvn clean compile -Dmaven.test.skip=true`to get target.
* mark directory ***iotdb/target/generated-sources/antlr3*** as source code
* mark directory ***service-rpc/target/generated-sources/thrift*** as source code

## Eclipse

Using Eclipse to develop IoTDB is also simple but requires some plugins of Eclipse.

- If your Eclipse version is released before 2019, Antlr plugin maybe not work in Eclipse. In this way, you have to run the command in your console first: `mvn eclipse:eclipse -DskipTests`.
After the command is done, you can import IoTDB as an existing project:
- Choose menu "import" -> "General" -> "Existing Projects into Workspace" -> Choose IoTDB
root path;
- Done.

- If your Eclipse version is fashion enough (e.g., you are using the latest version of Eclipse),
you can just choose menu "import" -> "Maven" -> "Existing Maven Projects".

## Debugging IoTDB
The main class of IoTDB server is `org.apache.iotdb.db.service.IoTDB`.
The main class of IoTDB cli is `org.apache.iotdb.client.Client`
(or `org.apache.iotdb.client.WinClient` on Win OS).

You can run/debug IoTDB by using the two classes as the entrance.

Another way to understand IoTDB is to read and try Unit Tests.
12 changes: 11 additions & 1 deletion service-rpc/rpc-changelist.md
Expand Up @@ -21,4 +21,14 @@

## 0.8.0 (version-0) -> version-1

*
* Add Struct **TS_StatusType**, including code and message. Instead of using ~~TS_StatusCode~~, ~~errorCode~~ and ~~errorMessage~~, TS_Status use **TS_StatusType** to show specific success or error status, code and message.

* Use struct **TSRPCResp** to replace all structs with only one field `1: required TS_Status status`, including: ~~TSCloseSessionResp~~ closeSession, ~~TSCancelOperationResp~~ cancelOperation, ~~TSCloseOperationResp~~ closeOperation, ~~TSSetTimeZoneResp~~ setTimeZone.

* Add **TSBatchInsertionReq**, **TSCreateTimeseriesReq** and **TSSetStorageGroupReq**.

* Change method name ~~TSExecuteStatementResp executeInsertion(1:TSInsertionReq req)~~ to **TSExecuteStatementResp insert(1:TSInsertionReq req)**, and add method **TSExecuteBatchStatementResp insertBatch(1:TSBatchInsertionReq req)** for batch inserting interface.

* Add method **TSRPCResp setStorageGroup(1:TSSetStorageGroupReq req)** and **TSRPCResp createTimeseries(1:TSCreateTimeseriesReq req)** for creating matadata interface.

* Change item in enum **TSProtocolVersion** from ~~TSFILE_SERVICE_PROTOCOL_V1~~ to IOTDB_SERVICE_PROTOCOL_V1.

0 comments on commit 6c4e432

Please sign in to comment.