diff options
Diffstat (limited to 'xlators/protocol/client/src/client-helpers.c')
| -rw-r--r-- | xlators/protocol/client/src/client-helpers.c | 28 | 
1 files changed, 28 insertions, 0 deletions
diff --git a/xlators/protocol/client/src/client-helpers.c b/xlators/protocol/client/src/client-helpers.c index 849fdfca0bc..55e87b3c370 100644 --- a/xlators/protocol/client/src/client-helpers.c +++ b/xlators/protocol/client/src/client-helpers.c @@ -2459,6 +2459,20 @@ client_handle_fop_requirements_v2(                  lease, this, &this_req->compound_req_v2_u.compound_lease_req,                  op_errno, out, &args->loc, &args->lease, args->xdata);              break; +        case GF_FOP_COPY_FILE_RANGE: +            /* +             * Not going to handle the copy_file_range fop in compound +             * operation. This is because, compound operation is going +             * to be removed. In fact, AFR one of the heavy consumer of +             * compound operations has stopped using that. +             * https://github.com/gluster/glusterfs/issues/414 +             * Therefore, sending ENOTSUP error for this fop coming as +             * comound request. Though, there was no need of handling +             * "case GF_FOP_COPY_FILE_RANGE" technically, this comment +             * under the label of GF_FOP_COPY_FILE_RANGE will help in +             * understanding that this fop does not handle the compund +             * request and why. +             */          default:              return ENOTSUP;      } @@ -2631,6 +2645,14 @@ compound_request_cleanup_v2(gfx_compound_req *req)              case GF_FOP_SEEK:                  CLIENT4_COMPOUND_FOP_CLEANUP(curr_req, seek);                  break; +            case GF_FOP_COPY_FILE_RANGE: +                /* +                 * This fop is not handled in compund operations. +                 * Check the comment added under this fop's section +                 * in the compound_request_cleanup_v2. Therefore +                 * keeping this label only as a placeholder with +                 * a message that, this fop is not handled. +                 */              default:                  break;          } @@ -3004,6 +3026,12 @@ client_process_response_v2(call_frame_t *frame, xlator_t *this,                                    &this_args_cbk->lease, xdata);              break;          } +        case GF_FOP_COPY_FILE_RANGE: +            /* +             * Not handling this fop. Returning ENOTSUP. Check +             * the comment added for this fop in the function +             * client_handle_fop_requirements_v2. +             */          default:              return -ENOTSUP;      }  | 
