* @param next [out] next item sorts >= this value
* @return zero on success, or negative error
*/
- virtual int collection_list(const coll_t& c, ghobject_t start, ghobject_t end,
+ virtual int collection_list(const coll_t& c,
+ const ghobject_t& start, const ghobject_t& end,
bool sort_bitwise, int max,
vector<ghobject_t> *ls, ghobject_t *next) = 0;
virtual int collection_list(CollectionHandle &c,
- ghobject_t start, ghobject_t end,
+ const ghobject_t& start, const ghobject_t& end,
bool sort_bitwise, int max,
vector<ghobject_t> *ls, ghobject_t *next) {
return collection_list(c->get_cid(), start, end, sort_bitwise, max, ls, next);
}
int BlueStore::collection_list(
- const coll_t& cid, ghobject_t start, ghobject_t end,
+ const coll_t& cid, const ghobject_t& start, const ghobject_t& end,
bool sort_bitwise, int max,
vector<ghobject_t> *ls, ghobject_t *pnext)
{
}
int BlueStore::collection_list(
- CollectionHandle &c_, ghobject_t start, ghobject_t end,
+ CollectionHandle &c_, const ghobject_t& start, const ghobject_t& end,
bool sort_bitwise, int max,
vector<ghobject_t> *ls, ghobject_t *pnext)
{
int collection_empty(const coll_t& c, bool *empty) override;
int collection_bits(const coll_t& c) override;
- int collection_list(const coll_t& cid, ghobject_t start, ghobject_t end,
+ int collection_list(const coll_t& cid,
+ const ghobject_t& start,
+ const ghobject_t& end,
bool sort_bitwise, int max,
vector<ghobject_t> *ls, ghobject_t *next) override;
- int collection_list(CollectionHandle &c, ghobject_t start, ghobject_t end,
+ int collection_list(CollectionHandle &c,
+ const ghobject_t& start,
+ const ghobject_t& end,
bool sort_bitwise, int max,
vector<ghobject_t> *ls, ghobject_t *next) override;
tracepoint(objectstore, collection_empty_exit, *empty);
return 0;
}
-int FileStore::collection_list(const coll_t& c, ghobject_t start, ghobject_t end,
+int FileStore::collection_list(const coll_t& c,
+ const ghobject_t& orig_start,
+ const ghobject_t& end,
bool sort_bitwise, int max,
vector<ghobject_t> *ls, ghobject_t *next)
{
+ ghobject_t start = orig_start;
if (start.is_max())
return 0;
// collections
using ObjectStore::collection_list;
- int collection_list(const coll_t& c, ghobject_t start, ghobject_t end,
+ int collection_list(const coll_t& c,
+ const ghobject_t& start, const ghobject_t& end,
bool sort_bitwise, int max,
vector<ghobject_t> *ls, ghobject_t *next);
int list_collections(vector<coll_t>& ls);
}
int KStore::collection_list(
- const coll_t& cid, ghobject_t start, ghobject_t end,
+ const coll_t& cid, const ghobject_t& start, const ghobject_t& end,
bool sort_bitwise, int max,
vector<ghobject_t> *ls, ghobject_t *pnext)
{
}
int KStore::collection_list(
- CollectionHandle &c_, ghobject_t start, ghobject_t end,
+ CollectionHandle &c_, const ghobject_t& start, const ghobject_t& end,
bool sort_bitwise, int max,
vector<ghobject_t> *ls, ghobject_t *pnext)
}
int KStore::_collection_list(
- Collection* c, ghobject_t start, ghobject_t end,
+ Collection* c, const ghobject_t& start, const ghobject_t& end,
bool sort_bitwise, int max,
vector<ghobject_t> *ls, ghobject_t *pnext)
{
uint64_t offset, bufferlist& bl);
void _do_remove_stripe(TransContext *txc, OnodeRef o, uint64_t offset);
- int _collection_list(Collection *c, ghobject_t start, ghobject_t end,
+ int _collection_list(
+ Collection *c, const ghobject_t& start, const ghobject_t& end,
bool sort_bitwise, int max, vector<ghobject_t> *ls, ghobject_t *next);
public:
bool collection_exists(const coll_t& c);
int collection_empty(const coll_t& c, bool *empty);
- int collection_list(const coll_t& cid, ghobject_t start, ghobject_t end,
- bool sort_bitwise, int max,
- vector<ghobject_t> *ls, ghobject_t *next) override;
- int collection_list(CollectionHandle &c, ghobject_t start, ghobject_t end,
- bool sort_bitwise, int max,
- vector<ghobject_t> *ls, ghobject_t *next) override;
+ int collection_list(
+ const coll_t& cid, const ghobject_t& start, const ghobject_t& end,
+ bool sort_bitwise, int max,
+ vector<ghobject_t> *ls, ghobject_t *next) override;
+ int collection_list(
+ CollectionHandle &c, const ghobject_t& start, const ghobject_t& end,
+ bool sort_bitwise, int max,
+ vector<ghobject_t> *ls, ghobject_t *next) override;
using ObjectStore::omap_get;
int omap_get(
return 0;
}
-int MemStore::collection_list(const coll_t& cid, ghobject_t start, ghobject_t end,
+int MemStore::collection_list(const coll_t& cid,
+ const ghobject_t& start,
+ const ghobject_t& end,
bool sort_bitwise, int max,
vector<ghobject_t> *ls, ghobject_t *next)
{
bool collection_exists(const coll_t& c) override;
int collection_empty(const coll_t& c, bool *empty) override;
using ObjectStore::collection_list;
- int collection_list(const coll_t& cid, ghobject_t start, ghobject_t end,
+ int collection_list(const coll_t& cid,
+ const ghobject_t& start, const ghobject_t& end,
bool sort_bitwise, int max,
vector<ghobject_t> *ls, ghobject_t *next) override;