summaryrefslogtreecommitdiffstats
path: root/rpc/xdr/src/glusterfs4-xdr.x
diff options
context:
space:
mode:
authorAmar Tumballi <amarts@redhat.com>2019-04-20 11:55:12 +0530
committerAmar Tumballi <amarts@redhat.com>2019-04-29 05:29:44 +0000
commit48d160756813875cf1889b4ce96493d25f96c726 (patch)
tree92349106820659f831f295e214335a0297a4ba48 /rpc/xdr/src/glusterfs4-xdr.x
parent88418f400507fba109971f169ce0a2c4243a31c9 (diff)
protocol: remove compound fop
Compound fops are kept on wire as a backward compatibility with older AFR modules. The AFR module used beyond 4.x releases are not using compound fops. Hence removing the compound fop in the protocol code. Note that, compound-fops was already an 'option' in AFR, and completely removed since 4.1.x releases. So, point to note is, with this change, we have 2 ways to upgrade when clients of 3.x series are present. i) set 'use-compound-fops' option to 'false' on any volume which is of replica type. And then upgrade the servers. ii) Do a two step upgrade. First from current version (which will already be EOL if it's using compound) to a 4.1..6.x version, and then an upgrade to 7.x. Consider the overall code which we are removing for the option seems quite high, I believe it is worth it. updates: bz#1693692 Signed-off-by: Amar Tumballi <amarts@redhat.com> Change-Id: I0a8876d0367a15e1410ec845f251d5d3097ee593
Diffstat (limited to 'rpc/xdr/src/glusterfs4-xdr.x')
-rw-r--r--rpc/xdr/src/glusterfs4-xdr.x120
1 files changed, 0 insertions, 120 deletions
diff --git a/rpc/xdr/src/glusterfs4-xdr.x b/rpc/xdr/src/glusterfs4-xdr.x
index bec0872ec0e..6d13aafc9eb 100644
--- a/rpc/xdr/src/glusterfs4-xdr.x
+++ b/rpc/xdr/src/glusterfs4-xdr.x
@@ -769,126 +769,6 @@ struct gfx_setactivelk_req {
gfx_dict xdata;
};
-union compound_req_v2 switch (glusterfs_fop_t fop_enum) {
- case GF_FOP_STAT: gfx_stat_req compound_stat_req;
- case GF_FOP_READLINK: gfx_readlink_req compound_readlink_req;
- case GF_FOP_MKNOD: gfx_mknod_req compound_mknod_req;
- case GF_FOP_MKDIR: gfx_mkdir_req compound_mkdir_req;
- case GF_FOP_UNLINK: gfx_unlink_req compound_unlink_req;
- case GF_FOP_RMDIR: gfx_rmdir_req compound_rmdir_req;
- case GF_FOP_SYMLINK: gfx_symlink_req compound_symlink_req;
- case GF_FOP_RENAME: gfx_rename_req compound_rename_req;
- case GF_FOP_LINK: gfx_link_req compound_link_req;
- case GF_FOP_TRUNCATE: gfx_truncate_req compound_truncate_req;
- case GF_FOP_OPEN: gfx_open_req compound_open_req;
- case GF_FOP_READ: gfx_read_req compound_read_req;
- case GF_FOP_WRITE: gfx_write_req compound_write_req;
- case GF_FOP_STATFS: gfx_statfs_req compound_statfs_req;
- case GF_FOP_FLUSH: gfx_flush_req compound_flush_req;
- case GF_FOP_FSYNC: gfx_fsync_req compound_fsync_req;
- case GF_FOP_GETXATTR: gfx_getxattr_req compound_getxattr_req;
- case GF_FOP_SETXATTR: gfx_setxattr_req compound_setxattr_req;
- case GF_FOP_REMOVEXATTR: gfx_removexattr_req compound_removexattr_req;
- case GF_FOP_OPENDIR: gfx_opendir_req compound_opendir_req;
- case GF_FOP_FSYNCDIR: gfx_fsyncdir_req compound_fsyncdir_req;
- case GF_FOP_ACCESS: gfx_access_req compound_access_req;
- case GF_FOP_CREATE: gfx_create_req compound_create_req;
- case GF_FOP_FTRUNCATE: gfx_ftruncate_req compound_ftruncate_req;
- case GF_FOP_FSTAT: gfx_fstat_req compound_fstat_req;
- case GF_FOP_LK: gfx_lk_req compound_lk_req;
- case GF_FOP_LOOKUP: gfx_lookup_req compound_lookup_req;
- case GF_FOP_READDIR: gfx_readdir_req compound_readdir_req;
- case GF_FOP_INODELK: gfx_inodelk_req compound_inodelk_req;
- case GF_FOP_FINODELK: gfx_finodelk_req compound_finodelk_req;
- case GF_FOP_ENTRYLK: gfx_entrylk_req compound_entrylk_req;
- case GF_FOP_FENTRYLK: gfx_fentrylk_req compound_fentrylk_req;
- case GF_FOP_XATTROP: gfx_xattrop_req compound_xattrop_req;
- case GF_FOP_FXATTROP: gfx_fxattrop_req compound_fxattrop_req;
- case GF_FOP_FGETXATTR: gfx_fgetxattr_req compound_fgetxattr_req;
- case GF_FOP_FSETXATTR: gfx_fsetxattr_req compound_fsetxattr_req;
- case GF_FOP_RCHECKSUM: gfx_rchecksum_req compound_rchecksum_req;
- case GF_FOP_SETATTR: gfx_setattr_req compound_setattr_req;
- case GF_FOP_FSETATTR: gfx_fsetattr_req compound_fsetattr_req;
- case GF_FOP_READDIRP: gfx_readdirp_req compound_readdirp_req;
- case GF_FOP_RELEASE: gfx_release_req compound_release_req;
- case GF_FOP_RELEASEDIR: gfx_releasedir_req compound_releasedir_req;
- case GF_FOP_FREMOVEXATTR: gfx_fremovexattr_req compound_fremovexattr_req;
- case GF_FOP_FALLOCATE: gfx_fallocate_req compound_fallocate_req;
- case GF_FOP_DISCARD: gfx_discard_req compound_discard_req;
- case GF_FOP_ZEROFILL: gfx_zerofill_req compound_zerofill_req;
- case GF_FOP_IPC: gfx_ipc_req compound_ipc_req;
- case GF_FOP_SEEK: gfx_seek_req compound_seek_req;
- case GF_FOP_LEASE: gfx_lease_req compound_lease_req;
- default: void;
-};
-
-struct gfx_compound_req {
- int compound_version;
- glusterfs_compound_fop_t compound_fop_enum;
- compound_req_v2 compound_req_array<>;
- gfx_dict xdata;
-};
-
-union compound_rsp_v2 switch (glusterfs_fop_t fop_enum) {
- case GF_FOP_STAT: gfx_common_iatt_rsp compound_stat_rsp;
- case GF_FOP_READLINK: gfx_readlink_rsp compound_readlink_rsp;
- case GF_FOP_MKNOD: gfx_common_3iatt_rsp compound_mknod_rsp;
- case GF_FOP_MKDIR: gfx_common_3iatt_rsp compound_mkdir_rsp;
- case GF_FOP_UNLINK: gfx_common_2iatt_rsp compound_unlink_rsp;
- case GF_FOP_RMDIR: gfx_common_2iatt_rsp compound_rmdir_rsp;
- case GF_FOP_SYMLINK: gfx_common_3iatt_rsp compound_symlink_rsp;
- case GF_FOP_RENAME: gfx_rename_rsp compound_rename_rsp;
- case GF_FOP_LINK: gfx_common_3iatt_rsp compound_link_rsp;
- case GF_FOP_TRUNCATE: gfx_common_2iatt_rsp compound_truncate_rsp;
- case GF_FOP_OPEN: gfx_open_rsp compound_open_rsp;
- case GF_FOP_READ: gfx_read_rsp compound_read_rsp;
- case GF_FOP_WRITE: gfx_common_2iatt_rsp compound_write_rsp;
- case GF_FOP_STATFS: gfx_statfs_rsp compound_statfs_rsp;
- case GF_FOP_FLUSH: gfx_common_rsp compound_flush_rsp;
- case GF_FOP_FSYNC: gfx_common_2iatt_rsp compound_fsync_rsp;
- case GF_FOP_GETXATTR: gfx_common_dict_rsp compound_getxattr_rsp;
- case GF_FOP_SETXATTR: gfx_common_rsp compound_setxattr_rsp;
- case GF_FOP_REMOVEXATTR: gfx_common_rsp compound_removexattr_rsp;
- case GF_FOP_OPENDIR: gfx_open_rsp compound_opendir_rsp;
- case GF_FOP_FSYNCDIR: gfx_common_rsp compound_fsyncdir_rsp;
- case GF_FOP_ACCESS: gfx_common_rsp compound_access_rsp;
- case GF_FOP_CREATE: gfx_create_rsp compound_create_rsp;
- case GF_FOP_FTRUNCATE: gfx_common_2iatt_rsp compound_ftruncate_rsp;
- case GF_FOP_FSTAT: gfx_common_iatt_rsp compound_fstat_rsp;
- case GF_FOP_LK: gfx_lk_rsp compound_lk_rsp;
- case GF_FOP_LOOKUP: gfx_common_2iatt_rsp compound_lookup_rsp;
- case GF_FOP_READDIR: gfx_readdir_rsp compound_readdir_rsp;
- case GF_FOP_INODELK: gfx_common_rsp compound_inodelk_rsp;
- case GF_FOP_FINODELK: gfx_common_rsp compound_finodelk_rsp;
- case GF_FOP_ENTRYLK: gfx_common_rsp compound_entrylk_rsp;
- case GF_FOP_FENTRYLK: gfx_common_rsp compound_fentrylk_rsp;
- case GF_FOP_XATTROP: gfx_common_dict_rsp compound_xattrop_rsp;
- case GF_FOP_FXATTROP: gfx_common_dict_rsp compound_fxattrop_rsp;
- case GF_FOP_FGETXATTR: gfx_common_dict_rsp compound_fgetxattr_rsp;
- case GF_FOP_FSETXATTR: gfx_common_rsp compound_fsetxattr_rsp;
- case GF_FOP_RCHECKSUM: gfx_rchecksum_rsp compound_rchecksum_rsp;
- case GF_FOP_SETATTR: gfx_common_2iatt_rsp compound_setattr_rsp;
- case GF_FOP_FSETATTR: gfx_common_2iatt_rsp compound_fsetattr_rsp;
- case GF_FOP_READDIRP: gfx_readdirp_rsp compound_readdirp_rsp;
- case GF_FOP_RELEASE: gfx_common_rsp compound_release_rsp;
- case GF_FOP_RELEASEDIR: gfx_common_rsp compound_releasedir_rsp;
- case GF_FOP_FREMOVEXATTR: gfx_common_rsp compound_fremovexattr_rsp;
- case GF_FOP_FALLOCATE: gfx_common_2iatt_rsp compound_fallocate_rsp;
- case GF_FOP_DISCARD: gfx_common_2iatt_rsp compound_discard_rsp;
- case GF_FOP_ZEROFILL: gfx_common_2iatt_rsp compound_zerofill_rsp;
- case GF_FOP_IPC: gfx_common_rsp compound_ipc_rsp;
- case GF_FOP_SEEK: gfx_seek_rsp compound_seek_rsp;
- case GF_FOP_LEASE: gfx_lease_rsp compound_lease_rsp;
- default: void;
-};
-
-struct gfx_compound_rsp {
- int op_ret;
- int op_errno;
- compound_rsp_v2 compound_rsp_array<>;
- gfx_dict xdata;
-};
-
struct gfs4_inodelk_contention_req {
opaque gfid[16];
struct gf_proto_flock flock;