Re: [Openstack] [Swift] Bug: swift-ring-builder set_weight doesn't work

2017-01-30 Thread Matthew Oliver
You welcome, and thank you for bringing it to our attention. Thanks to you,
the next release will have the set_weight usage corrected:

  https://bugs.launchpad.net/swift/+bug/1660214

Regards,
Matt

On Mon, Jan 30, 2017 at 7:25 PM, Alexandr Porunov <
alexandr.poru...@gmail.com> wrote:

> Hello Matt,
>
> Thank you very much for your help! It's awesome. Now everything works!
>
> Best regards,
> Alexandr
>
> On Mon, Jan 30, 2017 at 12:48 AM, Matthew Oliver 
> wrote:
>
>> Hey Alexandr,
>>
>> Thanks for the email. I can help you in this instance, and I'll push up a
>> patch to correct the usage documentation for the long version of the
>> set_weight command.
>>
>>
>> On Sun, Jan 29, 2017 at 8:33 AM, Alexandr Porunov <
>> alexandr.poru...@gmail.com> wrote:
>>
>>> Hello,
>>>
>>> I can't change a weight of the device.
>>> Here is a list of my devices:
>>>
>>> Devices:id  region  zone  ip address  port  replication ip
>>>  replication port  name weight partitions balance meta
>>>  0   1 1   host1  6000   host1
>>>6000d1 1000.00   10240.00 bla bla1 bla2
>>>  1   1 1   host1  6000   host1
>>>6000d2 1000.00   10240.00 bla bla1 bla2
>>>  2   1 1   host1  6000   host1
>>>6000d3 1000.00   10240.00 bla bla1 bla2
>>>
>>> Here is what I tried to change a weight:
>>> swift-ring-builder object.builder set_weight --region 1 --zone 1 --ip
>>> host1 --port 6000 --replication-ip host1 --replication-port 6000 --device
>>> d1 --meta "bla bla1 bla2" --weight 1000
>>>
>>
>> There is a problem with the command as you've sent it. But I agree it
>> isn't obvious from the usage error. Using the long form (--region,
>> --device, etc) is just defining search criteria for what you want to
>> change. Not specifying what you want to change.
>>
>> So in your case above your looking for a device that already has a weight
>> of 1000, and your not specifying what the change it to. To fix your
>> command, you'd need to:
>>
>>   swift-ring-builder object.builder set_weight --region 1 --zone 1 --ip
>> host1 --port 6000 --replication-ip host1 --replication-port 6000 --device
>> d1 --meta "bla bla1 bla2" --weight 1024 1000
>>
>> NOTE: I am sending in the 1000 as the last option. Obviously as these are
>> search terms you don't actually have to send them all in, only the ones
>> that identify the devices or device you want to change.
>>
>>
>>> swift-ring-builder object.builder set_weight r1z1-host1:6000Rhost1:6000
>>> d1_"bla bla1 bla2" 2000
>>>
>>
>> The short version above is failing, as you forgot to add the '/'
>> seperator between the port and the device, given your example it should
>> have been:
>>
>> swift-ring-builder object.builder set_weight
>> r1z1-host1:6000Rhost1:6000/d1_"bla bla1 bla2" 2000
>>
>> NOTE: the '/' before the d1.
>>
>> What your putting in there is just a search for devices to change. You
>> don't have to put the full string in. I guess if you have a tool that will
>> use the full definition then fine. I find when wanting to update just 1
>> host it's easier to do so via the device id:
>>
>>   swift-ring-builder set_weight d1 2000
>>
>> In both cases it doesn't work and shows the next information:
>>>
>>> swift-ring-builder  set_weight  
>>>
>>> [ >>
>>> [--yes]
>>>
>>>
>>>
>>> or
>>>
>>>
>>>
>>> swift-ring-builder  set_weight
>>>
>>> --region  --zone  --ip  --port 
>>>
>>> --replication-ip  --replication-port 
>>>
>>> --device  --meta  --weight 
>>>
>>> [--yes]
>>>
>>>
>>
>> This usage isn't been very useful here, as it's missing the actual adding
>> the weight. I'll raise a bug and patch to address this.
>>
>>
>>>
>>>
>>> Where ,  and  are replication ip, hostname
>>>
>>> and port.
>>>
>>> Any of the options are optional in both cases.
>>>
>>>
>>>
>>> Resets the devices' weights. No partitions will be reassigned to or
>>> from
>>> the device until after running 'rebalance'. This is so you can make
>>>
>>> multiple device changes and rebalance them all just once.
>>>
>>>
>>>
>>> Option --yes assume a yes response to all questions.
>>>
>>>
>>> Please, correct me if it is my fault.
>>>
>>> Best regards,
>>> Alexandr
>>>
>>> ___
>>> Mailing list: http://lists.openstack.org/cgi
>>> -bin/mailman/listinfo/openstack
>>> Post to : openstack@lists.openstack.org
>>> Unsubscribe : http://lists.openstack.org/cgi
>>> -bin/mailman/listinfo/openstack
>>>
>>>
>> regards,
>> Matt
>>
>>
>
___
Mailing list: http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack
Post to : openstack@lists.openstack.org
Unsubscribe : http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack


Re: [Openstack] [Swift] Bug: swift-ring-builder set_weight doesn't work

2017-01-30 Thread Alexandr Porunov
Hello Matt,

Thank you very much for your help! It's awesome. Now everything works!

Best regards,
Alexandr

On Mon, Jan 30, 2017 at 12:48 AM, Matthew Oliver  wrote:

> Hey Alexandr,
>
> Thanks for the email. I can help you in this instance, and I'll push up a
> patch to correct the usage documentation for the long version of the
> set_weight command.
>
>
> On Sun, Jan 29, 2017 at 8:33 AM, Alexandr Porunov <
> alexandr.poru...@gmail.com> wrote:
>
>> Hello,
>>
>> I can't change a weight of the device.
>> Here is a list of my devices:
>>
>> Devices:id  region  zone  ip address  port  replication ip
>>  replication port  name weight partitions balance meta
>>  0   1 1   host1  6000   host1
>>6000d1 1000.00   10240.00 bla bla1 bla2
>>  1   1 1   host1  6000   host1
>>6000d2 1000.00   10240.00 bla bla1 bla2
>>  2   1 1   host1  6000   host1
>>6000d3 1000.00   10240.00 bla bla1 bla2
>>
>> Here is what I tried to change a weight:
>> swift-ring-builder object.builder set_weight --region 1 --zone 1 --ip
>> host1 --port 6000 --replication-ip host1 --replication-port 6000 --device
>> d1 --meta "bla bla1 bla2" --weight 1000
>>
>
> There is a problem with the command as you've sent it. But I agree it
> isn't obvious from the usage error. Using the long form (--region,
> --device, etc) is just defining search criteria for what you want to
> change. Not specifying what you want to change.
>
> So in your case above your looking for a device that already has a weight
> of 1000, and your not specifying what the change it to. To fix your
> command, you'd need to:
>
>   swift-ring-builder object.builder set_weight --region 1 --zone 1 --ip
> host1 --port 6000 --replication-ip host1 --replication-port 6000 --device
> d1 --meta "bla bla1 bla2" --weight 1024 1000
>
> NOTE: I am sending in the 1000 as the last option. Obviously as these are
> search terms you don't actually have to send them all in, only the ones
> that identify the devices or device you want to change.
>
>
>> swift-ring-builder object.builder set_weight r1z1-host1:6000Rhost1:6000
>> d1_"bla bla1 bla2" 2000
>>
>
> The short version above is failing, as you forgot to add the '/' seperator
> between the port and the device, given your example it should have been:
>
> swift-ring-builder object.builder set_weight
> r1z1-host1:6000Rhost1:6000/d1_"bla bla1 bla2" 2000
>
> NOTE: the '/' before the d1.
>
> What your putting in there is just a search for devices to change. You
> don't have to put the full string in. I guess if you have a tool that will
> use the full definition then fine. I find when wanting to update just 1
> host it's easier to do so via the device id:
>
>   swift-ring-builder set_weight d1 2000
>
> In both cases it doesn't work and shows the next information:
>>
>> swift-ring-builder  set_weight  
>>
>> [ >
>> [--yes]
>>
>>
>>
>> or
>>
>>
>>
>> swift-ring-builder  set_weight
>>
>> --region  --zone  --ip  --port 
>>
>> --replication-ip  --replication-port 
>>
>> --device  --meta  --weight 
>>
>> [--yes]
>>
>>
>
> This usage isn't been very useful here, as it's missing the actual adding
> the weight. I'll raise a bug and patch to address this.
>
>
>>
>>
>> Where ,  and  are replication ip, hostname
>>
>> and port.
>>
>> Any of the options are optional in both cases.
>>
>>
>>
>> Resets the devices' weights. No partitions will be reassigned to or
>> from
>> the device until after running 'rebalance'. This is so you can make
>>
>> multiple device changes and rebalance them all just once.
>>
>>
>>
>> Option --yes assume a yes response to all questions.
>>
>>
>> Please, correct me if it is my fault.
>>
>> Best regards,
>> Alexandr
>>
>> ___
>> Mailing list: http://lists.openstack.org/cgi
>> -bin/mailman/listinfo/openstack
>> Post to : openstack@lists.openstack.org
>> Unsubscribe : http://lists.openstack.org/cgi
>> -bin/mailman/listinfo/openstack
>>
>>
> regards,
> Matt
>
>
___
Mailing list: http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack
Post to : openstack@lists.openstack.org
Unsubscribe : http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack


Re: [Openstack] [Swift] Bug: swift-ring-builder set_weight doesn't work

2017-01-29 Thread Matthew Oliver
Hey Alexandr,

Thanks for the email. I can help you in this instance, and I'll push up a
patch to correct the usage documentation for the long version of the
set_weight command.


On Sun, Jan 29, 2017 at 8:33 AM, Alexandr Porunov <
alexandr.poru...@gmail.com> wrote:

> Hello,
>
> I can't change a weight of the device.
> Here is a list of my devices:
>
> Devices:id  region  zone  ip address  port  replication ip
>  replication port  name weight partitions balance meta
>  0   1 1   host1  6000   host1
>  6000d1 1000.00   10240.00 bla bla1 bla2
>  1   1 1   host1  6000   host1
>  6000d2 1000.00   10240.00 bla bla1 bla2
>  2   1 1   host1  6000   host1
>  6000d3 1000.00   10240.00 bla bla1 bla2
>
> Here is what I tried to change a weight:
> swift-ring-builder object.builder set_weight --region 1 --zone 1 --ip
> host1 --port 6000 --replication-ip host1 --replication-port 6000 --device
> d1 --meta "bla bla1 bla2" --weight 1000
>

There is a problem with the command as you've sent it. But I agree it isn't
obvious from the usage error. Using the long form (--region, --device, etc)
is just defining search criteria for what you want to change. Not
specifying what you want to change.

So in your case above your looking for a device that already has a weight
of 1000, and your not specifying what the change it to. To fix your
command, you'd need to:

  swift-ring-builder object.builder set_weight --region 1 --zone 1 --ip
host1 --port 6000 --replication-ip host1 --replication-port 6000 --device
d1 --meta "bla bla1 bla2" --weight 1024 1000

NOTE: I am sending in the 1000 as the last option. Obviously as these are
search terms you don't actually have to send them all in, only the ones
that identify the devices or device you want to change.


> swift-ring-builder object.builder set_weight r1z1-host1:6000Rhost1:6000
> d1_"bla bla1 bla2" 2000
>

The short version above is failing, as you forgot to add the '/' seperator
between the port and the device, given your example it should have been:

swift-ring-builder object.builder set_weight
r1z1-host1:6000Rhost1:6000/d1_"bla bla1 bla2" 2000

NOTE: the '/' before the d1.

What your putting in there is just a search for devices to change. You
don't have to put the full string in. I guess if you have a tool that will
use the full definition then fine. I find when wanting to update just 1
host it's easier to do so via the device id:

  swift-ring-builder set_weight d1 2000

In both cases it doesn't work and shows the next information:
>
> swift-ring-builder  set_weight  
>
> [ 
> [--yes]
>
>
>
> or
>
>
>
> swift-ring-builder  set_weight
>
> --region  --zone  --ip  --port 
>
> --replication-ip  --replication-port 
>
> --device  --meta  --weight 
>
> [--yes]
>
>

This usage isn't been very useful here, as it's missing the actual adding
the weight. I'll raise a bug and patch to address this.


>
>
> Where ,  and  are replication ip, hostname
>
> and port.
>
> Any of the options are optional in both cases.
>
>
>
> Resets the devices' weights. No partitions will be reassigned to or
> from
> the device until after running 'rebalance'. This is so you can make
>
> multiple device changes and rebalance them all just once.
>
>
>
> Option --yes assume a yes response to all questions.
>
>
> Please, correct me if it is my fault.
>
> Best regards,
> Alexandr
>
> ___
> Mailing list: http://lists.openstack.org/cgi-bin/mailman/listinfo/
> openstack
> Post to : openstack@lists.openstack.org
> Unsubscribe : http://lists.openstack.org/cgi-bin/mailman/listinfo/
> openstack
>
>
regards,
Matt
___
Mailing list: http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack
Post to : openstack@lists.openstack.org
Unsubscribe : http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack