Jeremy Custenborder created KAFKA-5548: ------------------------------------------
Summary: SchemaBuilder does not validate input. Key: KAFKA-5548 URL: https://issues.apache.org/jira/browse/KAFKA-5548 Project: Kafka Issue Type: Bug Components: KafkaConnect Reporter: Jeremy Custenborder Assignee: Jeremy Custenborder Priority: Minor SchemaBuilder.map(), SchemaBuilder.array(), and SchemaBuilder.field() do not validate input. This can cause weird NullPointerException exceptions later. For example I mistakenly called field("somefield", null), then later performed an operation against field.schema() which yielded a null. It would be preferable to throw an exception stating the issue. We could throw the a NPE but state what is null. Schema is null in this case for example. {code:java} @Test(expected = NullPointerException.class) public void fieldNameNull() { Schema schema = SchemaBuilder.struct() .field(null, Schema.STRING_SCHEMA) .build(); } @Test(expected = NullPointerException.class) public void fieldSchemaNull() { Schema schema = SchemaBuilder.struct() .field("fieldName", null) .build(); } @Test(expected = NullPointerException.class) public void arraySchemaNull() { Schema schema = SchemaBuilder.array(Schema.STRING_SCHEMA) .build(); } @Test(expected = NullPointerException.class) public void mapKeySchemaNull() { Schema schema = SchemaBuilder.map(null, Schema.STRING_SCHEMA) .build(); } @Test(expected = NullPointerException.class) public void mapValueSchemaNull() { Schema schema = SchemaBuilder.map(Schema.STRING_SCHEMA, null) .build(); } {code} -- This message was sent by Atlassian JIRA (v6.4.14#64029)