[ 
https://issues.apache.org/jira/browse/KAFKA-6099?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16368464#comment-16368464
 ] 

Jason Gustafson edited comment on KAFKA-6099 at 2/18/18 7:59 AM:
-----------------------------------------------------------------

As pointed out by [~tomas.kralik], you should use auto.offset.reset=none. This 
will cause an {{InvalidOffsetException}} to be raised from {{poll()}} or 
{{position()}} after you have seeked to an offset which is no longer valid. 
Closing this issue for now, but feel free to reopen if you think there is still 
an issue.


was (Author: hachikuji):
As pointed out by [~tomas.kralik], you should use auto.reset.policy=none. This 
will cause an {{InvalidOffsetException}} to be raised from {{poll()}} or 
{{position()}} after you have seeked to an offset which is no longer valid. 
Closing this issue for now, but feel free to reopen if you think there is still 
an issue.

> Seeking consumer to evicted offset resets the offset
> ----------------------------------------------------
>
>                 Key: KAFKA-6099
>                 URL: https://issues.apache.org/jira/browse/KAFKA-6099
>             Project: Kafka
>          Issue Type: Bug
>          Components: consumer
>    Affects Versions: 0.11.0.1
>         Environment: Windows
>            Reporter: Viliam Durina
>            Priority: Major
>
> We use manual partition assignment and save the offsets to our storage. The 
> topic also has short "retention.ms" property. When we try to restart 
> consumption from an already evicted offset, the offset is reset according to 
> the "auto.offset.reset" property. That is:
> - if "latest" is configured, it only returns records that were inserted after 
> the `seek` call
> - if "earliest" is configured, it tries to restart at 0, which fails for the 
> same reason, because offset=0 is also evicted.
> Expected behavior is to report the situation with an exception, thrown from 
> either `seek()` or `poll()` call. The user will then be expected to 
> `seekToBeginning` or `seekToEnd` or to any other position.
> Another option is to restart at earliest available record, regardless of the 
> value of the "auto.offset.reset" property. However, this way the consumer has 
> no way of knowing that it missed some records it expected.



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

Reply via email to