Joe Gresock created NIFI-9547:
---------------------------------

             Summary: LookupRecord could support more data types in replacements
                 Key: NIFI-9547
                 URL: https://issues.apache.org/jira/browse/NIFI-9547
             Project: Apache NiFi
          Issue Type: Improvement
          Components: Extensions
            Reporter: Joe Gresock


LookupRecord can currently only replace values with numeric, boolean, or string 
data types.  If a timestamp field, for example, is configured as a dynamic 
property, LookupRecord will pass a string value to the LookupService.  In 
implementations like KuduLookupService, this causes an exception such as:

{code:java}
Caused by: java.lang.IllegalArgumentException: deactivationdate's type isn't 
[Type: string, Type: varchar], it's unixtime_micros
        at 
org.apache.kudu.client.KuduPredicate.checkColumn(KuduPredicate.java:1171)
        at 
org.apache.kudu.client.KuduPredicate.newComparisonPredicate(KuduPredicate.java:434)
        at 
org.apache.kudu.client.KuduPredicate.newComparisonPredicate(KuduPredicate.java:547)
        at 
org.apache.nifi.controller.kudu.KuduLookupService.lambda$lookup$1(KuduLookupService.java:260)
{code}

We should add support for more data types using something like 
DataTypeUtils.convertType.



--
This message was sent by Atlassian Jira
(v8.20.1#820001)

Reply via email to