[Search for users] [Overall Top Noters] [List of all Conferences] [Download this site]

Conference microw::acmsxp

Title:ACMSxp product questions and comments
Notice:Refer to notes 1 through 11 for conference information
Moderator:DUCAT::ROSCOE
Created:Tue Oct 05 1993
Last Modified:Thu Jun 05 1997
Last Successful Update:Fri Jun 06 1997
Number of topics:282
Total number of notes:1134

250.0. "%TPS-E-FILACCESSERR debugging server" by UTRTSC::WDEBAKKER (Feed your head) Wed Feb 05 1997 13:39

Hello,

A customer reported the following:

We can not start the server processes with debugging mode.

We get following response :
BVX083> dce_login appl_adm appl_adm
BVX083> acms debug server menu_r1_prc_grp_svr
%TPS-E-FILACCESSERR, Error accessing file

The VMS user has all VMS privileges (including bypass)
World has read, write, execute and delete access on the idf file,
the executable and all files in acms_tpsystem.
The principal appl_adm created the server and is able to start and stop the
server with acmsadmin.

The same error appears with processing and task servers.
The same error appears after compiling stdl with or without the debug option.

Configuration
-------------
AlphaServer 4000 5/400 4MB

OpenVMS V6.2-1H3
ACMSxp V2.1 for OpenVMS Alpha
Debugger V6.2-100
DEC COBOL V2.4-863
Dec C V5.2

We did a SET WATCH FILE/CLASS=MAJOR and got the following extra info:

ACMS DEBUG SERVER MENU_R1_PRC_GRP_SVR
%XQP, Thread #0, Access TPS_SVR_ACMSDEBUG.EXE;1 (6977,1,0) Status: 00000001
%XQP, Thread #0, Access TPS$SHAREV021.EXE;1 (6940,1,0) Status: 00000001
%XQP, Thread #0, Access  (0,0,0) Status: 00000910
%XQP, Thread #0, Access CMA$RTL.EXE;3 (7267,1,0) Status: 00000001
%XQP, Thread #0, Deaccess (7267,1,0) Reads: 3, Writes: 0, Status: 00000001
%XQP, Thread #0, Access TPS.CAT;1 (7096,1,0) Status: 00000001
%XQP, Thread #0, Lookup  (7943,11,0) Status: 00000001
%XQP, Thread #0, Access  (0,0,0) Status: 00000910
%XQP, Thread #0, Access TPS.CAT;1 (7096,1,0) Status: 00000001
%XQP, Thread #0, Lookup  (22,33,0) Status: 00000001
%XQP, Thread #0, Lookup  (30,18,0) Status: 00000001
%XQP, Thread #0, Lookup TPSYS1_DEFAULT.LOG;1 (30,18,0) Status: 00000001
%XQP, Thread #0, Access TPSYS1_DEFAULT.LOG;1 (30,18,0) Status: 00000001
%XQP, Thread #0, Modify TPSYS1_DEFAULT.LOG;1 (30,18,0) Status: 00000001
%TPS-E-FILACCESSERR, Error accessing file
%XQP, Thread #0, Deaccess (7096,1,0) Reads: 4, Writes: 0, Status: 00000001
%XQP, Thread #0, Deaccess (30,18,0) Reads: 1, Writes: 2, Status: 00000001
%XQP, Thread #0, Deaccess (7096,1,0) Reads: 3, Writes: 0, Status: 00000001
%XQP, Thread #0, Deaccess (6977,1,0) Reads: 8, Writes: 0, Status: 00000001
%XQP, Thread #0, Deaccess (6940,1,0) Reads: 14, Writes: 0, Status: 00000001

How could we solve this?
Willem
T.RTitleUserPersonal
Name
DateLines
250.1DUCAT::ROSCOEWed Feb 05 1997 17:5239
It could be a couple of things, given that you can start and stop the server
using acmsadmin is a good sign.

Did they follow the instructions for debugging a server as defined in the 
STDL Encyclopedia under the topic DEBUGGING?

