This is an automated email from the ASF dual-hosted git repository.
sunxiaojian pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/rocketmq-connect.git
The following commit(s) were added to refs/heads/master by this push:
new 50a97788 Refactor bad smells: (#409)
50a97788 is described below
commit 50a977887aaa784e698758c7f1d826ae812b9d58
Author: MartinWitt <[email protected]>
AuthorDate: Fri Mar 3 10:38:50 2023 +0100
Refactor bad smells: (#409)
- ToArrayCallWithZeroLengthArrayArgument
The performance of the empty array version is the same, and sometimes even
better, compared
to the pre-sized version. Also, passing a pre-sized array is dangerous for
a concurrent or
synchronized collection as a data race is possible between the
<code>size</code> and <code>toArray</code>
calls. This may result in extra <code>null</code>s at the end of the array
if the collection was concurrently
shrunk during the operation.</p>
See https://shipilev.net/blog/2016/arrays-wisdom-ancients/ for more details.
---
.../src/main/java/org/apache/rocketmq/schema/avro/AvroData.java | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git
a/schema-converter/avro-schema-converter/src/main/java/org/apache/rocketmq/schema/avro/AvroData.java
b/schema-converter/avro-schema-converter/src/main/java/org/apache/rocketmq/schema/avro/AvroData.java
index 4cb10706..90904b6f 100644
---
a/schema-converter/avro-schema-converter/src/main/java/org/apache/rocketmq/schema/avro/AvroData.java
+++
b/schema-converter/avro-schema-converter/src/main/java/org/apache/rocketmq/schema/avro/AvroData.java
@@ -1098,7 +1098,7 @@ public class AvroData {
.enumeration(schema.getParameters().get(AVRO_TYPE_ENUM))
.doc(enumDoc)
.defaultSymbol(enumDefault)
- .symbols(symbols.toArray(new
String[symbols.size()]));
+ .symbols(symbols.toArray(new String[0]));
} else {
// common string
baseSchema =
org.apache.avro.SchemaBuilder.builder().stringType();