[ 
https://issues.apache.org/jira/browse/KAFKA-21111?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Matthias J. Sax updated KAFKA-21111:
------------------------------------
    Description: 
We need to ensure that the refiner is only executed for new clients, RPC 
version 1+, but not for old RPC version 0 clients (4.2/4.3 release).

Older clients don't report task-offsets, and thus we cannot use warmup tasks 
because w/o the ability to observe their restore progress, we could never 
promote them as active later.

Note one corner case: after a GC fail-over, a member might not have send a 
heartbeat yet, and thus we don't know it's RPC version yet. Atm, the code 
treats this incorrectly, and would optimistically assume that it's a v1 client 
and that the refiner can run. This must be change to being conservative and 
treating "unknown" as don't run the refiner.

  was:
We need to ensure that the refiner is only executed for new clients, RPC 
version 1+, but not for old RPC version 0 clients (4.2/4.3 release).

Older clients don't report task-offsets, and thus we cannot use warmup tasks 
because w/o the ability to observe their restore progress, we could never 
promote them as active later.


> Ensure refiner backward compatibility
> -------------------------------------
>
>                 Key: KAFKA-21111
>                 URL: https://issues.apache.org/jira/browse/KAFKA-21111
>             Project: Kafka
>          Issue Type: Sub-task
>          Components: group-coordinator, streams
>            Reporter: Matthias J. Sax
>            Priority: Critical
>
> We need to ensure that the refiner is only executed for new clients, RPC 
> version 1+, but not for old RPC version 0 clients (4.2/4.3 release).
> Older clients don't report task-offsets, and thus we cannot use warmup tasks 
> because w/o the ability to observe their restore progress, we could never 
> promote them as active later.
> Note one corner case: after a GC fail-over, a member might not have send a 
> heartbeat yet, and thus we don't know it's RPC version yet. Atm, the code 
> treats this incorrectly, and would optimistically assume that it's a v1 
> client and that the refiner can run. This must be change to being 
> conservative and treating "unknown" as don't run the refiner.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)

Reply via email to