This is an automated email from the ASF dual-hosted git repository.
jackietien 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 8aef1952c31 Remove some method implementations related to the object
type (#17054)
8aef1952c31 is described below
commit 8aef1952c3171ce8e822d6e3e7aad74960b012c9
Author: shuwenwei <[email protected]>
AuthorDate: Wed Jan 21 11:26:35 2026 +0800
Remove some method implementations related to the object type (#17054)
---
.../impl/DataNodeInternalRPCServiceImpl.java | 8 ---
.../operator/process/function/partition/Slice.java | 6 +--
.../relational/aggregation/RecordIterator.java | 6 +--
.../org/apache/iotdb/db/utils/ObjectTypeUtils.java | 61 +---------------------
.../commons/exception/ObjectFileNotExist.java | 6 ++-
.../src/main/thrift/datanode.thrift | 8 ---
6 files changed, 8 insertions(+), 87 deletions(-)
diff --git
a/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/protocol/thrift/impl/DataNodeInternalRPCServiceImpl.java
b/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/protocol/thrift/impl/DataNodeInternalRPCServiceImpl.java
index 4c230a2823a..46d377be0a1 100644
---
a/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/protocol/thrift/impl/DataNodeInternalRPCServiceImpl.java
+++
b/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/protocol/thrift/impl/DataNodeInternalRPCServiceImpl.java
@@ -205,7 +205,6 @@ import
org.apache.iotdb.db.subscription.agent.SubscriptionAgent;
import org.apache.iotdb.db.trigger.executor.TriggerExecutor;
import org.apache.iotdb.db.trigger.executor.TriggerFireResult;
import org.apache.iotdb.db.trigger.service.TriggerManagementService;
-import org.apache.iotdb.db.utils.ObjectTypeUtils;
import org.apache.iotdb.db.utils.SetThreadName;
import org.apache.iotdb.metrics.type.AutoGauge;
import org.apache.iotdb.metrics.utils.MetricLevel;
@@ -285,7 +284,6 @@ import
org.apache.iotdb.mpp.rpc.thrift.TPushSingleTopicMetaReq;
import org.apache.iotdb.mpp.rpc.thrift.TPushTopicMetaReq;
import org.apache.iotdb.mpp.rpc.thrift.TPushTopicMetaResp;
import org.apache.iotdb.mpp.rpc.thrift.TPushTopicMetaRespExceptionMessage;
-import org.apache.iotdb.mpp.rpc.thrift.TReadObjectReq;
import org.apache.iotdb.mpp.rpc.thrift.TRegionLeaderChangeReq;
import org.apache.iotdb.mpp.rpc.thrift.TRegionLeaderChangeResp;
import org.apache.iotdb.mpp.rpc.thrift.TRegionMigrateResult;
@@ -3101,12 +3099,6 @@ public class DataNodeInternalRPCServiceImpl implements
IDataNodeRPCService.Iface
return RpcUtils.getStatus(TSStatusCode.SUCCESS_STATUS);
}
- @Override
- public ByteBuffer readObject(TReadObjectReq req) {
- return ObjectTypeUtils.readObjectContent(
- req.getRelativePath(), req.getOffset(), req.getSize(), false);
- }
-
public void handleClientExit() {
// Do nothing
}
diff --git
a/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/execution/operator/process/function/partition/Slice.java
b/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/execution/operator/process/function/partition/Slice.java
index e05381f6de4..f8f002d5e19 100644
---
a/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/execution/operator/process/function/partition/Slice.java
+++
b/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/execution/operator/process/function/partition/Slice.java
@@ -230,11 +230,7 @@ public class Slice {
@Override
public Binary readObject(int columnIndex, long offset, int length) {
- if (getDataType(columnIndex) != Type.OBJECT) {
- throw new UnsupportedOperationException("current column is not object
column");
- }
- Binary binary = getBinarySafely(columnIndex);
- return new Binary(ObjectTypeUtils.readObjectContent(binary, offset,
length, true).array());
+ throw new UnsupportedOperationException("readObject is not supported");
}
@Override
diff --git
a/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/execution/operator/source/relational/aggregation/RecordIterator.java
b/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/execution/operator/source/relational/aggregation/RecordIterator.java
index 3f3943f9bc3..fcb0bf93cfd 100644
---
a/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/execution/operator/source/relational/aggregation/RecordIterator.java
+++
b/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/execution/operator/source/relational/aggregation/RecordIterator.java
@@ -175,11 +175,7 @@ public class RecordIterator implements Iterator<Record> {
@Override
public Binary readObject(int columnIndex, long offset, int length) {
- if (getDataType(columnIndex) != Type.OBJECT) {
- throw new UnsupportedOperationException("current column is not object
column");
- }
- Binary binary = getBinarySafely(columnIndex);
- return new Binary(ObjectTypeUtils.readObjectContent(binary, offset,
length, true).array());
+ throw new UnsupportedOperationException("readObject is not supported");
}
@Override
diff --git
a/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/utils/ObjectTypeUtils.java
b/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/utils/ObjectTypeUtils.java
index 7148bca87e8..6d61056ed6a 100644
---
a/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/utils/ObjectTypeUtils.java
+++
b/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/utils/ObjectTypeUtils.java
@@ -19,20 +19,12 @@
package org.apache.iotdb.db.utils;
-import org.apache.iotdb.common.rpc.thrift.TConsensusGroupId;
-import org.apache.iotdb.common.rpc.thrift.TConsensusGroupType;
-import org.apache.iotdb.common.rpc.thrift.TDataNodeLocation;
-import org.apache.iotdb.common.rpc.thrift.TRegionReplicaSet;
-import org.apache.iotdb.commons.client.sync.SyncDataNodeInternalServiceClient;
import org.apache.iotdb.commons.exception.IoTDBRuntimeException;
import org.apache.iotdb.commons.exception.ObjectFileNotExist;
import org.apache.iotdb.db.exception.sql.SemanticException;
-import org.apache.iotdb.db.queryengine.plan.Coordinator;
-import org.apache.iotdb.db.queryengine.plan.analyze.ClusterPartitionFetcher;
import org.apache.iotdb.db.service.metrics.FileMetrics;
import org.apache.iotdb.db.storageengine.dataregion.IObjectPath;
import org.apache.iotdb.db.storageengine.rescon.disk.TierManager;
-import org.apache.iotdb.mpp.rpc.thrift.TReadObjectReq;
import org.apache.iotdb.rpc.TSStatusCode;
import org.apache.tsfile.encoding.decoder.Decoder;
@@ -48,10 +40,7 @@ import java.io.IOException;
import java.nio.ByteBuffer;
import java.nio.channels.FileChannel;
import java.nio.file.Files;
-import java.nio.file.Paths;
import java.nio.file.StandardOpenOption;
-import java.util.Collections;
-import java.util.List;
import java.util.Objects;
import java.util.Optional;
@@ -101,55 +90,7 @@ public class ObjectTypeUtils {
private static ByteBuffer readObjectContentFromRemoteFile(
final String relativePath, final long offset, final int readSize) {
- int regionId;
- try {
- regionId =
Integer.parseInt(Paths.get(relativePath).getName(0).toString());
- } catch (NumberFormatException e) {
- throw new IoTDBRuntimeException(
- "wrong object file path: " + relativePath,
- TSStatusCode.OBJECT_READ_ERROR.getStatusCode());
- }
- TConsensusGroupId consensusGroupId =
- new TConsensusGroupId(TConsensusGroupType.DataRegion, regionId);
- List<TRegionReplicaSet> regionReplicaSetList =
- ClusterPartitionFetcher.getInstance()
- .getRegionReplicaSet(Collections.singletonList(consensusGroupId));
- if (regionReplicaSetList.isEmpty()) {
- throw new ObjectFileNotExist(relativePath);
- }
- TRegionReplicaSet regionReplicaSet =
regionReplicaSetList.iterator().next();
- if (regionReplicaSet.getDataNodeLocations().isEmpty()) {
- throw new ObjectFileNotExist(relativePath);
- }
- final int batchSize = 1024 * 1024;
- final TReadObjectReq req = new TReadObjectReq();
- req.setRelativePath(relativePath);
- ByteBuffer buffer = ByteBuffer.allocate(readSize);
- for (int i = 0; i < regionReplicaSet.getDataNodeLocations().size(); i++) {
- TDataNodeLocation dataNodeLocation =
regionReplicaSet.getDataNodeLocations().get(i);
- int toReadSizeInCurrentDataNode = readSize;
- try (SyncDataNodeInternalServiceClient client =
- Coordinator.getInstance()
- .getInternalServiceClientManager()
- .borrowClient(dataNodeLocation.getInternalEndPoint())) {
- while (toReadSizeInCurrentDataNode > 0) {
- req.setOffset(offset + buffer.position());
- req.setSize(Math.min(toReadSizeInCurrentDataNode, batchSize));
- toReadSizeInCurrentDataNode -= req.getSize();
- ByteBuffer partial = client.readObject(req);
- buffer.put(partial);
- }
- } catch (Exception e) {
- logger.warn("Failed to read object from datanode: {}",
dataNodeLocation, e);
- if (i == regionReplicaSet.getDataNodeLocations().size() - 1) {
- throw new IoTDBRuntimeException(e,
TSStatusCode.OBJECT_READ_ERROR.getStatusCode());
- }
- continue;
- }
- break;
- }
- buffer.flip();
- return buffer;
+ throw new UnsupportedOperationException("readObjectContentFromRemoteFile");
}
public static Binary generateObjectBinary(long objectSize, IObjectPath
objectPath) {
diff --git
a/iotdb-core/node-commons/src/main/java/org/apache/iotdb/commons/exception/ObjectFileNotExist.java
b/iotdb-core/node-commons/src/main/java/org/apache/iotdb/commons/exception/ObjectFileNotExist.java
index 05add08b218..afe2cda5500 100644
---
a/iotdb-core/node-commons/src/main/java/org/apache/iotdb/commons/exception/ObjectFileNotExist.java
+++
b/iotdb-core/node-commons/src/main/java/org/apache/iotdb/commons/exception/ObjectFileNotExist.java
@@ -19,6 +19,8 @@
package org.apache.iotdb.commons.exception;
+import org.apache.iotdb.rpc.RpcUtils;
+
import static org.apache.iotdb.rpc.TSStatusCode.OBJECT_NOT_EXISTS;
public class ObjectFileNotExist extends IoTDBRuntimeException {
@@ -26,6 +28,8 @@ public class ObjectFileNotExist extends IoTDBRuntimeException
{
private static final String ERROR_MSG = "Object file %s does not exist";
public ObjectFileNotExist(String relativeObjectPath) {
- super(String.format(ERROR_MSG, relativeObjectPath),
OBJECT_NOT_EXISTS.getStatusCode());
+ super(
+ RpcUtils.getStatus(
+ OBJECT_NOT_EXISTS.getStatusCode(), String.format(ERROR_MSG,
relativeObjectPath)));
}
}
diff --git a/iotdb-protocol/thrift-datanode/src/main/thrift/datanode.thrift
b/iotdb-protocol/thrift-datanode/src/main/thrift/datanode.thrift
index 6166e29161a..cca7110f28d 100644
--- a/iotdb-protocol/thrift-datanode/src/main/thrift/datanode.thrift
+++ b/iotdb-protocol/thrift-datanode/src/main/thrift/datanode.thrift
@@ -783,12 +783,6 @@ struct TKillQueryInstanceReq {
2: optional string allowedUsername
}
-struct TReadObjectReq {
- 1: string relativePath
- 2: i64 offset
- 3: i32 size
-}
-
/**
* END: Used for EXPLAIN ANALYZE
**/
@@ -1282,8 +1276,6 @@ service IDataNodeRPCService {
* Write an audit log entry to the DataNode's AuditEventLogger
*/
common.TSStatus writeAuditLog(TAuditLogReq req);
-
- binary readObject(TReadObjectReq req);
}
service MPPDataExchangeService {