Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.


IDIEP-108
Author
Sponsor
Created

  

Status
Status
colourGrey
titleDRAFT


Table of Contents

Motivation

...

These operation doesn't requires preliminary validation of the existed data validation beforehand. 
Current BinaryTuple implementation stores integer numbers in compact format and does implicit conversion between these types transparently. So, no actual conversion for INT8->INT16->INT32->INT64, and for FLOAT->DOUBLE is required. 
Changing max length, precision and nullability doesn't require any data conversion.

...

ALTER TABLE’ tbl’ ALTER COLUMN ‘mycolumn’ SET DATA TYPE LONG NOT NULL DEFAULT -1;

Risks and Assumptions

// Describe project risks, such as API or binary compatibility issues, major protocol changes, etc.

Discussion Links

// Links to discussions on the devlist, if applicable.

Reference Links

// Links to various reference documents, if applicable.

Tickets

  • it is assumed, that BinaryTuple protocol will not changed. Otherwise, we will have to implement a solution to convert data explicitly, when row is upgraded.
  • all storage engines are compatible this feature. Otherwise, we will need a workaround, e.g. to fallback to a slow blocking solution.
  • user may experience unexpected transaction rolling back for long transactions, which overlap the change column type operation.

Tickets

Jira
serverASF JIRA
columnIdsissuekey,summary,issuetype,created,updated,duedate,assignee,reporter,priority,status,resolution
columnskey,summary,type,created,updated,due,assignee,reporter,priority,status,resolution
serverId5aa69414-a9e9-3523-82ec-879b028fb15b
keyIGNITE-19413
// Links or report with relevant JIRA tickets.