Skip to content

Commit e46d298

Browse files
garyrussellartembilan
authored andcommitted
GH-2154: Fix Tombstones with Delegating Seriali...
Resolves #2154 Check for null and return. **cherry-pick to 2.8.x, 2.7.x (partial)** # Conflicts: # spring-kafka/src/main/java/org/springframework/kafka/support/serializer/DelegatingByTypeSerializer.java # Conflicts: # spring-kafka/src/main/java/org/springframework/kafka/support/serializer/DelegatingByTopicSerializer.java # spring-kafka/src/main/java/org/springframework/kafka/support/serializer/DelegatingByTypeSerializer.java # spring-kafka/src/main/java/org/springframework/kafka/support/serializer/DelegatingSerializer.java
1 parent bd3d43f commit e46d298

File tree

2 files changed

+10
-1
lines changed

2 files changed

+10
-1
lines changed

Diff for: spring-kafka/src/main/java/org/springframework/kafka/support/serializer/DelegatingByTypeSerializer.java

+6
Original file line numberDiff line numberDiff line change
@@ -60,13 +60,19 @@ public void configure(Map<String, ?> configs, boolean isKey) {
6060
@SuppressWarnings({ RAWTYPES, "unchecked" })
6161
@Override
6262
public byte[] serialize(String topic, Object data) {
63+
if (data == null) {
64+
return null;
65+
}
6366
Serializer delegate = findDelegate(data);
6467
return delegate.serialize(topic, data);
6568
}
6669

6770
@SuppressWarnings({ "unchecked", RAWTYPES })
6871
@Override
6972
public byte[] serialize(String topic, Headers headers, Object data) {
73+
if (data == null) {
74+
return null;
75+
}
7076
Serializer delegate = findDelegate(data);
7177
return delegate.serialize(topic, headers, data);
7278
}

Diff for: spring-kafka/src/main/java/org/springframework/kafka/support/serializer/DelegatingSerializer.java

+4-1
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
/*
2-
* Copyright 2019-2020 the original author or authors.
2+
* Copyright 2019-2022 the original author or authors.
33
*
44
* Licensed under the Apache License, Version 2.0 (the "License");
55
* you may not use this file except in compliance with the License.
@@ -189,6 +189,9 @@ public byte[] serialize(String topic, Object data) {
189189

190190
@Override
191191
public byte[] serialize(String topic, Headers headers, Object data) {
192+
if (data == null) {
193+
return null;
194+
}
192195
byte[] value = null;
193196
String selectorKey = selectorKey();
194197
Header header = headers.lastHeader(selectorKey);

0 commit comments

Comments
 (0)