• Bug
  • Status: Closed
  • 2 Major
  • Resolution: Fixed
  • Eclipse Plugin
  • kkannaiy
  • Reporter: mouadbox
  • August 07, 2007
  • 0
  • Watchers: 1
  • February 12, 2013
  • September 06, 2007



Hi all,

Using Eclipse plugin 2.3 for TC Server, I started two servers “primary & secondary” for a specific TCconfiguration.

I stopped one of the servers, using stop-tc-server.bat and get back to eclipse environment.

I found that servers menu available under terracotta plugin for eclipse is disabled.

Best regards,



Mouad BOX 2007-08-07

Stil the same problem with 2.4 release.

Gary Keim 2007-08-08

Can you try it with the latest nightly build? I can’t reproduce the symptom you describe. I did find a couple of other problems with the handling of the Servers menu when using a clustered setup. If it still happens in the nightly, could you look in the .metadata/.log file in your workspace for any exceptions relating to the plug-in. Or give me concrete steps to take to reproduce the problem. Thanks.

Mouad BOX 2007-08-15

Hi Gary,

I’ll base my description on slider tutorial. I configure two servers “primary and secondary”.

1 - Into Eclipse env, and using TC eclipse plugin, I stop one server as result both servers show stop and ready to run.

  Which is not the case, one is still running.

2 - In case, I use stop-tc-server to stop a server, what happen is that the targeted server with my stop command is stopped.

  And once I go to the menu item "servers" into TC plugin it shows servers items disabled.

I have exception stack trace related to Terracotta into eclipse log : !ENTRY org.eclipse.ui 4 4 2007-08-15 15:00:44.531 !MESSAGE Unhandled event loop exception

!ENTRY org.eclipse.ui 4 0 2007-08-15 15:00:44.562 !MESSAGE String index out of range: -1 !STACK 0 java.lang.StringIndexOutOfBoundsException: String index out of range: -1 at java.lang.String.substring(Unknown Source) at org.terracotta.dso.ConfigurationHelper.getRawString(ConfigurationHelper.java:3014) at org.terracotta.dso.ConfigurationHelper.validateLocks(ConfigurationHelper.java:3029) at org.terracotta.dso.ConfigurationHelper.validateAll(ConfigurationHelper.java:3001) at org.terracotta.dso.TcPlugin.loadConfiguration(TcPlugin.java:613) at org.terracotta.dso.TcPlugin.setConfigurationFromString(TcPlugin.java:725) at org.terracotta.dso.editors.ConfigurationEditor.syncXmlModel(ConfigurationEditor.java:556) at org.terracotta.dso.editors.ConfigurationEditor$ParseTimer.run(ConfigurationEditor.java:199) at org.eclipse.swt.widgets.Display.runTimer(Display.java:3411) at org.eclipse.swt.widgets.Display.messageProc(Display.java:2693) at org.eclipse.swt.internal.win32.OS.DispatchMessageW(Native Method) at org.eclipse.swt.internal.win32.OS.DispatchMessage(OS.java:1932) at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:2966) at org.eclipse.ui.internal.Workbench.runEventLoop(Workbench.java:1930) at org.eclipse.ui.internal.Workbench.runUI(Workbench.java:1894) at org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Workbench.java:422) at org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.java:149) at org.eclipse.ui.internal.ide.IDEApplication.run(IDEApplication.java:95) at org.eclipse.core.internal.runtime.PlatformActivator$1.run(PlatformActivator.java:78) at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.runApplication(EclipseAppLauncher.java:92) at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.start(EclipseAppLauncher.java:68) at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:400) at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:177) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source) at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source) at java.lang.reflect.Method.invoke(Unknown Source) at org.eclipse.core.launcher.Main.invokeFramework(Main.java:336) at org.eclipse.core.launcher.Main.basicRun(Main.java:280) at org.eclipse.core.launcher.Main.run(Main.java:977) at org.eclipse.core.launcher.Main.main(Main.java:952)

I hope that this will help you.

Best regards,

Gary Keim 2007-09-06

The 2.4 version of the plugin has server management improvements. Also, the stack trace is due to a bug in the lock validation, which was removed.

Kalai Kannaiyan 2007-09-13

Tested with 2.4.3, it is working as expected.


  1. Install Eclipse plugin with rev5455
  2. Create the slider tutorial
  3. Add the Terracotta nature
  4. Open the tc-config.xml with Show config Editor
  5. Add primary and secondary servers with different dso, jmx and l2-group port
  6. Add networked active passive active mode
  7. Verify that the primary and secondary are listed under Terracotta->Servers
  8. Start the primary server i.e, Go to Terracotta -> Servers -> primary
  9. Verify that the primary server is started as active
  10. Start the secondary server i.e, Go to Terracotta -> Servers -> secondary
  11. Verify that the secondary server is started as passive
  12. Navigate to /root/bin/ and execute stop-tc-server.bat
  13. Verify that the primary server is stopped
  14. Go to Terracotta -> Servers

Actual: Verify that the Servers menu is enabled with primary server stopped indication (green triangle symbol) and secondary server is running indication (red square symbol)