return EINVAL;
}
+ if (num_shards > (int)store->get_max_bucket_shards()) {
+ cerr << "ERROR: num_shards too high, max value: " << store->get_max_bucket_shards() << std::endl;
+ return EINVAL;
+ }
+
RGWBucketInfo bucket_info;
map<string, bufferlist> attrs;
int ret = init_bucket(bucket_name, bucket_id, bucket_info, bucket, &attrs);
#define RGW_BUCKET_INSTANCE_MD_PREFIX ".bucket.meta."
+#define MAX_BUCKET_INDEX_SHARDS_PRIME 7877
+
static inline void prepend_bucket_marker(rgw_bucket& bucket, const string& orig_oid, string& oid)
{
if (bucket.marker.empty() || orig_oid.empty()) {
int get_required_alignment(rgw_bucket& bucket, uint64_t *alignment);
int get_max_chunk_size(rgw_bucket& bucket, uint64_t *max_chunk_size);
+ uint32_t get_max_bucket_shards() {
+ return MAX_BUCKET_INDEX_SHARDS_PRIME;
+ }
+
int list_raw_objects(rgw_bucket& pool, const string& prefix_filter, int max,
RGWListRawObjsCtx& ctx, list<string>& oids,
bool *is_truncated);