elasticsearch-api 7.3.0 → 7.5.0

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.
Files changed (187) hide show
  1. checksums.yaml +4 -4
  2. data/Rakefile +16 -23
  3. data/elasticsearch-api.gemspec +1 -1
  4. data/lib/elasticsearch/api/actions/abort_benchmark.rb +1 -2
  5. data/lib/elasticsearch/api/actions/benchmark.rb +2 -3
  6. data/lib/elasticsearch/api/actions/bulk.rb +35 -68
  7. data/lib/elasticsearch/api/actions/cat/aliases.rb +30 -52
  8. data/lib/elasticsearch/api/actions/cat/allocation.rb +36 -50
  9. data/lib/elasticsearch/api/actions/cat/count.rb +25 -46
  10. data/lib/elasticsearch/api/actions/cat/fielddata.rb +31 -33
  11. data/lib/elasticsearch/api/actions/cat/health.rb +27 -37
  12. data/lib/elasticsearch/api/actions/cat/help.rb +14 -10
  13. data/lib/elasticsearch/api/actions/cat/indices.rb +45 -62
  14. data/lib/elasticsearch/api/actions/cat/master.rb +24 -34
  15. data/lib/elasticsearch/api/actions/cat/nodeattrs.rb +20 -16
  16. data/lib/elasticsearch/api/actions/cat/nodes.rb +34 -46
  17. data/lib/elasticsearch/api/actions/cat/params_registry.rb +0 -1
  18. data/lib/elasticsearch/api/actions/cat/pending_tasks.rb +29 -35
  19. data/lib/elasticsearch/api/actions/cat/plugins.rb +21 -18
  20. data/lib/elasticsearch/api/actions/cat/recovery.rb +40 -56
  21. data/lib/elasticsearch/api/actions/cat/repositories.rb +21 -24
  22. data/lib/elasticsearch/api/actions/cat/segments.rb +29 -22
  23. data/lib/elasticsearch/api/actions/cat/shards.rb +38 -59
  24. data/lib/elasticsearch/api/actions/cat/snapshots.rb +32 -27
  25. data/lib/elasticsearch/api/actions/cat/tasks.rb +25 -19
  26. data/lib/elasticsearch/api/actions/cat/templates.rb +26 -18
  27. data/lib/elasticsearch/api/actions/cat/thread_pool.rb +36 -46
  28. data/lib/elasticsearch/api/actions/clear_scroll.rb +21 -8
  29. data/lib/elasticsearch/api/actions/cluster/allocation_explain.rb +15 -13
  30. data/lib/elasticsearch/api/actions/cluster/get_settings.rb +18 -18
  31. data/lib/elasticsearch/api/actions/cluster/health.rb +42 -44
  32. data/lib/elasticsearch/api/actions/cluster/params_registry.rb +0 -1
  33. data/lib/elasticsearch/api/actions/cluster/pending_tasks.rb +15 -17
  34. data/lib/elasticsearch/api/actions/cluster/put_settings.rb +20 -17
  35. data/lib/elasticsearch/api/actions/cluster/remote_info.rb +8 -6
  36. data/lib/elasticsearch/api/actions/cluster/reroute.rb +25 -37
  37. data/lib/elasticsearch/api/actions/cluster/state.rb +37 -41
  38. data/lib/elasticsearch/api/actions/cluster/stats.rb +20 -12
  39. data/lib/elasticsearch/api/actions/count.rb +52 -39
  40. data/lib/elasticsearch/api/actions/create.rb +25 -26
  41. data/lib/elasticsearch/api/actions/delete.rb +43 -36
  42. data/lib/elasticsearch/api/actions/delete_by_query.rb +74 -62
  43. data/lib/elasticsearch/api/actions/delete_by_query_rethrottle.rb +39 -0
  44. data/lib/elasticsearch/api/actions/delete_by_rethrottle.rb +4 -3
  45. data/lib/elasticsearch/api/actions/delete_script.rb +19 -13
  46. data/lib/elasticsearch/api/actions/exists.rb +44 -34
  47. data/lib/elasticsearch/api/actions/exists_source.rb +43 -25
  48. data/lib/elasticsearch/api/actions/explain.rb +46 -51
  49. data/lib/elasticsearch/api/actions/field_caps.rb +27 -20
  50. data/lib/elasticsearch/api/actions/get.rb +42 -41
  51. data/lib/elasticsearch/api/actions/get_script.rb +19 -14
  52. data/lib/elasticsearch/api/actions/get_source.rb +38 -44
  53. data/lib/elasticsearch/api/actions/index.rb +60 -89
  54. data/lib/elasticsearch/api/actions/indices/analyze.rb +19 -48
  55. data/lib/elasticsearch/api/actions/indices/clear_cache.rb +29 -41
  56. data/lib/elasticsearch/api/actions/indices/clone.rb +50 -0
  57. data/lib/elasticsearch/api/actions/indices/close.rb +28 -32
  58. data/lib/elasticsearch/api/actions/indices/create.rb +22 -70
  59. data/lib/elasticsearch/api/actions/indices/delete.rb +23 -35
  60. data/lib/elasticsearch/api/actions/indices/delete_alias.rb +24 -20
  61. data/lib/elasticsearch/api/actions/indices/delete_template.rb +18 -20
  62. data/lib/elasticsearch/api/actions/indices/exists.rb +32 -34
  63. data/lib/elasticsearch/api/actions/indices/exists_alias.rb +33 -29
  64. data/lib/elasticsearch/api/actions/indices/exists_template.rb +21 -16
  65. data/lib/elasticsearch/api/actions/indices/exists_type.rb +29 -29
  66. data/lib/elasticsearch/api/actions/indices/flush.rb +28 -28
  67. data/lib/elasticsearch/api/actions/indices/flush_synced.rb +23 -12
  68. data/lib/elasticsearch/api/actions/indices/forcemerge.rb +26 -41
  69. data/lib/elasticsearch/api/actions/indices/freeze.rb +7 -8
  70. data/lib/elasticsearch/api/actions/indices/get.rb +25 -19
  71. data/lib/elasticsearch/api/actions/indices/get_alias.rb +31 -23
  72. data/lib/elasticsearch/api/actions/indices/get_field_mapping.rb +42 -38
  73. data/lib/elasticsearch/api/actions/indices/get_mapping.rb +39 -31
  74. data/lib/elasticsearch/api/actions/indices/get_settings.rb +34 -37
  75. data/lib/elasticsearch/api/actions/indices/get_template.rb +21 -23
  76. data/lib/elasticsearch/api/actions/indices/get_upgrade.rb +48 -0
  77. data/lib/elasticsearch/api/actions/indices/open.rb +24 -21
  78. data/lib/elasticsearch/api/actions/indices/params_registry.rb +0 -1
  79. data/lib/elasticsearch/api/actions/indices/put_alias.rb +25 -27
  80. data/lib/elasticsearch/api/actions/indices/put_mapping.rb +40 -39
  81. data/lib/elasticsearch/api/actions/indices/put_settings.rb +30 -37
  82. data/lib/elasticsearch/api/actions/indices/put_template.rb +23 -23
  83. data/lib/elasticsearch/api/actions/indices/recovery.rb +20 -23
  84. data/lib/elasticsearch/api/actions/indices/refresh.rb +22 -26
  85. data/lib/elasticsearch/api/actions/indices/rollover.rb +28 -19
  86. data/lib/elasticsearch/api/actions/indices/segments.rb +24 -17
  87. data/lib/elasticsearch/api/actions/indices/shard_stores.rb +27 -15
  88. data/lib/elasticsearch/api/actions/indices/shrink.rb +23 -17
  89. data/lib/elasticsearch/api/actions/indices/split.rb +23 -17
  90. data/lib/elasticsearch/api/actions/indices/stats.rb +53 -104
  91. data/lib/elasticsearch/api/actions/indices/unfreeze.rb +7 -7
  92. data/lib/elasticsearch/api/actions/indices/update_aliases.rb +15 -32
  93. data/lib/elasticsearch/api/actions/indices/upgrade.rb +26 -16
  94. data/lib/elasticsearch/api/actions/indices/validate_query.rb +46 -59
  95. data/lib/elasticsearch/api/actions/info.rb +9 -6
  96. data/lib/elasticsearch/api/actions/ingest/delete_pipeline.rb +18 -12
  97. data/lib/elasticsearch/api/actions/ingest/get_pipeline.rb +21 -11
  98. data/lib/elasticsearch/api/actions/ingest/params_registry.rb +0 -1
  99. data/lib/elasticsearch/api/actions/ingest/processor_grok.rb +12 -13
  100. data/lib/elasticsearch/api/actions/ingest/put_pipeline.rb +19 -14
  101. data/lib/elasticsearch/api/actions/ingest/simulate.rb +23 -13
  102. data/lib/elasticsearch/api/actions/mget.rb +37 -44
  103. data/lib/elasticsearch/api/actions/msearch.rb +54 -54
  104. data/lib/elasticsearch/api/actions/msearch_template.rb +46 -35
  105. data/lib/elasticsearch/api/actions/mtermvectors.rb +39 -35
  106. data/lib/elasticsearch/api/actions/nodes/hot_threads.rb +30 -25
  107. data/lib/elasticsearch/api/actions/nodes/info.rb +29 -63
  108. data/lib/elasticsearch/api/actions/nodes/params_registry.rb +0 -1
  109. data/lib/elasticsearch/api/actions/nodes/reload_secure_settings.rb +24 -22
  110. data/lib/elasticsearch/api/actions/nodes/shutdown.rb +4 -4
  111. data/lib/elasticsearch/api/actions/nodes/stats.rb +43 -36
  112. data/lib/elasticsearch/api/actions/nodes/usage.rb +31 -10
  113. data/lib/elasticsearch/api/actions/params_registry.rb +0 -1
  114. data/lib/elasticsearch/api/actions/ping.rb +12 -13
  115. data/lib/elasticsearch/api/actions/put_script.rb +26 -30
  116. data/lib/elasticsearch/api/actions/rank_eval.rb +24 -15
  117. data/lib/elasticsearch/api/actions/reindex.rb +25 -48
  118. data/lib/elasticsearch/api/actions/reindex_rethrottle.rb +18 -12
  119. data/lib/elasticsearch/api/actions/remote/info.rb +1 -2
  120. data/lib/elasticsearch/api/actions/render_search_template.rb +17 -15
  121. data/lib/elasticsearch/api/actions/scripts_painless_execute.rb +8 -6
  122. data/lib/elasticsearch/api/actions/scroll.rb +28 -51
  123. data/lib/elasticsearch/api/actions/search.rb +104 -165
  124. data/lib/elasticsearch/api/actions/search_shards.rb +31 -28
  125. data/lib/elasticsearch/api/actions/search_template.rb +48 -40
  126. data/lib/elasticsearch/api/actions/snapshot/cleanup_repository.rb +44 -0
  127. data/lib/elasticsearch/api/actions/snapshot/create.rb +22 -29
  128. data/lib/elasticsearch/api/actions/snapshot/create_repository.rb +19 -24
  129. data/lib/elasticsearch/api/actions/snapshot/delete.rb +20 -22
  130. data/lib/elasticsearch/api/actions/snapshot/delete_repository.rb +16 -18
  131. data/lib/elasticsearch/api/actions/snapshot/get.rb +22 -31
  132. data/lib/elasticsearch/api/actions/snapshot/get_repository.rb +21 -25
  133. data/lib/elasticsearch/api/actions/snapshot/params_registry.rb +0 -1
  134. data/lib/elasticsearch/api/actions/snapshot/restore.rb +21 -32
  135. data/lib/elasticsearch/api/actions/snapshot/status.rb +23 -24
  136. data/lib/elasticsearch/api/actions/snapshot/verify_repository.rb +18 -13
  137. data/lib/elasticsearch/api/actions/tasks/cancel.rb +19 -13
  138. data/lib/elasticsearch/api/actions/tasks/get.rb +16 -13
  139. data/lib/elasticsearch/api/actions/tasks/list.rb +20 -18
  140. data/lib/elasticsearch/api/actions/tasks/params_registry.rb +0 -1
  141. data/lib/elasticsearch/api/actions/termvectors.rb +52 -70
  142. data/lib/elasticsearch/api/actions/update.rb +53 -98
  143. data/lib/elasticsearch/api/actions/update_by_query.rb +77 -66
  144. data/lib/elasticsearch/api/actions/update_by_query_rethrottle.rb +17 -11
  145. data/lib/elasticsearch/api/version.rb +1 -1
  146. data/spec/elasticsearch/api/actions/cat/segments_spec.rb +9 -11
  147. data/spec/elasticsearch/api/actions/cluster/put_settings_spec.rb +1 -1
  148. data/spec/elasticsearch/api/actions/count_spec.rb +8 -8
  149. data/spec/elasticsearch/api/actions/delete_by_query_spec.rb +12 -7
  150. data/spec/elasticsearch/api/actions/delete_script_spec.rb +0 -14
  151. data/spec/elasticsearch/api/actions/exists_document_spec.rb +1 -1
  152. data/spec/elasticsearch/api/actions/get_document_source_spec.rb +1 -1
  153. data/spec/elasticsearch/api/actions/index_document_spec.rb +6 -15
  154. data/spec/elasticsearch/api/actions/indices/analyze_spec.rb +0 -4
  155. data/spec/elasticsearch/api/actions/indices/clear_cache_spec.rb +1 -5
  156. data/spec/elasticsearch/api/actions/indices/clone_spec.rb +109 -0
  157. data/spec/elasticsearch/api/actions/indices/delete_alias_spec.rb +2 -2
  158. data/spec/elasticsearch/api/actions/indices/get_spec.rb +0 -11
  159. data/spec/elasticsearch/api/actions/indices/put_alias_spec.rb +3 -3
  160. data/spec/elasticsearch/api/actions/indices/put_mapping_spec.rb +3 -3
  161. data/spec/elasticsearch/api/actions/indices/stats_spec.rb +0 -1
  162. data/spec/elasticsearch/api/actions/nodes/hot_threads_spec.rb +3 -3
  163. data/spec/elasticsearch/api/actions/put_script_spec.rb +20 -15
  164. data/spec/elasticsearch/api/actions/render_search_template_spec.rb +23 -7
  165. data/spec/elasticsearch/api/actions/scroll_spec.rb +37 -0
  166. data/spec/elasticsearch/api/actions/search_spec.rb +0 -15
  167. data/spec/elasticsearch/api/actions/tasks/list_spec.rb +0 -11
  168. data/spec/elasticsearch/api/actions/update_document_spec.rb +3 -7
  169. data/spec/elasticsearch/api/rest_api_yaml_spec.rb +1 -1
  170. data/spec/rest_yaml_tests_helper.rb +12 -0
  171. data/utils/Gemfile +1 -0
  172. data/utils/Thorfile +0 -1
  173. data/utils/thor/generate_source.rb +192 -85
  174. data/utils/thor/generator/endpoint_specifics.rb +157 -0
  175. data/utils/thor/generator/files_helper.rb +37 -0
  176. data/utils/thor/lister.rb +3 -4
  177. data/utils/thor/templates/_documentation_top.erb +27 -0
  178. data/utils/thor/templates/_method_setup.erb +35 -0
  179. data/utils/thor/templates/_params_registry.erb +12 -0
  180. data/utils/thor/templates/_perform_request.erb +37 -0
  181. data/utils/thor/templates/method.erb +59 -0
  182. data/utils/thor/templates/{ruby/test.erb → test.erb} +0 -0
  183. data/utils/thor/templates/{ruby/test_helper.rb → test_helper.rb} +0 -0
  184. metadata +31 -14
  185. data/spec/elasticsearch/api/actions/scoll_spec.rb +0 -21
  186. data/utils/thor/generate_api.rb +0 -193
  187. data/utils/thor/templates/ruby/method.erb +0 -62
