NAME
ddtsserver - The ClearDDTS SQL Database Server.
SYNOPSIS
ddtsserver [-f]
OPTIONS
-f do not fork, run in the foreground
DESCRIPTION
This is the SQL server for the internal ClearDDTS database.
Any program that runs queries or puts information in the
database does so through a connection to this server. This
server is not used if an external database like Oracle is
used.
This program is run by adminbug emnt. It should not be run
from the command line by itself.
This program should be executed on the machine that has all
of the files in $DDTSHOME/dbms mounted locally (not over
NFS). This will significantly increase database performance.
This machine should also have at least 32 megabytes of
physical memory, 50 megabytes of swap space, and the fastest
CPU and I/O available. All these factors will aid
significantly in database performance.
The SQL Server establishes a TCP/IP port on the host machine
and waits for client connections. When a client establishes
a connection, it sends its SQL command through the TCP/IP
socket and waits for a reply. The server then processes the
command and returns results through the same connection.
The SQL Server is lacking in many of the standard features
of SQL. Most of this is intentional, since Rational does
not intend to compete with major database vendors. Instead,
the ClearDDTS SQL server has just enough of the SQL standard
implemented to use as a baseline SQL89 entry-level compliant
server for QA applications. It has enough functionality to
run most of the queries required by most QA applications
under ClearDDTS.
Security of the data is maintained only by client-side UNIX
user IDs. Only the ClearDDTS system administrator
(currently the UNIX user 'ddts') has the ability to perform
database updates (INSERT, DELETE, or UPDATE). All users
have read access (SELECT, HELP).
DIAGNOSTICS
The SQL Server writes debugging information and any internal
errors it encounters to the file $DDTSHOME/spool/LOG. Errors
found while parsing SQL queries are returned through the
TCP/IP connection to the client.
FILES
$DDTSHOME/conf/hostname
This file contains the hostname where the SQL Server and
ClearDDTS daemon should run. The SQL Server and daemon
will not run on any other host than the one specified in
this file.
$DDTSHOME/spool/LOG
Any errors, plus some debugging information, are written
to this file. This should be the first place to look if
things don't seem to work right.
$DDTSHOME/spool/ddtsserver.pid
This file contains the latest PID of the ddtsserver
process.
$DDTSHOME/spool/qtserver.socket
This file contains the most recent host and port number
that the SQL Server is listening on. Client code looks
at this file to know where to connect to.
$DDTSHOME/dbms/ddts/
Directory where all data and index files for the SQL
Server are kept.
SEE ALSO
ddtssql(1), adminbug(1), ddtsd(1), ClearDDTS Administrator's Guide
BUGS
As stated above, many portions of the SQL standard are not
implemented. The ClearDDTS Administrator's Guide lists most
of the supported and unsupported features.
ddtsserver uses simple single-threaded updating to control
file access and modification. Thus, two simultaneous updates
from different clients will force one to wait until the
other is finished. This should probably be reworked to
improve update performance.