Allow for the online renaming of a column in the ALTER TABLE statement

Registered by Jay Pipes

Note: The only complication I can foresee would be in the renaming of columns used in FOREIGN KEY constraints. Other than that, it might be a pretty simple fix.

The ideal way to do this would be to flesh out the alter table proto (into a series of operations) and pass these down through the engine to make a decision.

I think the interface should look something like:
 - list of changes passed to engine
 - engine returns having deleted from the list the ones it can do
QUESTION: Should we have sep lists for online/offline/almost online operations?
 - If the engine has a data dictionary (existing flag) then it gets the list of metadata only changes. otherwise, the upper layer takes care of it (e.g. by writing new table proto message to disk)

This allows for implementation of EXPLAIN ALTER TABLE as well as explicit ALTER TABLE ONLINE/OFFLINE syntax.

Blueprint information

Status:
Not started
Approver:
Jay Pipes
Priority:
Low
Drafter:
Jay Pipes
Direction:
Approved
Assignee:
None
Definition:
Approved
Series goal:
Accepted for trunk
Implementation:
Not started
Milestone target:
milestone icon future

Related branches

Sprints

Whiteboard

(?)

Work Items

This blueprint contains Public information 
Everyone can see this information.

Subscribers

No subscribers.