[MCOL-5347] TreeNode: CHAR/VARCHAR/TEXT to integer types conversion Created: 2022-12-12  Updated: 2023-07-01

Status: Open
Project: MariaDB ColumnStore
Component/s: PrimProc
Affects Version/s: 22.08.4
Fix Version/s: Icebox

Type: Task Priority: Major
Reporter: Roman Assignee: Unassigned
Resolution: Unresolved Votes: 0
Labels: None


 Description   

Consider CHAR->INT conversion for a SimpleColumn. The current algorithm includes two calls:

  • SimpleColumn::evaluate() that:
  • - detects NULL value
  • - runs the actual conversion based on the SimpleColumn result data type
  • - stores the converted value into the corresponding Result fields
  • and TreeNode::getIntValue() that returns the corresponding Result field based on the conversion target type. Unfortunately there are cases when getIntValue() calls for a conversion.
    The flaws of this approach raise a number of questions:
  • what if SimpleColumn::evaluate() is never called prior to TreeNode::getIntValue()?
  • what if conversion source type or target type are not accurate?
  • what if NULL value isn't detected in SimpleColumn::evaluate() and produced later in TreeNode::getIntValue()? How to propage NULL upwards?
    This issue is dedicated for the research on how to refactor such simple conversion to build a basis for complete runtime type conversion refactoring.

Generated at Thu Feb 08 02:57:11 UTC 2024 using Jira 8.20.16#820016-sha1:9d11dbea5f4be3d4cc21f03a88dd11d8c8687422.