The case. KCL reads a batch of 500 records from kinesis. Something bad happens (e.g. Unexpected error). KCL will lose all 500 records with data. Because KCL marks these 500 records as read and handled even though errors occur.
If I use AWS Lambdas instead of KCL, all records will be just read second time from kinesis after errors firing.
Can KCL behave like Lambdas and repeatedly read the same records from Kinesis if I got error before?