Some Eclipse Foundation services are deprecated, or will be soon. Please ensure you've read this important communication.
Bug 269709 - [dstore] A dstore-based connection doesn't work properly
Summary: [dstore] A dstore-based connection doesn't work properly
Status: RESOLVED FIXED
Alias: None
Product: PTP
Classification: Tools
Component: RDT (show other bugs)
Version: 2.1.1   Edit
Hardware: Macintosh Mac OS X - Carbon (unsup.)
: P3 normal (vote)
Target Milestone: 2.1.2   Edit
Assignee: Vivian Kong CLA
QA Contact: Martin Oberhuber CLA
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2009-03-23 12:18 EDT by xoanpardo CLA
Modified: 2009-04-13 13:03 EDT (History)
2 users (show)

See Also:


Attachments
proposed patch (3.25 KB, patch)
2009-03-27 10:08 EDT, Vivian Kong CLA
g.watson: iplog+
Details | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description xoanpardo CLA 2009-03-23 12:18:56 EDT
The problem arises when trying to use RDT to work from a laptop with a project stored in our department´s cluster. In the laptop there are two RSE connections defined, one SSH based and one dStore based. The SSH based works fine, using it it is possible to see and work with remote files, start shells and terminals. By the contrary, the dstore based connection connects me to the server (as notified in the cluster console and in the properties of the connection) but I can only start terminals (that use SSH not dStore). I get "File '.' not found" and Empty List messages for the Files and Processes parts of the connection, and "blank" consoles for the Shell part.

I'm using MacOSX 10.5 and Eclipse 3.4.1 with RSE DStore 3.0.1 plugin. My firewall is configured to not allow incoming connections by default, but I accept incoming connections for Eclipse. I've installed the RDT server (a daemon as root in port 4075) that starts a server in port 4033 for each connection. I´ve configured the server to use SSL.

Following is the sequence of events for a connection in case it could help:

1) I started the daemon in our cluster

[root@nm rdt-server]# ./daemon.pl &
[1] 22564
[root@nm rdt-server]# SSL Settings
[daemon keystore:    /home/users/pardo/apps/rdt-server/.keystore]
[daemon keystore pw:    XXXXXXXXXXXXXXXXXX]
[server keystore:    /home/users/pardo/apps/rdt-server/.keystore]
[server keystore pw:    XXXXXXXXXXXXXXXXXX]
Daemon running on: nm.des.udc.es, port: 4075

2) Check the daemon is running

[pardo@nm rdt-server]$ ps aux | grep rdt-server
-DA_PLUGIN_PATH=/home/users/pardo/apps/rdt-server/ -DDSTORE_TRACING_ON=false org.eclipse.dstore.core.server.ServerLauncher 4075

3) Started a connection from Eclipse

4) A password is requested (I suppose it is for the RDT daemon). I enter the
password of the user pardo.

5) In the cluster, the RDT server is started

[pardo@nm]$ handshake completed
launched new server on 4033
SSL Settings
[daemon keystore:    /home/users/pardo/apps/rdt-server/.keystore]
[daemon keystore pw:    XXXXXXXXXXXXXXXXX]
[server keystore:    /home/users/pardo/apps/rdt-server/.keystore]
[server keystore pw:    XXXXXXXXXXXXXXXXX]

6) In Eclipse, a dialog informs that an SSL connection is being established

7) A second password is requested (I suppose it is for the SSH daemon). I enter the same password as in step 4.

8) The connection is completed. All subsystems are connected as it appears in the Properties view.

9) Check that the server is running on the cluster

[pardo@nm]$ ps aux | grep rdt-server
-DA_PLUGIN_PATH=/home/users/pardo/apps/rdt-server/ -DDSTORE_TRACING_ON=false org.eclipse.dstore.core.server.ServerLauncher 4075
root     22681  0.0  0.1  80576  2612 pts/7    S    13:30   0:00 perl /home/users/pardo/apps/rdt-server//auth.pl pardo /home/users/pardo/apps/rdt-server/ 4033 120000 1236688249538 /usr/java/jdk1.6.0_07/jre
root     22683  0.0  0.0 100988  1264 pts/7    S    13:30   0:00 su -p pardo -c /usr/java/jdk1.6.0_07/jre/bin/java -cp /home/users/pardo/apps/rdt-server:/home/users/pardo/apps/rdt-server/dstore_extra_server.jar:/home/users/pardo/apps/rdt-server/dstore_core.jar:/home/users/pardo/apps/rdt-server/dstore_miners.jar:/home/users/pardo/apps/rdt-server/clientserver.jar -DA_PLUGIN_PATH=/home/users/pardo/apps/rdt-server/ -DDSTORE_SPIRIT_ON=true org.eclipse.dstore.core.server.Server 4033 120000 1236688249538
pardo    22684  0.4  1.8 837816 38120 ?        Ssl  13:30   0:02 /usr/java/jdk1.6.0_07/jre/bin/java -cp /home/users/pardo/apps/rdt-server:/home/users/pardo/apps/rdt-server/dstore_extra_server.jar:/home/users/pardo/apps/rdt-server/dstore_core.jar:/home/users/pardo/apps/rdt-server/dstore_miners.jar:/home/users/pardo/apps/rdt-server/clientserver.jar -DA_PLUGIN_PATH=/home/users/pardo/apps/rdt-server/ -DDSTORE_SPIRIT_ON=true org.eclipse.dstore.core.server.Server 4033 120000 1236688249538

10) In Eclipse I try to open the Files part of my connection.

In the Files tree the message "Pending..." is shown
In the Progress View the message "Resolving ./*" is shown, there's no progress: always 0%.
No messages in the Error Log View.

11) After a while the message "File '.' not found" is shown in the Files tree.

Contents of the ./eclipse/RSE directory in the cluster are:

[pardo@nm RSE]$ ls -las
total 12
4 drwxr-xr-x 2 pardo gac 4096 Mar 10 13:30 .
4 drwxr-xr-x 4 pardo gac 4096 Mar 10 13:30 ..
4 -rw-r--r-- 1 pardo gac  126 Mar 10 13:30 rmt_classloader_cache.jar

