KinesisClientLibError:{ErrorCode:KinesisClientLibError,Retryable:true,Status:http.StatusServiceUnavailable,Msg:"Top level error of Kinesis Client Library"},
// Retryable
KinesisClientLibRetryableError:{ErrorCode:KinesisClientLibRetryableError,Retryable:true,Status:http.StatusServiceUnavailable,Msg:"Retryable exceptions (e.g. transient errors). The request/operation is expected to succeed upon (back off and) retry."},
KinesisClientLibIOError:{ErrorCode:KinesisClientLibIOError,Retryable:true,Status:http.StatusServiceUnavailable,Msg:"Error in reading/writing information (e.g. shard information from Kinesis may not be current/complete)."},
BlockedOnParentShardError:{ErrorCode:BlockedOnParentShardError,Retryable:true,Status:http.StatusServiceUnavailable,Msg:"Cannot start processing data for a shard because the data from the parent shard has not been completely processed (yet)."},
KinesisClientLibDependencyError:{ErrorCode:KinesisClientLibDependencyError,Retryable:true,Status:http.StatusServiceUnavailable,Msg:"Cannot talk to its dependencies (e.g. fetching data from Kinesis, DynamoDB table reads/writes)."},
ThrottlingError:{ErrorCode:ThrottlingError,Retryable:true,Status:http.StatusTooManyRequests,Msg:"Requests are throttled by a service (e.g. DynamoDB when storing a checkpoint)."},
// Non-Retryable
KinesisClientLibNonRetryableException:{ErrorCode:KinesisClientLibNonRetryableException,Retryable:false,Status:http.StatusServiceUnavailable,Msg:"Non-retryable exceptions. Simply retrying the same request/operation is not expected to succeed."},
InvalidStateError:{ErrorCode:InvalidStateError,Retryable:false,Status:http.StatusServiceUnavailable,Msg:"Kinesis Library has issues with internal state (e.g. DynamoDB table is not found)."},
ShutdownError:{ErrorCode:ShutdownError,Retryable:false,Status:http.StatusServiceUnavailable,Msg:"The RecordProcessor instance has been shutdown (e.g. and attempts a checkpiont)."},
// Leasing
LeasingError:{ErrorCode:LeasingError,Retryable:true,Status:http.StatusServiceUnavailable,Msg:"Top-level error type for the leasing code."},
LeasingInvalidStateError:{ErrorCode:LeasingInvalidStateError,Retryable:true,Status:http.StatusServiceUnavailable,Msg:"Error in a lease operation has failed because DynamoDB is an invalid state"},
LeasingDependencyError:{ErrorCode:LeasingDependencyError,Retryable:true,Status:http.StatusServiceUnavailable,Msg:"Error in a lease operation has failed because a dependency of the leasing system has failed."},
LeasingProvisionedThroughputError:{ErrorCode:LeasingProvisionedThroughputError,Retryable:false,Status:http.StatusServiceUnavailable,Msg:"Error in a lease operation has failed due to lack of provisioned throughput for a DynamoDB table."},
// IllegalArgumentError
IllegalArgumentError:{ErrorCode:IllegalArgumentError,Retryable:false,Status:http.StatusBadRequest,Msg:"Error indicates that a method has been passed an illegal or inappropriate argument."},