Package org.elasticsearch.action.bulk
Class BulkRequest
- java.lang.Object
-
- org.elasticsearch.transport.TransportMessage
-
- org.elasticsearch.transport.TransportRequest
-
- org.elasticsearch.action.ActionRequest
-
- org.elasticsearch.action.bulk.BulkRequest
-
- All Implemented Interfaces:
CompositeIndicesRequest
,WriteRequest<BulkRequest>
,Streamable
,Writeable
,TaskAwareRequest
public class BulkRequest extends ActionRequest implements CompositeIndicesRequest, WriteRequest<BulkRequest>
A bulk request holds an orderedIndexRequest
s,DeleteRequest
s andUpdateRequest
s and allows to executes it in a single batch. Note that we only support refresh on the bulk request not per item.- See Also:
Client.bulk(BulkRequest)
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from class org.elasticsearch.transport.TransportRequest
TransportRequest.Empty
-
Nested classes/interfaces inherited from interface org.elasticsearch.common.io.stream.Writeable
Writeable.Reader<V>, Writeable.Writer<V>
-
Nested classes/interfaces inherited from interface org.elasticsearch.action.support.WriteRequest
WriteRequest.RefreshPolicy
-
-
Constructor Summary
Constructors Constructor Description BulkRequest()
BulkRequest(java.lang.String globalIndex, java.lang.String globalType)
-
Method Summary
Modifier and Type Method Description BulkRequest
add(byte[] data, int from, int length, java.lang.String defaultIndex, java.lang.String defaultType, XContentType xContentType)
Adds a framed data in binary formatBulkRequest
add(byte[] data, int from, int length, XContentType xContentType)
Adds a framed data in binary formatBulkRequest
add(java.lang.Iterable<DocWriteRequest<?>> requests)
Adds a list of requests to be executed.BulkRequest
add(DeleteRequest request)
Adds anDeleteRequest
to the list of actions to execute.BulkRequest
add(DeleteRequest request, java.lang.Object payload)
BulkRequest
add(DocWriteRequest<?> request)
BulkRequest
add(DocWriteRequest<?>... requests)
Adds a list of requests to be executed.BulkRequest
add(DocWriteRequest<?> request, java.lang.Object payload)
Add a request to the current BulkRequest.BulkRequest
add(IndexRequest request)
Adds anIndexRequest
to the list of actions to execute.BulkRequest
add(IndexRequest request, java.lang.Object payload)
BulkRequest
add(UpdateRequest request)
Adds anUpdateRequest
to the list of actions to execute.BulkRequest
add(UpdateRequest request, java.lang.Object payload)
BulkRequest
add(BytesReference data, java.lang.String defaultIndex, java.lang.String defaultType, boolean allowExplicitIndex, XContentType xContentType)
Adds a framed data in binary formatBulkRequest
add(BytesReference data, java.lang.String defaultIndex, java.lang.String defaultType, java.lang.String defaultRouting, java.lang.String[] defaultFields, FetchSourceContext defaultFetchSourceContext, java.lang.String defaultPipeline, java.lang.Object payload, boolean allowExplicitIndex, XContentType xContentType)
BulkRequest
add(BytesReference data, java.lang.String defaultIndex, java.lang.String defaultType, XContentType xContentType)
Adds a framed data in binary formatlong
estimatedSizeInBytes()
The estimated size in bytes of the bulk request.java.lang.String
getDescription()
Returns optional description of the request to be displayed by the task managerWriteRequest.RefreshPolicy
getRefreshPolicy()
Should this request trigger a refresh (WriteRequest.RefreshPolicy.IMMEDIATE), wait for a refresh ( WriteRequest.RefreshPolicy.WAIT_UNTIL), or proceed ignore refreshes entirely (WriteRequest.RefreshPolicy.NONE, the default).int
numberOfActions()
The number of actions in the bulk request.java.util.List<java.lang.Object>
payloads()
The list of optional payloads associated with requests in the same order as the requests.java.lang.String
pipeline()
BulkRequest
pipeline(java.lang.String globalPipeline)
void
readFrom(StreamInput in)
Set this object's fields from a StreamInput.java.util.List<DocWriteRequest<?>>
requests()
The list of requests in this bulk request.java.lang.String
routing()
BulkRequest
routing(java.lang.String globalRouting)
BulkRequest
setRefreshPolicy(WriteRequest.RefreshPolicy refreshPolicy)
Should this request trigger a refresh (WriteRequest.RefreshPolicy.IMMEDIATE), wait for a refresh ( WriteRequest.RefreshPolicy.WAIT_UNTIL), or proceed ignore refreshes entirely (WriteRequest.RefreshPolicy.NONE, the default).TimeValue
timeout()
BulkRequest
timeout(java.lang.String timeout)
A timeout to wait if the index operation can't be performed immediately.BulkRequest
timeout(TimeValue timeout)
A timeout to wait if the index operation can't be performed immediately.ActionRequestValidationException
validate()
ActiveShardCount
waitForActiveShards()
BulkRequest
waitForActiveShards(int waitForActiveShards)
A shortcut forwaitForActiveShards(ActiveShardCount)
where the numerical shard count is passed in, instead of having to first callActiveShardCount.from(int)
to get the ActiveShardCount.BulkRequest
waitForActiveShards(ActiveShardCount waitForActiveShards)
Sets the number of shard copies that must be active before proceeding with the write.void
writeTo(StreamOutput out)
Write this object's fields to a StreamOutput.-
Methods inherited from class org.elasticsearch.action.ActionRequest
getShouldStoreResult
-
Methods inherited from class org.elasticsearch.transport.TransportRequest
getParentTask, setParentTask
-
Methods inherited from class org.elasticsearch.transport.TransportMessage
remoteAddress, remoteAddress
-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Methods inherited from interface org.elasticsearch.tasks.TaskAwareRequest
createTask, setParentTask
-
Methods inherited from interface org.elasticsearch.action.support.WriteRequest
setRefreshPolicy
-
-
-
-
Field Detail
-
timeout
protected TimeValue timeout
-
-
Method Detail
-
add
public BulkRequest add(DocWriteRequest<?>... requests)
Adds a list of requests to be executed. Either index or delete requests.
-
add
public BulkRequest add(DocWriteRequest<?> request)
-
add
public BulkRequest add(DocWriteRequest<?> request, @Nullable java.lang.Object payload)
Add a request to the current BulkRequest.- Parameters:
request
- Request to addpayload
- Optional payload- Returns:
- the current bulk request
-
add
public BulkRequest add(java.lang.Iterable<DocWriteRequest<?>> requests)
Adds a list of requests to be executed. Either index or delete requests.
-
add
public BulkRequest add(IndexRequest request)
Adds anIndexRequest
to the list of actions to execute. Follows the same behavior ofIndexRequest
(for example, if no id is provided, one will be generated, or usage of the create flag).
-
add
public BulkRequest add(IndexRequest request, @Nullable java.lang.Object payload)
-
add
public BulkRequest add(UpdateRequest request)
Adds anUpdateRequest
to the list of actions to execute.
-
add
public BulkRequest add(UpdateRequest request, @Nullable java.lang.Object payload)
-
add
public BulkRequest add(DeleteRequest request)
Adds anDeleteRequest
to the list of actions to execute.
-
add
public BulkRequest add(DeleteRequest request, @Nullable java.lang.Object payload)
-
requests
public java.util.List<DocWriteRequest<?>> requests()
The list of requests in this bulk request.
-
payloads
@Nullable public java.util.List<java.lang.Object> payloads()
The list of optional payloads associated with requests in the same order as the requests. Note, elements within it might be null if no payload has been provided.Note, if no payloads have been provided, this method will return null (as to conserve memory overhead).
-
numberOfActions
public int numberOfActions()
The number of actions in the bulk request.
-
estimatedSizeInBytes
public long estimatedSizeInBytes()
The estimated size in bytes of the bulk request.
-
add
public BulkRequest add(byte[] data, int from, int length, XContentType xContentType) throws java.io.IOException
Adds a framed data in binary format- Throws:
java.io.IOException
-
add
public BulkRequest add(byte[] data, int from, int length, @Nullable java.lang.String defaultIndex, @Nullable java.lang.String defaultType, XContentType xContentType) throws java.io.IOException
Adds a framed data in binary format- Throws:
java.io.IOException
-
add
public BulkRequest add(BytesReference data, @Nullable java.lang.String defaultIndex, @Nullable java.lang.String defaultType, XContentType xContentType) throws java.io.IOException
Adds a framed data in binary format- Throws:
java.io.IOException
-
add
public BulkRequest add(BytesReference data, @Nullable java.lang.String defaultIndex, @Nullable java.lang.String defaultType, boolean allowExplicitIndex, XContentType xContentType) throws java.io.IOException
Adds a framed data in binary format- Throws:
java.io.IOException
-
add
public BulkRequest add(BytesReference data, @Nullable java.lang.String defaultIndex, @Nullable java.lang.String defaultType, @Nullable java.lang.String defaultRouting, @Nullable java.lang.String[] defaultFields, @Nullable FetchSourceContext defaultFetchSourceContext, @Nullable java.lang.String defaultPipeline, @Nullable java.lang.Object payload, boolean allowExplicitIndex, XContentType xContentType) throws java.io.IOException
- Throws:
java.io.IOException
-
waitForActiveShards
public BulkRequest waitForActiveShards(ActiveShardCount waitForActiveShards)
Sets the number of shard copies that must be active before proceeding with the write. SeeReplicationRequest.waitForActiveShards(ActiveShardCount)
for details.
-
waitForActiveShards
public BulkRequest waitForActiveShards(int waitForActiveShards)
A shortcut forwaitForActiveShards(ActiveShardCount)
where the numerical shard count is passed in, instead of having to first callActiveShardCount.from(int)
to get the ActiveShardCount.
-
waitForActiveShards
public ActiveShardCount waitForActiveShards()
-
setRefreshPolicy
public BulkRequest setRefreshPolicy(WriteRequest.RefreshPolicy refreshPolicy)
Description copied from interface:WriteRequest
Should this request trigger a refresh (WriteRequest.RefreshPolicy.IMMEDIATE), wait for a refresh ( WriteRequest.RefreshPolicy.WAIT_UNTIL), or proceed ignore refreshes entirely (WriteRequest.RefreshPolicy.NONE, the default).- Specified by:
setRefreshPolicy
in interfaceWriteRequest<BulkRequest>
-
getRefreshPolicy
public WriteRequest.RefreshPolicy getRefreshPolicy()
Description copied from interface:WriteRequest
Should this request trigger a refresh (WriteRequest.RefreshPolicy.IMMEDIATE), wait for a refresh ( WriteRequest.RefreshPolicy.WAIT_UNTIL), or proceed ignore refreshes entirely (WriteRequest.RefreshPolicy.NONE, the default).- Specified by:
getRefreshPolicy
in interfaceWriteRequest<BulkRequest>
-
timeout
public final BulkRequest timeout(TimeValue timeout)
A timeout to wait if the index operation can't be performed immediately. Defaults to1m
.
-
pipeline
public final BulkRequest pipeline(java.lang.String globalPipeline)
-
routing
public final BulkRequest routing(java.lang.String globalRouting)
-
timeout
public final BulkRequest timeout(java.lang.String timeout)
A timeout to wait if the index operation can't be performed immediately. Defaults to1m
.
-
timeout
public TimeValue timeout()
-
pipeline
public java.lang.String pipeline()
-
routing
public java.lang.String routing()
-
validate
public ActionRequestValidationException validate()
- Specified by:
validate
in interfaceWriteRequest<BulkRequest>
- Specified by:
validate
in classActionRequest
-
readFrom
public void readFrom(StreamInput in) throws java.io.IOException
Description copied from interface:Streamable
Set this object's fields from a StreamInput.- Specified by:
readFrom
in interfaceStreamable
- Overrides:
readFrom
in classActionRequest
- Throws:
java.io.IOException
-
writeTo
public void writeTo(StreamOutput out) throws java.io.IOException
Description copied from interface:Streamable
Write this object's fields to a StreamOutput.- Specified by:
writeTo
in interfaceStreamable
- Specified by:
writeTo
in interfaceWriteable
- Overrides:
writeTo
in classActionRequest
- Throws:
java.io.IOException
-
getDescription
public java.lang.String getDescription()
Description copied from interface:TaskAwareRequest
Returns optional description of the request to be displayed by the task manager- Specified by:
getDescription
in interfaceTaskAwareRequest
-
-