mirror:not overwrit target object when mirror watch
fix #5192
Community Contribution License
All community contributions in this pull request are licensed to the project maintainers under the terms of the Apache 2 license. By creating this pull request I represent that I have the right to license the contributions to the project maintainers under the Apache 2 license.
Description
Motivation and Context
make sure mirror command overwrit same when the watch is used and when the watch command is not used.
How to test this PR?
mc mb local/bucket
mc mb peer/bucket
echo "1" > txt
mc cp txt peer/bucket
mc mirror -w local/bucket peer/bucket
echo "2" > txt
mc cp txt local/bucket
mc cat peer/bucket/txt
mc mb local/bucket
mc mb peer/bucket
echo "3" > txt
mc cp txt peer/bucket
mc mirror -w --overwrite local/bucket peer/bucket
echo "4" > txt
mc cp txt local/bucket
mc cat peer/bucket/txt
Types of changes
- [ ] Bug fix (non-breaking change which fixes an issue)
- [ ] New feature (non-breaking change which adds functionality)
- [ ] Optimization (provides speedup with no functional changes)
- [ ] Breaking change (fix or feature that would cause existing functionality to change)
Checklist:
- [ ] Fixes a regression (If yes, please add
commit-idorPR #here) - [ ] Unit tests added/updated
- [ ] Internal documentation updated
- [ ] Create a documentation update request here
@jiuker pls check this pr thanks
Let me test first. Will get back here
Let me test first. Will get back here
@jiuker ^^?
Sorry. I can't reprdouce it.
mc mb local/bucket
mc mb peer/bucket
echo "1" > txt
mc cp txt peer/bucket
mc mirror -w local/bucket peer/bucket
echo "2" > txt
mc cp txt local/bucket
mc cat peer/bucket/txt
And your pr is change around mj.opts.activeActive, is not related to --overwrite
restart mc mirror
mc: <ERROR> Failed to perform mirroring, with error condition (mm-source-mtime) Overwrite not allowed for `http://172.25.244.240:9001/bucket/txt`. Use `--overwrite` to override this behavior.
when mc running do this shell
echo "5" > txt
mc cp txt minio9000/bucket
mc cat minio9001/bucket/txt
echo "6" > txt
mc cp txt minio9000/bucket
mc cat minio9001/bucket/txt
echo "7" > txt
mc cp txt minio9000/bucket
mc cat minio9001/bucket/txt
echo "8" > txt
# a new object to source
mc cp txt minio9000/bucket/txt2
mc cat minio9001/bucket/txt2
root@jiuker:/mnt/d/workspace/go/src/eos/stage# mc cat minio9001/bucket/txt
3
root@jiuker:/mnt/d/workspace/go/src/eos/stage# sh issue_mc_5193.sh
/mnt/d/workspace/go/src/eos/stage/txt: 2 B / 2 B ┃▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓┃ 26 B/s 0s
3
/mnt/d/workspace/go/src/eos/stage/txt: 2 B / 2 B ┃▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓┃ 27 B/s 0s
3
/mnt/d/workspace/go/src/eos/stage/txt: 2 B / 2 B ┃▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓┃ 27 B/s 0s
3
/mnt/d/workspace/go/src/eos/stage/txt: 2 B / 2 B ┃▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓┃ 29 B/s 0s
root@jiuker:/mnt/d/workspace/go/src/eos/stage# mc cat minio9001/bucket/txt2
8
root@jiuker:/mnt/d/workspace/go/src/eos/stage#
Couldn't found any issues. Please share more info.
Sorry. I can't reprdouce it.
mc mb local/bucket mc mb peer/bucket echo "1" > txt mc cp txt peer/bucket mc mirror -w local/bucket peer/bucket echo "2" > txt mc cp txt local/bucket mc cat peer/bucket/txtAnd your pr is change around
mj.opts.activeActive, is not related to--overwriterestart mc mirror
mc: <ERROR> Failed to perform mirroring, with error condition (mm-source-mtime) Overwrite not allowed for `http://172.25.244.240:9001/bucket/txt`. Use `--overwrite` to override this behavior.when mc running do this shell
echo "5" > txt mc cp txt minio9000/bucket mc cat minio9001/bucket/txt echo "6" > txt mc cp txt minio9000/bucket mc cat minio9001/bucket/txt echo "7" > txt mc cp txt minio9000/bucket mc cat minio9001/bucket/txt echo "8" > txt # a new object to source mc cp txt minio9000/bucket/txt2 mc cat minio9001/bucket/txt2root@jiuker:/mnt/d/workspace/go/src/eos/stage# mc cat minio9001/bucket/txt 3 root@jiuker:/mnt/d/workspace/go/src/eos/stage# sh issue_mc_5193.sh /mnt/d/workspace/go/src/eos/stage/txt: 2 B / 2 B ┃▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓┃ 26 B/s 0s 3 /mnt/d/workspace/go/src/eos/stage/txt: 2 B / 2 B ┃▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓┃ 27 B/s 0s 3 /mnt/d/workspace/go/src/eos/stage/txt: 2 B / 2 B ┃▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓┃ 27 B/s 0s 3 /mnt/d/workspace/go/src/eos/stage/txt: 2 B / 2 B ┃▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓┃ 29 B/s 0s root@jiuker:/mnt/d/workspace/go/src/eos/stage# mc cat minio9001/bucket/txt2 8 root@jiuker:/mnt/d/workspace/go/src/eos/stage#Couldn't found any issues. Please share more info.
this #5192 my fixed by #5197, I will close my PR.
Thank you for your contribution.