failed to initialize storage reader. tablet=42000246, res=[RUNTIME_ERROR]copy_column_data_by_selector nullable mismatch

Viewed 7

doris版本:2.1.2
建表语句:
CREATE TABLE log_hmqm_push_data_detail (
id VARCHAR(50) NULL COMMENT '主键ID',
push_time DATETIME NULL COMMENT '数据推送时间',
pcb_no VARCHAR(150) NULL COMMENT '产品SN/板码',
prod_id VARCHAR(50) NULL COMMENT '生产主键ID',
prod_order_code VARCHAR(50) NULL COMMENT '生产订单号',
prod_project_id VARCHAR(70) NULL COMMENT '生产工单号',
prod_material_code VARCHAR(50) NULL COMMENT '生产专用号',
prod_group_code VARCHAR(20) NULL COMMENT '测试工序',
prod_group_code_sjhl VARCHAR(20) NULL COMMENT '测试工序(数据互联用)',
prod_test_time DATETIME NULL COMMENT '测试时间',
prod_test_result_desc VARCHAR(10) NULL COMMENT '测试结果描述:不合格;合格;',
prod_line_code VARCHAR(50) NULL COMMENT '生产线体',
prod_sap_factory_code VARCHAR(10) NULL COMMENT '生产SAP工厂编码',
prod_data_from VARCHAR(20) NULL COMMENT '生产数据来源: MES / OPENAPI',
prod_data_source VARCHAR(50) NULL COMMENT '生产数据所属工厂编码: qd / dx / tjmndz / wlzn 等',
oid_id VARCHAR(50) NULL COMMENT '二维码主键ID',
oid_order_code VARCHAR(50) NULL COMMENT '二维码订单号',
oid_project_id VARCHAR(70) NULL COMMENT '二维码工单号',
oid_material_code VARCHAR(50) NULL COMMENT '二维码专用号',
oid_qr_code VARCHAR(400) NULL COMMENT '二维码',
oid_qr_code_type VARCHAR(10) NULL COMMENT '二维码类型',
oid_create_time DATETIME NULL COMMENT '二维码生成时间',
oid_sap_factory_code VARCHAR(10) NULL COMMENT '二维码SAP工厂编码',
oid_data_from VARCHAR(20) NULL COMMENT '二维码数据来源: MES / OPENAPI',
oid_data_source VARCHAR(50) NULL COMMENT '二维码数据所属工厂编码: qd / dx / tjmndz / wlzn 等',
push_type VARCHAR(10) NULL COMMENT '推送类型: ZC-正常(模盒关联+二码合一);ZDZHY-指定专用号;ZDDDH-指定订单号;WEWM-无二维码;WMWL-外卖物料;DB-调拨;GZ-改制;FG-返工工单;',
push_sap_factory_code VARCHAR(10) NULL COMMENT '推送SAP工厂编码',
push_factory_vcode VARCHAR(20) NULL COMMENT '推送工厂V码',
push_factory_name VARCHAR(100) NULL,
push_factory_full_name VARCHAR(150) NULL COMMENT '推送工厂全称',
push_factory_address VARCHAR(200) NULL COMMENT '推送工厂地址',
push_batch_no VARCHAR(70) NULL COMMENT '推送批次号',
push_material_code VARCHAR(50) NULL COMMENT '推送专用号',
push_material_name VARCHAR(20) NULL COMMENT '推送专用号名称',
is_online INT NULL COMMENT '是否为实时任务生成:0-不是;1-是;',
register_time DATETIME NULL COMMENT '数据写入ADS待推送数据表时间',
push_log_id VARCHAR(50) NULL COMMENT '(暂留)数据推送日志ID',
INDEX idx_pcb_no (pcb_no) USING INVERTED COMMENT '',
INDEX idx_prod_order_code (prod_order_code) USING INVERTED COMMENT '',
INDEX idx_push_batch_no (push_batch_no) USING INVERTED COMMENT '',
INDEX idx_oid_order_code (oid_order_code) USING INVERTED COMMENT ''
) ENGINE=OLAP
UNIQUE KEY(id, push_time)
COMMENT '数据互联推送数据明细日志表'
PARTITION BY RANGE(push_time)
(PARTITION p202409 VALUES [('2024-09-01 00:00:00'), ('2024-10-01 00:00:00')),
PARTITION p202410 VALUES [('2024-10-01 00:00:00'), ('2024-11-01 00:00:00')),
PARTITION p202411 VALUES [('2024-11-01 00:00:00'), ('2024-12-01 00:00:00')),
PARTITION p202412 VALUES [('2024-12-01 00:00:00'), ('2025-01-01 00:00:00')),
PARTITION p202501 VALUES [('2025-01-01 00:00:00'), ('2025-02-01 00:00:00')),
PARTITION p202502 VALUES [('2025-02-01 00:00:00'), ('2025-03-01 00:00:00')),
PARTITION p202503 VALUES [('2025-03-01 00:00:00'), ('2025-04-01 00:00:00')),
PARTITION p202504 VALUES [('2025-04-01 00:00:00'), ('2025-05-01 00:00:00')))
DISTRIBUTED BY HASH(id) BUCKETS 20
PROPERTIES (
"replication_allocation" = "tag.location.default: 3",
"min_load_replica_num" = "-1",
"is_being_synced" = "false",
"dynamic_partition.enable" = "true",
"dynamic_partition.time_unit" = "MONTH",
"dynamic_partition.time_zone" = "Asia/Shanghai",
"dynamic_partition.start" = "-2147483648",
"dynamic_partition.end" = "1",
"dynamic_partition.prefix" = "p",
"dynamic_partition.replication_allocation" = "tag.location.default: 3",
"dynamic_partition.buckets" = "20",
"dynamic_partition.create_history_partition" = "true",
"dynamic_partition.history_partition_num" = "6",
"dynamic_partition.hot_partition_num" = "0",
"dynamic_partition.reserved_history_periods" = "NULL",
"dynamic_partition.storage_policy" = "",
"dynamic_partition.start_day_of_month" = "1",
"storage_medium" = "hdd",
"storage_format" = "V2",
"inverted_index_storage_format" = "V1",
"compression" = "LZ4",
"enable_unique_key_merge_on_write" = "true",
"light_schema_change" = "true",
"disable_auto_compaction" = "false",
"enable_single_replica_compaction" = "false",
"group_commit_interval_ms" = "10000",
"group_commit_data_bytes" = "134217728"
);

