You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@nifi.apache.org by GitBox <gi...@apache.org> on 2021/09/14 14:58:16 UTC

[GitHub] [nifi] pgyori commented on a change in pull request #5365: NIFI-9192: ResultSetRecordSet considers value of useLogicalTypes flag…

pgyori commented on a change in pull request #5365:
URL: https://github.com/apache/nifi/pull/5365#discussion_r708358951



##########
File path: nifi-commons/nifi-record/src/main/java/org/apache/nifi/serialization/record/ResultSetRecordSet.java
##########
@@ -297,7 +271,54 @@ private DataType getDataType(final int sqlType, final ResultSet rs, final int co
         }
     }
 
-    private static DataType getArrayBaseType(final Array array) throws SQLException {
+    private DataType getArrayDataType(ResultSet rs, int columnIndex, boolean useLogicalTypes) throws SQLException {
+        // The JDBC API does not allow us to know what the base type of an array is through the metadata.
+        // As a result, we have to obtain the actual Array for this record. Once we have this, we can determine
+        // the base type. However, if the base type is, itself, an array, we will simply return a base type of
+        // String because otherwise, we need the ResultSet for the array itself, and many JDBC Drivers do not
+        // support calling Array.getResultSet() and will throw an Exception if that is not supported.
+        if (rs.isAfterLast()) {

Review comment:
       @mattyb149 I rebased and merged these modifications. Unfortunately I managed to do that by deleting this branch and opening a new one with the same name, so I had to create a new PR: https://github.com/apache/nifi/pull/5388
   Please have a look at that if your time permits. Thank you!




-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: issues-unsubscribe@nifi.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org