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 09:46:00 UTC

[jira] [Created] (KAFKA-10030) Throw exception while fetching a key from a single partition

Dima R created KAFKA-10030:
------------------------------

             Summary: 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
             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)