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

s3Sink: cancel create existing table directory on s3 when initialize s3Sink (#1477) #1672

Merged
merged 3 commits into from
Apr 16, 2021

Conversation

ti-srebot
Copy link
Contributor

@ti-srebot ti-srebot commented Apr 15, 2021

cherry-pick #1477 to release-5.0
You can switch your code base to this Pull Request by using git-extras:

# In ticdc repo:
git pr https://github.com/pingcap/ticdc/pull/1672

After apply modifications, you can push your change to this PR via:

git push git@github.com:ti-srebot/ticdc.git pr/1672:release-5.0-cc8eadf2f70e

s3Sink: cancel create existing table directory on s3 when initialize s3Sink

fix bug #1463 reported

What problem does this PR solve?

fix bug #1463 reported

What is changed and how it works?

https://github.com/pingcap/ticdc/blob/355016c0ee9d689fe203db57a18449afe26271d9/cdc/sink/cdclog/s3.go#L318-L327
S3 does not create an empty directory. This code causes S3 to create objects instead of directories, like this:
image

Uploading objects to these directories will cause an error, like:

"code": "CDC:ErrProcessorUnknown",
"message": "[CDC:ErrS3SinkStorageAPI]XMinioParentIsObject: Object-prefix is already an object, please choose a different object-prefix name.\n\tstatus code: 400, request id: 166825DDCC17A799, host id: "

So I deleted the code.

Check List

Tests

  • Manual test (add detailed scripts or steps below)
  • No code

Code changes

  • Has exported function/method change

Side effects

  • Possible performance regression

Related changes

  • Need to cherry-pick to the release branch

Release note

  • s3Sink: cancel create existing table directory on s3 when initialize s3Sink to avoid uploading objects faild

Signed-off-by: ti-srebot <ti-srebot@pingcap.com>
@ti-srebot
Copy link
Contributor Author

/run-all-tests

@ti-srebot ti-srebot added component/pitr Point-in-time recovery component. status/ptal Could you please take a look? size/S Denotes a PR that changes 10-29 lines, ignoring generated files. type/cherry-pick-for-release-5.0 This PR is cherry-picked to release-5.0 from a source PR. labels Apr 15, 2021
@ti-srebot ti-srebot added this to the v5.0.1 milestone Apr 15, 2021
@ti-chi-bot ti-chi-bot added the status/LGT1 Indicates that a PR has LGTM 1. label Apr 15, 2021
@zier-one
Copy link
Contributor

/lgtm

@ti-chi-bot
Copy link
Member

[REVIEW NOTIFICATION]

This pull request has been approved by:

  • amyangfei
  • leoppro

To complete the pull request process, please ask the reviewers in the list to review by filling /cc @reviewer in the comment.
After your PR has acquired the required number of LGTMs, you can assign this pull request to the committer in the list by filling /assign @committer in the comment to help you merge this pull request.

The full list of commands accepted by this bot can be found here.

Reviewer can indicate their review by writing /lgtm in a comment.
Reviewer can cancel approval by writing /lgtm cancel in a comment.

@ti-chi-bot ti-chi-bot added status/LGT2 Indicates that a PR has LGTM 2. and removed status/LGT1 Indicates that a PR has LGTM 1. labels Apr 16, 2021
@zhouqiang-cl zhouqiang-cl added the cherry-pick-approved Cherry pick PR approved by release team. label Apr 16, 2021
@amyangfei
Copy link
Contributor

/merge

@ti-chi-bot
Copy link
Member

This pull request has been accepted and is ready to merge.

Commit hash: 36d4910

@ti-chi-bot ti-chi-bot added the status/can-merge Indicates a PR has been approved by a committer. label Apr 16, 2021
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
cherry-pick-approved Cherry pick PR approved by release team. component/pitr Point-in-time recovery component. size/S Denotes a PR that changes 10-29 lines, ignoring generated files. status/can-merge Indicates a PR has been approved by a committer. status/LGT2 Indicates that a PR has LGTM 2. status/ptal Could you please take a look? type/cherry-pick-for-release-5.0 This PR is cherry-picked to release-5.0 from a source PR.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

6 participants