@@ -6,45 +6,51 @@ module Elasticsearch
6
6
  module API
7
7
  module Cat
8
8
  module Actions
9
-
10
- # Return currently running tasks
9
+ # Returns information about the tasks currently executing on one or more nodes in the cluster.
11
10
  #
12
11
  # @option arguments [String] :format a short version of the Accept header, e.g. json, yaml
13
12
  # @option arguments [List] :node_id A comma-separated list of node IDs or names to limit the returned information; use `_local` to return information from the node you're connecting to, leave empty to get information from all nodes
14
13
  # @option arguments [List] :actions A comma-separated list of actions that should be returned. Leave empty to return all.
15
14
  # @option arguments [Boolean] :detailed Return detailed task information (default: false)
16
- # @option arguments [String] :parent_node Return tasks with specified parent node.
17
15
  # @option arguments [Number] :parent_task Return tasks with specified parent task id. Set to -1 to return all.
18
16
  # @option arguments [List] :h Comma-separated list of column names to display
19
17
  # @option arguments [Boolean] :help Return help information
20
- # @option arguments [Boolean] :v Verbose mode. Display column headers
21
18
  # @option arguments [List] :s Comma-separated list of column names or column aliases to sort by
19
+ # @option arguments [String] :time The unit in which to display time values
20
+ # (options: d (Days),h (Hours),m (Minutes),s (Seconds),ms (Milliseconds),micros (Microseconds),nanos (Nanoseconds))
21
+
22
+ # @option arguments [Boolean] :v Verbose mode. Display column headers
23
+
22
24
  #
