If policy section not available in client config, no exception should be raised
Motivation
----------
There are two `config_get('policy', ...)` calls in the bin/rucio code. However, if the policy section is not available in the config an error is raised. This should not happen. Default values should be used. ("")
diff --git a/lib/rucio/common/config.py b/lib/rucio/common/config.py
index 7348589fa..e6cddc76d 100644
--- a/lib/rucio/common/config.py
+++ b/lib/rucio/common/config.py
@@ -55,7 +55,7 @@ def config_get(section, option, raise_exception=True, default=None):
     try:
         return __CONFIG.get(section, option)
     except (ConfigParser.NoOptionError, ConfigParser.NoSectionError) as err:
-        if raise_exception:
+        if raise_exception and default is None:
             raise err
         return default
 
diff --git a/lib/rucio/core/rule.py b/lib/rucio/core/rule.py
index 1025460ab..8573482aa 100644
--- a/lib/rucio/core/rule.py
+++ b/lib/rucio/core/rule.py
@@ -3047,7 +3047,7 @@ def __progress_class(replicating_locks, total_locks):
     """
 
     try:
-        return int(float(replicating_locks) / float(total_locks) * 10) * 10
+        return int(float(total_locks - replicating_locks) / float(total_locks) * 10) * 10
     except Exception:
         return 0
 
['lib/rucio/common/config.py', 'lib/rucio/core/rule.py']