Skip to content

Commit

Permalink
Fix issue 13+16 (#17)
Browse files Browse the repository at this point in the history
* address bug in TypeSchemaMapper

* address key identifier data type range issue

* version bump to 0.4.2 patch release

fixes #13 
fixes #16
  • Loading branch information
hpgrahsl committed Dec 10, 2023
1 parent d291eee commit f95dc8f
Show file tree
Hide file tree
Showing 10 changed files with 46 additions and 51 deletions.
6 changes: 3 additions & 3 deletions connect-transform-kryptonite/pom.xml
Original file line number Diff line number Diff line change
Expand Up @@ -22,15 +22,15 @@
<parent>
<groupId>com.github.hpgrahsl</groupId>
<artifactId>kryptonite-for-kafka</artifactId>
<version>0.4.1</version>
<version>0.4.2</version>
<relativePath>../pom.xml</relativePath>
</parent>
<artifactId>connect-transform-kryptonite</artifactId>
<version>0.4.1</version>
<version>0.4.2</version>
<packaging>jar</packaging>

<properties>
<kryptonite.version>0.4.1</kryptonite.version>
<kryptonite.version>0.4.2</kryptonite.version>
<kafka.version>3.3.1</kafka.version>
<jackson.version>2.14.1</jackson.version>
<logback.version>1.2.11</logback.version>
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -46,7 +46,7 @@ public interface TypeSchemaMapper {
Type.INT8, SchemaBuilder::int8,
Type.INT16, SchemaBuilder::int16,
Type.INT32, SchemaBuilder::int32,
Type.INT64, SchemaBuilder::int16,
Type.INT64, SchemaBuilder::int64,
Type.FLOAT32, SchemaBuilder::float32,
Type.FLOAT64, SchemaBuilder::float64,
Type.STRING, SchemaBuilder::string,
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -113,7 +113,8 @@ void performSchemalessRecordTest(String cipherDataKeys,FieldMode fieldMode, Ciph
"["
+ " {\"name\":\"id\",\"keyId\":\""+keyId1+"\"},"
+ " {\"name\":\"myString\",\"keyId\":\""+keyId2+"\"},"
+ " {\"name\":\"myInt\"},"
+ " {\"name\":\"myInt32\"},"
+ " {\"name\":\"myInt64\"},"
+ " {\"name\":\"myBoolean\",\"keyId\":\""+keyId2+"\"},"
+ " {\"name\":\"mySubDoc1\",\"keyId\":\""+keyId1+"\"},"
+ " {\"name\":\"myArray1\"},"
Expand Down Expand Up @@ -167,7 +168,8 @@ void performSchemalessRecordTest(String cipherDataKeys,FieldMode fieldMode, Ciph
"["
+ " {\"name\":\"id\"},"
+ " {\"name\":\"myString\"},"
+ " {\"name\":\"myInt\"},"
+ " {\"name\":\"myInt32\"},"
+ " {\"name\":\"myInt64\"},"
+ " {\"name\":\"myBoolean\"},"
+ " {\"name\":\"mySubDoc1\"},"
+ " {\"name\":\"myArray1\"},"
Expand Down Expand Up @@ -202,7 +204,8 @@ void performSchemafulRecordTest(String cipherDataKeys,FieldMode fieldMode, Ciphe
"["
+ " {\"name\":\"id\"},"
+ " {\"name\":\"myString\",\"keyId\":\""+keyId1+"\"},"
+ " {\"name\":\"myInt\",\"keyId\":\""+keyId2+"\"},"
+ " {\"name\":\"myInt32\",\"keyId\":\""+keyId2+"\"},"
+ " {\"name\":\"myInt64\",\"keyId\":\""+keyId2+"\"},"
+ " {\"name\":\"myBoolean\"},"
+ " {\"name\":\"mySubDoc1\",\"keyId\":\""+keyId1+"\"},"
+ " {\"name\":\"mySubDoc1.myString\",\"keyId\":\""+keyId1+"\"},"
Expand Down Expand Up @@ -258,7 +261,8 @@ void performSchemafulRecordTest(String cipherDataKeys,FieldMode fieldMode, Ciphe
"["
+ " {\"name\":\"id\",\"schema\": {\"type\": \"STRING\"}},"
+ " {\"name\":\"myString\",\"schema\": {\"type\": \"STRING\"}},"
+ " {\"name\":\"myInt\",\"schema\": {\"type\": \"INT32\"}},"
+ " {\"name\":\"myInt32\",\"schema\": {\"type\": \"INT32\"}},"
+ " {\"name\":\"myInt64\",\"schema\": {\"type\": \"INT64\"}},"
+ " {\"name\":\"myBoolean\",\"schema\": {\"type\": \"BOOLEAN\"}},"
+ " {\"name\":\"mySubDoc1\",\"schema\": { \"type\": \"STRUCT\",\"fields\": [ { \"name\": \"myString\", \"schema\": { \"type\": \"STRING\"}}]}},"
+ " {\"name\":\"mySubDoc1.myString\",\"schema\": {\"type\": \"STRING\"}},"
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -76,14 +76,14 @@ public class TestFixtures {
+ "},"
+ "{\"identifier\":\"key8\","
+ "\"material\":{"
+ "\"primaryKeyId\":1000000004,"
+ "\"primaryKeyId\":3015563227,"
+ "\"key\":["
+ "{\"keyData\":"
+ "{\"typeUrl\":\"type.googleapis.com/google.crypto.tink.AesSivKey\","
+ "\"value\":\"EkBWT3ZL7DmAN91erW3xAzMFDWMaQx34Su3VlaMiTWzjVDbKsH3IRr2HQFnaMvvVz2RH/+eYXn3zvAzWJbReCto/\","
+ "\"keyMaterialType\":\"SYMMETRIC\"},"
+ "\"status\":\"ENABLED\","
+ "\"keyId\":1000000004,"
+ "\"keyId\":3015563227,"
+ "\"outputPrefixType\":\"TINK\""
+ "}"
+ "]"
Expand Down Expand Up @@ -170,7 +170,8 @@ public class TestFixtures {
TEST_OBJ_SCHEMA_1 = SchemaBuilder.struct()
.field("id", Schema.STRING_SCHEMA)
.field("myString", Schema.STRING_SCHEMA)
.field("myInt",Schema.INT32_SCHEMA)
.field("myInt32",Schema.INT32_SCHEMA)
.field("myInt64",Schema.INT64_SCHEMA)
.field("myBoolean", Schema.BOOLEAN_SCHEMA)
.field("mySubDoc1", SchemaBuilder.struct().field("myString",Schema.STRING_SCHEMA).build())
.field("myArray1", SchemaBuilder.array(Schema.STRING_SCHEMA).build())
Expand All @@ -181,7 +182,8 @@ public class TestFixtures {
TEST_OBJ_STRUCT_1 = new Struct(TEST_OBJ_SCHEMA_1)
.put("id","1234567890")
.put("myString","some foo bla text")
.put("myInt",42)
.put("myInt32",42)
.put("myInt64",4294967294L)
.put("myBoolean",true)
.put("mySubDoc1",new Struct(TEST_OBJ_SCHEMA_1.field("mySubDoc1").schema())
.put("myString","hello json")
Expand All @@ -193,7 +195,8 @@ public class TestFixtures {
TEST_OBJ_MAP_1 = new LinkedHashMap<>();
TEST_OBJ_MAP_1.put("id","1234567890");
TEST_OBJ_MAP_1.put("myString","some foo bla text");
TEST_OBJ_MAP_1.put("myInt",42);
TEST_OBJ_MAP_1.put("myInt32",42);
TEST_OBJ_MAP_1.put("myInt64",4294967294L);
TEST_OBJ_MAP_1.put("myBoolean",true);
TEST_OBJ_MAP_1.put("mySubDoc1",Map.of("myString","hello json"));
TEST_OBJ_MAP_1.put("myArray1",List.of("str_1","str_2","...","str_N"));
Expand Down
6 changes: 3 additions & 3 deletions funqy-http-kryptonite/pom.xml
Original file line number Diff line number Diff line change
Expand Up @@ -5,19 +5,19 @@
<parent>
<groupId>com.github.hpgrahsl</groupId>
<artifactId>kryptonite-for-kafka</artifactId>
<version>0.4.1</version>
<version>0.4.2</version>
</parent>
<groupId>com.github.hpgrahsl</groupId>
<artifactId>funqy-http-kryptonite</artifactId>
<version>0.1.1</version>
<version>0.1.2</version>
<name>funqy-http-kryptonite</name>
<properties>
<compiler-plugin.version>3.10.1</compiler-plugin.version>
<google.tink.version>1.7.0</google.tink.version>
<kafka.version>3.3.1</kafka.version>
<kryo.serializers>0.45</kryo.serializers>
<kryo.version>5.4.0</kryo.version>
<kryptonite.version>0.4.1</kryptonite.version>
<kryptonite.version>0.4.2</kryptonite.version>
<maven.compiler.release>11</maven.compiler.release>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
<project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
Expand Down
4 changes: 2 additions & 2 deletions kryptonite/pom.xml
Original file line number Diff line number Diff line change
Expand Up @@ -22,11 +22,11 @@
<parent>
<groupId>com.github.hpgrahsl</groupId>
<artifactId>kryptonite-for-kafka</artifactId>
<version>0.4.1</version>
<version>0.4.2</version>
<relativePath>../pom.xml</relativePath>
</parent>
<artifactId>kryptonite</artifactId>
<version>0.4.1</version>
<version>0.4.2</version>
<packaging>jar</packaging>

<properties>
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -28,20 +28,20 @@ public class TinkKeyConfig {
@JsonIgnore
public static final int RAW_KEY_BYTES_OFFSET = 2;

private int primaryKeyId;
private long primaryKeyId;

private Set<KeyConfig> key;

public TinkKeyConfig() {
}

public TinkKeyConfig(int primaryKeyId,
public TinkKeyConfig(long primaryKeyId,
Set<KeyConfig> key) {
this.primaryKeyId = primaryKeyId;
this.key = key;
}

public int getPrimaryKeyId() {
public long getPrimaryKeyId() {
return primaryKeyId;
}

Expand Down Expand Up @@ -95,13 +95,13 @@ public enum Status {

private KeyData keyData;
private Status status;
private int keyId;
private long keyId;
private String outputPrefixType;

public KeyConfig() {
}

public KeyConfig(KeyData keyData, Status status, int keyId, String outputPrefixType) {
public KeyConfig(KeyData keyData, Status status, long keyId, String outputPrefixType) {
this.keyData = keyData;
this.status = status;
this.keyId = keyId;
Expand All @@ -116,7 +116,7 @@ public Status getStatus() {
return status;
}

public int getKeyId() {
public long getKeyId() {
return keyId;
}

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -17,6 +17,8 @@
package com.github.hpgrahsl.kryptonite.config;

import com.fasterxml.jackson.annotation.JsonIgnore;

import java.util.Objects;
import java.util.Set;

public class TinkKeyConfigEncrypted {
Expand All @@ -41,11 +43,7 @@ public KeysetInfo getKeysetInfo() {

@Override
public int hashCode() {
final int prime = 31;
int result = 1;
result = prime * result + ((encryptedKeyset == null) ? 0 : encryptedKeyset.hashCode());
result = prime * result + ((keysetInfo == null) ? 0 : keysetInfo.hashCode());
return result;
return Objects.hash(encryptedKeyset, keysetInfo);
}

@Override
Expand Down Expand Up @@ -90,17 +88,17 @@ public byte[] getKeyBytesForEnabledPkId() {

public static class KeysetInfo {

private int primaryKeyId;
private long primaryKeyId;
private Set<KeyInfo> keyInfo;

public KeysetInfo() {}

public KeysetInfo(int primaryKeyId, Set<KeyInfo> keyInfo) {
public KeysetInfo(long primaryKeyId, Set<KeyInfo> keyInfo) {
this.primaryKeyId = primaryKeyId;
this.keyInfo = keyInfo;
}

public int getPrimaryKeyId() {
public long getPrimaryKeyId() {
return primaryKeyId;
}

Expand All @@ -110,11 +108,7 @@ public Set<KeyInfo> getKeyInfo() {

@Override
public int hashCode() {
final int prime = 31;
int result = 1;
result = prime * result + primaryKeyId;
result = prime * result + ((keyInfo == null) ? 0 : keyInfo.hashCode());
return result;
return Objects.hash(primaryKeyId, keyInfo);
}

@Override
Expand Down Expand Up @@ -152,12 +146,12 @@ public enum Status {

private String typeUrl;
private Status status;
private int keyId;
private long keyId;
private String outputPrefixType;

public KeyInfo() {}

public KeyInfo(String typeUrl, Status status, int keyId, String outputPrefixType) {
public KeyInfo(String typeUrl, Status status, long keyId, String outputPrefixType) {
this.typeUrl = typeUrl;
this.status = status;
this.keyId = keyId;
Expand All @@ -172,7 +166,7 @@ public Status getStatus() {
return status;
}

public int getKeyId() {
public long getKeyId() {
return keyId;
}

Expand All @@ -182,13 +176,7 @@ public String getOutputPrefixType() {

@Override
public int hashCode() {
final int prime = 31;
int result = 1;
result = prime * result + ((typeUrl == null) ? 0 : typeUrl.hashCode());
result = prime * result + ((status == null) ? 0 : status.hashCode());
result = prime * result + keyId;
result = prime * result + ((outputPrefixType == null) ? 0 : outputPrefixType.hashCode());
return result;
return Objects.hash(typeUrl, status, keyId, outputPrefixType);
}

@Override
Expand Down
6 changes: 3 additions & 3 deletions ksqldb-udfs-kryptonite/pom.xml
Original file line number Diff line number Diff line change
Expand Up @@ -23,15 +23,15 @@
<parent>
<groupId>com.github.hpgrahsl</groupId>
<artifactId>kryptonite-for-kafka</artifactId>
<version>0.4.1</version>
<version>0.4.2</version>
<relativePath>../pom.xml</relativePath>
</parent>
<artifactId>ksqldb-udfs-kryptonite</artifactId>
<version>0.2.1</version>
<version>0.2.2</version>
<packaging>jar</packaging>

<properties>
<kryptonite.version>0.4.1</kryptonite.version>
<kryptonite.version>0.4.2</kryptonite.version>
<ksql.version>7.3.0</ksql.version>
<jackson.version>2.14.1</jackson.version>
<logback.version>1.2.11</logback.version>
Expand Down
2 changes: 1 addition & 1 deletion pom.xml
Original file line number Diff line number Diff line change
Expand Up @@ -20,7 +20,7 @@
<modelVersion>4.0.0</modelVersion>
<groupId>com.github.hpgrahsl</groupId>
<artifactId>kryptonite-for-kafka</artifactId>
<version>0.4.1</version>
<version>0.4.2</version>
<packaging>pom</packaging>

<modules>
Expand Down

0 comments on commit f95dc8f

Please sign in to comment.