23
- # @see http://www.elastic.co/guide/en/elasticsearch/reference/master/tasks.html
25
+ # @see https://www.elastic.co/guide/en/elasticsearch/reference/7.5/tasks.html
24
26
  #
25
- def tasks(arguments={})
26
- method = 'GET'
27
+ def tasks(arguments = {})
28
+ arguments = arguments.clone
29
+
30
+ method = Elasticsearch::API::HTTP_GET
27
31
  path = "_cat/tasks"
28
32
  params = Utils.__validate_and_extract_params arguments, ParamsRegistry.get(__method__)
29
- body = nil
30
33
 
34
+ body = nil
31
35
  perform_request(method, path, params, body).body
32
36
  end
33
37
 
34
38
  # Register this action with its valid params when the module is loaded.
35
39
  #
36
- # @since 6.1.1
40
+ # @since 6.2.0
37
41
  ParamsRegistry.register(:tasks, [
38
- :format,
39
- :node_id,
40
- :actions,
41
- :detailed,
42
- :parent_task,
43
- :h,
44
- :help,
45
- :s,
46
- :v ].freeze)
42
+ :format,
43
+ :node_id,
44
+ :actions,
45
+ :detailed,
46
+ :parent_task,
47
+ :h,
48
+ :help,
49
+ :s,
50
+ :time,
51
+ :v
52
+ ].freeze)
53
+ end
47
54
  end
