Alexey Serbin created KUDU-3575:
-----------------------------------
Summary: Update kudu::tools::ParseValue() to handle all supported
column types
Key: KUDU-3575
URL: https://issues.apache.org/jira/browse/KUDU-3575
Project: Kudu
Issue Type: Task
Components: CLI
Affects Versions: 1.17.0, 1.16.0, 1.15.0, 1.14.0, 1.13.0, 1.11.1, 1.12.0,
1.11.0, 1.10.1, 1.10.0, 1.9.0
Reporter: Alexey Serbin
With
[0afeddf9e530762e0e47beb7428982763715c746|https://github.com/apache/kudu/commit/0afeddf9e530762e0e47beb7428982763715c746],
new functionality has been introduced in Kudu 1.9.0. It's currently used in
various CLI tools such as {{kudu table scan}}, {{kudu table copy}}, etc.
However, if using predicates, the tool didn't handle all the column types
available back then in Kudu tables and with adding new types such as DECIMAL
and VARCHAR, the {{kudu::tools::ParseValue()}} utility function became even
more outdated. As a result, an attempt to run corresponding CLI tools against
tables using predicates on columns of particular types (e.g. UNIXTIME_MICROS)
results in a crash due to SIGABRT with stack traces like below produced by
{{kudu table copy}} CLI tool:
{noformat}
F0509 13:08:49.058050 226781 table_scanner.cc:189] unhandled data type 9
*** Check failure stack trace: ***
@ 0x1411c8d google::LogMessage::Fail()
@ 0x141656d google::LogMessage::SendToLog()
@ 0x1411970 google::LogMessage::Flush()
@ 0x14121d9 google::LogMessageFatal::~LogMessageFatal()
@ 0x145d955 kudu::tools::ParseValue()
@ 0x145f1e2 kudu::tools::NewComparisonPredicate()
@ 0x14606b0 kudu::tools::AddPredicate()
@ 0x14610ee kudu::tools::AddPredicates()
@ 0x146297c kudu::tools::TableScanner::StartWork()
@ 0x1465232 kudu::tools::TableScanner::StartCopy()
@ 0xde7415 kudu::tools::(anonymous namespace)::CopyTable()
@ 0xd87dd4 std::_Function_handler<>::_M_invoke()
@ 0x14667b2 kudu::tools::Action::Run()
@ 0xe166b5 kudu::tools::DispatchCommand()
@ 0xe17325 kudu::tools::RunTool()
@ 0xd080c4 main
{noformat}
It's necessary to update implementation of {{kudu::tools::ParseValue()}} to
handle all
the supported column types.
--
This message was sent by Atlassian Jira
(v8.20.10#820010)