Troubleshooting
Problem
User launches Controller. User receives error message.
Symptom
An error occurred while trying to access the server
Details:
System.Web.Services.Protocols.SoapException: Server was unable to process request. ---> System.ArgumentException: Requested registry access is not allowed.
at Microsoft.VisualBasic.ErrObject.Raise(Int32 Number, Object Source, Object Description, Object HelpFile, Object HelpContext)
at ControllerServerCommon.RaiseErrSrv.RaiseError(String sUser, Int32 lErrNo, String sErrSource, String sErrDesc, String sErrHelpFile, Int32 lErrHelpContext)
at FrServerB.LocalConnectionBusiness.SetSelectDb(String sGuid, String sUser, Boolean bSelectDb)
at FrServerB.ConnectionBusiness.SetSelectDb(String sGuid, String sUser, Boolean bSelectDb)
at Cognos.Controller.Proxy.CCRWS.ConnectionBusiness_SetSelectDb(String sGuid, String sUser, Boolean bSelectDb)
--- End of inner exception stack trace ---
Cause
There are several possible causes:
- Scenario #1 - IIS (website) 'application pool' mistakenly configured to allow 32-bit applications.
- In other words, the setting "Enable 32-bit Applications" is set to "True" for the relevant application pool.
TIP: Older versions of Controller server were 32-bit. However (from Controller 10.2 onwards) the Controller server is almost entirely 64-bit. Therefore, using 'true' is incorrect from 10.2 onwards.
- Scenario #2 - IIS (website) 'application pool' mistakenly configured with an incorrect setting for “Identity”.
- For more details, see separate IBM Technote #1691747.
Environment
Controller 10.2 or later.
- For example, this has been seen when the system was upgraded from Controller 10.1.1 to 10.2.0.
Resolving The Problem
Scenario #1
Modify the relevant IIS application pool to use 64-bit only.
- TIP: This is the one that is running your ControllerServer virtual application
Steps:
1. Inside IIS Manager, open the section 'Application Pools'
2. Locate the relevant application pool
Controller 10.3 (or later):
By default, this is the one called ‘.NET v4.5’ (with a managed pipeline set to 'Integrated')
Controller 10.2.x:
By default, this is the one called ‘.NET v2.0’ (Integrated)'
3. Right-click on the relevant application pool (for example ‘.NET v2.0’ (Integrated)) and choose 'Advanced Settings'
3. Modify the setting “Enable 32-bit Applications” to be “False”:
Scenario #2
Modify the relevant IIS application pool so that the “Identity” is set to “LocalSystem”.
- For more details, see separate IBM Technote #1691747.
- TIP: This is the one that is running your ControllerServer virtual application
Steps:
1. Inside IIS Manager, open the section 'Application Pools'
2. Locate the relevant application pool
Controller 10.3 (or later):
By default, this is the one called ‘.NET v4.5’ (with a managed pipeline set to 'Integrated')
Controller 10.2.x:
By default, this is the one called ‘.NET v2.0’ (Integrated)'
3. Right-click on the relevant application pool (for example ‘.NET v4.5')) and choose 'Advanced Settings'
4. Modify the setting “Identity” to be “LocalSystem”:
Related Information
Was this topic helpful?
Document Information
Modified date:
15 June 2018
UID
swg21680674