in timescaledb-connector/src/main/java/com/epam/deltix/timebase/connector/service/timescale/TimescaleSchemaDefinition.java [45:79]
public TimescaleSchema getTimebaseSchemaDefinition(ClassDescriptor[] descriptors, String streamName) {
TimescaleSchema schema = new TimescaleSchema();
schema.setName(streamName);
List<RecordClassDescriptor> baseClassDescriptors = RecordClassDescriptorUtils.getBaseClassDescriptors(descriptors);
schema.setColumns(descriptorService.getColumns(baseClassDescriptors));
schema.setPolymorphic(baseClassDescriptors.size() > 1 ? Boolean.TRUE : Boolean.FALSE);
//add Id, EventTime, symbol, instrumentType
TimescaleColumn id = TimescaleColumn.builder()
.dataType(TimescaleColumn.TimescaleDataType.SERIAL)
.relatedDescriptors(Collections.emptyList())
.name("Id")
.build();
schema.getColumns().add(id);
TimescaleColumn eventTime = TimescaleColumn.builder()
.dataType(TimescaleColumn.TimescaleDataType.DATETIME)
.relatedDescriptors(Collections.emptyList())
.name("EventTime")
.build();
schema.getColumns().add(eventTime);
TimescaleColumn symbol = TimescaleColumn.builder()
.dataType(TimescaleColumn.TimescaleDataType.VARCHAR)
.relatedDescriptors(Collections.emptyList())
.name("Symbol")
.build();
schema.getColumns().add(symbol);
//end
schema.setPrimaryKey(new TimescaleColumn[]{id, eventTime});
return schema;
}