48
- end
49
55
  end
50
56
  end
@@ -6,8 +6,7 @@ module Elasticsearch
6
6
  module API
7
7
  module Cat
8
8
  module Actions
9
-
10
- # Returns information about existing templates
9
+ # Returns information about existing templates.
11
10
  #
12
11
  # @option arguments [String] :name A pattern that returned template names must match
13
12
  # @option arguments [String] :format a short version of the Accept header, e.g. json, yaml
@@ -15,33 +14,42 @@ module Elasticsearch
15
14
  # @option arguments [Time] :master_timeout Explicit operation timeout for connection to master node
16
15
  # @option arguments [List] :h Comma-separated list of column names to display
17
16
  # @option arguments [Boolean] :help Return help information
18
- # @option arguments [Boolean] :v Verbose mode. Display column headers
19
17
  # @option arguments [List] :s Comma-separated list of column names or column aliases to sort by
18
+ # @option arguments [Boolean] :v Verbose mode. Display column headers
19
+
20
20
  #
21
- # @see http://www.elastic.co/guide/en/elasticsearch/reference/master/cat-templates.html
21
+ # @see https://www.elastic.co/guide/en/elasticsearch/reference/7.5/cat-templates.html
22
22
  #
23
- def templates(arguments={})
24
- method = HTTP_GET
25
- path = "_cat/templates"
23
+ def templates(arguments = {})
24
+ arguments = arguments.clone
25
+
26
+ _name = arguments.delete(:name)
27
+
28
+ method = Elasticsearch::API::HTTP_GET
29
+ path = if _name
30
+ "_cat/templates/#{Utils.__listify(_name)}"
31
+ else
32
+ "_cat/templates"
33
+ end
26
34
  params = Utils.__validate_and_extract_params arguments, ParamsRegistry.get(__method__)
27
- body = nil
28
35
 
36
+ body = nil
29
37
  perform_request(method, path, params, body).body
30
38
  end
31
39
 
32
40
  # Register this action with its valid params when the module is loaded.
33
41
  #
34
- # @since 6.1.1
42
+ # @since 6.2.0
35
43
  ParamsRegistry.register(:templates, [
36
- :name,
37
- :format,
38
- :local,
39
- :master_timeout,
40
- :h,
41
- :help,
42
- :s,
43
- :v ].freeze)
44
+ :format,
45
+ :local,
46
+ :master_timeout,
47
+ :h,
48
+ :help,
49
+ :s,
50
+ :v
51
+ ].freeze)
52
+ end
44
53
  end
