@Override void serialize(RandomAccessOutput byteStream, Object obj, ObjectInspector objInspector, boolean skipLengthPrefix, BooleanRef warnedOnceNullMapKey) { BinaryObjectInspector baoi = (BinaryObjectInspector) objInspector; BytesWritable bw = baoi.getPrimitiveWritableObject(obj); int length = bw.getLength(); if(!skipLengthPrefix){ LazyBinaryUtils.writeVInt(byteStream, length); } else { if (length == 0){ throw new RuntimeException("LazyBinaryColumnarSerde cannot serialize a non-null zero " + "length binary field. Consider using either LazyBinarySerde or ColumnarSerde."); } } byteStream.write(bw.getBytes(),0,length); } }
public Object binaryEvaluate(DeferredObject[] arguments) throws HiveException { int len = 0; for (int idx = 0; idx < arguments.length; ++idx) { bw[idx] = ((BinaryObjectInspector)argumentOIs[idx]) .getPrimitiveWritableObject(arguments[idx].get()); if (bw[idx] == null){ return null; } len += bw[idx].getLength(); } byte[] out = new byte[len]; int curLen = 0; // Need to iterate twice since BytesWritable doesn't support append. for (BytesWritable bytes : bw){ System.arraycopy(bytes.getBytes(), 0, out, curLen, bytes.getLength()); curLen += bytes.getLength(); } return new BytesWritable(out); }
public Object binaryEvaluate(DeferredObject[] arguments) throws HiveException { int len = 0; for (int idx = 0; idx < arguments.length; ++idx) { bw[idx] = ((BinaryObjectInspector)argumentOIs[idx]) .getPrimitiveWritableObject(arguments[idx].get()); if (bw[idx] == null){ return null; } len += bw[idx].getLength(); } byte[] out = new byte[len]; int curLen = 0; // Need to iterate twice since BytesWritable doesn't support append. for (BytesWritable bytes : bw){ System.arraycopy(bytes.getBytes(), 0, out, curLen, bytes.getLength()); curLen += bytes.getLength(); } return new BytesWritable(out); }
BytesWritable bw = ((BinaryObjectInspector) oi).getPrimitiveWritableObject(o); out.write(bw.getBytes(), 0, bw.getLength()); break;
@Override void write(Object obj) throws IOException { super.write(obj); if (obj != null) { BytesWritable val = ((BinaryObjectInspector) inspector).getPrimitiveWritableObject(obj); stream.write(val.getBytes(), 0, val.getLength()); length.write(val.getLength()); indexStatistics.updateBinary(val); if (createBloomFilter) { bloomFilter.addBytes(val.getBytes(), val.getLength()); } } }
PrimitiveObjectInspector oi = (PrimitiveObjectInspector) objInspector; if (oi.getPrimitiveCategory() == PrimitiveCategory.BINARY) { BytesWritable bw = ((BinaryObjectInspector) oi).getPrimitiveWritableObject(obj); byte[] toWrite = new byte[bw.getLength()]; System.arraycopy(bw.getBytes(), 0, toWrite, 0, bw.getLength());
BytesWritable bw = ((BinaryObjectInspector) oi).getPrimitiveWritableObject(o); byte[] toEncode = new byte[bw.getLength()]; System.arraycopy(bw.getBytes(), 0,toEncode, 0, bw.getLength());
public static BytesWritable getBinary(Object o, PrimitiveObjectInspector oi) { if (null == o) { return null; } switch (oi.getPrimitiveCategory()) { case VOID: return null; case STRING: Text text = ((StringObjectInspector) oi).getPrimitiveWritableObject(o); return getBinaryFromText(text); case CHAR: // char to binary conversion: include trailing spaces? return getBinaryFromText( ((HiveCharObjectInspector) oi).getPrimitiveWritableObject(o).getPaddedValue()); case VARCHAR: return getBinaryFromText( ((HiveVarcharObjectInspector) oi).getPrimitiveWritableObject(o).getTextValue()); case BINARY: return ((BinaryObjectInspector) oi).getPrimitiveWritableObject(o); default: throw new RuntimeException("Cannot convert to Binary from: " + oi.getTypeName()); } }
return Murmur3.hash32(((BinaryObjectInspector) poi).getPrimitiveWritableObject(o).getBytes());
BinaryObjectInspector binaryOI = (BinaryObjectInspector) inputOI; if (binaryOI.preferWritable()) { BytesWritable bytes = binaryOI.getPrimitiveWritableObject(input); t.set(bytes.getBytes(), 0, bytes.getLength()); } else {
case BINARY: try { byte[] bytes = ((BinaryObjectInspector) oi).getPrimitiveWritableObject(o).getBytes(); int byteLen = ((BinaryObjectInspector) oi).getPrimitiveWritableObject(o).getLength(); result = Text.decode(bytes, 0, byteLen); } catch (CharacterCodingException err) {
assertNotNull(row); assertEquals(bytes(0, 1, 2, 3, 4), bi.getPrimitiveWritableObject( readerInspector.getStructFieldData(row, fields.get(0)))); assertEquals("foo", st.getPrimitiveJavaObject(readerInspector. assertEquals(bytes(0, 1, 2, 3), bi.getPrimitiveWritableObject( readerInspector.getStructFieldData(row, fields.get(0)))); assertEquals("bar", st.getPrimitiveJavaObject(readerInspector. assertEquals(bytes(0, 1, 2, 3, 4, 5), bi.getPrimitiveWritableObject( readerInspector.getStructFieldData(row, fields.get(0)))); assertNull(st.getPrimitiveJavaObject(readerInspector. assertNull(bi.getPrimitiveWritableObject( readerInspector.getStructFieldData(row, fields.get(0)))); assertEquals("hi", st.getPrimitiveJavaObject(readerInspector.
assertNotNull(row); assertEquals(bytes(0,1,2,3,4), bi.getPrimitiveWritableObject( readerInspector.getStructFieldData(row, fields.get(0)))); assertEquals("foo", st.getPrimitiveJavaObject(readerInspector. assertEquals(bytes(0,1,2,3), bi.getPrimitiveWritableObject( readerInspector.getStructFieldData(row, fields.get(0)))); assertEquals("bar", st.getPrimitiveJavaObject(readerInspector. assertEquals(bytes(0,1,2,3,4,5), bi.getPrimitiveWritableObject( readerInspector.getStructFieldData(row, fields.get(0)))); assertNull(st.getPrimitiveJavaObject(readerInspector. assertNull(bi.getPrimitiveWritableObject( readerInspector.getStructFieldData(row, fields.get(0)))); assertEquals("hi", st.getPrimitiveJavaObject(readerInspector.
case BINARY: BytesWritable vBytes = ((BinaryObjectInspector)inputOI). getPrimitiveWritableObject(parameters[0]); bf.addBytes(vBytes.getBytes(), 0, vBytes.getLength()); break;
case BINARY: BytesWritable vBytes = ((BinaryObjectInspector)inputOI). getPrimitiveWritableObject(parameters[0]); bf.addBytes(vBytes.getBytes(), 0, vBytes.getLength()); break;
return ((HiveVarcharObjectInspector)poi).getPrimitiveWritableObject(o).hashCode(); case BINARY: return ((BinaryObjectInspector) poi).getPrimitiveWritableObject(o).hashCode();
case BINARY: BytesWritable vBytes = ((BinaryObjectInspector) valObjectInspector). getPrimitiveWritableObject(arguments[0].get()); return bloomFilter.testBytes(vBytes.getBytes(), 0, vBytes.getLength()); default:
case BINARY: BytesWritable vBytes = ((BinaryObjectInspector) valObjectInspector). getPrimitiveWritableObject(arguments[0].get()); return bloomFilter.testBytes(vBytes.getBytes(), 0, vBytes.getLength()); default:
return ((BinaryObjectInspector) oi1).getPrimitiveWritableObject(o1). equals(((BinaryObjectInspector) oi2).getPrimitiveWritableObject(o2));
BytesWritable byw = bnoi.getPrimitiveWritableObject(objectForField); out.writeVarByte(byw); return;