正常查询语句:
select push_factory_name from log_hmqm_push_data_detail where push_type != 'DB' AND oid_order_code = '001006467248' AND push_time >= '2025-03-19 12:20:00';
select push_factory_name from log_hmqm_push_data_detail where push_type = 'DB' AND push_batch_no = '001006467248' AND push_time >= '2025-03-19 12:20:00'

SELECT
push_factory_name
FROM
log_hmqm_push_data_detail
WHERE
(
(push_batch_no = '001006467248'
)
OR (oid_order_code = '001006467248'
)
)
AND push_time >= '2024-03-21 15:20:00'
;

报错查询语句:
SELECT
push_factory_name
FROM
log_hmqm_push_data_detail
WHERE
(
(
push_type = 'DB'
AND push_batch_no = '001006467248'
)
OR (
push_type != 'DB'
AND oid_order_code = '001006467248'
)
)
AND push_time >= '2024-03-21 15:20:00'
;

报错信息如下:


	0#  doris::segment_v2::SegmentIterator::copy_column_data_by_selector(doris::vectorized::IColumn*, COW<doris::vectorized::IColumn>::mutable_ptr<doris::vectorized::IColumn>&, unsigned short*, unsigned short, unsigned long) at /home/zcp/repo_center/doris_release/doris/be/src/common/status.h:0
	1#  doris::Status doris::segment_v2::SegmentIterator::_output_column_by_sel_idx<std::vector<unsigned int, std::allocator<unsigned int> > >(doris::vectorized::Block*, std::vector<unsigned int, std::allocator<unsigned int> > const&, unsigned short*, unsigned short) at /home/zcp/repo_center/doris_release/doris/be/src/common/status.h:449
	2#  doris::segment_v2::SegmentIterator::_next_batch_internal(doris::vectorized::Block*) at /home/zcp/repo_center/doris_release/doris/be/src/common/status.h:449
	3#  doris::segment_v2::SegmentIterator::next_batch(doris::vectorized::Block*) at /home/zcp/repo_center/doris_release/doris/be/src/common/status.h:449
	4#  doris::BetaRowsetReader::next_block(doris::vectorized::Block*) at /home/zcp/repo_center/doris_release/doris/be/src/common/status.h:449
	5#  doris::vectorized::VCollectIterator::Level0Iterator::refresh_current_row() at /home/zcp/repo_center/doris_release/doris/be/src/common/status.h:449
	6#  doris::vectorized::VCollectIterator::Level0Iterator::ensure_first_row_ref() at /var/local/ldb_toolchain/bin/../lib/gcc/x86_64-linux-gnu/11/../../../../include/c++/11/bits/shared_ptr_base.h:1147
	7#  doris::vectorized::VCollectIterator::Level1Iterator::ensure_first_row_ref() at /home/zcp/repo_center/doris_release/doris/be/src/common/status.h:449
	8#  doris::vectorized::VCollectIterator::build_heap(std::vector<std::shared_ptr<doris::RowsetReader>, std::allocator<std::shared_ptr<doris::RowsetReader> > >&) at /home/zcp/repo_center/doris_release/doris/be/src/common/status.h:449
	9#  doris::vectorized::BlockReader::_init_collect_iter(doris::TabletReader::ReaderParams const&) at /home/zcp/repo_center/doris_release/doris/be/src/common/status.h:449
	10# doris::vectorized::BlockReader::init(doris::TabletReader::ReaderParams const&) at /home/zcp/repo_center/doris_release/doris/be/src/common/status.h:449
	11# doris::vectorized::NewOlapScanner::open(doris::RuntimeState*) at /home/zcp/repo_center/doris_release/doris/be/src/common/status.h:449
	12# 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
	13# std::_Function_handler<void (), doris::vectorized::ScannerScheduler::submit(std::shared_ptr<doris::vectorized::ScannerContext>, std::shared_ptr<doris::vectorized::ScanTask>)::$_2>::_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
	14# doris::WorkThreadPool<true>::work_thread(int) at /var/local/ldb_toolchain/bin/../lib/gcc/x86_64-linux-gnu/11/../../../../include/c++/11/bits/atomic_base.h:646
	15# execute_native_thread_routine at /data/gcc-11.1.0/build/x86_64-pc-linux-gnu/libstdc++-v3/include/bits/unique_ptr.h:85
	16# start_thread
	17# __clone
