目录

下面的是使用rd_kafka会返回的错误码的种类,请帮我整理一下每个错误码对应的原因

typedef enum {
  /* Internal errors to rdkafka: */
  /** Begin internal error codes */
  RD_KAFKA_RESP_ERR__BEGIN = -200,
  /** Received message is incorrect */
  RD_KAFKA_RESP_ERR__BAD_MSG = -199,
  /** Bad/unknown compression */
  RD_KAFKA_RESP_ERR__BAD_COMPRESSION = -198,
  /** Broker is going away */
  RD_KAFKA_RESP_ERR__DESTROY = -197,
  /** Generic failure */
  RD_KAFKA_RESP_ERR__FAIL = -196,
  /** Broker transport failure */
  RD_KAFKA_RESP_ERR__TRANSPORT = -195,
  /** Critical system resource */
  RD_KAFKA_RESP_ERR__CRIT_SYS_RESOURCE = -194,
  /** Failed to resolve broker */
  RD_KAFKA_RESP_ERR__RESOLVE = -193,
  /** Produced message timed out*/
  RD_KAFKA_RESP_ERR__MSG_TIMED_OUT = -192,
  /** Reached the end of the topic+partition queue on
   * the broker. Not really an error.
   * This event is disabled by default,
   * see the `enable.partition.eof` configuration property. */
  RD_KAFKA_RESP_ERR__PARTITION_EOF = -191,
  /** Permanent: Partition does not exist in cluster. */
  RD_KAFKA_RESP_ERR__UNKNOWN_PARTITION = -190,
  /** File or filesystem error */
  RD_KAFKA_RESP_ERR__FS = -189,
   /** Permanent: Topic does not exist in cluster. */
  RD_KAFKA_RESP_ERR__UNKNOWN_TOPIC = -188,
  /** All broker connections are down. */
  RD_KAFKA_RESP_ERR__ALL_BROKERS_DOWN = -187,
  /** Invalid argument, or invalid configuration */
  RD_KAFKA_RESP_ERR__INVALID_ARG = -186,
  /** Operation timed out */
  RD_KAFKA_RESP_ERR__TIMED_OUT = -185,
  /** Queue is full */
  RD_KAFKA_RESP_ERR__QUEUE_FULL = -184,
  /** ISR count < required.acks */
        RD_KAFKA_RESP_ERR__ISR_INSUFF = -183,
  /** Broker node update */
        RD_KAFKA_RESP_ERR__NODE_UPDATE = -182,
  /** SSL error */
  RD_KAFKA_RESP_ERR__SSL = -181,
  /** Waiting for coordinator to become available. */
        RD_KAFKA_RESP_ERR__WAIT_COORD = -180,
  /** Unknown client group */
        RD_KAFKA_RESP_ERR__UNKNOWN_GROUP = -179,
  /** Operation in progress */
        RD_KAFKA_RESP_ERR__IN_PROGRESS = -178,
   /** Previous operation in progress, wait for it to finish. */
        RD_KAFKA_RESP_ERR__PREV_IN_PROGRESS = -177,
   /** This operation would interfere with an existing subscription */
        RD_KAFKA_RESP_ERR__EXISTING_SUBSCRIPTION = -176,
  /** Assigned partitions (rebalance_cb) */
        RD_KAFKA_RESP_ERR__ASSIGN_PARTITIONS = -175,
  /** Revoked partitions (rebalance_cb) */
        RD_KAFKA_RESP_ERR__REVOKE_PARTITIONS = -174,
  /** Conflicting use */
        RD_KAFKA_RESP_ERR__CONFLICT = -173,
  /** Wrong state */
        RD_KAFKA_RESP_ERR__STATE = -172,
  /** Unknown protocol */
        RD_KAFKA_RESP_ERR__UNKNOWN_PROTOCOL = -171,
  /** Not implemented */
        RD_KAFKA_RESP_ERR__NOT_IMPLEMENTED = -170,
  /** Authentication failure*/
  RD_KAFKA_RESP_ERR__AUTHENTICATION = -169,
  /** No stored offset */
  RD_KAFKA_RESP_ERR__NO_OFFSET = -168,
  /** Outdated */
  RD_KAFKA_RESP_ERR__OUTDATED = -167,
  /** Timed out in queue */
  RD_KAFKA_RESP_ERR__TIMED_OUT_QUEUE = -166,
        /** Feature not supported by broker */
        RD_KAFKA_RESP_ERR__UNSUPPORTED_FEATURE = -165,
        /** Awaiting cache update */
        RD_KAFKA_RESP_ERR__WAIT_CACHE = -164,
        /** Operation interrupted (e.g., due to yield)) */
        RD_KAFKA_RESP_ERR__INTR = -163,
        /** Key serialization error */
        RD_KAFKA_RESP_ERR__KEY_SERIALIZATION = -162,
        /** Value serialization error */
        RD_KAFKA_RESP_ERR__VALUE_SERIALIZATION = -161,
        /** Key deserialization error */
        RD_KAFKA_RESP_ERR__KEY_DESERIALIZATION = -160,
        /** Value deserialization error */
        RD_KAFKA_RESP_ERR__VALUE_DESERIALIZATION = -159,
        /** Partial response */
        RD_KAFKA_RESP_ERR__PARTIAL = -158,
        /** Modification attempted on read-only object */
        RD_KAFKA_RESP_ERR__READ_ONLY = -157,
        /** No such entry / item not found */
        RD_KAFKA_RESP_ERR__NOENT = -156,
        /** Read underflow */
        RD_KAFKA_RESP_ERR__UNDERFLOW = -155,
        /** Invalid type */
        RD_KAFKA_RESP_ERR__INVALID_TYPE = -154,
        /** Retry operation */
        RD_KAFKA_RESP_ERR__RETRY = -153,
        /** Purged in queue */
        RD_KAFKA_RESP_ERR__PURGE_QUEUE = -152,
        /** Purged in flight */
        RD_KAFKA_RESP_ERR__PURGE_INFLIGHT = -151,
        /** Fatal error: see rd_kafka_fatal_error() */
        RD_KAFKA_RESP_ERR__FATAL = -150,
        /** Inconsistent state */
        RD_KAFKA_RESP_ERR__INCONSISTENT = -149,
        /** Gap-less ordering would not be guaranteed if proceeding */
        RD_KAFKA_RESP_ERR__GAPLESS_GUARANTEE = -148,
        /** Maximum poll interval exceeded */
        RD_KAFKA_RESP_ERR__MAX_POLL_EXCEEDED = -147,
        /** Unknown broker */
        RD_KAFKA_RESP_ERR__UNKNOWN_BROKER = -146,
        /** Functionality not configured */
        RD_KAFKA_RESP_ERR__NOT_CONFIGURED = -145,
        /** Instance has been fenced */
        RD_KAFKA_RESP_ERR__FENCED = -144,
        /** Application generated error */
        RD_KAFKA_RESP_ERR__APPLICATION = -143,

  /** End internal error codes */
  RD_KAFKA_RESP_ERR__END = -100,

  /* Kafka broker errors: */
  /** Unknown broker error */
  RD_KAFKA_RESP_ERR_UNKNOWN = -1,
  /** Success */
  RD_KAFKA_RESP_ERR_NO_ERROR = 0,
  /** Offset out of range */
  RD_KAFKA_RESP_ERR_OFFSET_OUT_OF_RANGE = 1,
  /** Invalid message */
  RD_KAFKA_RESP_ERR_INVALID_MSG = 2,
  /** Unknown topic or partition */
  RD_KAFKA_RESP_ERR_UNKNOWN_TOPIC_OR_PART = 3,
  /** Invalid message size */
  RD_KAFKA_RESP_ERR_INVALID_MSG_SIZE = 4,
  /** Leader not available */
  RD_KAFKA_RESP_ERR_LEADER_NOT_AVAILABLE = 5,
  /** Not leader for partition */
  RD_KAFKA_RESP_ERR_NOT_LEADER_FOR_PARTITION = 6,
  /** Request timed out */
  RD_KAFKA_RESP_ERR_REQUEST_TIMED_OUT = 7,
  /** Broker not available */
  RD_KAFKA_RESP_ERR_BROKER_NOT_AVAILABLE = 8,
  /** Replica not available */
  RD_KAFKA_RESP_ERR_REPLICA_NOT_AVAILABLE = 9,
  /** Message size too large */
  RD_KAFKA_RESP_ERR_MSG_SIZE_TOO_LARGE = 10,
  /** StaleControllerEpochCode */
  RD_KAFKA_RESP_ERR_STALE_CTRL_EPOCH = 11,
  /** Offset metadata string too large */
  RD_KAFKA_RESP_ERR_OFFSET_METADATA_TOO_LARGE = 12,
  /** Broker disconnected before response received */
  RD_KAFKA_RESP_ERR_NETWORK_EXCEPTION = 13,
        /** Coordinator load in progress */
        RD_KAFKA_RESP_ERR_COORDINATOR_LOAD_IN_PROGRESS = 14,
        /** Group coordinator load in progress */
#define RD_KAFKA_RESP_ERR_GROUP_LOAD_IN_PROGRESS        \
        RD_KAFKA_RESP_ERR_COORDINATOR_LOAD_IN_PROGRESS
        /** Coordinator not available */
        RD_KAFKA_RESP_ERR_COORDINATOR_NOT_AVAILABLE = 15,
        /** Group coordinator not available */
#define RD_KAFKA_RESP_ERR_GROUP_COORDINATOR_NOT_AVAILABLE       \
        RD_KAFKA_RESP_ERR_COORDINATOR_NOT_AVAILABLE
        /** Not coordinator */
        RD_KAFKA_RESP_ERR_NOT_COORDINATOR = 16,
        /** Not coordinator for group */
#define RD_KAFKA_RESP_ERR_NOT_COORDINATOR_FOR_GROUP     \
        RD_KAFKA_RESP_ERR_NOT_COORDINATOR
  /** Invalid topic */
        RD_KAFKA_RESP_ERR_TOPIC_EXCEPTION = 17,
  /** Message batch larger than configured server segment size */
        RD_KAFKA_RESP_ERR_RECORD_LIST_TOO_LARGE = 18,
  /** Not enough in-sync replicas */
        RD_KAFKA_RESP_ERR_NOT_ENOUGH_REPLICAS = 19,
  /** Message(s) written to insufficient number of in-sync replicas */
        RD_KAFKA_RESP_ERR_NOT_ENOUGH_REPLICAS_AFTER_APPEND = 20,
  /** Invalid required acks value */
        RD_KAFKA_RESP_ERR_INVALID_REQUIRED_ACKS = 21,
  /** Specified group generation id is not valid */
        RD_KAFKA_RESP_ERR_ILLEGAL_GENERATION = 22,
  /** Inconsistent group protocol */
        RD_KAFKA_RESP_ERR_INCONSISTENT_GROUP_PROTOCOL = 23,
  /** Invalid group.id */
  RD_KAFKA_RESP_ERR_INVALID_GROUP_ID = 24,
  /** Unknown member */
        RD_KAFKA_RESP_ERR_UNKNOWN_MEMBER_ID = 25,
  /** Invalid session timeout */
        RD_KAFKA_RESP_ERR_INVALID_SESSION_TIMEOUT = 26,
  /** Group rebalance in progress */
  RD_KAFKA_RESP_ERR_REBALANCE_IN_PROGRESS = 27,
  /** Commit offset data size is not valid */
        RD_KAFKA_RESP_ERR_INVALID_COMMIT_OFFSET_SIZE = 28,
  /** Topic authorization failed */
        RD_KAFKA_RESP_ERR_TOPIC_AUTHORIZATION_FAILED = 29,
  /** Group authorization failed */
  RD_KAFKA_RESP_ERR_GROUP_AUTHORIZATION_FAILED = 30,
  /** Cluster authorization failed */
  RD_KAFKA_RESP_ERR_CLUSTER_AUTHORIZATION_FAILED = 31,
  /** Invalid timestamp */
  RD_KAFKA_RESP_ERR_INVALID_TIMESTAMP = 32,
  /** Unsupported SASL mechanism */
  RD_KAFKA_RESP_ERR_UNSUPPORTED_SASL_MECHANISM = 33,
  /** Illegal SASL state */
  RD_KAFKA_RESP_ERR_ILLEGAL_SASL_STATE = 34,
  /** Unuspported version */
  RD_KAFKA_RESP_ERR_UNSUPPORTED_VERSION = 35,
  /** Topic already exists */
  RD_KAFKA_RESP_ERR_TOPIC_ALREADY_EXISTS = 36,
  /** Invalid number of partitions */
  RD_KAFKA_RESP_ERR_INVALID_PARTITIONS = 37,
  /** Invalid replication factor */
  RD_KAFKA_RESP_ERR_INVALID_REPLICATION_FACTOR = 38,
  /** Invalid replica assignment */
  RD_KAFKA_RESP_ERR_INVALID_REPLICA_ASSIGNMENT = 39,
  /** Invalid config */
  RD_KAFKA_RESP_ERR_INVALID_CONFIG = 40,
  /** Not controller for cluster */
  RD_KAFKA_RESP_ERR_NOT_CONTROLLER = 41,
  /** Invalid request */
  RD_KAFKA_RESP_ERR_INVALID_REQUEST = 42,
  /** Message format on broker does not support request */
  RD_KAFKA_RESP_ERR_UNSUPPORTED_FOR_MESSAGE_FORMAT = 43,
        /** Policy violation */
        RD_KAFKA_RESP_ERR_POLICY_VIOLATION = 44,
        /** Broker received an out of order sequence number */
        RD_KAFKA_RESP_ERR_OUT_OF_ORDER_SEQUENCE_NUMBER = 45,
        /** Broker received a duplicate sequence number */
        RD_KAFKA_RESP_ERR_DUPLICATE_SEQUENCE_NUMBER = 46,
        /** Producer attempted an operation with an old epoch */
        RD_KAFKA_RESP_ERR_INVALID_PRODUCER_EPOCH = 47,
        /** Producer attempted a transactional operation in an invalid state */
        RD_KAFKA_RESP_ERR_INVALID_TXN_STATE = 48,
        /** Producer attempted to use a producer id which is not
         *  currently assigned to its transactional id */
        RD_KAFKA_RESP_ERR_INVALID_PRODUCER_ID_MAPPING = 49,
        /** Transaction timeout is larger than the maximum
         *  value allowed by the broker's max.transaction.timeout.ms */
        RD_KAFKA_RESP_ERR_INVALID_TRANSACTION_TIMEOUT = 50,
        /** Producer attempted to update a transaction while another
         *  concurrent operation on the same transaction was ongoing */
        RD_KAFKA_RESP_ERR_CONCURRENT_TRANSACTIONS = 51,
        /** Indicates that the transaction coordinator sending a
         *  WriteTxnMarker is no longer the current coordinator for a
         *  given producer */
        RD_KAFKA_RESP_ERR_TRANSACTION_COORDINATOR_FENCED = 52,
        /** Transactional Id authorization failed */
        RD_KAFKA_RESP_ERR_TRANSACTIONAL_ID_AUTHORIZATION_FAILED = 53,
        /** Security features are disabled */
        RD_KAFKA_RESP_ERR_SECURITY_DISABLED = 54,
        /** Operation not attempted */
        RD_KAFKA_RESP_ERR_OPERATION_NOT_ATTEMPTED = 55,
        /** Disk error when trying to access log file on the disk */
        RD_KAFKA_RESP_ERR_KAFKA_STORAGE_ERROR = 56,
        /** The user-specified log directory is not found in the broker config */
        RD_KAFKA_RESP_ERR_LOG_DIR_NOT_FOUND = 57,
        /** SASL Authentication failed */
        RD_KAFKA_RESP_ERR_SASL_AUTHENTICATION_FAILED = 58,
        /** Unknown Producer Id */
        RD_KAFKA_RESP_ERR_UNKNOWN_PRODUCER_ID = 59,
        /** Partition reassignment is in progress */
        RD_KAFKA_RESP_ERR_REASSIGNMENT_IN_PROGRESS = 60,
        /** Delegation Token feature is not enabled */
        RD_KAFKA_RESP_ERR_DELEGATION_TOKEN_AUTH_DISABLED = 61,
        /** Delegation Token is not found on server */
        RD_KAFKA_RESP_ERR_DELEGATION_TOKEN_NOT_FOUND = 62,
        /** Specified Principal is not valid Owner/Renewer */
        RD_KAFKA_RESP_ERR_DELEGATION_TOKEN_OWNER_MISMATCH = 63,
        /** Delegation Token requests are not allowed on this connection */
        RD_KAFKA_RESP_ERR_DELEGATION_TOKEN_REQUEST_NOT_ALLOWED = 64,
        /** Delegation Token authorization failed */
        RD_KAFKA_RESP_ERR_DELEGATION_TOKEN_AUTHORIZATION_FAILED = 65,
        /** Delegation Token is expired */
        RD_KAFKA_RESP_ERR_DELEGATION_TOKEN_EXPIRED = 66,
        /** Supplied principalType is not supported */
        RD_KAFKA_RESP_ERR_INVALID_PRINCIPAL_TYPE = 67,
        /** The group is not empty */
        RD_KAFKA_RESP_ERR_NON_EMPTY_GROUP = 68,
        /** The group id does not exist */
        RD_KAFKA_RESP_ERR_GROUP_ID_NOT_FOUND = 69,
        /** The fetch session ID was not found */
        RD_KAFKA_RESP_ERR_FETCH_SESSION_ID_NOT_FOUND = 70,
        /** The fetch session epoch is invalid */
        RD_KAFKA_RESP_ERR_INVALID_FETCH_SESSION_EPOCH = 71,
        /** No matching listener */
        RD_KAFKA_RESP_ERR_LISTENER_NOT_FOUND = 72,
        /** Topic deletion is disabled */
        RD_KAFKA_RESP_ERR_TOPIC_DELETION_DISABLED = 73,
        /** Leader epoch is older than broker epoch */
        RD_KAFKA_RESP_ERR_FENCED_LEADER_EPOCH = 74,
        /** Leader epoch is newer than broker epoch */
        RD_KAFKA_RESP_ERR_UNKNOWN_LEADER_EPOCH = 75,
        /** Unsupported compression type */
        RD_KAFKA_RESP_ERR_UNSUPPORTED_COMPRESSION_TYPE = 76,
        /** Broker epoch has changed */
        RD_KAFKA_RESP_ERR_STALE_BROKER_EPOCH = 77,
        /** Leader high watermark is not caught up */
        RD_KAFKA_RESP_ERR_OFFSET_NOT_AVAILABLE = 78,
        /** Group member needs a valid member ID */
        RD_KAFKA_RESP_ERR_MEMBER_ID_REQUIRED = 79,
        /** Preferred leader was not available */
        RD_KAFKA_RESP_ERR_PREFERRED_LEADER_NOT_AVAILABLE = 80,
        /** Consumer group has reached maximum size */
        RD_KAFKA_RESP_ERR_GROUP_MAX_SIZE_REACHED = 81,
        /** Static consumer fenced by other consumer with same
         *  group.instance.id. */
        RD_KAFKA_RESP_ERR_FENCED_INSTANCE_ID = 82,

        RD_KAFKA_RESP_ERR_END_ALL,
} rd_kafka_resp_err_t;

这个错误代码表示在生产或消费消息时遇到了压缩格式的问题。

在消费消息时,如果接收到的消息是使用消费者不支持的压缩编解码器生产的,也会出现这个错误。在这种情况下,您可以将生产者更改为使用兼容的压缩编解码器,或修改消费者的配置以支持生产者使用的编解码器。