/** * Writes a Date in SQL date format to the output stream. * @param out * The output stream * @param d * The Date to write * @throws IOException */ public static void writeUTF8(OutputStream out, DateWritableV2 d) throws IOException { ByteBuffer b = Text.encode(d.toString()); out.write(b.array(), 0, b.limit()); }
private static String convertToString(org.apache.hadoop.hive.metastore.api.Date val) { if (val == null) { return ""; } DateWritableV2 writableValue = new DateWritableV2((int) val.getDaysSinceEpoch()); return writableValue.toString(); }
t.set(((DateObjectInspector) inputOI).getPrimitiveWritableObject(input).toString()); return t; case TIMESTAMP:
public void testStringToDate() throws HiveException { GenericUDFDate udf = new GenericUDFDate(); ObjectInspector valueOI = PrimitiveObjectInspectorFactory.javaStringObjectInspector; ObjectInspector[] arguments = {valueOI}; udf.initialize(arguments); DeferredObject valueObj = new DeferredJavaObject(new Text("2009-07-30")); DeferredObject[] args = {valueObj}; DateWritableV2 output = (DateWritableV2) udf.evaluate(args); assertEquals("to_date() test for STRING failed ", "2009-07-30", output.toString()); // Try with null args DeferredObject[] nullArgs = { new DeferredJavaObject(null) }; output = (DateWritableV2) udf.evaluate(nullArgs); assertNull("to_date() with null STRING", output); }
public void testByteDataTypeAsDays() throws HiveException { GenericUDFDateAdd udf = new GenericUDFDateAdd(); ObjectInspector valueOI1 = PrimitiveObjectInspectorFactory.writableDateObjectInspector; ObjectInspector valueOI2 = PrimitiveObjectInspectorFactory.javaByteObjectInspector; ObjectInspector[] arguments = {valueOI1, valueOI2}; udf.initialize(arguments); DeferredObject valueObj1 = new DeferredJavaObject(new DateWritableV2(Date.of(109, 06, 20))); DeferredObject valueObj2 = new DeferredJavaObject(new Byte("4")); DeferredObject[] args = {valueObj1, valueObj2}; DateWritableV2 output = (DateWritableV2) udf.evaluate(args); assertEquals("date_add() test for BYTE failed ", "0109-06-24", output.toString()); }
public void testByteDataTypeAsDays() throws HiveException { GenericUDFDateSub udf = new GenericUDFDateSub(); ObjectInspector valueOI1 = PrimitiveObjectInspectorFactory.writableDateObjectInspector; ObjectInspector valueOI2 = PrimitiveObjectInspectorFactory.javaByteObjectInspector; ObjectInspector[] arguments = {valueOI1, valueOI2}; udf.initialize(arguments); DeferredObject valueObj1 = new DeferredJavaObject(new DateWritableV2(Date.of(109, 06, 20))); DeferredObject valueObj2 = new DeferredJavaObject(new Byte("4")); DeferredObject[] args = {valueObj1, valueObj2}; DateWritableV2 output = (DateWritableV2) udf.evaluate(args); assertEquals("date_add() test for BYTE failed ", "0109-06-16", output.toString()); }
public void testShortDataTypeAsDays() throws HiveException { GenericUDFDateAdd udf = new GenericUDFDateAdd(); ObjectInspector valueOI1 = PrimitiveObjectInspectorFactory.writableDateObjectInspector; ObjectInspector valueOI2 = PrimitiveObjectInspectorFactory.javaShortObjectInspector; ObjectInspector[] arguments = {valueOI1, valueOI2}; udf.initialize(arguments); DeferredObject valueObj1 = new DeferredJavaObject(new DateWritableV2(Date.of(109, 06, 20))); DeferredObject valueObj2 = new DeferredJavaObject(new Short("4")); DeferredObject[] args = {valueObj1, valueObj2}; DateWritableV2 output = (DateWritableV2) udf.evaluate(args); assertEquals("date_add() test for SHORT failed ", "0109-06-24", output.toString()); } }
public void testShortDataTypeAsDays() throws HiveException { GenericUDFDateSub udf = new GenericUDFDateSub(); ObjectInspector valueOI1 = PrimitiveObjectInspectorFactory.writableDateObjectInspector; ObjectInspector valueOI2 = PrimitiveObjectInspectorFactory.javaShortObjectInspector; ObjectInspector[] arguments = {valueOI1, valueOI2}; udf.initialize(arguments); DeferredObject valueObj1 = new DeferredJavaObject(new DateWritableV2(Date.of(109, 06, 20))); DeferredObject valueObj2 = new DeferredJavaObject(new Short("4")); DeferredObject[] args = {valueObj1, valueObj2}; DateWritableV2 output = (DateWritableV2) udf.evaluate(args); assertEquals("date_add() test for SHORT failed ", "0109-06-16", output.toString()); } }
break; case DATE: result = ((DateObjectInspector) oi).getPrimitiveWritableObject(o).toString(); break; case TIMESTAMP:
public void testStringToDate() throws HiveException { GenericUDFDateSub udf = new GenericUDFDateSub(); ObjectInspector valueOI1 = PrimitiveObjectInspectorFactory.javaStringObjectInspector; ObjectInspector valueOI2 = PrimitiveObjectInspectorFactory.javaIntObjectInspector; ObjectInspector[] arguments = {valueOI1, valueOI2}; udf.initialize(arguments); DeferredObject valueObj1 = new DeferredJavaObject(new Text("2009-07-20 04:17:52")); DeferredObject valueObj2 = new DeferredJavaObject(new Integer("2")); DeferredObject[] args = {valueObj1, valueObj2}; DateWritableV2 output = (DateWritableV2) udf.evaluate(args); assertEquals("date_sub() test for STRING failed ", "2009-07-18", output.toString()); // Test with null args args = new DeferredObject[] { new DeferredJavaObject(null), valueObj2 }; assertNull("date_add() 1st arg null", udf.evaluate(args)); args = new DeferredObject[] { valueObj1, new DeferredJavaObject(null) }; assertNull("date_add() 2nd arg null", udf.evaluate(args)); args = new DeferredObject[] { new DeferredJavaObject(null), new DeferredJavaObject(null) }; assertNull("date_add() both args null", udf.evaluate(args)); }
public void testStringToDate() throws HiveException { GenericUDFDateAdd udf = new GenericUDFDateAdd(); ObjectInspector valueOI1 = PrimitiveObjectInspectorFactory.javaStringObjectInspector; ObjectInspector valueOI2 = PrimitiveObjectInspectorFactory.javaIntObjectInspector; ObjectInspector[] arguments = {valueOI1, valueOI2}; udf.initialize(arguments); DeferredObject valueObj1 = new DeferredJavaObject(new Text("2009-07-20 04:17:52")); DeferredObject valueObj2 = new DeferredJavaObject(new Integer("2")); DeferredObject[] args = {valueObj1, valueObj2}; DateWritableV2 output = (DateWritableV2) udf.evaluate(args); assertEquals("date_add() test for STRING failed ", "2009-07-22", output.toString()); // Test with null args args = new DeferredObject[] { new DeferredJavaObject(null), valueObj2 }; assertNull("date_add() 1st arg null", udf.evaluate(args)); args = new DeferredObject[] { valueObj1, new DeferredJavaObject(null) }; assertNull("date_add() 2nd arg null", udf.evaluate(args)); args = new DeferredObject[] { new DeferredJavaObject(null), new DeferredJavaObject(null) }; assertNull("date_add() both args null", udf.evaluate(args)); }
public void testTimestampToDate() throws HiveException { GenericUDFDate udf = new GenericUDFDate(); ObjectInspector valueOI = PrimitiveObjectInspectorFactory.writableTimestampObjectInspector; ObjectInspector[] arguments = {valueOI}; udf.initialize(arguments); DeferredObject valueObj = new DeferredJavaObject(new TimestampWritableV2( Timestamp.valueOf(LocalDateTime.of(109, 06, 30, 4, 17, 52, 0).toString()))); DeferredObject[] args = {valueObj}; DateWritableV2 output = (DateWritableV2) udf.evaluate(args); assertEquals("to_date() test for TIMESTAMP failed ", "0109-06-30", output.toString()); // Try with null args DeferredObject[] nullArgs = { new DeferredJavaObject(null) }; output = (DateWritableV2) udf.evaluate(nullArgs); assertNull("to_date() with null TIMESTAMP", output); }
public void testTimestampToDate() throws HiveException { GenericUDFDateAdd udf = new GenericUDFDateAdd(); ObjectInspector valueOI1 = PrimitiveObjectInspectorFactory.writableTimestampObjectInspector; ObjectInspector valueOI2 = PrimitiveObjectInspectorFactory.javaIntObjectInspector; ObjectInspector[] arguments = {valueOI1, valueOI2}; udf.initialize(arguments); DeferredObject valueObj1 = new DeferredJavaObject(new TimestampWritableV2( Timestamp.valueOf(LocalDateTime.of(109, 06, 20, 4, 17, 52, 0).toString()))); DeferredObject valueObj2 = new DeferredJavaObject(new Integer("3")); DeferredObject[] args = {valueObj1, valueObj2}; DateWritableV2 output = (DateWritableV2) udf.evaluate(args); assertEquals("date_add() test for TIMESTAMP failed ", "0109-06-23", output.toString()); // Test with null args args = new DeferredObject[] { new DeferredJavaObject(null), valueObj2 }; assertNull("date_add() 1st arg null", udf.evaluate(args)); args = new DeferredObject[] { valueObj1, new DeferredJavaObject(null) }; assertNull("date_add() 2nd arg null", udf.evaluate(args)); args = new DeferredObject[] { new DeferredJavaObject(null), new DeferredJavaObject(null) }; assertNull("date_add() both args null", udf.evaluate(args)); }
public void testTimestampToDate() throws HiveException { GenericUDFDateSub udf = new GenericUDFDateSub(); ObjectInspector valueOI1 = PrimitiveObjectInspectorFactory.writableTimestampObjectInspector; ObjectInspector valueOI2 = PrimitiveObjectInspectorFactory.javaIntObjectInspector; ObjectInspector[] arguments = {valueOI1, valueOI2}; udf.initialize(arguments); DeferredObject valueObj1 = new DeferredJavaObject(new TimestampWritableV2( Timestamp.valueOf(LocalDateTime.of(109, 06, 20, 4, 17, 52, 0).toString()))); DeferredObject valueObj2 = new DeferredJavaObject(new Integer("3")); DeferredObject[] args = {valueObj1, valueObj2}; DateWritableV2 output = (DateWritableV2) udf.evaluate(args); assertEquals("date_sub() test for TIMESTAMP failed ", "0109-06-17", output.toString()); // Test with null args args = new DeferredObject[] { new DeferredJavaObject(null), valueObj2 }; assertNull("date_add() 1st arg null", udf.evaluate(args)); args = new DeferredObject[] { valueObj1, new DeferredJavaObject(null) }; assertNull("date_add() 2nd arg null", udf.evaluate(args)); args = new DeferredObject[] { new DeferredJavaObject(null), new DeferredJavaObject(null) }; assertNull("date_add() both args null", udf.evaluate(args)); }
public void testDateWritablepToDate() throws HiveException { GenericUDFDate udf = new GenericUDFDate(); ObjectInspector valueOI = PrimitiveObjectInspectorFactory.writableDateObjectInspector; ObjectInspector[] arguments = {valueOI}; udf.initialize(arguments); DeferredObject valueObj = new DeferredJavaObject(new DateWritableV2(Date.of(109, 06, 30))); DeferredObject[] args = {valueObj}; DateWritableV2 output = (DateWritableV2) udf.evaluate(args); assertEquals("to_date() test for DATEWRITABLE failed ", "0109-06-30", output.toString()); // Try with null args DeferredObject[] nullArgs = { new DeferredJavaObject(null) }; output = (DateWritableV2) udf.evaluate(nullArgs); assertNull("to_date() with null DATE", output); }
public void testDateWritablepToDate() throws HiveException { GenericUDFDateAdd udf = new GenericUDFDateAdd(); ObjectInspector valueOI1 = PrimitiveObjectInspectorFactory.writableDateObjectInspector; ObjectInspector valueOI2 = PrimitiveObjectInspectorFactory.javaIntObjectInspector; ObjectInspector[] arguments = {valueOI1, valueOI2}; udf.initialize(arguments); DeferredObject valueObj1 = new DeferredJavaObject(new DateWritableV2(Date.of(109, 06, 20))); DeferredObject valueObj2 = new DeferredJavaObject(new Integer("4")); DeferredObject[] args = {valueObj1, valueObj2}; DateWritableV2 output = (DateWritableV2) udf.evaluate(args); assertEquals("date_add() test for DATEWRITABLE failed ", "0109-06-24", output.toString()); // Test with null args args = new DeferredObject[] { new DeferredJavaObject(null), valueObj2 }; assertNull("date_add() 1st arg null", udf.evaluate(args)); args = new DeferredObject[] { valueObj1, new DeferredJavaObject(null) }; assertNull("date_add() 2nd arg null", udf.evaluate(args)); args = new DeferredObject[] { new DeferredJavaObject(null), new DeferredJavaObject(null) }; assertNull("date_add() both args null", udf.evaluate(args)); }
public void testDateWritablepToDate() throws HiveException { GenericUDFDateSub udf = new GenericUDFDateSub(); ObjectInspector valueOI1 = PrimitiveObjectInspectorFactory.writableDateObjectInspector; ObjectInspector valueOI2 = PrimitiveObjectInspectorFactory.javaIntObjectInspector; ObjectInspector[] arguments = {valueOI1, valueOI2}; udf.initialize(arguments); DeferredObject valueObj1 = new DeferredJavaObject(new DateWritableV2(Date.of(109, 06, 20))); DeferredObject valueObj2 = new DeferredJavaObject(new Integer("4")); DeferredObject[] args = {valueObj1, valueObj2}; DateWritableV2 output = (DateWritableV2) udf.evaluate(args); assertEquals("date_sub() test for DATEWRITABLE failed ", "0109-06-16", output.toString()); // Test with null args args = new DeferredObject[] { new DeferredJavaObject(null), valueObj2 }; assertNull("date_add() 1st arg null", udf.evaluate(args)); args = new DeferredObject[] { valueObj1, new DeferredJavaObject(null) }; assertNull("date_add() 2nd arg null", udf.evaluate(args)); args = new DeferredObject[] { new DeferredJavaObject(null), new DeferredJavaObject(null) }; assertNull("date_add() both args null", udf.evaluate(args)); }
/** * Writes a Date in SQL date format to the output stream. * @param out * The output stream * @param d * The Date to write * @throws IOException */ public static void writeUTF8(OutputStream out, DateWritableV2 d) throws IOException { ByteBuffer b = Text.encode(d.toString()); out.write(b.array(), 0, b.limit()); }
t.set(((DateObjectInspector) inputOI).getPrimitiveWritableObject(input).toString()); return t; case TIMESTAMP:
break; case DATE: result = ((DateObjectInspector) oi).getPrimitiveWritableObject(o).toString(); break; case TIMESTAMP: