[pve-devel] [PATCH librados2-perl] Split method pve_rados_connect
Alwin Antreich
a.antreich at proxmox.com
Wed Apr 4 11:54:26 CEST 2018
On Tue, Apr 03, 2018 at 10:25:53AM +0200, Thomas Lamprecht wrote:
>
> Am 03/30/2018 um 12:25 PM schrieb Alwin Antreich:
> > To be able to connect through librados2 without a config file, the
> > method pve_rados_connect is split up into pve_rados_connect and
> > pve_rados_conf_read_file.
> >
> > Signed-off-by: Alwin Antreich <a.antreich at proxmox.com>
> > ---
> > PVE/RADOS.pm | 9 ++++++++-
> > RADOS.xs | 26 +++++++++++++++++++++-----
> > 2 files changed, 29 insertions(+), 6 deletions(-)
> >
> > diff --git a/PVE/RADOS.pm b/PVE/RADOS.pm
> > index aa6a102..ad1c2db 100644
> > --- a/PVE/RADOS.pm
> > +++ b/PVE/RADOS.pm
> > @@ -1,6 +1,6 @@
> > package PVE::RADOS;
> > -use 5.014002;
> > +use 5.014002; # FIXME: update version??
> > use strict;
> > use warnings;
> > use Carp;
> > @@ -13,6 +13,7 @@ use PVE::RPCEnvironment;
> > require Exporter;
> > my $rados_default_timeout = 5;
> > +my $ceph_default_conf = '/etc/ceph/ceph.conf';
> > our @ISA = qw(Exporter);
> > @@ -164,6 +165,12 @@ sub new {
> > $conn = pve_rados_create() ||
> > die "unable to create RADOS object\n";
> > + my $ceph_conf = delete $params{ceph_conf} || $ceph_default_conf;
> > +
> > + if (-e $ceph_conf) {
> > + pve_rados_conf_read_file($conn, $ceph_conf);
> > + }
> > +
> > pve_rados_conf_set($conn, 'client_mount_timeout', $timeout);
> > foreach my $k (keys %params) {
> > diff --git a/RADOS.xs b/RADOS.xs
> > index a9f6bc3..ad3cf96 100644
> > --- a/RADOS.xs
> > +++ b/RADOS.xs
> > @@ -47,19 +47,35 @@ CODE:
>
> This whole hunk does not apply here...
> A quick look gave me one whitespace problem (see below), but that alone did
> not fix it for me...
> Are you sure you sent all commits between this and origin/master ?
>
> git log origin/master..
I will add a white space cleanup before my v2 of this patch, as it seems
not to apply without the cleanup.
>
>
> > }
> > void
> > -pve_rados_connect(cluster)
> > +pve_rados_conf_read_file(cluster, path)
> > rados_t cluster
> > -PROTOTYPE: $
> > +SV *path
> > +PROTOTYPE: $$
> > CODE:
> > {
> > - DPRINTF("pve_rados_connect\n");
> > + char *p = NULL;
> > - int res = rados_conf_read_file(cluster, NULL);
> > + if (SvOK(path)) {
> > + p = SvPV_nolen(path);
> > + }
> > +
> > + DPRINTF("pve_rados_conf_read_file %s\n", p);
> > +
> > + int res = rados_conf_read_file(cluster, p);
> > if (res < 0) {
> > die("rados_conf_read_file failed - %s\n", strerror(-res));
> > }
> > +}
> > +
> > +void
> > +pve_rados_connect(cluster)
> > +rados_t cluster
> > +PROTOTYPE: $
> > +CODE:
> > +{
> > + DPRINTF("pve_rados_connect\n");
>
> The empty line above contains a trailing whitespace in origin/master, which
> your patch does not contain.
see above
>
> > - res = rados_connect(cluster);
> > + int res = rados_connect(cluster);
> > if (res < 0) {
> > die("rados_connect failed - %s\n", strerror(-res));
> > }
>
More information about the pve-devel
mailing list