]> git.proxmox.com Git - ceph.git/blame - ceph/src/rgw/services/svc_bilog_rados.h
update source to Ceph Pacific 16.2.2
[ceph.git] / ceph / src / rgw / services / svc_bilog_rados.h
CommitLineData
9f95a23c
TL
1
2// -*- mode:C++; tab-width:8; c-basic-offset:2; indent-tabs-mode:t -*-
3// vim: ts=8 sw=2 smarttab ft=cpp
4
5/*
6 * Ceph - scalable distributed file system
7 *
8 * Copyright (C) 2019 Red Hat, Inc.
9 *
10 * This is free software; you can redistribute it and/or
11 * modify it under the terms of the GNU Lesser General Public
12 * License version 2.1, as published by the Free Software
13 * Foundation. See file COPYING.
14 *
15 */
16
17
18#pragma once
19
20#include "rgw/rgw_service.h"
21
22#include "svc_rados.h"
23
24
25
26
27class RGWSI_BILog_RADOS : public RGWServiceInstance
28{
29public:
30 struct Svc {
31 RGWSI_BucketIndex_RADOS *bi{nullptr};
32 } svc;
33
34 RGWSI_BILog_RADOS(CephContext *cct);
35
36 void init(RGWSI_BucketIndex_RADOS *bi_rados_svc);
37
38 int log_start(const RGWBucketInfo& bucket_info, int shard_id);
39 int log_stop(const RGWBucketInfo& bucket_info, int shard_id);
40
41 int log_trim(const RGWBucketInfo& bucket_info,
42 int shard_id,
43 std::string& start_marker,
44 std::string& end_marker);
45 int log_list(const RGWBucketInfo& bucket_info,
46 int shard_id,
47 std::string& marker,
48 uint32_t max,
49 std::list<rgw_bi_log_entry>& result,
50 bool *truncated);
51
52 int get_log_status(const RGWBucketInfo& bucket_info,
53 int shard_id,
f67539c2
TL
54 map<int, string> *markers,
55 optional_yield y);
9f95a23c
TL
56};
57