(window.webpackJsonp=window.webpackJsonp||[]).push([[22],{587:function(t,e,a){"use strict";a.r(e);var _=a(69),d=Object(_.a)({},(function(){var t=this,e=t.$createElement,a=t._self._c||e;return a("ContentSlotsDistributor",{attrs:{"slot-key":t.$parent.slotKey}},[a("h1",{attrs:{id:"_0-11-x-version-2-0-12-x-version-1"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#_0-11-x-version-2-0-12-x-version-1"}},[t._v("#")]),t._v(" 0.11.x(version-2) -> 0.12.x(version-1)")]),t._v(" "),a("p",[t._v("Last Updated on 2021.01.19 by Xiangwei Wei.")]),t._v(" "),a("h2",{attrs:{id:"_1-delete-old"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#_1-delete-old"}},[t._v("#")]),t._v(" 1. Delete Old")]),t._v(" "),a("table",[a("thead",[a("tr",[a("th",[t._v("Latest Changes")]),t._v(" "),a("th",[t._v("Related Committers")])])]),t._v(" "),a("tbody")]),t._v(" "),a("h2",{attrs:{id:"_2-add-new"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#_2-add-new"}},[t._v("#")]),t._v(" 2. Add New")]),t._v(" "),a("table",[a("thead",[a("tr",[a("th",[t._v("Latest Changes")]),t._v(" "),a("th",[t._v("Related Committers")])])]),t._v(" "),a("tbody",[a("tr",[a("td",[t._v("Add timeout in TSFetchResultsReq and TSExecuteStatementReq")]),t._v(" "),a("td",[t._v("Xiangwei Wei")])])])]),t._v(" "),a("h2",{attrs:{id:"_3-update"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#_3-update"}},[t._v("#")]),t._v(" 3. Update")]),t._v(" "),a("table",[a("thead",[a("tr",[a("th",[t._v("Latest Changes")]),t._v(" "),a("th",[t._v("Related Committers")])])]),t._v(" "),a("tbody")]),t._v(" "),a("h1",{attrs:{id:"_0-10-x-version-2-0-11-x-version-3"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#_0-10-x-version-2-0-11-x-version-3"}},[t._v("#")]),t._v(" 0.10.x (version-2) -> 0.11.x (version-3)")]),t._v(" "),a("p",[t._v("Last Updated on 2020-10-27 by Xiangwei Wei.")]),t._v(" "),a("h2",{attrs:{id:"_1-delete-old-2"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#_1-delete-old-2"}},[t._v("#")]),t._v(" 1. Delete Old")]),t._v(" "),a("table",[a("thead",[a("tr",[a("th",[t._v("Latest Changes")]),t._v(" "),a("th",[t._v("Related Committers")])])]),t._v(" "),a("tbody",[a("tr",[a("td",[t._v("Remove TSBatchExecuteStatementResp")]),t._v(" "),a("td",[t._v("Tian Jiang")])])])]),t._v(" "),a("h2",{attrs:{id:"_2-add-new-2"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#_2-add-new-2"}},[t._v("#")]),t._v(" 2. Add New")]),t._v(" "),a("table",[a("thead",[a("tr",[a("th",[t._v("Latest Changes")]),t._v(" "),a("th",[t._v("Related Committers")])])]),t._v(" "),a("tbody",[a("tr",[a("td",[t._v("set the input/output as TFramedTransport")]),t._v(" "),a("td",[t._v("Tian Jiang")])]),t._v(" "),a("tr",[a("td",[t._v("Add timeout(optional) in TSFetchResultsReq and TSExecuteStatementReq")]),t._v(" "),a("td",[t._v("Xiangwei Wei")])])])]),t._v(" "),a("h2",{attrs:{id:"_3-update-2"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#_3-update-2"}},[t._v("#")]),t._v(" 3. Update")]),t._v(" "),a("table",[a("thead",[a("tr",[a("th",[t._v("Latest Changes")]),t._v(" "),a("th",[t._v("Related Committers")])])]),t._v(" "),a("tbody",[a("tr",[a("td",[t._v("Add sub-status in TSStatus")]),t._v(" "),a("td",[t._v("Tian Jiang")])]),t._v(" "),a("tr",[a("td",[t._v("Change the result of executeBatchStatement  as   TSStatus")]),t._v(" "),a("td",[t._v("Tian Jiang")])]),t._v(" "),a("tr",[a("td",[t._v("Change TSDeleteDataReq, delete timestamp and add startTime and endTime")]),t._v(" "),a("td",[t._v("Wei Shao")])]),t._v(" "),a("tr",[a("td",[t._v("Add zoneId in TSOpenSessionReq")]),t._v(" "),a("td",[t._v("Xiangwei Wei")])])])]),t._v(" "),a("h1",{attrs:{id:"_0-9-x-version-1-0-10-x-version-2"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#_0-9-x-version-1-0-10-x-version-2"}},[t._v("#")]),t._v(" 0.9.x (version-1) -> 0.10.x (version-2)")]),t._v(" "),a("p",[t._v("Last Updated on 2020-5-25 by Kaifeng Xue.")]),t._v(" "),a("h2",{attrs:{id:"_1-delete-old-3"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#_1-delete-old-3"}},[t._v("#")]),t._v(" 1. Delete Old")]),t._v(" "),a("table",[a("thead",[a("tr",[a("th",[t._v("Latest Changes")]),t._v(" "),a("th",[t._v("Related Committers")])])]),t._v(" "),a("tbody",[a("tr",[a("td",[t._v("Remove TS_SessionHandle,TSHandleIdentifier")]),t._v(" "),a("td",[t._v("Tian Jiang")])]),t._v(" "),a("tr",[a("td",[t._v("Remove TSStatus,TSExecuteInsertRowInBatchResp")]),t._v(" "),a("td",[t._v("Jialin Qiao")])])])]),t._v(" "),a("h2",{attrs:{id:"_2-add-new-3"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#_2-add-new-3"}},[t._v("#")]),t._v(" 2. Add New")]),t._v(" "),a("table",[a("thead",[a("tr",[a("th",[t._v("Latest Changes")]),t._v(" "),a("th",[t._v("Related Committers")])])]),t._v(" "),a("tbody",[a("tr",[a("td",[t._v("Add parameter sessionId in getTimeZone, getProperties, setStorageGroup, createTimeseries...")]),t._v(" "),a("td",[t._v("Tian Jiang")])]),t._v(" "),a("tr",[a("td",[t._v("Add struct TSQueryNonAlignDataSet")]),t._v(" "),a("td",[t._v("Haonan Hou")])]),t._v(" "),a("tr",[a("td",[t._v("Add struct TSInsertTabletsReq")]),t._v(" "),a("td",[t._v("Jialin Qiao")])]),t._v(" "),a("tr",[a("td",[t._v("Add method insertTablets")]),t._v(" "),a("td",[t._v("Jialin Qiao")])]),t._v(" "),a("tr",[a("td",[t._v("Add method testInsertTablets")]),t._v(" "),a("td",[t._v("Xiangdong Huang")])]),t._v(" "),a("tr",[a("td",[t._v("add new field "),a("code",[t._v("inferType")]),t._v(" in TSInsertRecordReq")]),t._v(" "),a("td",[t._v("Jialin Qiao")])])])]),t._v(" "),a("h2",{attrs:{id:"_3-update-3"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#_3-update-3"}},[t._v("#")]),t._v(" 3. Update")]),t._v(" "),a("table",[a("thead",[a("tr",[a("th",[t._v("Latest Changes")]),t._v(" "),a("th",[t._v("Related Committers")])])]),t._v(" "),a("tbody",[a("tr",[a("td",[t._v("Replace TS_SessionHandles with SessionIds, TSOperationHandle with queryIds")]),t._v(" "),a("td",[t._v("Tian Jiang")])]),t._v(" "),a("tr",[a("td",[t._v("Add optional TSQueryNonAlignDataSet in TSExecuteStatementResp, TSFetchResultsResp and required bool isAlign in TSFetchResultsReq")]),t._v(" "),a("td",[t._v("Haonan Hou")])]),t._v(" "),a("tr",[a("td",[t._v("Rename TSStatusType to TSStatus")]),t._v(" "),a("td",[t._v("Jialin Qiao")])]),t._v(" "),a("tr",[a("td",[t._v("Remove sessionId in TSExecuteBatchStatementResp")]),t._v(" "),a("td",[t._v("Jialin Qiao")])]),t._v(" "),a("tr",[a("td",[t._v("Rename insertRows to insertReords, insert to insertRecord, insertBatch to insertTablet")]),t._v(" "),a("td",[t._v("Jialin Qiao")])]),t._v(" "),a("tr",[a("td",[t._v("Use TsDataType and binary rather than string in TSInsertInBatchReq and TSInsertReq")]),t._v(" "),a("td",[t._v("Kaifeng Xue")])])])]),t._v(" "),a("h1",{attrs:{id:"_0-8-x-0-9-x-version-1"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#_0-8-x-0-9-x-version-1"}},[t._v("#")]),t._v(" 0.8.x -> 0.9.x (version-1)")]),t._v(" "),a("p",[t._v("Last Updated on 2019-10-27 by Lei Rui.")]),t._v(" "),a("h2",{attrs:{id:"_1-delete-old-4"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#_1-delete-old-4"}},[t._v("#")]),t._v(" 1. Delete Old")]),t._v(" "),a("table",[a("thead",[a("tr",[a("th",[t._v("Latest Changes")]),t._v(" "),a("th",[t._v("Related Committers")])])]),t._v(" "),a("tbody",[a("tr",[a("td",[t._v("Delete struct TSSetStorageGroupReq")]),t._v(" "),a("td",[t._v("Jialin Qiao")])]),t._v(" "),a("tr",[a("td",[t._v("Remove struct TSDataValue")]),t._v(" "),a("td",[t._v("Lei Rui")])]),t._v(" "),a("tr",[a("td",[t._v("Remove struct TSRowRecord")]),t._v(" "),a("td",[t._v("Lei Rui")])]),t._v(" "),a("tr",[a("td",[t._v("Remove optional string version in TSFetchMetadataResp")]),t._v(" "),a("td",[t._v("Genius_pig")])]),t._v(" "),a("tr",[a("td",[t._v("Remove optional set"),a("string",[t._v(" childPaths, nodesList, storageGroups, devices in TSFetchMetadataResp")])],1),t._v(" "),a("td",[t._v("Genius_pig")])]),t._v(" "),a("tr",[a("td",[t._v("Remove optional map<string, string> nodeTimeseriesNum in TSFetchMetadataResp")]),t._v(" "),a("td",[t._v("Genius_pig")])]),t._v(" "),a("tr",[a("td",[t._v("Remove optional list<list"),a("string",[t._v("> timeseriesList in TSFetchMetadataResp")])],1),t._v(" "),a("td",[t._v("Genius_pig")])]),t._v(" "),a("tr",[a("td",[t._v("Remove optinoal optional i32 timeseriesNum in TSFetchMetadataResp")]),t._v(" "),a("td",[t._v("Genius_pig")])]),t._v(" "),a("tr",[a("td",[t._v("Remove optional i32 nodeLevel in TSFetchMetadataReq")]),t._v(" "),a("td",[t._v("Genius_pig")])])])]),t._v(" "),a("h2",{attrs:{id:"_2-add-new-4"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#_2-add-new-4"}},[t._v("#")]),t._v(" 2. Add New")]),t._v(" "),a("table",[a("thead",[a("tr",[a("th",[t._v("Latest Changes")]),t._v(" "),a("th",[t._v("Related Committers")])])]),t._v(" "),a("tbody",[a("tr",[a("td",[t._v("Add struct TSBatchInsertionReq")]),t._v(" "),a("td",[t._v("qiaojialin")])]),t._v(" "),a("tr",[a("td",[t._v("Add method TSExecuteBatchStatementResp insertBatch(1:TSBatchInsertionReq req)")]),t._v(" "),a("td",[t._v("qiaojialin")])]),t._v(" "),a("tr",[a("td",[t._v("Add Struct TSStatusType")]),t._v(" "),a("td",[t._v("Zesong Sun")])]),t._v(" "),a("tr",[a("td",[t._v("Add TSCreateTimeseriesReq")]),t._v(" "),a("td",[t._v("Zesong Sun")])]),t._v(" "),a("tr",[a("td",[t._v("Add method TSStatus setStorageGroup(1:string storageGroup)")]),t._v(" "),a("td",[t._v("Zesong Sun, Jialin Qiao")])]),t._v(" "),a("tr",[a("td",[t._v("Add method TSStatus createTimeseries(1:TSCreateTimeseriesReq req)")]),t._v(" "),a("td",[t._v("Zesong Sun")])]),t._v(" "),a("tr",[a("td",[t._v("Add struct TSInsertReq")]),t._v(" "),a("td",[t._v("qiaojialin")])]),t._v(" "),a("tr",[a("td",[t._v("Add method TSRPCResp insertRow(1:TSInsertReq req)")]),t._v(" "),a("td",[t._v("qiaojialin")])]),t._v(" "),a("tr",[a("td",[t._v("Add struct TSDeleteDataReq")]),t._v(" "),a("td",[t._v("Jack Tsai, qiaojialin")])]),t._v(" "),a("tr",[a("td",[t._v("Add method TSStatus deleteData(1:TSDeleteDataReq req)")]),t._v(" "),a("td",[t._v("Jack Tsai, Jialin Qiao, qiaojialin")])]),t._v(" "),a("tr",[a("td",[t._v("Add method TSStatus deleteTimeseries(1:list<string> path)")]),t._v(" "),a("td",[t._v("qiaojialin")])]),t._v(" "),a("tr",[a("td",[t._v("Add method TSStatus deleteStorageGroups(1:list<string> storageGroup)")]),t._v(" "),a("td",[t._v("Yi Tao")])]),t._v(" "),a("tr",[a("td",[t._v("Add Struct TSExecuteInsertRowInBatchResp")]),t._v(" "),a("td",[t._v("Kaifeng Xue")])]),t._v(" "),a("tr",[a("td",[t._v("Add method insertRowInBatch(1:TSInsertInBatchReq req);")]),t._v(" "),a("td",[t._v("Kaifeng Xue")])]),t._v(" "),a("tr",[a("td",[t._v("Add method testInsertRowInBatch(1:TSInsertInBatchReq req);")]),t._v(" "),a("td",[t._v("Kaifeng Xue")])]),t._v(" "),a("tr",[a("td",[t._v("Add method testInsertRow(1:TSInsertReq req);")]),t._v(" "),a("td",[t._v("Kaifeng Xue")])]),t._v(" "),a("tr",[a("td",[t._v("Add method testInsertBatch(1:TSBatchInsertionReq req);")]),t._v(" "),a("td",[t._v("Kaifeng Xue")])]),t._v(" "),a("tr",[a("td",[t._v("Add struct TSCreateMultiTimeseriesReq")]),t._v(" "),a("td",[t._v("qiaojialin")])]),t._v(" "),a("tr",[a("td",[t._v("Add method createMultiTimeseries(1:TSCreateMultiTimeseriesReq req);")]),t._v(" "),a("td",[t._v("qiaojialin")])])])]),t._v(" "),a("h2",{attrs:{id:"_3-update-4"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#_3-update-4"}},[t._v("#")]),t._v(" 3. Update")]),t._v(" "),a("table",[a("thead",[a("tr",[a("th",[t._v("Latest Changes")]),t._v(" "),a("th",[t._v("Related Committers")])])]),t._v(" "),a("tbody",[a("tr",[a("td",[t._v("Add required string timestampPrecision in ServerProperties")]),t._v(" "),a("td",[t._v("1160300922")])]),t._v(" "),a("tr",[a("td",[t._v("Add optional list<string> dataTypeList in TSExecuteStatementResp")]),t._v(" "),a("td",[t._v("suyue")])]),t._v(" "),a("tr",[a("td",[t._v("Update TSStatus to use TSStatusType, instead of using "),a("s",[t._v("TS_StatusCode, errorCode and errorMessage")])]),t._v(" "),a("td",[t._v("Zesong Sun")])]),t._v(" "),a("tr",[a("td",[t._v("Rename item in enum TSProtocolVersion from "),a("s",[t._v("TSFILE_SERVICE_PROTOCOL_V1")]),t._v(" to IOTDB_SERVICE_PROTOCOL_V1")]),t._v(" "),a("td",[t._v("qiaojialin")])]),t._v(" "),a("tr",[a("td",[t._v("Rename method name from "),a("s",[t._v("TSExecuteStatementResp executeInsertion(1:TSInsertionReq req)")]),t._v(" to TSExecuteStatementResp insert(1:TSInsertionReq req)")]),t._v(" "),a("td",[t._v("qiaojialin")])]),t._v(" "),a("tr",[a("td",[t._v("Add required i32 compressor in TSCreateTimeseriesReq")]),t._v(" "),a("td",[t._v("Jialin Qiao")])]),t._v(" "),a("tr",[a("td",[t._v("Add optional list<string> nodesList, optional map<string, string> nodeTimeseriesNum in TSFetchMetadataResp")]),t._v(" "),a("td",[t._v("jack870131")])]),t._v(" "),a("tr",[a("td",[t._v("Add optional i32 nodeLevel in TSFetchMetadataReq")]),t._v(" "),a("td",[t._v("jack870131, Zesong Sun")])]),t._v(" "),a("tr",[a("td",[t._v("Change the following methods' returned type to be TSStatus: "),a("br"),t._v("TSStatus closeSession(1:TSCloseSessionReq req), "),a("br"),t._v("TSStatus cancelOperation(1:TSCancelOperationReq req), "),a("br"),t._v("TSStatus closeOperation(1:TSCloseOperationReq req), "),a("br"),t._v("TSStatus setTimeZone(1:TSSetTimeZoneReq req), "),a("br"),t._v("TSStatus setStorageGroup(1:string storageGroup), "),a("br"),t._v("TSStatus createTimeseries(1:TSCreateTimeseriesReq req), "),a("br"),t._v("TSStatus insertRow(1:TSInsertReq req), "),a("br"),t._v("TSStatus deleteData(1:TSDeleteDataReq req)")]),t._v(" "),a("td",[t._v("Zesong Sun, qiaojialin")])]),t._v(" "),a("tr",[a("td",[t._v("Change from "),a("s",[t._v("required string path")]),t._v(" to required list<string> paths in TSDeleteDataReq")]),t._v(" "),a("td",[t._v("qiaojialin")])]),t._v(" "),a("tr",[a("td",[t._v("Add optional set<string> devices in TSFetchMetadataResp")]),t._v(" "),a("td",[t._v("Zesong Sun")])]),t._v(" "),a("tr",[a("td",[t._v("Rename some fields in TSFetchMetadataResp: "),a("s",[t._v("ColumnsList")]),t._v(" to columnsList, "),a("s",[t._v("showTimeseriesList")]),t._v(" to timeseriesList, "),a("s",[t._v("showStorageGroups")]),t._v(" to storageGroups")]),t._v(" "),a("td",[t._v("Zesong Sun")])]),t._v(" "),a("tr",[a("td",[t._v("Change struct TSQueryDataSet to eliminate row-wise rpc writing")]),t._v(" "),a("td",[t._v("Lei Rui")])]),t._v(" "),a("tr",[a("td",[t._v("Add optional i32 timeseriesNum in TSFetchMetadataResp")]),t._v(" "),a("td",[t._v("Jack Tsai")])]),t._v(" "),a("tr",[a("td",[t._v("Add required i64 queryId in TSHandleIdentifier")]),t._v(" "),a("td",[t._v("Yuan Tian")])]),t._v(" "),a("tr",[a("td",[t._v("Add optional set<string> childPaths in TSFetchMetadataResp")]),t._v(" "),a("td",[t._v("Haonan Hou")])]),t._v(" "),a("tr",[a("td",[t._v("Add optional string version in TSFetchMetadataResp")]),t._v(" "),a("td",[t._v("Genius_pig")])]),t._v(" "),a("tr",[a("td",[t._v("Add required i64 statementId in TSExecuteStatementReq")]),t._v(" "),a("td",[t._v("Yuan Tian")])]),t._v(" "),a("tr",[a("td",[t._v("Add required binary time, required list"),a("binary",[t._v(" valueList, required list"),a("binary",[t._v(" bitmapList and remove required binary values, required i32 rowCount in TSQueryDataSet")])],1)],1),t._v(" "),a("td",[t._v("Yuan Tian")])]),t._v(" "),a("tr",[a("td",[t._v("Add optional i32 fetchSize in TSExecuteStatementReq,"),a("br"),t._v("Add optional TSQueryDataSet in TSExecuteStatementResp")]),t._v(" "),a("td",[t._v("liutaohua")])]),t._v(" "),a("tr",[a("td",[t._v("Add optional map<string, string> props, optional map<string, string> tags, optional map<string, string> attributes and optional string aliasPath in TSCreateTimeseriesReq")]),t._v(" "),a("td",[t._v("Yuan Tian")])])])])])}),[],!1,null,null,null);e.default=d.exports}}]);