You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
KPL sent records of out order even when maxConnections was set to 1 and no error/retry occurred. I cannot find detail of KPL order guarantee in the documents. Is there a way to ensure ordering of records sent from KPL?
The text was updated successfully, but these errors were encountered:
Kinesis in general does not guarantee "write ordering". It does guarantee "read order", in that records successfully written to Kinesis are guaranteed to be always read out in the same order.
Even if you are not using the KPL and used the SDK directly, records are not guaranteed to be lodged in Kinesis in the same order they are written to the SDK, for a variety of reasons related to the way distributed systems work. Because the KPL uses the putRecords web API, it has the same side effect.
The only way to guarantee "write order" is if you have only one producer, and you use the "putRecord" (not putRecords) API of the SDK one record at a time, and use the "sequenceNumberForOrdering" feature. Basically you will put record n only after getting a successful response to the put for record n-1.
KPL sent records of out order even when maxConnections was set to 1 and no error/retry occurred. I cannot find detail of KPL order guarantee in the documents. Is there a way to ensure ordering of records sent from KPL?
The text was updated successfully, but these errors were encountered: