Eloquence B.08.00 ================= Revision: beta1, 2007-06-14 Thank you for your interest in the Eloquence B.08.00 beta1 release. This Eloquence beta release provides a development snapshot of the upcoming Eloquence B.08.00 version that has passed some limited QA process. By making the test versions available publicly we hope to encourage wider testing. Please contact support@marxmeier.com to share your feedback or report a problem. Please note: This release is available under the terms of the Eloquence Beta Test Agreement which is specified in the file AGREEMENT. http://www.marxmeier.com/eloquence/download/beta/B0800/AGREEMENT Downloading and installing the software indicates your agreement to the Beta Test terms and conditions. This beta release does not meet the release criteria for quality or performance and is only intended for test usage. If it breaks you get to keep the pieces. Introduction ------------ This beta version currently includes a preliminary version of the Eloquence B.08.00 database server. The major Eloquence B.08.00 database goals include: - scalability improvements - make use of available CPU resources (improved multi-threading) - improved scalability on large memory configurations - replication - release 64 bit version It is expected to be functionally complete and has no known critical defects. Subsequent releases will mostly focus on fixing problems and incorporate performance enhancements. Requirements ------------ To use the B.08.00 beta the following requirements must be met: - Eloquence B.07.10 must be installed - Installation of the most recent B.07.10 patches is required for full functionality. - Currently, only the HP-UX 11i operating system on PA-RISC 2.0 and IA64 based systems are supported. - To use replication, a separate replication license key is required. Please contact support@marxmeier.com Installation ------------ The Eloquence B.08.00 beta releases are available for download from the following location: HTTP protocol: http://www.marxmeier.com/download/beta/B0800/ FTP protocol: ftp://ftp.marxmeier.com/eloq/beta/B0800/ To install, please extract the compressed tar file in the directory /opt/eloquence6. gzcat /tmp/B0800-beta1-hpux-pa20.tar.gz | tar xvf - This will replace the following files in the B.07.10 installation: bin/eloqdb6 bin/dblogreset bin/dbrecover bin/fwaudit The following B.07.10 patches are suggeested to be installed: PE71-0704030 - image3k library PE71-0704100 - db client library PE71-0706041 - eloqcore Download location: http://www.hp-eloquence.com/download/B0710/patch/beta/ To use replication, the following B.07.10 patches MUST be installed in addition to the above: PE71-0705303 - dbrepl utility PE71-0705304 - chklic utility PE71-0705305 - dbvolextend utility PE71-0705306 - dbvolchange utility PE71-0705307 - dbfsck utility PE71-0705308 - dbcfix utility Download location: http://www.hp-eloquence.com/download/B0710/patch/beta/ B.01.10 compatibility --------------------- Eloquence B.08.00 is upwards compatible with previous eloquence versions and binary compatible with recent B.07.10 patch levels. However, a crashed eloqdb6 may not be recovered by B.07.10. To revert to B.07.10 the following procedure is required: 1. If the database server was not shutdown cleanly, please run dblogreset to re-apply (roll forward) any recently committed transactions. 2. Re-install the B.07.10 binaries that were replaced by the B.08.00 beta release (see above). To do yo, simply install the B.07.10 patches providing the latest version of that binary. HP-UX Kernel Parameters ----------------------- Eloquence B.08.00 may require the configuration of additional kernel parameters: max_thread_proc - defines the maximum number of concurrent threads allowed per process. max_thread_proc limits the maximum number of threads allowed per process on the system. max_thread_proc needs to be set to at least the largest number of configured database connections serviced by any B.08.00 database server (threads= config item) plus 10. nkthread - number of threads allowed to run simultaneously The nkthread tunable controls the absolute number of threads allowed on a system at any given time. Increasing it will allow more threads, and lowering it will restrict the number of threads. It can be determined that nkthread is too low when the kthread: table is full message is seen in the message buffer. The message can be read via dmesg or syslog. This message indicates that an application was unable to create a thread. nkthread needs to be set to at least the sum of all configured database connections serviced by an B.08.00 database server ((threads= config item, system wide) plus 10 per instance. nkthread must be greater than max_thread_proc. Documentation ------------- At this point no separate B.08.00 documentation is available. However, as this beta release is expected to be mostly functional equivalent to the most recent B.07.10 patches (PE71-0705300 and related) the corresponding B.07.10 documentation applies as well. Database replication This document describes the Eloquence replication functions. http://www.hp-eloquence.com/support/B0710/doc/repl/index.html Database Server statistics This document describes the Eloquence Database Server statistics. http://www.hp-eloquence.com/support/B0710/doc/stats/index.html Summary of enhancements (relative to the initial B.07.10 release) ----------------------------------------------------------------- * All B.07.10 patches (as applicable) are merged to B.08.00 * Add the option to replicate database transactions to other database environments. * The DBLOCK-COMPAT database property may be used to modify the locking policy for a database. This may be used to specify an IMAGE compatible lock behavior for a database. * A forward-log is now retained across a crash of the database server. * After a DBFIND on an index, a DBGET mode 4 could not be used to position the current record inside the result. * A DBFIND resets the current record number for a data set. * The server was enhanced to support additional options for logging server or individual session performance information. * The server was enhanced to support additional dbctl commands to allow dynamically changing the logging of performance information. * Fixed compatibility with the glibc2.4 (and newer) on Linux. * The lock scheduler was revised to enhance scalability and performance with a large number of competing locks. * Improve bimport performance on master sets. * The server process was enhanced to use a more efficient format to record index and meta data changes. * The "conntime" session item was added to allow fwaudit to filter by the session connection timestamp (#3343). * The dbrecover utility was enhanced to support incremental recovery. * The dbrecover utility was enhanced to support recovery up to a specified point in time without previously switching the forward- log file. * The dblogreset utility was enhanced to retain a forward-log in case of a recovery after an abnormal termination of the database server. Known issues ------------ The following issues are known in the current beta version: - Requires installed B.07.10 release (along with recent patches). - Currently, only HP-UX platform is available. - Performance may be bad for some uses. - Server may utilize excessive CPU resources with no corresponding throughput. - Server may output "excessive retries on transaction conflict" warning messages. Recent Changes -------------- beta1: - The order of actions in the forward-log file was not always consistent if entries were added by multiple sessions simultaneously. This could cause a crash during forward-recovery or replication. - The server could crash if concurrent sessions accessed the same btree page. - Added the DBLOCK-COMPAT database property. - Improved commit concurrency by removing an avoidable lock.