One way to get that error is if the acms_tpsystems.dat file resides in a
place other than ACMS_SYS_DIR.  If it does then the logical acms_tpsystems
must point to the file.  For example:

$ show log acms_tpsystems
   "ACMS_TPSYSTEMS" = "ACMS_WORK_DIR:ACMS_TPSYSTEMS.DAT" (LNM$PROCESS_TABLE)

If the absence or incorrect setting of the acms_tpsystems logical is the 
problem, I would suggest to them that they keep the file acms_tpsytems.dat
in acms_sys_dir.  By doing this the  logical does not need to be defined.
In addition the purpose of the file acms_tpsystems.dat is to make sure
that no two tpsystems on the same box have the same simple_name.  This
name must be unique.  If each user has his/her own acms_tpsystems.dat
file then you could get into trouble.  


I assume that the logical acms_debug_tpsystem is set correctly since the
/tpsys qualifier is not being used?  

Is acms_config_db set to point to the acmsxp configuration database?  For 
example:
 show log acms_config_db
   "ACMS_CONFIG_DB" = "USER2$:[ROSCOE.STD_TPC]STD_CDB" (LNM$PROCESS_TABLE)

I suspect acms_debug_tpsystem and acms_config_db are set correctly as
you should get a different error message. 


If none of the above is of any help.  Please have the customer take a 
look in the tpsystem default log file and see if anything is posted 
in it.

Rich
250.2UTRTSC::WDEBAKKERFeed your headFri Feb 07 1997 07:34193
Thanks Rich,

The customer indeed had some logicals messed up.
However, after correcting this, the errormessage has disappeared,
but now they're immediately thrown back to DCL.
Any ideas about this?
Thanks,
Willem

They have the following logicals on process level:
  "ACMS_CONFIG_DB" = "VOL:[ACMSXP.DAT]TPSYS1_CDB"
  "ACMS_DEBUG_TPSYSTEM" = "TPSYS1"
  "ACMS_LIB_DIR" = "$1$DKB0:[SYS0.SYSCOMMON.ACMSXPV021.SYSLIB]"
  "ACMS_LOG_FILE" = "LOGIS_LOG:TPSYS1_DEFAULT.LOG"
  "ACMS_SYS_DIR" = "$1$DKB0:[SYS0.SYSCOMMON.ACMSXPV021.SYSEXE]"
  "ACMS_TPSYSTEMS" = "VOL:[ACMSXP.DAT]ACMS_TPSYSTEMS.DAT"

ACMS list logfile gives:
********************************************************************************
ACMS Log Report
LOGIS_LOG:TPSYS1_DEFAULT.LOG
1997-02-06-16:55:21.572
********************************************************************************
SELECTION CRITERIA:
Before:
Since:  1997-02-06-16:54:30.000
Format:  SYSTEM
Type:
Principal:
TPSystem:
Server:
Interface:
Procedure:
Request ID:
Device:
********************************************************************************
********************************************************************************
USER:  Q054256
TIME:  1997-02-06-16:54:35.045
POSTED BY:  ACMSxp Debug Server Process
PID:  18dc
TYPE:  status

OLD STATE:  not started
NEW STATE:  starting
ENTITY CLASS:  Server
    TPSystem:  tpsys1
    Server:  menu_r1_prc_grp_svr

********************************************************************************
USER:  Q054256
TIME:  1997-02-06-16:54:35.247
POSTED BY:  ACMSxp Debug Server Process
PID:  18dc
TYPE:  status

OLD STATE:  not started
NEW STATE:  starting
ENTITY CLASS:  Process
    TPSystem:  tpsys1
    Server:  menu_r1_prc_grp_svr
    Process:  0000193a

********************************************************************************
USER:  Q054256
TIME:  1997-02-06-16:54:38.281
POSTED BY:  ACMSxp Debug Server Process
PID:  18dc
TYPE:  status

OLD STATE:  starting
NEW STATE:  not started
ENTITY CLASS:  Process
    TPSystem:  tpsys1
    Server:  menu_r1_prc_grp_svr
    Process:  0000193a

