From add8225ec2dbef80ed0ea429805b246966ba0092 Mon Sep 17 00:00:00 2001
From: Marcin Chrzanowski <marcin.j.chrzanowski@gmail.com>
Date: Sat, 11 Jan 2020 22:23:57 +0100
Subject: Add logs and stuff

---
 .../java/pl/edu/mimuw/cloudatlas/agent/modules/GossipGirl.java | 10 ++++++++++
 .../pl/edu/mimuw/cloudatlas/agent/modules/GossipGirlState.java |  1 +
 .../java/pl/edu/mimuw/cloudatlas/agent/modules/UDUPServer.java |  2 +-
 3 files changed, 12 insertions(+), 1 deletion(-)

diff --git a/src/main/java/pl/edu/mimuw/cloudatlas/agent/modules/GossipGirl.java b/src/main/java/pl/edu/mimuw/cloudatlas/agent/modules/GossipGirl.java
index dd8f0b7..fb721dc 100644
--- a/src/main/java/pl/edu/mimuw/cloudatlas/agent/modules/GossipGirl.java
+++ b/src/main/java/pl/edu/mimuw/cloudatlas/agent/modules/GossipGirl.java
@@ -36,6 +36,7 @@ public class GossipGirl extends Module {
 
     public void handleTyped(GossipGirlMessage message) throws InterruptedException, InvalidMessageType {
         switch(message.getType()) {
+            System.out.println("INFO: got GossipGirlMessage " + message.getType());
             case INITIATE:
                 initiateGossip((InitiateGossipMessage) message);
                 break;
@@ -59,6 +60,7 @@ public class GossipGirl extends Module {
     public void handleTyped(ResponseMessage message) throws InterruptedException, InvalidMessageType {
         switch(message.getType()) {
             case STATE:
+                System.out.println("INFO: GossipGirl got a StateMessage");
                 setState((StateMessage) message);
                 break;
             default:
@@ -72,6 +74,7 @@ public class GossipGirl extends Module {
         gossipStates.put(gossipId, new GossipGirlState(gossipId, message.getOurPath(), message.getTheirContact(), true));
 
         GetStateMessage getState = new GetStateMessage("", 0, ModuleType.GOSSIP, gossipId);
+        System.out.println("INFO: GossipGirl sending GetStateMessage when initiating");
         sendMessage(getState);
     }
 
@@ -89,6 +92,7 @@ public class GossipGirl extends Module {
         gossipStates.get(gossipId).handleHejka(message);
 
         GetStateMessage getState = new GetStateMessage("", 0, ModuleType.GOSSIP, gossipId);
+        System.out.println("INFO: GossipGirl sending GetStateMessage when responding");
         sendMessage(getState);
     }
 
@@ -107,6 +111,7 @@ public class GossipGirl extends Module {
                         state.getQueryTimestampsToSend()
                 );
                 UDUPMessage udupMessage = new UDUPMessage("", 0, state.theirContact, hejka);
+                System.out.println("INFO: GossipGirl sending HejkaMessage");
                 sendMessage(udupMessage);
                 state.sentHejka();
             } else if (state.state == GossipGirlState.State.SEND_NO_CO_TAM) {
@@ -121,6 +126,7 @@ public class GossipGirl extends Module {
                         state.hejkaReceiveTimestamp
                 );
                 UDUPMessage udupMessage = new UDUPMessage("", 0, state.theirContact, noCoTam);
+                System.out.println("INFO: GossipGirl sending NoCoTamMessage");
                 sendMessage(udupMessage);
                 state.sentNoCoTam();
             }
@@ -143,12 +149,14 @@ public class GossipGirl extends Module {
         for (ZMI zmi : state.getZMIsToSend()) {
             AttributesMessage attributesMessage = new AttributesMessage("", 0, zmi.getPathName(), zmi.getAttributes(), state.theirGossipId);
             UDUPMessage udupMessage = new UDUPMessage("", 0, state.theirContact, attributesMessage);
+            System.out.println("INFO: GossipGirl sending AttributesMessage");
             sendMessage(udupMessage);
         }
 
         for (Entry<Attribute, ValueQuery> query : state.getQueriesToSend()) {
             QueryMessage queryMessage = new QueryMessage("", 0, query.getKey(), query.getValue(), state.theirGossipId);
             UDUPMessage udupMessage = new UDUPMessage("", 0, state.theirContact, queryMessage);
+            System.out.println("INFO: GossipGirl sending QueryMessage");
             sendMessage(udupMessage);
         }
         state.sentInfo();
@@ -162,6 +170,7 @@ public class GossipGirl extends Module {
                 sendInfo(state);
             }
             UpdateAttributesMessage updateMessage = new UpdateAttributesMessage("", 0, message.getPath().toString(), message.getAttributes());
+            System.out.println("INFO: GossipGirl sending UpdateAttributesMessage");
             sendMessage(updateMessage);
             if (state.state == GossipGirlState.State.FINISHED) {
                 gossipStates.remove(message.getReceiverGossipId());
@@ -181,6 +190,7 @@ public class GossipGirl extends Module {
                 new SimpleImmutableEntry(message.getQuery(), state.getTheirQueryTimestamp(message.getName()))
             );
             UpdateQueriesMessage updateMessage = new UpdateQueriesMessage("", 0, queries);
+            System.out.println("INFO: GossipGirl sending UpdateQueriesMessage");
             sendMessage(updateMessage);
             if (state.state == GossipGirlState.State.FINISHED) {
                 gossipStates.remove(message.getReceiverGossipId());
diff --git a/src/main/java/pl/edu/mimuw/cloudatlas/agent/modules/GossipGirlState.java b/src/main/java/pl/edu/mimuw/cloudatlas/agent/modules/GossipGirlState.java
index eafbcca..81cb9f2 100644
--- a/src/main/java/pl/edu/mimuw/cloudatlas/agent/modules/GossipGirlState.java
+++ b/src/main/java/pl/edu/mimuw/cloudatlas/agent/modules/GossipGirlState.java
@@ -59,6 +59,7 @@ public class GossipGirlState {
         this.gossipId = gossipId;
         this.ourPath = ourPath;
         this.theirContact = theirContact;
+        System.out.println("INFO: initializing Gossip state, their contact " + theirContact.toString());
         if (initiating) {
             state = State.WAIT_FOR_STATE_INITIALIZER;
         } else {
diff --git a/src/main/java/pl/edu/mimuw/cloudatlas/agent/modules/UDUPServer.java b/src/main/java/pl/edu/mimuw/cloudatlas/agent/modules/UDUPServer.java
index 0c5bc86..3da380c 100644
--- a/src/main/java/pl/edu/mimuw/cloudatlas/agent/modules/UDUPServer.java
+++ b/src/main/java/pl/edu/mimuw/cloudatlas/agent/modules/UDUPServer.java
@@ -23,7 +23,7 @@ public class UDUPServer implements Runnable {
     private final AtomicBoolean running;
 
     public UDUPServer(InetAddress addr, int port, int bufSize) throws SocketException {
-        this.socket = new DatagramSocket(port, addr);
+        this.socket = new DatagramSocket(port);
         this.address = addr;
         this.bufSize = bufSize;
         this.partialPackets = new HashMap<>();
-- 
cgit v1.2.3


From 48ea2d21e3f8f138e1b440fae694679198efd45c Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Magdalena=20Grodzi=C5=84ska?= <mag.grodzinska@gmail.com>
Date: Sat, 11 Jan 2020 22:25:10 +0100
Subject: Fix bad line

---
 src/main/java/pl/edu/mimuw/cloudatlas/agent/modules/GossipGirl.java | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/src/main/java/pl/edu/mimuw/cloudatlas/agent/modules/GossipGirl.java b/src/main/java/pl/edu/mimuw/cloudatlas/agent/modules/GossipGirl.java
index fb721dc..02b69c8 100644
--- a/src/main/java/pl/edu/mimuw/cloudatlas/agent/modules/GossipGirl.java
+++ b/src/main/java/pl/edu/mimuw/cloudatlas/agent/modules/GossipGirl.java
@@ -35,8 +35,8 @@ public class GossipGirl extends Module {
     }
 
     public void handleTyped(GossipGirlMessage message) throws InterruptedException, InvalidMessageType {
+        System.out.println("INFO: got GossipGirlMessage " + message.getType());
         switch(message.getType()) {
-            System.out.println("INFO: got GossipGirlMessage " + message.getType());
             case INITIATE:
                 initiateGossip((InitiateGossipMessage) message);
                 break;
-- 
cgit v1.2.3


From 715869151e0551b0a99b1175f68cabe25df392c7 Mon Sep 17 00:00:00 2001
From: Marcin Chrzanowski <marcin.j.chrzanowski@gmail.com>
Date: Sat, 11 Jan 2020 22:37:49 +0100
Subject: Register ValueDouble with kryo

---
 src/main/java/pl/edu/mimuw/cloudatlas/agent/modules/UDUPSerializer.java | 1 +
 1 file changed, 1 insertion(+)

diff --git a/src/main/java/pl/edu/mimuw/cloudatlas/agent/modules/UDUPSerializer.java b/src/main/java/pl/edu/mimuw/cloudatlas/agent/modules/UDUPSerializer.java
index f858468..efa3dae 100644
--- a/src/main/java/pl/edu/mimuw/cloudatlas/agent/modules/UDUPSerializer.java
+++ b/src/main/java/pl/edu/mimuw/cloudatlas/agent/modules/UDUPSerializer.java
@@ -106,6 +106,7 @@ public class UDUPSerializer {
         kryo.register(Value.class);
         kryo.register(ValueBoolean.class);
         kryo.register(ValueContact.class);
+        kryo.register(ValueDouble.class);
         kryo.register(ValueDuration.class);
         kryo.register(ValueInt.class);
         kryo.register(ValueNull.class);
-- 
cgit v1.2.3


From 8fc15a98e6a674d5f902382afa668cbafd0a88c4 Mon Sep 17 00:00:00 2001
From: Marcin Chrzanowski <marcin.j.chrzanowski@gmail.com>
Date: Sat, 11 Jan 2020 22:41:35 +0100
Subject: Add thing to kryo

---
 src/main/java/pl/edu/mimuw/cloudatlas/agent/modules/UDUPSerializer.java | 1 +
 1 file changed, 1 insertion(+)

diff --git a/src/main/java/pl/edu/mimuw/cloudatlas/agent/modules/UDUPSerializer.java b/src/main/java/pl/edu/mimuw/cloudatlas/agent/modules/UDUPSerializer.java
index efa3dae..20cb98a 100644
--- a/src/main/java/pl/edu/mimuw/cloudatlas/agent/modules/UDUPSerializer.java
+++ b/src/main/java/pl/edu/mimuw/cloudatlas/agent/modules/UDUPSerializer.java
@@ -122,6 +122,7 @@ public class UDUPSerializer {
         kryo.register(AttributesUtil.class);
 
         kryo.register(Type.class);
+        kryo.register(Type.PrimaryType.class);
         kryo.register(TypeCollection.class);
         kryo.register(TypePrimitive.class);
 
-- 
cgit v1.2.3


From 1b01c0c2daa289ee99bf14edaeb6b7351aa6b891 Mon Sep 17 00:00:00 2001
From: Marcin Chrzanowski <marcin.j.chrzanowski@gmail.com>
Date: Sun, 12 Jan 2020 12:04:59 +0100
Subject: Add more logs

---
 .../java/pl/edu/mimuw/cloudatlas/agent/modules/GossipGirl.java |  7 +++++++
 .../pl/edu/mimuw/cloudatlas/agent/modules/GossipGirlState.java | 10 ++++++++++
 2 files changed, 17 insertions(+)

diff --git a/src/main/java/pl/edu/mimuw/cloudatlas/agent/modules/GossipGirl.java b/src/main/java/pl/edu/mimuw/cloudatlas/agent/modules/GossipGirl.java
index 02b69c8..0ec9d6c 100644
--- a/src/main/java/pl/edu/mimuw/cloudatlas/agent/modules/GossipGirl.java
+++ b/src/main/java/pl/edu/mimuw/cloudatlas/agent/modules/GossipGirl.java
@@ -99,6 +99,7 @@ public class GossipGirl extends Module {
     private void setState(StateMessage message) throws InterruptedException {
         GossipGirlState state = gossipStates.get(message.getRequestId());
         if (state != null) {
+            System.out.println("INFO: setting state in gossip " + Long.toString(message.getRequestId()));
             state.setState(message.getZMI(), message.getQueries());
             if (state.state == GossipGirlState.State.SEND_HEJKA) {
                 HejkaMessage hejka = new HejkaMessage(
@@ -138,14 +139,18 @@ public class GossipGirl extends Module {
     private void handleNoCoTam(NoCoTamMessage message) throws InterruptedException {
         GossipGirlState state = gossipStates.get(message.getReceiverGossipId());
         if (state != null) {
+            System.out.println("INFO: handling NoCoTamMessage in" + Long.toString(message.getReceiverGossipId()));
             state.handleNoCoTam(message);
+            System.out.println("DEBUG: handled NoCoTam in GossipGirlState");
             sendInfo(state);
+            System.out.println("DEBUG: sent info after NoCoTam");
         } else {
             System.out.println("ERROR: GossipGirl got state for a nonexistent gossip");
         }
     }
 
     private void sendInfo(GossipGirlState state) throws InterruptedException {
+        System.out.println("DEBUG: about to send info");
         for (ZMI zmi : state.getZMIsToSend()) {
             AttributesMessage attributesMessage = new AttributesMessage("", 0, zmi.getPathName(), zmi.getAttributes(), state.theirGossipId);
             UDUPMessage udupMessage = new UDUPMessage("", 0, state.theirContact, attributesMessage);
@@ -165,6 +170,7 @@ public class GossipGirl extends Module {
     private void handleAttributes(AttributesMessage message) throws InterruptedException {
         GossipGirlState state = gossipStates.get(message.getReceiverGossipId());
         if (state != null) {
+            System.out.println("INFO: handling Attributes in " + Long.toString(message.getReceiverGossipId()));
             state.gotAttributes(message);
             if (state.state == GossipGirlState.State.SEND_INFO) {
                 sendInfo(state);
@@ -183,6 +189,7 @@ public class GossipGirl extends Module {
     private void handleQuery(QueryMessage message) throws InterruptedException {
         GossipGirlState state = gossipStates.get(message.getReceiverGossipId());
         if (state != null) {
+            System.out.println("INFO: handling Query in " + Long.toString(message.getReceiverGossipId()));
             state.gotQuery(message.getName());
             Map<Attribute, Entry<ValueQuery, ValueTime>> queries = new HashMap();
             queries.put(
diff --git a/src/main/java/pl/edu/mimuw/cloudatlas/agent/modules/GossipGirlState.java b/src/main/java/pl/edu/mimuw/cloudatlas/agent/modules/GossipGirlState.java
index 81cb9f2..6ee7474 100644
--- a/src/main/java/pl/edu/mimuw/cloudatlas/agent/modules/GossipGirlState.java
+++ b/src/main/java/pl/edu/mimuw/cloudatlas/agent/modules/GossipGirlState.java
@@ -124,16 +124,20 @@ public class GossipGirlState {
     }
 
     public void handleNoCoTam(NoCoTamMessage message) {
+        System.out.println("DEBUG: in GossipGirlState handleNoCoTam");
         switch (state) {
             case WAIT_FOR_NO_CO_TAM:
+                System.out.println("DEBUG: lets do this");
                 theirGossipId = message.getSenderGossipId();
                 theirZoneTimestamps = message.getZoneTimestamps();
                 theirQueryTimestamps = message.getQueryTimestamps();
                 hejkaSendTimestamp = message.getHejkaSendTimestamp();
                 hejkaReceiveTimestamp = message.getHejkaReceiveTimestamp();
+                System.out.println("DEBUG: set basic stuff");
                 setZonesToSend();
                 setQueriesToSend();
                 setWaitingFor();
+                System.out.println("DEBUG: set big stuff");
                 state = State.SEND_INFO;
                 break;
             default:
@@ -163,6 +167,8 @@ public class GossipGirlState {
 
     public Map<PathName, ValueTime> getZoneTimestampsToSend() {
         Map<PathName, ValueTime> timestamps = new HashMap();
+        System.out.println("Getting zone timestamps to send to " + theirContact.getName().toString());
+        System.out.println("hierarchy is " + hierarchy.toString());
         collectZoneTimestamps(timestamps, hierarchy, theirContact.getName());
         return timestamps;
     }
@@ -178,12 +184,14 @@ public class GossipGirlState {
 
     public void setZonesToSend() {
         zonesToSend = new LinkedList();
+        System.out.println("DEBUG: timestamps to send: " + getZoneTimestampsToSend().toString());
         for (Entry<PathName, ValueTime> timestampedPath : getZoneTimestampsToSend().entrySet()) {
             ValueTime theirTimestamp = theirZoneTimestamps.get(timestampedPath.getKey());
             if (theirTimestamp == null || ValueUtils.valueLower(theirTimestamp, timestampedPath.getValue())) {
                 zonesToSend.add(timestampedPath.getKey());
             }
         }
+        System.out.println("DEBUG: zones to send: " + zonesToSend.toString());
     }
 
     public void setQueriesToSend() {
@@ -194,6 +202,7 @@ public class GossipGirlState {
                 queriesToSend.add(timestampedQuery.getKey());
             }
         }
+        System.out.println("DEBUG: Queries to send: " + queriesToSend.toString());
     }
 
     public List<ZMI> getZMIsToSend() {
@@ -222,6 +231,7 @@ public class GossipGirlState {
     }
 
     public void collectZoneTimestamps(Map<PathName, ValueTime> timestamps, ZMI currentZMI, PathName recipientPath) {
+        System.out.println("collecting timestamps, on " + currentZMI.getPathName().toString());
         for (ZMI zmi : currentZMI.getSons()) {
             if (interestedIn(recipientPath, zmi.getPathName())) {
                 ValueTime timestamp = (ValueTime) zmi.getAttributes().getOrNull("timestamp");
-- 
cgit v1.2.3


From 9c6a9bb5a8ce6d3282d1fd669214911c302e9aca Mon Sep 17 00:00:00 2001
From: Marcin Chrzanowski <marcin.j.chrzanowski@gmail.com>
Date: Sun, 12 Jan 2020 14:39:29 +0100
Subject: Remove event bus log

---
 src/main/java/pl/edu/mimuw/cloudatlas/agent/EventBus.java | 1 -
 1 file changed, 1 deletion(-)

diff --git a/src/main/java/pl/edu/mimuw/cloudatlas/agent/EventBus.java b/src/main/java/pl/edu/mimuw/cloudatlas/agent/EventBus.java
index 0e972f4..3d3d279 100644
--- a/src/main/java/pl/edu/mimuw/cloudatlas/agent/EventBus.java
+++ b/src/main/java/pl/edu/mimuw/cloudatlas/agent/EventBus.java
@@ -49,7 +49,6 @@ public class EventBus implements Runnable {
     }
 
     public void routeMessage(AgentMessage msg) throws InterruptedException {
-        System.out.println("Event bus routing message");
         executors.get(msg.getDestinationModule()).addMessage(msg);
     }
 
-- 
cgit v1.2.3


From 16c2b56ed2c0039484d754e984bffc91b6f5f552 Mon Sep 17 00:00:00 2001
From: Marcin Chrzanowski <marcin.j.chrzanowski@gmail.com>
Date: Sun, 12 Jan 2020 17:10:44 +0100
Subject: Ignore UDUP tests

---
 src/test/java/pl/edu/mimuw/cloudatlas/agent/UDUPTest.java | 1 +
 1 file changed, 1 insertion(+)

diff --git a/src/test/java/pl/edu/mimuw/cloudatlas/agent/UDUPTest.java b/src/test/java/pl/edu/mimuw/cloudatlas/agent/UDUPTest.java
index f731706..922ebe2 100644
--- a/src/test/java/pl/edu/mimuw/cloudatlas/agent/UDUPTest.java
+++ b/src/test/java/pl/edu/mimuw/cloudatlas/agent/UDUPTest.java
@@ -20,6 +20,7 @@ import java.net.UnknownHostException;
 
 // TODO add serialization tests that target custom serializers (type collections!)
 
+@Ignore
 public class UDUPTest {
 
     @Test
-- 
cgit v1.2.3