README - OpenBase 6.0 for MACOS X Server
------------------------------------------------

Please report all bugs to support@openbase.com

INSTALLATION INSTRUCTIONS
-------------------------
1. Run the OpenBaseSetup.app program and install the OpenBase software.
2. If there are local OpenBase frameworks on client computers make sure you install the updated frameworks for those computers.
3. Reboot.
4. Run the OpenBaseManager.app as the root user.

WARNING: It is very important that you completely remove the OpenBase frameworks from earlier installations before installing the new frameworks.  Failing to install the new frameworks correctly could make your client-server communications malfunction.


UPDATING 5.2.1 DATABASES (VERY IMPORTANT)
-------------------------------------
To ensure that your 5.2.1 databases start up correctly, please read the following tips:

1.  Before installing the latest version of OpenBase, start and stop all your databases or issue the "cleanup" command from openisql for all your databases.  This will clean out the log file and get the data file ready for conversion.

2.  Install the latest version of OpenBase over your 5.2.1 databases and allow the database server to convert your data.  Backup files generated with 5.2.1 can not be loaded into the latest version.

3.  EOF Models created using 5.2.1 may need to be modified if you are using EOF3.0.  Specifically, all character fields should have a length of 1024 or less.  This is now required by the latest version of EOF.


Data Encoding Changes
---------------------
OpenBase now fully supports UNICODE/UTF-8, UNICODE NON-LOSSY ASCII, and NEXTSTEP string encoding standards (actually 29 different encodings are supported for both OpenBase clients and servers, but these are most relevant).  Database data is automatically converted to the to database client's representation when information is requested from the database.

NEXTSTEP string encoding: Provides a full range of international characters for use with single-byte character sets.  This encoding option is used by default because it provides 100% compatibility with NEXTSTEP and UNIX systems and uses space efficiently.  

UNICODE/UTF-8: Provides full UNICODE mapping and storage in a UTF-8 format.  UTF-8 has some of the properties of ASCII encoding except that character values above 127 are converted to multi-byte character format.  So UTF-8 makes good use of storage with characters 0-127, but also offers two-byte character encoding for two-byte character sets.  This encoding is recommended for all two-byte character sets.  Keep in mind that UTF-8 two-byte character data returned with openisql may not always appear correct (although it is correct).   

UNICODE EXTENDED/NON-LOSSY ASCII: Provides full UNICODE mapping and storage in an ASCII format.  This encoding is compatible with all data encoding formats but takes up more space than UTF-8.  

NOTE: All data dumps and backups are stored using the data encoding of the source database.   

Configuration Changes
---------------------
/usr/openbase/localhost file

This version of OpenBase has been extended to include an ip address over-ride.  If your computer has multiple ip addresses or if you are having problems with the nameserver, you can install a localhost file in /usr/openbase which identify the address and host you wish to use.

The file should include the hostname on the first line and the ip address on the second line.  Here is an example:
----------------
hostname
107.23.45.34
----------------

/usr/openbase/NameserverHosts or /LocalLibrary/OpenBase/NameserverHosts

The NameserverHosts file is now mandatory.  You should choose one or two computers that are normally left on (and also have OpenBase installed) and list their ip addresses in the NameserverHosts file.  You should put each address on its own line. Here is an example:
----------------
107.23.45.34
----------------

OpenBase 6.0 Changes
--------------------
- Full data replication now supported.
- Index performance improved 600%.  All operations performed on the database now make use of indexing for optimal performance.  
- Transaction Mechanism Improved.  All selects, inserts and updates remain consistent between the beginning of a transaction and the end.
- 100% Deadlock Avoidance.  OpenBase now has a deadlock avoidance mechanism that will alert clients (with an error) if a transaction deadlock occurs.
- Improved Query Optimization.  
- CTRL-C signals sent by client applications now terminate communications with OpenBase servers gracefully.  
- Outer-Join behavior changed to provide standard evaluation of outer join expressions.
- Better error handling and error output.  The error messages are now more descriptive.
- Configuration files added to override netinfo host configuration information (optional).  
- 29 character encodings supported, including UNICODE.  
- Openisql accepts command line arguments.
- Openisql prints query times and other performance figures.


