You are viewing a plain text version of this content. The canonical link for it is here.
Posted to jira@kafka.apache.org by "Dima R (Jira)" <ji...@apache.org> on 2020/05/21 11:14:00 UTC
[jira] [Updated] (KAFKA-10030) Throw exception while fetching a key
from a single partition
[ https://issues.apache.org/jira/browse/KAFKA-10030?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Dima R updated KAFKA-10030:
---------------------------
External issue URL: https://github.com/apache/kafka/pull/8706
> Throw exception while fetching a key from a single partition
> ------------------------------------------------------------
>
> Key: KAFKA-10030
> URL: https://issues.apache.org/jira/browse/KAFKA-10030
> Project: Kafka
> Issue Type: Bug
> Components: streams
> Affects Versions: 2.5.0
> Environment: StreamsConfig.NUM_STREAM_THREADS_CONFIG=2
> Reporter: Dima R
> Priority: Major
> Labels: KAFKA-9445, KIP-562
> Fix For: 2.6.0, 2.5.1
>
>
> StreamThreadStateStoreProvider#stores throws exception whenever taskId is not found, which is not correct behaviour in multi-threaded env where state store partitions are distributed among several StreamTasks.
> {code:java}
> final Task task = tasks.get(keyTaskId);
> if (task == null) {
> throw new InvalidStateStoreException(
> String.format("The specified partition %d for store %s does not exist.",
> storeQueryParams.partition(),
> storeName));
> }{code}
> Reproducible with KStream number of threads more then 1
> StoreQueryIntegrationTest#streamsConfiguration
> config.put(StreamsConfig.NUM_STREAM_THREADS_CONFIG, 2);
>
> Suggested solution is to not throw exception if at least one state store is found, which is always true when using StoreQueryParameters.withPartition
--
This message was sent by Atlassian Jira
(v8.3.4#803005)