Skip to content

Commit 9913f00

Browse files
allow nullable column type in column-lineaeg
Signed-off-by: Pawel Leszczynski <leszczynski.pawel@gmail.com>
1 parent dedfe48 commit 9913f00

3 files changed

Lines changed: 11 additions & 2 deletions

File tree

api/src/main/java/marquez/db/mappers/ColumnLineageNodeDataMapper.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -39,7 +39,7 @@ public ColumnLineageNodeData map(ResultSet results, StatementContext ctx) throws
3939
stringOrThrow(results, Columns.DATASET_NAME),
4040
uuidOrThrow(results, Columns.DATASET_VERSION_UUID),
4141
stringOrThrow(results, Columns.FIELD_NAME),
42-
stringOrThrow(results, Columns.TYPE),
42+
stringOrNull(results, Columns.TYPE),
4343
stringOrNull(results, TRANSFORMATION_DESCRIPTION),
4444
stringOrNull(results, TRANSFORMATION_TYPE),
4545
toInputFields(results, "inputFields"));

api/src/main/java/marquez/db/models/ColumnLineageNodeData.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -19,7 +19,7 @@ public class ColumnLineageNodeData implements NodeData {
1919
@NonNull String dataset;
2020
@Nullable UUID datasetVersion;
2121
@NonNull String field;
22-
@NonNull String fieldType;
22+
@Nullable String fieldType;
2323
String transformationDescription;
2424
String transformationType;
2525
@NonNull List<InputFieldNodeData> inputFields;

api/src/test/java/marquez/db/ColumnLineageDaoTest.java

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -474,6 +474,15 @@ void testGetLineageWhenJobRunMultipleTimes() {
474474
.isEqualTo(lineageRow.getInputs().get().get(0).getDatasetVersionRow().getUuid());
475475
}
476476

477+
@Test
478+
void testGetLineageWhenDataTypeIsEmpty() {
479+
Dataset datasetBWithNullType = getDatasetB();
480+
datasetBWithNullType.getFacets().getSchema().getFields().get(0).setType(null);
481+
482+
UpdateLineageRow lineageRow = createLineage(openLineageDao, dataset_A, datasetBWithNullType);
483+
getColumnLineage(lineageRow, "col_c");
484+
}
485+
477486
private Set<ColumnLineageNodeData> getColumnLineage(UpdateLineageRow lineageRow, String field) {
478487
UpdateLineageRow.DatasetRecord datasetRecord = lineageRow.getOutputs().get().get(0);
479488
UUID field_UUID = fieldDao.findUuid(datasetRecord.getDatasetRow().getUuid(), field).get();

0 commit comments

Comments
 (0)