Skip to content

Commit 9496cba

Browse files
authored
Support longs (#52)
1 parent 84b3430 commit 9496cba

File tree

2 files changed

+6
-2
lines changed

2 files changed

+6
-2
lines changed

hoptimator-catalog/src/main/java/com/linkedin/hoptimator/catalog/AvroConverter.java

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -32,6 +32,8 @@ public static Schema avro(String namespace, String name, RelDataType dataType) {
3232
switch (dataType.getSqlTypeName()) {
3333
case INTEGER:
3434
return createAvroTypeWithNullability(Schema.Type.INT, dataType.isNullable());
35+
case BIGINT:
36+
return createAvroTypeWithNullability(Schema.Type.LONG, dataType.isNullable());
3537
case VARCHAR:
3638
return createAvroTypeWithNullability(Schema.Type.STRING, dataType.isNullable());
3739
case FLOAT:
@@ -72,9 +74,10 @@ public static RelDataType rel(Schema schema, RelDataTypeFactory typeFactory) {
7274
.filter(x -> x.getValue().getSqlTypeName() != unknown.getSqlTypeName())
7375
.collect(Collectors.toList()));
7476
case INT:
75-
case LONG:
7677
// schema.isNullable() should be false for basic types iiuc
7778
return createRelTypeWithNullability(typeFactory, SqlTypeName.INTEGER, schema.isNullable());
79+
case LONG:
80+
return createRelTypeWithNullability(typeFactory, SqlTypeName.BIGINT, schema.isNullable());
7881
case ENUM:
7982
case STRING:
8083
return createRelTypeWithNullability(typeFactory, SqlTypeName.VARCHAR, schema.isNullable());

hoptimator-catalog/src/main/java/com/linkedin/hoptimator/catalog/builtin/DatagenSchemaFactory.java

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -27,7 +27,8 @@ public Schema create(SchemaPlus parentSchema, String name, Map<String, Object> o
2727
RelDataTypeFactory typeFactory = new SqlTypeFactoryImpl(RelDataTypeSystem.DEFAULT);
2828
Map<String, HopTable> datagenTables = new HashMap<>();
2929
datagenTables.put("PERSON", new HopTable("DATAGEN", "PERSON", (new RelDataTypeFactory.Builder(typeFactory))
30-
.add("NAME", SqlTypeName.VARCHAR).add("AGE", SqlTypeName.INTEGER).build(), ConfigProvider.empty()
30+
.add("NAME", SqlTypeName.VARCHAR).add("AGE", SqlTypeName.INTEGER)
31+
.add("EMPID", SqlTypeName.BIGINT).build(), ConfigProvider.empty()
3132
.with("connector", "datagen").with("number-of-rows", "10").with("fields.AGE.min", "0")
3233
.with("fields.AGE.max", "100").with("fields.NAME.length", "5").config("PERSON")));
3334
datagenTables.put("COMPANY", new HopTable("DATAGEN", "COMPANY", (new RelDataTypeFactory.Builder(typeFactory))

0 commit comments

Comments
 (0)