Skip to content

fix issue #3590 'Revert Ceph/RBD Snapshot'#3605

Merged
yadvr merged 1 commit into
apache:4.13from
CLDIN:fix_revert_rbd_snapshot
Nov 12, 2019
Merged

fix issue #3590 'Revert Ceph/RBD Snapshot'#3605
yadvr merged 1 commit into
apache:4.13from
CLDIN:fix_revert_rbd_snapshot

Conversation

@GabrielBrascher

Copy link
Copy Markdown
Member

Description

Fixes issue #3590 by using the last element on the array from the snapshot "path" String for retrieving the snapshot id. Additionally, it uses the volumePath as the volume id which should always be the correct value. The error raised on issue #3590 was related to the wrong use of variable "path" where in some cases had a different set of substrings.

The proposed change has been tested and evaluated. The values used for openning the RBD connection and executing the rollback were stable on the tests. Runned rollback on multiple snapshots and could start the VM with the content matching the ROOT reverted snapshot.

Types of changes

  • Breaking change (fix or feature that would cause existing functionality to change)
  • New feature (non-breaking change which adds functionality)
  • Bug fix (non-breaking change which fixes an issue)
  • Enhancement (improves an existing feature and functionality)
  • Cleanup (Code refactoring and cleanup, that may add test cases)

@GabrielBrascher

Copy link
Copy Markdown
Member Author

@andrijapanicsb Can you please check if RBD snapshot rollback will work for you with this fix? Thanks!

@yadvr

yadvr commented Sep 25, 2019

Copy link
Copy Markdown
Member

@blueorangutan package

@blueorangutan

Copy link
Copy Markdown

@rhtyd a Jenkins job has been kicked to build packages. I'll keep you posted as I make progress.

@blueorangutan

Copy link
Copy Markdown

Packaging result: ✔centos6 ✔centos7 ✔debian. JID-291

@yadvr

yadvr commented Sep 25, 2019

Copy link
Copy Markdown
Member

Regression test is not necessary as change is very specific to a wrapper/handler related to RBD/ceph that trillian does not test now. Manual testing/confirmation needed.

@GabrielBrascher

Copy link
Copy Markdown
Member Author

@yadvr

yadvr commented Oct 22, 2019

Copy link
Copy Markdown
Member

I don't have ceph setup to test this, maybe @andrijapanicsb can review?
@blueorangutan package

@blueorangutan

Copy link
Copy Markdown

@rhtyd a Jenkins job has been kicked to build packages. I'll keep you posted as I make progress.

@blueorangutan

Copy link
Copy Markdown

Packaging result: ✔centos6 ✔centos7 ✔debian. JID-329

@yadvr

yadvr commented Oct 22, 2019

Copy link
Copy Markdown
Member

@blueorangutan test

@blueorangutan

Copy link
Copy Markdown

@rhtyd a Trillian-Jenkins test job (centos7 mgmt + kvm-centos7) has been kicked to run smoke tests

@blueorangutan

Copy link
Copy Markdown

Trillian test result (tid-426)
Environment: kvm-centos7 (x2), Advanced Networking with Mgmt server 7
Total time taken: 26556 seconds
Marvin logs: https://github.com/blueorangutan/acs-prs/releases/download/trillian/pr3605-t426-kvm-centos7.zip
Intermittent failure detected: /marvin/tests/smoke/test_internal_lb.py
Smoke tests completed. 77 look OK, 0 have error(s)
Only failed tests results shown below:

Test Result Time (s) Test File

@DaanHoogland DaanHoogland left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

I can not comment though the code looks good. My experience with the rbd block device and roll backs is not good and though it looks like the roll back is on FS level, I refrain from judgement either way. (This is actually a quite positive comment, if i may say so myself ;)

@andrijapanicsb

Copy link
Copy Markdown
Contributor

I can test this at some point, have an env, which I can upgrade...

@andrijapanicsb

Copy link
Copy Markdown
Contributor

@GabrielBrascher this seems to be a wrong branch to merge to (4.13) - please choose the master branch and ping me when done.

@yadvr

yadvr commented Nov 6, 2019

Copy link
Copy Markdown
Member

Targeting 4.13 branch is fine as ultimately we forward merge the change to master @andrijapanicsb

@andrijapanicsb

andrijapanicsb commented Nov 6, 2019 via email

Copy link
Copy Markdown
Contributor

@GabrielBrascher

Copy link
Copy Markdown
Member Author

I kept this PR aiming the branch 4.13 as it is a simple fix and it would be nice to have it released in 4.13.1.0.

@andrijapanicsb I ported this changes on commit e8ec868687bf657e1d873bba229e403bf014d0bc, located in branch fix_revert_rbd_snapshot_on_master. The new branch/commit is based on CloudStack master branch and can be tested on a ACS environment running '4.14.0.0-SNAPSHOT'.

Would that be ok for you? I can also generate the packages for a distro and make them available here.

Thanks for the review/test :)

@andrijapanicsb

andrijapanicsb commented Nov 6, 2019 via email

Copy link
Copy Markdown
Contributor

@GabrielBrascher

Copy link
Copy Markdown
Member Author

Cool, @andrijapanicsb!
If you clone/checkout branch https://github.com/PCextreme/cloudstack/tree/fix_revert_rbd_snapshot_on_master you will have access to the commit based on master.

@yadvr

yadvr commented Nov 11, 2019

Copy link
Copy Markdown
Member

@andrijapanicsb you can test by using rpms on internal staging server and install/force-install only the cloudstack-agent rpm where the change is, against a 4.14-SNAPSHOT/master based env.

@andrijapanicsb

Copy link
Copy Markdown
Contributor

LGTM

tested manually restoring root and data volume snapshots - works fine!
thx @GabrielBrascher

@yadvr
yadvr merged commit 8ac2501 into apache:4.13 Nov 12, 2019
@GabrielBrascher

Copy link
Copy Markdown
Member Author

That is great @andrijapanicsb, thanks for the feedback :-)

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.

5 participants