This is an automated email from the ASF dual-hosted git repository.
xyz pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/pulsar-client-python.git
The following commit(s) were added to refs/heads/main by this push:
new 48be179 Fix incorrect logs when a message failed to be decoded with
the writer schema (#200)
48be179 is described below
commit 48be1795a7993422cf4bce2785351f48e456dc26
Author: Yunze Xu <[email protected]>
AuthorDate: Mon Feb 19 10:46:53 2024 +0800
Fix incorrect logs when a message failed to be decoded with the writer
schema (#200)
### Motivation
See
https://github.com/apache/pulsar-client-python/blob/f9b2d168ae85f289d6ee043cd81791d569ba8844/pulsar/schema/schema_avro.py#L92C32-L92C69
When `self._decode_bytes(msg.data(), writer_schema)` failed, the error
log is still `Failed to get schema info`, which is confusing.
### Modifications
Modify the error message. Even if it failed at
`self._get_writer_schema(topic, version)`, there would still be error
logs from the C++ client.
---
pulsar/schema/schema_avro.py | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)
diff --git a/pulsar/schema/schema_avro.py b/pulsar/schema/schema_avro.py
index 480afe9..09b341b 100644
--- a/pulsar/schema/schema_avro.py
+++ b/pulsar/schema/schema_avro.py
@@ -91,7 +91,8 @@ if HAS_AVRO:
writer_schema = self._get_writer_schema(topic, version)
return self._decode_bytes(msg.data(), writer_schema)
except Exception as e:
- self._logger.error(f'Failed to get schema info of {topic}
version {version}: {e}')
+ msg_id = msg.message_id()
+ self._logger.warn(f'Failed to decode {msg_id} with schema
{topic} version {version}: {e}')
return self._decode_bytes(msg.data(), self._schema)
def _get_writer_schema(self, topic: str, version: int) -> 'dict':