diff options
author | Jeff Darcy <jdarcy@redhat.com> | 2016-02-08 13:30:49 -0500 |
---|---|---|
committer | Jeff Darcy <jdarcy@redhat.com> | 2016-02-13 05:13:07 -0800 |
commit | c458433041aafb48ae6d6e5fcf3e1e737dc3fda3 (patch) | |
tree | 33a03ca0c1f5faf58419de2c4ff4532752ddfb07 /api/src/glfs.c | |
parent | da33097c3d6492e3b468b4347e47c70828fb4320 (diff) | |
download | glusterfs-c458433041aafb48ae6d6e5fcf3e1e737dc3fda3.tar.gz glusterfs-c458433041aafb48ae6d6e5fcf3e1e737dc3fda3.tar.xz glusterfs-c458433041aafb48ae6d6e5fcf3e1e737dc3fda3.zip |
experimental: add fdl (Full Data Logging) translator
NSR needs logging that is different than our existing changelog in
several ways:
* Full data, not just metadata
* Pre-op, not post-op
* High performance
* Supports the concept of time-bounded "terms"
Others (for example EC) might need the same thing. This patch adds such
a translator. It also adds code to dump the resulting journals, and to replay
them using syncops, plus (very rudimentary) tests for all of the above.
Change-Id: I29680a1b4e0a9e7d5a8497fef302c46434b86636
Signed-off-by: Jeff Darcy <jdarcy@redhat.com>
Reviewed-on: http://review.gluster.org/12450
Smoke: Gluster Build System <jenkins@build.gluster.com>
CentOS-regression: Gluster Build System <jenkins@build.gluster.com>
NetBSD-regression: NetBSD Build System <jenkins@build.gluster.org>
Diffstat (limited to 'api/src/glfs.c')
-rw-r--r-- | api/src/glfs.c | 12 |
1 files changed, 10 insertions, 2 deletions
diff --git a/api/src/glfs.c b/api/src/glfs.c index b151936a6e..037b579225 100644 --- a/api/src/glfs.c +++ b/api/src/glfs.c @@ -1233,7 +1233,7 @@ invalid_fs: GFAPI_SYMVER_PUBLIC_DEFAULT(glfs_get_volfile, 3.6.0); int -pub_glfs_ipc (struct glfs *fs, int opcode) +pub_glfs_ipc_xd (struct glfs *fs, int opcode, dict_t *xd_in, dict_t **xd_out) { xlator_t *subvol = NULL; int ret = -1; @@ -1248,7 +1248,7 @@ pub_glfs_ipc (struct glfs *fs, int opcode) goto out; } - ret = syncop_ipc (subvol, opcode, NULL, NULL); + ret = syncop_ipc (subvol, opcode, xd_in, xd_out); DECODE_SYNCOP_ERR (ret); out: @@ -1259,4 +1259,12 @@ invalid_fs: return ret; } +GFAPI_SYMVER_PUBLIC_DEFAULT(glfs_ipc_xd, 4.0.0); + +int +pub_glfs_ipc (struct glfs *fs, int opcode) +{ + return pub_glfs_ipc_xd (fs, opcode, NULL, NULL); +} + GFAPI_SYMVER_PUBLIC_DEFAULT(glfs_ipc, 3.7.0); |