protected class JoinTask.ChunkTask extends Object implements Callable<Boolean>
IAccessPath
for a join dimension. Each element in the chunk in paired with a copy
of the given bindings. If that IBindingSet is accepted by the
IRule, then the IBindingSet will be output. The
IBindingSets to be output are buffered into chunks and the
chunks added to the JoinPipelineTask#bindingSetBuffers for
the corresponding predicate.| Constructor and Description |
|---|
JoinTask.ChunkTask(IBindingSet[] bindingSet,
AbstractUnsynchronizedArrayBuffer<IBindingSet> unsyncBuffer,
Object[] chunk) |
public JoinTask.ChunkTask(IBindingSet[] bindingSet, AbstractUnsynchronizedArrayBuffer<IBindingSet> unsyncBuffer, Object[] chunk)
bindingSet - The bindings with which the each element in the chunk will
be paired to create the bindings for the downstream join
dimension.unsyncBuffer - A per-Thread buffer used to accumulate chunks of
generated IBindingSets (optional). When the
JoinTask.ChunkTask will be run in its own thread, pass
null and the buffer will be obtained in
call().chunk - A chunk of elements read from the IAccessPath for
the current join dimension.public Boolean call() throws Exception
call in interface Callable<Boolean>true iff NO elements in the chunk (as read
from the access path by the caller) were accepted when
combined with the bindingSets from the source
JoinTask.BufferClosedException - if there is an attempt to output a chunk of
IBindingSets or ISolutions and the
output buffer is an IBlockingBuffer (true for
all join dimensions exception the lastJoin and also
true for query on the lastJoin) and that
IBlockingBuffer has been closed.ExceptionCopyright © 2006–2019 SYSTAP, LLC DBA Blazegraph. All rights reserved.