, backend=10.206.150.7
	at org.jkiss.dbeaver.model.impl.jdbc.exec.JDBCStatementImpl.executeStatement(JDBCStatementImpl.java:130)
	at org.jkiss.dbeaver.ui.editors.sql.execute.SQLQueryJob.executeStatement(SQLQueryJob.java:653)
	at org.jkiss.dbeaver.ui.editors.sql.execute.SQLQueryJob.lambda$2(SQLQueryJob.java:546)
	at org.jkiss.dbeaver.model.exec.DBExecUtils.tryExecuteRecover(DBExecUtils.java:192)
	at org.jkiss.dbeaver.ui.editors.sql.execute.SQLQueryJob.executeSingleQuery(SQLQueryJob.java:565)
	at org.jkiss.dbeaver.ui.editors.sql.execute.SQLQueryJob.extractData(SQLQueryJob.java:1039)
	at org.jkiss.dbeaver.ui.editors.sql.SQLEditor$QueryResultsContainer.readData(SQLEditor.java:4319)
	at org.jkiss.dbeaver.ui.controls.resultset.ResultSetJobDataRead.lambda$0(ResultSetJobDataRead.java:128)
	at org.jkiss.dbeaver.model.exec.DBExecUtils.tryExecuteRecover(DBExecUtils.java:192)
	at org.jkiss.dbeaver.ui.controls.resultset.ResultSetJobDataRead.run(ResultSetJobDataRead.java:126)
	at org.jkiss.dbeaver.ui.controls.resultset.ResultSetViewer$ResultSetDataPumpJob.run(ResultSetViewer.java:5081)
	at org.jkiss.dbeaver.model.runtime.AbstractJob.run(AbstractJob.java:119)
	at org.eclipse.core.internal.jobs.Worker.run(Worker.java:63)
