-
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
switch ZFS volume backend to pyzfs / libzfs_core #1781
base: master
Are you sure you want to change the base?
Commits on Jul 17, 2015
-
zfs: reimplement Filesystem._exists using lzc_exists
This is a start of the conversion of the ZFS backend to libzfs_core / pyzfs.
Andriy Gapon committedJul 17, 2015 Configuration menu - View commit details
-
Copy full SHA for b3770ed - Browse repository at this point
Copy the full SHA b3770edView commit details -
zfs: add utility code for running lzc functions in a thread pool
The helper wraps lzc functions but also provides a method to schedule any function without creating a wrapper. Currently a thread pool of a reactor is used, but a dedicated pool could be used. Test reactor(s) without a thread pool are also supported.
Andriy Gapon committedJul 17, 2015 Configuration menu - View commit details
-
Copy full SHA for d6cbfaf - Browse repository at this point
Copy the full SHA d6cbfafView commit details -
zfs: switch snapshot creation to lzc
Also, remove all unit tests for snapshots. The unit tests were based on the fact that the operations were done via zfs command, so they checked that the command was spawned with the correct arguments and the output was correctly parsed. To do: invent the way to test the new implementation
Andriy Gapon committedJul 17, 2015 Configuration menu - View commit details
-
Copy full SHA for e5531f6 - Browse repository at this point
Copy the full SHA e5531f6View commit details -
zfs: switch filesystem creation to lzc
Note that lzc_create() never mounts the filesystem. 'zfs create' used to mount the filesystem, so now we have to do that explicitly and at the moment that is done via 'zfs mount'.
Andriy Gapon committedJul 17, 2015 Configuration menu - View commit details
-
Copy full SHA for 9a8d17c - Browse repository at this point
Copy the full SHA 9a8d17cView commit details -
zfs: convert set_maximum_size() to libzfs_core
Andriy Gapon committedJul 17, 2015 Configuration menu - View commit details
-
Copy full SHA for 5f66c2d - Browse repository at this point
Copy the full SHA 5f66c2dView commit details -
zfs: delete a comment paragraph that was meant to be deleted earlier
Andriy Gapon committedJul 17, 2015 Configuration menu - View commit details
-
Copy full SHA for fa0a0ff - Browse repository at this point
Copy the full SHA fa0a0ffView commit details -
zfs: switch filesystem sending and receiving to lzc
Note: lzc_send()/lzc_receive() do not close their end of the pipe (the file descriptor, in general) when they are done writing to it. Note: this API is synchrnous at the moment including a requirement for a synchronous cleanup of the file descriptors. There are functional tests to verify that.
Andriy Gapon committedJul 17, 2015 Configuration menu - View commit details
-
Copy full SHA for 9a80397 - Browse repository at this point
Copy the full SHA 9a80397View commit details -
zfs: switch cloning, renaming and setting some properties to lzc
The properties are readonly and mountpoint properties. Note that one thing that all these operations have in common is that they may require a dataset to be unmounted and/or mounted.
Andriy Gapon committedJul 17, 2015 Configuration menu - View commit details
-
Copy full SHA for a44576f - Browse repository at this point
Copy the full SHA a44576fView commit details -
zfs: replace snapshot listing via 'zfs' with lzc_list_snaps()
Andriy Gapon committedJul 17, 2015 Configuration menu - View commit details
-
Copy full SHA for bcd8bf1 - Browse repository at this point
Copy the full SHA bcd8bf1View commit details -
zfs: make snapshot sorting more reliable by using createtxg property
In theory two snapshots can the same 'creation' time because its resolution is on second. In fact, I've seen a test failing because of that. createtxg is always unique, because ZFS does not allow to created more than one snapshot for the same filesystem within the same transaction group.
Andriy Gapon committedJul 17, 2015 Configuration menu - View commit details
-
Copy full SHA for 8d8a6d8 - Browse repository at this point
Copy the full SHA 8d8a6d8View commit details -
zfs: convert filesystem listing to libzfs_core
Also, internal _list_filesystems() method is changed to return an iterator rather than a deferred that produces an iterator. It's not clear why we need the iterator at all because the single user of this method consumes the whole iterator and builds a set.
Andriy Gapon committedJul 17, 2015 Configuration menu - View commit details
-
Copy full SHA for 1349bfd - Browse repository at this point
Copy the full SHA 1349bfdView commit details -
zfs: convert filesystem (with snapshots) destruction to libzfs_core
Note: that we need to explicitly unmount the filesystem before destroying it.
Andriy Gapon committedJul 17, 2015 Configuration menu - View commit details
-
Copy full SHA for 35ce7c2 - Browse repository at this point
Copy the full SHA 35ce7c2View commit details -
zfs: convert the initial setup of the pool root filesystem to libzfs_…
…core _sync_command_error_squashed() became obsolete and was removed. Its unit tests are removed as well.
Andriy Gapon committedJul 17, 2015 Configuration menu - View commit details
-
Copy full SHA for f4eb274 - Browse repository at this point
Copy the full SHA f4eb274View commit details -
zfs: fix a problem with unmounting of some filesystems
'zfs umount' refuses to work on a ZFS filesystem if its mountpoint property is set to legacy or none. On the other hand, 'umount' can handle all property settings. So, prefer using the latter. The ZFS backend itself never sets mountpoint to those values, but there is at least one funcitonal test case that sets up a requried scenario by directly fiddling with the property. To implement the change zfs_command() function is split into ext_command() that can handle any external command and zfs_command() convenience facade.
Andriy Gapon committedJul 17, 2015 Configuration menu - View commit details
-
Copy full SHA for 186eff4 - Browse repository at this point
Copy the full SHA 186eff4View commit details
Commits on Aug 7, 2015
-
zfs: add basic docstrings for _AsyncLZC and the related code
Andriy Gapon committedAug 7, 2015 Configuration menu - View commit details
-
Copy full SHA for 8308e8a - Browse repository at this point
Copy the full SHA 8308e8aView commit details -
zfs: catch up with lzc_create signature change
Andriy Gapon committedAug 7, 2015 Configuration menu - View commit details
-
Copy full SHA for 3d8f9cb - Browse repository at this point
Copy the full SHA 3d8f9cbView commit details
Commits on Aug 10, 2015
-
log lzc_send and lzc_receive exceptions
Andriy Gapon committedAug 10, 2015 Configuration menu - View commit details
-
Copy full SHA for dcc914f - Browse repository at this point
Copy the full SHA dcc914fView commit details -
zfs backend: remove _FakeAsyncLZC that fell out of use
Andriy Gapon committedAug 10, 2015 Configuration menu - View commit details
-
Copy full SHA for 4d2bbdb - Browse repository at this point
Copy the full SHA 4d2bbdbView commit details
Commits on Aug 14, 2015
-
lzc_send/lzc_receive: log traceback in addition to exception
Andriy Gapon committedAug 14, 2015 Configuration menu - View commit details
-
Copy full SHA for e387cf5 - Browse repository at this point
Copy the full SHA e387cf5View commit details
Commits on Sep 29, 2015
-
Andriy Gapon committed
Sep 29, 2015 Configuration menu - View commit details
-
Copy full SHA for 47dfab0 - Browse repository at this point
Copy the full SHA 47dfab0View commit details -
Merge remote-tracking branch 'origin/master' into pyzfs-FLOC-2683
Andriy Gapon committedSep 29, 2015 Configuration menu - View commit details
-
Copy full SHA for 3123937 - Browse repository at this point
Copy the full SHA 3123937View commit details
Commits on Oct 1, 2015
-
Andriy Gapon committed
Oct 1, 2015 Configuration menu - View commit details
-
Copy full SHA for 7cfdc3a - Browse repository at this point
Copy the full SHA 7cfdc3aView commit details
Commits on Oct 5, 2015
-
Merge remote-tracking branch 'origin/master' into pyzfs-FLOC-2683
Andriy Gapon committedOct 5, 2015 Configuration menu - View commit details
-
Copy full SHA for 80c1a02 - Browse repository at this point
Copy the full SHA 80c1a02View commit details
Commits on Oct 8, 2015
-
flocker-volume: ensure that the reactor is running
deferLater() unlike maybeDeferred ensures that the reactor is actually running. This is required by the new ZFS backend, because it uses the reactor's thread pool to run lzc_send() and lzc_receive() in separate threads. That has to be done because those calls lend their context to the kernel for doing the actual send / receive work. The main thread pumps the stream data between the userspace and the kernel.
Andriy Gapon committedOct 8, 2015 Configuration menu - View commit details
-
Copy full SHA for 05fb5d5 - Browse repository at this point
Copy the full SHA 05fb5d5View commit details -
Merge branch 'master' into pyzfs-FLOC-2683
Andriy Gapon committedOct 8, 2015 Configuration menu - View commit details
-
Copy full SHA for ead482e - Browse repository at this point
Copy the full SHA ead482eView commit details
Commits on Oct 30, 2015
-
Merge branch 'master' into pyzfs-FLOC-2683
Andriy Gapon committedOct 30, 2015 Configuration menu - View commit details
-
Copy full SHA for 3801ea8 - Browse repository at this point
Copy the full SHA 3801ea8View commit details -
use lzc_receive_with_header() instead of lzc_receive
The latter can not automatically derive a snapshot name from the given stream. See ZFS-30 for more details.
Andriy Gapon committedOct 30, 2015 Configuration menu - View commit details
-
Copy full SHA for 8ba3807 - Browse repository at this point
Copy the full SHA 8ba3807View commit details