You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@rocketmq.apache.org by hu...@apache.org on 2023/02/17 07:47:41 UTC
[rocketmq-schema-registry] branch main updated: skip validate for json
This is an automated email from the ASF dual-hosted git repository.
huitong pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/rocketmq-schema-registry.git
The following commit(s) were added to refs/heads/main by this push:
new f4bfd7d skip validate for json
new 0f60dd7 Merge pull request #77 from MatrixHB/remove_validate
f4bfd7d is described below
commit f4bfd7db7072616ad99726a91e1557605c85b2c4
Author: huitong <yi...@163.com>
AuthorDate: Mon Jan 30 16:44:53 2023 +0800
skip validate for json
---
.../schema/registry/client/NormalSchemaRegistryClient.java | 1 +
.../schema/registry/core/compatibility/CompatibilityChecker.java | 2 ++
.../rocketmq/schema/registry/core/service/SchemaServiceImpl.java | 7 ++++++-
3 files changed, 9 insertions(+), 1 deletion(-)
diff --git a/client/src/main/java/org/apache/rocketmq/schema/registry/client/NormalSchemaRegistryClient.java b/client/src/main/java/org/apache/rocketmq/schema/registry/client/NormalSchemaRegistryClient.java
index 966441e..ad9ee26 100644
--- a/client/src/main/java/org/apache/rocketmq/schema/registry/client/NormalSchemaRegistryClient.java
+++ b/client/src/main/java/org/apache/rocketmq/schema/registry/client/NormalSchemaRegistryClient.java
@@ -124,6 +124,7 @@ public class NormalSchemaRegistryClient implements SchemaRegistryClient {
return restService.getAllTenants(cluster);
}
+ @Override
public GetSchemaResponse getSchemaByRecordId(String cluster, String tenant, String subject,
long recordId) throws RestClientException, IOException {
return restService.getSchemaByRecordId(cluster, tenant, subject, recordId);
diff --git a/core/src/main/java/org/apache/rocketmq/schema/registry/core/compatibility/CompatibilityChecker.java b/core/src/main/java/org/apache/rocketmq/schema/registry/core/compatibility/CompatibilityChecker.java
index 20062d3..a6bf1d2 100644
--- a/core/src/main/java/org/apache/rocketmq/schema/registry/core/compatibility/CompatibilityChecker.java
+++ b/core/src/main/java/org/apache/rocketmq/schema/registry/core/compatibility/CompatibilityChecker.java
@@ -28,6 +28,8 @@ public class CompatibilityChecker {
switch (schemaType) {
case AVRO:
return SCHEMA_VALIDATOR_AVRO;
+ case JSON:
+ return null;
default:
throw new SchemaCompatibilityException("Unsupported schema type: " + schemaType);
}
diff --git a/core/src/main/java/org/apache/rocketmq/schema/registry/core/service/SchemaServiceImpl.java b/core/src/main/java/org/apache/rocketmq/schema/registry/core/service/SchemaServiceImpl.java
index 89b7e65..c5f2c1d 100644
--- a/core/src/main/java/org/apache/rocketmq/schema/registry/core/service/SchemaServiceImpl.java
+++ b/core/src/main/java/org/apache/rocketmq/schema/registry/core/service/SchemaServiceImpl.java
@@ -50,6 +50,7 @@ import org.apache.rocketmq.schema.registry.common.utils.CommonUtil;
import org.apache.rocketmq.schema.registry.common.utils.IdGenerator;
import org.apache.rocketmq.schema.registry.common.utils.StorageUtil;
import org.apache.rocketmq.schema.registry.core.compatibility.CompatibilityChecker;
+import org.apache.rocketmq.schema.registry.core.compatibility.SchemaValidator;
import org.apache.rocketmq.schema.registry.core.dependency.DependencyService;
@Slf4j
@@ -180,7 +181,10 @@ public class SchemaServiceImpl implements SchemaService<SchemaDto> {
}
// check compatibility
- CompatibilityChecker.getValidator(update.getMeta().getType()).validate(update, current);
+ SchemaValidator validator = CompatibilityChecker.getValidator(update.getMeta().getType());
+ if (validator != null) {
+ validator.validate(update, current);
+ }
if (config.isUploadEnabled()) {
Dependency dependency = dependencyService.compile(update);
@@ -300,6 +304,7 @@ public class SchemaServiceImpl implements SchemaService<SchemaDto> {
return tenants;
}
+ @Override
public GetSchemaResponse getTargetSchema(QualifiedName qualifiedName) {
final RequestContext requestContext = RequestContextManager.getContext();
log.info("get request context: " + requestContext);