Caused by: java.sql.SQLException: errCode = 2, detailMessage = (10.206.150.7)[CANCELLED]failed to initialize storage reader. tablet=42000306, res=[RUNTIME_ERROR]copy_column_data_by_selector nullable mismatch

	0#  doris::segment_v2::SegmentIterator::copy_column_data_by_selector(doris::vectorized::IColumn*, COW<doris::vectorized::IColumn>::mutable_ptr<doris::vectorized::IColumn>&, unsigned short*, unsigned short, unsigned long) at /home/zcp/repo_center/doris_release/doris/be/src/common/status.h:0
	1#  doris::Status doris::segment_v2::SegmentIterator::_output_column_by_sel_idx<std::vector<unsigned int, std::allocator<unsigned int> > >(doris::vectorized::Block*, std::vector<unsigned int, std::allocator<unsigned int> > const&, unsigned short*, unsigned short) at /home/zcp/repo_center/doris_release/doris/be/src/common/status.h:449
	2#  doris::segment_v2::SegmentIterator::_next_batch_internal(doris::vectorized::Block*) at /home/zcp/repo_center/doris_release/doris/be/src/common/status.h:449
	3#  doris::segment_v2::SegmentIterator::next_batch(doris::vectorized::Block*) at /home/zcp/repo_center/doris_release/doris/be/src/common/status.h:449
	4#  doris::BetaRowsetReader::next_block(doris::vectorized::Block*) at /home/zcp/repo_center/doris_release/doris/be/src/common/status.h:449
	5#  doris::vectorized::VCollectIterator::Level0Iterator::refresh_current_row() at /home/zcp/repo_center/doris_release/doris/be/src/common/status.h:449
	6#  doris::vectorized::VCollectIterator::Level0Iterator::ensure_first_row_ref() at /var/local/ldb_toolchain/bin/../lib/gcc/x86_64-linux-gnu/11/../../../../include/c++/11/bits/shared_ptr_base.h:1147
	7#  doris::vectorized::VCollectIterator::Level1Iterator::ensure_first_row_ref() at /home/zcp/repo_center/doris_release/doris/be/src/common/status.h:449
	8#  doris::vectorized::VCollectIterator::build_heap(std::vector<std::shared_ptr<doris::RowsetReader>, std::allocator<std::shared_ptr<doris::RowsetReader> > >&) at /home/zcp/repo_center/doris_release/doris/be/src/common/status.h:449
	9#  doris::vectorized::BlockReader::_init_collect_iter(doris::TabletReader::ReaderParams const&) at /home/zcp/repo_center/doris_release/doris/be/src/common/status.h:449
	10# doris::vectorized::BlockReader::init(doris::TabletReader::ReaderParams const&) at /home/zcp/repo_center/doris_release/doris/be/src/common/status.h:449
	11# doris::vectorized::NewOlapScanner::open(doris::RuntimeState*) at /home/zcp/repo_center/doris_release/doris/be/src/common/status.h:449
	12# 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
	13# std::_Function_handler<void (), doris::vectorized::ScannerScheduler::submit(std::shared_ptr<doris::vectorized::ScannerContext>, std::shared_ptr<doris::vectorized::ScanTask>)::$_2>::_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
	14# doris::WorkThreadPool<true>::work_thread(int) at /var/local/ldb_toolchain/bin/../lib/gcc/x86_64-linux-gnu/11/../../../../include/c++/11/bits/atomic_base.h:646
	15# execute_native_thread_routine at /data/gcc-11.1.0/build/x86_64-pc-linux-gnu/libstdc++-v3/include/bits/unique_ptr.h:85
	16# start_thread
	17# __clone
, backend=10.206.150.7
	at com.mysql.cj.jdbc.exceptions.SQLError.createSQLException(SQLError.java:130)
	at com.mysql.cj.jdbc.exceptions.SQLExceptionsMapping.translateException(SQLExceptionsMapping.java:122)
	at com.mysql.cj.jdbc.StatementImpl.executeInternal(StatementImpl.java:767)
	at com.mysql.cj.jdbc.StatementImpl.execute(StatementImpl.java:652)
	at org.jkiss.dbeaver.model.impl.jdbc.exec.JDBCStatementImpl.execute(JDBCStatementImpl.java:344)
	at org.jkiss.dbeaver.model.impl.jdbc.exec.JDBCStatementImpl.executeStatement(JDBCStatementImpl.java:128)
	... 12 more```
0 Answers