-
Notifications
You must be signed in to change notification settings - Fork 290
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
Convey snapshot information #658
Conversation
…t should have before. Also fix the test to catch this.
…sts that loosely constrain its behavior.
Thanks @exarkun I've only glanced at the code. It all looks good. I guess what's not clear to me (yet) is what triggers a snapshot to be taken after the initial push....oh, I see that the snapshot occurs implicitly on every call to f.v.zfs.FileSystem.reader
What happens:
Will sufficient information be logged (stderr) to allow us to debug the failures? And more generally, I was trying to imagine some failure scenarios eg what would happen if a user, having modified their
I can't remember how a node knows that it is authoritative for a particular volume. Is it possible that two nodes might identify themselves authoritative for a volume and attempt to send their data to the new recipient? But I those general problems (if they are problems) are addressed by the handoff in phase2 (after stopping the application). Anyway, that's all I can think of. Please address or answer the points above as you see fit and then merge so that you can continue with the final integration. |
I think maybe we have better coverage than the report suggests here. Some of our tests run the CLI tools in child processes. Lines executed in those child processes aren't measured and reported by the coverage tool. |
I've filed ClusterHQ/build.clusterhq.com#21 for collecting that coverage information. |
Probably not. In general we're doing a really bad job of zfs error reporting right now. My story for now is that this will improve when we switch to libzfs_core bindings. Hopefully we'll do that real soon. |
Expand the remote volume manager interface so it can convey information about the snapshots that exist for the filesystems it manages.
This partially addresses #46 - but does not completely resolve it.
Added here is a new
flocker-volume snapshots
command and a new method onIRemoteVolumeManager
to invoke it. This allows the pushing side of an interaction to learn what snapshots exist on the receiving side of that interaction. A follow-up branch will use this information to generate incremental streams (using the functionality implemented in #657).This branch is based on #657. Review that first, then recompute the diff to review this one.