Some Eclipse Foundation services are deprecated, or will be soon. Please ensure you've read this important communication.

Bug 77831

Summary: (Plat) No data collection when using network drives.
Product: z_Archived Reporter: Heiner Westphal <westphal>
Component: HyadesAssignee: Nellie Chau <nelliec>
Status: CLOSED FIXED QA Contact:
Severity: normal    
Priority: P3 CC: Brian_Young
Version: unspecifiedKeywords: Documentation
Target Milestone: ---   
Hardware: PC   
OS: Windows XP   
Whiteboard: closed460

Description Heiner Westphal CLA 2004-11-04 10:25:27 EST
When the working dir resides on a network drive (fedora core 1 with samba 3.x),
I cannot collect profiling data.

I get an error dialog telling:
  IWAT0008E Error launching X.
  Reason:
  IWAT0008E Either the agent controller (RAServer.exe) is not started, or the
  Java path is incorrect. See log for more details.

The RAServer's sericelog.log says:
<SERVER_MSG time="2004:11:4:13:6:11" severity="INFORMATION" text="Attempting to
launch process : java.exe  -XrunpiAgent:server=controlled X in location N:\wor
k\eclipse\workspace\playground" file="..\RAServer\launcher.c" line="315"/>
<SERVER_MSG time="2004:11:4:13:6:11" severity="SEVERE" text="Launching process
failed, platform specific error is 267. Path=D:\Programme\j2sdk1.4.2_04\jre\bin
\java.exe Process command line = "D:\Programme\j2sdk1.4.2_04\jre\bin\java.exe"
-XrunpiAgent:server=controlled X" file="..\RAServer\launcher.c" line="328"/>

When I change the working directory to something local, e.g.
C:\work\eclipse\workspace\playground, I get 
java.lang.NoClassDefFoundError: X.

This is another bug concerning classpath external to the
workspace (independent of local or network drives).

Running the application without profiling works.

The class X.java ist:
---------------------------------------------
public class X {
    public static void main(String[] args) {
        System.out.println("Hello world");
    }
}
---------------------------------------------
Comment 1 Heiner Westphal CLA 2004-11-04 10:38:41 EST
BTW.

I use Windows XP Home SP2
eclipse 3.0.1
hyades.rac.nt_3.2.0_20041101_1032 and the other 
  hyades*_3.2.0_20041101_1032 without .rac.
The rac is running as service.
JVM is Sun J2SDK 1.4.2_04.
Comment 2 Richard Duggan CLA 2004-11-04 11:30:55 EST
We will investoigate this in the next iteration.  I know we have looked into 
this in the past without any luck. It appears that the environment settings to 
logical network drives are not honoured by windows.
Comment 3 Samson Wai CLA 2004-12-14 13:42:56 EST
There are 2 scenarios which might show different behaviour.

Case 1: RAServer is running as a Windows system service
The RAServer is configured to run as system account and may not have the 
required rights to access the network resource. In order to allow the RAServer 
service to access the network drive, you will need to edit the service 
properties. Under the "Log On" page, change from "Local System account" 
to "This account" and fill out the user name and password which is able to 
access the network drive. Restart RAServer service and you should be able 
access the network drive now.

Case 2: RAServer is running as a standalone process
If RAServer is started from a command prompt, it will inherit the current user 
setting and should have no problem accessing the network drive if the current 
user is able to do so.
Comment 4 Brian Young CLA 2005-01-12 08:17:25 EST
I have encountered this same problem in RAD v6 (based upon Eclipse 3.0).  I am 
in a similar situation as Case 1 in comment #3 above.  The Agent Controller has 
permissions to access the network volume but I still get a no class found error.
Comment 5 Samson Wai CLA 2005-01-12 08:45:18 EST
Brian, can you show me how you can check the access permission of the Local 
System Account?

