Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Bug: cluster.routing.allocation.allow_rebalance seems to be ignored #7092

Closed
faxm0dem opened this Issue Jul 30, 2014 · 5 comments

Comments

Projects
None yet
4 participants
@faxm0dem
Copy link

commented Jul 30, 2014

In v1.1.1, when trying to update the cluster.routing.allocation.allow_rebalance setting, nothing seems to happen: neither in the elasticsearch log, nor on the request feedback:

⚡ curl -XPUT 0:9200/_cluster/settings\?pretty -d '
{
  "persistent": {
    "cluster.routing.allocation.allow_rebalance": "indices_all_active",
    "cluster.routing.allocation.enable": "none",
    "cluster.routing.allocation.cluster_concurrent_rebalance": 2
  }
}
'
{
  "acknowledged" : true,
  "persistent" : {
    "cluster" : {
      "routing" : {
        "allocation" : {
          "enable" : "none",
          "cluster_concurrent_rebalance" : "2"
        }
      }
    }
  },
  "transient" : { }
}

In the server log:

[2014-07-30 14:32:16,797][INFO ][cluster.routing.allocation.decider] [node] updating [cluster.routing.allocation.cluster_concurrent_rebalance] from [4], to [2]
[2014-07-30 14:32:16,797][INFO ][cluster.routing.allocation.decider] [node] updating [cluster.routing.allocation.enable] from [PRIMARIES] to [NONE]

@clintongormley

This comment has been minimized.

Copy link
Member

commented Jul 30, 2014

I don't follow. It appears that your settings have been accepted?

@faxm0dem

This comment has been minimized.

Copy link
Author

commented Jul 30, 2014

Look again: client and server feedback are present for enable and cluster_concurrent_rebalance, but none for allow_rebalance. And looking at the cluster's behaviour, it's not taking it into account.
On a sidenote, if I try to update an invalid setting, I get no error, e.g. cluster.routing.allocation.foo:

$ curl -XPUT 0:9200/_cluster/settings\?pretty -d '{"transient":{"cluster.routing.allocation.foo":"bar"}}'
{
  "acknowledged" : true,
  "persistent" : { },
  "transient" : { }
}
@clintongormley

This comment has been minimized.

Copy link
Member

commented Jul 30, 2014

Ah apologies - missed that in the long line. I've reformatted the initial request to make it easier to read.

Looks like it isn't a dynamic setting, but probably should be.

/cc @dakrone ?

@dakrone

This comment has been minimized.

Copy link
Member

commented Jul 30, 2014

Sure, I can make this dynamic.

@faxm0dem

This comment has been minimized.

Copy link
Author

commented Jul 30, 2014

oh! that was the reason. two suggestions then:

  1. make it clear in the documentation as to what is dynamic and what isn't
  2. throw an error both in logfile and in response when submitting an invalid setting

Thanks

@dakrone dakrone added v1.4.0 labels Jul 30, 2014

dakrone added a commit to dakrone/elasticsearch that referenced this issue Aug 5, 2014

Make "cluster.routing.allocation.allow_rebalance" a dynamic setting
Also makes it a static constant and changes all tests to use it instead
of a string.

Fixes elastic#7092

dakrone added a commit that referenced this issue Aug 5, 2014

Make "cluster.routing.allocation.allow_rebalance" a dynamic setting
Also makes it a static constant and changes all tests to use it instead
of a string.

Fixes #7092

@dakrone dakrone closed this in #7095 Aug 5, 2014

dakrone added a commit that referenced this issue Sep 8, 2014

Make "cluster.routing.allocation.allow_rebalance" a dynamic setting
Also makes it a static constant and changes all tests to use it instead
of a string.

Fixes #7092
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
You can’t perform that action at this time.