Open windylcx opened 4 months ago
2.1.1
when query jdbc(clickhouse) catalog ,it will throw erros:
mory_overcommit = true, version = 0, cpu_hard_limit = -1, scan_thread_num = 80, max_remote_scan_thread_num = 80, min_remote_scan_thread_num = 80, spill_low_watermark=50, spill_high_watermark=80], is pipeline: 1, enable cgroup soft limit: 1 I20240422 14:12:20.979311 2356409 fragment_mgr.cpp:674] Register query/load memory tracker, query/load id: d1c7f9d6b2c842e7-ae7b1c45220f0855 limit: 0 I20240422 14:12:20.979353 2356409 pipeline_x_fragment_context.cpp:176] PipelineXFragmentContext::prepare|query_id=d1c7f9d6b2c842e7-ae7b1c45220f0855|fragment_id=1|pthread_id=140428812564224 I20240422 14:12:20.979698 2356409 pipeline_x_fragment_context.cpp:176] PipelineXFragmentContext::prepare|query_id=d1c7f9d6b2c842e7-ae7b1c45220f0855|fragment_id=0|pthread_id=140428812564224 I20240422 14:12:21.641745 2355936 wal_manager.cpp:481] Scheduled(every 10s) WAL info: [/home/app/doris/be/storage/wal: limit 50460326297 Bytes, used 0 Bytes, estimated wal bytes 0 Bytes, available 50460326297 Bytes.]; I20240422 14:12:21.772367 2358913 vjdbc_connector.cpp:246] JdbcConnector::query has exec success: SELECT "log_date", "app_key", "key", "pv", "device_cnt", "uid_cnt", "dashi_uid_cnt" FROM "mail_ads"."countly_appkey_i_d" LIMIT 10000 W20240422 14:12:21.794083 2358913 jni-util.cpp:258] org.apache.doris.common.exception.UdfRuntimeException: jdbc get block address: at org.apache.doris.jdbc.DefaultJdbcExecutor.getBlockAddress(DefaultJdbcExecutor.java:277) Caused by: java.lang.IndexOutOfBoundsException: Index: 0, Size: 0 at java.util.ArrayList.rangeCheck(ArrayList.java:657) at java.util.ArrayList.get(ArrayList.java:433) at org.apache.doris.jdbc.DefaultJdbcExecutor.getBlockAddress(DefaultJdbcExecutor.java:255) W20240422 14:12:21.794520 2358913 status.h:380] meet error status: [INTERNAL_ERROR]UdfRuntimeException: jdbc get block address: CAUSED BY: IndexOutOfBoundsException: Index: 0, Size: 0
0# doris::JniUtil::GetJniExceptionMsg(JNIEnv_*, bool, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) at /home/zcp/repo_center/doris_release/doris/be/src/util/jni-util.h:117 1# doris::vectorized::JdbcConnector::get_next(bool*, doris::vectorized::Block*, int) at /var/local/ldb_toolchain/bin/../lib/gcc/x86_64-linux-gnu/11/../../../../include/c++/11/bits/basic_string.h:187 2# doris::vectorized::NewJdbcScanner::_get_block_impl(doris::RuntimeState*, doris::vectorized::Block*, bool*) at /home/zcp/repo_center/doris_release/doris/be/src/common/status.h:449 3# doris::vectorized::VScanner::get_block(doris::RuntimeState*, doris::vectorized::Block*, bool*) at /home/zcp/repo_center/doris_release/doris/be/src/vec/exec/scan/vscanner.cpp:0 4# doris::vectorized::VScanner::get_block_after_projects(doris::RuntimeState*, doris::vectorized::Block*, bool*) at /home/zcp/repo_center/doris_release/doris/be/src/vec/exec/scan/vscanner.cpp:86 5# doris::vectorized::ScannerScheduler::_scanner_scan(std::shared_ptr<doris::vectorized::ScannerContext>, std::shared_ptr<doris::vectorized::ScanTask>) at /home/zcp/repo_center/doris_release/doris/be/src/common/status.h:345 6# std::_Function_handler<void (), doris::vectorized::ScannerScheduler::submit(std::shared_ptr<doris::vectorized::ScannerContext>, std::shared_ptr<doris::vectorized::ScanTask>)::$_3>::_M_invoke(std::_Any_data const&) at /var/local/ldb_toolchain/bin/../lib/gcc/x86_64-linux-gnu/11/../../../../include/c++/11/bits/shared_ptr_base.h:701 7# doris::ThreadPool::dispatch_thread() at /home/zcp/repo_center/doris_release/doris/be/src/util/threadpool.cpp:0 8# doris::Thread::supervise_thread(void*) at /var/local/ldb_toolchain/bin/../usr/include/pthread.h:562 9# start_thread 10# clone
W20240422 14:12:21.794576 2358913 scanner_scheduler.cpp:270] Scan thread read VScanner failed: [INTERNAL_ERROR]UdfRuntimeException: jdbc get block address: CAUSED BY: IndexOutOfBoundsException: Index: 0, Size: 0
W20240422 14:12:21.794725 2358780 task_scheduler.cpp:353] Pipeline task failed. query_id: 0-0|d1c7f9d6b2c842e7-ae7b1c45220f0855 reason: [INTERNAL_ERROR]UdfRuntimeException: jdbc get block address: CAUSED BY: IndexOutOfBoundsException: Index: 0, Size: 0
I20240422 14:12:21.794862 2358780 pipeline_x_fragment_context.cpp:130] PipelineXFragmentContext::cancel|query_id=d1c7f9d6b2c842e7-ae7b1c45220f0855|fragment_id=0|reason=3|error message=UdfRuntimeException: jdbc get block address: CAUSED BY: IndexOutOfBoundsException: Index: 0, Size: 0 I20240422 14:12:21.794891 2358780 pipeline_x_fragment_context.cpp:130] PipelineXFragmentContext::cancel|query_id=d1c7f9d6b2c842e7-ae7b1c45220f0855|fragment_id=1|reason=3|error message=UdfRuntimeException: jdbc get block address: CAUSED BY: IndexOutOfBoundsException: Index: 0, Size: 0 W20240422 14:12:21.794920 2358780 pipeline_x_fragment_context.cpp:143] PipelineXFragmentContext cancel instance: d1c7f9d6b2c842e7-ae7b1c45220f0856
no error
it not about the sql,when query rows >10000 or a query take too long,it will throw the error.
and select * from test.test1 limit 10 is ok.
1.create catalog: CREATE CATALOG test_catalog PROPERTIES ( "type"="jdbc", "user"="test", "password"="test", "jdbc_url" = "jdbc:clickhouse://10.0.0.1:8123", "driver_url"="clickhouse-jdbc-0.4.6.jar", "driver_class" = "com.clickhouse.jdbc.ClickHouseDriver" );
switch test_catalog
select * from test.test1 limit 10000;
No response
Search before asking
Version
2.1.1
What's Wrong?
when query jdbc(clickhouse) catalog ,it will throw erros:
mory_overcommit = true, version = 0, cpu_hard_limit = -1, scan_thread_num = 80, max_remote_scan_thread_num = 80, min_remote_scan_thread_num = 80, spill_low_watermark=50, spill_high_watermark=80], is pipeline: 1, enable cgroup soft limit: 1 I20240422 14:12:20.979311 2356409 fragment_mgr.cpp:674] Register query/load memory tracker, query/load id: d1c7f9d6b2c842e7-ae7b1c45220f0855 limit: 0 I20240422 14:12:20.979353 2356409 pipeline_x_fragment_context.cpp:176] PipelineXFragmentContext::prepare|query_id=d1c7f9d6b2c842e7-ae7b1c45220f0855|fragment_id=1|pthread_id=140428812564224 I20240422 14:12:20.979698 2356409 pipeline_x_fragment_context.cpp:176] PipelineXFragmentContext::prepare|query_id=d1c7f9d6b2c842e7-ae7b1c45220f0855|fragment_id=0|pthread_id=140428812564224 I20240422 14:12:21.641745 2355936 wal_manager.cpp:481] Scheduled(every 10s) WAL info: [/home/app/doris/be/storage/wal: limit 50460326297 Bytes, used 0 Bytes, estimated wal bytes 0 Bytes, available 50460326297 Bytes.]; I20240422 14:12:21.772367 2358913 vjdbc_connector.cpp:246] JdbcConnector::query has exec success: SELECT "log_date", "app_key", "key", "pv", "device_cnt", "uid_cnt", "dashi_uid_cnt" FROM "mail_ads"."countly_appkey_i_d" LIMIT 10000 W20240422 14:12:21.794083 2358913 jni-util.cpp:258] org.apache.doris.common.exception.UdfRuntimeException: jdbc get block address: at org.apache.doris.jdbc.DefaultJdbcExecutor.getBlockAddress(DefaultJdbcExecutor.java:277) Caused by: java.lang.IndexOutOfBoundsException: Index: 0, Size: 0 at java.util.ArrayList.rangeCheck(ArrayList.java:657) at java.util.ArrayList.get(ArrayList.java:433) at org.apache.doris.jdbc.DefaultJdbcExecutor.getBlockAddress(DefaultJdbcExecutor.java:255) W20240422 14:12:21.794520 2358913 status.h:380] meet error status: [INTERNAL_ERROR]UdfRuntimeException: jdbc get block address: CAUSED BY: IndexOutOfBoundsException: Index: 0, Size: 0
W20240422 14:12:21.794576 2358913 scanner_scheduler.cpp:270] Scan thread read VScanner failed: [INTERNAL_ERROR]UdfRuntimeException: jdbc get block address: CAUSED BY: IndexOutOfBoundsException: Index: 0, Size: 0
W20240422 14:12:21.794725 2358780 task_scheduler.cpp:353] Pipeline task failed. query_id: 0-0|d1c7f9d6b2c842e7-ae7b1c45220f0855 reason: [INTERNAL_ERROR]UdfRuntimeException: jdbc get block address: CAUSED BY: IndexOutOfBoundsException: Index: 0, Size: 0
I20240422 14:12:21.794862 2358780 pipeline_x_fragment_context.cpp:130] PipelineXFragmentContext::cancel|query_id=d1c7f9d6b2c842e7-ae7b1c45220f0855|fragment_id=0|reason=3|error message=UdfRuntimeException: jdbc get block address: CAUSED BY: IndexOutOfBoundsException: Index: 0, Size: 0 I20240422 14:12:21.794891 2358780 pipeline_x_fragment_context.cpp:130] PipelineXFragmentContext::cancel|query_id=d1c7f9d6b2c842e7-ae7b1c45220f0855|fragment_id=1|reason=3|error message=UdfRuntimeException: jdbc get block address: CAUSED BY: IndexOutOfBoundsException: Index: 0, Size: 0 W20240422 14:12:21.794920 2358780 pipeline_x_fragment_context.cpp:143] PipelineXFragmentContext cancel instance: d1c7f9d6b2c842e7-ae7b1c45220f0856
What You Expected?
no error
How to Reproduce?
it not about the sql,when query rows >10000 or a query take too long,it will throw the error.
and select * from test.test1 limit 10 is ok.
1.create catalog: CREATE CATALOG test_catalog PROPERTIES ( "type"="jdbc", "user"="test", "password"="test", "jdbc_url" = "jdbc:clickhouse://10.0.0.1:8123", "driver_url"="clickhouse-jdbc-0.4.6.jar", "driver_class" = "com.clickhouse.jdbc.ClickHouseDriver" );
switch test_catalog
select * from test.test1 limit 10000;
Anything Else?
No response
Are you willing to submit PR?
Code of Conduct