on 02-16-2009 10:19 AM
Dear Experts,
I am getting the error on SAP startup,Disp+Work.exe dies and the work processes die on startup.
I found below error in my DEV_W0 trace as below
*failed to establish conn to np:(local).*
*C Retrying without protocol specifier: (local)*
*C Provider SQLNCLI could not be initialized. See note #734034 for more information.*
*C Using provider SQLOLEDB instead.*
*C ExecuteAndFlush return code: 0x80040e14 Stmt: [if user_name() != 'pec' setuser 'pec']*
*C sloledb.cpp [ExecuteAndFlush,line 5989]: Error/Message: (err 4604, sev 0), There is no such user or group 'pec'.*
*C Procname: [ExecuteAndFlush - no proc]*
But i could see the user 'pec' is availble in my database users list with db_owner , public permissions also been assigned to it.
However When trying to delete a user on SQL server 2000, we recieve the message "You cannot drop the selected login ID because that login ID owns objects in one or more databases.".
Please refer the below work process trace and please suggest the possible solution..
-
trc file: "dev_w0", trc level: 1, release: "640"
-
*
ACTIVE TRACE LEVEL 1
ACTIVE TRACE COMPONENTS all, M
*
B
B Sat Feb 14 15:10:21 2009
B create_con (con_name=R/3)
B Loading DB library 'E:\usr\sap\PEC\SYS\exe\run\dbmssslib.dll' ...
B Library 'E:\usr\sap\PEC\SYS\exe\run\dbmssslib.dll' loaded
B Version of 'E:\usr\sap\PEC\SYS\exe\run\dbmssslib.dll' is "640.00", patchlevel (0.195)
B New connection 0 created
M sysno 00
M sid PEC
M systemid 560 (PC with Windows NT)
M relno 6400
M patchlevel 0
M patchno 196
M intno 20020600
M make: multithreaded, Unicode
M pid 3844
M
M ***LOG Q0Q=> tskh_init, WPStart (Workproc 0 3844) [dpxxdisp.c 1162]
I MtxInit: -2 0 0
M DpSysAdmExtCreate: ABAP is active
M DpShMCreate: sizeof(wp_adm) 21120 (1320)
M DpShMCreate: sizeof(tm_adm) 29558776 (14772)
M DpShMCreate: sizeof(wp_ca_adm) 24000 (80)
M DpShMCreate: sizeof(appc_ca_adm) 8000 (80)
M DpShMCreate: sizeof(comm_adm) 1160000 (580)
M DpShMCreate: sizeof(vmc_adm) 0 (424)
M DpShMCreate: sizeof(wall_adm) (384056/329560/64/184)
M DpShMCreate: SHM_DP_ADM_KEY (addr: 07800040, size: 31492672)
M DpShMCreate: allocated sys_adm at 07800040
M DpShMCreate: allocated wp_adm at 07801B88
M DpShMCreate: allocated tm_adm_list at 07806E08
M DpShMCreate: allocated tm_adm at 07806E30
M DpShMCreate: allocated wp_ca_adm at 09437628
M DpShMCreate: allocated appc_ca_adm at 0943D3E8
M DpShMCreate: allocated comm_adm_list at 0943F328
M DpShMCreate: allocated comm_adm at 0943F340
M DpShMCreate: allocated vmc_adm_list at 0955A680
M DpShMCreate: system runs without vmc_adm
M DpShMCreate: allocated ca_info at 0955A6A8
M DpShMCreate: allocated wall_adm at 0955A6B0
X EmInit: MmSetImplementation( 2 ).
X <ES> client 0 initializing ....
X Using implementation flat
M <EsNT> Memory Reset disabled as NT default
X ES initialized.
M
M Sat Feb 14 15:10:22 2009
M calling db_connect ...
C Thread ID:3868
C Thank You for using the SLOLEDB-interface
C Using dynamic link library 'E:\usr\sap\PEC\SYS\exe\run\dbmssslib.dll'
C dbmssslib.dll patch info
C patchlevel 0
C patchno 195
C patchcomment DBCON: database names must not start with digits (1078650)
C np:(local) connection used on CAMBSVR15
C CopyLocalParameters: dbuser is 'pec'
C
C Sat Feb 14 15:10:23 2009
C Provider SQLNCLI could not be initialized. See note #734034 for more information.
C Using provider SQLOLEDB instead.
C OpenOledbConnection: MARS property was not set.
C
C Sat Feb 14 15:10:26 2009
C ExecuteAndFlush return code: 0x80040e14 Stmt: [if user_name() != 'pec' setuser 'pec']
C sloledb.cpp [ExecuteAndFlush,line 5989]: Error/Message: (err 4604, sev 0), There is no such user or group 'pec'.
C Procname: [ExecuteAndFlush - no proc]
C setuser 'pec' failed -- connect terminated
C Provider SQLNCLI could not be initialized. See note #734034 for more information.
C Using provider SQLOLEDB instead.
C ExecuteAndFlush return code: 0x80040e14 Stmt: [if user_name() != 'pec' setuser 'pec']
C sloledb.cpp [ExecuteAndFlush,line 5989]: Error/Message: (err 4604, sev 0), There is no such user or group 'pec'.
C Procname: [ExecuteAndFlush - no proc]
C setuser 'pec' failed -- connect terminated
C Provider SQLNCLI could not be initialized. See note #734034 for more information.
C Using provider SQLOLEDB instead.
C ExecuteAndFlush return code: 0x80040e14 Stmt: [if user_name() != 'pec' setuser 'pec']
C sloledb.cpp [ExecuteAndFlush,line 5989]: Error/Message: (err 4604, sev 0), There is no such user or group 'pec'.
C Procname: [ExecuteAndFlush - no proc]
C setuser 'pec' failed -- connect terminated
C failed to establish conn to np:(local).
C Retrying without protocol specifier: (local)
C Provider SQLNCLI could not be initialized. See note #734034 for more information.
C Using provider SQLOLEDB instead.
C ExecuteAndFlush return code: 0x80040e14 Stmt: [if user_name() != 'pec' setuser 'pec']
C sloledb.cpp [ExecuteAndFlush,line 5989]: Error/Message: (err 4604, sev 0), There is no such user or group 'pec'.
C Procname: [ExecuteAndFlush - no proc]
C setuser 'pec' failed -- connect terminated
C Provider SQLNCLI could not be initialized. See note #734034 for more information.
C Using provider SQLOLEDB instead.
C ExecuteAndFlush return code: 0x80040e14 Stmt: [if user_name() != 'pec' setuser 'pec']
C sloledb.cpp [ExecuteAndFlush,line 5989]: Error/Message: (err 4604, sev 0), There is no such user or group 'pec'.
C Procname: [ExecuteAndFlush - no proc]
C setuser 'pec' failed -- connect terminated
C Provider SQLNCLI could not be initialized. See note #734034 for more information.
C Using provider SQLOLEDB instead.
C ExecuteAndFlush return code: 0x80040e14 Stmt: [if user_name() != 'pec' setuser 'pec']
C sloledb.cpp [ExecuteAndFlush,line 5989]: Error/Message: (err 4604, sev 0), There is no such user or group 'pec'.
C Procname: [ExecuteAndFlush - no proc]
C setuser 'pec' failed -- connect terminated
C failed to establish conn. 0
B ***LOG BY2=> sql error 0 performing CON [dbsh#3 @ 1204] [dbsh 1204 ]
B ***LOG BY0=> <message text not available> [dbsh#3 @ 1204] [dbsh 1204 ]
B ***LOG BY2=> sql error 0 performing CON [dblink#3 @ 428] [dblink 0428 ]
B ***LOG BY0=> <message text not available> [dblink#3 @ 428] [dblink 0428 ]
M ***LOG R19=> tskh_init, db_connect ( DB-Connect 000256) [thxxhead.c 1280]
M in_ThErrHandle: 1
M *** ERROR => tskh_init: db_connect (step 1, th_errno 13, action 3, level 1) [thxxhead.c 9621]
M
M Info for wp 0
M
M stat = 4
M reqtype = 1
M act_reqtype = -1
M rq_info = 0
M tid = -1
M mode = 255
M len = -1
M rq_id = 65535
M rq_source = 255
M last_tid = 0
M last_mode = 0
M int_checked_resource(RFC) = 0
M ext_checked_resource(RFC) = 0
M int_checked_resource(HTTP) = 0
M ext_checked_resource(HTTP) = 0
M report = > <
M action = 0
M tab_name = > <
M
M *****************************************************************************
M *
M * LOCATION SAP-Server cambsvr15_PEC_00 on host cambsvr15 (wp 0)
M * ERROR tskh_init: db_connect
M *
M * TIME Sat Feb 14 15:10:26 2009
M * RELEASE 640
M * COMPONENT Taskhandler
M * VERSION 1
M * RC 13
M * MODULE thxxhead.c
M * LINE 9806
M * COUNTER 1
M *
M *****************************************************************************
M
M PfStatDisconnect: disconnect statistics
M Entering TH_CALLHOOKS
M ThCallHooks: call hook >ThrSaveSPAFields< for event BEFORE_DUMP
M *** ERROR => ThrSaveSPAFields: no valid thr_wpadm [thxxrun1.c 730]
M *** ERROR => ThCallHooks: event handler ThrSaveSPAFields for event BEFORE_DUMP failed [thxxtool3.c 254]
M Entering ThSetStatError
M Entering ThReadDetachMode
M call ThrShutDown (1)...
M ***LOG Q02=> wp_halt, WPStop (Workproc 0 3844) [dpnttool.c 357]
I would greatly appriciate your quick response, Since it is a production issue.
Many Thanks,
Vinod
If you have the CD,the it is gud otherwise install it from
Rohit
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
Hi Rohit and Subha,
Can you please expalain what the problem was? what i need to install ? what OLEDB does extactly ? and just to add , we are running on SQL 2000 server with SAP ECC 5.0.
As part of weekly maintainance, We have restarted the server and after that couldn't start the MMC and found that work process getting end when sap start and dispatcher dies after a while
I see that error in developer trace as mentioned in post. i have refered the note before i post this query but couldn't figured out wht to do on my issue.
I just found the inforamtion as below
For SQL 2000 users:
The new provider can be used as a client for SQL 2000 systems as long as the SQLNCLI version is SQL2005 SP1 or later. Do not use the RTM version because some errors were discovered which are fixed in SP1.
Please help me to fix this.
Many thanks,
Vinod
Hello Vinod,
You will need to install Microsoft SQL Server Native Client (sqlncli.msi) with the link that I have given to you above.This is what it means:
"Microsoft SQL Server Native Client (SQL Native Client) is a single dynamic-link library (DLL) containing both the SQL OLE DB provider and SQL ODBC driver. It contains run-time support for applications using native-code APIs (ODBC, OLE DB and ADO) to connect to Microsoft SQL Server 7.0, 2000 or 2005. SQL Native Client should be used to create new applications or enhance existing applications that need to take advantage of new SQL Server 2005 features. This redistributable installer for SQL Native Client installs the client components needed during run time to take advantage of new SQL Server 2005 features, and optionally installs the header files needed to develop an application that uses the SQL Native Client API.:
Tell Me one thing have u made any config.changes since this has happened just after reboot.
Rohit
OLE DB is a standard application programming interface (API) developed by Microsoft. It is a component of Microsoftu2019s Data Access Components software. OLE DB allows an application to access a variety of data for which OLE DB data providers exist like SQL Server.
It looks like your oledb.dll file has been corrupted or deleted. Check the dll file in
%windir%\ServicePackFiles\
%programfilescommon%\System\Ole DB
Rgds,
SK.
Hi Rohit,
Thanks for your quick response, We have not made any config changes on database this just happend after i rebooted the server.
one more thing i would like to point out, The error log says there is no user name or group 'pec' but i could see the user available with required permissions set(DB_owner , public )...any idea why this is saying that no such iser or group 'pec'.
ExecuteAndFlush return code: 0x80040e14 Stmt: [if user_name() != 'pec' setuser 'pec']
C sloledb.cpp [ExecuteAndFlush,line 5989]: Error/Message: (err 4604, sev 0), There is no such user or group 'pec'.
C Procname: [ExecuteAndFlush - no proc]
I wil check the link which you mentioned in your earliest post and let you know the result, Mean while please let me know if have any ideas regarding that " Error 4604, sev 0) there is no such user or group 'pec'
Many Thanks,
Vinod
This error is usually the result of the database user not being associated with the login user for the SQL server.
Resolving the problem
Run the following command to check if there are any users in the database that have not been associated :
sp_change_users_login 'Report'
Once you see the users listed, run the following command for each user to associate the database user with the SQL login user.
sp_change_users_login 'Update_One','<user>','<login>'
Yes Rohit,
We have a DR setup like failover instance which is configured with same <SID> Ex- pec, Diff hostname and log shipping has configured like from Primary instance to Failover instance @ frequency of 20 mins.
Since the primary instance was down we made the failover instance up and given to client to run on fialover instance temporarily till we fix the problem on primary instance.
Before this error arroused, We had some other problem with starting sap server , inorder to fix that we had performed a OS level restore and we did a full Db restore .
However we could managed to resolved that issue and to sync with failover instance we had performed a DB rstore of failover to primary ,unfortunately after that we have encountered with this new issue.
Sorry if i confuse you guys,
Thanks & Regards,
Vinod
Yes Rohit,
I have already gone thorugh that note # 734034 before i post this query. that note is talking about if the sourse system in non-Mcod and target is Mcod but our case, we are nunning both on NON-Mcod.
As suggested by some DBA, When i'm trying to delete database user 'pec' i'm getting the errors like "You cannot drop the selected login ID because that login ID owns objects in one or more databases." since we are getting error as no user or group by name of 'pec' in work process tarce we are thinking that which might have caused all this.
so we have created an another user like PEC1 and tried to assign all the object which has already been assigned to user PEC. my ques is do we have any kind of script which can automate this activity like we found some 1 lack more objects were assigned to user 'pec' i.e) we need to assign all of them to new user 'pec1'
Looking forward your feedback...
Thanks & Regards,
Vinod
U sounds confusing...I didn't understand what you are trying to do..Did u have any system called "PEC"? If not why did u create such userid and what schema objects are there inside it?
For Non-MCOD system all SAP schema objects should reside under "dbo" schema and in MCOD it is "<SID>" schema.
I don't know how come "PEC1" will help you as SID can't be 4 letter.
Rgds,
SK
Vinod why do u need to delete user PEC,PEC is ur SID and the user should not be deleted in any case
assigning PEC1 to all objects will not help as it is non-mcod system
on both databases check all the tables thro. SQL server agen,if their names start with PEC or dbo.this will tell us who is the owner of database but please dont delete the user PEC as it will not help
Situation does look very confusing
Rohit
Hello Vinod,
You have restored your system from failover system right?
first check who is the owner of failover system:sid or dbo?
Then in the primary instance, check who is the owner:dbo or sid
If there is difference you will need to change the owner of the database and might resolve your issue
Rohit
Hi Rohit,
My plan is to delete and recreate the user 'pec' for that i have created a user 'pec1' and i'm trying to change the owner of all objects which are already been owned by user 'pec' to 'pec1' (New user) before i proceed.
What do you say? if i delete and recreate the same user 'pec' ,would it helps? awaiting for your reply.
Many Thanks,
Vinod
Hi Rohit and Subhadip,
My problem was solved, thanks for your effort.
reason is that, user 'pec' not been associated with login user for the SQL server.
subha : when i execute the first command which you suggested, but couldn't find any user's list.
so i didn't tried with the second command. just to give a final try i have executed the script like below and its worked out.
USE PEC
GO
EXEC sp_change_users_login 'update_one','pec','pec'
GO
Now i see that all work process are starting,,,thank you so much rohit and subhadip
I could have try this first ,when you guys suggested since i couldn't find any output with the first command i didn't proceed with second one.
Since deleting and creating method doesn't seems to be a good, i have just to give a try executed the second command and its worked.
Thanks for your time and patience
Many Thanks,
Vinod
Hi Gurus
Even i faced same issue and it worked.
Now i am able to login to the system but i am receiving abap dumps and when i run sick t-code it is showing an error as "severe error" please fix this and proceed.
Can any suggest on this what could be the critical error.
Thanks in advance.
Mohammed
Please refer to note 551915.This tells when the error that you have spcified above comes but this is applicable only if you copied your database or something like that
Rohit
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
See notes 734034.
Two solution has been provided in the notes.
Install the sql native provider on the application server(s) where these messages appear.
Use either the SQL 2005 SP1 or later installation CD or the website:
http://www.microsoft.com/downloads/
To install the SQLNCLI provider software.
To install from the SNAC client only (without any other tools), you
can run <CD_DRIVE>:\Setup\sqlncli.msi
Rgds,
SK
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
Please refer to note 734034
Rohit Goyal
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
User | Count |
---|---|
84 | |
24 | |
11 | |
9 | |
7 | |
6 | |
5 | |
5 | |
5 | |
4 |
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.