Difference between revisions of "Download/ploop/1.5/changes"

From OpenVZ Virtuozzo Containers Wiki
< Download‎ | ploop‎ | 1.5
Jump to: navigation, search
(created)
 
(some formatting fixes, moved API changes to the end)
Line 6: Line 6:
 
== Changes ==
 
== Changes ==
 
Since {{dlink|ploop|1.4}}
 
Since {{dlink|ploop|1.4}}
'''New functionality:'''
+
 
 +
'''New functionality'''
 
* switch from old /dev/ploop/ symlink-based to new in-kernel cookie registration
 
* switch from old /dev/ploop/ symlink-based to new in-kernel cookie registration
 
* snapshots: switch to schema with constant top delta uuid
 
* snapshots: switch to schema with constant top delta uuid
Line 20: Line 21:
 
* ploop list: implement
 
* ploop list: implement
 
* /sbin/mount.ploop: do load ploop modules
 
* /sbin/mount.ploop: do load ploop modules
'''Bug fixes:'''
+
 
 +
'''Bug fixes'''
 
* do not crash on empty DiskDescriptor.xml (libxml2 workaround)
 
* do not crash on empty DiskDescriptor.xml (libxml2 workaround)
 
* ploop convert: fix converting from expanded to raw
 
* ploop convert: fix converting from expanded to raw
Line 28: Line 30:
 
* tools: few exit code fixes
 
* tools: few exit code fixes
 
* multiple usage, log and error message fixes
 
* multiple usage, log and error message fixes
'''Library API changes:'''
+
 
* implement dynamic library loading via ploop_resolve_functions()
+
'''Improvements'''
* introduce optimized ploop_get_info_by_descr(), remove ploop_get_info()
 
* replace ploop_{alloc,read}_diskdescriptor() with ploop_read_disk_descr()
 
* remove ploop_getdevice()
 
'''Improvements:'''
 
 
* ploop mount: check that mount point is a directory
 
* ploop mount: check that mount point is a directory
 
* ploop umount: reduce retry count from 60 to 6
 
* ploop umount: reduce retry count from 60 to 6
Line 40: Line 38:
 
* scripts: de-bash-ify
 
* scripts: de-bash-ify
 
* assorted code refactoring, cleanups and nitpicks
 
* assorted code refactoring, cleanups and nitpicks
 +
 +
'''Library API changes'''
 +
* implement dynamic library loading via ploop_resolve_functions()
 +
* introduce optimized ploop_get_info_by_descr(), remove ploop_get_info()
 +
* replace ploop_{alloc,read}_diskdescriptor() with ploop_read_disk_descr()
 +
* remove ploop_getdevice()

Revision as of 00:13, 8 September 2012

Compatibility notes

  • this version requires running vzkernel >= 2.6.32-042stab061.1
  • snapshots created by old ploop tools are not compatible with this version
  • there were a few incompatible library API changes, see below

Changes

Since 1.4

New functionality

  • switch from old /dev/ploop/ symlink-based to new in-kernel cookie registration
  • snapshots: switch to schema with constant top delta uuid
  • use /proc/vz/ploop_minor based interface to get free minor
  • if ploop device is in maintenance state, try to complete it before doing snapshot/resize/merge/mount/umount/copy operation
  • ploop mount: use in-kernel I/O module autodetection
  • ploop balloon discard: new iterative compacting support
  • ploop balloon discard: implement --stat
  • ploop balloon discard: implement --automount
  • ploop balloon discard: cancellation support
  • ploop balloon: allow DiskDescriptor.xml argument
  • ploop umount: implement -c component_name
  • ploop list: implement
  • /sbin/mount.ploop: do load ploop modules

Bug fixes

  • do not crash on empty DiskDescriptor.xml (libxml2 workaround)
  • ploop convert: fix converting from expanded to raw
  • ploop copy: fixed check for opened fd
  • ploop copy: do not leak opened fds
  • ploop create: fix gpt partition creation to be 4096 aligned
  • tools: few exit code fixes
  • multiple usage, log and error message fixes

Improvements

  • ploop mount: check that mount point is a directory
  • ploop umount: reduce retry count from 60 to 6
  • ploop create: for prealloc image, use ftruncate if fallocate not supported
  • ploop create, resize: add check for correct block device size
  • scripts: de-bash-ify
  • assorted code refactoring, cleanups and nitpicks

Library API changes

  • implement dynamic library loading via ploop_resolve_functions()
  • introduce optimized ploop_get_info_by_descr(), remove ploop_get_info()
  • replace ploop_{alloc,read}_diskdescriptor() with ploop_read_disk_descr()
  • remove ploop_getdevice()