You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@hugegraph.apache.org by "zyxxoo (via GitHub)" <gi...@apache.org> on 2023/03/09 08:27:13 UTC

[GitHub] [incubator-hugegraph] zyxxoo commented on a diff in pull request #2151: optimize: remove lock

zyxxoo commented on code in PR #2151:
URL: https://github.com/apache/incubator-hugegraph/pull/2151#discussion_r1130639759


##########
hugegraph-core/src/main/java/org/apache/hugegraph/masterelection/GlobalMasterInfo.java:
##########
@@ -19,26 +19,20 @@
 
 public class GlobalMasterInfo {
 
-    private boolean isMaster;
-    private String url;
-
+    private volatile Info info;
     private volatile boolean featureSupport;
 
     public GlobalMasterInfo() {
         this.featureSupport = false;
+        this.info = new Info(false, "");
     }
 
-    public synchronized void set(boolean isMaster, String url) {
-        this.isMaster = isMaster;
-        this.url = url;
-    }
-
-    public synchronized boolean isMaster() {
-        return this.isMaster;
+    public void info(boolean isMaster, String url) {
+        this.info = new Info(isMaster, url);

Review Comment:
   info define with volatile, so as my think, the read  operator happend-before write operator,
   we read the info must is init finished;
   



-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: dev-unsubscribe@hugegraph.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org