********************************************************************************
USER:  Q054256
TIME:  1997-02-06-16:54:38.352
POSTED BY:  ACMSxp Debug Server Process
PID:  18dc
TYPE:  status

OLD STATE:  started
NEW STATE:  stopping
ENTITY CLASS:  Server
    TPSystem:  tpsys1
    Server:  menu_r1_prc_grp_svr

********************************************************************************
USER:  Q054256
TIME:  1997-02-06-16:54:38.386
POSTED BY:  ACMSxp Debug Server Process
PID:  18dc
TYPE:  status

OLD STATE:  stopping
NEW STATE:  not started
ENTITY CLASS:  Server
    TPSystem:  tpsys1
    Server:  menu_r1_prc_grp_svr



acmsadmin> show server menu_r1_prc_grp_svr all

TPsystem /.:/appl/f_env/tp_sys1/tpsys1 Server "menu_r1_prc_grp_svr"
AT 1997-02-06-16:48:04.648+00:00I-----

Status

    Processing State                  = Not started

Characteristics

    Autostart                         = False
    Executable File                   = "prog_exe:menu_r1_prc_grp_svr.exe"
    Event Filter                      =
        {
            Audit ,
            Fault ,
            Security ,
            Status ,
            Trace
        }
    Local AP-Title                    = " "
    Maximum Processes                 = 1
    Maximum Threads                   = 1
    Stack Size Factor                 = 10
    Registration Type                 = Local
    Namespace Server Entry            = "/.:/appl/f_env/tp_sys1/tpsys1_menu_r1_p
rc_grp_svr"
    Server Type                       = STDL_processing
    Default Namespace Profile Element = False
    Multithreaded                     = False
    Selection Priority                = 4
    Username                          = "LOGISF_ACMS"
    ACL                               =
        {
            "user:appl_adm:rwxcd"
        }
    Environment Variables             =
        {
            [
                Name = "SQL$DATABASE" ,
                Value = "BMAT02$DB"
            ]
        }
    Descriptor File                   = "prog_obj:menu_


Counters

    Creation Time                     = 1997-02-04-15:13:55.244+00:00I-----

Show successful

klist gives:
DCE Identity Information:
        Warning: Identity information is not certified
        Global Principal: /.../dev_a2_cell/appl_adm
        Cell:      5bd2002c-55c9-11d0-8d21-0000f82069b6 /.../dev_a2_cell
        Principal: 0000006d-67db-21d0-9b00-0000f82069b6 appl_adm
        Group:     00000070-67dd-21d0-9b01-0000f82069b6 logis_adm_grp
        Local Groups:
                00000070-67dd-21d0-9b01-0000f82069b6 logis_adm_grp
                00000066-55c9-21d0-ba01-0000f82069b6 subsys/dce/cds-admin
                0000006a-55c9-21d0-ba01-0000f82069b6 subsys/dce/cds-server

Identity Info Expires: 97/02/06:22:59:19
Account Expires:       never
Passwd Expires:        never

Kerberos Ticket Information:
Ticket cache: /dce$specific/var/security/creds/18dca700
Default principal: appl_adm@dev_a2_cell
Server: krbtgt/dev_a2_cell

        valid 97/02/06:12:59:19 to 97/02/06:22:59:19
Server: dce-rgy@dev_a2_cell
        valid 97/02/06:12:59:19 to 97/02/06:22:59:19
Server: dce-ptgt@dev_a2_cell
        valid 97/02/06:16:18:19 to 97/02/06:18:18:19
Client: dce-ptgt@dev_a2_cell    Server: krbtgt/dev_a2_cell@dev_a2_cell
        valid 97/02/06:16:18:19 to 97/02/06:18:18:19
Client: dce-ptgt@dev_a2_cell    Server: dce-rgy@dev_a2_cell
        valid 97/02/06:16:18:23 to 97/02/06:18:18:19
Client: dce-ptgt@dev_a2_cell    Server: hosts/bvx083/cds-server@dev_a2_cell
        valid 97/02/06:16:25:05 to 97/02/06:18:18:19
