Skip to content

Commit 6a169ea

Browse files
committed
removed custom SQLType for uuid
1 parent b6de51f commit 6a169ea

File tree

3 files changed

+9
-15
lines changed

3 files changed

+9
-15
lines changed

flight/flight-sql-jdbc-core/src/main/java/org/apache/arrow/driver/jdbc/converter/impl/UuidAvaticaParameterConverter.java

Lines changed: 8 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -21,8 +21,12 @@
2121
import java.util.UUID;
2222
import org.apache.arrow.driver.jdbc.converter.AvaticaParameterConverter;
2323
import org.apache.arrow.driver.jdbc.utils.SqlTypes;
24+
import static org.apache.arrow.driver.jdbc.utils.SqlTypes.getSqlTypeIdFromArrowType;
25+
import static org.apache.arrow.driver.jdbc.utils.SqlTypes.getSqlTypeNameFromArrowType;
2426
import org.apache.arrow.vector.FieldVector;
2527
import org.apache.arrow.vector.UuidVector;
28+
import org.apache.arrow.vector.extension.UuidType;
29+
import org.apache.arrow.vector.types.pojo.ExtensionTypeRegistry;
2630
import org.apache.arrow.vector.types.pojo.Field;
2731
import org.apache.arrow.vector.util.UuidUtility;
2832
import org.apache.calcite.avatica.AvaticaParameter;
@@ -82,26 +86,19 @@ public boolean bindParameter(FieldVector vector, TypedValue typedValue, int inde
8286
@Override
8387
public AvaticaParameter createParameter(Field field) {
8488
final String name = field.getName();
85-
final int jdbcType = Types.OTHER;
86-
final String typeName = SqlTypes.UUID_TYPE_NAME;
89+
final int jdbcType = getSqlTypeIdFromArrowType(field.getType());
90+
final String typeName = getSqlTypeNameFromArrowType(field.getType());
8791
final String className = UUID.class.getCanonicalName();
8892
return new AvaticaParameter(false, 0, 0, jdbcType, typeName, className, name);
8993
}
9094

9195
private static UUID uuidFromBytes(byte[] bytes) {
92-
// long msb = 0;
93-
// long lsb = 0;
94-
// for (int i = 0; i < 8; i++) {
95-
// msb = (msb << 8) | (bytes[i] & 0xff);
96-
// }
97-
// for (int i = 8; i < 16; i++) {
98-
// lsb = (lsb << 8) | (bytes[i] & 0xff);
99-
// }
100-
10196
final long mostSignificantBits;
10297
final long leastSignificantBits;
10398
ByteBuffer bb = ByteBuffer.wrap(bytes);
99+
// Reads the first eight bytes
104100
mostSignificantBits = bb.getLong();
101+
// Reads the first eight bytes at this buffer's current
105102
leastSignificantBits = bb.getLong();
106103

107104
return new UUID(mostSignificantBits, leastSignificantBits);

flight/flight-sql-jdbc-core/src/main/java/org/apache/arrow/driver/jdbc/utils/SqlTypes.java

Lines changed: 0 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -23,12 +23,9 @@
2323
import org.apache.arrow.vector.extension.UuidType;
2424
import org.apache.arrow.vector.types.FloatingPointPrecision;
2525
import org.apache.arrow.vector.types.pojo.ArrowType;
26-
import org.apache.arrow.vector.types.pojo.Field;
2726

2827
/** SQL Types utility functions. */
2928
public class SqlTypes {
30-
/** SQL type name for UUID (matches PostgreSQL JDBC driver convention). */
31-
public static final String UUID_TYPE_NAME = "uuid";
3229

3330
private static final Map<Integer, String> typeIdToName = new HashMap<>();
3431

flight/flight-sql-jdbc-core/src/test/java/org/apache/arrow/driver/jdbc/converter/impl/UuidAvaticaParameterConverterTest.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -155,7 +155,7 @@ public void testCreateParameter() {
155155

156156
assertThat(parameter.name, is("uuid_col"));
157157
assertThat(parameter.parameterType, is(Types.OTHER));
158-
assertThat(parameter.typeName, is(SqlTypes.UUID_TYPE_NAME));
158+
assertThat(parameter.typeName, is("OTHER"));
159159
assertThat(parameter.className, equalTo(UUID.class.getCanonicalName()));
160160
}
161161
}

0 commit comments

Comments
 (0)