1.1 Problem Summary
KnowledgeBox failed to start after certain Equiinet upgrade.
1.2 Error Details
When checking the log file (/home/knowledgebox/KBApp/admin/logs/rc.knowledgebox.log) on the KB server, the following error message were found:
Starting SapDB remote SQL
SapDB remote SQL up
file size (blocks) unlimited
ulimit: bad non-numeric arg `file'
Using CATALINA_BASE: /home/knowledgebox/tomcat/current
Using CATALINA_HOME: /home/knowledgebox/tomcat/current
Using CATALINA_TMPDIR: /home/knowledgebox/tomcat/current/temp
Using JAVA_HOME: /home/knowledgebox/java
ERR 11376 CONNECT TCP/IP service 'sql6' not found
ERROR 10106: Unknown service 'sql6' (see /etc/services)
Starting SapDB Database KBUKEN: cold ... SapDB KBUKEN cold ...
Error! Connection failed to node (local) for database KBUKEN: unknown service 'sql6' (see /etc/service
Starting SapDB Database KBUKEN: warm ... SapDB KBUKEN: warm ...
Error! Connection failed to node (local) for database KBUKEN: unknown service 'sql6' (see /etc/service
This error is caused by the Equiinet upgrade overwriting the existing /etc/service file, which contained essential references for SapDB to start.
1.3 Workarounds
Add following three lines to /etc/services with VI editor:
sql30 7200/tcp
sql6 7210/tcp
kb-info 9001/tcp
Reboot, then everything should work again.
Alternatively, you can save this script and run it:
#!/bin/sh
#
# sapdb-fixservice.sh
# Verify various services entries in /etc/services
# which would be required for SapDB to run
#
# For error during database creation (at installation or re-installation), error message:
# initialize KBUKEN...
# load system tables...
# load system tables failed: ERR
# -24964,ERR_EXECUTE: error in program execution
# 256,/home/knowledgebox/sapdb/depend/bin/xload -S INTERNAL -n knowledgebox -d KBUKEN -u dba,* -b /home/knowledgebox/sapdb/depend/env/lsystab.ins en ENG domain
# Database KBUKEN not started : -32768 unknown host (see /etc/hosts)
#
# Note: Require root privilege to run
#
# v1.0 by Hui Li
# Last updated: 10/11/2004
echo Begin verifying entries in /etc/services ...
# Check the three required entries one by one, and ammend if missing
grep sql30 /etc/services 1>/dev/null 2>/dev/null
if [ $? -eq 1 ]; then
echo SapDB Service entry for "sql30" not found, fixing ...
echo 'sql30 7200/tcp #SapDB SQL' >> /etc/services
fi
grep sql6 /etc/services 1>/dev/null 2>/dev/null
if [ $? -eq 1 ]; then
echo SapDB Service entry for "sql6" not found, fixing ...
echo 'sql6 7210/tcp #SapDB SQL' >> /etc/services
fi
grep kb-info /etc/services 1>/dev/null 2>/dev/null
if [ $? -eq 1 ]; then
echo SapDB Service entry for "kb-info" not found, fixing ...
echo 'kb-info 9001/tcp # service running to give diagnostic info on KB' >> /etc/services
fi
echo Done. Please reboot after fixing.
1.4 Obtaining latest fix
You can download the latest fix script from the internal server at:
http://strapb03.pearsonbroadband.com:9090/horde/chora/co.php/KNOWLEDGEBOX/qube/config/home/knowledgebox/system/engineer/sapdb-fixservice
Additionally, this fix has been made as a nub upgrade (0000905.nub and 0000910.nub) from Equiinet.
(c)
Copyright Pearson Education Ltd. 2004