45
- end
46
54
  end
47
55
  end
@@ -6,66 +6,56 @@ module Elasticsearch
6
6
  module API
7
7
  module Cat
8
8
  module Actions
9
-
10
- # Display thread pool statistics across nodes (use the `help` parameter to display a list
11
- # of avaialable thread pools)
12
- #
13
- # @example Display information about all thread pools across nodes
14
- #
15
- # puts client.cat.thread_pool
16
- #
17
- # @example Display header names in the output
18
- #
19
- # puts client.cat.thread_pool v: true
20
- #
21
- # @example Display information about the indexing thread pool
22
- #
23
- # puts client.cat.thread_pool h: %w(h ip index.active index.size index.queue index.rejected), v: true
24
- #
25
- # @example Display information about the indexing and search threads, using the short names
26
- #
27
- # puts client.cat.thread_pool h: 'host,ia,is,iq,ir,sa,ss,sq,sr', v: true
9
+ # Returns cluster-wide thread pool statistics per node.
10
+ # By default the active, queue and rejected statistics are returned for all thread pools.
28
11
  #
29
- # @option arguments [Boolean] :full_id Display the complete node ID
12
+ # @option arguments [List] :thread_pool_patterns A comma-separated list of regular-expressions to filter the thread pools in the output
13
+ # @option arguments [String] :format a short version of the Accept header, e.g. json, yaml
30
14
  # @option arguments [String] :size The multiplier in which to display values
31
- # (Options: k, m, g, t, p)
32
- # @option arguments [List] :thread_pool_patterns A comma-separated list of regular expressions to filter
33
- # the thread pools in the output
34
- # @option arguments [List] :h Comma-separated list of column names to display -- see the `help` argument
35
- # @option arguments [Boolean] :v Display column headers as part of the output
36
- # @option arguments [List] :s Comma-separated list of column names or column aliases to sort by
37
- # @option arguments [String] :format The output format. Options: 'text', 'json'; default: 'text'
38
- # @option arguments [Boolean] :help Return information about headers
39
- # @option arguments [Boolean] :local Return local information, do not retrieve the state from master node
40
- # (default: false)
15
+ # (options: ,k,m,g,t,p)
16
+
17
+ # @option arguments [Boolean] :local Return local information, do not retrieve the state from master node (default: false)
41
18
  # @option arguments [Time] :master_timeout Explicit operation timeout for connection to master node
19
+ # @option arguments [List] :h Comma-separated list of column names to display
20
+ # @option arguments [Boolean] :help Return help information
21
+ # @option arguments [List] :s Comma-separated list of column names or column aliases to sort by
22
+ # @option arguments [Boolean] :v Verbose mode. Display column headers
23
+
42
24
  #
43
- # @see https://www.elastic.co/guide/en/elasticsearch/reference/master/cat-thread-pool.html
25
+ # @see https://www.elastic.co/guide/en/elasticsearch/reference/7.5/cat-thread-pool.html
44
26
  #
45
- def thread_pool(arguments={})
46
- method = HTTP_GET
47
- path = "_cat/thread_pool"
27
+ def thread_pool(arguments = {})
28
+ arguments = arguments.clone
29
+
30
+ _thread_pool_patterns = arguments.delete(:thread_pool_patterns)
31
+
32
+ method = Elasticsearch::API::HTTP_GET
33
+ path = if _thread_pool_patterns
34
+ "_cat/thread_pool/#{Utils.__listify(_thread_pool_patterns)}"
35
+ else
36
+ "_cat/thread_pool"
37
+ end
48
38
  params = Utils.__validate_and_extract_params arguments, ParamsRegistry.get(__method__)
49
39
  params[:h] = Utils.__listify(params[:h]) if params[:h]
50
- body = nil
51
40
 
41
+ body = nil
52
42
  perform_request(method, path, params, body).body
53
43
  end
54
44
 
55
45
  # Register this action with its valid params when the module is loaded.
56
46
  #
57
- # @since 6.1.1
47
+ # @since 6.2.0
58
48
  ParamsRegistry.register(:thread_pool, [
59
- :format,
60
- :size,
61
- :local,
62
- :master_timeout,
63
- :h,
64
- :help,
65
- :s,
66
- :v,
67
- :thread_pool_patterns].freeze)
49
+ :format,
50
+ :size,
51
+ :local,
52
+ :master_timeout,
53
+ :h,
54
+ :help,
55
+ :s,
56
+ :v
57
+ ].freeze)
58
+ end
68
59
  end
69
- end
70
60
  end
71
61
  end
@@ -5,22 +5,35 @@
5
5
  module Elasticsearch
6
6
  module API
7
7
  module Actions
8
-
9
- # Abort a particular scroll search and clear all the resources associated with it.
8
+ # Explicitly clears the search context for a scroll.
10
9
  #
11
- # @option arguments [List] :scroll_id A comma-separated list of scroll IDs to clear
10
+ # @option arguments [List] :scroll_id A comma-separated list of scroll IDs to clear *Deprecated*
11
+
12
12
  # @option arguments [Hash] :body A comma-separated list of scroll IDs to clear if none was specified via the scroll_id parameter
13
13
  #