When "User A" has a network drive mounted as "T:", only him/her can see this 
drive letter - i.e. other users/services on this machine cannot see this drive 
letter. I would recommend to use the UNC name of the network resource if 
possible, e.g. "\\machine\share" instead of a mounted drive letter. You can 
verify this by telnet'ing into the same Windows machine with a differ user ID. 
You will not be seeing the mounted network drives by another user.
Comment 6 Samson Wai CLA 2005-01-19 13:14:29 EST
I would like to close this off since this is a operating system limitation. If 
there is no objection then I will go ahead. Thanks.
Comment 7 Brian Young CLA 2005-01-19 17:17:09 EST
In our network environment certain network volumes are always assigned the same 
drive letter AND certain directories are public (read/write) to anyone who has 
the volume mounted.  So in our case it does not matter if UserA or UserB logs 
into a machine, these drive letter mappings and directory access will be 
available to both.  In this situation environment, would you say that the RAC 
should be able to access the network drive?
Comment 8 Samson Wai CLA 2005-01-20 08:04:19 EST
Since the RAC service is not logged in as any type of user (it is a system 
service) it may or may not have the environment required to access the public 
mounted network drives. Have you check if you can use "\\machine\share" 
instead? I think it is up to Windows to determine whether system services can 
access this kind of resource or not.

If the RAC is running standalone (in the user's own environment and thus can be 
thought of being logged in as that user) then there should be no problem using 
the network drives.
Comment 9 Samson Wai CLA 2005-02-03 23:50:19 EST
transfer to tptp
Comment 10 Heiner Westphal CLA 2005-02-04 04:44:15 EST
I did some more testing and data collection works fine, if RAServer is running
as standalone application.
The system service does not see mounted network drives AND does not
know about virtual drives created via subst.

Thus this is no bug in Hyades, or TPTP, but an FAQ:

Q: Why does profiling fail when using network drives?
A: Because your RAServer is running as service with
   system user privileges without access to the network drive.

To use network or virtual drives RAServer MUST either
a) run as application or
b) as service logged in as a user who has access to the respective drives.

May be it would help to improve the error message so one can see
there is an access problem. Possibly the "Caused by" chain of
the exception has all info needed.
Comment 11 Samson Wai CLA 2005-02-04 11:16:20 EST
undo move to tptp...
Comment 12 Samson Wai CLA 2005-02-09 13:58:39 EST
Ok, we can add your FAQ to the docs.

FYI. The next major release of Agent Controller should have a completely new 
error handling mechanism. We cannot provide such an improvement in the current 
release.
Comment 13 Nellie Chau CLA 2005-02-16 10:16:50 EST
This will be added as a limitation in 3.3 docs:

Data collection fails on network or virtual drives

If Agent Controller is configured to run as a system service, it does not see
mounted network drives or virtual drives. Therefore, data collection will fail
when collecting data on network or virtual drives.

To work around this limitation, the Agent Controller should be configured in one
of two ways:

   1. To run as application.
   2. To run as service logged in as a user who has access to the respective drives.


Comment 14 Nellie Chau CLA 2005-02-16 10:33:52 EST
Fixed in 3.3
Comment 15 Harm Sluiman CLA 2005-03-16 08:30:40 EST
setting target based on last change date, please adjust if not correct
Comment 16 Paul Slauenwhite CLA 2009-06-30 12:32:25 EDT
As of TPTP 4.6.0, TPTP is in maintenance mode and focusing on improving quality by resolving relevant enhancements/defects and increasing test coverage through test creation, automation, Build Verification Tests (BVTs), and expanded run-time execution. As part of the TPTP Bugzilla housecleaning process (see http://wiki.eclipse.org/Bugzilla_Housecleaning_Processes), this enhancement/defect is verified/closed by the Project Lead since this enhancement/defect has been resolved and unverified for more than 1 year and considered to be fixed. If this enhancement/defect is still unresolved and reproducible in the latest TPTP release (http://www.eclipse.org/tptp/home/downloads/), please re-open.