-
Notifications
You must be signed in to change notification settings - Fork 2.1k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
schemadiff: more INSTANT
algorithm considerations
#16678
Merged
shlomi-noach
merged 2 commits into
vitessio:main
from
planetscale:schemadiff-instant-ddl-more-scenarios
Aug 29, 2024
Merged
schemadiff: more INSTANT
algorithm considerations
#16678
shlomi-noach
merged 2 commits into
vitessio:main
from
planetscale:schemadiff-instant-ddl-more-scenarios
Aug 29, 2024
Conversation
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
…IFY COLUMN which specify FIRST or AFTER Signed-off-by: Shlomi Noach <2607934+shlomi-noach@users.noreply.github.com>
shlomi-noach
added
Type: Bug
Type: Enhancement
Logical improvement (somewhere between a bug and feature)
Component: schema management
schemadiff and schema changes
labels
Aug 29, 2024
Review ChecklistHello reviewers! 👋 Please follow this checklist when reviewing this Pull Request. General
Tests
Documentation
New flags
If a workflow is added or modified:
Backward compatibility
|
vitess-bot
bot
added
NeedsBackportReason
If backport labels have been applied to a PR, a justification is required
NeedsDescriptionUpdate
The description is not clear or comprehensive enough, and needs work
NeedsIssue
A linked issue is missing for this Pull Request
NeedsWebsiteDocsUpdate
What it says
labels
Aug 29, 2024
shlomi-noach
removed
NeedsDescriptionUpdate
The description is not clear or comprehensive enough, and needs work
NeedsWebsiteDocsUpdate
What it says
NeedsIssue
A linked issue is missing for this Pull Request
NeedsBackportReason
If backport labels have been applied to a PR, a justification is required
labels
Aug 29, 2024
Signed-off-by: Shlomi Noach <2607934+shlomi-noach@users.noreply.github.com>
dbussink
approved these changes
Aug 29, 2024
Codecov ReportAll modified and coverable lines are covered by tests ✅
Additional details and impacted files@@ Coverage Diff @@
## main #16678 +/- ##
=======================================
Coverage 68.91% 68.91%
=======================================
Files 1564 1564
Lines 201363 201371 +8
=======================================
+ Hits 138771 138784 +13
+ Misses 62592 62587 -5 ☔ View full report in Codecov by Sentry. |
GuptaManan100
approved these changes
Aug 29, 2024
5 tasks
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Labels
Component: schema management
schemadiff and schema changes
Type: Bug
Type: Enhancement
Logical improvement (somewhere between a bug and feature)
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Description
Rejecting the following scenarios:
MODIFY COLUMN
orCHANGE COLUMN
), e.g.alter table t modify column i1 int after i2
DATETIME
:alter table t add column d5 datetime(3) not null
This one is not documented but is nonetheless rejected by MySQL - for non empty tables.
We've found a myriad of nuances with relation to
DATETIME
andTIMESTAMP
. The reason MySQL rejects the above is that it assumes the default is0000-00-00 00:00:00
, which it does not allow. But it does allow the same forTIMESTAMP
. In both cases, if the table is empty, it is allowed. So it's about populating these columns rather than their definitions. There is further consideration for what constitutes a valid value for aDATETIME
or aTIMESTAMP
. e.g.'1000-01-01 00:00:00'
is invalid for aTIMESTAMP
as it's out of range (well before the epoch). We may work on those in a later PR.Related Issue(s)
INSTANT
-capable changes #14877Backporting
This is a bugfix, I'll backport to appropriate supported versions.After some deliberation, not going to backport this at this time.Checklist
Deployment Notes