]> git.proxmox.com Git - ceph.git/blame - ceph/src/os/filestore/ZFSFileStoreBackend.h
bump version to 12.0.3-pve3
[ceph.git] / ceph / src / os / filestore / ZFSFileStoreBackend.h
CommitLineData
7c673cae
FG
1// -*- mode:C++; tab-width:8; c-basic-offset:2; indent-tabs-mode:t -*-
2// vim: ts=8 sw=2 smarttab
3
4#ifndef CEPH_ZFSFILESTOREBACKEND_H
5#define CEPH_ZFSFILESTOREBACKEND_H
6
7#ifdef HAVE_LIBZFS
8#include "GenericFileStoreBackend.h"
9#include "os/fs/ZFS.h"
10
11class ZFSFileStoreBackend : public GenericFileStoreBackend {
12private:
13 ZFS zfs;
14 ZFS::Handle *base_zh;
15 ZFS::Handle *current_zh;
16 bool m_filestore_zfs_snap;
17 int update_current_zh();
18public:
19 explicit ZFSFileStoreBackend(FileStore *fs);
20 ~ZFSFileStoreBackend();
21 int detect_features();
22 bool can_checkpoint();
23 int create_current();
24 int list_checkpoints(list<string>& ls);
25 int create_checkpoint(const string& name, uint64_t *cid);
26 int rollback_to(const string& name);
27 int destroy_checkpoint(const string& name);
28};
29#endif
30#endif