[
https://issues.apache.org/jira/browse/GOBBLIN-1673?focusedWorklogId=807613&page=com.atlassian.jira.plugin.system.issuetabpanels:worklog-tabpanel#worklog-807613
]
ASF GitHub Bot logged work on GOBBLIN-1673:
-------------------------------------------
Author: ASF GitHub Bot
Created on: 09/Sep/22 22:52
Start Date: 09/Sep/22 22:52
Worklog Time Spent: 10m
Work Description: Will-Lo commented on code in PR #3539:
URL: https://github.com/apache/gobblin/pull/3539#discussion_r967525134
##########
gobblin-runtime/src/main/java/org/apache/gobblin/runtime/messaging/data/DynamicWorkUnitSerde.java:
##########
@@ -0,0 +1,112 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package org.apache.gobblin.runtime.messaging.data;
+
+import com.google.common.base.Charsets;
+import com.google.common.base.Preconditions;
+import com.google.gson.Gson;
+import com.google.gson.JsonElement;
+import com.google.gson.JsonObject;
+import java.nio.charset.Charset;
+import lombok.NonNull;
+
+/**
+ * Library for serializing / deserializing {@link DynamicWorkUnitMessage}.
This solution maintains implementation
+ * specific fields not specified in the interface and is dependent on {@link
Gson} to do the serialization / deserialization
+ */
+public final class DynamicWorkUnitSerde {
+ private static final Gson GSON = new Gson();
+ private static final String PROPS_PREFIX = "DynamicWorkUnit.Props";
+ private static final String MESSAGE_IMPLEMENTATION = PROPS_PREFIX +
".MessageImplementationClass";
+ private static final Charset DEFAULT_CHAR_ENCODING = Charsets.UTF_8;
+
+ private DynamicWorkUnitSerde() {
+ throw new RuntimeException("Cannot instantiate utils class");
Review Comment:
This RuntimeException should be redundant if the constructor is private?
Issue Time Tracking
-------------------
Worklog Id: (was: 807613)
Remaining Estimate: 69h 10m (was: 69h 20m)
Time Spent: 2h 50m (was: 2h 40m)
> [Helix Dynamic Workunit] Message Schema for splitting workuntis
> ---------------------------------------------------------------
>
> Key: GOBBLIN-1673
> URL: https://issues.apache.org/jira/browse/GOBBLIN-1673
> Project: Apache Gobblin
> Issue Type: New Feature
> Components: gobblin-helix
> Reporter: Matthew Ho
> Assignee: Abhishek Tiwari
> Priority: Major
> Original Estimate: 72h
> Time Spent: 2h 50m
> Remaining Estimate: 69h 10m
>
> For the Helix Dynamic Workunits, task runners will produce messages
> indicating the current workunit health and the application master will
> consume these messages.
> A message will be sent from the task runner to the AM when the task runner
> experiences lag during ingestion. This ticket is the schema proposal for this
> message.
--
This message was sent by Atlassian Jira
(v8.20.10#820010)