You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@guacamole.apache.org by mj...@apache.org on 2017/06/07 00:32:40 UTC
[20/28] incubator-guacamole-client git commit: GUACAMOLE-102:
Correction to WLC algorithm to try to keep ratio no higher than configure
weights.
GUACAMOLE-102: Correction to WLC algorithm to try to keep ratio no higher than configure weights.
Project: http://git-wip-us.apache.org/repos/asf/incubator-guacamole-client/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-guacamole-client/commit/874b29ba
Tree: http://git-wip-us.apache.org/repos/asf/incubator-guacamole-client/tree/874b29ba
Diff: http://git-wip-us.apache.org/repos/asf/incubator-guacamole-client/diff/874b29ba
Branch: refs/heads/master
Commit: 874b29bae309e198db991035604082eda1f78768
Parents: 25493a8
Author: Nick Couchman <vn...@apache.org>
Authored: Mon Jun 5 21:34:50 2017 -0400
Committer: Nick Couchman <vn...@apache.org>
Committed: Mon Jun 5 21:43:31 2017 -0400
----------------------------------------------------------------------
.../RestrictedGuacamoleTunnelService.java | 20 ++++++++++++++++++--
1 file changed, 18 insertions(+), 2 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/incubator-guacamole-client/blob/874b29ba/extensions/guacamole-auth-jdbc/modules/guacamole-auth-jdbc-base/src/main/java/org/apache/guacamole/auth/jdbc/tunnel/RestrictedGuacamoleTunnelService.java
----------------------------------------------------------------------
diff --git a/extensions/guacamole-auth-jdbc/modules/guacamole-auth-jdbc-base/src/main/java/org/apache/guacamole/auth/jdbc/tunnel/RestrictedGuacamoleTunnelService.java b/extensions/guacamole-auth-jdbc/modules/guacamole-auth-jdbc-base/src/main/java/org/apache/guacamole/auth/jdbc/tunnel/RestrictedGuacamoleTunnelService.java
index d4ab8aa..6480ec7 100644
--- a/extensions/guacamole-auth-jdbc/modules/guacamole-auth-jdbc-base/src/main/java/org/apache/guacamole/auth/jdbc/tunnel/RestrictedGuacamoleTunnelService.java
+++ b/extensions/guacamole-auth-jdbc/modules/guacamole-auth-jdbc-base/src/main/java/org/apache/guacamole/auth/jdbc/tunnel/RestrictedGuacamoleTunnelService.java
@@ -187,8 +187,24 @@ public class RestrictedGuacamoleTunnelService
@Override
public int compare(ModeledConnection a, ModeledConnection b) {
- return ((getActiveConnections(a).size() + 1) * b.getConnectionWeight() -
- (getActiveConnections(b).size() + 1) * a.getConnectionWeight());
+ // Active connections
+ int Ca = getActiveConnections(a).size();
+ int Cb = getActiveConnections(b).size();
+
+ // Assigned weight
+ int Wa = a.getConnectionWeight();
+ int Wb = b.getConnectionWeight();
+
+ // Net weight of connections
+ int NWa = Ca * Wb;
+ int NWb = Cb * Wa;
+
+ // If net weights are equal, return difference in weight
+ if (NWa == NWb)
+ return (Wa - Wb);
+
+ // Return different in net weights
+ return (NWa - NWb);
}