Next: Release Contents
Up: The Shore Beta Release
Previous: Contents
The Beta release of the Shore software is a release of
work-in-progress. We will only be supporting a small
number of beta-test sites. The release is targeted
for sites that will use Shore as a system for writing applications
using the Shore Data-definition Language and for those who
want to write their own servers using the Shore Storage Manager.
This document describes the release and provides pointers
to other documents explaining how to install and use the
software.
If you have questions, comments or bug reports, please mail
them to
shore_support@cs.wisc.edu
For information on other mailing lists, see the Shore WWW home
page:
http://www.cs.wisc.edu/shore/.
The Beta release of Shore is supported for
Sparcstations running SunOS and Solaris.
It has been ported to the following architectures:
-
Linux 1.2.1,
-
HP-UX,
-
The Storage Manager and lower layers have also been ported
to Irix.
You will also need the GNU C/C++ compiler, gcc, version 2.6.[23].
Complete details about required software and hardware are available in
the Requirements section of the
Installation manual.
The Shore software is distributed with the following copyright
notice and disclaimer, and is subject to its terms:
Copyright (c) 1994, 1995 Computer Sciences Department,
University of Wisconsin - Madison. All Rights Reserved.
Permission to use, copy, modify and distribute this software and its
documentation is hereby granted, provided that both the copyright
notice and this permission notice appear in all copies of the
software, derivative works or modified versions, and any portions
thereof, and that both notices appear in supporting documentation.
THE COMPUTER SCIENCES DEPARTMENT OF THE UNIVERSITY OF WISCONSIN --
MADISON ALLOWS FREE USE OF THIS SOFTWARE IN ITS "AS IS"
CONDITION. THE DEPARTMENT DISCLAIMS ANY LIABILITY OF ANY KIND FOR ANY
DAMAGES WHATSOEVER RESULTING FROM THE USE OF THIS SOFTWARE.
The Shore Project Group requests users of this software to return any
improvements or extensions that they make to the Shore Project Group,
Computer Sciences Department, University of Wisconsin, 1210 West Dayton
Street, Madison, WI 53706-1685.
In addition, the Shore Project Group requests that users grant the
Computer Sciences Department rights to redistribute these changes.
All reported bugs in Alpha have been fixed.
The bugs that were identified in the Alpha release documents
have been fixed.
-
Ported to Solaris, HP-UX, Linux.
-
Now compiles with gcc 2.7.0. However, due to bugs in the code generated
by gcc, the system will not run. Hopefully, it will work with gcc 2.7.1.
-
All layers use a common statistics mechanism so that
stats can be gathered and printed at any layer, for
all lower layers
(
statistics(FC),
statistics(OC),
statistics(SVAS),
statistics(SSM)
).
-
The documentation includes a list of all the manual
pages
(
contents,
).
-
We have made substantial improvements
in the C++ language binding generated by SDL, and we have
included manual pages for the C++ language bindings for
various SDL features.
-
The SDL compiler now writes and checks version numbers
in the metatypes database. If a new release of SDL
is incompatible with data created under an old release,
the compiler will now inform you of that fact.
-
Options-processing functions now read the command-line,
and treat -h, -v specially
(options(COMMON)).
-
Support in SDL for importing/exporting modules.
-
Unions are supported.
-
The index-attribute methods return "shrc" error
codes.
-
The SDL compiler and C++-language-binding generator
are bundled into one executable, which command-line
options
(sdl(SDL)).
-
The example program stree
uses indexes.
-
All the error codes that can be returned to an application
are documented
(errors(OC)).
-
Non-critical errors can occur without causing the
transaction to abort.
-
The class Shore
supports more Unix-like functions:
(
access(OC),
mkdir(OC),
chdir(OC),
chmod(OC),
chown(OC),
readlink(OC),
rename(OC),
rmdir(OC),
pool(OC),
stat(OC),
symlink(OC),
umask(OC),
unlink(OC),
utimes(OC)
).
-
The object cache now replaces objects.
Options control the size of the object cache
(options(OC)).
-
Anonymous objects can be created with uninitialized data
(the object cache does this).
-
The object cache and the server
cooperate to batch requests, but there is still no
parallelism in the protocol.
-
The object cache has partial support
for inter-transaction caching of objects:
a transaction is committed and a new transaction
is begun, and the new transaction inherits
the locks of the old transaction
(transaction(OC)).
-
The object cache and language binding
maintain reference counts in modules.
Instances of objects are counted, so that a module
cannot be deleted unless there are no instances
of objects of any of the types in the module.
This can be turned off with a run-time option.
(options(OC)).
-
Support for persistent links between volumes
(persistent mount) with the Shore server.
The original Beta distribution could not support
running a server in the background, without
a Tcl shell, with more than
one volume mounted. This distribution allows
such a configuration.
An option, svas_serve was added to allow
volumes other than the root volume to be
``served'' as soon as the server starts up.
This configuration option obviates the need for a Tcl
shell in order to so instruct the server.
-
New options control logging levels.
(options(SVAS)).
-
The default configuration files have changed
to reflect the changes in option names and
new options.
-
There are now commands to serve devices and to
list the served devices (use on-line help for this).
-
Suppression of error messages is changed (use on-line help).
-
The server rolls back to a savepoint rather than aborting
the transaction when an error occurs.
-
You can now shut the server down from inside the start-up
script.
-
Directories are now implemented as indexes.
(Performance of directory operations is no longer
linear in the size of the directory.)
Degree 2 transaction semantics is now the default for
directory operations.
-
The format of volumes has changed; data created
under the Alpha release cannot be read by a Beta server.
-
A pool can no longer be removed unless it is empty.
The server's Tcl shell allows you to scan a pool and
remove the objects in the pool with "scanpool <path> remove".
-
Ported to SGI Irix.
-
More complete manual pages.
-
Documentation for writing value-added servers.
-
The SM uses Unix fstat (instead of path names)
to identify volumes internally, so that you cannot
mistakenly use one volume with two paths.
Next: Release Contents
Up: The Shore Beta Release
Previous: Contents
Nancy Hall
Mon Sep 18 11:18:15 CDT 1995