			I N G R E S / 8

This version of INGRES runs on VAX hardware under VM/UNIX, fourth
release.  It has, at various times, also been running under VM/UNIX,
third release, and version six on a PDP-11/70.  Quite probably it
would adapt quite easily to a version seven system on a PDP-11 also.
The chance of ever getting it running on a non-I/D PDP-11 machine
is very small, although theoretically possible.

INSTALLATION

There exist binaries that are runnable, so no recompilation should
be necessary.  To prepare the system for running, perform the
following steps:

1.  Create a user ``ingres'' in /etc/passwd.  This user must have
    the root of the INGRES subtree as its home directory.

2.  Log in as ingres.

3.  Set up the list of valid INGRES users by typing:
	~ingres/bin/usersetup
    This sets up everyone on your system as an INGRES user.

For more details, read the ``setup instructions'':

	chdir ~ingres/doc/other
	nroff howto_setup.nr

CONSULTING & INFORMATION.

This software is unsupported, public domain software.  Although we
are interested in feedback, it is impossible for us to make any
commitment to support in a research environment.  However, several
companies have already expressed interest in selling and supporting
this code -- I'm sure one of them would be more than happy to help
you out.

If you do want to talk to us, electronic mail is strongly prefered.
We can be reached via Arpanet as "ingres@Berkeley" and via UUCP net as
"ucbvax!ingres".  Please DO NOT contact us for availability information,
as the INGRES distribution has been merged into the VM/UNIX distri-
bution; we will be able to do nothing except refer you to them.  The
contact for VM/UNIX is the CSRG office, (415) 642-7780.

THE SYSTEM ROAD MAP

Following is a brief description of the directory structure.  In
this description, and in all other READ_ME files, "..." represents
the root of the INGRES subtree.

bin
	Holds system binaries.  This is actually an internal
	directory (perhaps we should use lib?) (but lib is
	already used) and should in general not be included
	in search paths.  The only things that will live here
	that are intended to be executed directory are various
	system support routines, "for madmen only".
data
	This is the root of the database subtree.  It has a
	single entry, a directory called "base".  That directory
	in turn has a directory for each database.  The two
	layer scheme is required to insure protection -- data
	is mode 700 and base is mode 777.  Since the database
	directories themselves are mode 777, it is critical to
	have data unreadable by mortals, lest your sensitive
	data disappear in the night.
demo
	The source for the demo database exists in this directory.
	Basically, it is just a bunch of files that copy uses.
doc
	System documentation exists here.  See the READ_ME file
	in this directory for a more detailed road map.
files
	This is an approximate equivalent to /etc.  It includes
	a bunch of files that are CRITICAL for the system to run.
	See the READ_ME file in this directory for more info.
lib
	This contains libraries used for recompilation, and can
	be removed if you are not interested in recompiling the
	system.
source
	The source code of the system, of course.
version
	A version code.  Not critical, but you should probably
	leave it laying around on general principles.

bin7
	Copies of the version 7 binaries, they are there so
	the "ingconv" program can convert binaries. It should
	probably be removed once all the databases have been
	converted.

All of this can live anywhere in your filesystem, but there MUST
be a user called "ingres" whose home directory points to it.  All
of this code MUST be owned by ingres.

RECOMPILATION

Recompilation is described in source/READ_ME.

CONVERSION

If you have been running ingres version 7, and want to use your
databases under version 8, you will need to run the program
ingconv on each database that you want to convert. The useage
is just "ingconv database".

_________
Changes for version 8.9

This later version of version 8 ingres has many more portability fixs and
seems as solid on a Sun as when last compiled on a VAX.

Common problems/bugs:
header files missing - We do not believe any header files are missing.
There are, however, header files in the ctlmod directory which are
reached properly only when make properly calls cc with -I../ctlmod.
The Makefiles in this distribution are believed to work properly.

The version 7 to version 8 convert program may need the version 7
ksort7 binary in the version 8 bin directory.

The locking system has been slitely cleaned up.  Sysmod now works when
ingreslock is running.  However, no concurency checking is done on
ordered relations.  Access methods for ordered relations and the
locking system both need to be reworked.

ingconv doesn't work right unless run by the appropreate dba of each
database.

Rumor has it that some versions of Ultrix are not consistant with 4.2
BSD regarding fstat on a socket which will cause database corruption if
the lockdriver is run.  This is unconfirmed.

Ordered relations are SLOW and NOT locked.
