Re: Need some help with the RBD Java bindings

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On 08/20/2013 11:26 PM, Noah Watkins wrote:
Wido,

I pushed up a patch to

    https://github.com/ceph/rados-java/commit/ca16d82bc5b596620609880e429ec9f4eaa4d5ce

That includes a fix for this problem. The fix is a bit hacky, but the
tests pass now. I included more details about the hack in the code.


I see. Works like a charm for me now. I'll do some further testing with CloudStack.

Wido

On Thu, Aug 15, 2013 at 9:57 AM, Noah Watkins <noah.watkins@xxxxxxxxxxx> wrote:
On Thu, Aug 15, 2013 at 8:51 AM, Wido den Hollander <wido@xxxxxxxx> wrote:

public List<RbdSnapInfo> snapList() throws RbdException {
     IntByReference numSnaps = new IntByReference(16);
     PointerByReference snaps = new PointerByReference();
     List<RbdSnapInfo> list = new ArrayList<RbdSnapInfo>();
     RbdSnapInfo snapInfo, snapInfos[];

     while (true) {
         int r = rbd.rbd_snap_list(this.getPointer(), snaps, numSnaps);

I think you need to allocate the memory for `snaps` yourself. Here is
the RBD wrapper for Python which does that:

   self.snaps = (rbd_snap_info_t * num_snaps.value)()
   ret = self.librbd.rbd_snap_list(image.image, byref(self.snaps),
                        byref(num_snaps))

- Noah
--
To unsubscribe from this list: send the line "unsubscribe ceph-devel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html



--
Wido den Hollander
42on B.V.

Phone: +31 (0)20 700 9902
Skype: contact42on
--
To unsubscribe from this list: send the line "unsubscribe ceph-devel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html




[Index of Archives]     [CEPH Users]     [Ceph Large]     [Information on CEPH]     [Linux BTRFS]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]
  Powered by Linux