This is an automated email from the ASF dual-hosted git repository.
jiangtian pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/iotdb.git
The following commit(s) were added to refs/heads/master by this push:
new 105926a4d70 fix cpp-client-gettimestamp (#16124)
105926a4d70 is described below
commit 105926a4d701fbb2712ba520d1cd66431a7864bc
Author: Hongzhi Gao <[email protected]>
AuthorDate: Fri Aug 8 09:25:40 2025 +0800
fix cpp-client-gettimestamp (#16124)
---
iotdb-client/client-cpp/src/main/IoTDBRpcDataSet.cpp | 8 ++++----
iotdb-client/client-cpp/src/main/IoTDBRpcDataSet.h | 6 +++---
iotdb-client/client-cpp/src/test/cpp/sessionRelationalIT.cpp | 4 ++--
3 files changed, 9 insertions(+), 9 deletions(-)
diff --git a/iotdb-client/client-cpp/src/main/IoTDBRpcDataSet.cpp
b/iotdb-client/client-cpp/src/main/IoTDBRpcDataSet.cpp
index 8fa020851fe..7339d74c2c3 100644
--- a/iotdb-client/client-cpp/src/main/IoTDBRpcDataSet.cpp
+++ b/iotdb-client/client-cpp/src/main/IoTDBRpcDataSet.cpp
@@ -462,18 +462,18 @@ std::string
IoTDBRpcDataSet::getStringByTsBlockColumnIndexAndDataType(int32_t in
}
}
-int64_t IoTDBRpcDataSet::getTimestampByIndex(int32_t columnIndex) {
+boost::optional<int64_t> IoTDBRpcDataSet::getTimestampByIndex(int32_t
columnIndex) {
int32_t index = getTsBlockColumnIndexForColumnIndex(columnIndex);
return getTimestampByTsBlockColumnIndex(index);
}
-int64_t IoTDBRpcDataSet::getTimestamp(const std::string& columnName) {
+boost::optional<int64_t> IoTDBRpcDataSet::getTimestamp(const std::string&
columnName) {
int32_t index = getTsBlockColumnIndexForColumnName(columnName);
return getTimestampByTsBlockColumnIndex(index);
}
-int64_t IoTDBRpcDataSet::getTimestampByTsBlockColumnIndex(int32_t
tsBlockColumnIndex) {
- return getLongByTsBlockColumnIndex(tsBlockColumnIndex).value();
+boost::optional<int64_t>
IoTDBRpcDataSet::getTimestampByTsBlockColumnIndex(int32_t tsBlockColumnIndex) {
+ return getLongByTsBlockColumnIndex(tsBlockColumnIndex);
}
boost::optional<boost::gregorian::date>
IoTDBRpcDataSet::getDateByIndex(int32_t columnIndex) {
diff --git a/iotdb-client/client-cpp/src/main/IoTDBRpcDataSet.h
b/iotdb-client/client-cpp/src/main/IoTDBRpcDataSet.h
index e3b591bb90d..7ec8af5049f 100644
--- a/iotdb-client/client-cpp/src/main/IoTDBRpcDataSet.h
+++ b/iotdb-client/client-cpp/src/main/IoTDBRpcDataSet.h
@@ -83,8 +83,8 @@ public:
std::shared_ptr<Binary> getBinary(const std::string& columnName);
boost::optional<std::string> getStringByIndex(int32_t columnIndex);
boost::optional<std::string> getString(const std::string& columnName);
- int64_t getTimestampByIndex(int32_t columnIndex);
- int64_t getTimestamp(const std::string& columnName);
+ boost::optional<int64_t> getTimestampByIndex(int32_t columnIndex);
+ boost::optional<int64_t> getTimestamp(const std::string& columnName);
boost::optional<boost::gregorian::date> getDateByIndex(int32_t
columnIndex);
boost::optional<boost::gregorian::date> getDate(const std::string&
columnName);
@@ -122,7 +122,7 @@ private:
std::shared_ptr<Binary> getBinaryByTsBlockColumnIndex(int32_t
tsBlockColumnIndex);
boost::optional<std::string> getStringByTsBlockColumnIndex(int32_t
tsBlockColumnIndex);
boost::optional<boost::gregorian::date>
getDateByTsBlockColumnIndex(int32_t tsBlockColumnIndex);
- int64_t getTimestampByTsBlockColumnIndex(int32_t tsBlockColumnIndex);
+ boost::optional<int64_t> getTimestampByTsBlockColumnIndex(int32_t
tsBlockColumnIndex);
std::string sql_;
bool isClosed_;
diff --git a/iotdb-client/client-cpp/src/test/cpp/sessionRelationalIT.cpp
b/iotdb-client/client-cpp/src/test/cpp/sessionRelationalIT.cpp
index 3534abd46f8..0912ddd5bf3 100644
--- a/iotdb-client/client-cpp/src/test/cpp/sessionRelationalIT.cpp
+++ b/iotdb-client/client-cpp/src/test/cpp/sessionRelationalIT.cpp
@@ -199,7 +199,7 @@ TEST_CASE("Test RelationalTabletTsblockRead",
"[testRelationalTabletTsblockRead]
REQUIRE_FALSE(dataIter.getFloatByIndex(5).is_initialized());
REQUIRE_FALSE(dataIter.getDoubleByIndex(6).is_initialized());
REQUIRE_FALSE(dataIter.getStringByIndex(7).is_initialized());
- REQUIRE_FALSE(dataIter.getLongByIndex(8).is_initialized());
+ REQUIRE_FALSE(dataIter.getTimestampByIndex(8).is_initialized());
REQUIRE_FALSE(dataIter.getDateByIndex(9).is_initialized());
REQUIRE_FALSE(dataIter.getStringByIndex(10).is_initialized());
REQUIRE_FALSE(dataIter.getStringByIndex(11).is_initialized());
@@ -211,7 +211,7 @@ TEST_CASE("Test RelationalTabletTsblockRead",
"[testRelationalTabletTsblockRead]
REQUIRE(fabs(dataIter.getFloatByIndex(5).value() - rowNum * 1.1f)
< 0.1f);
REQUIRE(fabs(dataIter.getDoubleByIndex(6).value() - rowNum * 1.1f)
< 0.1);
REQUIRE(dataIter.getStringByIndex(7).value() == "text_" +
to_string(rowNum));
- REQUIRE(dataIter.getLongByIndex(8).value() ==
static_cast<int64_t>(timestamp));
+ REQUIRE(dataIter.getTimestampByIndex(8).value() ==
static_cast<int64_t>(timestamp));
REQUIRE(dataIter.getDateByIndex(9).value() ==
boost::gregorian::date(2025, 5, 15));
REQUIRE(dataIter.getStringByIndex(10).value() == "blob_" +
to_string(rowNum));
REQUIRE(dataIter.getStringByIndex(11).value() == "string_" +
to_string(rowNum));