RPC Error checks - Schneider Electric

advertisement
RPC error troubleshooting
RPC is an acronym for Remote Procedure Call, and typically is used to
allow a program running on one computer to access services on another
networked computer. Microsoft added some of it's own extensions to the
standard RPC protocol and deeply intertwined RPC into the inter-process
communication of Windows operating system components. So if RPC
stops working, lots of other Windows features will fail as well.
An RPC error on a Cyberstation means that it has lost connection to the
database for some reason and you will need to restart Cyberstation in
order to recover.
There are a lot of reasons that RPC errors can happen. Below is a list of things to check when
dealing with RPC errors on CyberStation.
1. Multiple Cybers
Does the issue occur on multiple Cyberstations?
2. Database
Does the issue follow the database? i.e. load the database onto a test server or try a test blank
database. Were some new objects recently added to the database when this started happening?
Does reverting to a backup stop the errors?
3. Increase Virtual Memory
Right Click on My Computer> Properties> Advanced System Settings> Under Performance select
the Settings button> Advanced tab> Under Virtual Memory click the Change button
Recommended is 4096
4. Network disruption or slowness
a. Networking - Verify all aspects of your networked environment. This includes, but not limited
to, slow networks, possible problems with your network interface card (NIC), cabling issues,
switch/router issues, busy networks. As you can see from the above definition of what RPC is it
can be heavily reliant on the stability of the network and all it’s interfaces.
Continuum does not support DHCP
b. Multiple NIC cards – ensure there is only 1 NIC card enabled.
No all NIC cards are created equal. Connections issue can be caused by an integrated NIC card
of low quality. There can be settings within the NIC card itself that could affect consistent
communication. Check the manufacturers website for details.
Verify that there is no duplication of IP addresses on the network. Pull a cable and ping the
address, if you still get a response there are 2 devices with the same IP address.
c. WINS - Verify your WINS settings and make sure there are no issues with the WINS Server.
This is known by Microsoft to cause RPC errors.
d. DNS - Verify your DNS settings and make surer there are no issues with the DNS server. This
also is known by Microsoft to cause RPC errors.
e. Verify that the "TCP/IP NetBIOS Helper" service is running.
f. Check and see if “File and Print Sharing” is enabled. There are references in a lot of online
articles, on RPC, problems that turning on “File and Print sharing” resolves RPC errors.
g. Ping and SQL
Is the SQL database still available to Cyberstation? From a DOS prompt>
Ping IP (SQL Server) –t (continuous)
Ex. c:\> ping 192.168.1.5 –t
Note the number of responses as well as the time in milliseconds to respond.
A local SQL server would usually be under 100ms.
Check resources on the SQL Server (CPU, I/O Read/Write, memory usage, etc.)
h. Windows Server 2003 Network card setting
(This setting isn’t available in Windows Server 2008)
Shut Continuum down on the machine having the problem.
Start>Settings>Network Connections>Local Area Connections>Right Click and select
Properties> Click on File and Printer Sharing for Microsoft Networks>Click Properties button>
Select 'Maximize data throughput for network applications'.
(Default is Maximize data throughput for File Sharing)
Ok through all the screens and start Continuum and see if this makes a difference.
XP/Vista/Windows 7
Start> Settings> Network Connections> Local Area Connection> Properties>
Advanced tab> Windows Firewall - Click the Setting button> Click the
exceptions tab
Verify that File and Print Sharing is selected.
File and printer sharing are disabled by default with XP SP2.
There is no network throughput option in XP, Vista or Windows 7 like there is on Windows Server
2003.
5. Windows Event Viewer
Take a look at the Windows Event Viewer Application Log (Start> Run type ‘eventvwr’ or Launch
Windows Control Panel> Administrative Tools> Event Viewer
Examine the events and look for RPC error indications in the details. There may be a pattern of
which executable is causing the errors.
You may also see informational events that indicated momentary disconnects. A large number of
these can indicate an issue with the Cyberstation being able to connect to the database
consistently in a timely manner.
6. Monitoring tools
Run an acctrace.exe (C:\Program Files\Continuum) and a wireshark capture at the time of the
RPC error to see the Continuum and network processing going on at the Cyberstation.
Windows Process Monitor may also be helpful in seeing which process is having trouble.
http://technet.microsoft.com/en-us/sysinternals/bb896645
7. Check the system for SpyWare and/or Viruses.
8. Workgroup versus Domain connection
An excerpt from the Continuum System Admin manual
In a LAN Configuration, the Continuum CyberStation must be in a “Microsoft Domain “
type installation. This is because the Continuum CyberStation will use Named Pipes
Interprocess Communication System (IPC). This is accomplished with Windows remote
procedure call (RPC). In a Microsoft Domain model installation, once the session is
established between the Continuum Cyberstations Client(s) and the SQL server it is a
persistent connection once authentication is established.
In a Workgroup installation, the database connectivity session is re-authenticated and reestablished for each database transaction. This results in much slower performance and an
inconsistent connection.
9. If you are running a LAN system using Windows 2003 server SP2/R2 and SQL 2005 try
disabling the TCP Chimney Offload feature by following the below.
Disable the TCPchimney setting on the SQL server and application server
Windows 2003 SP2 comes inbuilt with a new network scalability pack which is supposed to
accelerate the Windows networking stack. But this setting may not be compatible with all the
network cards and it could pose connectivity issues as well. For more information you can refer to
http://support.microsoft.com/kb/912222
http://support.microsoft.com/kb/942861
To disable this feature please take the following steps on both the SQL Server and application
server.
Open up a command prompt on the machine.
Run the following command: "Netsh int ip set chimney DISABLED"
Change the values of the following registry keys to 0 a.
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters\
EnableRSS
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters\
EnableTCPA
Reboot the machine after the above changes.
==========================================================
Disable SynAttackProtect on SQL server: Windows 2003 Sp1 and Sp2 introduces this new
feature which monitors processes getting high number of connections and if it detects that too
many connections are being made, the connections will be rejected.
a. Click Start, click Run, type regedit , and then click OK.
b. Locate and then click the following registry key:
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters
c. On the Edit menu, point to New, and then click DWORD Value.
d. Type SynAttackProtect , and then press ENTER.
e. On the Edit menu, click Modify.
f. In the Value data box, type 00000000 . Click OK.
g. Quit Registry Editor.
10. Sound Card
In some cases it was found that the built in sound card was causing the problem. If your not using
WAV files for alarms then try disabling the integrated sound card in the BIOS. If WAV files are
being played then try disabling the integrated sound card and put in a PCI sound card.
11. There have also been problems with OEM versions of the Operating system of the client
machines. A lot of vendors, like Dell, add additional applications to the systems they ship to
assist them if they need to remote into the computer for troubleshooting purposes. It is strongly
recommended that these OEM versions of the Operating System is removed and install the
system from a genuine Microsoft installation CD.
12.) Go to Control Panel-> Administrative Tools -> services, click with right mouse button
Remote Procedure Call -> click properties. remote procedure call properties window is now open,
go to recovery and you´ll see: First failure, second failure, subsequent failures -> choose : restart
the service. In this setup the system will automaticaly restart RPC when something shuts it down.
13.) Check all your Firewall settings. If possible turn off the firewall for testing and see if the
problem goes away.
14.) Check to make sure there are no ports being blocked that the RPC Server uses.
See KB 908472 (http://support.microsoft.com/kb/908472) details the steps for specifying the RPC
port range.
Also, be aware of the consequences of reserving the RPC ports. This has the potential to break
other applications that assign ports in this range. KB 812873 discusses this, too.
(http://support.microsoft.com/kb/812873
15.) Make sure all Peripheral devices like Network cards, Video cards, Sound Cards, etc. have
the latest drivers for them installed.
16. http://support.microsoft.com/kb/913384
Control Panel > AdminTools >Services and selected the Properties for Remote Procedure Call
(RPC) In the Log On tab, they changed the Log on as: to the Local System Account. It had been
"This Account" NT Authority\Network Service.
17. Is an EventNotification configured to send a page on alarm? If a PC running Continuum did
not have a modem but on startup Continuum was trying to send an alarm with a page then
accdataservice was crashing causing an RPC.
18. Microsoft KB177446 article that describes in depth RPC troubleshooting procedures
http://support.microsoft.com/kb/177446
Download