Merge branch 'stable-2.15'

* stable-2.15:
  Fix equals method in IndexGroupTask
  Fix failing configuration tests
  Display info about channel's address in debug log
  Add debug logging to the Configuration class
  Fix usage of DEFAULT_SKIP_INTERFACE_LIST

Change-Id: If97c2f6d78880def221007048e04caf2e04026e6
diff --git a/src/main/java/com/ericsson/gerrit/plugins/highavailability/Configuration.java b/src/main/java/com/ericsson/gerrit/plugins/highavailability/Configuration.java
index abe267f..aba6c05 100644
--- a/src/main/java/com/ericsson/gerrit/plugins/highavailability/Configuration.java
+++ b/src/main/java/com/ericsson/gerrit/plugins/highavailability/Configuration.java
@@ -237,6 +237,7 @@
 
     private PeerInfo(Config cfg) {
       strategy = cfg.getEnum(PEER_INFO_SECTION, null, STRATEGY_KEY, DEFAULT_PEER_INFO_STRATEGY);
+      log.debug("Strategy: {}", strategy.name());
     }
 
     public PeerInfoStrategy strategy() {
@@ -251,6 +252,7 @@
       url =
           trimTrailingSlash(
               Strings.nullToEmpty(cfg.getString(PEER_INFO_SECTION, STATIC_SUBSECTION, URL_KEY)));
+      log.debug("Url: {}", url);
     }
 
     public String url() {
@@ -263,6 +265,7 @@
 
     private PeerInfoJGroups(Config cfg) {
       myUrl = trimTrailingSlash(cfg.getString(PEER_INFO_SECTION, JGROUPS_SUBSECTION, MY_URL_KEY));
+      log.debug("My Url: {}", myUrl);
     }
 
     public String myUrl() {
@@ -276,8 +279,10 @@
 
     private JGroups(Config cfg) {
       String[] skip = cfg.getStringList(JGROUPS_SECTION, null, SKIP_INTERFACE_KEY);
-      skipInterface = skip == null ? DEFAULT_SKIP_INTERFACE_LIST : ImmutableList.copyOf(skip);
+      skipInterface = skip.length == 0 ? DEFAULT_SKIP_INTERFACE_LIST : ImmutableList.copyOf(skip);
+      log.debug("Skip interface(s): {}", skipInterface);
       clusterName = getString(cfg, JGROUPS_SECTION, null, CLUSTER_NAME_KEY, DEFAULT_CLUSTER_NAME);
+      log.debug("Cluster name: {}", clusterName);
     }
 
     public ImmutableList<String> skipInterface() {
diff --git a/src/main/java/com/ericsson/gerrit/plugins/highavailability/index/IndexEventHandler.java b/src/main/java/com/ericsson/gerrit/plugins/highavailability/index/IndexEventHandler.java
index 525c7ed..59ab843 100644
--- a/src/main/java/com/ericsson/gerrit/plugins/highavailability/index/IndexEventHandler.java
+++ b/src/main/java/com/ericsson/gerrit/plugins/highavailability/index/IndexEventHandler.java
@@ -185,7 +185,7 @@
         return false;
       }
       IndexGroupTask other = (IndexGroupTask) obj;
-      return groupUUID == other.groupUUID;
+      return groupUUID.equals(other.groupUUID);
     }
 
     @Override
diff --git a/src/main/java/com/ericsson/gerrit/plugins/highavailability/peers/jgroups/JGroupsPeerInfoProvider.java b/src/main/java/com/ericsson/gerrit/plugins/highavailability/peers/jgroups/JGroupsPeerInfoProvider.java
index cc573fc..5808c78 100644
--- a/src/main/java/com/ericsson/gerrit/plugins/highavailability/peers/jgroups/JGroupsPeerInfoProvider.java
+++ b/src/main/java/com/ericsson/gerrit/plugins/highavailability/peers/jgroups/JGroupsPeerInfoProvider.java
@@ -114,6 +114,9 @@
       Optional<InetAddress> address = finder.findAddress();
       if (address.isPresent()) {
         channel.getProtocolStack().getTransport().setBindAddress(address.get());
+        log.debug("Channel bound to {}", address.get());
+      } else {
+        log.warn("Channel not bound: address not present");
       }
       channel.setReceiver(this);
       channel.setDiscardOwnMessages(true);
diff --git a/src/test/java/com/ericsson/gerrit/plugins/highavailability/ConfigurationTest.java b/src/test/java/com/ericsson/gerrit/plugins/highavailability/ConfigurationTest.java
index 85dc137..e9b39c7 100644
--- a/src/test/java/com/ericsson/gerrit/plugins/highavailability/ConfigurationTest.java
+++ b/src/test/java/com/ericsson/gerrit/plugins/highavailability/ConfigurationTest.java
@@ -108,6 +108,8 @@
         .thenReturn(SHARED_DIRECTORY);
     when(configMock.getEnum(PEER_INFO_SECTION, null, STRATEGY_KEY, DEFAULT_PEER_INFO_STRATEGY))
         .thenReturn(DEFAULT_PEER_INFO_STRATEGY);
+    when(configMock.getStringList(JGROUPS_SECTION, null, SKIP_INTERFACE_KEY))
+        .thenReturn(new String[] {});
     when(configMock.getStringList(CACHE_SECTION, null, PATTERN_KEY))
         .thenReturn(CUSTOM_CACHE_PATTERNS);
     site = new SitePaths(SITE_PATH);