Skip to content

Commit e417714

Browse files
authored
Support v2 CSV export in _collect_read_ids!. (#245)
1 parent d467c84 commit e417714

1 file changed

Lines changed: 17 additions & 2 deletions

File tree

sdks/julia/LogicalQueryProtocol.jl/src/properties.jl

Lines changed: 17 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -154,8 +154,23 @@ function _collect_read_ids!(ids::Set{LQPRelationId}, _export::Export)
154154
config = _export.export_config
155155
if config.name == :csv_config
156156
csv_config = config[]::ExportCSVConfig
157-
for column in csv_config.data_columns
158-
!isnothing(column.column_data) && push!(ids, persistent_id(column.column_data))
157+
if isempty(csv_config.data_columns)
158+
# v2: data source is specified via csv_source
159+
src = isnothing(csv_config.csv_source) ? nothing : csv_config.csv_source.csv_source
160+
if !isnothing(src)
161+
if src.name == :gnf_columns
162+
for column in (src[]::ExportCSVColumns).columns
163+
!isnothing(column.column_data) && push!(ids, persistent_id(column.column_data))
164+
end
165+
elseif src.name == :table_def
166+
push!(ids, persistent_id(src[]::RelationId))
167+
end
168+
end
169+
else
170+
# v1: data source is specified via data_columns
171+
for column in csv_config.data_columns
172+
!isnothing(column.column_data) && push!(ids, persistent_id(column.column_data))
173+
end
159174
end
160175
elseif config.name == :iceberg_config
161176
iceberg_config = config[]::ExportIcebergConfig

0 commit comments

Comments
 (0)