diff --git a/pulsar-io/batch-data-generator/pom.xml b/pulsar-io/batch-data-generator/pom.xml
index 002680dddcd6d..0272d1f710b44 100644
--- a/pulsar-io/batch-data-generator/pom.xml
+++ b/pulsar-io/batch-data-generator/pom.xml
@@ -71,6 +71,27 @@
org.apache.nifi
nifi-nar-maven-plugin
+
+ com.github.spotbugs
+ spotbugs-maven-plugin
+ ${spotbugs-maven-plugin.version}
+
+
+ spotbugs
+ verify
+
+ check
+
+
+
+
+
+ com.github.spotbugs
+ spotbugs-maven-plugin
+
+ ${basedir}/src/main/resources/findbugsExclude.xml
+
+
diff --git a/pulsar-io/batch-data-generator/src/main/java/org/apache/pulsar/io/batchdatagenerator/BatchDataGeneratorPushSource.java b/pulsar-io/batch-data-generator/src/main/java/org/apache/pulsar/io/batchdatagenerator/BatchDataGeneratorPushSource.java
index c1c2920e9ffbf..7d065ee006370 100644
--- a/pulsar-io/batch-data-generator/src/main/java/org/apache/pulsar/io/batchdatagenerator/BatchDataGeneratorPushSource.java
+++ b/pulsar-io/batch-data-generator/src/main/java/org/apache/pulsar/io/batchdatagenerator/BatchDataGeneratorPushSource.java
@@ -25,6 +25,7 @@
import org.apache.pulsar.io.core.BatchPushSource;
import org.apache.pulsar.io.core.SourceContext;
+import java.nio.charset.StandardCharsets;
import java.util.Map;
import java.util.concurrent.ExecutorService;
import java.util.concurrent.Executors;
@@ -54,13 +55,14 @@ public void open(Map config, SourceContext context) throws Exception {
public void discover(Consumer taskEater) throws Exception {
log.info("Generating one task for each instance");
for (int i = 0; i < sourceContext.getNumInstances(); ++i) {
- taskEater.accept(String.format("something-%d", System.currentTimeMillis()).getBytes());
+ taskEater.accept(String.format("something-%d", System.currentTimeMillis()).getBytes(StandardCharsets.UTF_8));
}
}
@Override
public void prepare(byte[] instanceSplit) throws Exception {
- log.info("Instance " + sourceContext.getInstanceId() + " got a new discovered task {}", new String(instanceSplit));
+ log.info("Instance " + sourceContext.getInstanceId() + " got a new discovered task {}",
+ new String(instanceSplit, StandardCharsets.UTF_8));
executor.submit(this);
}
diff --git a/pulsar-io/batch-data-generator/src/main/java/org/apache/pulsar/io/batchdatagenerator/BatchDataGeneratorSource.java b/pulsar-io/batch-data-generator/src/main/java/org/apache/pulsar/io/batchdatagenerator/BatchDataGeneratorSource.java
index bee005d9e895d..7345ad36c4122 100644
--- a/pulsar-io/batch-data-generator/src/main/java/org/apache/pulsar/io/batchdatagenerator/BatchDataGeneratorSource.java
+++ b/pulsar-io/batch-data-generator/src/main/java/org/apache/pulsar/io/batchdatagenerator/BatchDataGeneratorSource.java
@@ -24,6 +24,7 @@
import org.apache.pulsar.io.core.BatchSource;
import org.apache.pulsar.io.core.SourceContext;
+import java.nio.charset.StandardCharsets;
import java.util.Map;
import java.util.Optional;
import java.util.function.Consumer;
@@ -46,14 +47,14 @@ public void open(Map config, SourceContext sourceContext) {
public void discover(Consumer taskEater) {
log.info("Generating one task for each instance");
for (int i = 0; i < sourceContext.getNumInstances(); ++i) {
- taskEater.accept("something".getBytes());
+ taskEater.accept("something".getBytes(StandardCharsets.UTF_8));
}
}
@Override
public void prepare(byte[] instanceSplit) {
log.info("Instance " + sourceContext.getInstanceId() + " got a new discovered task");
- final String str = new String(instanceSplit);
+ final String str = new String(instanceSplit, StandardCharsets.UTF_8);
final String expected = "something";
assert str.equals(expected);
iteration = 0;
diff --git a/pulsar-io/batch-data-generator/src/main/resources/findbugsExclude.xml b/pulsar-io/batch-data-generator/src/main/resources/findbugsExclude.xml
new file mode 100644
index 0000000000000..07f4609cfff29
--- /dev/null
+++ b/pulsar-io/batch-data-generator/src/main/resources/findbugsExclude.xml
@@ -0,0 +1,22 @@
+
+
+
diff --git a/pulsar-io/batch-discovery-triggerers/pom.xml b/pulsar-io/batch-discovery-triggerers/pom.xml
index cb9cf36e7829d..c8a7ff570413a 100644
--- a/pulsar-io/batch-discovery-triggerers/pom.xml
+++ b/pulsar-io/batch-discovery-triggerers/pom.xml
@@ -52,4 +52,30 @@
+
+
+
+ com.github.spotbugs
+ spotbugs-maven-plugin
+ ${spotbugs-maven-plugin.version}
+
+
+ spotbugs
+ verify
+
+ check
+
+
+
+
+
+ com.github.spotbugs
+ spotbugs-maven-plugin
+
+ ${basedir}/src/main/resources/findbugsExclude.xml
+
+
+
+
+
diff --git a/pulsar-io/batch-discovery-triggerers/src/main/resources/findbugsExclude.xml b/pulsar-io/batch-discovery-triggerers/src/main/resources/findbugsExclude.xml
new file mode 100644
index 0000000000000..07f4609cfff29
--- /dev/null
+++ b/pulsar-io/batch-discovery-triggerers/src/main/resources/findbugsExclude.xml
@@ -0,0 +1,22 @@
+
+
+