You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@karaf.apache.org by ff...@apache.org on 2013/07/30 03:15:25 UTC
svn commit: r1508263 -
/karaf/branches/karaf-2.x/admin/core/src/main/java/org/apache/karaf/admin/internal/AdminServiceImpl.java
Author: ffang
Date: Tue Jul 30 01:15:25 2013
New Revision: 1508263
URL: http://svn.apache.org/r1508263
Log:
[KARAF-2416]OverlappingFileLockException when cloning an instance
Modified:
karaf/branches/karaf-2.x/admin/core/src/main/java/org/apache/karaf/admin/internal/AdminServiceImpl.java
Modified: karaf/branches/karaf-2.x/admin/core/src/main/java/org/apache/karaf/admin/internal/AdminServiceImpl.java
URL: http://svn.apache.org/viewvc/karaf/branches/karaf-2.x/admin/core/src/main/java/org/apache/karaf/admin/internal/AdminServiceImpl.java?rev=1508263&r1=1508262&r2=1508263&view=diff
==============================================================================
--- karaf/branches/karaf-2.x/admin/core/src/main/java/org/apache/karaf/admin/internal/AdminServiceImpl.java (original)
+++ karaf/branches/karaf-2.x/admin/core/src/main/java/org/apache/karaf/admin/internal/AdminServiceImpl.java Tue Jul 30 01:15:25 2013
@@ -519,6 +519,10 @@ public class AdminServiceImpl implements
}
public synchronized Instance cloneInstance(final String name, final String cloneName, final InstanceSettings settings) throws Exception {
+ final int instanceSshPort = getInstanceSshPort(name);
+ final int instanceRmiRegistryPort = getInstanceRmiRegistryPort(name);
+ final int instanceRmiServerPort = getInstanceRmiServerPort(name);
+
return execute(new Task<Instance>() {
public Instance call(State state) throws IOException {
if (state.instances.get(cloneName) != null) {
@@ -546,11 +550,11 @@ public class AdminServiceImpl implements
props.put(name, cloneName);
props.put(locationPath, cloneLocationPath);
if (settings.getSshPort() > 0)
- props.put(Integer.toString(getInstanceSshPort(instance.name)), Integer.toString(settings.getSshPort()));
+ props.put(Integer.toString(instanceSshPort), Integer.toString(settings.getSshPort()));
if (settings.getRmiRegistryPort() > 0)
- props.put(Integer.toString(getInstanceRmiRegistryPort(instance.name)), Integer.toString(settings.getRmiRegistryPort()));
+ props.put(Integer.toString(instanceRmiRegistryPort), Integer.toString(settings.getRmiRegistryPort()));
if (settings.getRmiServerPort() > 0)
- props.put(Integer.toString(getInstanceRmiServerPort(instance.name)), Integer.toString(settings.getRmiServerPort()));
+ props.put(Integer.toString(instanceRmiServerPort), Integer.toString(settings.getRmiServerPort()));
// filtering clone files
filterResource(cloneLocation, "etc/custom.properties", props);
filterResource(cloneLocation, "etc/org.apache.karaf.management.cfg", props);