14
- # @see http://www.elastic.co/guide/en/elasticsearch/reference/master/search-request-scroll.html
14
+ # *Deprecation notice*:
15
+ # A scroll id can be quite large and should be specified as part of the body
16
+ # Deprecated since version 7.0.0
17
+ #
18
+ #
19
+ # @see https://www.elastic.co/guide/en/elasticsearch/reference/7.5/search-request-body.html#_clear_scroll_api
15
20
  #
16
- def clear_scroll(arguments={})
21
+ def clear_scroll(arguments = {})
22
+ arguments = arguments.clone
23
+
24
+ _scroll_id = arguments.delete(:scroll_id)
25
+
17
26
  method = Elasticsearch::API::HTTP_DELETE
18
- path = Utils.__pathify '_search/scroll', Utils.__listify(arguments.delete(:scroll_id))
27
+ path = if _scroll_id
28
+ "_search/scroll/#{Utils.__listify(_scroll_id)}"
29
+ else
30
+ "_search/scroll"
31
+ end
19
32
  params = {}
20
- body = arguments[:body]
21
33
 
34
+ body = arguments[:body]
22
35
  perform_request(method, path, params, body).body
23
36
  end
24
37
  end
25
- end
38
+ end
26
39
  end
@@ -6,32 +6,34 @@ module Elasticsearch
6
6
  module API
7
7
  module Cluster
8
8
  module Actions
9
-
10
- # Return the information about why a shard is or isn't allocated
9
+ # Provides explanations for shard allocations in the cluster.
11
10
  #
12
- # @option arguments [Hash] :body The index, shard, and primary flag to explain. Empty means 'explain the first unassigned shard'
13
11
  # @option arguments [Boolean] :include_yes_decisions Return 'YES' decisions in explanation (default: false)
14
- # @option arguments [Boolean] :include_disk_info Return information about disk usage and shard sizes
15
- # (default: false)
12
+ # @option arguments [Boolean] :include_disk_info Return information about disk usage and shard sizes (default: false)
13
+
14
+ # @option arguments [Hash] :body The index, shard, and primary flag to explain. Empty means 'explain the first unassigned shard'
16
15
  #
17
- # @see http://www.elastic.co/guide/en/elasticsearch/reference/master/cluster-allocation-explain.html
16
+ # @see https://www.elastic.co/guide/en/elasticsearch/reference/7.5/cluster-allocation-explain.html
18
17
  #
19
- def allocation_explain(arguments={})
20
- method = 'GET'
18
+ def allocation_explain(arguments = {})
19
+ arguments = arguments.clone
20
+
21
+ method = Elasticsearch::API::HTTP_GET
21
22
  path = "_cluster/allocation/explain"
22
23
  params = Utils.__validate_and_extract_params arguments, ParamsRegistry.get(__method__)
23
- body = arguments[:body]
24
24
 
25
+ body = arguments[:body]
25
26
  perform_request(method, path, params, body).body
26
27
  end
27
28
 
28
29
  # Register this action with its valid params when the module is loaded.
29
30
  #
30
- # @since 6.1.1
31
+ # @since 6.2.0
31
32
  ParamsRegistry.register(:allocation_explain, [
32
- :include_yes_decisions,
33
- :include_disk_info ].freeze)
33
+ :include_yes_decisions,
34
+ :include_disk_info
35
+ ].freeze)
36
+ end
34
37
  end
35
- end
36
38
  end
37
39
  end
@@ -6,37 +6,37 @@ module Elasticsearch
6
6
  module API
7
7
  module Cluster
8
8
  module Actions
9
-
10
- # Get the cluster settings (previously set with {Cluster::Actions#put_settings})
11
- #
12
- # @example Get cluster settings
13
- #
14
- # client.cluster.get_settings
9
+ # Returns cluster settings.
15
10
  #
16
11
  # @option arguments [Boolean] :flat_settings Return settings in flat format (default: false)
17
- # @option arguments [Boolean] :include_defaults Whether to return all default clusters setting
18
- # (default: false)
12
+ # @option arguments [Time] :master_timeout Explicit operation timeout for connection to master node
13
+ # @option arguments [Time] :timeout Explicit operation timeout
14
+ # @option arguments [Boolean] :include_defaults Whether to return all default clusters setting.
15
+
19
16
  #
20
- # @see http://elasticsearch.org/guide/reference/api/admin-cluster-update-settings/
17
+ # @see https://www.elastic.co/guide/en/elasticsearch/reference/7.5/cluster-update-settings.html
21
18
  #
22
- def get_settings(arguments={})
23
- method = HTTP_GET
19
+ def get_settings(arguments = {})
20
+ arguments = arguments.clone
21
+
22
+ method = Elasticsearch::API::HTTP_GET
24
23
  path = "_cluster/settings"
25
24
  params = Utils.__validate_and_extract_params arguments, ParamsRegistry.get(__method__)
26
- body = nil
27
25
 
26
+ body = nil
28
27
  perform_request(method, path, params, body).body
29
28
  end
30
29
 
31
30
  # Register this action with its valid params when the module is loaded.
32
31
  #
33
- # @since 6.1.1
32
+ # @since 6.2.0
34
33
  ParamsRegistry.register(:get_settings, [
35
- :flat_settings,
36
- :master_timeout,
37
- :timeout,
38
- :include_defaults ].freeze)
34
+ :flat_settings,
35
+ :master_timeout,
36
+ :timeout,
37
+ :include_defaults
38
+ ].freeze)
39
+ end
39
40
  end
