diff --git a/rse/plugins/org.eclipse.rse.services.dstore/src/org/eclipse/rse/internal/services/dstore/processes/DStoreProcessService.java b/rse/plugins/org.eclipse.rse.services.dstore/src/org/eclipse/rse/internal/services/dstore/processes/DStoreProcessService.java index da20e403582..59759024c11 100644 --- a/rse/plugins/org.eclipse.rse.services.dstore/src/org/eclipse/rse/internal/services/dstore/processes/DStoreProcessService.java +++ b/rse/plugins/org.eclipse.rse.services.dstore/src/org/eclipse/rse/internal/services/dstore/processes/DStoreProcessService.java @@ -279,6 +279,8 @@ public class DStoreProcessService extends AbstractProcessService implements IPro { _minerElement = null; _procMinerStatus = null; + _minerElement = null; + _statusMonitor = null; } public boolean isInitialized() @@ -308,6 +310,8 @@ public class DStoreProcessService extends AbstractProcessService implements IPro } } + + protected void initMiner(IProgressMonitor monitor) { DataElement fsElement = getMinerElement(); @@ -321,8 +325,8 @@ public class DStoreProcessService extends AbstractProcessService implements IPro DataStore ds = getDataStore(); if (_minerElement == null || _minerElement.getDataStore() != ds) { - if (ds != null) - { + if (ds != null && _procMinerStatus == null) + { _procMinerStatus = ds.activateMiner(minerId); } diff --git a/rse/plugins/org.eclipse.rse.services.dstore/src/org/eclipse/rse/internal/services/dstore/shells/DStoreShellService.java b/rse/plugins/org.eclipse.rse.services.dstore/src/org/eclipse/rse/internal/services/dstore/shells/DStoreShellService.java index ba413e7a8cd..97ec8ff4413 100644 --- a/rse/plugins/org.eclipse.rse.services.dstore/src/org/eclipse/rse/internal/services/dstore/shells/DStoreShellService.java +++ b/rse/plugins/org.eclipse.rse.services.dstore/src/org/eclipse/rse/internal/services/dstore/shells/DStoreShellService.java @@ -162,7 +162,8 @@ public class DStoreShellService extends AbstractDStoreService implements IShellS public void uninitService(IProgressMonitor monitor) { super.uninitService(monitor); - + _envMinerElement = null; + _envMinerStatus = null; } protected void initMiner(IProgressMonitor monitor) @@ -177,7 +178,7 @@ public class DStoreShellService extends AbstractDStoreService implements IShellS DataStore ds = getDataStore(); if (_envMinerElement == null || _envMinerElement.getDataStore() != ds) { - if (ds != null) + if (ds != null && _envMinerStatus == null) { _envMinerStatus = ds.activateMiner(minerId); /* diff --git a/rse/plugins/org.eclipse.rse.services.dstore/src/org/eclipse/rse/services/dstore/AbstractDStoreService.java b/rse/plugins/org.eclipse.rse.services.dstore/src/org/eclipse/rse/services/dstore/AbstractDStoreService.java index c0f78263ae7..de8d35f3023 100644 --- a/rse/plugins/org.eclipse.rse.services.dstore/src/org/eclipse/rse/services/dstore/AbstractDStoreService.java +++ b/rse/plugins/org.eclipse.rse.services.dstore/src/org/eclipse/rse/services/dstore/AbstractDStoreService.java @@ -285,7 +285,7 @@ public abstract class AbstractDStoreService implements IDStoreService DataStore ds = getDataStore(); if (_minerElement == null || _minerElement.getDataStore() != ds) { - if (ds != null) + if (ds != null && _initializeStatus == null) { _initializeStatus = ds.activateMiner(minerId); /*