@@ -410,14 +410,14 @@ pub(super) mod _serde {
410410 ( Some ( file) , None ) => file,
411411 ( Some ( _) , Some ( _) ) => {
412412 return Err ( Error :: new (
413- ErrorKind :: Unexpected ,
414- "v1 snapshot invariant violated: manifest_list and manifests are both set " ,
413+ ErrorKind :: DataInvalid ,
414+ "Invalid v1 snapshot, when manifest list provided, manifest files should be omitted " ,
415415 ) ) ;
416416 }
417417 ( None , _) => {
418418 return Err ( Error :: new (
419- ErrorKind :: FeatureUnsupported ,
420- "v1 snapshot invariant violated: manifest_list is missing " ,
419+ ErrorKind :: DataInvalid ,
420+ "Unsupported v1 snapshot, only manifest list is supported " ,
421421 ) ) ;
422422 }
423423 } ,
@@ -648,6 +648,10 @@ mod tests {
648648
649649 let result = serde_json:: from_str :: < TableMetadata > ( metadata) ;
650650 assert ! ( result. is_err( ) ) ;
651+ assert_eq ! (
652+ result. unwrap_err( ) . to_string( ) ,
653+ "DataInvalid => Invalid v1 snapshot, when manifest list provided, manifest files should be omitted"
654+ )
651655 }
652656
653657 {
@@ -679,6 +683,10 @@ mod tests {
679683 "# ;
680684 let result = serde_json:: from_str :: < TableMetadata > ( metadata) ;
681685 assert ! ( result. is_err( ) ) ;
686+ assert_eq ! (
687+ result. unwrap_err( ) . to_string( ) ,
688+ "DataInvalid => Unsupported v1 snapshot, only manifest list is supported"
689+ )
682690 }
683691 }
684692
0 commit comments