From 3c4994979667c4ba09110aa391c23eec8a045a05 Mon Sep 17 00:00:00 2001 From: Ming-Hung Tsai Date: Mon, 17 Aug 2020 14:10:55 +0800 Subject: [PATCH] [space-maps/disk] Support ignoring broken bitmaps on counting index_store --- persistent-data/space-maps/disk.cc | 11 ++++++++--- 1 file changed, 8 insertions(+), 3 deletions(-) diff --git a/persistent-data/space-maps/disk.cc b/persistent-data/space-maps/disk.cc index 6e6fc71..2af7658 100644 --- a/persistent-data/space-maps/disk.cc +++ b/persistent-data/space-maps/disk.cc @@ -666,9 +666,14 @@ namespace { if (!ie.blocknr_) return; - block_manager::read_ref rr = tm_.read_lock(ie.blocknr_, bitmap_validator_); - if (rr.data()) - bc_.inc(ie.blocknr_); + try { + block_manager::read_ref rr = tm_.read_lock(ie.blocknr_, bitmap_validator_); + if (rr.data()) + bc_.inc(ie.blocknr_); + } catch (std::exception &e) { + if (bc_.stop_on_error()) + throw; + } } private: