CernVM-FS
2.12.0
|
#include <libcvmfs_cache.h>
Public Attributes | |
int(* | cvmcache_chrefcnt )(struct cvmcache_hash *id, int32_t change_by) |
int(* | cvmcache_obj_info )(struct cvmcache_hash *id, struct cvmcache_object_info *info) |
int(* | cvmcache_pread )(struct cvmcache_hash *id, uint64_t offset, uint32_t *size, unsigned char *buffer) |
int(* | cvmcache_start_txn )(struct cvmcache_hash *id, uint64_t txn_id, struct cvmcache_object_info *info) |
int(* | cvmcache_write_txn )(uint64_t txn_id, unsigned char *buffer, uint32_t size) |
int(* | cvmcache_commit_txn )(uint64_t txn_id) |
int(* | cvmcache_abort_txn )(uint64_t txn_id) |
int(* | cvmcache_info )(struct cvmcache_info *info) |
int(* | cvmcache_shrink )(uint64_t shrink_to, uint64_t *used) |
int(* | cvmcache_listing_begin )(uint64_t lst_id, enum cvmcache_object_type type) |
int(* | cvmcache_listing_next )(int64_t lst_id, struct cvmcache_object_info *item) |
int(* | cvmcache_listing_end )(int64_t lst_id) |
int(* | cvmcache_breadcrumb_store )(const char *fqrn, const cvmcache_breadcrumb *breadcrumb) |
int(* | cvmcache_breadcrumb_load )(const char *fqrn, cvmcache_breadcrumb *breadcrumb) |
int | capabilities |
According to capabilities, some of the callbacks can be NULL
Definition at line 129 of file libcvmfs_cache.h.
int cvmcache_callbacks::capabilities |
Definition at line 183 of file libcvmfs_cache.h.
Referenced by anonymous_namespace{libcvmfs_cache.cc}::ForwardCachePlugin::ForwardCachePlugin(), and main().
int(* cvmcache_callbacks::cvmcache_abort_txn)(uint64_t txn_id) |
Definition at line 164 of file libcvmfs_cache.h.
Referenced by anonymous_namespace{libcvmfs_cache.cc}::ForwardCachePlugin::ForwardCachePlugin(), and main().
int(* cvmcache_callbacks::cvmcache_breadcrumb_load)(const char *fqrn, cvmcache_breadcrumb *breadcrumb) |
Definition at line 180 of file libcvmfs_cache.h.
Referenced by anonymous_namespace{libcvmfs_cache.cc}::ForwardCachePlugin::ForwardCachePlugin(), and main().
int(* cvmcache_callbacks::cvmcache_breadcrumb_store)(const char *fqrn, const cvmcache_breadcrumb *breadcrumb) |
Definition at line 178 of file libcvmfs_cache.h.
Referenced by anonymous_namespace{libcvmfs_cache.cc}::ForwardCachePlugin::ForwardCachePlugin(), and main().
int(* cvmcache_callbacks::cvmcache_chrefcnt)(struct cvmcache_hash *id, int32_t change_by) |
Returns CVMCACHE_STATUS_OK or CVMCACHE_STATUS_BADCOUNT if objects reference counter would fall below zero.
Definition at line 134 of file libcvmfs_cache.h.
Referenced by anonymous_namespace{libcvmfs_cache.cc}::ForwardCachePlugin::ForwardCachePlugin(), and main().
int(* cvmcache_callbacks::cvmcache_commit_txn)(uint64_t txn_id) |
Only as of commit the object must appear to other clients.
Definition at line 163 of file libcvmfs_cache.h.
Referenced by anonymous_namespace{libcvmfs_cache.cc}::ForwardCachePlugin::ForwardCachePlugin(), and main().
int(* cvmcache_callbacks::cvmcache_info)(struct cvmcache_info *info) |
Definition at line 166 of file libcvmfs_cache.h.
Referenced by anonymous_namespace{libcvmfs_cache.cc}::ForwardCachePlugin::ForwardCachePlugin(), and main().
int(* cvmcache_callbacks::cvmcache_listing_begin)(uint64_t lst_id, enum cvmcache_object_type type) |
Listing can be "approximate", e.g. if files are removed and/or added in the meantime, this may or may not be reflected.
Definition at line 172 of file libcvmfs_cache.h.
Referenced by anonymous_namespace{libcvmfs_cache.cc}::ForwardCachePlugin::ForwardCachePlugin(), and main().
int(* cvmcache_callbacks::cvmcache_listing_end)(int64_t lst_id) |
Definition at line 176 of file libcvmfs_cache.h.
Referenced by anonymous_namespace{libcvmfs_cache.cc}::ForwardCachePlugin::ForwardCachePlugin(), and main().
int(* cvmcache_callbacks::cvmcache_listing_next)(int64_t lst_id, struct cvmcache_object_info *item) |
Definition at line 174 of file libcvmfs_cache.h.
Referenced by anonymous_namespace{libcvmfs_cache.cc}::ForwardCachePlugin::ForwardCachePlugin(), and main().
int(* cvmcache_callbacks::cvmcache_obj_info)(struct cvmcache_hash *id, struct cvmcache_object_info *info) |
Needs to fill only the size of the object.
Definition at line 138 of file libcvmfs_cache.h.
Referenced by anonymous_namespace{libcvmfs_cache.cc}::ForwardCachePlugin::ForwardCachePlugin(), and main().
int(* cvmcache_callbacks::cvmcache_pread)(struct cvmcache_hash *id, uint64_t offset, uint32_t *size, unsigned char *buffer) |
Returns CVMCACHE_STATUS_OUTOFBOUNDS if offset is larger than file size. Otherwise must work if object's reference counter is larger than zero.
Definition at line 144 of file libcvmfs_cache.h.
Referenced by anonymous_namespace{libcvmfs_cache.cc}::ForwardCachePlugin::ForwardCachePlugin(), and main().
int(* cvmcache_callbacks::cvmcache_shrink)(uint64_t shrink_to, uint64_t *used) |
Definition at line 167 of file libcvmfs_cache.h.
Referenced by anonymous_namespace{libcvmfs_cache.cc}::ForwardCachePlugin::ForwardCachePlugin(), and main().
int(* cvmcache_callbacks::cvmcache_start_txn)(struct cvmcache_hash *id, uint64_t txn_id, struct cvmcache_object_info *info) |
The same object might be uploaded concurrently by multiple users.
Definition at line 151 of file libcvmfs_cache.h.
Referenced by anonymous_namespace{libcvmfs_cache.cc}::ForwardCachePlugin::ForwardCachePlugin(), and main().
int(* cvmcache_callbacks::cvmcache_write_txn)(uint64_t txn_id, unsigned char *buffer, uint32_t size) |
A full block is appended except possibly for the file's last block
Definition at line 157 of file libcvmfs_cache.h.
Referenced by anonymous_namespace{libcvmfs_cache.cc}::ForwardCachePlugin::ForwardCachePlugin(), and main().