crissaegrim created NIFI-12885:
----------------------------------
Summary: MapRecord.getAsDate timestamp breaking bug
Key: NIFI-12885
URL: https://issues.apache.org/jira/browse/NIFI-12885
Project: Apache NiFi
Issue Type: New Feature
Affects Versions: 2.0.0-M2
Reporter: crissaegrim
I think I found a breaking bug from this commit
[https://github.com/apache/nifi/commit/250fe90b348fac515ea597c1985ca432ac7c3ac3#diff-ce496d3f0fc5a7e8a3c0431972f7069b4cf1af2e94f3a199f595ef195eb5ebfa]
The below passes in 1.20.0 but fails in 2.0
{code:java}
@Test
void testBasic() throws Exception {
// setup
final String schemaText = "{" +
"\"type\" : \"record\"," +
"\"name\" : \"TestRecord\"," +
"\"namespace\" : \"org.apache.nifi\"," +
"\"fields\" : [ {" +
"\"name\" : \"my_datestamp_field\"," +
"\"type\" : {" +
"\"type\" : \"long\"," +
"\"logicalType\" : \"timestamp-millis\"" +
"}" +
"} ]" +
"}";
final RecordSchema schemaParsed = AvroTypeUtil.createSchema(new
Schema.Parser().parse(schemaText));
final HashMap<String, Object> item = new HashMap<>();
item.put("my_datestamp_field", "2022-01-01 10:00:00.000");
// act
final MapRecord record = new MapRecord(schemaParsed, item);
final Date myDateStampField = record.getAsDate("my_datestamp_field",
"yyyy-MM-dd HH:mm:ss.SSS");
// assert
// fails in 2.0; actual is `1640995200000`
assertEquals(1641031200000L, myDateStampField.getTime());
}
{code}
--
This message was sent by Atlassian Jira
(v8.20.10#820010)