} else { ((VarCharVector.Mutator) pci.vv.getMutator()) .setSafe(rowIndex, value, 0, value.remaining());
@Override public void generateTestData(int size){ boolean even = true; final java.nio.charset.Charset charset = Charsets.UTF_8; final byte[] evenValue = new String("aaaaa").getBytes(charset); final byte[] oddValue = new String("bbbbbbbbbb").getBytes(charset); for(int i =0; i < size; i++, even = !even){ set(i, even ? evenValue : oddValue); } setValueCount(size); } }
private void addOutputContainerData() { @SuppressWarnings("resource") final VarCharVector fragmentIdVector = (VarCharVector) container.getValueAccessorById( VarCharVector.class, container.getValueVectorId(SchemaPath.getSimplePath("Fragment")).getFieldIds()) .getValueVector(); AllocationHelper.allocate(fragmentIdVector, 1, 50); @SuppressWarnings("resource") final BigIntVector summaryVector = (BigIntVector) container.getValueAccessorById(BigIntVector.class, container.getValueVectorId(SchemaPath.getSimplePath("Number of records written")).getFieldIds()) .getValueVector(); AllocationHelper.allocate(summaryVector, 1, 8); fragmentIdVector.getMutator().setSafe(0, fragmentUniqueId.getBytes()); fragmentIdVector.getMutator().setValueCount(1); summaryVector.getMutator().setSafe(0, counter); summaryVector.getMutator().setValueCount(1); container.setRecordCount(1); }
/** * Set the variable length element at the specified index to the supplied value. * * @param index position of the bit to set * @param value value to write */ public void set(int index, byte[] value) { setCount++; final VarCharVector.Mutator valuesMutator = values.getMutator(); final UInt1Vector.Mutator bitsMutator = bits.getMutator(); valuesMutator.fillEmpties(lastSet, index); bitsMutator.set(index, 1); valuesMutator.set(index, value); lastSet = index; }
public void setSkipNull(int index, NullableVarCharHolder holder) { values.getMutator().set(index, holder); }
@Override public boolean setSafe(int index, DrillBuf bytebuf, int start, int length) { if (index >= varCharVector.getValueCapacity()) { return false; } if (usingDictionary) { currDictValToWrite = pageReader.dictionaryValueReader.readBytes(); ByteBuffer buf = currDictValToWrite.toByteBuffer(); mutator.setSafe(index, buf, buf.position(), currDictValToWrite.length()); } else { mutator.setSafe(index, start, start + length, bytebuf); } return true; }
public void setSkipNull(int index, VarCharHolder holder) { values.getMutator().set(index, holder); }
public void splitAndTransferTo(int startIndex, int length, VarCharVector target) { UInt4Vector.Accessor offsetVectorAccessor = this.offsetVector.getAccessor(); final int startPoint = offsetVectorAccessor.get(startIndex); final int sliceLength = offsetVectorAccessor.get(startIndex + length) - startPoint; target.clear(); target.offsetVector.allocateNew(length + 1); offsetVectorAccessor = this.offsetVector.getAccessor(); final UInt4Vector.Mutator targetOffsetVectorMutator = target.offsetVector.getMutator(); for (int i = 0; i < length + 1; i++) { targetOffsetVectorMutator.set(i, offsetVectorAccessor.get(startIndex + i) - startPoint); } target.data = data.slice(startPoint, sliceLength).transferOwnership(target.allocator).buffer; target.getMutator().setValueCount(length); }
public void writeVarChar(int start, int end, DrillBuf buffer) { mutator.setSafe(idx(), start, end, buffer); vector.getMutator().setValueCount(idx() + 1); }
public void write(VarCharHolder h) { mutator.setSafe(idx(), h); vector.getMutator().setValueCount(idx()+1); }
public void write(NullableVarCharHolder h) { mutator.setSafe(idx(), h); vector.getMutator().setValueCount(idx()+1); }
/** * Copies the bulk input into this value vector and extends its capacity if necessary. * @param input bulk input */ public <T extends VarLenBulkEntry> void setSafe(VarLenBulkInput<T> input) { setSafe(input, null); }
public void addSafe(int rowIndex, int start, int end, DrillBuf buffer) { final int nextOffset = offsets.getAccessor().get(rowIndex+1); values.getMutator().setSafe(nextOffset, start, end, buffer); offsets.getMutator().setSafe(rowIndex + 1, nextOffset + 1); }
/** {@inheritDoc} */ public void setSafe(VarLenBulkInput<VarLenBulkEntry> input) { // Register a callback so that we can assign indicators to each value VarLenBulkInput.BulkInputCallback<VarLenBulkEntry> callback = new VarLenBulkInputCallbackImpl(input.getStartIndex()); // Now delegate bulk processing to the value container values.getMutator().setSafe(input, callback); }
public void setSafe(int index, VarCharHolder value) { if (index > lastSet + 1) { fillEmpties(index); } bits.getMutator().setSafe(index, 1); values.getMutator().setSafe(index, value); setCount++; lastSet = index; }
public void setSafe(int index, NullableVarCharHolder value) { if (index > lastSet + 1) { fillEmpties(index); } bits.getMutator().setSafe(index, value.isSet); values.getMutator().setSafe(index, value); setCount++; lastSet = index; }
/** * Add an element to the given record index. This is similar to the set() method in other * value vectors, except that it permits setting multiple values for a single record. * * @param index record of the element to add * @param value value to add to the given row */ public void add(int index, byte[] value) { final int nextOffset = offsets.getAccessor().get(index+1); values.getMutator().set(nextOffset, value); offsets.getMutator().set(index+1, nextOffset+1); }
public VarCharVector(MaterializedField field, BufferAllocator allocator) { super(field, allocator); this.accessor = new Accessor(); this.mutator = new Mutator(); }
public void setSafe(int index, int isSet, int startField, int endField, DrillBuf bufferField ) { if (index > lastSet + 1) { fillEmpties(index); } bits.getMutator().setSafe(index, isSet); values.getMutator().setSafe(index, startField, endField, bufferField); setCount++; lastSet = index; }
public void setSafe(int index, byte[] value, int start, int length) { if (index > lastSet + 1) { fillEmpties(index); } bits.getMutator().setSafe(index, 1); values.getMutator().setSafe(index, value, start, length); setCount++; lastSet = index; }