@@ -410,22 +410,18 @@ Status ArrayDirectory::load() {
410410 consolidated_commit_uris_set_);
411411 } else {
412412 // Process root dir.
413- auto && [st2, fragment_uris_v1_v11] =
414- load_root_dir_uris_v1_v11 (root_dir_uris);
415- RETURN_NOT_OK (st2);
413+ auto fragment_uris_v1_v11 = load_root_dir_uris_v1_v11 (root_dir_uris);
416414
417415 // Process commit dir.
418- auto && [st3, fragment_uris_v12_or_higher] =
419- load_commits_dir_uris_v12_or_higher (
420- commits_dir_uris, consolidated_commit_uris.value ());
421- RETURN_NOT_OK (st3);
416+ auto fragment_uris_v12_or_higher = load_commits_dir_uris_v12_or_higher (
417+ commits_dir_uris, consolidated_commit_uris.value ());
422418
423419 // Append the two fragment URI vectors together
424- unfiltered_fragment_uris_ = std::move (fragment_uris_v1_v11. value () );
420+ unfiltered_fragment_uris_ = std::move (fragment_uris_v1_v11);
425421 unfiltered_fragment_uris_.insert (
426422 unfiltered_fragment_uris_.end (),
427- fragment_uris_v12_or_higher.value (). begin (),
428- fragment_uris_v12_or_higher.value (). end ());
423+ fragment_uris_v12_or_higher.begin (),
424+ fragment_uris_v12_or_higher.end ());
429425
430426 // Merge the fragment meta URIs.
431427 std::copy (
@@ -451,18 +447,15 @@ Status ArrayDirectory::load() {
451447const ArrayDirectory::FilteredFragmentUris
452448ArrayDirectory::filtered_fragment_uris (const bool full_overlap_only) const {
453449 // Compute fragment URIs and the vacuum file URIs to vacuum
454- auto && [st, fragment_uris_to_vacuum, fragment_vac_uris_to_vacuum] =
450+ auto && [fragment_uris_to_vacuum, fragment_vac_uris_to_vacuum] =
455451 compute_uris_to_vacuum (full_overlap_only, unfiltered_fragment_uris_);
456- if (!st.ok ()) {
457- throw std::logic_error (st.message ());
458- }
459452
460453 // Compute commit URIs to vacuum, which only need to be done for fragment
461454 // vacuuming mode.
462455 std::vector<URI> commit_uris_to_vacuum;
463456 std::vector<URI> commit_uris_to_ignore;
464457 if (mode_ == ArrayDirectoryMode::VACUUM_FRAGMENTS) {
465- for (auto & uri : fragment_uris_to_vacuum. value () ) {
458+ for (auto & uri : fragment_uris_to_vacuum) {
466459 auto commit_uri = get_commit_uri (uri);
467460 if (consolidated_commit_uris_set_.count (commit_uri.c_str ()) == 0 ) {
468461 commit_uris_to_vacuum.emplace_back (commit_uri);
@@ -473,20 +466,15 @@ ArrayDirectory::filtered_fragment_uris(const bool full_overlap_only) const {
473466 }
474467
475468 // Compute filtered fragment URIs
476- auto && [st2, fragment_filtered_uris] = compute_filtered_uris (
477- full_overlap_only,
478- unfiltered_fragment_uris_,
479- fragment_uris_to_vacuum.value ());
480- if (!st2.ok ()) {
481- throw std::logic_error (st.message ());
482- }
469+ auto fragment_filtered_uris = compute_filtered_uris (
470+ full_overlap_only, unfiltered_fragment_uris_, fragment_uris_to_vacuum);
483471
484472 return FilteredFragmentUris (
485- std::move (fragment_uris_to_vacuum. value () ),
473+ std::move (fragment_uris_to_vacuum),
486474 std::move (commit_uris_to_vacuum),
487475 std::move (commit_uris_to_ignore),
488- std::move (fragment_vac_uris_to_vacuum. value () ),
489- std::move (fragment_filtered_uris. value () ));
476+ std::move (fragment_vac_uris_to_vacuum),
477+ std::move (fragment_filtered_uris));
490478}
491479
492480const std::vector<URI>& ArrayDirectory::fragment_meta_uris () const {
@@ -610,16 +598,14 @@ std::vector<URI> ArrayDirectory::list_root_dir_uris() {
610598 return ls (uri_);
611599}
612600
613- tuple<Status, optional<std::vector<URI>>>
614- ArrayDirectory::load_root_dir_uris_v1_v11 (
601+ std::vector<URI> ArrayDirectory::load_root_dir_uris_v1_v11 (
615602 const std::vector<URI>& root_dir_uris) {
616603 // Compute the fragment URIs
617- auto && [st1, fragment_uris] = compute_fragment_uris_v1_v11 (root_dir_uris);
618- RETURN_NOT_OK_TUPLE (st1, nullopt );
604+ auto fragment_uris = compute_fragment_uris_v1_v11 (root_dir_uris);
619605
620606 fragment_meta_uris_ = compute_fragment_meta_uris (root_dir_uris);
621607
622- return { Status::Ok (), fragment_uris. value ()} ;
608+ return fragment_uris;
623609}
624610
625611std::vector<URI> ArrayDirectory::list_commits_dir_uris () {
@@ -628,8 +614,7 @@ std::vector<URI> ArrayDirectory::list_commits_dir_uris() {
628614 return ls (uri_.join_path (constants::array_commits_dir_name));
629615}
630616
631- tuple<Status, optional<std::vector<URI>>>
632- ArrayDirectory::load_commits_dir_uris_v12_or_higher (
617+ std::vector<URI> ArrayDirectory::load_commits_dir_uris_v12_or_higher (
633618 const std::vector<URI>& commits_dir_uris,
634619 const std::vector<URI>& consolidated_uris) {
635620 std::vector<URI> fragment_uris;
@@ -682,7 +667,7 @@ ArrayDirectory::load_commits_dir_uris_v12_or_higher(
682667 }
683668 }
684669
685- return { Status::Ok (), fragment_uris} ;
670+ return fragment_uris;
686671}
687672
688673std::vector<URI>
@@ -827,18 +812,12 @@ void ArrayDirectory::load_array_meta_uris() {
827812 }
828813
829814 // Compute array metadata URIs and vacuum URIs to vacuum. */
830- auto && [st1, array_meta_uris_to_vacuum, array_meta_vac_uris_to_vacuum] =
815+ std::tie (array_meta_uris_to_vacuum_, array_meta_vac_uris_to_vacuum_) =
831816 compute_uris_to_vacuum (true , array_meta_dir_uris);
832- throw_if_not_ok (st1);
833- array_meta_uris_to_vacuum_ = std::move (array_meta_uris_to_vacuum.value ());
834- array_meta_vac_uris_to_vacuum_ =
835- std::move (array_meta_vac_uris_to_vacuum.value ());
836817
837818 // Compute filtered array metadata URIs
838- auto && [st2, array_meta_filtered_uris] = compute_filtered_uris (
819+ array_meta_uris_ = compute_filtered_uris (
839820 true , array_meta_dir_uris, array_meta_uris_to_vacuum_);
840- throw_if_not_ok (st2);
841- array_meta_uris_ = std::move (array_meta_filtered_uris.value ());
842821 array_meta_dir_uris.clear ();
843822}
844823
@@ -901,8 +880,7 @@ void ArrayDirectory::load_commits_uris_to_consolidate(
901880 }
902881}
903882
904- tuple<Status, optional<std::vector<URI>>>
905- ArrayDirectory::compute_fragment_uris_v1_v11 (
883+ std::vector<URI> ArrayDirectory::compute_fragment_uris_v1_v11 (
906884 const std::vector<URI>& array_dir_uris) const {
907885 std::vector<URI> fragment_uris;
908886
@@ -937,7 +915,7 @@ ArrayDirectory::compute_fragment_uris_v1_v11(
937915 }
938916 }
939917
940- return { Status::Ok (), fragment_uris} ;
918+ return fragment_uris;
941919}
942920
943921std::vector<URI> ArrayDirectory::compute_fragment_meta_uris (
@@ -994,7 +972,7 @@ bool ArrayDirectory::timestamps_overlap(
994972 }
995973}
996974
997- tuple<Status, optional< std::vector<URI>>, optional< std::vector<URI> >>
975+ tuple<std::vector<URI>, std::vector<URI>>
998976ArrayDirectory::compute_uris_to_vacuum (
999977 const bool full_overlap_only, const std::vector<URI>& uris) const {
1000978 // Get vacuum URIs
@@ -1095,19 +1073,18 @@ ArrayDirectory::compute_uris_to_vacuum(
10951073 vac_uris_to_vacuum.emplace_back (vac_files[i]);
10961074 }
10971075
1098- return {Status::Ok (), uris_to_vacuum, vac_uris_to_vacuum};
1076+ return {uris_to_vacuum, vac_uris_to_vacuum};
10991077}
11001078
1101- tuple<Status, optional<std::vector<TimestampedURI>>>
1102- ArrayDirectory::compute_filtered_uris (
1079+ std::vector<TimestampedURI> ArrayDirectory::compute_filtered_uris (
11031080 const bool full_overlap_only,
11041081 const std::vector<URI>& uris,
11051082 const std::vector<URI>& to_ignore) const {
11061083 std::vector<TimestampedURI> filtered_uris;
11071084
11081085 // Do nothing if there are not enough URIs
11091086 if (uris.empty ()) {
1110- return { Status::Ok (), filtered_uris} ;
1087+ return filtered_uris;
11111088 }
11121089
11131090 // Get the URIs that must be ignored
@@ -1156,7 +1133,7 @@ ArrayDirectory::compute_filtered_uris(
11561133 // Sort the names based on the timestamps
11571134 std::sort (filtered_uris.begin (), filtered_uris.end ());
11581135
1159- return { Status::Ok (), filtered_uris} ;
1136+ return filtered_uris;
11601137}
11611138
11621139Status ArrayDirectory::compute_array_schema_uris (
0 commit comments