You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@doris.apache.org by "Chixiami (via GitHub)" <gi...@apache.org> on 2025/10/25 03:39:07 UTC
[I] [Bug] FlightSQL throws IllegalArgumentException: null [doris]
Chixiami opened a new issue, #57318:
URL: https://github.com/apache/doris/issues/57318
### Search before asking
- [x] I had searched in the [issues](https://github.com/apache/doris/issues?q=is%3Aissue) and found no similar issues.
### Version
4.0.0
### What's Wrong?
Using Python to connect to Doris through Arrow Flight SQL to query data errors, the same code will not report errors in 3.1.0
### What You Expected?
Can use arrow flight sql to query results normally
### How to Reproduce?
1. Enable FlightSQL
2. Using Python to connect to Doris through Arrow Flight SQL
```python
import adbc_driver_manager
import adbc_driver_flightsql.dbapi as flight_sql
conn = flight_sql.connect(uri="grpc://192.168.1.90:18070", db_kwargs={
adbc_driver_manager.DatabaseOptions.USERNAME.value: "root",
adbc_driver_manager.DatabaseOptions.PASSWORD.value: "Ekhip_789",
})
cursor = conn.cursor()
def execute(sql):
print("\n### execute query: ###\n " + sql)
cursor.execute(sql)
print("### result: ###")
print(cursor.fetch_polars())
cursor.close()
if __name__ == "__main__":
execute("select 1")
```
python error
```
warnings.warn(
### execute query: ###
select 1
Traceback (most recent call last):
File "D:\ch\private\data_diff\test.py", line 22, in <module>
execute("select 1")
File "D:\ch\private\data_diff\test.py", line 13, in execute
cursor.execute(sql)
File "D:\ch\private\data_diff\.venv1\Lib\site-packages\adbc_driver_manager\dbapi.py", line 751, in execute
handle, self._rowcount = _blocking_call(
^^^^^^^^^^^^^^^
File "adbc_driver_manager/_lib.pyx", line 1770, in adbc_driver_manager._lib._blocking_call
return func(*args, **kwargs)
File "adbc_driver_manager/_lib.pyx", line 1364, in adbc_driver_manager._lib.AdbcStatement.execute_query
check_error(status, &c_error)
File "adbc_driver_manager/_lib.pyx", line 261, in adbc_driver_manager._lib.check_error
raise convert_error(status, error)
adbc_driver_manager.InternalError: INTERNAL: [FlightSQL] get flight info statement failed, after executeQueryStatement handleQuery, java.lang.RuntimeException: after executeQueryStatement handleQuery, error code: ERR_UNKNOWN_ERROR, error msg: IllegalArgumentException, msg: null (Internal; ExecuteQuery)
Exception ignored in: <function Connection.__del__ at 0x0000028591968900>
Traceback (most recent call last):
File "D:\ch\private\data_diff\.venv1\Lib\site-packages\adbc_driver_manager\dbapi.py", line 382, in __del__
File "D:\ch\private\data_diff\.venv1\Lib\site-packages\adbc_driver_manager\dbapi.py", line 351, in close
File "adbc_driver_manager/_lib.pyx", line 1193, in adbc_driver_manager._lib.AdbcConnection.close
File "adbc_driver_manager/_lib.pyx", line 334, in adbc_driver_manager._lib._AdbcHandle._check_open_children
File "adbc_driver_manager/_lib.pyx", line 336, in adbc_driver_manager._lib._AdbcHandle._check_open_children
RuntimeError: Cannot close AdbcConnection with open AdbcStatement
```
fe error
```
2025-10-25 11:11:45,963 INFO (flight-server-default-executor-9|200) [FlightTokenManagerImpl.createToken():144] Created flight token for user: root, token: p88n62tgsbnn19cmb2s71780pb
2025-10-25 11:11:45,965 INFO (flight-server-default-executor-8|200) [FlightTokenManagerImpl.validateToken():172] Validated bearer token for user: root
2025-10-25 11:11:45,969 INFO (flight-server-default-executor-8|200) [FlightTokenManagerImpl.validateToken():172] Validated bearer token for user: root
2025-10-25 11:11:45,972 INFO (flight-server-default-executor-8|200) [FlightTokenManagerImpl.validateToken():172] Validated bearer token for user: root
2025-10-25 11:11:45,973 INFO (pool-6-thread-15|200) [FlightTokenManagerImpl.validateToken():172] Validated bearer token for user: root
2025-10-25 11:11:45,978 INFO (flight-server-default-executor-8|200) [FlightTokenManagerImpl.validateToken():172] Validated bearer token for user: root
2025-10-25 11:11:45,983 INFO (flight-server-default-executor-8|200) [InitMaterializationContextHook.createAsyncMaterializationContext():201] Enable materialized view rewrite but availableMTMVs is empty, query id is stmt[578, cb2c2dffdd4621-aa3e12354b99a038]
2025-10-25 11:11:45,986 WARN (flight-server-default-executor-8|200) [StmtExecutor.executeAndSendResult():1405] cancel fragment query_id:cb2c2dffdd4621-aa3e12354b99a038 cause null
2025-10-25 11:11:45,986 WARN (flight-server-default-executor-8|200) [Coordinator.cancel():1290] Cancel execution of query cb2c2dffdd4621-aa3e12354b99a038, this is a outside invoke, cancelReason Status [errorCode=INTERNAL_ERROR, errorMsg=cancel fragment query_id:cb2c2dffdd4621-aa3e12354b99a038 cause null]
2025-10-25 11:11:45,986 WARN (flight-server-default-executor-8|200) [StmtExecutor.execute():546] Nereids execute failed. stmt[578, cb2c2dffdd4621-aa3e12354b99a038]
java.lang.IllegalArgumentException: null
at java.util.concurrent.ArrayBlockingQueue.<init>(ArrayBlockingQueue.java:272) ~[?:?]
at java.util.concurrent.ArrayBlockingQueue.<init>(ArrayBlockingQueue.java:257) ~[?:?]
at org.apache.doris.qe.ResultReceiverConsumer.<init>(ResultReceiverConsumer.java:85) ~[doris-fe.jar:1.2-SNAPSHOT]
at org.apache.doris.qe.Coordinator.execInternal(Coordinator.java:761) ~[doris-fe.jar:1.2-SNAPSHOT]
at org.apache.doris.qe.Coordinator.exec(Coordinator.java:686) ~[doris-fe.jar:1.2-SNAPSHOT]
at org.apache.doris.qe.StmtExecutor.executeAndSendResult(StmtExecutor.java:1289) ~[doris-fe.jar:1.2-SNAPSHOT]
at org.apache.doris.qe.StmtExecutor.handleQueryStmt(StmtExecutor.java:1247) ~[doris-fe.jar:1.2-SNAPSHOT]
at org.apache.doris.qe.StmtExecutor.handleQueryWithRetry(StmtExecutor.java:904) ~[doris-fe.jar:1.2-SNAPSHOT]
at org.apache.doris.qe.StmtExecutor.executeByNereids(StmtExecutor.java:811) ~[doris-fe.jar:1.2-SNAPSHOT]
at org.apache.doris.qe.StmtExecutor.execute(StmtExecutor.java:537) ~[doris-fe.jar:1.2-SNAPSHOT]
at org.apache.doris.qe.StmtExecutor.queryRetry(StmtExecutor.java:499) ~[doris-fe.jar:1.2-SNAPSHOT]
at org.apache.doris.qe.StmtExecutor.execute(StmtExecutor.java:484) ~[doris-fe.jar:1.2-SNAPSHOT]
at org.apache.doris.qe.ConnectProcessor.executeQuery(ConnectProcessor.java:309) ~[doris-fe.jar:1.2-SNAPSHOT]
at org.apache.doris.qe.ConnectProcessor.handleQuery(ConnectProcessor.java:196) ~[doris-fe.jar:1.2-SNAPSHOT]
at org.apache.doris.service.arrowflight.FlightSqlConnectProcessor.handleQuery(FlightSqlConnectProcessor.java:98) ~[doris-fe.jar:1.2-SNAPSHOT]
at org.apache.doris.service.arrowflight.DorisFlightSqlProducer.executeQueryStatement(DorisFlightSqlProducer.java:194) ~[doris-fe.jar:1.2-SNAPSHOT]
at org.apache.doris.service.arrowflight.DorisFlightSqlProducer.getFlightInfoPreparedStatement(DorisFlightSqlProducer.java:310) ~[doris-fe.jar:1.2-SNAPSHOT]
at org.apache.arrow.flight.sql.FlightSqlProducer.getFlightInfo(FlightSqlProducer.java:121) ~[flight-sql-17.0.0.jar:17.0.0]
at org.apache.arrow.flight.FlightService.getFlightInfo(FlightService.java:263) ~[flight-core-17.0.0.jar:17.0.0]
at org.apache.arrow.flight.impl.FlightServiceGrpc$MethodHandlers.invoke(FlightServiceGrpc.java:1010) ~[flight-core-17.0.0.jar:17.0.0]
at io.grpc.stub.ServerCalls$UnaryServerCallHandler$UnaryServerCallListener.onHalfClose(ServerCalls.java:182) ~[grpc-stub-1.63.0.jar:1.63.0]
at io.grpc.PartialForwardingServerCallListener.onHalfClose(PartialForwardingServerCallListener.java:35) ~[grpc-api-1.63.0.jar:1.63.0]
at io.grpc.ForwardingServerCallListener.onHalfClose(ForwardingServerCallListener.java:23) ~[grpc-api-1.63.0.jar:1.63.0]
at io.grpc.ForwardingServerCallListener$SimpleForwardingServerCallListener.onHalfClose(ForwardingServerCallListener.java:40) ~[grpc-api-1.63.0.jar:1.63.0]
at io.grpc.Contexts$ContextualizedServerCallListener.onHalfClose(Contexts.java:86) ~[grpc-api-1.63.0.jar:1.63.0]
at io.grpc.PartialForwardingServerCallListener.onHalfClose(PartialForwardingServerCallListener.java:35) ~[grpc-api-1.63.0.jar:1.63.0]
at io.grpc.ForwardingServerCallListener.onHalfClose(ForwardingServerCallListener.java:23) ~[grpc-api-1.63.0.jar:1.63.0]
at io.grpc.ForwardingServerCallListener$SimpleForwardingServerCallListener.onHalfClose(ForwardingServerCallListener.java:40) ~[grpc-api-1.63.0.jar:1.63.0]
at io.grpc.Contexts$ContextualizedServerCallListener.onHalfClose(Contexts.java:86) ~[grpc-api-1.63.0.jar:1.63.0]
at io.grpc.internal.ServerCallImpl$ServerStreamListenerImpl.halfClosed(ServerCallImpl.java:356) ~[grpc-core-1.63.0.jar:1.63.0]
at io.grpc.internal.ServerImpl$JumpToApplicationThreadServerStreamListener$1HalfClosed.runInContext(ServerImpl.java:861) ~[grpc-core-1.63.0.jar:1.63.0]
at io.grpc.internal.ContextRunnable.run(ContextRunnable.java:37) ~[grpc-core-1.63.0.jar:1.63.0]
at io.grpc.internal.SerializingExecutor.run(SerializingExecutor.java:133) ~[grpc-core-1.63.0.jar:1.63.0]
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) ~[?:?]
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) ~[?:?]
at java.lang.Thread.run(Thread.java:833) ~[?:?]
2025-10-25 11:11:45,986 WARN (flight-server-default-executor-8|200) [ConnectProcessor.handleQueryException():501] Process one query failed because unknown reason:
java.lang.IllegalArgumentException: null
at java.util.concurrent.ArrayBlockingQueue.<init>(ArrayBlockingQueue.java:272) ~[?:?]
at java.util.concurrent.ArrayBlockingQueue.<init>(ArrayBlockingQueue.java:257) ~[?:?]
at org.apache.doris.qe.ResultReceiverConsumer.<init>(ResultReceiverConsumer.java:85) ~[doris-fe.jar:1.2-SNAPSHOT]
at org.apache.doris.qe.Coordinator.execInternal(Coordinator.java:761) ~[doris-fe.jar:1.2-SNAPSHOT]
at org.apache.doris.qe.Coordinator.exec(Coordinator.java:686) ~[doris-fe.jar:1.2-SNAPSHOT]
at org.apache.doris.qe.StmtExecutor.executeAndSendResult(StmtExecutor.java:1289) ~[doris-fe.jar:1.2-SNAPSHOT]
at org.apache.doris.qe.StmtExecutor.handleQueryStmt(StmtExecutor.java:1247) ~[doris-fe.jar:1.2-SNAPSHOT]
at org.apache.doris.qe.StmtExecutor.handleQueryWithRetry(StmtExecutor.java:904) ~[doris-fe.jar:1.2-SNAPSHOT]
at org.apache.doris.qe.StmtExecutor.executeByNereids(StmtExecutor.java:811) ~[doris-fe.jar:1.2-SNAPSHOT]
at org.apache.doris.qe.StmtExecutor.execute(StmtExecutor.java:537) ~[doris-fe.jar:1.2-SNAPSHOT]
at org.apache.doris.qe.StmtExecutor.queryRetry(StmtExecutor.java:499) ~[doris-fe.jar:1.2-SNAPSHOT]
at org.apache.doris.qe.StmtExecutor.execute(StmtExecutor.java:484) ~[doris-fe.jar:1.2-SNAPSHOT]
at org.apache.doris.qe.ConnectProcessor.executeQuery(ConnectProcessor.java:309) ~[doris-fe.jar:1.2-SNAPSHOT]
at org.apache.doris.qe.ConnectProcessor.handleQuery(ConnectProcessor.java:196) ~[doris-fe.jar:1.2-SNAPSHOT]
at org.apache.doris.service.arrowflight.FlightSqlConnectProcessor.handleQuery(FlightSqlConnectProcessor.java:98) ~[doris-fe.jar:1.2-SNAPSHOT]
at org.apache.doris.service.arrowflight.DorisFlightSqlProducer.executeQueryStatement(DorisFlightSqlProducer.java:194) ~[doris-fe.jar:1.2-SNAPSHOT]
at org.apache.doris.service.arrowflight.DorisFlightSqlProducer.getFlightInfoPreparedStatement(DorisFlightSqlProducer.java:310) ~[doris-fe.jar:1.2-SNAPSHOT]
at org.apache.arrow.flight.sql.FlightSqlProducer.getFlightInfo(FlightSqlProducer.java:121) ~[flight-sql-17.0.0.jar:17.0.0]
at org.apache.arrow.flight.FlightService.getFlightInfo(FlightService.java:263) ~[flight-core-17.0.0.jar:17.0.0]
at org.apache.arrow.flight.impl.FlightServiceGrpc$MethodHandlers.invoke(FlightServiceGrpc.java:1010) ~[flight-core-17.0.0.jar:17.0.0]
at io.grpc.stub.ServerCalls$UnaryServerCallHandler$UnaryServerCallListener.onHalfClose(ServerCalls.java:182) ~[grpc-stub-1.63.0.jar:1.63.0]
at io.grpc.PartialForwardingServerCallListener.onHalfClose(PartialForwardingServerCallListener.java:35) ~[grpc-api-1.63.0.jar:1.63.0]
at io.grpc.ForwardingServerCallListener.onHalfClose(ForwardingServerCallListener.java:23) ~[grpc-api-1.63.0.jar:1.63.0]
at io.grpc.ForwardingServerCallListener$SimpleForwardingServerCallListener.onHalfClose(ForwardingServerCallListener.java:40) ~[grpc-api-1.63.0.jar:1.63.0]
at io.grpc.Contexts$ContextualizedServerCallListener.onHalfClose(Contexts.java:86) ~[grpc-api-1.63.0.jar:1.63.0]
at io.grpc.PartialForwardingServerCallListener.onHalfClose(PartialForwardingServerCallListener.java:35) ~[grpc-api-1.63.0.jar:1.63.0]
at io.grpc.ForwardingServerCallListener.onHalfClose(ForwardingServerCallListener.java:23) ~[grpc-api-1.63.0.jar:1.63.0]
at io.grpc.ForwardingServerCallListener$SimpleForwardingServerCallListener.onHalfClose(ForwardingServerCallListener.java:40) ~[grpc-api-1.63.0.jar:1.63.0]
at io.grpc.Contexts$ContextualizedServerCallListener.onHalfClose(Contexts.java:86) ~[grpc-api-1.63.0.jar:1.63.0]
at io.grpc.internal.ServerCallImpl$ServerStreamListenerImpl.halfClosed(ServerCallImpl.java:356) ~[grpc-core-1.63.0.jar:1.63.0]
at io.grpc.internal.ServerImpl$JumpToApplicationThreadServerStreamListener$1HalfClosed.runInContext(ServerImpl.java:861) ~[grpc-core-1.63.0.jar:1.63.0]
at io.grpc.internal.ContextRunnable.run(ContextRunnable.java:37) ~[grpc-core-1.63.0.jar:1.63.0]
at io.grpc.internal.SerializingExecutor.run(SerializingExecutor.java:133) ~[grpc-core-1.63.0.jar:1.63.0]
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) ~[?:?]
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) ~[?:?]
at java.lang.Thread.run(Thread.java:833) ~[?:?]
2025-10-25 11:11:45,987 WARN (flight-server-default-executor-8|200) [Profile.updateSummary():331] update profile cb2c2dffdd4621-aa3e12354b99a038 failed
java.lang.NullPointerException: Cannot invoke "org.apache.doris.nereids.StatementContext.isShortCircuitQuery()" because the return value of "org.apache.doris.qe.ConnectContext.getStatementContext()" is null
at org.apache.doris.planner.OlapScanNode.isPointQuery(OlapScanNode.java:886) ~[doris-fe.jar:1.2-SNAPSHOT]
at org.apache.doris.planner.OlapScanNode.getNodeExplainString(OlapScanNode.java:1084) ~[doris-fe.jar:1.2-SNAPSHOT]
at org.apache.doris.planner.PlanNode.getplanNodeExplainString(PlanNode.java:523) ~[doris-fe.jar:1.2-SNAPSHOT]
at org.apache.doris.planner.PlanNode.getExplainStringMap(PlanNode.java:536) ~[doris-fe.jar:1.2-SNAPSHOT]
at org.apache.doris.planner.PlanNode.getExplainStringMap(PlanNode.java:538) ~[doris-fe.jar:1.2-SNAPSHOT]
at org.apache.doris.planner.PlanFragment.getExplainStringMap(PlanFragment.java:375) ~[doris-fe.jar:1.2-SNAPSHOT]
at org.apache.doris.planner.Planner.getExplainStringMap(Planner.java:109) ~[doris-fe.jar:1.2-SNAPSHOT]
at org.apache.doris.common.profile.Profile.updateSummary(Profile.java:327) ~[doris-fe.jar:1.2-SNAPSHOT]
at org.apache.doris.qe.StmtExecutor.updateProfile(StmtExecutor.java:1060) ~[doris-fe.jar:1.2-SNAPSHOT]
at org.apache.doris.qe.StmtExecutor.finalizeQuery(StmtExecutor.java:864) ~[doris-fe.jar:1.2-SNAPSHOT]
at org.apache.doris.service.arrowflight.FlightSqlConnectProcessor.close(FlightSqlConnectProcessor.java:203) ~[doris-fe.jar:1.2-SNAPSHOT]
at org.apache.doris.service.arrowflight.DorisFlightSqlProducer.executeQueryStatement(DorisFlightSqlProducer.java:193) ~[doris-fe.jar:1.2-SNAPSHOT]
at org.apache.doris.service.arrowflight.DorisFlightSqlProducer.getFlightInfoPreparedStatement(DorisFlightSqlProducer.java:310) ~[doris-fe.jar:1.2-SNAPSHOT]
at org.apache.arrow.flight.sql.FlightSqlProducer.getFlightInfo(FlightSqlProducer.java:121) ~[flight-sql-17.0.0.jar:17.0.0]
at org.apache.arrow.flight.FlightService.getFlightInfo(FlightService.java:263) ~[flight-core-17.0.0.jar:17.0.0]
at org.apache.arrow.flight.impl.FlightServiceGrpc$MethodHandlers.invoke(FlightServiceGrpc.java:1010) ~[flight-core-17.0.0.jar:17.0.0]
at io.grpc.stub.ServerCalls$UnaryServerCallHandler$UnaryServerCallListener.onHalfClose(ServerCalls.java:182) ~[grpc-stub-1.63.0.jar:1.63.0]
at io.grpc.PartialForwardingServerCallListener.onHalfClose(PartialForwardingServerCallListener.java:35) ~[grpc-api-1.63.0.jar:1.63.0]
at io.grpc.ForwardingServerCallListener.onHalfClose(ForwardingServerCallListener.java:23) ~[grpc-api-1.63.0.jar:1.63.0]
at io.grpc.ForwardingServerCallListener$SimpleForwardingServerCallListener.onHalfClose(ForwardingServerCallListener.java:40) ~[grpc-api-1.63.0.jar:1.63.0]
at io.grpc.Contexts$ContextualizedServerCallListener.onHalfClose(Contexts.java:86) ~[grpc-api-1.63.0.jar:1.63.0]
at io.grpc.PartialForwardingServerCallListener.onHalfClose(PartialForwardingServerCallListener.java:35) ~[grpc-api-1.63.0.jar:1.63.0]
at io.grpc.ForwardingServerCallListener.onHalfClose(ForwardingServerCallListener.java:23) ~[grpc-api-1.63.0.jar:1.63.0]
at io.grpc.ForwardingServerCallListener$SimpleForwardingServerCallListener.onHalfClose(ForwardingServerCallListener.java:40) ~[grpc-api-1.63.0.jar:1.63.0]
at io.grpc.Contexts$ContextualizedServerCallListener.onHalfClose(Contexts.java:86) ~[grpc-api-1.63.0.jar:1.63.0]
at io.grpc.internal.ServerCallImpl$ServerStreamListenerImpl.halfClosed(ServerCallImpl.java:356) ~[grpc-core-1.63.0.jar:1.63.0]
at io.grpc.internal.ServerImpl$JumpToApplicationThreadServerStreamListener$1HalfClosed.runInContext(ServerImpl.java:861) ~[grpc-core-1.63.0.jar:1.63.0]
at io.grpc.internal.ContextRunnable.run(ContextRunnable.java:37) ~[grpc-core-1.63.0.jar:1.63.0]
at io.grpc.internal.SerializingExecutor.run(SerializingExecutor.java:133) ~[grpc-core-1.63.0.jar:1.63.0]
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) ~[?:?]
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) ~[?:?]
at java.lang.Thread.run(Thread.java:833) ~[?:?]
2025-10-25 11:11:45,987 WARN (flight-server-default-executor-8|200) [StmtExecutor.updateProfile():1066] failed to update profile, ignore this error
java.lang.NullPointerException: Cannot invoke "org.apache.doris.nereids.StatementContext.isShortCircuitQuery()" because the return value of "org.apache.doris.qe.ConnectContext.getStatementContext()" is null
at org.apache.doris.planner.OlapScanNode.isPointQuery(OlapScanNode.java:886) ~[doris-fe.jar:1.2-SNAPSHOT]
at org.apache.doris.planner.OlapScanNode.getNodeExplainString(OlapScanNode.java:1084) ~[doris-fe.jar:1.2-SNAPSHOT]
at org.apache.doris.planner.PlanNode.getplanNodeExplainString(PlanNode.java:523) ~[doris-fe.jar:1.2-SNAPSHOT]
at org.apache.doris.planner.PlanNode.getExplainStringMap(PlanNode.java:536) ~[doris-fe.jar:1.2-SNAPSHOT]
at org.apache.doris.planner.PlanNode.getExplainStringMap(PlanNode.java:538) ~[doris-fe.jar:1.2-SNAPSHOT]
at org.apache.doris.planner.PlanFragment.getExplainStringMap(PlanFragment.java:375) ~[doris-fe.jar:1.2-SNAPSHOT]
at org.apache.doris.planner.Planner.getExplainStringMap(Planner.java:109) ~[doris-fe.jar:1.2-SNAPSHOT]
at org.apache.doris.common.profile.Profile.updateSummary(Profile.java:327) ~[doris-fe.jar:1.2-SNAPSHOT]
at org.apache.doris.qe.StmtExecutor.updateProfile(StmtExecutor.java:1060) ~[doris-fe.jar:1.2-SNAPSHOT]
at org.apache.doris.qe.StmtExecutor.finalizeQuery(StmtExecutor.java:864) ~[doris-fe.jar:1.2-SNAPSHOT]
at org.apache.doris.service.arrowflight.FlightSqlConnectProcessor.close(FlightSqlConnectProcessor.java:203) ~[doris-fe.jar:1.2-SNAPSHOT]
at org.apache.doris.service.arrowflight.DorisFlightSqlProducer.executeQueryStatement(DorisFlightSqlProducer.java:193) ~[doris-fe.jar:1.2-SNAPSHOT]
at org.apache.doris.service.arrowflight.DorisFlightSqlProducer.getFlightInfoPreparedStatement(DorisFlightSqlProducer.java:310) ~[doris-fe.jar:1.2-SNAPSHOT]
at org.apache.arrow.flight.sql.FlightSqlProducer.getFlightInfo(FlightSqlProducer.java:121) ~[flight-sql-17.0.0.jar:17.0.0]
at org.apache.arrow.flight.FlightService.getFlightInfo(FlightService.java:263) ~[flight-core-17.0.0.jar:17.0.0]
at org.apache.arrow.flight.impl.FlightServiceGrpc$MethodHandlers.invoke(FlightServiceGrpc.java:1010) ~[flight-core-17.0.0.jar:17.0.0]
at io.grpc.stub.ServerCalls$UnaryServerCallHandler$UnaryServerCallListener.onHalfClose(ServerCalls.java:182) ~[grpc-stub-1.63.0.jar:1.63.0]
at io.grpc.PartialForwardingServerCallListener.onHalfClose(PartialForwardingServerCallListener.java:35) ~[grpc-api-1.63.0.jar:1.63.0]
at io.grpc.ForwardingServerCallListener.onHalfClose(ForwardingServerCallListener.java:23) ~[grpc-api-1.63.0.jar:1.63.0]
at io.grpc.ForwardingServerCallListener$SimpleForwardingServerCallListener.onHalfClose(ForwardingServerCallListener.java:40) ~[grpc-api-1.63.0.jar:1.63.0]
at io.grpc.Contexts$ContextualizedServerCallListener.onHalfClose(Contexts.java:86) ~[grpc-api-1.63.0.jar:1.63.0]
at io.grpc.PartialForwardingServerCallListener.onHalfClose(PartialForwardingServerCallListener.java:35) ~[grpc-api-1.63.0.jar:1.63.0]
at io.grpc.ForwardingServerCallListener.onHalfClose(ForwardingServerCallListener.java:23) ~[grpc-api-1.63.0.jar:1.63.0]
at io.grpc.ForwardingServerCallListener$SimpleForwardingServerCallListener.onHalfClose(ForwardingServerCallListener.java:40) ~[grpc-api-1.63.0.jar:1.63.0]
at io.grpc.Contexts$ContextualizedServerCallListener.onHalfClose(Contexts.java:86) ~[grpc-api-1.63.0.jar:1.63.0]
at io.grpc.internal.ServerCallImpl$ServerStreamListenerImpl.halfClosed(ServerCallImpl.java:356) ~[grpc-core-1.63.0.jar:1.63.0]
at io.grpc.internal.ServerImpl$JumpToApplicationThreadServerStreamListener$1HalfClosed.runInContext(ServerImpl.java:861) ~[grpc-core-1.63.0.jar:1.63.0]
at io.grpc.internal.ContextRunnable.run(ContextRunnable.java:37) ~[grpc-core-1.63.0.jar:1.63.0]
at io.grpc.internal.SerializingExecutor.run(SerializingExecutor.java:133) ~[grpc-core-1.63.0.jar:1.63.0]
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) ~[?:?]
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) ~[?:?]
at java.lang.Thread.run(Thread.java:833) ~[?:?]
2025-10-25 11:11:45,988 ERROR (flight-server-default-executor-8|200) [DorisFlightSqlProducer.executeQueryStatement():283] get flight info statement failed, after executeQueryStatement handleQuery, java.lang.RuntimeException: after executeQueryStatement handleQuery, error code: ERR_UNKNOWN_ERROR, error msg: IllegalArgumentException, msg: null
java.lang.RuntimeException: after executeQueryStatement handleQuery
at org.apache.doris.service.arrowflight.DorisFlightSqlProducer.executeQueryStatement(DorisFlightSqlProducer.java:196) ~[doris-fe.jar:1.2-SNAPSHOT]
at org.apache.doris.service.arrowflight.DorisFlightSqlProducer.getFlightInfoPreparedStatement(DorisFlightSqlProducer.java:310) ~[doris-fe.jar:1.2-SNAPSHOT]
at org.apache.arrow.flight.sql.FlightSqlProducer.getFlightInfo(FlightSqlProducer.java:121) ~[flight-sql-17.0.0.jar:17.0.0]
at org.apache.arrow.flight.FlightService.getFlightInfo(FlightService.java:263) ~[flight-core-17.0.0.jar:17.0.0]
at org.apache.arrow.flight.impl.FlightServiceGrpc$MethodHandlers.invoke(FlightServiceGrpc.java:1010) ~[flight-core-17.0.0.jar:17.0.0]
at io.grpc.stub.ServerCalls$UnaryServerCallHandler$UnaryServerCallListener.onHalfClose(ServerCalls.java:182) ~[grpc-stub-1.63.0.jar:1.63.0]
at io.grpc.PartialForwardingServerCallListener.onHalfClose(PartialForwardingServerCallListener.java:35) ~[grpc-api-1.63.0.jar:1.63.0]
at io.grpc.ForwardingServerCallListener.onHalfClose(ForwardingServerCallListener.java:23) ~[grpc-api-1.63.0.jar:1.63.0]
at io.grpc.ForwardingServerCallListener$SimpleForwardingServerCallListener.onHalfClose(ForwardingServerCallListener.java:40) ~[grpc-api-1.63.0.jar:1.63.0]
at io.grpc.Contexts$ContextualizedServerCallListener.onHalfClose(Contexts.java:86) ~[grpc-api-1.63.0.jar:1.63.0]
at io.grpc.PartialForwardingServerCallListener.onHalfClose(PartialForwardingServerCallListener.java:35) ~[grpc-api-1.63.0.jar:1.63.0]
at io.grpc.ForwardingServerCallListener.onHalfClose(ForwardingServerCallListener.java:23) ~[grpc-api-1.63.0.jar:1.63.0]
at io.grpc.ForwardingServerCallListener$SimpleForwardingServerCallListener.onHalfClose(ForwardingServerCallListener.java:40) ~[grpc-api-1.63.0.jar:1.63.0]
at io.grpc.Contexts$ContextualizedServerCallListener.onHalfClose(Contexts.java:86) ~[grpc-api-1.63.0.jar:1.63.0]
at io.grpc.internal.ServerCallImpl$ServerStreamListenerImpl.halfClosed(ServerCallImpl.java:356) ~[grpc-core-1.63.0.jar:1.63.0]
at io.grpc.internal.ServerImpl$JumpToApplicationThreadServerStreamListener$1HalfClosed.runInContext(ServerImpl.java:861) ~[grpc-core-1.63.0.jar:1.63.0]
at io.grpc.internal.ContextRunnable.run(ContextRunnable.java:37) ~[grpc-core-1.63.0.jar:1.63.0]
at io.grpc.internal.SerializingExecutor.run(SerializingExecutor.java:133) ~[grpc-core-1.63.0.jar:1.63.0]
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) ~[?:?]
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) ~[?:?]
at java.lang.Thread.run(Thread.java:833) ~[?:?]
2025-10-25 11:11:46,003 INFO (flight-server-default-executor-8|200) [FlightTokenManagerImpl.validateToken():172] Validated bearer token for user: root
```
### Anything Else?
_No response_
### Are you willing to submit PR?
- [ ] Yes I am willing to submit a PR!
### Code of Conduct
- [x] I agree to follow this project's [Code of Conduct](https://www.apache.org/foundation/policies/conduct)
--
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: commits-unsubscribe@doris.apache.org.apache.org
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@doris.apache.org
For additional commands, e-mail: commits-help@doris.apache.org
Re: [I] [Bug] FlightSQL throws IllegalArgumentException: null 4.0无法使用flightsql [doris]
Posted by "github-actions[bot] (via GitHub)" <gi...@apache.org>.
github-actions[bot] commented on issue #57318:
URL: https://github.com/apache/doris/issues/57318#issuecomment-4755722980
We're closing this issue because it hasn't been updated in a while.
If you'd like to revive this issue, please reopen it and feel free a maintainer to remove the Stale tag!
--
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: commits-unsubscribe@doris.apache.org
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@doris.apache.org
For additional commands, e-mail: commits-help@doris.apache.org
Re: [I] [Bug] FlightSQL throws IllegalArgumentException: null 4.0无法使用flightsql [doris]
Posted by "zhaorongsheng (via GitHub)" <gi...@apache.org>.
zhaorongsheng commented on issue #57318:
URL: https://github.com/apache/doris/issues/57318#issuecomment-3496228950
The issue can not be reproduced by your code. It runs successfully in my own test env. Would you mind listing the configurations of the fe/be?
<img width="3360" height="1478" alt="Image" src="https://github.com/user-attachments/assets/c41e2697-f8aa-45d4-9fa4-ea8cb5586f62" />
<img width="3110" height="556" alt="Image" src="https://github.com/user-attachments/assets/fa68c9df-7f48-4efa-829c-9ff5d0aaafec" />
--
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: commits-unsubscribe@doris.apache.org
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@doris.apache.org
For additional commands, e-mail: commits-help@doris.apache.org
Re: [I] [Bug] FlightSQL throws IllegalArgumentException: null 4.0无法使用flightsql [doris]
Posted by "wjackson (via GitHub)" <gi...@apache.org>.
wjackson commented on issue #57318:
URL: https://github.com/apache/doris/issues/57318#issuecomment-3679070677
I ran into this problem after upgrading from `3.1.1` to `4.0.2`.
If you don't have the problem, you can reproduce it by adding this before `cursor.execute(sql)` in the example code:
cursor.execute("SET experimental_enable_nereids_distribute_planner = false")
If you do have the problem, you can make it go away by adding this before `cursor.execute(sql)` in the example code:
cursor.execute("SET experimental_enable_nereids_distribute_planner = true")
Or by setting the variable globally at the `mysql` prompt:
SET GLOBAL experimental_enable_nereids_distribute_planner = true;
The cause: it seems using Flight SQL without the nereids planner is no longer viable as of 4.0.0:
https://github.com/apache/doris/blob/b4e78bafa82605d013793399a2fc398ee4e10c18/fe/fe-core/src/main/java/org/apache/doris/qe/Coordinator.java#L749
If I'm reading the code correctly, when using Flight SQL `context.isReturnResultFromLocal()` is `false` and `receivers` stays empty. `receivers` can't be empty when passed to `new ResultReceiverConsumer(receivers, timeoutDeadline);`
This problem variable came to light after looking at `fe.audit.log`. In a fresh Doris 4.0.2 install, when running a simple query via Flight SQL, `ChangedVariables` was empty. In the upgrade, non-working cluster `ChangedVariables`` looked like this:
```
ChangedVariables={
"enable_new_type_coercion_behavior":"false"
"enable_audit_plugin":"false"
"insert_visible_timeout_ms":"10000"
"enable_unicode_name_support":"false"
"fetch_splits_max_wait_time_ms":"4000"
"runtime_filter_max_in_num":"1024"
"enable_parallel_result_sink":"false"
"enable_ansi_query_organization_behavior":"false"
"experimental_parallel_scan_max_scanners_count":"48"
"audit_plugin_max_sql_length":"4096"
"exec_mem_limit":"2147483648"
"experimental_enable_nereids_distribute_planner":"false"
"enable_jdbc_cast_predicate_push_down":"false"
"runtime_bloom_filter_max_size":"16777216"
"time_zone":"UTC"}
```
That seems to be all the variables with non-default values post upgrade. `experimental_enable_nereids_distribute_planner` stuck out since it seemed relevant to the code around the exception.
I don't think I ever set that variable explicitly so I'm assuming the default was `false` at the time of my initial install and then carried over through every upgrade.
Maybe a review of all variables with non-default values makes sense as a before and after step in docs that cover the upgrade procedure?
The ideal Doris behavior from my perspetive would be to apply all the new default values except in cases where I've explicitly set the variable.
--
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: commits-unsubscribe@doris.apache.org
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@doris.apache.org
For additional commands, e-mail: commits-help@doris.apache.org
Re: [I] [Bug] FlightSQL throws IllegalArgumentException: null 4.0无法使用flightsql [doris]
Posted by "github-actions[bot] (via GitHub)" <gi...@apache.org>.
github-actions[bot] closed issue #57318: [Bug] FlightSQL throws IllegalArgumentException: null 4.0无法使用flightsql
URL: https://github.com/apache/doris/issues/57318
--
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: commits-unsubscribe@doris.apache.org
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@doris.apache.org
For additional commands, e-mail: commits-help@doris.apache.org