As you can see, there isn't a log file. I tried also activating tracing on the server (changing auth.pl and daemon.pl files) but no log file is created either.
Comment 1 David McKnight CLA 2009-03-23 12:33:20 EDT
If you disable the firewall, is there any difference?  If -DDSTORE_TRACING_ON is set to true, you should get a .dstoreTrace log file.
Comment 2 xoanpardo CLA 2009-03-25 04:08:37 EDT
Sorry if you receive this twice (I'm a newcomer in bugzilla ;-D)

No difference disabling the firewall.

I´ve activated tracing and no .dstoreTrace file is there. Where should it be? I´ve looked into $HOME and $HOME/.eclipse/RSE, and also in root $HOME.


(In reply to comment #1)
> If you disable the firewall, is there any difference?  If -DDSTORE_TRACING_ON
> is set to true, you should get a .dstoreTrace log file.
> 

Comment 3 David McKnight CLA 2009-03-25 09:14:48 EDT
(In reply to comment #2)
> Sorry if you receive this twice (I'm a newcomer in bugzilla ;-D)
> 
> No difference disabling the firewall.
> 
> I´ve activated tracing and no .dstoreTrace file is there. Where should it be?
> I´ve looked into $HOME and $HOME/.eclipse/RSE, and also in root $HOME.
> 

I'd expect to see the .dstoreTrace file there if you added -DDSTORE_TRACING_ON=true in the auth.pl file. 

> 
> (In reply to comment #1)
> > If you disable the firewall, is there any difference?  If -DDSTORE_TRACING_ON
> > is set to true, you should get a .dstoreTrace log file.
> > 
> 

Here's a couple things some to try:

1) Increase the Connection Timeout
 (i) goto the Remote Systems preference pages
 (ii) select the DataStore preference page
 (iii) change the Connection Timeout to something larger

2) Delete the rmt_classloader_cache.jar file in the $HOME/.eclipse/RSE directory (it will get created again but I want to rule out the possibility of corruption there)

3) Try starting the server manually
 (i) on the client, goto the Properties pages for the File subsystem and select Server Launcher Settings.  On this page specify that you want to connect to a running server
 (ii) on the server, run server.pl (note the port that it starts with)
 (iii) on the client, goto the SubSystem Properties page and specify the port which the server is running on as it's port

Does it make a difference when you run this manually rather than through the daemon?

Comment 4 xoanpardo CLA 2009-03-25 11:33:18 EDT
(In reply to comment #3)
> (In reply to comment #2)
> > Sorry if you receive this twice (I'm a newcomer in bugzilla ;-D)
> > 
> > No difference disabling the firewall.
> > 
> > I´ve activated tracing and no .dstoreTrace file is there. Where should it be?
> > I´ve looked into $HOME and $HOME/.eclipse/RSE, and also in root $HOME.
> > 
> 
> I'd expect to see the .dstoreTrace file there if you added
> -DDSTORE_TRACING_ON=true in the auth.pl file. 



Sorry, it was my fault. I wrote -DSTORE_TRACING_ON instead of -DDSTORE_TRACING_ON in auth.pl

Contents of .dstoreTrace after a connect/open My Home files/disconnect sequence:

[pardo@nm RSE]$ cat .dstoreTrace 
-----------------------------------------
Start Tracing at 1237992792300
C_VALIDATE_TICKET
C_SET_PREFERENCE
C_ACTIVATE_MINER
loading org.eclipse.rse.dstore.universal.miners.UniversalFileSystemMiner
C_ACTIVATE_MINER
loading org.eclipse.rse.dstore.universal.miners.UniversalProcessMiner
C_ACTIVATE_MINER
loading org.eclipse.rse.dstore.universal.miners.EnvironmentMiner
C_ACTIVATE_MINER
loading org.eclipse.rse.dstore.universal.miners.CommandMiner
C_ACTIVATE_MINER
loading org.eclipse.ptp.internal.rdt.core.miners.CDTMiner
C_QUERY_GET_REMOTE_OBJECT
C_NOTIFICATION
C_NOTIFICATION
C_NOTIFICATION
C_NOTIFICATION
C_NOTIFICATION
C_NOTIFICATION
C_NOTIFICATION
C_NOTIFICATION
C_NOTIFICATION
C_NOTIFICATION
C_NOTIFICATION
C_NOTIFICATION
C_NOTIFICATION
Finished Tracing



> 
> > 
> > (In reply to comment #1)
> > > If you disable the firewall, is there any difference?  If -DDSTORE_TRACING_ON
> > > is set to true, you should get a .dstoreTrace log file.
> > > 
> > 
> 
> Here's a couple things some to try:
> 
> 1) Increase the Connection Timeout
>  (i) goto the Remote Systems preference pages
>  (ii) select the DataStore preference page
>  (iii) change the Connection Timeout to something larger
> 


Attempts with 60000 and 180000 didn´t work either


> 2) Delete the rmt_classloader_cache.jar file in the $HOME/.eclipse/RSE
> directory (it will get created again but I want to rule out the possibility of
> corruption there)

Done

> 
> 3) Try starting the server manually
>  (i) on the client, goto the Properties pages for the File subsystem and select
> Server Launcher Settings.  On this page specify that you want to connect to a
> running server
>  (ii) on the server, run server.pl (note the port that it starts with)
>  (iii) on the client, goto the SubSystem Properties page and specify the port
> which the server is running on as it's port
> 
> Does it make a difference when you run this manually rather than through the
> daemon?
> 


It works!!!

Differences I see:

A message "Extended schema from CDTMiner" is shown in server console.

A rsecomm.log file is created in $HOME/.eclipse/RSE which contents are:

[pardo@nm RSE]$ cat rsecomm.log 
Wed Mar 25 16:20:15 CET 2009
INFO Thread-5: C_QUERY_GET_REMOTE_OBJECT:DataElement 
{
	Type:	universal.FilterObject
	Name:	.
	Value:	.
	ID:	
	Source:	.
	Depth:	1
	DataStore:	server_host
}

---------------------------------------------------------------
Wed Mar 25 16:20:15 CET 2009
INFO Thread-5: C_QUERY_VIEW_ALL:DataElement 
{
	Type:	universal.FolderObject
	Name:	pardo
	Value:	/home/users
	ID:	
	Source:	version_1|1236178233000|4096|false|true|true| |4096| |0.0|4096
	Depth:	1
	DataStore:	server_host
}

---------------------------------------------------------------
Wed Mar 25 16:20:15 CET 2009
INFO Thread-5: C_QUERY_GET_REMOTE_OBJECT:DataElement 
{
	Type:	universal.FolderObject
	Name:	pardo
	Value:	/home/users
	ID:	
	Source:	version_1|1236178233000|4096|false|true|true| |4096| |0.0|4096
	Depth:	1
	DataStore:	server_host
}

---------------------------------------------------------------

Any idea about what's wrong with the daemon option?

Comment 5 David McKnight CLA 2009-03-25 11:41:38 EDT
If the server is fine but the daemon isn't, this might be a problem with the auth.pl script.  By default and for Linux we do an su -p but that's not allowed on certain systems (i.e. AIX and BSD) so there is a different auth.pl script for those.  What kind of system are you connecting to?
Comment 6 xoanpardo CLA 2009-03-25 12:01:09 EDT
(In reply to comment #5)
> If the server is fine but the daemon isn't, this might be a problem with the
> auth.pl script.  By default and for Linux we do an su -p but that's not allowed
> on certain systems (i.e. AIX and BSD) so there is a different auth.pl script
> for those.  What kind of system are you connecting to?
> 

The cluster has Rocks 5.1 (http://www.rocksclusters.org/) installed, a Linux distribution for clusters.

Here is the uname info:

[pardo@nm ~]$ uname -a
Linux nm.des.udc.es 2.6.18-92.1.13.el5 #1 SMP Wed Sep 24 19:32:05 EDT 2008 x86_64 x86_64 x86_64 GNU/Linux
Comment 7 David McKnight CLA 2009-03-25 12:10:00 EDT
(In reply to comment #6)
> (In reply to comment #5)
> > If the server is fine but the daemon isn't, this might be a problem with the
> > auth.pl script.  By default and for Linux we do an su -p but that's not allowed
> > on certain systems (i.e. AIX and BSD) so there is a different auth.pl script
> > for those.  What kind of system are you connecting to?
> > 
> 
> The cluster has Rocks 5.1 (http://www.rocksclusters.org/) installed, a Linux
> distribution for clusters.
> 
> Here is the uname info:
> 
> [pardo@nm ~]$ uname -a
> Linux nm.des.udc.es 2.6.18-92.1.13.el5 #1 SMP Wed Sep 24 19:32:05 EDT 2008
> x86_64 x86_64 x86_64 GNU/Linux
> 

On this system, if you type "su -l <user name>" do you get an error?  If yes, then that could be the problem, otherwise the su problem can be ruled out.

Another thing to check is the java you use.  Is the java you have for your user ID the same as is used for root?
Comment 8 xoanpardo CLA 2009-03-25 12:19:54 EDT
(In reply to comment #7)
> (In reply to comment #6)
> > (In reply to comment #5)
> > > If the server is fine but the daemon isn't, this might be a problem with the
> > > auth.pl script.  By default and for Linux we do an su -p but that's not allowed
> > > on certain systems (i.e. AIX and BSD) so there is a different auth.pl script
> > > for those.  What kind of system are you connecting to?
> > > 
> > 
> > The cluster has Rocks 5.1 (http://www.rocksclusters.org/) installed, a Linux
> > distribution for clusters.
> > 
> > Here is the uname info:
> > 
> > [pardo@nm ~]$ uname -a
> > Linux nm.des.udc.es 2.6.18-92.1.13.el5 #1 SMP Wed Sep 24 19:32:05 EDT 2008
> > x86_64 x86_64 x86_64 GNU/Linux
> > 
> 
> On this system, if you type "su -l <user name>" do you get an error?  If yes,
> then that could be the problem, otherwise the su problem can be ruled out.
> 


No errors when using su -l <user name>


> Another thing to check is the java you use.  Is the java you have for your user
> ID the same as is used for root?
> 


Yes, it is.


[pardo@nm rdt-server]$ java -version
java version "1.6.0_07"
Java(TM) SE Runtime Environment (build 1.6.0_07-b06)
Java HotSpot(TM) 64-Bit Server VM (build 10.0-b23, mixed mode)

[root@nm rdt-server]# java -version
java version "1.6.0_07"
Java(TM) SE Runtime Environment (build 1.6.0_07-b06)
Java HotSpot(TM) 64-Bit Server VM (build 10.0-b23, mixed mode)


Comment 9 David McKnight CLA 2009-03-25 12:33:25 EDT
Hmmm...when you ran the server manually, did you start it as pardo or root?  Does pardo have permissions to the files in the server installation directory?  If you connect via the daemon as "root" (instead of pardo) does it make any difference?
Comment 10 xoanpardo CLA 2009-03-25 12:52:09 EDT
(In reply to comment #9)
> Hmmm...when you ran the server manually, did you start it as pardo or root? 

I started it as pardo

> Does pardo have permissions to the files in the server installation directory? 

These are the contents of the server installation directory

[pardo@nm rdt-server]$ ls -l
total 2844
-rwxr-xr-x 1 pardo gac    1754 Mar 25 15:50 auth.pl
-rw-r--r-- 1 pardo gac      25 Jun 21  2008 build.dat
-rw-r--r-- 1 pardo gac  172207 Nov 30 15:18 cdtminer.jar
-rw-r--r-- 1 pardo gac  127935 Nov 30 15:18 cdtmodel.jar
-rw-r--r-- 1 pardo gac 1784901 Nov 30 15:18 cdtparser.jar
-rw-r--r-- 1 pardo gac  183661 Jun 21  2008 clientserver.jar
-rwxr-xr-x 1 pardo gac    1831 Mar 23 13:43 daemon.pl
-rw-r--r-- 1 pardo gac  175882 Jun 21  2008 dstore_core.jar
-rw-r--r-- 1 pardo gac   10692 Jun 21  2008 dstore_extra_server.jar
-rw-r--r-- 1 pardo gac  125767 Jun 21  2008 dstore_miners.jar
-rw-r--r-- 1 pardo gac   12506 Jun 21  2008 epl-v10.html
-rw-r--r-- 1 pardo gac     286 Nov 30 15:18 minerFile.dat
-rw-r--r-- 1 pardo gac    6506 Jun 21  2008 notice.html
-rw-r--r-- 1 pardo gac   44111 Nov 30 15:18 org.eclipse.core.filesystem_1.2.0.v20080604-1400.jar
-rw-r--r-- 1 pardo gac   69019 Nov 30 15:18 org.eclipse.core.runtime_3.4.0.v20080512.jar
-rw-r--r-- 1 pardo gac   94649 Nov 30 15:18 org.eclipse.equinox.common_3.4.0.v20080421-2006.jar
-rw-r--r-- 1 pardo gac   14327 Jun 21  2008 patterns.dat
-rw-r--r-- 1 pardo gac     863 Feb 26 19:35 rsecomm.properties
-rwxr-xr-x 1 pardo gac    1882 Nov 30 15:18 server.pl
-rw-r--r-- 1 pardo gac    1667 Mar  6 13:50 ssl.properties
-rw-r--r-- 1 pardo gac    2642 Nov 30 15:18 stubs.jar


> If you connect via the daemon as "root" (instead of pardo) does it make any
> difference?
> 

I can´t connect as root because I don't know root's password. In the server I do "sudo su root" to change to root before starting the daemon.


Comment 11 David McKnight CLA 2009-03-25 13:31:48 EDT
(In reply to comment #10)
> 
> I can´t connect as root because I don't know root's password. In the server I
> do "sudo su root" to change to root before starting the daemon.
> 

Here's something to try to see whether the auth.pl script is doing what it should:

1) sudo su root
2) goto the server installation directory 
3) export the classpath like this:
   > export CLASSPATH=./dstore_core.jar:./dstore_extra_server.jar:./dstore_miners.jar:$CLASSPATH
4) run the auth.pl script:
  (i)
   > perl auth.pl pardo . 4444 1000 1000
  (ii) after the script starts, you need to type in the password and press enter

This should start a server on port 4444.

Let me know what happens.
Comment 12 xoanpardo CLA 2009-03-26 07:42:42 EDT
(In reply to comment #11)
> (In reply to comment #10)
> > 
> > I can´t connect as root because I don't know root's password. In the server I
> > do "sudo su root" to change to root before starting the daemon.
> > 
> 
> Here's something to try to see whether the auth.pl script is doing what it
> should:
> 
> 1) sudo su root
> 2) goto the server installation directory 
> 3) export the classpath like this:
>    > export
> CLASSPATH=./dstore_core.jar:./dstore_extra_server.jar:./dstore_miners.jar:$CLASSPATH
> 4) run the auth.pl script:
>   (i)
>    > perl auth.pl pardo . 4444 1000 1000
>   (ii) after the script starts, you need to type in the password and press
> enter
> 
> This should start a server on port 4444.
> 
> Let me know what happens.
> 


[root@nm rdt-server]# export CLASSPATH=./dstore_core.jar:./dstore_extra_server.jar:./dstore_miners.jar:$CLASSPATH

[root@nm rdt-server]# perl auth.pl pardo . 4444 1000 1000
<I type pass here>
success
DStore Server Starting...
SSL Settings
[daemon keystore:	/home/users/pardo/apps/rdt-server/.keystore]
[daemon keystore pw:	XXXXXXXXXXXXXXXXXXXX]
[server keystore:	/home/users/pardo/apps/rdt-server/.keystore]
[server keystore pw:	XXXXXXXXXXXXXXXXXXXX]
Server Started Successfully
4444
Server running on: nm.des.udc.es
Connection error
Server: error initializing socket: java.net.SocketTimeoutException: Accept timed out


After that I can not connect to the server
Comment 13 David McKnight CLA 2009-03-26 09:36:24 EDT
(In reply to comment #12)
> [root@nm rdt-server]# export
> CLASSPATH=./dstore_core.jar:./dstore_extra_server.jar:./dstore_miners.jar:$CLASSPATH
> 
> [root@nm rdt-server]# perl auth.pl pardo . 4444 1000 1000
> <I type pass here>
> success
> DStore Server Starting...
> SSL Settings
> [daemon keystore:       /home/users/pardo/apps/rdt-server/.keystore]
> [daemon keystore pw:    XXXXXXXXXXXXXXXXXXXX]
> [server keystore:       /home/users/pardo/apps/rdt-server/.keystore]
> [server keystore pw:    XXXXXXXXXXXXXXXXXXXX]
> Server Started Successfully
> 4444
> Server running on: nm.des.udc.es
> Connection error
> Server: error initializing socket: java.net.SocketTimeoutException: Accept
> timed out
> 
> 
> After that I can not connect to the server
> 

Okay, so it looks like auth.pl works fine.  The SocketTimeoutException occurred because you didn't connect to the server fast enough.  The 4th argument is the timeout value - you could increase that to give more time to connect to the server. 

Here's something else to try.  Open auth.pl in an editor, then change the line that says $suOptions="-p" to $suOptions="-".  Then start the daemon and see whether there's any difference when connecting via the daemon.

Comment 14 xoanpardo CLA 2009-03-26 11:07:17 EDT
> Okay, so it looks like auth.pl works fine.  The SocketTimeoutException occurred
> because you didn't connect to the server fast enough.  The 4th argument is the
> timeout value - you could increase that to give more time to connect to the
> server. 

OK


> 
> Here's something else to try.  Open auth.pl in an editor, then change the line
> that says $suOptions="-p" to $suOptions="-".  Then start the daemon and see
> whether there's any difference when connecting via the daemon.
> 

No difference.
Comment 15 David McKnight CLA 2009-03-26 11:12:35 EDT
(In reply to comment #14)
> > Okay, so it looks like auth.pl works fine.  The SocketTimeoutException occurred
> > because you didn't connect to the server fast enough.  The 4th argument is the
> > timeout value - you could increase that to give more time to connect to the
> > server. 
> 
> OK
> 
> 
> > 
> > Here's something else to try.  Open auth.pl in an editor, then change the line
> > that says $suOptions="-p" to $suOptions="-".  Then start the daemon and see
> > whether there's any difference when connecting via the daemon.
> > 
> 
> No difference.
> 

So connecting to the running server works but connecting via the daemon doesn't yet auth.pl seems to launch the server okay.  I guess we could check whether connecting to a server started via auth.pl works as expected.

Could you try this?
1) start the server via auth.pl
2) have the client connect to the running server (i.e. change the Server Launcher Settings to use "connect with running server" and specify the server port in the SubSystem properties page.



Comment 16 xoanpardo CLA 2009-03-26 11:32:49 EDT
(In reply to comment #15)

> So connecting to the running server works but connecting via the daemon doesn't
> yet auth.pl seems to launch the server okay.  I guess we could check whether
> connecting to a server started via auth.pl works as expected.
> 
> Could you try this?
> 1) start the server via auth.pl
> 2) have the client connect to the running server (i.e. change the Server
> Launcher Settings to use "connect with running server" and specify the server
> port in the SubSystem properties page.
> 

I start the server (after exporting modified CLASSPATH):

[root@nm rdt-server]# perl auth.pl pardo . 4033 120000 1000
<type my password>
success
DStore Server Starting...
SSL Settings
[daemon keystore:	/home/users/pardo/apps/rdt-server/.keystore]
[daemon keystore pw:	XXXXXXXXXXXXXXXXXXXX]
[server keystore:	/home/users/pardo/apps/rdt-server/.keystore]
[server keystore pw:	XXXXXXXXXXXXXXXXXXXX]
Server Started Successfully
4033
Server running on: nm.des.udc.es


When I try to connect from the client, the following is printed in the cluster console (just after accepting in the dialog where dstore password is typed):

java.lang.NoClassDefFoundError: org/eclipse/rse/services/clientserver/archiveutils/AbsoluteVirtualPath
	at java.lang.Class.getDeclaredConstructors0(Native Method)
	at java.lang.Class.privateGetDeclaredConstructors(Class.java:2389)
	at java.lang.Class.getConstructor0(Class.java:2699)
	at java.lang.Class.newInstance0(Class.java:326)
	at java.lang.Class.newInstance(Class.java:308)
	at org.eclipse.dstore.internal.core.server.MinerLoader.loadMiner(MinerLoader.java:203)
	at org.eclipse.dstore.internal.core.server.ServerCommandHandler.loadMiner(ServerCommandHandler.java:146)
	at org.eclipse.dstore.internal.core.server.ServerCommandHandler.sendCommands(ServerCommandHandler.java:314)
	at org.eclipse.dstore.core.model.CommandHandler.handle(CommandHandler.java:110)
	at org.eclipse.dstore.core.model.Handler.run(Handler.java:135)
Caused by: java.lang.ClassNotFoundException: org.eclipse.rse.services.clientserver.archiveutils.AbsoluteVirtualPath
	at java.net.URLClassLoader$1.run(URLClassLoader.java:200)
	at java.security.AccessController.doPrivileged(Native Method)
	at java.net.URLClassLoader.findClass(URLClassLoader.java:188)
	at java.lang.ClassLoader.loadClass(ClassLoader.java:306)
	at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:276)
	at java.lang.ClassLoader.loadClass(ClassLoader.java:251)
	at java.lang.ClassLoader.loadClassInternal(ClassLoader.java:319)
	... 10 more
Exception in thread "DStore CommandHandlerThread-0" java.lang.NullPointerException
	at org.eclipse.dstore.internal.core.server.MinerLoader.handleNoClassFound(MinerLoader.java:242)
	at org.eclipse.dstore.internal.core.server.MinerLoader.loadMiner(MinerLoader.java:214)
	at org.eclipse.dstore.internal.core.server.ServerCommandHandler.loadMiner(ServerCommandHandler.java:146)
	at org.eclipse.dstore.internal.core.server.ServerCommandHandler.sendCommands(ServerCommandHandler.java:314)
	at org.eclipse.dstore.core.model.CommandHandler.handle(CommandHandler.java:110)
	at org.eclipse.dstore.core.model.Handler.run(Handler.java:135)


and then, when I disconnect from the client, I get in the cluster console:

java.lang.NoClassDefFoundError: org/eclipse/rse/services/clientserver/processes/IHostProcessFilter
	at java.lang.Class.getDeclaredConstructors0(Native Method)
	at java.lang.Class.privateGetDeclaredConstructors(Class.java:2389)
	at java.lang.Class.getConstructor0(Class.java:2699)
	at java.lang.Class.newInstance0(Class.java:326)
	at java.lang.Class.newInstance(Class.java:308)
	at org.eclipse.dstore.internal.core.server.MinerLoader.loadMiner(MinerLoader.java:203)
	at org.eclipse.dstore.internal.core.server.ServerCommandHandler.loadMiner(ServerCommandHandler.java:146)
	at org.eclipse.dstore.internal.core.server.ServerCommandHandler.sendCommands(ServerCommandHandler.java:314)
	at org.eclipse.dstore.core.model.CommandHandler.handle(CommandHandler.java:110)
	at org.eclipse.dstore.core.model.Handler.finish(Handler.java:102)
	at org.eclipse.dstore.internal.core.server.ServerCommandHandler.finish(ServerCommandHandler.java:195)
	at org.eclipse.dstore.core.server.ConnectionEstablisher.finished(ConnectionEstablisher.java:197)
	at org.eclipse.dstore.core.server.ServerReceiver.finish(ServerReceiver.java:84)
	at org.eclipse.dstore.core.server.ServerReceiver.handleDocument(ServerReceiver.java:70)
	at org.eclipse.dstore.core.util.Receiver.handleInput(Receiver.java:157)
	at org.eclipse.dstore.core.util.Receiver.run(Receiver.java:121)
Caused by: java.lang.ClassNotFoundException: org.eclipse.rse.services.clientserver.processes.IHostProcessFilter
	at java.net.URLClassLoader$1.run(URLClassLoader.java:200)
	at java.security.AccessController.doPrivileged(Native Method)
	at java.net.URLClassLoader.findClass(URLClassLoader.java:188)
	at java.lang.ClassLoader.loadClass(ClassLoader.java:306)
	at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:276)
	at java.lang.ClassLoader.loadClass(ClassLoader.java:251)
	at java.lang.ClassLoader.loadClassInternal(ClassLoader.java:319)
	... 16 more
RECEIVER ERROR
java.lang.NullPointerException
	at org.eclipse.dstore.internal.core.server.MinerLoader.handleNoClassFound(MinerLoader.java:242)
	at org.eclipse.dstore.internal.core.server.MinerLoader.loadMiner(MinerLoader.java:214)
	at org.eclipse.dstore.internal.core.server.ServerCommandHandler.loadMiner(ServerCommandHandler.java:146)
	at org.eclipse.dstore.internal.core.server.ServerCommandHandler.sendCommands(ServerCommandHandler.java:314)
	at org.eclipse.dstore.core.model.CommandHandler.handle(CommandHandler.java:110)
	at org.eclipse.dstore.core.model.Handler.finish(Handler.java:102)
	at org.eclipse.dstore.internal.core.server.ServerCommandHandler.finish(ServerCommandHandler.java:195)
	at org.eclipse.dstore.core.server.ConnectionEstablisher.finished(ConnectionEstablisher.java:197)
	at org.eclipse.dstore.core.server.ServerReceiver.finish(ServerReceiver.java:84)
	at org.eclipse.dstore.core.server.ServerReceiver.handleDocument(ServerReceiver.java:70)
	at org.eclipse.dstore.core.util.Receiver.handleInput(Receiver.java:157)
	at org.eclipse.dstore.core.util.Receiver.run(Receiver.java:121)
java.lang.NullPointerException
Server Finished



Is this of any help?
Comment 17 David McKnight CLA 2009-03-26 11:46:43 EDT
(In reply to comment #16)
> (In reply to comment #15)
> 
> > So connecting to the running server works but connecting via the daemon doesn't
> > yet auth.pl seems to launch the server okay.  I guess we could check whether
> > connecting to a server started via auth.pl works as expected.
> > 
> > Could you try this?
> > 1) start the server via auth.pl
> > 2) have the client connect to the running server (i.e. change the Server
> > Launcher Settings to use "connect with running server" and specify the server
> > port in the SubSystem properties page.
> > 
> 
> I start the server (after exporting modified CLASSPATH):
> 
> [root@nm rdt-server]# perl auth.pl pardo . 4033 120000 1000
> <type my password>
> success
> DStore Server Starting...
> SSL Settings
> [daemon keystore:       /home/users/pardo/apps/rdt-server/.keystore]
> [daemon keystore pw:    XXXXXXXXXXXXXXXXXXXX]
> [server keystore:       /home/users/pardo/apps/rdt-server/.keystore]
> [server keystore pw:    XXXXXXXXXXXXXXXXXXXX]
> Server Started Successfully
> 4033
> Server running on: nm.des.udc.es
> 
> 
> When I try to connect from the client, the following is printed in the cluster
> console (just after accepting in the dialog where dstore password is typed):
> 
> java.lang.NoClassDefFoundError:
> org/eclipse/rse/services/clientserver/archiveutils/AbsoluteVirtualPath
>         at java.lang.Class.getDeclaredConstructors0(Native Method)
>         at java.lang.Class.privateGetDeclaredConstructors(Class.java:2389)
>         at java.lang.Class.getConstructor0(Class.java:2699)
>         at java.lang.Class.newInstance0(Class.java:326)
>         at java.lang.Class.newInstance(Class.java:308)
>         at
> org.eclipse.dstore.internal.core.server.MinerLoader.loadMiner(MinerLoader.java:203)
>         at
> org.eclipse.dstore.internal.core.server.ServerCommandHandler.loadMiner(ServerCommandHandler.java:146)
>         at
> org.eclipse.dstore.internal.core.server.ServerCommandHandler.sendCommands(ServerCommandHandler.java:314)
>         at
> org.eclipse.dstore.core.model.CommandHandler.handle(CommandHandler.java:110)
>         at org.eclipse.dstore.core.model.Handler.run(Handler.java:135)
> Caused by: java.lang.ClassNotFoundException:
> org.eclipse.rse.services.clientserver.archiveutils.AbsoluteVirtualPath
>         at java.net.URLClassLoader$1.run(URLClassLoader.java:200)
>         at java.security.AccessController.doPrivileged(Native Method)
>         at java.net.URLClassLoader.findClass(URLClassLoader.java:188)
>         at java.lang.ClassLoader.loadClass(ClassLoader.java:306)
>         at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:276)
>         at java.lang.ClassLoader.loadClass(ClassLoader.java:251)
>         at java.lang.ClassLoader.loadClassInternal(ClassLoader.java:319)
>         ... 10 more
> Exception in thread "DStore CommandHandlerThread-0"
> java.lang.NullPointerException
>         at
> org.eclipse.dstore.internal.core.server.MinerLoader.handleNoClassFound(MinerLoader.java:242)
>         at
> org.eclipse.dstore.internal.core.server.MinerLoader.loadMiner(MinerLoader.java:214)
>         at
> org.eclipse.dstore.internal.core.server.ServerCommandHandler.loadMiner(ServerCommandHandler.java:146)
>         at
> org.eclipse.dstore.internal.core.server.ServerCommandHandler.sendCommands(ServerCommandHandler.java:314)
>         at
> org.eclipse.dstore.core.model.CommandHandler.handle(CommandHandler.java:110)
>         at org.eclipse.dstore.core.model.Handler.run(Handler.java:135)
> 
> 
> and then, when I disconnect from the client, I get in the cluster console:
> 
> java.lang.NoClassDefFoundError:
> org/eclipse/rse/services/clientserver/processes/IHostProcessFilter
>         at java.lang.Class.getDeclaredConstructors0(Native Method)
>         at java.lang.Class.privateGetDeclaredConstructors(Class.java:2389)
>         at java.lang.Class.getConstructor0(Class.java:2699)
>         at java.lang.Class.newInstance0(Class.java:326)
>         at java.lang.Class.newInstance(Class.java:308)
>         at
> org.eclipse.dstore.internal.core.server.MinerLoader.loadMiner(MinerLoader.java:203)
>         at
> org.eclipse.dstore.internal.core.server.ServerCommandHandler.loadMiner(ServerCommandHandler.java:146)
>         at
> org.eclipse.dstore.internal.core.server.ServerCommandHandler.sendCommands(ServerCommandHandler.java:314)
>         at
> org.eclipse.dstore.core.model.CommandHandler.handle(CommandHandler.java:110)
>         at org.eclipse.dstore.core.model.Handler.finish(Handler.java:102)
>         at
> org.eclipse.dstore.internal.core.server.ServerCommandHandler.finish(ServerCommandHandler.java:195)
>         at
> org.eclipse.dstore.core.server.ConnectionEstablisher.finished(ConnectionEstablisher.java:197)
>         at
> org.eclipse.dstore.core.server.ServerReceiver.finish(ServerReceiver.java:84)
>         at
> org.eclipse.dstore.core.server.ServerReceiver.handleDocument(ServerReceiver.java:70)
>         at org.eclipse.dstore.core.util.Receiver.handleInput(Receiver.java:157)
>         at org.eclipse.dstore.core.util.Receiver.run(Receiver.java:121)
> Caused by: java.lang.ClassNotFoundException:
> org.eclipse.rse.services.clientserver.processes.IHostProcessFilter
>         at java.net.URLClassLoader$1.run(URLClassLoader.java:200)
>         at java.security.AccessController.doPrivileged(Native Method)
>         at java.net.URLClassLoader.findClass(URLClassLoader.java:188)
>         at java.lang.ClassLoader.loadClass(ClassLoader.java:306)
>         at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:276)
>         at java.lang.ClassLoader.loadClass(ClassLoader.java:251)
>         at java.lang.ClassLoader.loadClassInternal(ClassLoader.java:319)
>         ... 16 more
> RECEIVER ERROR
> java.lang.NullPointerException
>         at
> org.eclipse.dstore.internal.core.server.MinerLoader.handleNoClassFound(MinerLoader.java:242)
>         at
> org.eclipse.dstore.internal.core.server.MinerLoader.loadMiner(MinerLoader.java:214)
>         at
> org.eclipse.dstore.internal.core.server.ServerCommandHandler.loadMiner(ServerCommandHandler.java:146)
>         at
> org.eclipse.dstore.internal.core.server.ServerCommandHandler.sendCommands(ServerCommandHandler.java:314)
>         at
> org.eclipse.dstore.core.model.CommandHandler.handle(CommandHandler.java:110)
>         at org.eclipse.dstore.core.model.Handler.finish(Handler.java:102)
>         at
> org.eclipse.dstore.internal.core.server.ServerCommandHandler.finish(ServerCommandHandler.java:195)
>         at
> org.eclipse.dstore.core.server.ConnectionEstablisher.finished(ConnectionEstablisher.java:197)
>         at
> org.eclipse.dstore.core.server.ServerReceiver.finish(ServerReceiver.java:84)
>         at
> org.eclipse.dstore.core.server.ServerReceiver.handleDocument(ServerReceiver.java:70)
>         at org.eclipse.dstore.core.util.Receiver.handleInput(Receiver.java:157)
>         at org.eclipse.dstore.core.util.Receiver.run(Receiver.java:121)
> java.lang.NullPointerException
> Server Finished
> 
> 
> 
> Is this of any help?
> 

Oh, also include clientserver.jar in the CLASSPATH.
Comment 18 xoanpardo CLA 2009-03-26 12:02:35 EDT
(In reply to comment #17)

> 
> Oh, also include clientserver.jar in the CLASSPATH.
> 

Ok, I did:

[root@nm rdt-server]# export CLASSPATH=./dstore_core.jar:./dstore_extra_server.jar:./dstore_miners.jar:./clientserver.jar:$CLASSPATH
[root@nm rdt-server]# perl auth.pl pardo . 4033 120000 1000

and get the following after connecting from the client:

Server Started Successfully
4033
Server running on: nm.des.udc.es
java.lang.ClassNotFoundException: org.eclipse.ptp.internal.rdt.core.miners.CDTMiner
	at org.eclipse.dstore.core.java.RemoteClassLoader.requestClass(RemoteClassLoader.java:418)
	at org.eclipse.dstore.core.java.RemoteClassLoader.findClass(RemoteClassLoader.java:239)
	at java.lang.ClassLoader.loadClass(ClassLoader.java:306)
	at java.lang.ClassLoader.loadClass(ClassLoader.java:251)
	at org.eclipse.dstore.internal.core.util.ExternalLoader.loadClass(ExternalLoader.java:102)
	at org.eclipse.dstore.internal.core.server.MinerLoader.loadMiner(MinerLoader.java:202)
	at org.eclipse.dstore.internal.core.server.ServerCommandHandler.loadMiner(ServerCommandHandler.java:146)
	at org.eclipse.dstore.internal.core.server.ServerCommandHandler.sendCommands(ServerCommandHandler.java:314)
	at org.eclipse.dstore.core.model.CommandHandler.handle(CommandHandler.java:110)
	at org.eclipse.dstore.core.model.Handler.run(Handler.java:135)
Exception in thread "DStore CommandHandlerThread-0" java.lang.NullPointerException
	at org.eclipse.dstore.internal.core.server.MinerLoader.handleNoClassFound(MinerLoader.java:242)
	at org.eclipse.dstore.internal.core.server.MinerLoader.loadMiner(MinerLoader.java:219)
	at org.eclipse.dstore.internal.core.server.ServerCommandHandler.loadMiner(ServerCommandHandler.java:146)
	at org.eclipse.dstore.internal.core.server.ServerCommandHandler.sendCommands(ServerCommandHandler.java:314)
	at org.eclipse.dstore.core.model.CommandHandler.handle(CommandHandler.java:110)
	at org.eclipse.dstore.core.model.Handler.run(Handler.java:135)
Server Finished


after that I exported also cdtminer.jar and started the server again:


[root@nm rdt-server]# export CLASSPATH=./dstore_core.jar:./dstore_extra_server.jar:./dstore_miners.jar:./clientserver.jar:./cdtminer.jar:$CLASSPATH
[root@nm rdt-server]# perl auth.pl pardo . 4033 120000 1000


This is what I got:

Server Started Successfully
4033
Server running on: nm.des.udc.es
java.lang.NoClassDefFoundError: org/eclipse/core/runtime/CoreException
	at java.lang.Class.getDeclaredConstructors0(Native Method)
	at java.lang.Class.privateGetDeclaredConstructors(Class.java:2389)
	at java.lang.Class.getConstructor0(Class.java:2699)
	at java.lang.Class.newInstance0(Class.java:326)
	at java.lang.Class.newInstance(Class.java:308)
	at org.eclipse.dstore.internal.core.server.MinerLoader.loadMiner(MinerLoader.java:203)
	at org.eclipse.dstore.internal.core.server.ServerCommandHandler.loadMiner(ServerCommandHandler.java:146)
	at org.eclipse.dstore.internal.core.server.ServerCommandHandler.sendCommands(ServerCommandHandler.java:314)
	at org.eclipse.dstore.core.model.CommandHandler.handle(CommandHandler.java:110)
	at org.eclipse.dstore.core.model.Handler.run(Handler.java:135)
Caused by: java.lang.ClassNotFoundException: org.eclipse.core.runtime.CoreException
	at java.net.URLClassLoader$1.run(URLClassLoader.java:200)
	at java.security.AccessController.doPrivileged(Native Method)
	at java.net.URLClassLoader.findClass(URLClassLoader.java:188)
	at java.lang.ClassLoader.loadClass(ClassLoader.java:306)
	at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:276)
	at java.lang.ClassLoader.loadClass(ClassLoader.java:251)
	at java.lang.ClassLoader.loadClassInternal(ClassLoader.java:319)
	... 10 more
Exception in thread "DStore CommandHandlerThread-0" java.lang.NullPointerException
	at org.eclipse.dstore.internal.core.server.MinerLoader.handleNoClassFound(MinerLoader.java:242)
	at org.eclipse.dstore.internal.core.server.MinerLoader.loadMiner(MinerLoader.java:214)
	at org.eclipse.dstore.internal.core.server.ServerCommandHandler.loadMiner(ServerCommandHandler.java:146)
	at org.eclipse.dstore.internal.core.server.ServerCommandHandler.sendCommands(ServerCommandHandler.java:314)
	at org.eclipse.dstore.core.model.CommandHandler.handle(CommandHandler.java:110)
	at org.eclipse.dstore.core.model.Handler.run(Handler.java:135)
Server Finished



Am I missing any other .jar?



Comment 19 David McKnight CLA 2009-03-26 12:12:25 EDT
(In reply to comment #18)
> (In reply to comment #17)
> 
> > 
> > Oh, also include clientserver.jar in the CLASSPATH.
> > 
> 
> Ok, I did:
> 
> [root@nm rdt-server]# export
> CLASSPATH=./dstore_core.jar:./dstore_extra_server.jar:./dstore_miners.jar:./clientserver.jar:$CLASSPATH
> [root@nm rdt-server]# perl auth.pl pardo . 4033 120000 1000
> 
> and get the following after connecting from the client:
> 
> Server Started Successfully
> 4033
> Server running on: nm.des.udc.es
> java.lang.ClassNotFoundException:
> org.eclipse.ptp.internal.rdt.core.miners.CDTMiner
>         at
> org.eclipse.dstore.core.java.RemoteClassLoader.requestClass(RemoteClassLoader.java:418)
>         at
> org.eclipse.dstore.core.java.RemoteClassLoader.findClass(RemoteClassLoader.java:239)
>         at java.lang.ClassLoader.loadClass(ClassLoader.java:306)
>         at java.lang.ClassLoader.loadClass(ClassLoader.java:251)
>         at
> org.eclipse.dstore.internal.core.util.ExternalLoader.loadClass(ExternalLoader.java:102)
>         at
> org.eclipse.dstore.internal.core.server.MinerLoader.loadMiner(MinerLoader.java:202)
>         at
> org.eclipse.dstore.internal.core.server.ServerCommandHandler.loadMiner(ServerCommandHandler.java:146)
>         at
> org.eclipse.dstore.internal.core.server.ServerCommandHandler.sendCommands(ServerCommandHandler.java:314)
>         at
> org.eclipse.dstore.core.model.CommandHandler.handle(CommandHandler.java:110)
>         at org.eclipse.dstore.core.model.Handler.run(Handler.java:135)
> Exception in thread "DStore CommandHandlerThread-0"
> java.lang.NullPointerException
>         at
> org.eclipse.dstore.internal.core.server.MinerLoader.handleNoClassFound(MinerLoader.java:242)
>         at
> org.eclipse.dstore.internal.core.server.MinerLoader.loadMiner(MinerLoader.java:219)
>         at
> org.eclipse.dstore.internal.core.server.ServerCommandHandler.loadMiner(ServerCommandHandler.java:146)
>         at
> org.eclipse.dstore.internal.core.server.ServerCommandHandler.sendCommands(ServerCommandHandler.java:314)
>         at
> org.eclipse.dstore.core.model.CommandHandler.handle(CommandHandler.java:110)
>         at org.eclipse.dstore.core.model.Handler.run(Handler.java:135)
> Server Finished
> 
> 
> after that I exported also cdtminer.jar and started the server again:
> 
> 
> [root@nm rdt-server]# export
> CLASSPATH=./dstore_core.jar:./dstore_extra_server.jar:./dstore_miners.jar:./clientserver.jar:./cdtminer.jar:$CLASSPATH
> [root@nm rdt-server]# perl auth.pl pardo . 4033 120000 1000
> 
> 
> This is what I got:
> 
> Server Started Successfully
> 4033
> Server running on: nm.des.udc.es
> java.lang.NoClassDefFoundError: org/eclipse/core/runtime/CoreException
>         at java.lang.Class.getDeclaredConstructors0(Native Method)
>         at java.lang.Class.privateGetDeclaredConstructors(Class.java:2389)
>         at java.lang.Class.getConstructor0(Class.java:2699)
>         at java.lang.Class.newInstance0(Class.java:326)
>         at java.lang.Class.newInstance(Class.java:308)
>         at
> org.eclipse.dstore.internal.core.server.MinerLoader.loadMiner(MinerLoader.java:203)
>         at
> org.eclipse.dstore.internal.core.server.ServerCommandHandler.loadMiner(ServerCommandHandler.java:146)
>         at
> org.eclipse.dstore.internal.core.server.ServerCommandHandler.sendCommands(ServerCommandHandler.java:314)
>         at
> org.eclipse.dstore.core.model.CommandHandler.handle(CommandHandler.java:110)
>         at org.eclipse.dstore.core.model.Handler.run(Handler.java:135)
> Caused by: java.lang.ClassNotFoundException:
> org.eclipse.core.runtime.CoreException
>         at java.net.URLClassLoader$1.run(URLClassLoader.java:200)
>         at java.security.AccessController.doPrivileged(Native Method)
>         at java.net.URLClassLoader.findClass(URLClassLoader.java:188)
>         at java.lang.ClassLoader.loadClass(ClassLoader.java:306)
>         at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:276)
>         at java.lang.ClassLoader.loadClass(ClassLoader.java:251)
>         at java.lang.ClassLoader.loadClassInternal(ClassLoader.java:319)
>         ... 10 more
> Exception in thread "DStore CommandHandlerThread-0"
> java.lang.NullPointerException
>         at
> org.eclipse.dstore.internal.core.server.MinerLoader.handleNoClassFound(MinerLoader.java:242)
>         at
> org.eclipse.dstore.internal.core.server.MinerLoader.loadMiner(MinerLoader.java:214)
>         at
> org.eclipse.dstore.internal.core.server.ServerCommandHandler.loadMiner(ServerCommandHandler.java:146)
>         at
> org.eclipse.dstore.internal.core.server.ServerCommandHandler.sendCommands(ServerCommandHandler.java:314)
>         at
> org.eclipse.dstore.core.model.CommandHandler.handle(CommandHandler.java:110)
>         at org.eclipse.dstore.core.model.Handler.run(Handler.java:135)
> Server Finished
> 
> 
> 
> Am I missing any other .jar?
> 

Ahh...I see.  The additional non-RSE miners (for remote CDT support) are not in your CLASSPATH.  Could you add all the jars in the server install directory to the classpath?  If it works after that, then the next thing I would do is modify the daemon.pl script to include those additional jars in the classpath it sets.

Comment 20 xoanpardo CLA 2009-03-26 12:37:16 EDT
(In reply to comment #19)

> 
> Ahh...I see.  The additional non-RSE miners (for remote CDT support) are not in
> your CLASSPATH.  Could you add all the jars in the server install directory to
> the classpath?  If it works after that, then the next thing I would do is
> modify the daemon.pl script to include those additional jars in the classpath
> it sets.
> 

Now I did:

[root@nm rdt-server]# ls *.jar
cdtminer.jar      dstore_core.jar                                       org.eclipse.core.runtime_3.4.0.v20080512.jar
cdtmodel.jar      dstore_extra_server.jar                               org.eclipse.equinox.common_3.4.0.v20080421-2006.jar
cdtparser.jar     dstore_miners.jar                                     stubs.jar
clientserver.jar  org.eclipse.core.filesystem_1.2.0.v20080604-1400.jar
[root@nm rdt-server]# export CLASSPATH=./dstore_core.jar:./dstore_extra_server.jar:./dstore_miners.jar:./clientserver.jar:./cdtminer.jar:./cdtmodel.jar:./cdtparser.jar:./stubs.jar:$CLASSPATH
[root@nm rdt-server]# perl auth.pl pardo . 4033 120000 1000



tried to connect and got:



Server Started Successfully
4033
Server running on: nm.des.udc.es
java.lang.NoClassDefFoundError: org/eclipse/core/runtime/CoreException
	at java.lang.Class.getDeclaredConstructors0(Native Method)
	at java.lang.Class.privateGetDeclaredConstructors(Class.java:2389)
	at java.lang.Class.getConstructor0(Class.java:2699)
	at java.lang.Class.newInstance0(Class.java:326)
	at java.lang.Class.newInstance(Class.java:308)
	at org.eclipse.dstore.internal.core.server.MinerLoader.loadMiner(MinerLoader.java:203)
	at org.eclipse.dstore.internal.core.server.ServerCommandHandler.loadMiner(ServerCommandHandler.java:146)
	at org.eclipse.dstore.internal.core.server.ServerCommandHandler.sendCommands(ServerCommandHandler.java:314)
	at org.eclipse.dstore.core.model.CommandHandler.handle(CommandHandler.java:110)
	at org.eclipse.dstore.core.model.Handler.run(Handler.java:135)
Caused by: java.lang.ClassNotFoundException: org.eclipse.core.runtime.CoreException
	at java.net.URLClassLoader$1.run(URLClassLoader.java:200)
	at java.security.AccessController.doPrivileged(Native Method)
	at java.net.URLClassLoader.findClass(URLClassLoader.java:188)
	at java.lang.ClassLoader.loadClass(ClassLoader.java:306)
	at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:276)
	at java.lang.ClassLoader.loadClass(ClassLoader.java:251)
	at java.lang.ClassLoader.loadClassInternal(ClassLoader.java:319)
	... 10 more
Exception in thread "DStore CommandHandlerThread-0" java.lang.NullPointerException
	at org.eclipse.dstore.internal.core.server.MinerLoader.handleNoClassFound(MinerLoader.java:242)
	at org.eclipse.dstore.internal.core.server.MinerLoader.loadMiner(MinerLoader.java:214)
	at org.eclipse.dstore.internal.core.server.ServerCommandHandler.loadMiner(ServerCommandHandler.java:146)
	at org.eclipse.dstore.internal.core.server.ServerCommandHandler.sendCommands(ServerCommandHandler.java:314)
	at org.eclipse.dstore.core.model.CommandHandler.handle(CommandHandler.java:110)
	at org.eclipse.dstore.core.model.Handler.run(Handler.java:135)
Server Finished




After that I exported ALL jars and tried again:


[root@nm rdt-server]# export CLASSPATH=./dstore_core.jar:./dstore_extra_server.jar:./dstore_miners.jar:./clientserver.jar:./cdtminer.jar:./cdtmodel.jar:./cdtparser.jar:./stubs.jar:./org.eclipse.core.filesystem_1.2.0.v20080604-1400.jar:./org.eclipse.core.runtime_3.4.0.v20080512.jar:./org.eclipse.equinox.common_3.4.0.v20080421-2006.jar:$CLASSPATH
[root@nm rdt-server]# perl auth.pl pardo . 4033 120000 



And I got:


Server Started Successfully
4033
Server running on: nm.des.udc.es
Extended schema from CDTMiner


No java messages, but that did not resolve the problem!! 
Comment 21 David McKnight CLA 2009-03-26 12:46:04 EDT
I don't have the CDT miners or it's dependencies eclipse jars on the server side so it's hard for me to know what's missing in this scenario.  

I've CCed Chris Recoskie from the CDT team.  Chris, do you know what might be missing in this scenario?  It looks like one of the CDT miners (or it's dependencies) need CoreException but that's not in the classpath.

Comment 22 Chris Recoskie CLA 2009-03-26 13:06:14 EDT
Hmmm... yeah I guess we didn't modify auth.pl to setup the proper classpath.  I'll bounce this over to the RDT queue.
Comment 23 Chris Recoskie CLA 2009-03-26 13:06:55 EDT
Vivian, can you please fix this?  Thanks.
Comment 24 Vivian Kong CLA 2009-03-26 14:52:49 EDT
Chris, where in the server package do we add our jars to the classpath?  From what I know we have to update server.sh and daemon.pl (the one we're missing right now).  Do you know if there are any others?
Comment 25 Chris Recoskie CLA 2009-03-26 14:57:48 EDT
(In reply to comment #24)
> Chris, where in the server package do we add our jars to the classpath?  From
> what I know we have to update server.sh and daemon.pl (the one we're missing
> right now).  Do you know if there are any others?

AFAIK, server.sh, auth.pl, daemon.pl
Comment 26 Vivian Kong CLA 2009-03-27 10:08:19 EDT
Created attachment 130106 [details]
proposed patch

I believe the classpath is setup in the scripts server.* and daemon.pl.  The auth.pl script is called after the classpath has been setup so there's no need to update that.

Patch should work for both ptp_2_1 and HEAD streams.
Comment 27 Greg Watson CLA 2009-04-09 23:12:29 EDT
Applied to ptp_2_1 and HEAD.
Comment 28 Vivian Kong CLA 2009-04-13 13:03:48 EDT
Fixed in ptp_2_1 and HEAD.