@Override public Void call() throws Exception { int batchSize = 1024; VectorUDFDateString udf = new VectorUDFDateString(0, 1); VectorizedRowBatch batch = new VectorizedRowBatch(2, batchSize); BytesColumnVector in = new BytesColumnVector(batchSize); LongColumnVector out = new LongColumnVector(batchSize); batch.cols[0] = in; batch.cols[1] = out; for (int i = 0; i < batchSize; i++) { byte[] data = String.format("1999-%02d-%02d", 1 + (i % 12), 1 + (i % 15)).getBytes("UTF-8"); in.setRef(i, data, 0, data.length); in.isNull[i] = false; } udf.evaluate(batch); // bug if it throws an exception return (Void) null; }