elasticsearch-api 0.4.3 → 0.4.4
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- data/Rakefile +50 -5
- data/elasticsearch-api.gemspec +1 -0
- data/lib/elasticsearch/api/actions/bulk.rb +14 -3
- data/lib/elasticsearch/api/actions/count.rb +10 -2
- data/lib/elasticsearch/api/actions/delete_by_query.rb +12 -2
- data/lib/elasticsearch/api/actions/indices/clear_cache.rb +12 -2
- data/lib/elasticsearch/api/actions/indices/close.rb +17 -1
- data/lib/elasticsearch/api/actions/indices/exists.rb +19 -1
- data/lib/elasticsearch/api/actions/indices/exists_alias.rb +15 -3
- data/lib/elasticsearch/api/actions/indices/exists_type.rb +15 -3
- data/lib/elasticsearch/api/actions/indices/flush.rb +16 -4
- data/lib/elasticsearch/api/actions/indices/get_alias.rb +15 -5
- data/lib/elasticsearch/api/actions/indices/get_field_mapping.rb +16 -1
- data/lib/elasticsearch/api/actions/indices/get_mapping.rb +17 -1
- data/lib/elasticsearch/api/actions/indices/get_warmer.rb +17 -0
- data/lib/elasticsearch/api/actions/indices/open.rb +17 -1
- data/lib/elasticsearch/api/actions/indices/optimize.rb +15 -3
- data/lib/elasticsearch/api/actions/indices/put_mapping.rb +20 -1
- data/lib/elasticsearch/api/actions/indices/put_settings.rb +20 -1
- data/lib/elasticsearch/api/actions/indices/put_warmer.rb +20 -3
- data/lib/elasticsearch/api/actions/indices/refresh.rb +15 -3
- data/lib/elasticsearch/api/actions/indices/segments.rb +15 -3
- data/lib/elasticsearch/api/actions/indices/snapshot_index.rb +15 -3
- data/lib/elasticsearch/api/actions/indices/stats.rb +14 -4
- data/lib/elasticsearch/api/actions/indices/status.rb +12 -2
- data/lib/elasticsearch/api/actions/indices/validate_query.rb +12 -2
- data/lib/elasticsearch/api/actions/msearch.rb +2 -2
- data/lib/elasticsearch/api/utils.rb +2 -0
- data/lib/elasticsearch/api/version.rb +1 -1
- data/test/integration/yaml_test_runner.rb +23 -5
- data/test/unit/utils_test.rb +10 -0
- metadata +2 -2
data/Rakefile
CHANGED
@@ -1,5 +1,7 @@
|
|
1
1
|
require "bundler/gem_tasks"
|
2
2
|
|
3
|
+
__current__ = Pathname( File.expand_path('..', __FILE__) )
|
4
|
+
|
3
5
|
desc "Run unit tests"
|
4
6
|
task :default => 'test:unit'
|
5
7
|
task :test => 'test:unit'
|
@@ -27,10 +29,53 @@ namespace :test do
|
|
27
29
|
# test.warning = true
|
28
30
|
end
|
29
31
|
|
30
|
-
|
31
|
-
|
32
|
-
|
33
|
-
|
32
|
+
desc "Run integration tests"
|
33
|
+
task :integration do
|
34
|
+
require 'elasticsearch'
|
35
|
+
|
36
|
+
current_branch = `git --git-dir=#{__current__.join('../support/elasticsearch/.git')} --work-tree=#{__current__.join('../support/elasticsearch')} branch --no-color`.split("\n").select { |b| b =~ /^\*/ }.first.gsub(/^\*\s*/, '')
|
37
|
+
|
38
|
+
# Define the task
|
39
|
+
t = Rake::TestTask.new(:integration) do |test|
|
40
|
+
Rake::Task['test:ci_reporter'].invoke if ENV['CI']
|
41
|
+
test.libs << 'lib' << 'test'
|
42
|
+
test.test_files = FileList["test/integration/yaml_test_runner.rb", "test/integration/**/*_test.rb"]
|
43
|
+
end
|
44
|
+
|
45
|
+
begin
|
46
|
+
client = Elasticsearch::Client.new host: "localhost:#{ENV['TEST_CLUSTER_PORT'] || 9250}"
|
47
|
+
es_version_info = client.info['version']
|
48
|
+
build_hash = es_version_info['build_hash']
|
49
|
+
cluster_running = true
|
50
|
+
rescue Faraday::Error::ConnectionFailed => e
|
51
|
+
STDERR.puts "[!] Test cluster not running?"
|
52
|
+
cluster_running = false
|
53
|
+
end
|
54
|
+
|
55
|
+
checkout_server_build = ENV['TEST_NO_SPEC_CHECKOUT'].nil? || true
|
56
|
+
checkout_build_hash = ENV['TEST_BUILD_HASH'] || build_hash
|
57
|
+
|
58
|
+
begin
|
59
|
+
# Checkout the branch corresponding to the build
|
60
|
+
sh "git --git-dir=#{__current__.join('../support/elasticsearch/.git')} --work-tree=#{__current__.join('../support/elasticsearch')} checkout #{checkout_build_hash} --force --quiet" if cluster_running && checkout_server_build
|
61
|
+
|
62
|
+
# Path to the API specs
|
63
|
+
ENV['TEST_REST_API_SPEC'] = __current__.join('../support/elasticsearch/rest-api-spec/test/').to_s
|
64
|
+
|
65
|
+
# Run the task
|
66
|
+
args = [t.ruby_opts_string, t.run_code, t.file_list_string, t.option_list].join(' ')
|
67
|
+
|
68
|
+
ruby args do |ok, status|
|
69
|
+
if !ok && status.respond_to?(:signaled?) && status.signaled?
|
70
|
+
raise SignalException.new(status.termsig)
|
71
|
+
elsif !ok
|
72
|
+
fail "Command failed with status (#{status.exitstatus}): " + "[ruby #{args}]"
|
73
|
+
end
|
74
|
+
end
|
75
|
+
|
76
|
+
ensure
|
77
|
+
sh "git --git-dir=#{__current__.join('../support/elasticsearch/.git')} --work-tree=#{__current__.join('../support/elasticsearch')} checkout #{current_branch}", verbose: false if cluster_running && checkout_server_build
|
78
|
+
end
|
34
79
|
end
|
35
80
|
|
36
81
|
Rake::TestTask.new(:all) do |test|
|
@@ -39,7 +84,7 @@ namespace :test do
|
|
39
84
|
test.test_files = FileList["test/unit/**/*_test.rb", "test/integration/**/*_test.rb", "test/integration/yaml_test_runner.rb"]
|
40
85
|
end
|
41
86
|
|
42
|
-
namespace :
|
87
|
+
namespace :cluster do
|
43
88
|
desc "Start Elasticsearch nodes for tests"
|
44
89
|
task :start do
|
45
90
|
$LOAD_PATH << File.expand_path('../../elasticsearch-transport/lib', __FILE__) << File.expand_path('../test', __FILE__)
|
data/elasticsearch-api.gemspec
CHANGED
@@ -48,6 +48,7 @@ Gem::Specification.new do |s|
|
|
48
48
|
if defined?(RUBY_VERSION) && RUBY_VERSION < '1.9'
|
49
49
|
s.add_development_dependency "test-unit", '~> 2'
|
50
50
|
s.add_development_dependency "activesupport", '~> 3'
|
51
|
+
s.add_development_dependency "json"
|
51
52
|
end
|
52
53
|
|
53
54
|
if defined?(RUBY_VERSION) && RUBY_VERSION > '1.9'
|
@@ -7,15 +7,26 @@ module Elasticsearch
|
|
7
7
|
# Pass the operations in the `:body` option as an array of hashes, following Elasticsearch conventions.
|
8
8
|
# For operations which take data, pass them as the `:data` option in the operation hash.
|
9
9
|
#
|
10
|
-
# @example Perform three operations in a single request
|
10
|
+
# @example Perform three operations in a single request, passing actions and data as an array of hashes
|
11
|
+
#
|
12
|
+
# client.bulk body: [
|
13
|
+
# { index: { _index: 'myindex', _type: 'mytype', _id: 1 } },
|
14
|
+
# { title: 'foo' },
|
15
|
+
#
|
16
|
+
# { index: { _index: 'myindex', _type: 'mytype', _id: 2 } },
|
17
|
+
# { title: 'foo' },
|
18
|
+
#
|
19
|
+
# { delete: { _index: 'myindex', _type: 'mytype', _id: 3 } }
|
20
|
+
# ]
|
21
|
+
# @example Perform three operations in a single request, passing data in the `:data` option
|
11
22
|
#
|
12
23
|
# client.bulk body: [
|
13
24
|
# { index: { _index: 'myindex', _type: 'mytype', _id: 1, data: { title: 'foo' } } },
|
14
25
|
# { update: { _index: 'myindex', _type: 'mytype', _id: 2, data: { doc: { title: 'foo' } } } },
|
15
|
-
# { delete: { _index: 'myindex', _type: 'mytype', _id: 3 }
|
26
|
+
# { delete: { _index: 'myindex', _type: 'mytype', _id: 3 } }
|
16
27
|
# ]
|
17
28
|
#
|
18
|
-
# @example Perform a script-based bulk update
|
29
|
+
# @example Perform a script-based bulk update, passing scripts in the `:data` option
|
19
30
|
#
|
20
31
|
# client.bulk body: [
|
21
32
|
# { update: { _index: 'myindex', _type: 'mytype', _id: 1,
|
@@ -19,8 +19,13 @@ module Elasticsearch
|
|
19
19
|
# @option arguments [List] :index A comma-separated list of indices to restrict the results
|
20
20
|
# @option arguments [List] :type A comma-separated list of types to restrict the results
|
21
21
|
# @option arguments [Hash] :body A query to restrict the results (optional)
|
22
|
-
# @option arguments [
|
23
|
-
#
|
22
|
+
# @option arguments [Boolean] :allow_no_indices Whether to ignore if a wildcard indices expression resolves into
|
23
|
+
# no concrete indices. (This includes `_all` string or when no
|
24
|
+
# indices have been specified)
|
25
|
+
# @option arguments [String] :ignore_indices When performed on multiple indices, allows to ignore
|
26
|
+
# `missing` ones (options: none, missing) @until 1.0
|
27
|
+
# @option arguments [Boolean] :ignore_unavailable Whether specified concrete indices should be ignored when
|
28
|
+
# unavailable (missing, closed, etc)
|
24
29
|
# @option arguments [Number] :min_score Include only documents with a specific `_score` value in the result
|
25
30
|
# @option arguments [String] :preference Specify the node or shard the operation should be performed on
|
26
31
|
# (default: random)
|
@@ -32,6 +37,9 @@ module Elasticsearch
|
|
32
37
|
def count(arguments={})
|
33
38
|
valid_params = [
|
34
39
|
:ignore_indices,
|
40
|
+
:ignore_unavailable,
|
41
|
+
:allow_no_indices,
|
42
|
+
:expand_wildcards,
|
35
43
|
:min_score,
|
36
44
|
:preference,
|
37
45
|
:routing,
|
@@ -25,8 +25,15 @@ module Elasticsearch
|
|
25
25
|
# @option arguments [String] :default_operator The default operator for query string query (AND or OR)
|
26
26
|
# (options: AND, OR)
|
27
27
|
# @option arguments [String] :df The field to use as default where no field prefix is given in the query string
|
28
|
-
# @option arguments [
|
29
|
-
#
|
28
|
+
# @option arguments [Boolean] :allow_no_indices Whether to ignore if a wildcard indices expression resolves into
|
29
|
+
# no concrete indices. (This includes `_all` string or when no
|
30
|
+
# indices have been specified)
|
31
|
+
# @option arguments [String] :expand_wildcards Whether to expand wildcard expression to concrete indices that
|
32
|
+
# are open, closed or both. (options: open, closed)
|
33
|
+
# @option arguments [String] :ignore_indices When performed on multiple indices, allows to ignore
|
34
|
+
# `missing` ones (options: none, missing) @until 1.0
|
35
|
+
# @option arguments [Boolean] :ignore_unavailable Whether specified concrete indices should be ignored when
|
36
|
+
# unavailable (missing, closed, etc)
|
30
37
|
# @option arguments [String] :replication Specific replication type (options: sync, async)
|
31
38
|
# @option arguments [String] :q Query in the Lucene query string syntax
|
32
39
|
# @option arguments [String] :routing Specific routing value
|
@@ -44,6 +51,9 @@ module Elasticsearch
|
|
44
51
|
:default_operator,
|
45
52
|
:df,
|
46
53
|
:ignore_indices,
|
54
|
+
:ignore_unavailable,
|
55
|
+
:allow_no_indices,
|
56
|
+
:expand_wildcards,
|
47
57
|
:replication,
|
48
58
|
:q,
|
49
59
|
:routing,
|
@@ -23,6 +23,11 @@ module Elasticsearch
|
|
23
23
|
# client.indices.clear_cache field_data: true, fields: 'created_at', filter_cache: false, id_cache: false
|
24
24
|
#
|
25
25
|
# @option arguments [List] :index A comma-separated list of index name to limit the operation
|
26
|
+
# @option arguments [Boolean] :allow_no_indices Whether to ignore if a wildcard indices expression resolves into
|
27
|
+
# no concrete indices. (This includes `_all` string or when no
|
28
|
+
# indices have been specified)
|
29
|
+
# @option arguments [String] :expand_wildcards Whether to expand wildcard expression to concrete indices that
|
30
|
+
# are open, closed or both. (options: open, closed)
|
26
31
|
# @option arguments [Boolean] :field_data Clear field data
|
27
32
|
# @option arguments [Boolean] :fielddata Clear field data
|
28
33
|
# @option arguments [List] :fields A comma-separated list of fields to clear when using the
|
@@ -33,8 +38,10 @@ module Elasticsearch
|
|
33
38
|
# `filter_cache` parameter (default: all)
|
34
39
|
# @option arguments [Boolean] :id Clear ID caches for parent/child
|
35
40
|
# @option arguments [Boolean] :id_cache Clear ID caches for parent/child
|
36
|
-
# @option arguments [String] :ignore_indices When performed on multiple indices,
|
37
|
-
#
|
41
|
+
# @option arguments [String] :ignore_indices When performed on multiple indices, allows to ignore
|
42
|
+
# `missing` ones (options: none, missing) @until 1.0
|
43
|
+
# @option arguments [Boolean] :ignore_unavailable Whether specified concrete indices should be ignored when
|
44
|
+
# unavailable (missing, closed, etc)
|
38
45
|
# @option arguments [List] :index A comma-separated list of index name to limit the operation
|
39
46
|
# @option arguments [Boolean] :recycler Clear the recycler cache
|
40
47
|
#
|
@@ -51,6 +58,9 @@ module Elasticsearch
|
|
51
58
|
:id,
|
52
59
|
:id_cache,
|
53
60
|
:ignore_indices,
|
61
|
+
:ignore_unavailable,
|
62
|
+
:allow_no_indices,
|
63
|
+
:expand_wildcards,
|
54
64
|
:recycler ]
|
55
65
|
|
56
66
|
method = 'POST'
|
@@ -12,13 +12,29 @@ module Elasticsearch
|
|
12
12
|
# client.indices.close index: 'myindex'
|
13
13
|
#
|
14
14
|
# @option arguments [String] :index The name of the index (*Required*)
|
15
|
+
# @option arguments [Boolean] :allow_no_indices Whether to ignore if a wildcard indices expression resolves into
|
16
|
+
# no concrete indices. (This includes `_all` string or when no
|
17
|
+
# indices have been specified)
|
18
|
+
# @option arguments [String] :expand_wildcards Whether to expand wildcard expression to concrete indices that
|
19
|
+
# are open, closed or both. (options: open, closed)
|
20
|
+
# @option arguments [String] :ignore_indices When performed on multiple indices, allows to ignore
|
21
|
+
# `missing` ones (options: none, missing) @until 1.0
|
22
|
+
# @option arguments [Boolean] :ignore_unavailable Whether specified concrete indices should be ignored when
|
23
|
+
# unavailable (missing, closed, etc)
|
15
24
|
# @option arguments [Time] :timeout Explicit operation timeout
|
16
25
|
#
|
17
26
|
# @see http://www.elasticsearch.org/guide/reference/api/admin-indices-open-close/
|
18
27
|
#
|
19
28
|
def close(arguments={})
|
20
29
|
raise ArgumentError, "Required argument 'index' missing" unless arguments[:index]
|
21
|
-
|
30
|
+
|
31
|
+
valid_params = [
|
32
|
+
:ignore_indices,
|
33
|
+
:ignore_unavailable,
|
34
|
+
:allow_no_indices,
|
35
|
+
:expand_wildcards,
|
36
|
+
:timeout
|
37
|
+
]
|
22
38
|
|
23
39
|
method = 'POST'
|
24
40
|
path = Utils.__pathify Utils.__listify(arguments[:index]), '_close'
|
@@ -10,15 +10,33 @@ module Elasticsearch
|
|
10
10
|
# client.indices.exists index: 'myindex'
|
11
11
|
#
|
12
12
|
# @option arguments [List] :index A comma-separated list of indices to check (*Required*)
|
13
|
+
# @option arguments [Boolean] :allow_no_indices Whether to ignore if a wildcard indices expression resolves into
|
14
|
+
# no concrete indices. (This includes `_all` string or when no
|
15
|
+
# indices have been specified)
|
16
|
+
# @option arguments [String] :expand_wildcards Whether to expand wildcard expression to concrete indices that
|
17
|
+
# are open, closed or both. (options: open, closed)
|
18
|
+
# @option arguments [String] :ignore_indices When performed on multiple indices, allows to ignore
|
19
|
+
# `missing` ones (options: none, missing) @until 1.0
|
20
|
+
# @option arguments [Boolean] :ignore_unavailable Whether specified concrete indices should be ignored when
|
21
|
+
# unavailable (missing, closed, etc)
|
22
|
+
#
|
13
23
|
# @return [true,false]
|
14
24
|
#
|
15
25
|
# @see http://www.elasticsearch.org/guide/reference/api/admin-indices-indices-exists/
|
16
26
|
#
|
17
27
|
def exists(arguments={})
|
18
28
|
raise ArgumentError, "Required argument 'index' missing" unless arguments[:index]
|
29
|
+
|
30
|
+
valid_params = [
|
31
|
+
:ignore_indices,
|
32
|
+
:ignore_unavailable,
|
33
|
+
:allow_no_indices,
|
34
|
+
:expand_wildcards
|
35
|
+
]
|
36
|
+
|
19
37
|
method = 'HEAD'
|
20
38
|
path = Utils.__listify(arguments[:index])
|
21
|
-
params =
|
39
|
+
params = Utils.__validate_and_extract_params arguments, valid_params
|
22
40
|
body = nil
|
23
41
|
|
24
42
|
perform_request(method, path, params, body).status == 200 ? true : false
|
@@ -11,14 +11,26 @@ module Elasticsearch
|
|
11
11
|
#
|
12
12
|
# @option arguments [List] :index A comma-separated list of index names to filter aliases
|
13
13
|
# @option arguments [List] :name A comma-separated list of alias names to return (*Required*)
|
14
|
-
# @option arguments [
|
15
|
-
#
|
14
|
+
# @option arguments [Boolean] :allow_no_indices Whether to ignore if a wildcard indices expression resolves into
|
15
|
+
# no concrete indices. (This includes `_all` string or when no
|
16
|
+
# indices have been specified)
|
17
|
+
# @option arguments [String] :expand_wildcards Whether to expand wildcard expression to concrete indices that
|
18
|
+
# are open, closed or both. (options: open, closed)
|
19
|
+
# @option arguments [String] :ignore_indices When performed on multiple indices, allows to ignore
|
20
|
+
# `missing` ones (options: none, missing) @until 1.0
|
21
|
+
# @option arguments [Boolean] :ignore_unavailable Whether specified concrete indices should be ignored when
|
22
|
+
# unavailable (missing, closed, etc)
|
16
23
|
#
|
17
24
|
# @see http://www.elasticsearch.org/guide/reference/api/admin-indices-aliases/
|
18
25
|
#
|
19
26
|
def exists_alias(arguments={})
|
20
27
|
raise ArgumentError, "Required argument 'name' missing" unless arguments[:name]
|
21
|
-
valid_params = [
|
28
|
+
valid_params = [
|
29
|
+
:ignore_indices,
|
30
|
+
:ignore_unavailable,
|
31
|
+
:allow_no_indices,
|
32
|
+
:expand_wildcards
|
33
|
+
]
|
22
34
|
|
23
35
|
method = 'HEAD'
|
24
36
|
path = Utils.__pathify Utils.__listify(arguments[:index]), '_alias', Utils.__escape(arguments[:name])
|
@@ -8,15 +8,27 @@ module Elasticsearch
|
|
8
8
|
# @option arguments [List] :index A comma-separated list of index names; use `_all`
|
9
9
|
# to check the types across all indices (*Required*)
|
10
10
|
# @option arguments [List] :type A comma-separated list of document types to check (*Required*)
|
11
|
-
# @option arguments [
|
12
|
-
#
|
11
|
+
# @option arguments [Boolean] :allow_no_indices Whether to ignore if a wildcard indices expression resolves into
|
12
|
+
# no concrete indices. (This includes `_all` string or when no
|
13
|
+
# indices have been specified)
|
14
|
+
# @option arguments [String] :expand_wildcards Whether to expand wildcard expression to concrete indices that
|
15
|
+
# are open, closed or both. (options: open, closed)
|
16
|
+
# @option arguments [String] :ignore_indices When performed on multiple indices, allows to ignore
|
17
|
+
# `missing` ones (options: none, missing) @until 1.0
|
18
|
+
# @option arguments [Boolean] :ignore_unavailable Whether specified concrete indices should be ignored when
|
19
|
+
# unavailable (missing, closed, etc)
|
13
20
|
#
|
14
21
|
# @see http://www.elasticsearch.org/guide/reference/api/admin-indices-types-exists/
|
15
22
|
#
|
16
23
|
def exists_type(arguments={})
|
17
24
|
raise ArgumentError, "Required argument 'index' missing" unless arguments[:index]
|
18
25
|
raise ArgumentError, "Required argument 'type' missing" unless arguments[:type]
|
19
|
-
valid_params = [
|
26
|
+
valid_params = [
|
27
|
+
:ignore_indices,
|
28
|
+
:ignore_unavailable,
|
29
|
+
:allow_no_indices,
|
30
|
+
:expand_wildcards
|
31
|
+
]
|
20
32
|
|
21
33
|
method = 'HEAD'
|
22
34
|
path = Utils.__pathify Utils.__listify(arguments[:index]), Utils.__escape(arguments[:type])
|
@@ -11,10 +11,19 @@ module Elasticsearch
|
|
11
11
|
# @note The flush operation is handled automatically by Elasticsearch, you don't need to perform it manually.
|
12
12
|
#
|
13
13
|
# @option arguments [List] :index A comma-separated list of index names; use `_all` or empty string for all indices
|
14
|
-
# @option arguments [Boolean] :force
|
15
|
-
#
|
16
|
-
# @option arguments [
|
17
|
-
#
|
14
|
+
# @option arguments [Boolean] :force Whether a flush should be forced even if it is not necessarily needed ie.
|
15
|
+
# if no changes will be committed to the index. (Internal)
|
16
|
+
# @option arguments [Boolean] :full If set to true a new index writer is created and settings that have been
|
17
|
+
# changed related to the index writer will be refreshed. (Internal)
|
18
|
+
# @option arguments [Boolean] :allow_no_indices Whether to ignore if a wildcard indices expression resolves into
|
19
|
+
# no concrete indices. (This includes `_all` string or when no
|
20
|
+
# indices have been specified)
|
21
|
+
# @option arguments [String] :expand_wildcards Whether to expand wildcard expression to concrete indices that
|
22
|
+
# are open, closed or both. (options: open, closed)
|
23
|
+
# @option arguments [String] :ignore_indices When performed on multiple indices, allows to ignore
|
24
|
+
# `missing` ones (options: none, missing) @until 1.0
|
25
|
+
# @option arguments [Boolean] :ignore_unavailable Whether specified concrete indices should be ignored when
|
26
|
+
# unavailable (missing, closed, etc)
|
18
27
|
# @option arguments [Boolean] :refresh Refresh the index after performing the operation
|
19
28
|
#
|
20
29
|
# @see http://www.elasticsearch.org/guide/reference/api/admin-indices-flush/
|
@@ -24,6 +33,9 @@ module Elasticsearch
|
|
24
33
|
:force,
|
25
34
|
:full,
|
26
35
|
:ignore_indices,
|
36
|
+
:ignore_unavailable,
|
37
|
+
:allow_no_indices,
|
38
|
+
:expand_wildcards,
|
27
39
|
:refresh ]
|
28
40
|
|
29
41
|
method = 'POST'
|
@@ -15,16 +15,26 @@ module Elasticsearch
|
|
15
15
|
#
|
16
16
|
# @option arguments [List] :index A comma-separated list of index names to filter aliases
|
17
17
|
# @option arguments [List] :name A comma-separated list of alias names to return (*Required*)
|
18
|
-
# @option arguments [
|
19
|
-
#
|
20
|
-
#
|
21
|
-
# @option arguments [
|
18
|
+
# @option arguments [Boolean] :allow_no_indices Whether to ignore if a wildcard indices expression resolves into
|
19
|
+
# no concrete indices. (This includes `_all` string or when no
|
20
|
+
# indices have been specified)
|
21
|
+
# @option arguments [String] :expand_wildcards Whether to expand wildcard expression to concrete indices that
|
22
|
+
# are open, closed or both. (options: open, closed)
|
23
|
+
# @option arguments [String] :ignore_indices When performed on multiple indices, allows to ignore
|
24
|
+
# `missing` ones (options: none, missing) @until 1.0
|
25
|
+
# @option arguments [Boolean] :ignore_unavailable Whether specified concrete indices should be ignored when
|
26
|
+
# unavailable (missing, closed, etc)
|
22
27
|
#
|
23
28
|
# @see http://www.elasticsearch.org/guide/reference/api/admin-indices-aliases/
|
24
29
|
#
|
25
30
|
def get_alias(arguments={})
|
26
31
|
raise ArgumentError, "Required argument 'name' missing" unless arguments[:name]
|
27
|
-
valid_params = [
|
32
|
+
valid_params = [
|
33
|
+
:ignore_indices,
|
34
|
+
:ignore_unavailable,
|
35
|
+
:allow_no_indices,
|
36
|
+
:expand_wildcards
|
37
|
+
]
|
28
38
|
|
29
39
|
method = 'GET'
|
30
40
|
path = Utils.__pathify Utils.__listify(arguments[:index]), '_alias', Utils.__escape(arguments[:name])
|
@@ -21,12 +21,27 @@ module Elasticsearch
|
|
21
21
|
# @option arguments [List] :type A comma-separated list of document types
|
22
22
|
# @option arguments [List] :field A comma-separated list of fields (*Required*)
|
23
23
|
# @option arguments [Boolean] :include_defaults Whether default mapping values should be returned as well
|
24
|
+
# @option arguments [Boolean] :allow_no_indices Whether to ignore if a wildcard indices expression resolves into
|
25
|
+
# no concrete indices. (This includes `_all` string or when no
|
26
|
+
# indices have been specified)
|
27
|
+
# @option arguments [String] :expand_wildcards Whether to expand wildcard expression to concrete indices that
|
28
|
+
# are open, closed or both. (options: open, closed)
|
29
|
+
# @option arguments [String] :ignore_indices When performed on multiple indices, allows to ignore
|
30
|
+
# `missing` ones (options: none, missing) @until 1.0
|
31
|
+
# @option arguments [Boolean] :ignore_unavailable Whether specified concrete indices should be ignored when
|
32
|
+
# unavailable (missing, closed, etc)
|
24
33
|
#
|
25
34
|
# @see http://www.elasticsearch.org/guide/en/elasticsearch/reference/current/indices-get-field-mapping.html
|
26
35
|
#
|
27
36
|
def get_field_mapping(arguments={})
|
28
37
|
raise ArgumentError, "Required argument 'field' missing" unless arguments[:field]
|
29
|
-
valid_params = [
|
38
|
+
valid_params = [
|
39
|
+
:include_defaults,
|
40
|
+
:ignore_indices,
|
41
|
+
:ignore_unavailable,
|
42
|
+
:allow_no_indices,
|
43
|
+
:expand_wildcards
|
44
|
+
]
|
30
45
|
|
31
46
|
method = 'GET'
|
32
47
|
path = Utils.__pathify(
|
@@ -19,13 +19,29 @@ module Elasticsearch
|
|
19
19
|
#
|
20
20
|
# @option arguments [List] :index A comma-separated list of index names; use `_all` or empty string for all indices
|
21
21
|
# @option arguments [List] :type A comma-separated list of document types
|
22
|
+
# @option arguments [Boolean] :allow_no_indices Whether to ignore if a wildcard indices expression resolves into
|
23
|
+
# no concrete indices. (This includes `_all` string or when no
|
24
|
+
# indices have been specified)
|
25
|
+
# @option arguments [String] :expand_wildcards Whether to expand wildcard expression to concrete indices that
|
26
|
+
# are open, closed or both. (options: open, closed)
|
27
|
+
# @option arguments [String] :ignore_indices When performed on multiple indices, allows to ignore
|
28
|
+
# `missing` ones (options: none, missing) @until 1.0
|
29
|
+
# @option arguments [Boolean] :ignore_unavailable Whether specified concrete indices should be ignored when
|
30
|
+
# unavailable (missing, closed, etc)
|
22
31
|
#
|
23
32
|
# @see http://www.elasticsearch.org/guide/reference/api/admin-indices-get-mapping/
|
24
33
|
#
|
25
34
|
def get_mapping(arguments={})
|
35
|
+
valid_params = [
|
36
|
+
:ignore_indices,
|
37
|
+
:ignore_unavailable,
|
38
|
+
:allow_no_indices,
|
39
|
+
:expand_wildcards
|
40
|
+
]
|
41
|
+
|
26
42
|
method = 'GET'
|
27
43
|
path = Utils.__pathify Utils.__listify(arguments[:index]), Utils.__listify(arguments[:type]), '_mapping'
|
28
|
-
params =
|
44
|
+
params = Utils.__validate_and_extract_params arguments, valid_params
|
29
45
|
body = nil
|
30
46
|
|
31
47
|
perform_request(method, path, params, body).body
|
@@ -26,11 +26,28 @@ module Elasticsearch
|
|
26
26
|
# @option arguments [String] :name The name of the warmer (supports wildcards); leave empty to get all warmers
|
27
27
|
# @option arguments [List] :type A comma-separated list of document types to restrict the operation;
|
28
28
|
# leave empty to perform the operation on all types
|
29
|
+
# @option arguments [Boolean] :allow_no_indices Whether to ignore if a wildcard indices expression resolves into
|
30
|
+
# no concrete indices. (This includes `_all` string or when no
|
31
|
+
# indices have been specified)
|
32
|
+
# @option arguments [String] :expand_wildcards Whether to expand wildcard expression to concrete indices that
|
33
|
+
# are open, closed or both. (options: open, closed)
|
34
|
+
# @option arguments [String] :ignore_indices When performed on multiple indices, allows to ignore
|
35
|
+
# `missing` ones (options: none, missing) @until 1.0
|
36
|
+
# @option arguments [Boolean] :ignore_unavailable Whether specified concrete indices should be ignored when
|
37
|
+
# unavailable (missing, closed, etc)
|
29
38
|
#
|
30
39
|
# @see http://www.elasticsearch.org/guide/reference/api/admin-indices-warmers/
|
31
40
|
#
|
32
41
|
def get_warmer(arguments={})
|
33
42
|
raise ArgumentError, "Required argument 'index' missing" unless arguments[:index]
|
43
|
+
|
44
|
+
valid_params = [
|
45
|
+
:ignore_indices,
|
46
|
+
:ignore_unavailable,
|
47
|
+
:allow_no_indices,
|
48
|
+
:expand_wildcards
|
49
|
+
]
|
50
|
+
|
34
51
|
method = 'GET'
|
35
52
|
path = Utils.__pathify( Utils.__listify(arguments[:index]), '_warmer', Utils.__escape(arguments[:name]) )
|
36
53
|
params = {}
|
@@ -10,13 +10,29 @@ module Elasticsearch
|
|
10
10
|
# client.indices.open index: 'myindex'
|
11
11
|
#
|
12
12
|
# @option arguments [String] :index The name of the index (*Required*)
|
13
|
+
# @option arguments [Boolean] :allow_no_indices Whether to ignore if a wildcard indices expression resolves into
|
14
|
+
# no concrete indices. (This includes `_all` string or when no
|
15
|
+
# indices have been specified)
|
16
|
+
# @option arguments [String] :expand_wildcards Whether to expand wildcard expression to concrete indices that
|
17
|
+
# are open, closed or both. (options: open, closed)
|
18
|
+
# @option arguments [String] :ignore_indices When performed on multiple indices, allows to ignore
|
19
|
+
# `missing` ones (options: none, missing) @until 1.0
|
20
|
+
# @option arguments [Boolean] :ignore_unavailable Whether specified concrete indices should be ignored when
|
21
|
+
# unavailable (missing, closed, etc)
|
13
22
|
# @option arguments [Time] :timeout Explicit operation timeout
|
14
23
|
#
|
15
24
|
# @see http://www.elasticsearch.org/guide/reference/api/admin-indices-open-close/
|
16
25
|
#
|
17
26
|
def open(arguments={})
|
18
27
|
raise ArgumentError, "Required argument 'index' missing" unless arguments[:index]
|
19
|
-
|
28
|
+
|
29
|
+
valid_params = [
|
30
|
+
:ignore_indices,
|
31
|
+
:ignore_unavailable,
|
32
|
+
:allow_no_indices,
|
33
|
+
:expand_wildcards,
|
34
|
+
:timeout
|
35
|
+
]
|
20
36
|
|
21
37
|
method = 'POST'
|
22
38
|
path = Utils.__pathify Utils.__escape(arguments[:index]), '_open'
|
@@ -18,12 +18,20 @@ module Elasticsearch
|
|
18
18
|
#
|
19
19
|
# @option arguments [List] :index A comma-separated list of index names; use `_all`
|
20
20
|
# or empty string to perform the operation on all indices
|
21
|
+
# @option arguments [Boolean] :allow_no_indices Whether to ignore if a wildcard indices expression resolves into
|
22
|
+
# no concrete indices. (This includes `_all` string or when no
|
23
|
+
# indices have been specified)
|
24
|
+
# @option arguments [String] :expand_wildcards Whether to expand wildcard expression to concrete indices that
|
25
|
+
# are open, closed or both. (options: open, closed)
|
21
26
|
# @option arguments [Boolean] :flush Specify whether the index should be flushed after performing the operation
|
22
27
|
# (default: true)
|
23
|
-
# @option arguments [String] :ignore_indices When performed on multiple indices, allows to ignore
|
24
|
-
# (options: none, missing)
|
28
|
+
# @option arguments [String] :ignore_indices When performed on multiple indices, allows to ignore
|
29
|
+
# `missing` ones (options: none, missing) @until 1.0
|
30
|
+
# @option arguments [Boolean] :ignore_unavailable Whether specified concrete indices should be ignored when
|
31
|
+
# unavailable (missing, closed, etc)
|
25
32
|
# @option arguments [Number] :max_num_segments The number of segments the index should be merged into
|
26
33
|
# (default: dynamic)
|
34
|
+
# @option arguments [Time] :master_timeout Specify timeout for connection to master
|
27
35
|
# @option arguments [Boolean] :only_expunge_deletes Specify whether the operation should only expunge
|
28
36
|
# deleted documents
|
29
37
|
# @option arguments [Boolean] :refresh Specify whether the index should be refreshed after performing the operation
|
@@ -35,8 +43,12 @@ module Elasticsearch
|
|
35
43
|
#
|
36
44
|
def optimize(arguments={})
|
37
45
|
valid_params = [
|
38
|
-
:flush,
|
39
46
|
:ignore_indices,
|
47
|
+
:ignore_unavailable,
|
48
|
+
:allow_no_indices,
|
49
|
+
:expand_wildcards,
|
50
|
+
:flush,
|
51
|
+
:master_timeout,
|
40
52
|
:max_num_segments,
|
41
53
|
:only_expunge_deletes,
|
42
54
|
:operation_threading,
|
@@ -23,6 +23,16 @@ module Elasticsearch
|
|
23
23
|
# @option arguments [String] :type The name of the document type (*Required*)
|
24
24
|
# @option arguments [Boolean] :ignore_conflicts Specify whether to ignore conflicts while updating the mapping
|
25
25
|
# (default: false)
|
26
|
+
# @option arguments [Boolean] :allow_no_indices Whether to ignore if a wildcard indices expression resolves into
|
27
|
+
# no concrete indices. (This includes `_all` string or when no
|
28
|
+
# indices have been specified)
|
29
|
+
# @option arguments [String] :expand_wildcards Whether to expand wildcard expression to concrete indices that
|
30
|
+
# are open, closed or both. (options: open, closed)
|
31
|
+
# @option arguments [String] :ignore_indices When performed on multiple indices, allows to ignore
|
32
|
+
# `missing` ones (options: none, missing) @until 1.0
|
33
|
+
# @option arguments [Boolean] :ignore_unavailable Whether specified concrete indices should be ignored when
|
34
|
+
# unavailable (missing, closed, etc)
|
35
|
+
# @option arguments [Time] :master_timeout Specify timeout for connection to master
|
26
36
|
# @option arguments [Time] :timeout Explicit operation timeout
|
27
37
|
#
|
28
38
|
# @see http://www.elasticsearch.org/guide/reference/api/admin-indices-put-mapping/
|
@@ -31,7 +41,16 @@ module Elasticsearch
|
|
31
41
|
raise ArgumentError, "Required argument 'index' missing" unless arguments[:index]
|
32
42
|
raise ArgumentError, "Required argument 'type' missing" unless arguments[:type]
|
33
43
|
raise ArgumentError, "Required argument 'body' missing" unless arguments[:body]
|
34
|
-
|
44
|
+
|
45
|
+
valid_params = [
|
46
|
+
:ignore_conflicts,
|
47
|
+
:ignore_indices,
|
48
|
+
:ignore_unavailable,
|
49
|
+
:allow_no_indices,
|
50
|
+
:expand_wildcards,
|
51
|
+
:master_timeout,
|
52
|
+
:timeout
|
53
|
+
]
|
35
54
|
|
36
55
|
method = 'PUT'
|
37
56
|
path = Utils.__pathify Utils.__listify(arguments[:index]), Utils.__escape(arguments[:type]), '_mapping'
|
@@ -27,14 +27,33 @@ module Elasticsearch
|
|
27
27
|
# @option arguments [Hash] :body The index settings to be updated (*Required*)
|
28
28
|
# @option arguments [List] :index A comma-separated list of index names; use `_all` or empty string
|
29
29
|
# to perform the operation on all indices
|
30
|
+
# @option arguments [Boolean] :allow_no_indices Whether to ignore if a wildcard indices expression resolves into
|
31
|
+
# no concrete indices. (This includes `_all` string or when no
|
32
|
+
# indices have been specified)
|
33
|
+
# @option arguments [String] :expand_wildcards Whether to expand wildcard expression to concrete indices that
|
34
|
+
# are open, closed or both. (options: open, closed)
|
35
|
+
# @option arguments [String] :ignore_indices When performed on multiple indices, allows to ignore
|
36
|
+
# `missing` ones (options: none, missing) @until 1.0
|
37
|
+
# @option arguments [Boolean] :ignore_unavailable Whether specified concrete indices should be ignored when
|
38
|
+
# unavailable (missing, closed, etc)
|
39
|
+
# @option arguments [Time] :master_timeout Specify timeout for connection to master
|
30
40
|
#
|
31
41
|
# @see http://www.elasticsearch.org/guide/reference/api/admin-indices-update-settings/
|
32
42
|
#
|
33
43
|
def put_settings(arguments={})
|
34
44
|
raise ArgumentError, "Required argument 'body' missing" unless arguments[:body]
|
45
|
+
|
46
|
+
valid_params = [
|
47
|
+
:ignore_indices,
|
48
|
+
:ignore_unavailable,
|
49
|
+
:allow_no_indices,
|
50
|
+
:expand_wildcards,
|
51
|
+
:master_timeout
|
52
|
+
]
|
53
|
+
|
35
54
|
method = 'PUT'
|
36
55
|
path = Utils.__pathify Utils.__listify(arguments[:index]), '_settings'
|
37
|
-
params =
|
56
|
+
params = Utils.__validate_and_extract_params arguments, valid_params
|
38
57
|
body = arguments[:body]
|
39
58
|
|
40
59
|
perform_request(method, path, params, body).body
|
@@ -25,19 +25,36 @@ module Elasticsearch
|
|
25
25
|
# leave empty to perform the operation on all types
|
26
26
|
# @option arguments [Hash] :body The search request definition for the warmer
|
27
27
|
# (query, filters, facets, sorting, etc) (*Required*)
|
28
|
+
# @option arguments [Boolean] :allow_no_indices Whether to ignore if a wildcard indices expression resolves into
|
29
|
+
# no concrete indices. (This includes `_all` string or when no
|
30
|
+
# indices have been specified)
|
31
|
+
# @option arguments [String] :expand_wildcards Whether to expand wildcard expression to concrete indices that
|
32
|
+
# are open, closed or both. (options: open, closed)
|
33
|
+
# @option arguments [String] :ignore_indices When performed on multiple indices, allows to ignore
|
34
|
+
# `missing` ones (options: none, missing) @until 1.0
|
35
|
+
# @option arguments [Boolean] :ignore_unavailable Whether specified concrete indices should be ignored when
|
36
|
+
# unavailable (missing, closed, etc)
|
28
37
|
#
|
29
38
|
# @see http://www.elasticsearch.org/guide/reference/api/admin-indices-warmers/
|
30
39
|
#
|
31
40
|
def put_warmer(arguments={})
|
32
41
|
raise ArgumentError, "Required argument 'index' missing" unless arguments[:index]
|
33
|
-
raise ArgumentError, "Required argument 'name' missing"
|
34
|
-
raise ArgumentError, "Required argument 'body' missing"
|
42
|
+
raise ArgumentError, "Required argument 'name' missing" unless arguments[:name]
|
43
|
+
raise ArgumentError, "Required argument 'body' missing" unless arguments[:body]
|
44
|
+
|
45
|
+
valid_params = [
|
46
|
+
:ignore_indices,
|
47
|
+
:ignore_unavailable,
|
48
|
+
:allow_no_indices,
|
49
|
+
:expand_wildcards
|
50
|
+
]
|
51
|
+
|
35
52
|
method = 'PUT'
|
36
53
|
path = Utils.__pathify( Utils.__listify(arguments[:index]),
|
37
54
|
Utils.__listify(arguments[:type]),
|
38
55
|
'_warmer',
|
39
56
|
Utils.__listify(arguments[:name]) )
|
40
|
-
params =
|
57
|
+
params = Utils.__validate_and_extract_params arguments, valid_params
|
41
58
|
body = arguments[:body]
|
42
59
|
|
43
60
|
perform_request(method, path, params, body).body
|
@@ -20,13 +20,25 @@ module Elasticsearch
|
|
20
20
|
#
|
21
21
|
# @option arguments [List] :index A comma-separated list of index names; use `_all` or empty string
|
22
22
|
# to perform the operation on all indices
|
23
|
-
# @option arguments [
|
24
|
-
#
|
23
|
+
# @option arguments [Boolean] :allow_no_indices Whether to ignore if a wildcard indices expression resolves into
|
24
|
+
# no concrete indices. (This includes `_all` string or when no
|
25
|
+
# indices have been specified)
|
26
|
+
# @option arguments [String] :expand_wildcards Whether to expand wildcard expression to concrete indices that
|
27
|
+
# are open, closed or both. (options: open, closed)
|
28
|
+
# @option arguments [String] :ignore_indices When performed on multiple indices, allows to ignore
|
29
|
+
# `missing` ones (options: none, missing) @until 1.0
|
30
|
+
# @option arguments [Boolean] :ignore_unavailable Whether specified concrete indices should be ignored when
|
31
|
+
# unavailable (missing, closed, etc)
|
25
32
|
#
|
26
33
|
# @see http://www.elasticsearch.org/guide/reference/api/admin-indices-refresh/
|
27
34
|
#
|
28
35
|
def refresh(arguments={})
|
29
|
-
valid_params = [
|
36
|
+
valid_params = [
|
37
|
+
:ignore_indices,
|
38
|
+
:ignore_unavailable,
|
39
|
+
:allow_no_indices,
|
40
|
+
:expand_wildcards
|
41
|
+
]
|
30
42
|
|
31
43
|
method = 'POST'
|
32
44
|
path = Utils.__pathify Utils.__listify(arguments[:index]), '_refresh'
|
@@ -10,13 +10,25 @@ module Elasticsearch
|
|
10
10
|
#
|
11
11
|
# @option arguments [List] :index A comma-separated list of index names; use `_all` or empty string
|
12
12
|
# to perform the operation on all indices
|
13
|
-
# @option arguments [
|
14
|
-
#
|
13
|
+
# @option arguments [Boolean] :allow_no_indices Whether to ignore if a wildcard indices expression resolves into
|
14
|
+
# no concrete indices. (This includes `_all` string or when no
|
15
|
+
# indices have been specified)
|
16
|
+
# @option arguments [String] :expand_wildcards Whether to expand wildcard expression to concrete indices that
|
17
|
+
# are open, closed or both. (options: open, closed)
|
18
|
+
# @option arguments [String] :ignore_indices When performed on multiple indices, allows to ignore
|
19
|
+
# `missing` ones (options: none, missing) @until 1.0
|
20
|
+
# @option arguments [Boolean] :ignore_unavailable Whether specified concrete indices should be ignored when
|
21
|
+
# unavailable (missing, closed, etc)
|
15
22
|
#
|
16
23
|
# @see http://elasticsearch.org/guide/reference/api/admin-indices-segments/
|
17
24
|
#
|
18
25
|
def segments(arguments={})
|
19
|
-
valid_params = [
|
26
|
+
valid_params = [
|
27
|
+
:ignore_indices,
|
28
|
+
:ignore_unavailable,
|
29
|
+
:allow_no_indices,
|
30
|
+
:expand_wildcards
|
31
|
+
]
|
20
32
|
|
21
33
|
method = 'GET'
|
22
34
|
path = Utils.__pathify Utils.__listify(arguments[:index]), '_segments'
|
@@ -9,13 +9,25 @@ module Elasticsearch
|
|
9
9
|
#
|
10
10
|
# @option arguments [List] :index A comma-separated list of index names; use `_all` or empty string
|
11
11
|
# to perform the operation on all indices
|
12
|
-
# @option arguments [
|
13
|
-
#
|
12
|
+
# @option arguments [Boolean] :allow_no_indices Whether to ignore if a wildcard indices expression resolves into
|
13
|
+
# no concrete indices. (This includes `_all` string or when no
|
14
|
+
# indices have been specified)
|
15
|
+
# @option arguments [String] :expand_wildcards Whether to expand wildcard expression to concrete indices that
|
16
|
+
# are open, closed or both. (options: open, closed)
|
17
|
+
# @option arguments [String] :ignore_indices When performed on multiple indices, allows to ignore
|
18
|
+
# `missing` ones (options: none, missing) @until 1.0
|
19
|
+
# @option arguments [Boolean] :ignore_unavailable Whether specified concrete indices should be ignored when
|
20
|
+
# unavailable (missing, closed, etc)
|
14
21
|
#
|
15
22
|
# @see http://www.elasticsearch.org/guide/reference/api/admin-indices-gateway-snapshot/
|
16
23
|
#
|
17
24
|
def snapshot_index(arguments={})
|
18
|
-
valid_params = [
|
25
|
+
valid_params = [
|
26
|
+
:ignore_indices,
|
27
|
+
:ignore_unavailable,
|
28
|
+
:allow_no_indices,
|
29
|
+
:expand_wildcards
|
30
|
+
]
|
19
31
|
|
20
32
|
method = 'POST'
|
21
33
|
path = Utils.__pathify Utils.__listify(arguments[:index]), '_gateway/snapshot'
|
@@ -31,8 +31,11 @@ module Elasticsearch
|
|
31
31
|
#
|
32
32
|
# @since The `fielddata`, `filter_cache` and `id_cache` metrics are available from version 0.90.
|
33
33
|
#
|
34
|
-
# @option arguments [
|
35
|
-
#
|
34
|
+
# @option arguments [Boolean] :allow_no_indices Whether to ignore if a wildcard indices expression resolves into
|
35
|
+
# no concrete indices. (This includes `_all` string or when no
|
36
|
+
# indices have been specified)
|
37
|
+
# @option arguments [String] :expand_wildcards Whether to expand wildcard expression to concrete indices that
|
38
|
+
# are open, closed or both. (options: open, closed)
|
36
39
|
# @option arguments [Boolean] :all Return all available information
|
37
40
|
# @option arguments [Boolean] :clear Reset the default level of detail
|
38
41
|
# @option arguments [Boolean] :docs Return information about indexed and deleted documents
|
@@ -43,8 +46,10 @@ module Elasticsearch
|
|
43
46
|
# @option arguments [Boolean] :get Return information about get operations
|
44
47
|
# @option arguments [Boolean] :groups A comma-separated list of search groups for `search` statistics
|
45
48
|
# @option arguments [Boolean] :id_cache Return information about ID cache
|
46
|
-
# @option arguments [String] :ignore_indices When performed on multiple indices, allows to ignore
|
47
|
-
# (options: none, missing)
|
49
|
+
# @option arguments [String] :ignore_indices When performed on multiple indices, allows to ignore
|
50
|
+
# `missing` ones (options: none, missing) @until 1.0
|
51
|
+
# @option arguments [Boolean] :ignore_unavailable Whether specified concrete indices should be ignored when
|
52
|
+
# unavailable (missing, closed, etc)
|
48
53
|
# @option arguments [List] :index A comma-separated list of index names; use `_all` or empty string
|
49
54
|
# to perform the operation on all indices
|
50
55
|
# @option arguments [Boolean] :indexing Return information about indexing operations
|
@@ -54,6 +59,8 @@ module Elasticsearch
|
|
54
59
|
# @option arguments [Boolean] :refresh Return information about refresh operations
|
55
60
|
# @option arguments [Boolean] :search Return information about search operations; use the `groups` parameter to
|
56
61
|
# include information for specific search groups
|
62
|
+
# @option arguments [List] :search_groups A comma-separated list of search groups to include
|
63
|
+
# in the `search` statistics
|
57
64
|
# @option arguments [Boolean] :store Return information about the size of the index
|
58
65
|
# @option arguments [Boolean] :warmer Return information about warmers
|
59
66
|
#
|
@@ -72,6 +79,9 @@ module Elasticsearch
|
|
72
79
|
:groups,
|
73
80
|
:id_cache,
|
74
81
|
:ignore_indices,
|
82
|
+
:ignore_unavailable,
|
83
|
+
:allow_no_indices,
|
84
|
+
:expand_wildcards,
|
75
85
|
:indexing,
|
76
86
|
:merge,
|
77
87
|
:refresh,
|
@@ -19,8 +19,15 @@ module Elasticsearch
|
|
19
19
|
#
|
20
20
|
# @option arguments [List] :index A comma-separated list of index names; use `_all` or empty string
|
21
21
|
# to perform the operation on all indices
|
22
|
-
# @option arguments [
|
23
|
-
#
|
22
|
+
# @option arguments [Boolean] :allow_no_indices Whether to ignore if a wildcard indices expression resolves into
|
23
|
+
# no concrete indices. (This includes `_all` string or when no
|
24
|
+
# indices have been specified)
|
25
|
+
# @option arguments [String] :expand_wildcards Whether to expand wildcard expression to concrete indices that
|
26
|
+
# are open, closed or both. (options: open, closed)
|
27
|
+
# @option arguments [String] :ignore_indices When performed on multiple indices, allows to ignore
|
28
|
+
# `missing` ones (options: none, missing) @until 1.0
|
29
|
+
# @option arguments [Boolean] :ignore_unavailable Whether specified concrete indices should be ignored when
|
30
|
+
# unavailable (missing, closed, etc)
|
24
31
|
# @option arguments [Boolean] :recovery Return information about shard recovery (progress, size, etc)
|
25
32
|
# @option arguments [Boolean] :snapshot Return information about snapshots (when shared gateway is used)
|
26
33
|
#
|
@@ -29,6 +36,9 @@ module Elasticsearch
|
|
29
36
|
def status(arguments={})
|
30
37
|
valid_params = [
|
31
38
|
:ignore_indices,
|
39
|
+
:ignore_unavailable,
|
40
|
+
:allow_no_indices,
|
41
|
+
:expand_wildcards,
|
32
42
|
:recovery,
|
33
43
|
:snapshot ]
|
34
44
|
|
@@ -39,9 +39,16 @@ module Elasticsearch
|
|
39
39
|
# @option arguments [List] :type A comma-separated list of document types to restrict the operation;
|
40
40
|
# leave empty to perform the operation on all types
|
41
41
|
# @option arguments [Hash] :body The query definition (*without* the top-level `query` element)
|
42
|
+
# @option arguments [Boolean] :allow_no_indices Whether to ignore if a wildcard indices expression resolves into
|
43
|
+
# no concrete indices. (This includes `_all` string or when no
|
44
|
+
# indices have been specified)
|
45
|
+
# @option arguments [String] :expand_wildcards Whether to expand wildcard expression to concrete indices that
|
46
|
+
# are open, closed or both. (options: open, closed)
|
42
47
|
# @option arguments [Boolean] :explain Return detailed information about the error
|
43
|
-
# @option arguments [String] :ignore_indices When performed on multiple indices, allows to ignore
|
44
|
-
# (options: none, missing)
|
48
|
+
# @option arguments [String] :ignore_indices When performed on multiple indices, allows to ignore
|
49
|
+
# `missing` ones (options: none, missing) @until 1.0
|
50
|
+
# @option arguments [Boolean] :ignore_unavailable Whether specified concrete indices should be ignored when
|
51
|
+
# unavailable (missing, closed, etc)
|
45
52
|
# @option arguments [String] :source The URL-encoded query definition (instead of using the request body)
|
46
53
|
# @option arguments [String] :q Query in the Lucene query string syntax
|
47
54
|
#
|
@@ -52,6 +59,9 @@ module Elasticsearch
|
|
52
59
|
:q,
|
53
60
|
:explain,
|
54
61
|
:ignore_indices,
|
62
|
+
:ignore_unavailable,
|
63
|
+
:allow_no_indices,
|
64
|
+
:expand_wildcards,
|
55
65
|
:source ]
|
56
66
|
|
57
67
|
method = 'GET'
|
@@ -21,8 +21,8 @@ module Elasticsearch
|
|
21
21
|
# body: [
|
22
22
|
# { query: { match_all: {} } },
|
23
23
|
# { index: 'myindex', type: 'mytype' },
|
24
|
-
# { query: { query_string: { query: '"Test 1"' } } }
|
25
|
-
# { search_type: 'count' }
|
24
|
+
# { query: { query_string: { query: '"Test 1"' } } },
|
25
|
+
# { search_type: 'count' },
|
26
26
|
# { facets: { published: { terms: { field: 'published' } } } }
|
27
27
|
# ]
|
28
28
|
#
|
@@ -78,6 +78,7 @@ module Elasticsearch
|
|
78
78
|
payload = payload.
|
79
79
|
inject([]) do |sum, item|
|
80
80
|
operation, meta = item.to_a.first
|
81
|
+
meta = meta.clone
|
81
82
|
data = meta.delete(:data) || meta.delete('data')
|
82
83
|
|
83
84
|
sum << { operation => meta }
|
@@ -86,6 +87,7 @@ module Elasticsearch
|
|
86
87
|
end.
|
87
88
|
map { |item| MultiJson.dump(item) }
|
88
89
|
payload << "" unless payload.empty?
|
90
|
+
return payload.join("\n")
|
89
91
|
|
90
92
|
# Array of strings
|
91
93
|
when payload.all? { |d| d.is_a? String }
|
@@ -10,7 +10,7 @@ require 'elasticsearch/extensions/test/profiling'
|
|
10
10
|
|
11
11
|
# Launch test cluster
|
12
12
|
#
|
13
|
-
Elasticsearch::Extensions::Test::Cluster.start if ENV['SERVER'] and not Elasticsearch::Extensions::Test::Cluster.running?
|
13
|
+
Elasticsearch::Extensions::Test::Cluster.start(nodes: 1) if ENV['SERVER'] and not Elasticsearch::Extensions::Test::Cluster.running?
|
14
14
|
|
15
15
|
# Register `at_exit` handler for server shutdown.
|
16
16
|
# MUST be called before requiring `test/unit`.
|
@@ -42,9 +42,12 @@ $client ||= Elasticsearch::Client.new host: "localhost:#{ENV['TEST_CLUSTER_PORT'
|
|
42
42
|
|
43
43
|
# Store Elasticsearch version
|
44
44
|
#
|
45
|
-
|
45
|
+
es_version_info = $client.info['version']
|
46
|
+
$es_version = es_version_info['number']
|
46
47
|
|
47
|
-
puts '-'*80,
|
48
|
+
puts '-'*80,
|
49
|
+
"Elasticsearch #{ANSI.ansi($es_version, :bold)} [#{es_version_info['build_hash'].to_s[0...7]}]".center(80),
|
50
|
+
'-'*80
|
48
51
|
|
49
52
|
require 'test_helper'
|
50
53
|
require 'test/unit'
|
@@ -177,7 +180,21 @@ module Elasticsearch
|
|
177
180
|
skip = actions.select { |a| a['skip'] }.first
|
178
181
|
if skip
|
179
182
|
min, max = skip['skip']['version'].split('-').map(&:strip)
|
180
|
-
|
183
|
+
|
184
|
+
min_normalized = sprintf "%03d-%03d-%03d",
|
185
|
+
*min.split('.')
|
186
|
+
.map(&:to_i)
|
187
|
+
.fill(0, min.split('.').length, 3-min.split('.').length)
|
188
|
+
|
189
|
+
max_normalized = sprintf "%03d-%03d-%03d",
|
190
|
+
*max.split('.')
|
191
|
+
.map(&:to_i)
|
192
|
+
.map(&:to_i)
|
193
|
+
.fill(0, max.split('.').length, 3-max.split('.').length)
|
194
|
+
|
195
|
+
es_normalized = sprintf "%03d-%03d-%03d", *$es_version.split('.').map(&:to_i)
|
196
|
+
|
197
|
+
if min_normalized <= es_normalized && max_normalized >= es_normalized
|
181
198
|
return skip['skip']['reason'] ? skip['skip']['reason'] : true
|
182
199
|
end
|
183
200
|
end
|
@@ -193,7 +210,8 @@ end
|
|
193
210
|
|
194
211
|
include Elasticsearch::YamlTestSuite
|
195
212
|
|
196
|
-
PATH = Pathname(ENV['
|
213
|
+
PATH = Pathname(ENV['TEST_REST_API_SPEC'] || \
|
214
|
+
File.expand_path('../../../../support/elasticsearch/rest-api-spec/test', __FILE__))
|
197
215
|
suites = Dir.glob(PATH.join('*')).map { |d| Pathname(d) }
|
198
216
|
suites = suites.select { |s| s.to_s =~ Regexp.new(ENV['FILTER']) } if ENV['FILTER']
|
199
217
|
|
data/test/unit/utils_test.rb
CHANGED
@@ -124,6 +124,16 @@ module Elasticsearch
|
|
124
124
|
PAYLOAD
|
125
125
|
end
|
126
126
|
|
127
|
+
should "not modify the original payload" do
|
128
|
+
original = [ { :index => {:foo => 'bar', :data => { :moo => 'bam' }} } ]
|
129
|
+
result = Elasticsearch::API::Utils.__bulkify original
|
130
|
+
assert_not_nil original.first[:index][:data], "Deleted :data from #{original}"
|
131
|
+
assert_equal <<-PAYLOAD.gsub(/^\s+/, ''), result
|
132
|
+
{"index":{"foo":"bar"}}
|
133
|
+
{"moo":"bam"}
|
134
|
+
PAYLOAD
|
135
|
+
end
|
136
|
+
|
127
137
|
end
|
128
138
|
|
129
139
|
context "__validate_and_extract_params" do
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: elasticsearch-api
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.4.
|
4
|
+
version: 0.4.4
|
5
5
|
prerelease:
|
6
6
|
platform: ruby
|
7
7
|
authors:
|
@@ -9,7 +9,7 @@ authors:
|
|
9
9
|
autorequire:
|
10
10
|
bindir: bin
|
11
11
|
cert_chain: []
|
12
|
-
date:
|
12
|
+
date: 2014-01-07 00:00:00.000000000 Z
|
13
13
|
dependencies:
|
14
14
|
- !ruby/object:Gem::Dependency
|
15
15
|
name: multi_json
|