Completed a quick and dirty test build with parted as a build dependency
for Maverick: this appears to resolve the issue (partitions are created
to support volumes within the pool).

** Description changed:

+ IMPACT:
+ libvirt is unable to create partitions to support volumes in physical disk 
devices (or logical disk devices).
+ 
  TEST CASE (using lvm):
  Create a new logical volume:
    lvcreate -n sde -L 500M <vgname>
  Initialise the volume using fdisk
    fdisk /dev/mapper/<vgname>-sde (exit using w to initialize partition table)
  Create a new pool using this device (using attached sde.xml)
    virsh pool-define sde.xml
    virsh pool-start sde
  Create a new volume in the pool:
    virsh vol-create-as --pool sde --name 1 --capacity 100M --allocation 100M
  
  ORIGINAL BUG REPORT:
  
  Ubuntu 10.10 x64
  libvirt-bin:
    Installed: 0.8.3-1ubuntu14
    Candidate: 0.8.3-1ubuntu14
  
  Error:
  
  r...@codis:/etc/libvirt/storage# virsh vol-create-as --pool sde --name 1 
--capacity 100M --allocation 100M
  error: Failed to create vol 1
  error: internal error ' /dev/sde mkpart --script primary ext2 17408B 
106928639B' exited with non-zero status 1 and signal 0: libvir: error : cannot 
execute binary : No such file or directory
  
  Similar error in syslog:
  Jan  2 23:30:03 codis libvirtd: 23:30:03.221: error : virRunWithHook:857 : 
internal error ' /dev/sde mkpart --script primary 1000341504B 1524629503B' 
exited with non-zero status 1 and signal 0: libvir: error : cannot execute 
binary : No such file or directory#012
  
  Pool "sde" is a disk pool using GPT format:
  <pool type='disk'>
    <name>sde</name>
    <uuid>5bdde906-722c-981c-128c-bf4496f5c508</uuid>
    <capacity>0</capacity>
    <allocation>0</allocation>
    <available>0</available>
    <source>
      <device path='/dev/sde'/>
      <format type='gpt'/>
    </source>
    <target>
      <path>/dev</path>
      <permissions>
        <mode>0700</mode>
        <owner>-1</owner>
        <group>-1</group>
      </permissions>
    </target>
  </pool>
  
  From build log, looks like parted headers are found, but not the binary, 
causing an empty DEFINE in config.h
  Really this should be handled more gracefully, but that's another story....
  
  https://launchpad.net/ubuntu/maverick/+source/libvirt/+builds?build_state=all
  
  checking for DEVMAPPER... yes
  checking for parted... no
  checking parted/parted.h usability... yes
  checking parted/parted.h presence... yes
  checking for parted/parted.h... yes
  checking for uuid_generate in -luuid... yes
  checking for ped_device_read in -lparted... yes
  
  Manually rebuilding it locally fixed the problem for me...

** Changed in: libvirt (Ubuntu)
   Importance: Undecided => Medium

** Changed in: libvirt (Ubuntu)
       Status: Confirmed => Triaged

-- 
You received this bug notification because you are a member of Ubuntu
Server Team, which is subscribed to libvirt in ubuntu.
https://bugs.launchpad.net/bugs/697046

Title:
  Unable to create volumes on disk pools as parted support is missing

-- 
Ubuntu-server-bugs mailing list
Ubuntu-server-bugs@lists.ubuntu.com
Modify settings or unsubscribe at: 
https://lists.ubuntu.com/mailman/listinfo/ubuntu-server-bugs

Reply via email to