Client: dce-ptgt@dev_a2_cell    Server: hosts/bvx083/cds-server@dev_a2_cell
        valid 97/02/06:16:25:05 to 97/02/06:18:18:19
250.3DUCAT::ROSCOEFri Feb 07 1997 16:4925
Hi,

I'd bet that the server executable file as defined below is not built
debug.  have them make sure it is.  The next thing to check is 
that the user debugging the image is has enough privs.  Is the 
logical prog_exe defined such that the process can translate the
logical?

rich

acmsadmin> show server menu_r1_prc_grp_svr all

TPsystem /.:/appl/f_env/tp_sys1/tpsys1 Server "menu_r1_prc_grp_svr"
AT 1997-02-06-16:48:04.648+00:00I-----

Status

    Processing State                  = Not started

Characteristics

    Autostart                         = False
    Executable File                   = "prog_exe:menu_r1_prc_grp_svr.exe"


250.4DEBUG requires SYSPRV?!UTRTSC::DORLANDThe Wizard of Odz2Thu Feb 13 1997 12:5116
    Oke, everything runs fine now.
    However it looks as if SYSPRV privilege is needed to 
    run the debugger. If you don't have SYSPRV or BYPASS
    you will get stuck on TPS_SVR_ACMSDEBUG.EXE.
    
    Looking in the ACMSXP startup file I see that there is
    is subroutine to INSTALL images, however it is never used
    (in fact the ACMSXP startup file is almost empty).
    
    If you INSTALL TPS_SVR_ACMSDEBUG.EXE manually you'll run in
    the next error (requiring you to install all kinds of shareable
    images as well).
    
    Any ideas?
    
    Regards, Ton
250.5CAMINO::ROSCOEThu Feb 13 1997 22:1627
    Hi,
    
    I'll have to check the documentation to see if sysprv is listed as a
    required priv.  I'm surprised to here that this was missing since the 
    basenote implied it along with just about every other priv was already set.
    
    With regards to the acmsxp startup file.  It's sole purpose, currently,
    is to allow the user to decide whether the ACMSxp logicals are defined
    in the system logical name table or process logical name table.
    
    At one point someone put some dcl code in to install our shareable
    images, but it is obviously not used as you have already discovered.
    
    The only ACMSxp images that should be installed are the acmsxp
    shareable images. These images are located in the directory pointed
    to by the acms_lib_dir logical.  the shareables are not prived
    images so should be installed with the /open/head/share qualifiers
    only.  I'll fix the command procedure for a future release so
    that they can be installed.  For now, since we obviously haven't 
    tested with them installed I would recommend that they not be installed.
    
    Everything should work fine but a production system isn't the place
    to find out.  When the command procedure is fixed that will imply
    that we have tested with the images installed and it is okay to do
    so. 
    
    rich
250.6RE .5UTRTSC::DORLANDThe Wizard of Odz2Fri Feb 14 1997 08:2711
    Well, in the base note the customer had problems with
    debugging anyway. After that was fixed the customer wondered
    why priv's such as SYSPRV or BYPASS was needed. After removing them
    debugging failed with NOPRIV. 
    
    I think they just want to know if SYSPRV is a required priv.
    
    CurrentlyI have advised them no to try to INSTALL images 
    until a 'final' answer is available for this little problem.
    
    Rgds, Ton
250.7required privs for debugging:DUCAT::ROSCOEFri Feb 14 1997 12:3717
I checked the documentation for the list of required privs and failed to 
find it.  chapter 3 of the install guide, specifically section 3.1.1
says to see the ACMSxp for OpenVMS TP system case study for a list
of the required privs.  I looked in that book and couldn't find it.

Anyway checking the file acms_sys_dir:acms$server_startup.com
(which does the priv checking) suggests that the required privs are:

"SYSNAM, GRPPRV, GRPNAM, TMPMBX, PRMGBL, SHARE, NETMBX, SYSPRV"

The reason for sysprv, has to do with setting an acl on the device dbg$input

The documentation will be updated to reflect this.  I'll enter a defect
to revist the issue of needing sysprv while debugging to see if the 
priv can somehow be removed.

rich