@@ -165,40 +165,43 @@ impl MetadataProvider for DuckdbMetadataProvider {
165165 let mut stmt = conn. prepare ( SQL_GET_DATA_FILES ) ?;
166166
167167 let files = stmt
168- . query_map ( [ table_id, snapshot_id, snapshot_id, table_id] , |row| {
169- // Parse data file (columns 0-5)
170- let _data_file_id: i64 = row. get ( 0 ) ?;
171- let data_file = DuckLakeFileData {
172- path : row. get ( 1 ) ?,
173- path_is_relative : row. get ( 2 ) ?,
174- file_size_bytes : row. get ( 3 ) ?,
175- footer_size : row. get ( 4 ) ?,
176- encryption_key : row. get ( 5 ) ?,
177- } ;
178-
179- // Parse delete file (columns 6-12) if exists
180- let delete_file = if let Ok ( Some ( _) ) = row. get :: < _ , Option < i64 > > ( 6 ) {
181- Some ( DuckLakeFileData {
182- path : row. get ( 7 ) ?,
183- path_is_relative : row. get ( 8 ) ?,
184- file_size_bytes : row. get ( 9 ) ?,
185- footer_size : row. get ( 10 ) ?,
186- encryption_key : row. get ( 11 ) ?,
168+ . query_map (
169+ [ table_id, snapshot_id, snapshot_id, table_id, snapshot_id, snapshot_id] ,
170+ |row| {
171+ // Parse data file (columns 0-5)
172+ let _data_file_id: i64 = row. get ( 0 ) ?;
173+ let data_file = DuckLakeFileData {
174+ path : row. get ( 1 ) ?,
175+ path_is_relative : row. get ( 2 ) ?,
176+ file_size_bytes : row. get ( 3 ) ?,
177+ footer_size : row. get ( 4 ) ?,
178+ encryption_key : row. get ( 5 ) ?,
179+ } ;
180+
181+ // Parse delete file (columns 6-12) if exists
182+ let delete_file = if let Ok ( Some ( _) ) = row. get :: < _ , Option < i64 > > ( 6 ) {
183+ Some ( DuckLakeFileData {
184+ path : row. get ( 7 ) ?,
185+ path_is_relative : row. get ( 8 ) ?,
186+ file_size_bytes : row. get ( 9 ) ?,
187+ footer_size : row. get ( 10 ) ?,
188+ encryption_key : row. get ( 11 ) ?,
189+ } )
190+ } else {
191+ None
192+ } ;
193+
194+ let _delete_count: Option < i64 > = row. get ( 12 ) ?;
195+
196+ Ok ( DuckLakeTableFile {
197+ file : data_file,
198+ delete_file,
199+ row_id_start : None ,
200+ snapshot_id : Some ( snapshot_id) ,
201+ max_row_count : None , // Set to None until we have actual row count from data file metadata
187202 } )
188- } else {
189- None
190- } ;
191-
192- let _delete_count: Option < i64 > = row. get ( 12 ) ?;
193-
194- Ok ( DuckLakeTableFile {
195- file : data_file,
196- delete_file,
197- row_id_start : None ,
198- snapshot_id : Some ( snapshot_id) ,
199- max_row_count : None , // Set to None until we have actual row count from data file metadata
200- } )
201- } ) ?
203+ } ,
204+ ) ?
202205 . collect :: < Result < Vec < _ > , _ > > ( ) ?;
203206
204207 Ok ( files)
@@ -332,6 +335,8 @@ impl MetadataProvider for DuckdbMetadataProvider {
332335 snapshot_id,
333336 snapshot_id,
334337 snapshot_id,
338+ snapshot_id,
339+ snapshot_id,
335340 snapshot_id
336341 ] ,
337342 |row| {
0 commit comments