Skip to content

Metro volume expand support#350

Merged
santhoshatdell merged 18 commits into
mainfrom
aq/expand-powerstore-metro-volume
Oct 7, 2024
Merged

Metro volume expand support#350
santhoshatdell merged 18 commits into
mainfrom
aq/expand-powerstore-metro-volume

Conversation

@aqu-dell

@aqu-dell aqu-dell commented Sep 29, 2024

Copy link
Copy Markdown
Contributor

Description

  • When we expand one of the metro volumes, we want the other to expand as well in response. In these changes we, pause the replication session before we expand the local volume, and then resume after we expand the local volume. The remote volume should expand as a result.
  • Note: We observed that NodeExpandVolume will continue to fail till the metro session is resumed and remote volume gets updated size.

GitHub Issues

List the GitHub issues impacted by this PR:

GitHub Issue #
https://github.com/dell/csm/issues/1443

Checklist:

  • I have performed a self-review of my own code to ensure there are no formatting, vetting, linting, or security issues
  • I have verified that new and existing unit tests pass locally with my changes
  • I have not allowed coverage numbers to degenerate (maintained at 86.4%)
  • I have maintained at least 90% code coverage
  • I have commented my code, particularly in hard-to-understand areas
  • I have made corresponding changes to the documentation
  • I have added tests that prove my fix is effective or that my feature works
  • Backward compatibility is not broken

How Has This Been Tested?

Tested expanding both regular and metro volume, and they succeeded.
Controller and node logs are attached to ticket 26867.

Node log for metro volume:

"/csi.v1.Node/NodeExpandVolume"
{"level":"info","msg":"Executing rescan command on device (/sys/block/sdm)","time":"2024-10-04T19:11:20.957901125Z"}
{"level":"debug","msg":"Rescan output","output":"","time":"2024-10-04T19:11:21.3519596Z"}
{"level":"info","msg":"Successful rescan on device (/sys/block/sdm)","time":"2024-10-04T19:11:21.351998885Z"}
{"level":"info","msg":"Executing rescan command on device (/sys/block/sdn)","time":"2024-10-04T19:11:21.352014214Z"}
{"level":"debug","msg":"Rescan output","output":"","time":"2024-10-04T19:11:21.876234352Z"}
{"level":"info","msg":"Successful rescan on device (/sys/block/sdn)","time":"2024-10-04T19:11:21.876306324Z"}
{"level":"info","msg":"Executing rescan command on device (/sys/block/sdl)","time":"2024-10-04T19:11:21.876323373Z"}
{"level":"debug","msg":"Rescan output","output":"","time":"2024-10-04T19:11:22.255125618Z"}
{"level":"info","msg":"Successful rescan on device (/sys/block/sdl)","time":"2024-10-04T19:11:22.25517625Z"}
{"level":"info","msg":"Executing rescan command on device (/sys/block/sdp)","time":"2024-10-04T19:11:22.255188882Z"}
{"level":"debug","msg":"Rescan output","output":"","time":"2024-10-04T19:11:22.798653761Z"}
{"level":"info","msg":"Successful rescan on device (/sys/block/sdp)","time":"2024-10-04T19:11:22.798716914Z"}
{"level":"debug","msg":"Multipath resize output","output":"ok\n","time":"2024-10-04T19:11:22.813356218Z"}
{"level":"info","msg":"Filesystem on mpathfe resized successfully","time":"2024-10-04T19:11:22.813397917Z"}
{"level":"info","msg":"Ext fs: Device /dev/mapper/mpathfe resized successfully","time":"2024-10-04T19:11:42.427917154Z"}

Comment thread pkg/controller/controller.go Outdated
Comment thread pkg/controller/controller.go Outdated
Comment thread pkg/controller/controller.go Outdated
Comment thread pkg/controller/controller.go Outdated
Comment thread pkg/controller/controller.go Outdated
Comment thread pkg/controller/controller.go Outdated
Comment thread pkg/controller/controller.go Outdated
Comment thread pkg/controller/controller.go Outdated
Comment thread pkg/controller/controller.go Outdated
Comment thread pkg/controller/controller.go Outdated
Comment thread pkg/controller/controller.go Outdated
Comment thread pkg/controller/controller.go Outdated
Comment thread pkg/controller/controller.go Outdated
Comment thread pkg/controller/controller.go Outdated
@santhoshatdell santhoshatdell changed the title Adding support for volume expansion functionality on Metro volumes Metro volume expand support Oct 4, 2024
@santhoshatdell santhoshatdell marked this pull request as ready for review October 7, 2024 14:02

@santhoshatdell santhoshatdell 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.

Can we add more tests coverage the negative scenarios to increase code coverage?

Comment thread pkg/controller/controller_test.go Outdated

@donatwork donatwork 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.

Make sure to document that e2e tests were developed and run.

Comment thread pkg/controller/controller.go
Comment thread pkg/controller/controller.go
Comment thread pkg/controller/controller.go
@santhoshatdell santhoshatdell merged commit 6d7a601 into main Oct 7, 2024
@santhoshatdell santhoshatdell deleted the aq/expand-powerstore-metro-volume branch October 7, 2024 18:00
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants