Problem:  When an ArcSDE service on Red Hat Linux runs for about 10 to 14 days, a few connections may start to fail with Network I/O and XDR request errors

相关信息
Article ID: 41289
Bug Id: N/A
Software:
ArcSDE 9.2, 9.3, 9.3.1, 10, 10.1
ArcGIS for Server 10.2
Platforms:
RHEL 4, 5, 6

问题描述
When an ArcSDE service on Red Hat Linux runs for about 10 to 14 days, a few connections may start to fail with Network I/O and XDR request errors. See the following errors below:

Standard output connection error:


Error: Network I/O error (-10).
Error: Could not create a connection on server linuxserver, for user mp.



The $SDEHOME/etc/giomgr_<sde_service>.log file:


Tue Jun 18 04:04:48 2013 - SDE Server Pid 27909 Registered, User: MP, Schema: mp, Machine: linuxserver.
Tue Jun 18 04:04:48 2013 - ERROR (-1): Could Not Send XDR Result.



原因
When an ArcSDE service starts, it creates several files in the /tmp directory. These files include <version>, the version of ArcSDE in use (ArcSDE 10.x, 9.x, etc.) and <instance>, the name of the ArcSDE service instance:


SDE_<version>_<instance>_iomgr_shared_semaphore
sde_client_to_server_FIFO_<instance>_0
sde_client_to_server_FIFO_<instance>_1
sde_server_to_client_FIFO_<instance>_0
sde_server_to_client_FIFO_<instance>_1
s.<instance>.iomgr

On the Red Hat Linux systems, there is a script called tmpwatch that deletes files in the /tmp directory if they are not accessed after a certain amount of time. The default amount of time is set to 240 hours or 10 days.:



cat /etc/cron.daily/tmpwatch

flags=-umc
/usr/sbin/tmpwatch "$flags" -x /tmp/.X11-unix -x /tmp/.XIM-unix
-x /tmp/.font-unix -x /tmp/.ICE-unix
-x /tmp/.Test-unix
-X '/tmp/hsperfdata_*' 240 /tmp
/usr/sbin/tmpwatch "$flags" 720 /var/tmp
for d in /var/{cache/man,catman}/{cat?,X11R6/cat?,local/cat?}; do
if [ -d "$d" ]; then
/usr/sbin/tmpwatch "$flags" -f 720 "$d"
fi
done

By default, this script is set to run daily in a cron job at 4:02 am:


cat /etc/crontab

SHELL=/bin/bash
PATH=/sbin:/bin:/usr/sbin:/usr/bin
MAILTO=root
HOME=/

# run-parts
01 * * * * root run-parts /etc/cron.hourly
02 4 * * * root run-parts /etc/cron.daily
22 4 * * 0 root run-parts /etc/cron.weekly
42 4 1 * * root runparts /etc/cron.monthly


The newly created files are out-of-sync, resulting in intermittent connection errors.
已邀请:

EsriSupport

赞同来自:

解决方案

tmpwatch has an exclude user option:


-U, --exclude-user=user
Don't remove files owned by user, which can be an user name or numeric user ID.


Using a visual editor or another editor, update the tmpwatch script to exclude any files owned by the ArcSDE user when cleaning up the /tmp directory. This is how the file looks like after adding the exclude user option:


cat /etc/cron.daily/tmpwatch

flags=-umc
/usr/sbin/tmpwatch "$flags" -x /tmp/.X11-unix -x /tmp/.XIM-unix
-x /tmp/.font-unix -x /tmp/.ICE-unix
-x /tmp/.Test-unix
-X '/tmp/hsperfdata_*' -U sde 240 /tmp
/usr/sbin/tmpwatch "$flags" 720 /var/tmp
for d in /var/{cache/man,catman}/{cat?,X11R6/cat?,local/cat?}; do
if [ -d "$d" ]; then
/usr/sbin/tmpwatch "$flags" -f 720 "$d"
fi
done


See the tmpwatch page for more information.




    其它相关参考
    1. Standard Output Definition


    创建及修改时间
    Created: 6/18/2013

    Last Modified: 8/5/2013
    原文链接
    http://support.esri.com/en/kno ... 41289

    要回复问题请先登录注册