40
- end
41
41
  end
42
42
  end
@@ -6,67 +6,65 @@ module Elasticsearch
6
6
  module API
7
7
  module Cluster
8
8
  module Actions
9
-
10
- # Returns information about cluster "health".
11
- #
12
- # @example Get the cluster health information
13
- #
14
- # client.cluster.health
15
- #
16
- # @example Block the request until the cluster is in the "yellow" state
9
+ # Returns basic information about the health of the cluster.
17
10
  #
18
- # client.cluster.health wait_for_status: 'yellow'
19
- #
20
- # @option arguments [String] :index Limit the information returned to a specific index
11
+ # @option arguments [List] :index Limit the information returned to a specific index
12
+ # @option arguments [String] :expand_wildcards Whether to expand wildcard expression to concrete indices that are open, closed or both.
13
+ # (options: open,closed,none,all)
14
+
21
15
  # @option arguments [String] :level Specify the level of detail for returned information
22
- # (options: cluster, indices, shards)
23
- # @option arguments [Boolean] :local Return local information, do not retrieve the state from master node
24
- # (default: false)
16
+ # (options: cluster,indices,shards)
17
+
18
+ # @option arguments [Boolean] :local Return local information, do not retrieve the state from master node (default: false)
25
19
  # @option arguments [Time] :master_timeout Explicit operation timeout for connection to master node
26
20
  # @option arguments [Time] :timeout Explicit operation timeout
27
- # @option arguments [Number] :wait_for_active_shards Wait until the specified number of shards is active
28
- # @option arguments [Number] :wait_for_nodes Wait until the specified number of nodes is available
29
- # @option arguments [Number] :wait_for_relocating_shards Wait until the specified number of relocating
30
- # shards is finished
31
- # @option arguments [Boolean] :wait_for_no_relocating_shards Whether to wait until there are no relocating
32
- # shards in the cluster
33
- # @option arguments [Boolean] :wait_for_no_initializing_shards Whether to wait until there are no
34
- # initializing shards in the cluster
21
+ # @option arguments [String] :wait_for_active_shards Wait until the specified number of shards is active
22
+ # @option arguments [String] :wait_for_nodes Wait until the specified number of nodes is available
23
+ # @option arguments [String] :wait_for_events Wait until all currently queued events with the given priority are processed
24
+ # (options: immediate,urgent,high,normal,low,languid)
25
+
26
+ # @option arguments [Boolean] :wait_for_no_relocating_shards Whether to wait until there are no relocating shards in the cluster
27
+ # @option arguments [Boolean] :wait_for_no_initializing_shards Whether to wait until there are no initializing shards in the cluster
35
28
  # @option arguments [String] :wait_for_status Wait until cluster is in a specific state
36
- # (options: green, yellow, red)
37
- # @option arguments [List] :wait_for_events Wait until all currently queued events with the given priorty
38
- # are processed (immediate, urgent, high, normal, low, languid)
29
+ # (options: green,yellow,red)
30
+
39
31
  #
40
- # @see http://elasticsearch.org/guide/reference/api/admin-cluster-health/
32
+ # @see https://www.elastic.co/guide/en/elasticsearch/reference/7.5/cluster-health.html
41
33
  #
42
- def health(arguments={})
34
+ def health(arguments = {})
43
35
  arguments = arguments.clone
44
- index = arguments.delete(:index)
45
- method = HTTP_GET
46
- path = Utils.__pathify "_cluster/health", Utils.__listify(index)
47
36
 
37
+ _index = arguments.delete(:index)
38
+
39
+ method = Elasticsearch::API::HTTP_GET
40
+ path = if _index
41
+ "_cluster/health/#{Utils.__listify(_index)}"
42
+ else
43
+ "_cluster/health"
44
+ end
48
45
  params = Utils.__validate_and_extract_params arguments, ParamsRegistry.get(__method__)
49
- body = nil
50
46
 
47
+ body = nil
51
48
  perform_request(method, path, params, body).body
52
49
  end
53
50
 
54
51
  # Register this action with its valid params when the module is loaded.
55
52
  #
56
- # @since 6.1.1
53
+ # @since 6.2.0
57
54
  ParamsRegistry.register(:health, [
58
- :expand_wildcards,
59
- :level,
60
- :local,
61
- :master_timeout,
62
- :timeout,
63
- :wait_for_active_shards,
64
- :wait_for_nodes,
65
- :wait_for_events,
66
- :wait_for_no_relocating_shards,
67
- :wait_for_no_initializing_shards,
68
- :wait_for_status ].freeze)
55
+ :expand_wildcards,
56
+ :level,
57
+ :local,
58
+ :master_timeout,
59
+ :timeout,
60
+ :wait_for_active_shards,
61
+ :wait_for_nodes,
62
+ :wait_for_events,
63
+ :wait_for_no_relocating_shards,
64
+ :wait_for_no_initializing_shards,
65
+ :wait_for_status
66
+ ].freeze)
67
+ end
69
68
  end
70
- end
71
69
  end
72
70
  end
@@ -7,7 +7,6 @@ module Elasticsearch
7
7
  module Cluster
8
8
  module Actions
9
9
  module ParamsRegistry
10
-
11
10
  extend self
12
11
 
13
12
  # A Mapping of all the actions to their list of valid params.
@@ -6,36 +6,34 @@ module Elasticsearch
6
6
  module API
