Jelajahi Sumber

fix: 企业集团

- 修复序列化问题
许家凯 1 tahun lalu
induk
melakukan
29bceadd4b

+ 1 - 0
src/main/java/com/winhc/max/compute/graph/job/enterprise_group/EnterpriseGroupAggregator.java

@@ -14,6 +14,7 @@ import java.io.IOException;
  * 2023/2/7 14:16
  */
 public class EnterpriseGroupAggregator extends Aggregator<EnterpriseGroupAggValue> {
+
     @Override
     public EnterpriseGroupAggValue createInitialValue(WorkerContext context) throws IOException {
         return new EnterpriseGroupAggValue();

+ 1 - 4
src/main/java/com/winhc/max/compute/graph/job/enterprise_group/EnterpriseGroupVertex.java

@@ -19,10 +19,7 @@ import lombok.experimental.ExtensionMethod;
 import lombok.extern.slf4j.Slf4j;
 
 import java.io.IOException;
-import java.util.ArrayList;
-import java.util.Arrays;
-import java.util.List;
-import java.util.Set;
+import java.util.*;
 import java.util.stream.Collectors;
 
 /**

+ 16 - 4
src/main/java/com/winhc/max/compute/graph/job/enterprise_group/entity/EnterpriseGroupAggValue.java

@@ -28,7 +28,7 @@ public class EnterpriseGroupAggValue implements Writable {
         return flag;
     }
 
-    public long getCount(){
+    public long getCount() {
         return this.num.get();
     }
 
@@ -51,6 +51,14 @@ public class EnterpriseGroupAggValue implements Writable {
     }
 
     @Override
+    public String toString() {
+        return "EnterpriseGroupAggValue{" +
+                "flag=" + flag +
+                ", num=" + num +
+                '}';
+    }
+
+    @Override
     public void write(DataOutput out) throws IOException {
         flag.write(out);
         num.write(out);
@@ -58,9 +66,13 @@ public class EnterpriseGroupAggValue implements Writable {
 
     @Override
     public void readFields(DataInput in) throws IOException {
-        BooleanWritable booleanWritable = new BooleanWritable();
-        LongWritable num = new LongWritable();
-        booleanWritable.readFields(in);
+        if (flag == null) {
+            flag = new BooleanWritable();
+        }
+        if (num == null) {
+            num = new LongWritable();
+        }
+        flag.readFields(in);
         num.readFields(in);
     }
 }