lib/elasticsearch/api/actions/bulk.rb in elasticsearch-api-2.0.2 vs lib/elasticsearch/api/actions/bulk.rb in elasticsearch-api-5.0.0.pre
- old
+ new
@@ -43,41 +43,43 @@
# params: { value: 42 }, upsert: { counter: 0 } }
# }}
#
# ]
#
- # @option arguments [String] :index Default index for items which don't provide one
- # @option arguments [String] :type Default document type for items which don't provide one
- # @option arguments [Array<Hash>] :body An array of operations to perform, each operation is a Hash
- # @option arguments [String] :consistency Explicit write consistency setting for the operation
- # (options: one, quorum, all)
- # @option arguments [Boolean] :refresh Refresh the index after performing the operation
- # @option arguments [String] :replication Explicitly set the replication type (options: sync, async)
- # @option arguments [Time] :timeout Explicit operation timeout
- # @option arguments [String] :fields Default comma-separated list of fields to return
- # in the response for updates
- # @options arguments [String] :pipeline The pipeline ID to use for preprocessing incoming documents
+ # @option arguments [String] :index Default index for items which don't provide one
+ # @option arguments [String] :type Default document type for items which don't provide one
+ # @option arguments [Hash] :body The operation definition and data (action-data pairs), separated by newlines (*Required*)
+ # @option arguments [String] :wait_for_active_shards Sets the number of shard copies that must be active before proceeding with the bulk operation. Defaults to 1, meaning the primary shard only. Set to `all` for all shard copies, otherwise set to any non-negative value less than or equal to the total number of copies for the shard (number of replicas + 1)
+ # @option arguments [String] :refresh If `true` then refresh the effected shards to make this operation visible to search, if `wait_for` then wait for a refresh to make this operation visible to search, if `false` (the default) then do nothing with refreshes. (options: true, false, wait_for)
+ # @option arguments [String] :routing Specific routing value
+ # @option arguments [Time] :timeout Explicit operation timeout
+ # @option arguments [String] :type Default document type for items which don't provide one
+ # @option arguments [List] :fields Default comma-separated list of fields to return in the response for updates, can be overridden on each sub-request
+ # @option arguments [List] :_source True or false to return the _source field or not, or default list of fields to return, can be overridden on each sub-request
+ # @option arguments [List] :_source_exclude Default list of fields to exclude from the returned _source field, can be overridden on each sub-request
+ # @option arguments [List] :_source_include Default list of fields to extract and return from the _source field, can be overridden on each sub-request
+ # @option arguments [String] :pipeline The pipeline ID to preprocess incoming documents with
#
# @return [Hash] Deserialized Elasticsearch response
#
- # @see http://elasticsearch.org/guide/reference/api/bulk/
+ # @see https://www.elastic.co/guide/en/elasticsearch/reference/current/docs-bulk.html
#
def bulk(arguments={})
arguments = arguments.clone
type = arguments.delete(:type)
valid_params = [
- :consistency,
+ :wait_for_active_shards,
:refresh,
- :replication,
- :type,
+ :routing,
:timeout,
+ :type,
:fields,
+ :_source,
+ :_source_exclude,
+ :_source_include,
:pipeline ]
-
- unsupported_params = [ :fields, :pipeline ]
- Utils.__report_unsupported_parameters(arguments, unsupported_params)
method = HTTP_POST
path = Utils.__pathify Utils.__escape(arguments[:index]), Utils.__escape(type), '_bulk'
params = Utils.__validate_and_extract_params arguments, valid_params