7
7
  module Cluster
8
8
  module Actions
9
-
10
- # Returns a list of any cluster-level changes (e.g. create index, update mapping, allocate or fail shard)
11
- # which have not yet been executed and are queued up.
12
- #
13
- # @example Get a list of currently queued up tasks in the cluster
14
- #
15
- # client.cluster.pending_tasks
9
+ # Returns a list of any cluster-level changes (e.g. create index, update mapping,
10
+ # allocate or fail shard) which have not yet been executed.
16
11
  #
17
- # @option arguments [Boolean] :local Return local information, do not retrieve the state from master node
18
- # (default: false)
12
+ # @option arguments [Boolean] :local Return local information, do not retrieve the state from master node (default: false)
19
13
  # @option arguments [Time] :master_timeout Specify timeout for connection to master
14
+
20
15
  #
21
- # @see https://www.elastic.co/guide/en/elasticsearch/reference/master/cluster-pending.html
16
+ # @see https://www.elastic.co/guide/en/elasticsearch/reference/7.5/cluster-pending.html
22
17
  #
23
- def pending_tasks(arguments={})
24
- method = HTTP_GET
18
+ def pending_tasks(arguments = {})
19
+ arguments = arguments.clone
20
+
21
+ method = Elasticsearch::API::HTTP_GET
25
22
  path = "_cluster/pending_tasks"
26
23
  params = Utils.__validate_and_extract_params arguments, ParamsRegistry.get(__method__)
27
- body = nil
28
24
 
25
+ body = nil
29
26
  perform_request(method, path, params, body).body
30
27
  end
31
28
 
32
29
  # Register this action with its valid params when the module is loaded.
33
30
  #
34
- # @since 6.1.1
31
+ # @since 6.2.0
35
32
  ParamsRegistry.register(:pending_tasks, [
36
- :local,
37
- :master_timeout ].freeze)
33
+ :local,
34
+ :master_timeout
35
+ ].freeze)
36
+ end
38
37
  end
39
- end
40
38
  end
41
39
  end
@@ -6,35 +6,38 @@ module Elasticsearch
6
6
  module API
7
7
  module Cluster
8
8
  module Actions
9
-
10
- # Update cluster settings.
11
- #
12
- # @example Disable shard allocation in the cluster until restart
9
+ # Updates the cluster settings.
13
10
  #
14
- # client.cluster.put_settings body: { transient: { 'cluster.routing.allocation.disable_allocation' => true } }
15
- #
16
- # @option arguments [Hash] :body The settings to be updated. Can be either `transient` or `persistent`
17
- # (survives cluster restart).
11
+ # @option arguments [Boolean] :flat_settings Return settings in flat format (default: false)
12
+ # @option arguments [Time] :master_timeout Explicit operation timeout for connection to master node
13
+ # @option arguments [Time] :timeout Explicit operation timeout
14
+
15
+ # @option arguments [Hash] :body The settings to be updated. Can be either `transient` or `persistent` (survives cluster restart). (*Required*)
18
16
  #
19
- # @see http://elasticsearch.org/guide/reference/api/admin-cluster-update-settings/
17
+ # @see https://www.elastic.co/guide/en/elasticsearch/reference/7.5/cluster-update-settings.html
20
18
  #
21
- def put_settings(arguments={})
22
- method = HTTP_PUT
19
+ def put_settings(arguments = {})
20
+ raise ArgumentError, "Required argument 'body' missing" unless arguments[:body]
21
+
22
+ arguments = arguments.clone
23
+
24
+ method = Elasticsearch::API::HTTP_PUT
23
25
  path = "_cluster/settings"
24
26
  params = Utils.__validate_and_extract_params arguments, ParamsRegistry.get(__method__)
25
- body = arguments[:body] || {}
26
27
 
28
+ body = arguments[:body] || {}
27
29
  perform_request(method, path, params, body).body
28
30
  end
29
31
 
30
32
  # Register this action with its valid params when the module is loaded.
31
33
  #
32
- # @since 6.1.1
34
+ # @since 6.2.0
33
35
  ParamsRegistry.register(:put_settings, [
34
- :flat_settings,
35
- :master_timeout,
36
- :timeout ].freeze)
36
+ :flat_settings,
37
+ :master_timeout,
38
+ :timeout
39
+ ].freeze)
40
+ end
37
41
  end
38
- end
39
42
  end
40
43
  end
@@ -6,21 +6,23 @@ module Elasticsearch
6
6
  module API
7
7
  module Cluster
8
8
  module Actions
9
-
10
- # Returns the configured remote cluster information
9
+ # Returns the information about configured remote clusters.
11
10
  #
11
+
12
12
  #
13
- # @see http://www.elastic.co/guide/en/elasticsearch/reference/master/cluster-remote-info.html
13
+ # @see https://www.elastic.co/guide/en/elasticsearch/reference/7.5/cluster-remote-info.html
14
14
  #
15
- def remote_info(arguments={})
15
+ def remote_info(arguments = {})
16
+ arguments = arguments.clone
17
+
16
18
  method = Elasticsearch::API::HTTP_GET
17
19
  path = "_remote/info"
18
20
  params = {}
19
- body = nil
20
21
 
22
+ body = nil
21
23
  perform_request(method, path, params, body).body
22
24
  end
25
+ end
23
26
  end
24
- end
25
27
  end
26
28
  end