I have just got wind of a current thread concerning the aceserver/client
setup that comes with ACEDB 4.1. Basically, people seem to be having the
same problems that I have experienced.
I am running the ACE stuff on a SPARCStation20 under Solaris 2.5. I have
compiled the full ace setup using gcc 2.7.2 without too much fuss (just
the usual three days of linker errors!) and re-compiled Perl5.002 with
the Aceclient extension statically linked. (This bit was - well -
typically UNIX - frustrating and time consuming).
So now I have a perl executable with the ace extension, an
aceserver/client compiled for this machine and the following entries in
the /etc files:
/etc/inetd.conf
> #
> # AceServer daemon for communicating AatDB over a WWW interface
> #
> #
> aatdb/1 stream tcp wait root /usr/local/bin/rpc.aatdb rpc.aatdb /catalogue2/aatdb/ace4.1/aatdb/ 4000001
/etc/services
> ##
> # Mike's addition for aatdb
> ##
> ###
> aatdb/1 4000001/tcp rpc.aatdb
>
(In here I HAVE to put aatdb/1 otherwise I get an error message saying
> aatdb/1/tcp : Unknown service )
/etc/rpc
> aatdb 4000001 rpc.aatdb
OK, so now we test the setup with the dbinfo.pl file looking like this
:-
> #!/usr/local/bin/perl
>> # everything you wanted to know about our acedb's
> # but were afraid to ask
>> %main::dbinfo = (
> 'aatdb' => {'title'=>"AatDB",
> 'sub'=>"<i>Arabidopsis thaliana</i>",
> 'group'=>'other',
> 'version'=>4.1,
> 'portmap'=>{'thale.nott.ac.uk'=>4000001}}
> );
I'm not sure where the version bit is used, but I have also tried
version 1 here as well!
The aceserver has been renamed to /usr/local/bin/rpc.aatdb and the
following command issued from the command line starts the server running
:
> /usr/local/bin/rpc.aatdb /catalogue2/aatdb/ace4.1/aatdb -port 4000001
with the usual splash screen stuff and the correct port settings, etc.
The URL: http://thale.nott.ac.uk/cgi-bin/aatdb?classes then generates
the classes output nicely wrapped in HTML etc., and you can browse the
classes nicely until you want to actually look at an object. The object
then just comes back
> "Object empty:"
even though this same object can be viewed properly from Ace4.1
But, that aside, the problem of not running under daemon experienced by
others stands for my configuration also, and no matter how I tweak the
entries in the /etc files I have not yet successfully managed to run
from under inetd.
Also, multiple client connections are forked from one session. For
example, if I query classes and then click a returned link, another
client connection is established - this eats into CPU and is probably
not what was intended! I have also noticed that the little blue bar at
the bottom of the screen on Netscape (3.0b3) remains at 100% for as long
as this screen is displayed, suggesting that the connection with the
server is being maintained even after information has stopped being
transmitted.
--
Mike Arnold
NASC
Dept. Life Science
University of Nottingham
Nottingham
e-mail : mike at thale.life.nottingham.ac.uk
URL: http://thale.nott.ac.uk/
Mike's URL (still under const.!) http://thale.nott.ac.uk/~mike