[jira] [Updated] (KAFKA-6538) Enhance ByteStore exceptions with more context information
[ https://issues.apache.org/jira/browse/KAFKA-6538?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Matthias J. Sax updated KAFKA-6538: --- Description: In KIP-182 we refactored all stores to by plain {{Bytes/byte[]}} stores and only have concrete key/value types on outer layers/wrappers of the stores. For this reason, the most inner {{RocksDBStore}} cannot provide useful error messages anymore if a put/get/delete operation fails as it only handles plain bytes. In addition, the corresponding calls to record changelog records to record collectors will also be sending byte arrays only, and hence when there is an error happening, the record collector can only display the key but not the value since it is all bytes: {code:java} [ERROR] org.apache.kafka.streams.processor.internals.RecordCollectorImpl - task [2_2] Error sending record (key {"eventId":XXX,"version":123} value [] timestamp YYY) to topic TTT due to ... {code} Therefore, we should enhance exceptions thrown from {{RocksDBStore}} with corresponding information for which key/value the operation failed in the wrapping stores (KeyValueStore, WindowedStored, and SessionStore). Cf [https://github.com/apache/kafka/pull/4518] that cleans up {{RocksDBStore}} exceptions. This ticket is resolved for the store exceptions. The RecordCollectorImpl issue is tracked via KAFKA-7015 was: In KIP-182 we refactored all stores to by plain {{Bytes/byte[]}} stores and only have concrete key/value types on outer layers/wrappers of the stores. For this reason, the most inner {{RocksDBStore}} cannot provide useful error messages anymore if a put/get/delete operation fails as it only handles plain bytes. In addition, the corresponding calls to record changelog records to record collectors will also be sending byte arrays only, and hence when there is an error happening, the record collector can only display the key but not the value since it is all bytes: {code} [ERROR] org.apache.kafka.streams.processor.internals.RecordCollectorImpl - task [2_2] Error sending record (key {"eventId":XXX,"version":123} value [] timestamp YYY) to topic TTT due to ... {code} Therefore, we should enhance exceptions thrown from {{RocksDBStore}} with corresponding information for which key/value the operation failed in the wrapping stores (KeyValueStore, WindowedStored, and SessionStore). Cf https://github.com/apache/kafka/pull/4518 that cleans up {{RocksDBStore}} exceptions. > Enhance ByteStore exceptions with more context information > -- > > Key: KAFKA-6538 > URL: https://issues.apache.org/jira/browse/KAFKA-6538 > Project: Kafka > Issue Type: Improvement > Components: streams >Affects Versions: 1.1.0 >Reporter: Matthias J. Sax >Assignee: Jagadesh Adireddi >Priority: Minor > Labels: newbie > Fix For: 2.0.0 > > > In KIP-182 we refactored all stores to by plain {{Bytes/byte[]}} stores and > only have concrete key/value types on outer layers/wrappers of the stores. > For this reason, the most inner {{RocksDBStore}} cannot provide useful error > messages anymore if a put/get/delete operation fails as it only handles plain > bytes. > In addition, the corresponding calls to record changelog records to record > collectors will also be sending byte arrays only, and hence when there is an > error happening, the record collector can only display the key but not the > value since it is all bytes: > {code:java} > [ERROR] org.apache.kafka.streams.processor.internals.RecordCollectorImpl - > task [2_2] Error sending record (key {"eventId":XXX,"version":123} > value [] timestamp YYY) to topic TTT > due to ... > {code} > Therefore, we should enhance exceptions thrown from {{RocksDBStore}} with > corresponding information for which key/value the operation failed in the > wrapping stores (KeyValueStore, WindowedStored, and SessionStore). > Cf [https://github.com/apache/kafka/pull/4518] that cleans up > {{RocksDBStore}} exceptions. > This ticket is resolved for the store exceptions. The RecordCollectorImpl > issue is tracked via KAFKA-7015 -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Updated] (KAFKA-6538) Enhance ByteStore exceptions with more context information
[ https://issues.apache.org/jira/browse/KAFKA-6538?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Guozhang Wang updated KAFKA-6538: - Description: In KIP-182 we refactored all stores to by plain {{Bytes/byte[]}} stores and only have concrete key/value types on outer layers/wrappers of the stores. For this reason, the most inner {{RocksDBStore}} cannot provide useful error messages anymore if a put/get/delete operation fails as it only handles plain bytes. In addition, the corresponding calls to record changelog records to record collectors will also be sending byte arrays only, and hence when there is an error happening, the record collector can only display the key but not the value since it is all bytes: {code} [ERROR] org.apache.kafka.streams.processor.internals.RecordCollectorImpl - task [2_2] Error sending record (key {"eventId":XXX,"version":123} value [] timestamp YYY) to topic TTT due to ... {code} Therefore, we should enhance exceptions thrown from {{RocksDBStore}} with corresponding information for which key/value the operation failed in the wrapping stores (KeyValueStore, WindowedStored, and SessionStore). Cf https://github.com/apache/kafka/pull/4518 that cleans up {{RocksDBStore}} exceptions. was: In KIP-182 we refactored all stores to by plain {{Bytes/byte[]}} stores and only have concrete key/value types on outer layers/wrappers of the stores. For this reason, the most inner {{RocksDBStore}} cannot provide useful error messages anymore if a put/get/delete operation fails as it only handles plain bytes. Therefore, we should enhance exceptions thrown from {{RocksDBStore}} with corresponding information for which key/value the operation failed in the wrapping stores (KeyValueStore, WindowedStored, and SessionStore). Cf https://github.com/apache/kafka/pull/4518 that cleans up {{RocksDBStore}} exceptions. > Enhance ByteStore exceptions with more context information > -- > > Key: KAFKA-6538 > URL: https://issues.apache.org/jira/browse/KAFKA-6538 > Project: Kafka > Issue Type: Improvement > Components: streams >Affects Versions: 1.1.0 >Reporter: Matthias J. Sax >Priority: Minor > Labels: newbie > > In KIP-182 we refactored all stores to by plain {{Bytes/byte[]}} stores and > only have concrete key/value types on outer layers/wrappers of the stores. > For this reason, the most inner {{RocksDBStore}} cannot provide useful error > messages anymore if a put/get/delete operation fails as it only handles plain > bytes. > In addition, the corresponding calls to record changelog records to record > collectors will also be sending byte arrays only, and hence when there is an > error happening, the record collector can only display the key but not the > value since it is all bytes: > {code} > [ERROR] org.apache.kafka.streams.processor.internals.RecordCollectorImpl - > task [2_2] Error sending record (key {"eventId":XXX,"version":123} > value [] timestamp YYY) to topic TTT > due to ... > {code} > Therefore, we should enhance exceptions thrown from {{RocksDBStore}} with > corresponding information for which key/value the operation failed in the > wrapping stores (KeyValueStore, WindowedStored, and SessionStore). > Cf https://github.com/apache/kafka/pull/4518 that cleans up {{RocksDBStore}} > exceptions. -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Updated] (KAFKA-6538) Enhance ByteStore exceptions with more context information
[ https://issues.apache.org/jira/browse/KAFKA-6538?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Guozhang Wang updated KAFKA-6538: - Labels: newbie (was: ) > Enhance ByteStore exceptions with more context information > -- > > Key: KAFKA-6538 > URL: https://issues.apache.org/jira/browse/KAFKA-6538 > Project: Kafka > Issue Type: Improvement > Components: streams >Affects Versions: 1.1.0 >Reporter: Matthias J. Sax >Priority: Minor > Labels: newbie > > In KIP-182 we refactored all stores to by plain {{Bytes/byte[]}} stores and > only have concrete key/value types on outer layers/wrappers of the stores. > For this reason, the most inner {{RocksDBStore}} cannot provide useful error > messages anymore if a put/get/delete operation fails as it only handles plain > bytes. > Therefore, we should enhance exceptions thrown from {{RocksDBStore}} with > corresponding information for which key/value the operation failed in the > wrapping stores (KeyValueStore, WindowedStored, and SessionStore). > Cf https://github.com/apache/kafka/pull/4518 that cleans up {{RocksDBStore}} > exceptions. -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Updated] (KAFKA-6538) Enhance ByteStore exceptions with more context information
[ https://issues.apache.org/jira/browse/KAFKA-6538?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Matthias J. Sax updated KAFKA-6538: --- Affects Version/s: (was: 1.2.0) 1.1.0 > Enhance ByteStore exceptions with more context information > -- > > Key: KAFKA-6538 > URL: https://issues.apache.org/jira/browse/KAFKA-6538 > Project: Kafka > Issue Type: Improvement > Components: streams >Affects Versions: 1.1.0 >Reporter: Matthias J. Sax >Priority: Minor > > In KIP-182 we refactored all stores to by plain {{Bytes/byte[]}} stores and > only have concrete key/value types on outer layers/wrappers of the stores. > For this reason, the most inner {{RocksDBStore}} cannot provide useful error > messages anymore if a put/get/delete operation fails as it only handles plain > bytes. > Therefore, we should enhance exceptions thrown from {{RocksDBStore}} with > corresponding information for which key/value the operation failed in the > wrapping stores (KeyValueStore, WindowedStored, and SessionStore). > Cf https://github.com/apache/kafka/pull/4518 that cleans up {{RocksDBStore}} > exceptions. -- This message was sent by Atlassian JIRA (v7.6.3#76005)