[
https://issues.apache.org/jira/browse/NIFI-12828?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17820956#comment-17820956
]
Lehel Boér commented on NIFI-12828:
-----------------------------------
Thanks [~rnsingh] for reporting the issue. Adding the relevant stacktrace here:
2024-02-26 23:43:23,940 ERROR [Timer-Driven Process Thread-10]
o.a.n.p.s.QueryDatabaseTableRecord
QueryDatabaseTableRecord[id=e8b0f2c7-018d-1000-9dca-4f64638f5e0d] Unable to
execute SQL select query SELECT * FROM schema_name.test_nifi_table due to
org.apache.nifi.processor.exception.ProcessException: Error during database
query or conversion of
records.org.apache.nifi.processor.exception.ProcessException: Error during
database query or conversion of records.
at
org.apache.nifi.processors.standard.AbstractQueryDatabaseTable.lambda$onTrigger$1(AbstractQueryDatabaseTable.java:360)
at
org.apache.nifi.controller.repository.StandardProcessSession.write(StandardProcessSession.java:3122)
at
org.apache.nifi.processors.standard.AbstractQueryDatabaseTable.onTrigger(AbstractQueryDatabaseTable.java:356)
at
org.apache.nifi.controller.StandardProcessorNode.onTrigger(StandardProcessorNode.java:1274)
at
org.apache.nifi.controller.tasks.ConnectableTask.invoke(ConnectableTask.java:244)
at
org.apache.nifi.controller.scheduling.AbstractTimeBasedSchedulingAgent.lambda$doScheduleOnce$0(AbstractTimeBasedSchedulingAgent.java:59)
at org.apache.nifi.engine.FlowEngine$2.run(FlowEngine.java:110)
at
java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:572)
at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:317)
at
java.base/java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:304)
at
java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1144)
at
java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:642)
at java.base/java.lang.Thread.run(Thread.java:1583)
Caused by: org.apache.nifi.processor.exception.ProcessException:
org.apache.nifi.schema.access.SchemaNotFoundException: Could not retrieve
schema with name 'test_nifi_table' from the configured Schema Registry
at
org.apache.nifi.processors.standard.sql.RecordSqlWriter.writeResultSet(RecordSqlWriter.java:79)
at
org.apache.nifi.processors.standard.AbstractQueryDatabaseTable.lambda$onTrigger$1(AbstractQueryDatabaseTable.java:358)
... 12 common frames omitted
Caused by: org.apache.nifi.schema.access.SchemaNotFoundException: Could not
retrieve schema with name 'test_nifi_table' from the configured Schema Registry
at
org.apache.nifi.schema.access.SchemaNamePropertyStrategy.getSchema(SchemaNamePropertyStrategy.java:90)
at
org.apache.nifi.serialization.SchemaRegistryService.getSchema(SchemaRegistryService.java:151)
at
org.apache.nifi.serialization.SchemaRegistryService.getSchema(SchemaRegistryService.java:155)
at
java.base/jdk.internal.reflect.DirectMethodHandleAccessor.invoke(DirectMethodHandleAccessor.java:103)
at java.base/java.lang.reflect.Method.invoke(Method.java:580)
at
org.apache.nifi.controller.service.StandardControllerServiceInvocationHandler.invoke(StandardControllerServiceInvocationHandler.java:254)
at
org.apache.nifi.controller.service.StandardControllerServiceInvocationHandler.invoke(StandardControllerServiceInvocationHandler.java:105)
at jdk.proxy19/jdk.proxy19.$Proxy178.getSchema(Unknown Source)
at
org.apache.nifi.processors.standard.sql.RecordSqlWriter.writeResultSet(RecordSqlWriter.java:74)
... 13 common frames omitted
Caused by: java.lang.NullPointerException: null
at java.base/java.util.Objects.requireNonNull(Objects.java:233)
at
org.apache.nifi.serialization.record.RecordField.<init>(RecordField.java:70)
at
org.apache.nifi.serialization.record.RecordField.<init>(RecordField.java:48)
at
org.apache.nifi.db.schemaregistry.DatabaseTableSchemaRegistry.createRecordFieldFromColumn(DatabaseTableSchemaRegistry.java:165)
at
org.apache.nifi.db.schemaregistry.DatabaseTableSchemaRegistry.getRecordSchemaFromMetadata(DatabaseTableSchemaRegistry.java:145)
at
org.apache.nifi.db.schemaregistry.DatabaseTableSchemaRegistry.retrieveSchemaByName(DatabaseTableSchemaRegistry.java:133)
at
org.apache.nifi.db.schemaregistry.DatabaseTableSchemaRegistry.retrieveSchema(DatabaseTableSchemaRegistry.java:112)
at
java.base/jdk.internal.reflect.DirectMethodHandleAccessor.invoke(DirectMethodHandleAccessor.java:103)
at java.base/java.lang.reflect.Method.invoke(Method.java:580)
at
org.apache.nifi.controller.service.StandardControllerServiceInvocationHandler.invoke(StandardControllerServiceInvocationHandler.java:254)
at
org.apache.nifi.controller.service.StandardControllerServiceInvocationHandler.invoke(StandardControllerServiceInvocationHandler.java:105)
at jdk.proxy20/jdk.proxy20.$Proxy179.retrieveSchema(Unknown Source)
at
org.apache.nifi.schema.access.SchemaNamePropertyStrategy.getSchema(SchemaNamePropertyStrategy.java:81)
... 21 common frames omitted
> DatabaseTableSchemaRegistry improvement to handle BIT/Boolean Type
> ---------------------------------------------------------------------
>
> Key: NIFI-12828
> URL: https://issues.apache.org/jira/browse/NIFI-12828
> Project: Apache NiFi
> Issue Type: Improvement
> Affects Versions: 1.25.0
> Reporter: RAVINARAYAN SINGH
> Assignee: RAVINARAYAN SINGH
> Priority: Major
> Labels: controller_services
> Time Spent: 10m
> Remaining Estimate: 0h
>
> The issue stems from the fact that for the PostgreSQL JDBC driver, the
> Boolean type is mapped to {{{}java.sql.Types.BIT{}}}, not {{{}BOOLEAN{}}}.
> This causes the line {{columnResultSet.getInt("DATA_TYPE")}} to return -7,
> which corresponds to {{{}BIT{}}}, and
> {{DataTypeUtils.getDataTypeFromSQLTypeValue(dataType)}} to return
> {{{}null{}}}, leading to a null pointer exception.
--
This message was sent by Atlassian Jira
(v8.20.10#820010)