[
https://issues.apache.org/jira/browse/PHOENIX-7948?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Andrew Kyle Purtell updated PHOENIX-7948:
-----------------------------------------
Description:
Phoenix downgrades a requested {{SINGLE_CELL_ARRAY_WITH_OFFSETS}} cell encoding
scheme to {{ONE_CELL_PER_COLUMN}} for any table that is not immutable. Several
Transform ITs assert the post-transform schema for mutable tables is
{{SINGLE_CELL_ARRAY_WITH_OFFSETS}} , which is impossible because of that silent
downgrade.
This change makes {{ALTER TABLE}} reject a requested
{{SINGLE_CELL_ARRAY_WITH_OFFSETS}} cell encoding scheme when transforming a
mutable table with a new {{SQLExceptionCode}}
{{CANNOT_TRANSFORM_MUTABLE_TABLE_TO_SCAWO}},
and updates {{TransformIT}}, {{TransformMonitorIT}}, and {{TransformToolIT}} to
either declare {{IMMUTABLE_ROWS=true}} where the test does not specifically
test the mutable case, or expect the new exception where it does.
Other related issues with Transform ITs are also addressed.
was:
Several ITs create a mutable base table and then asserts that a transform to
{{SINGLE_CELL_ARRAY_WITH_OFFSETS}} produces a new physical table with that
storage scheme. {{SINGLE_CELL_ARRAY_WITH_OFFSETS}} is incompatible with
in-place mutation, so Phoenix intentionally downgrades the requested scheme to
{{ONE_CELL_PER_COLUMN}} for any mutable base table.
Other related issues with Transform ITs are also addressed.
> Transform ITs request illegal transform schema options for mutable tables
> -------------------------------------------------------------------------
>
> Key: PHOENIX-7948
> URL: https://issues.apache.org/jira/browse/PHOENIX-7948
> Project: Phoenix
> Issue Type: Sub-task
> Components: core, test
> Reporter: Andrew Kyle Purtell
> Assignee: Andrew Kyle Purtell
> Priority: Major
> Fix For: 5.4.0, 5.3.2
>
>
> Phoenix downgrades a requested {{SINGLE_CELL_ARRAY_WITH_OFFSETS}} cell
> encoding scheme to {{ONE_CELL_PER_COLUMN}} for any table that is not
> immutable. Several Transform ITs assert the post-transform schema for mutable
> tables is {{SINGLE_CELL_ARRAY_WITH_OFFSETS}} , which is impossible because of
> that silent downgrade.
> This change makes {{ALTER TABLE}} reject a requested
> {{SINGLE_CELL_ARRAY_WITH_OFFSETS}} cell encoding scheme when transforming a
> mutable table with a new {{SQLExceptionCode}}
> {{CANNOT_TRANSFORM_MUTABLE_TABLE_TO_SCAWO}},
> and updates {{TransformIT}}, {{TransformMonitorIT}}, and {{TransformToolIT}}
> to either declare {{IMMUTABLE_ROWS=true}} where the test does not
> specifically test the mutable case, or expect the new exception where it does.
> Other related issues with Transform ITs are also addressed.
--
This message was sent by Atlassian Jira
(v8.20.10#820010)