Class UpdateStream
java.lang.Object
org.apache.solr.client.solrj.io.stream.TupleStream
org.apache.solr.client.solrj.io.stream.UpdateStream
- All Implemented Interfaces:
Closeable,Serializable,AutoCloseable,Expressible,org.apache.solr.common.MapSerializable,org.apache.solr.common.MapWriter,org.apache.solr.common.NavigableObject,org.noggit.JSONWriter.Writable
- Direct Known Subclasses:
DeleteStream
Sends tuples emitted by a wrapped
TupleStream as updates to a SolrCloud collection.- Since:
- 6.0.0
- See Also:
-
Nested Class Summary
Nested classes/interfaces inherited from class org.apache.solr.client.solrj.io.stream.TupleStream
TupleStream.IgnoreExceptionNested classes/interfaces inherited from interface org.apache.solr.common.MapWriter
org.apache.solr.common.MapWriter.EntryWriter -
Field Summary
FieldsFields inherited from interface org.apache.solr.common.MapWriter
EMPTY -
Constructor Summary
ConstructorsConstructorDescriptionUpdateStream(String collectionName, TupleStream tupleSource, String zkHost, int updateBatchSize) UpdateStream(StreamExpression expression, StreamFactory factory) -
Method Summary
Modifier and TypeMethodDescriptionchildren()voidclose()protected booleanUsed during initialization to specify the default value for the"pruneVersionField"option.protected StringThe name of the collection being updatedvoidopen()read()voidsetStreamContext(StreamContext context) toExplanation(StreamFactory factory) Returns an explanation about the stream objecttoExpression(StreamFactory factory) protected voiduploadBatchToCollection(List<org.apache.solr.common.SolrInputDocument> documentBatch) This method will be called on every batch of tuples consumed, after converting each tuple in that batch to a Solr Input Document.Methods inherited from class org.apache.solr.client.solrj.io.stream.TupleStream
getCost, getShards, getShards, getStreamNodeId, writeMapMethods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface org.apache.solr.common.MapWriter
jsonStr, toMap, writeMethods inherited from interface org.apache.solr.common.NavigableObject
_forEachEntry, _forEachEntry, _forEachEntry, _get, _get, _getStr, _getStr, _size
-
Field Details
-
BATCH_INDEXED_FIELD_NAME
-
zkHost
-
clientCache
-
-
Constructor Details
-
UpdateStream
- Throws:
IOException
-
UpdateStream
public UpdateStream(String collectionName, TupleStream tupleSource, String zkHost, int updateBatchSize) throws IOException - Throws:
IOException
-
-
Method Details
-
getCollectionName
The name of the collection being updated -
open
- Specified by:
openin classTupleStream- Throws:
IOException
-
read
- Specified by:
readin classTupleStream- Throws:
IOException
-
close
- Specified by:
closein interfaceAutoCloseable- Specified by:
closein interfaceCloseable- Specified by:
closein classTupleStream- Throws:
IOException
-
getStreamSort
- Specified by:
getStreamSortin classTupleStream
-
children
- Specified by:
childrenin classTupleStream
-
toExpression
- Specified by:
toExpressionin interfaceExpressible- Throws:
IOException
-
toExplanation
Description copied from interface:ExpressibleReturns an explanation about the stream object- Specified by:
toExplanationin interfaceExpressible- Specified by:
toExplanationin classTupleStream- Parameters:
factory- Stream factory for this, contains information about the function name- Returns:
- Explanation about this stream object containing explanations of any child stream objects
- Throws:
IOException- throw on any error
-
setStreamContext
- Specified by:
setStreamContextin classTupleStream
-
defaultPruneVersionField
protected boolean defaultPruneVersionField()Used during initialization to specify the default value for the"pruneVersionField"option.UpdateStreamreturnstruefor backcompat and to simplify slurping of data from one collection to another. -
uploadBatchToCollection
protected void uploadBatchToCollection(List<org.apache.solr.common.SolrInputDocument> documentBatch) throws IOException This method will be called on every batch of tuples consumed, after converting each tuple in that batch to a Solr Input Document.- Throws:
IOException
-