Skip to content
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

workaround xtrabackup error with old_alter_table #8317

Closed
wants to merge 1 commit into from

Conversation

deepthi
Copy link
Member

@deepthi deepthi commented Jun 11, 2021

Description

Some of the xtrabackup tests have been flaky for a while. Today @vmg was able to extract the actual error from a failing test.
This seems to be a known issue with a documented workaround. Implementing the workaround.
https://www.percona.com/blog/2017/08/08/avoiding-the-an-optimized-without-redo-logging-ddloperation-has-been-performed-error-with-percona-xtrabackup/

The blog post has 3 suggestions:

  • --lock-ddl : only works with Percona MySQL server, we are running community MySQL server in CI
  • --lock-ddl-per-table: did not fix the problem
  • old_alter_table: 🤞

Related Issue(s)

Fixes #8315

Checklist

  • Tests were added or are not required
  • Documentation was added or is not required

Deployment Notes

@deepthi deepthi requested review from vmg, systay and aquarapid June 11, 2021 20:53
@deepthi deepthi force-pushed the ds-fix-8315 branch 2 times, most recently from 700a7a6 to a2de4f7 Compare June 11, 2021 22:04
@deepthi deepthi changed the title run xtrabackup with --lock-ddl-per-table workaround xtrabackup error with old-alter-table Jun 11, 2021
@deepthi deepthi changed the title workaround xtrabackup error with old-alter-table workaround xtrabackup error with old_alter_table Jun 11, 2021
@deepthi deepthi requested review from a team and removed request for shlomi-noach and askdba June 11, 2021 22:29
Copy link
Contributor

@aquarapid aquarapid left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Copy link
Collaborator

@systay systay left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Lets make sure this should not go into an earlier branch first

@shlomi-noach
Copy link
Contributor

Noting that enabling --old_alter_table effectively disables concurrent DML on table while ALTER TABLE takes place. We do happen to offer Online DDL in vitess, but users who will run direct ALTER TABLE and with ALGORITHM=INPLACE LOCK=NONE may be surprised by this change of behavior.

@vmg
Copy link
Collaborator

vmg commented Jun 14, 2021

@shlomi-noach afaict this change of behavior is only on the end-to-end tests and doesn't apply to normal production usage.

@shlomi-noach
Copy link
Contributor

this change of behavior is only on the end-to-end tests

Ah, then please just ignore me.

@shlomi-noach
Copy link
Contributor

Gonna resubmit these changes into release-9.0

@shlomi-noach
Copy link
Contributor

Resubmitted against release-9.0: #8340

@systay systay closed this Jun 15, 2021
@systay
Copy link
Collaborator

systay commented Jun 15, 2021

Closing so we don't accidentally hit that big green button

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

broken test: xtrabackup TestRecovery
5 participants