Repository: microsoft/garnet
File: libs/server/Resp/CmdStrings.cs (C#)

Code before:
        public static ReadOnlySpan<byte> RESP_ERR_BITOP_KEY_LIMIT => "ERR Bitop source key limit (64) exceeded"u8;
        public static ReadOnlySpan<byte> RESP_ERR_MODULE_NO_INTERFACE => "ERR Module does not implement the required interface"u8;
        public static ReadOnlySpan<byte> RESP_ERR_MODULE_MULTIPLE_INTERFACES => "ERR Multiple modules present"u8;
        public static ReadOnlySpan<byte> RESP_ERR_MODULE_ONLOAD => "ERR Error during module OnLoad"u8;
        public static ReadOnlySpan<byte> RESP_ERR_LIMIT_NOT_SUPPORTED => "ERR syntax error, LIMIT is only supported in combination with either BYSCORE or BYLEX"u8;
        public static ReadOnlySpan<byte> RESP_ERR_NO_SCRIPT => "NOSCRIPT No matching script. Please use EVAL."u8;
        public static ReadOnlySpan<byte> RESP_ERR_CANNOT_LIST_CLIENTS => "ERR Clients cannot be listed."u8;
        public static ReadOnlySpan<byte> RESP_ERR_UBLOCKING_CLINET => "ERR Unable to unblock client because of error."u8;
        public static ReadOnlySpan<byte> RESP_ERR_NO_SUCH_CLIENT => "ERR No such client"u8;
        public static ReadOnlySpan<byte> RESP_ERR_INVALID_CLIENT_ID => "ERR Invalid client ID"u8;
        public static ReadOnlySpan<byte> RESP_ERR_ACL_AUTH_DISABLED => "ERR ACL Authenticator is disabled."u8;
        public static ReadOnlySpan<byte> RESP_ERR_ACL_AUTH_FILE_DISABLED => "ERR This Garnet instance is not configured to use an ACL file. Please restart server with --acl-file option."u8;
        public static ReadOnlySpan<byte> RESP_ERR_XX_NX_NOT_COMPATIBLE => "ERR XX and NX options at the same time are not compatible"u8;
        public static ReadOnlySpan<byte> RESP_ERR_GT_LT_NX_NOT_COMPATIBLE => "ERR GT, LT, and/or NX options at the same time are not compatible"u8;
        public static ReadOnlySpan<byte> RESP_ERR_INCR_SUPPORTS_ONLY_SINGLE_PAIR => "ERR INCR option supports a single increment-element pair"u8;
        public static ReadOnlySpan<byte> RESP_ERR_INVALID_BITFIELD_TYPE => "ERR Invalid bitfield type. Use something like i16 u8. Note that u64 is not supported but i64 is"u8;
        public static ReadOnlySpan<byte> RESP_ERR_SCRIPT_FLUSH_OPTIONS => "ERR SCRIPT FLUSH only support SYNC|ASYNC option"u8;
        public static ReadOnlySpan<byte> RESP_ERR_BUSSYKEY => "BUSYKEY Target key name already exists."u8;
        public static ReadOnlySpan<byte> RESP_ERR_LENGTH_AND_INDEXES => "If you want both the length and indexes, please just use IDX."u8;
        public static ReadOnlySpan<byte> RESP_ERR_INVALID_EXPIRE_TIME => "ERR invalid expire time, must be >= 0"u8;
        public static ReadOnlySpan<byte> RESP_ERR_HCOLLECT_ALREADY_IN_PROGRESS => "ERR HCOLLECT scan already in progress"u8;
        public static ReadOnlySpan<byte> RESP_INVALID_COMMAND_SPECIFIED => "Invalid command specified"u8;
        public static ReadOnlySpan<byte> RESP_COMMAND_HAS_NO_KEY_ARGS => "The command has no key arguments"u8;
        public static ReadOnlySpan<byte> RESP_ERR_INVALID_CLIENT_UNBLOCK_REASON => "ERR CLIENT UNBLOCK reason should be TIMEOUT or ERROR"u8;
        public static ReadOnlySpan<byte> RESP_UNBLOCKED_CLIENT_VIA_CLIENT_UNBLOCK => "UNBLOCKED client unblocked via CLIENT UNBLOCK"u8;
        public static ReadOnlySpan<byte> RESP_ERR_DEUBG_DISALLOWED => "DEBUG command not allowed."u8;

        /// <summary>
        /// Response string templates
        /// </summary>
        public const string GenericErrWrongNumArgs = "ERR wrong number of arguments for '{0}' command";
        public const string GenericErrUnknownOptionConfigSet = "ERR Unknown option or number of arguments for CONFIG SET - '{0}'";
        public const string GenericErrUnknownOption = "ERR Unknown option or number of arguments for '{0}' command";
        public const string GenericErrUnknownSubCommand = "ERR unknown subcommand '{0}'. Try {1} HELP";
        public const string GenericErrUnknownSubCommandNoHelp = "ERR unknown subcommand '{0}'.";
        public const string GenericErrWrongNumArgsTxn =
            "ERR Invalid number of parameters to stored proc {0}, expected {1}, actual {2}";
        public const string GenericSyntaxErrorOption = "ERR Syntax error in {0} option '{1}'";
        public const string GenericParamShouldBeGreaterThanZero = "ERR Parameter `{0}` should be greater than 0";
        public const string GenericErrNotAFloat = "ERR {0} value is not a valid float";
        public const string GenericErrCantBeNegative = "ERR {0} can't be negative";
        public const string GenericErrAtLeastOneKey = "ERR at least 1 input key is needed for '{0}' command";
        public const string GenericErrShouldBeGreaterThanZero = "ERR {0} should be greater than 0";
        public const string GenericErrMandatoryMissing = "Mandatory argument {0} is missing or not at the right position";
        public const string GenericErrMustMatchNoOfArgs = "The `{0}` parameter must match the number of arguments";
        public const string GenericUnknownClientType = "ERR Unknown client type '{0}'";
        public const string GenericErrDuplicateFilter = "ERR Filter '{0}' defined multiple times";
        public const string GenericPubSubCommandDisabled = "ERR {0} is disabled, enable it with --pubsub option.";

        /// <summary>
        /// Response errors while scripting

Review comment (bug):
Would be helpful to have the full error message, as it also helps the user with how to enable this option - `ERR DEBUG command not allowed. If the EnableDebugCommand option is set to "local", you can run it from a local connection, otherwise you need to set this option in the configuration file, and then restart the server.`

Code after:
        public static ReadOnlySpan<byte> RESP_ERR_MODULE_MULTIPLE_INTERFACES => "ERR Multiple modules present"u8;
        public static ReadOnlySpan<byte> RESP_ERR_MODULE_ONLOAD => "ERR Error during module OnLoad"u8;
        public static ReadOnlySpan<byte> RESP_ERR_LIMIT_NOT_SUPPORTED => "ERR syntax error, LIMIT is only supported in combination with either BYSCORE or BYLEX"u8;
        public static ReadOnlySpan<byte> RESP_ERR_NO_SCRIPT => "NOSCRIPT No matching script. Please use EVAL."u8;
        public static ReadOnlySpan<byte> RESP_ERR_CANNOT_LIST_CLIENTS => "ERR Clients cannot be listed."u8;
        public static ReadOnlySpan<byte> RESP_ERR_UBLOCKING_CLINET => "ERR Unable to unblock client because of error."u8;
        public static ReadOnlySpan<byte> RESP_ERR_NO_SUCH_CLIENT => "ERR No such client"u8;
        public static ReadOnlySpan<byte> RESP_ERR_INVALID_CLIENT_ID => "ERR Invalid client ID"u8;
        public static ReadOnlySpan<byte> RESP_ERR_ACL_AUTH_DISABLED => "ERR ACL Authenticator is disabled."u8;
        public static ReadOnlySpan<byte> RESP_ERR_ACL_AUTH_FILE_DISABLED => "ERR This Garnet instance is not configured to use an ACL file. Please restart server with --acl-file option."u8;
        public static ReadOnlySpan<byte> RESP_ERR_XX_NX_NOT_COMPATIBLE => "ERR XX and NX options at the same time are not compatible"u8;
        public static ReadOnlySpan<byte> RESP_ERR_GT_LT_NX_NOT_COMPATIBLE => "ERR GT, LT, and/or NX options at the same time are not compatible"u8;
        public static ReadOnlySpan<byte> RESP_ERR_INCR_SUPPORTS_ONLY_SINGLE_PAIR => "ERR INCR option supports a single increment-element pair"u8;
        public static ReadOnlySpan<byte> RESP_ERR_INVALID_BITFIELD_TYPE => "ERR Invalid bitfield type. Use something like i16 u8. Note that u64 is not supported but i64 is"u8;
        public static ReadOnlySpan<byte> RESP_ERR_SCRIPT_FLUSH_OPTIONS => "ERR SCRIPT FLUSH only support SYNC|ASYNC option"u8;
        public static ReadOnlySpan<byte> RESP_ERR_BUSSYKEY => "BUSYKEY Target key name already exists."u8;
        public static ReadOnlySpan<byte> RESP_ERR_LENGTH_AND_INDEXES => "If you want both the length and indexes, please just use IDX."u8;
        public static ReadOnlySpan<byte> RESP_ERR_INVALID_EXPIRE_TIME => "ERR invalid expire time, must be >= 0"u8;
        public static ReadOnlySpan<byte> RESP_ERR_HCOLLECT_ALREADY_IN_PROGRESS => "ERR HCOLLECT scan already in progress"u8;
        public static ReadOnlySpan<byte> RESP_INVALID_COMMAND_SPECIFIED => "Invalid command specified"u8;
        public static ReadOnlySpan<byte> RESP_COMMAND_HAS_NO_KEY_ARGS => "The command has no key arguments"u8;
        public static ReadOnlySpan<byte> RESP_ERR_INVALID_CLIENT_UNBLOCK_REASON => "ERR CLIENT UNBLOCK reason should be TIMEOUT or ERROR"u8;
        public static ReadOnlySpan<byte> RESP_UNBLOCKED_CLIENT_VIA_CLIENT_UNBLOCK => "UNBLOCKED client unblocked via CLIENT UNBLOCK"u8;
        public static ReadOnlySpan<byte> RESP_ERR_DEUBG_DISALLOWED =>
            @"ERR DEBUG command not allowed. If the EnableDebugCommand option is set to ""local"", you can run it from a local connection, otherwise you need to set this option in the configuration file, and then restart the server."u8;

        /// <summary>
        /// Response string templates
        /// </summary>
        public const string GenericErrWrongNumArgs = "ERR wrong number of arguments for '{0}' command";
        public const string GenericErrUnknownOptionConfigSet = "ERR Unknown option or number of arguments for CONFIG SET - '{0}'";
        public const string GenericErrUnknownOption = "ERR Unknown option or number of arguments for '{0}' command";
        public const string GenericErrUnknownSubCommand = "ERR unknown subcommand '{0}'. Try {1} HELP";
        public const string GenericErrUnknownSubCommandNoHelp = "ERR unknown subcommand '{0}'.";
        public const string GenericErrWrongNumArgsTxn =
            "ERR Invalid number of parameters to stored proc {0}, expected {1}, actual {2}";
        public const string GenericSyntaxErrorOption = "ERR Syntax error in {0} option '{1}'";
        public const string GenericParamShouldBeGreaterThanZero = "ERR Parameter `{0}` should be greater than 0";
        public const string GenericErrNotAFloat = "ERR {0} value is not a valid float";
        public const string GenericErrCantBeNegative = "ERR {0} can't be negative";
        public const string GenericErrAtLeastOneKey = "ERR at least 1 input key is needed for '{0}' command";
        public const string GenericErrShouldBeGreaterThanZero = "ERR {0} should be greater than 0";
        public const string GenericErrMandatoryMissing = "Mandatory argument {0} is missing or not at the right position";
        public const string GenericErrMustMatchNoOfArgs = "The `{0}` parameter must match the number of arguments";
        public const string GenericUnknownClientType = "ERR Unknown client type '{0}'";
        public const string GenericErrDuplicateFilter = "ERR Filter '{0}' defined multiple times";
        public const string GenericPubSubCommandDisabled = "ERR {0} is disabled, enable it with --pubsub option.";

        /// <summary>
        /// Response errors while scripting
        /// </summary>