[576053] Make the security manager's realm update timeout configurable
https://bugs.eclipse.org/bugs/show_bug.cgi?id=576053
diff --git a/features/org.eclipse.emf.cdo.server-feature/feature.xml b/features/org.eclipse.emf.cdo.server-feature/feature.xml
index cf0b6c7..fb94c0a 100644
--- a/features/org.eclipse.emf.cdo.server-feature/feature.xml
+++ b/features/org.eclipse.emf.cdo.server-feature/feature.xml
@@ -12,7 +12,7 @@
<feature
id="org.eclipse.emf.cdo.server"
label="%featureName"
- version="4.15.0.qualifier"
+ version="4.15.1.qualifier"
provider-name="%providerName"
image="eclipse_update_120.jpg"
license-feature="org.eclipse.emf.cdo.license"
diff --git a/features/org.eclipse.emf.cdo.server-feature/pom.xml b/features/org.eclipse.emf.cdo.server-feature/pom.xml
index a6a36e8..8712dee 100644
--- a/features/org.eclipse.emf.cdo.server-feature/pom.xml
+++ b/features/org.eclipse.emf.cdo.server-feature/pom.xml
@@ -25,7 +25,7 @@
<groupId>org.eclipse.emf.cdo.features</groupId>
<artifactId>org.eclipse.emf.cdo.server</artifactId>
- <version>4.15.0-SNAPSHOT</version>
+ <version>4.15.1-SNAPSHOT</version>
<packaging>eclipse-feature</packaging>
</project>
diff --git a/plugins/org.eclipse.emf.cdo.server.security/META-INF/MANIFEST.MF b/plugins/org.eclipse.emf.cdo.server.security/META-INF/MANIFEST.MF
index 96eafae..a1abfb1 100644
--- a/plugins/org.eclipse.emf.cdo.server.security/META-INF/MANIFEST.MF
+++ b/plugins/org.eclipse.emf.cdo.server.security/META-INF/MANIFEST.MF
@@ -2,7 +2,7 @@
Bundle-ManifestVersion: 2
Bundle-SymbolicName: org.eclipse.emf.cdo.server.security;singleton:=true
Bundle-Name: %pluginName
-Bundle-Version: 4.7.1.qualifier
+Bundle-Version: 4.7.2.qualifier
Bundle-ClassPath: .
Bundle-Vendor: %providerName
Bundle-Localization: plugin
@@ -12,13 +12,13 @@
org.eclipse.emf.cdo.security;bundle-version="[4.1.0,5.0.0)";visibility:=reexport,
org.eclipse.emf.cdo.net4j;bundle-version="[4.1.0,5.0.0)",
org.eclipse.net4j.jvm;bundle-version="[4.1.0,5.0.0)"
-Export-Package: org.eclipse.emf.cdo.server.internal.security;version="4.7.1";
+Export-Package: org.eclipse.emf.cdo.server.internal.security;version="4.7.2";
x-friends:="org.eclipse.emf.cdo.tests,
org.eclipse.emf.cdo.tests.db,
org.eclipse.emf.cdo.tests.mongodb",
- org.eclipse.emf.cdo.server.internal.security.bundle;version="4.7.1";x-internal:=true,
- org.eclipse.emf.cdo.server.security;version="4.7.1",
- org.eclipse.emf.cdo.server.spi.security;version="4.7.1"
+ org.eclipse.emf.cdo.server.internal.security.bundle;version="4.7.2";x-internal:=true,
+ org.eclipse.emf.cdo.server.security;version="4.7.2",
+ org.eclipse.emf.cdo.server.spi.security;version="4.7.2"
Bundle-ActivationPolicy: lazy
Bundle-Activator: org.eclipse.emf.cdo.server.internal.security.bundle.OM$Activator
Automatic-Module-Name: org.eclipse.emf.cdo.server.security
diff --git a/plugins/org.eclipse.emf.cdo.server.security/pom.xml b/plugins/org.eclipse.emf.cdo.server.security/pom.xml
index aecf4ed..90e76ec 100644
--- a/plugins/org.eclipse.emf.cdo.server.security/pom.xml
+++ b/plugins/org.eclipse.emf.cdo.server.security/pom.xml
@@ -25,7 +25,7 @@
<groupId>org.eclipse.emf.cdo</groupId>
<artifactId>org.eclipse.emf.cdo.server.security</artifactId>
- <version>4.7.1-SNAPSHOT</version>
+ <version>4.7.2-SNAPSHOT</version>
<packaging>eclipse-plugin</packaging>
</project>
diff --git a/plugins/org.eclipse.emf.cdo.server.security/src/org/eclipse/emf/cdo/server/internal/security/SecurityManager.java b/plugins/org.eclipse.emf.cdo.server.security/src/org/eclipse/emf/cdo/server/internal/security/SecurityManager.java
index 80fcf19..c5fb0de 100644
--- a/plugins/org.eclipse.emf.cdo.server.security/src/org/eclipse/emf/cdo/server/internal/security/SecurityManager.java
+++ b/plugins/org.eclipse.emf.cdo.server.security/src/org/eclipse/emf/cdo/server/internal/security/SecurityManager.java
@@ -124,6 +124,8 @@
{
private static final Map<IRepository, InternalSecurityManager> SECURITY_MANAGERS = Collections.synchronizedMap(new HashMap<>());
+ private static final long REALM_UPDATE_TIMEOUT = OMPlatform.INSTANCE.getProperty("org.eclipse.emf.cdo.server.security.REALM_UPDATE_TIMEOUT", 8000L);
+
private static final boolean DISABLE_DETACH_CHECKS = OMPlatform.INSTANCE.isProperty("org.eclipse.emf.cdo.server.security.DISABLE_DETACH_CHECKS");
private static final boolean ALLOW_EMPTY_PASSWORDS = OMPlatform.INSTANCE.isProperty("org.eclipse.emf.cdo.server.security.ALLOW_EMPTY_PASSWORDS");
@@ -467,7 +469,7 @@
if (waitUntilReadable)
{
- if (!realmView.waitForUpdate(info.getTimeStamp(), 10000))
+ if (!realmView.waitForUpdate(info.getTimeStamp(), REALM_UPDATE_TIMEOUT))
{
throw new TimeoutRuntimeException();
}
@@ -1107,7 +1109,7 @@
long contextTime = securityContext.getTimeStamp();
if (contextTime == CDOBranchPoint.UNSPECIFIED_DATE || contextTime < updateTime)
{
- if (!realmView.waitForUpdate(updateTime, 10000L))
+ if (!realmView.waitForUpdate(updateTime, REALM_UPDATE_TIMEOUT))
{
throw new TimeoutRuntimeException();
}