VGalaxies opened a new issue, #11199:
URL: https://github.com/apache/iotdb/issues/11199

   ### Search before asking
   
   - [X] I searched in the [issues](https://github.com/apache/iotdb/issues) and 
found nothing similar.
   
   
   ### Version
   
   - OS version: x86_64 Linux 6.2.0-33-generic
   - IoTDB version: 1.2.1
   
   ### Describe the bug and provide the minimal reproduce step
   
   1. starting two instances of IoTDB
   
   - A datanode -> 127.0.0.1:6667
   - B datanode -> 127.0.0.1:6668
   
   2. connecting IoTDB A (6667) by cli and send
   
   ```sql
   create pipe test
   with connector (
       'connector'='iotdb-thrift-connector',
       'connector.ip'='127.0.0.1',
       'connector.port'='6668'
   );
   
   start pipe test;
   
   create aligned TIMESERIES root.sg.d1(s0 float, s1 float);
   
   insert into root.sg.d1(time, s0, s1) values (3, null, 25.34);
   ```
   
   ### What did you expect to see?
   
   no errors occur
   
   ### What did you see instead?
   
   - from IoTDB A DN (6667)
   
   ```
   2023-09-22 15:52:35,746 [pool-37-IoTDB-Pipe-Connector-Executor-Pool-2] ERROR 
o.a.i.c.c.t.WrappedThreadPoolExecutor:111 - Exception in thread pool 
org.apache.iotdb.threadpool:type=Pipe-Connector-Executor-Pool 
   org.apache.iotdb.pipe.api.exception.PipeConnectionException: PipeConnector: 
org.apache.iotdb.db.pipe.connector.protocol.thrift.sync.IoTDBThriftSyncConnector
 heartbeat failed
           at 
org.apache.iotdb.db.pipe.task.subtask.connector.PipeConnectorSubtask.executeOnce(PipeConnectorSubtask.java:111)
           at 
org.apache.iotdb.db.pipe.task.subtask.PipeSubtask.call(PipeSubtask.java:80)
           at 
org.apache.iotdb.db.pipe.task.subtask.connector.PipeConnectorSubtask.call(PipeConnectorSubtask.java:82)
           at 
org.apache.iotdb.db.pipe.task.subtask.connector.PipeConnectorSubtask.call(PipeConnectorSubtask.java:49)
           at 
com.google.common.util.concurrent.TrustedListenableFutureTask$TrustedFutureInterruptibleTask.runInterruptibly(TrustedListenableFutureTask.java:131)
           at 
com.google.common.util.concurrent.InterruptibleTask.run(InterruptibleTask.java:75)
           at 
com.google.common.util.concurrent.TrustedListenableFutureTask.run(TrustedListenableFutureTask.java:82)
           at 
java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128)
           at 
java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628)
           at java.base/java.lang.Thread.run(Thread.java:829)
   Caused by: org.apache.thrift.TApplicationException: Internal error 
processing pipeTransfer
           at 
org.apache.thrift.TServiceClient.receiveBase(TServiceClient.java:79)
           at 
org.apache.iotdb.service.rpc.thrift.IClientRPCService$Client.recv_pipeTransfer(IClientRPCService.java:1665)
           at 
org.apache.iotdb.service.rpc.thrift.IClientRPCService$Client.pipeTransfer(IClientRPCService.java:1652)
           at 
org.apache.iotdb.db.pipe.connector.protocol.thrift.sync.IoTDBThriftSyncConnector.doTransfer(IoTDBThriftSyncConnector.java:276)
           at 
org.apache.iotdb.db.pipe.connector.protocol.thrift.sync.IoTDBThriftSyncConnector.transfer(IoTDBThriftSyncConnector.java:266)
           at 
org.apache.iotdb.db.pipe.task.subtask.connector.PipeConnectorSubtask.executeOnce(PipeConnectorSubtask.java:108)
           ... 9 common frames omitted
   ```
   
   - from IoTDB B DN (6668)
   
   ```
   2023-09-22 15:52:35,743 [pool-31-IoTDB-ClientRPC-Processor-3] ERROR 
o.a.t.ProcessFunction:47 - Internal error processing pipeTransfer 
   java.lang.NullPointerException: null
           at 
org.apache.iotdb.db.utils.CommonUtils.checkCanCastType(CommonUtils.java:113)
           at 
org.apache.iotdb.db.queryengine.plan.statement.crud.InsertRowStatement.checkAndCastDataType(InsertRowStatement.java:177)
           at 
org.apache.iotdb.db.queryengine.plan.statement.crud.InsertBaseStatement.selfCheckDataTypes(InsertBaseStatement.java:167)
           at 
org.apache.iotdb.db.queryengine.plan.statement.crud.InsertRowStatement.validateMeasurementSchema(InsertRowStatement.java:382)
           at 
org.apache.iotdb.db.queryengine.plan.analyze.schema.ISchemaValidation.computeMeasurement(ISchemaValidation.java:34)
           at 
org.apache.iotdb.db.queryengine.common.schematree.ClusterSchemaTree.compute(ClusterSchemaTree.java:191)
           at 
org.apache.iotdb.db.queryengine.plan.analyze.schema.NormalSchemaFetcher.processNormalTimeSeries(NormalSchemaFetcher.java:285)
           at 
org.apache.iotdb.db.queryengine.plan.analyze.schema.ClusterSchemaFetcher.fetchAndComputeSchemaWithAutoCreate(ClusterSchemaFetcher.java:216)
           at 
org.apache.iotdb.db.queryengine.plan.analyze.schema.SchemaValidator.validate(SchemaValidator.java:45)
           at 
org.apache.iotdb.db.queryengine.plan.analyze.AnalyzeVisitor.validateSchema(AnalyzeVisitor.java:2673)
           at 
org.apache.iotdb.db.queryengine.plan.analyze.AnalyzeVisitor.visitInsertRows(AnalyzeVisitor.java:2557)
           at 
org.apache.iotdb.db.queryengine.plan.analyze.AnalyzeVisitor.visitPipeEnrichedInsert(AnalyzeVisitor.java:2653)
           at 
org.apache.iotdb.db.queryengine.plan.analyze.AnalyzeVisitor.visitPipeEnrichedInsert(AnalyzeVisitor.java:208)
           at 
org.apache.iotdb.db.queryengine.plan.statement.crud.PipeEnrichedInsertBaseStatement.accept(PipeEnrichedInsertBaseStatement.java:55)
           at 
org.apache.iotdb.db.queryengine.plan.statement.StatementVisitor.process(StatementVisitor.java:130)
           at 
org.apache.iotdb.db.queryengine.plan.analyze.Analyzer.analyze(Analyzer.java:47)
           at 
org.apache.iotdb.db.queryengine.plan.execution.QueryExecution.analyze(QueryExecution.java:310)
           at 
org.apache.iotdb.db.queryengine.plan.execution.QueryExecution.<init>(QueryExecution.java:170)
           at 
org.apache.iotdb.db.queryengine.plan.Coordinator.createQueryExecution(Coordinator.java:113)
           at 
org.apache.iotdb.db.queryengine.plan.Coordinator.execute(Coordinator.java:147)
           at 
org.apache.iotdb.db.pipe.receiver.thrift.IoTDBThriftReceiverV1.executeStatement(IoTDBThriftReceiverV1.java:498)
           at 
org.apache.iotdb.db.pipe.receiver.thrift.IoTDBThriftReceiverV1.handleTransferTabletBatch(IoTDBThriftReceiverV1.java:241)
           at 
org.apache.iotdb.db.pipe.receiver.thrift.IoTDBThriftReceiverV1.receive(IoTDBThriftReceiverV1.java:111)
           at 
org.apache.iotdb.db.pipe.receiver.thrift.IoTDBThriftReceiverAgent.receive(IoTDBThriftReceiverAgent.java:43)
           at 
org.apache.iotdb.db.protocol.thrift.impl.ClientRPCServiceImpl.pipeTransfer(ClientRPCServiceImpl.java:2549)
           at 
org.apache.iotdb.service.rpc.thrift.IClientRPCService$Processor$pipeTransfer.getResult(IClientRPCService.java:5295)
           at 
org.apache.iotdb.service.rpc.thrift.IClientRPCService$Processor$pipeTransfer.getResult(IClientRPCService.java:5275)
           at org.apache.thrift.ProcessFunction.process(ProcessFunction.java:38)
           at 
org.apache.iotdb.db.protocol.thrift.ProcessorWithMetrics.process(ProcessorWithMetrics.java:64)
           at 
org.apache.thrift.server.TThreadPoolServer$WorkerProcess.run(TThreadPoolServer.java:248)
           at 
java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128)
           at 
java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628)
           at java.base/java.lang.Thread.run(Thread.java:829)
   ```
   
   ### Anything else?
   
   _No response_
   
   ### Are you willing to submit a PR?
   
   - [X] I'm willing to submit a PR!


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]

Reply via email to