CORAL 1.7.0
-----------
+ General

  - Platforms:
     slc3_ia32_gcc323, slc3_ia32_gcc323_dbg,
     slc4_ia32_gcc34, slc4_ia32_gcc34_dbg,
     slc4_amd64_gcc34, slc4_amd64_gcc34_dbg
     win32_vc71_dbg

  - First release built with CMT

  - Change of library naming convention:
     - As for all other LCG projects the CORAL libraries are prefixed with "lcg_" instead of "lcg_coral_"

  - Configuration:
     - CMT : LCGCMT_50
     - SCRAM :
         - toolbox : LCG_50_1
         - CORAL config: CORAL-CONFIG_1_7_0
     - Dependency updates:
         - frontier client 2.7.0


+ Bug fixes and updates

     - RelationalAccess
        - First entry of the ConnectionService facade object.
          This is a proxy to IConnectionService hidding from the user
          all the details of the SEAL Component model.
        - Added a groupBy() method in the IQueryDefinition class
        - New IConnection interface split from ISession.
          This allows several sessions to share the same physical
          connection wherever the back-end supports it.
          Users based on the IConnectionService and ISessionProxy are
          only marginally affected by this change, in that they do no
          longer require to check whether a session is shared.

     - OracleAccess
        - Updated to comply to the interface changes in RelationalAccess
        - Fixed bug #22881

     - FrontierAccess
        - Updated to comply to the interface changes in RelationalAccess
        - Upgraded to the new frontier client.
        - Fixed bug #21302, setting connected status...
        - Fixing unisgned long conversion problem
        - Not yet implemented thread safety.
        - Implemented thread safety for the same use cases as OracleAccess

     - XMLLookupService
        - Implemented thread safety
        - Allows specifying connection parameters (such as retrial policies and timeouts) per replica.

     - ConnectionService
        - Updated to comply to the interface changes in RelationalAccess
        - Implemented thread safety
        - Takes into account the connection parameters per replica
          whenever the back-end for the ILookupService allows.

     - MySQLAccess
        - Updated to comply to the interface changes in RelationalAccess
        - Implemented thread safety for the same use cases as OracleAccess

     - SQLiteAccess
        - Updated to comply to the interface changes in RelationalAccess
        - Not yet implemented thread safety.

     - PyCoral
        - Updated to comply to the interface changes in RelationalAccess

     - Integration and System tests
        - Ugraded to the use of the split interfaces and the
          ConnectionService facade object.
        - New system test exercising CORAL in a multithreaded
          environment corresponding to the use cases of ATLAS online.


##########################################################################################

CORAL 1.6.3a
-----------
+ General

  - Platforms:
     slc3_ia32_gcc323, slc3_ia32_gcc323_dbg,
     slc4_ia32_gcc34, slc4_ia32_gcc34_dbg,
     slc4_amd64_gcc34, slc4_amd64_gcc34_dbg
     win32_vc71_dbg

  - Configuration:
     - SCRAM toolbox : LCG_49_1
     - CORAL scram config: CORAL-CONFIG_1_6_3a
     - Dependency updates:
         - SEAL_1_9_1


##########################################################################################

CORAL 1.6.3
-----------
+ General

  - Platforms:
     slc3_ia32_gcc323, slc3_ia32_gcc323_dbg,
     slc4_ia32_gcc34, slc4_ia32_gcc34_dbg,
     slc4_amd64_gcc34, slc4_amd64_gcc34_dbg
     win32_vc71_dbg

  - Configuration:
     - SCRAM toolbox : LCG_48_1
     - CORAL scram config: CORAL-CONFIG_1_6_3

+ Bug fixes and updates

     - LFCReplicaService
       - First release of an LFC-based implementation of the IAuthenticationService and ILookupService implementations.
       - Refer to the component documentation for details.

     - PyCoral
       - First release of the Python API of CORAL.
       - Refer to the component documentation for details.

     - MySQLAccess, FrontierAccess, SQLiteAccess, OracleAccess
       - Fixed behaviour of IQueryDefinition::setDistinct()
       - Thanks to Jim Cook for pointing it out.

     - OracleAccess
       - 64-bit integer is now represented as NUMBER(20)


##########################################################################################

CORAL 1.6.2
-----------
+ General

  - Platforms:
     slc3_ia32_gcc323, slc3_ia32_gcc323_dbg,
     slc4_ia32_gcc34, slc4_ia32_gcc34_dbg,
     slc4_amd64_gcc34, slc4_amd64_gcc34_dbg
     win32_vc71_dbg

  - Configuration:
     - SCRAM toolbox : LCG_48_1
     - CORAL scram config: CORAL-CONFIG_1_6_2

+ Bug fixes and updates

     - CoralBase
       - Added check on the size of the attribute lists in AttributeList::copyData()

     - RelationalService
       - Added thread safety for the loading and the retrieving of the relational plugins
         (the IRelationalService::domain() method is thread-safe). 

     - FrontierAccess
       - Replaced strlen with std::string::size() to make sure the
         real number of bytes gets reported from inside the std::string content
       - Fixed bug #21302, setting connected status.

     - MySQLAccess
       - Fixed bug #21210(thanks to Andrea) causing stale schema metadata for re-used MySQL connection

     - OracleAccess
       - Implemented thread safety measures for the ISchema and ITableDescription classes.
       - New unit test exercising parallel threads creating, filling and querying tables in the same schema.
       - Sessions are started with the OCI_THREADED mode to allow the unit test succeed.

##########################################################################################

CORAL 1.6.1
-----------
+ General

  - Platforms:
     slc3_ia32_gcc323, slc3_ia32_gcc323_dbg,
     slc4_ia32_gcc34, slc4_ia32_gcc34_dbg,
     slc4_amd64_gcc34, slc4_amd64_gcc34_dbg
     win32_vc71_dbg

  - Configuration:
     - SCRAM toolbox : LCG_48_1
     - CORAL scram config: CORAL-CONFIG_1_6_1
     - Dependency updates:
       - SEAL_1_9_0

+ Bug fixes and updates

     - ConnectionService
       - Improved handling of ISession::connect failures
       - Changed activation of pool cleaning thread. It starts only when it becomes necessary.
       - Fixed session memory clean up in cas of exceptions
       - Restricted exclusion list to the re-try allowed connections
       - Fixed use of seal::Context class using seal::Handle

     - XMLAuthenticationService
       - Fixed handling of default values for AccessMode and Authentication

     - LFCLookupService
       - Added user control of LFC base dir (env. variable CORAL_LFC_BASEDIR)

     - MonitoringService
       - Allows to install user defined reporting facility

     - OracleAccess
       - Implemented support for table synonyms
       - Fixed segmentation fault caused when retrieving a table or
         view handle after a call to listTables or listViews has been issued
         Thanks to Stefano Veneziano for reporting the bug.
       - Fixed bug with retrieving view handles.

     - SQLiteAccess
       - Put back file existence check for readonly connection
       - Added file readable check for readonly user session 
       - Modified connect exception message

     - FrontierAccess
       - Re-enabled cache refresh for queries
       - Disabled seal::MessageStream in coral::FrontierAccess::Statement
         causing occasional seg. faults (temporary fix till new SEAL comes)
       - Fixed dirty (std::terminate -> ABORT ) caused by an exception being
         raised while coral::SessionProxy destruction was in progress.

     - MySQLAccess
       - Relaxed constraint on initialization of MySQLAccess domain
       - Updated to comply to the new SEAL version.

     - Integration and System tests
       - Proper use of the seal::Context class.


##########################################################################################

CORAL 1.6.0
-----------
+ General

  - Platforms:
     slc3_ia32_gcc323, slc3_ia32_gcc323_dbg,
     slc4_ia32_gcc34, slc4_ia32_gcc34_dbg,
     slc4_amd64_gcc34, slc4_amd64_gcc34_dbg
     win32_vc71_dbg

  - Configuration:
     - SCRAM toolbox : LCG_47_1
     - CORAL scram config: CORAL-CONFIG_1_6_0
     - Dependency updates:
       - lfc 1.5.8 
       - frontier_client 2.6.0_cms


+ Bug fixes and updates

     - RelationalAccess (backwards compatible API changes)
       - Introduced and implemented roles in the authentication services 
       - Added support for "service parameters" in the Lookup Services
       - Extended the exception hierarchy

     - CoralCommon
       - Coplies to the inteface changes in RelationalAccess

     - ConnectionService
       - Uses the extended exception hierarchy to for deciding what to do with failing connections
       - Improved messages of Session handling in Connection Pool

     - EnvironmentAuthenticationService
       - Adapted to the interface updates of RelationalAccess

     - XMLAuthenticationService
       - Adapted to the interface updates of RelationalAccess
       - All files located in CORAL_AUTH_PATH are processed. For multiple entries, the first found is kept.

     - FrontierAccess
       - Fixed bug #19777 caused by wrong table aliases handling
       - Fixed bug #19758 caused by incomplete view meta-data handling code
       - Complies to the semantics of the extended exception hierarchy

     - OracleAccess
       - Complies to the semantics of the extended exception hierarchy

     - MySQLAccess
       - Fixed bug #19623 caused by Oracle-ish SQL to limit the number of rows in a result set.
       - Complies to the semantics of the extended exception hierarchy

     - SQLiteAccess
       - Complies to the semantics of the extended exception hierarchy
       - Revoked file existance checking for read-only connection



##########################################################################################

CORAL 1.5.4
-----------
+ General

  - Platforms:
     slc3_ia32_gcc323, slc3_ia32_gcc323_dbg,
     slc3_ia32_gcc344, slc3_ia32_gcc344_dbg,
     slc4_ia32_gcc345, slc4_ia32_gcc345_dbg,
     slc3_amd64_gcc344, slc3_amd64_gcc344_dbg,
     slc4_amd64_gcc345, slc4_amd64_gcc345_dbg
     win32_vc71_dbg

  - The win32 binaries are from now onwards being built using wine (like COOL).

  - Configuration:
     - SCRAM toolbox : LCG_46e_1
     - CORAL scram config: CORAL-CONFIG_1_5_4

+ Bug fixes and updates

     - LFCLookupService
       - First release of this package.
       - The LFCLookupService is responsible for logical-physical mapping and providing the list
         of possible replicas based on logical database/ service name, authentication method and
         access mode in which the database service will be accessed. The lookup is done from LFC server
         set through the environment variable LFC_HOST.
         It returns a list of possible replica as object of class IDatabaseServiceSet defined in
         RelationalAccess package.  Through IDatabaseServiceSet information can be accessed about number
         of available replicas, replica connection string, allowed access mode and authentication procedure.
       - A set of administrating tools CLI has been provided for the management of the mapping information
         stored in the LFC database in LFC Server. These command line tools are implemented using LFC API for
         adding, removing, listing the replica entries for a logical file name and to export the replica
         entries of a logical file name into XML file.

     - FrontierAccess
       - Fixed bug #19664

     - MySQLAccess
       - Fixed compilation and linking errors under windows. In order to achieve that the dosmap
         internal function had to be copied from the MS VC71 sources.



##########################################################################################

CORAL 1.5.3
-----------
+ General

  - Platforms:
     slc3_ia32_gcc323, slc3_ia32_gcc323_dbg,
     slc3_ia32_gcc344, slc3_ia32_gcc344_dbg,
     slc4_ia32_gcc345, slc4_ia32_gcc345_dbg,
     slc3_amd64_gcc344, slc3_amd64_gcc344_dbg,
     slc4_amd64_gcc345, slc4_amd64_gcc345_dbg
     win32_vc71_dbg

  - Configuration:
     - SCRAM toolbox : LCG_46_1
     - CORAL scram config: CORAL-CONFIG_1_5_3

+ Bug fixes and updates

     - OracleAccess
       - Inserting missing space character when selecting from DUAL (fixed #19003)
       - Disabled (again) the OCI thread handling (fixed #19000)

     - MySQLAccess
       - Implemented support request #101074 enabling compatible
         behavior with Oracle and SQLite back-ends for UPDATE operations
       - Fixed bug #19092 ensuring INT/INTEGER SQL types in MySQL get 
         mapped into C++ int type



##########################################################################################

CORAL 1.5.2
-----------
+ General

  - Platforms:
     slc3_ia32_gcc323, slc3_ia32_gcc323_dbg,
     slc3_ia32_gcc344, slc3_ia32_gcc344_dbg,
     slc4_ia32_gcc345, slc4_ia32_gcc345_dbg,
     slc3_amd64_gcc344, slc3_amd64_gcc344_dbg,
     slc4_amd64_gcc345, slc4_amd64_gcc345_dbg
     win32_vc71_dbg

  - Configuration:
     - SCRAM toolbox : LCG_46_1
     - CORAL scram config: CORAL-CONFIG_1_5_2

+ Bug fixes and updates

     - ConnectionService
       - Added property base access to pool clean up period.
       - Reacts with exceptions to missing plugins

     - OracleAccess
       - Using LobLocators for writing LOBs into the database (fixes bug #18148).
       - Fixed bug on unique index creation (#18316).
       - Fixed dead locks in multi-threading.

     - SQLiteAccess
       - Rewrote Session::startUserSession.  
         If file doesnot exists, throws coral::Session exception for coral::ReadOnly type connection;
         creates the file for coral::update type connection
       - Uses seal::Filename for file status checking and creation before sqlite3_open
       - Fixed connection to file in relative path
       - Modified start user session policy for update connection:
         throws SessionException if a directory is not found; creates a new one if
         a file is not found in the current directory.
       - Removed #ifdef _DEBUG for SQLiteStatement::prepare and bind methods bug#18316
       - Prints bind variable values in SQLiteStatement::bind method sr#100958
       - Added double quotes on table, column, index, alias names for all operations. bug#18316
       - Updated the unit test SQLiteAccess/tests/DomainAndSession

     - FrontierAccess
       - Fixed bug #18275 causing problem with output data buffer.



##########################################################################################

CORAL 1.5.1
-----------
+ General

  - Platforms:
     slc3_ia32_gcc323, slc3_ia32_gcc323_dbg,
     slc3_ia32_gcc344, slc3_ia32_gcc344_dbg,
     slc4_ia32_gcc345, slc4_ia32_gcc345_dbg,
     slc3_amd64_gcc344, slc3_amd64_gcc344_dbg,
     slc4_amd64_gcc345, slc4_amd64_gcc345_dbg
     win32_vc71_dbg

  - Configuration:
     - SCRAM toolbox : LCG_46_1
     - CORAL scram config: CORAL-CONFIG_1_5_1

+ Bug fixes and updates

     - ConnectionService
       - Added parallel thread for the cleaning up of the pool of idle connections.

     - SQLiteAccess
       - Adapted to new configuration removing cppunit depenency in unittest, #17762
       - Uses sqlite named binding instead of unamed binding, fix bug #15933
       - Applied patch from Marco Clemencic(COOL) to fix the handling of 64-bit integers in 64-bit platforms.


     - OracleAccess
       - Fixed bug #17757 (bulk operations with more than 64k rows)
       - Added support (and unit test) for involving DUAL in the queries
       - Environmnent initialized in threaded and no-mutex mode

     - MySQLAccess
       - Applied patch from Marco Clemencic(COOL) to resolve bug #17651


     - Tests
       - Introduced more integration tests exercising the ConnectionService functionality



##########################################################################################

CORAL 1.5.0
-----------
+ General

  - Platforms:
     slc3_ia32_gcc323, slc3_ia32_gcc323_dbg,
     slc3_ia32_gcc344, slc3_ia32_gcc344_dbg,
     slc4_ia32_gcc345, slc4_ia32_gcc345_dbg,
     slc3_amd64_gcc344, slc3_amd64_gcc344_dbg,
     slc4_amd64_gcc345, slc4_amd64_gcc345_dbg
     win32_vc71_dbg

  - Configuration:
     - SCRAM toolbox : LCG_45_1
     - CORAL scram config: CORAL-CONFIG_1_5_0
     - Dependency updates:
       - oracle 10.2.0.2
       - sqlite 3.3.5
       - frontier_client 2.4.5_cms

+ Bug fixes and updates

     - RelationalAccess
       - the IWebCacheControl interfaces has been extended to support compression and proxy servers list

     - ConnectionService
       - fixed handling of authentication failure
       - fixed user switching for idle sessions
       - improved fixes for connection retrial
       - modified connection retrial configuration
       - updates needed to follow changes in the coral::IWebCacheControl interface

     - SQLiteAccess
       - rearrange connection and  user session methods in ISession implementation

     - FrontierAccess
       - fixed type converter initialization to consider 4 or 5 numbers Oracle version
       - the C++ type deduction made more robust to cover plain "NUMBER" SQL type
       - integration of frontier_client exceptions
       - added env. variable CORAL_WEBCACHE_ZIP_LEVEL to allow customization of the compression level
       - added API used to set compression level in the updated coral::IWebCacheControl interface

     - XMLLookupService
       - added possibility to download the lookup .xml file from the Web via HTTP protocol.
         NOTE: One has to set the file name in the form of a valid URL.
               Only the HTTP protocol is supported, e.g. no secure HTTPS
               channel will work for that.

     - Tests
       - introduced a test suite for exercising the re-trial and fail-over mechanisms in CORAL.



##########################################################################################

CORAL 1.4.3
----------
+ General

  - Platforms:
     - Standard: slc3_ia32_gcc323, slc3_ia32_gcc323_dbg,
                 slc3_ia32_gcc344, slc3_ia32_gcc344_dbg,
                 slc4_ia32_gcc345, slc4_ia32_gcc345_dbg,
                 win32_vc71_dbg
     - Test builds: slc3_amd64_gcc344, slc3_amd64_gcc344_dbg,
                    slc4_amd64_gcc345, slc4_amd64_gcc345_dbg

  - Configuration:
     - SCRAM toolbox : LCG_43_1
     - CORAL scram config: CORAL-CONFIG_1_4_3

+ Bug fixes and updates

   - RelationalAccess
       - Improved info in ConnectionService Exception message.

   - ConnectionService
       - Improved selection of replica according to the user accessmode.
   
   - SQLiteAccess
       - Added SQLITE_FILE_PATH search support (sr #101004)
       - Updated documentation on sqlite contact string
       - Completed the following sqlite contact string semantics:
           In the case the contact string has the format: sqlite_file:my.db
           -if SQLITE_FILE_PATH variable is set, SQLiteAccess read/write my.db in 
            this dir, throw exception if the dir does not exist;
           -if SQLITE_FILE_PATH variable is not set, SQLiteAccess read/write my.db in 
            the currentdir
           In the case the contact string has the absolute path format:
            sqlite_file:///tmp/my.db
           SQLITE_FILE_PATH variable is not taken into consideration

   
   - FrontierAccess
       - fixed bug #16617 ( https://savannah.cern.ch/bugs/?func=detailitem&item_id=16617 )

   - Integration tests
       - added user level monitoring integration test

##########################################################################################

CORAL 1.4.2
----------
+ General

  - Platforms:
     - Standard: slc3_ia32_gcc323, slc3_ia32_gcc323_dbg,
                 slc3_ia32_gcc344, slc3_ia32_gcc344_dbg,
                 slc4_ia32_gcc345, slc4_ia32_gcc345_dbg,
                 win32_vc71_dbg
     - Test builds: slc3_amd64_gcc344, slc3_amd64_gcc344_dbg,
                    slc4_amd64_gcc345, slc4_amd64_gcc345_dbg

  - Configuration:
     - SCRAM toolbox : LCG_43_1
     - CORAL scram config: CORAL-CONFIG_1_4_2

+ Bug fixes and updates

   - RelationalAccess
       - Fixed typo in the ConnectionNotAvailableException message
   
   - SQLiteAccess
       - put quotes around table and column names in ALTER TABLE...ADD column statement. fix bug #16189

   - Integration tests
       - added user level monitoring integration test

##########################################################################################

CORAL 1.4.1
----------
+ General

  - Platforms:
     - Standard: slc3_ia32_gcc323, slc3_ia32_gcc323_dbg,
                 slc3_ia32_gcc344, slc3_ia32_gcc344_dbg,
                 slc4_ia32_gcc345, slc4_ia32_gcc345_dbg,
                 win32_vc71_dbg
     - Test builds: slc3_amd64_gcc344, slc3_amd64_gcc344_dbg,
                    slc4_amd64_gcc345, slc4_amd64_gcc345_dbg

  - Configuration:
     - SCRAM toolbox : LCG_43_1
     - CORAL scram config: CORAL-CONFIG_1_4_1

+ Bug fixes and updates

   - ConnectionService
       - connections are created with the required capability
       
   - FrontierAccess
       - bug fix for missing schema name caching
       - integrated web cache control




##########################################################################################

CORAL 1.4.0
----------
+ General

  - Platforms:
     - Standard: slc3_ia32_gcc323, slc3_ia32_gcc323_dbg, slc3_ia32_gcc344, slc3_ia32_gcc344_dbg, win32_vc71_dbg
     - Test builds: slc3_amd64_gcc344, slc3_amd64_gcc344_dbg

  - Configuration:
     - SCRAM toolbox : LCG_43_1
     - CORAL scram config: CORAL-CONFIG_1_4_0

+ Bug fixes and updates

   - RelationalAccess
       - extended ISessionProxy interface to provide access to session properties
       - updated monitoring levels, including Off ( no minitoring level )
       - IMonitoringService no more provides the reporting facility
       - IMonitoringReporter is the new interface prvoding reporting facilities
       - extended Connection service interface with the new Monitoring service features

   - ConnectionService
       - implemented extension to ISessionProxy and IConnectionService
       - relaxed policy for sharing in ReadOnly mode sessions with update capability
       
   - MonitoringService
       - updated to comply to the changes in monitoring interfaces

   - MySQLAccess
       - imported dosmap.c from VC++ sources to enable /MD based builds of LCG sw
       - complies to the changes in the IMonitoringService interface

   - OracleAccess, SQLiteAccess
       - complies to the changes in the IMonitoringService interface

   - FrontierAccess
       - complies to the changes in the IMonitoringService interface




##########################################################################################

CORAL 1.3.1
----------
+ General

  - Platforms:
     - Standard: slc3_ia32_gcc323, slc3_ia32_gcc323_dbg, slc3_ia32_gcc344, slc3_ia32_gcc344_dbg, win32_vc71_dbg
     - Test builds: slc3_amd64_gcc344, slc3_amd64_gcc344_dbg

  - Configuration:
     - SCRAM toolbox : LCG_42_1
     - CORAL scram config: CORAL-CONFIG_1_3_1

+ Bug fixes and updates

   - CoralCommon, MonitoringService
       - Fixed memory allocation problems

   - ConnectionService
       - Relaxed exclusion policy for active connection
       - Added treatment of startSession failures
       - Fixed sessionProxy/ConnectionService life cycle
       - By default the Monitoring service is not loaded

   - MySQLAccess
       - Fixed memory allocation problems
       - Fixed bug #15483 Too long exception message could be
         generated due to BLOB being included in it.
       - Changes in MYSQL handle memory handling in order to get rid
         of valgrind error reports

   - SQLiteAccess
       - Stores unsigned int as 64bits int in the database, fix bug #15128

   - OracleAccess
       - Calling EndSession in the correct method (thanks to Marco for spotting this)



##########################################################################################

CORAL 1.3.0
----------
+ General

  - Platforms:
     - Standard: slc3_ia32_gcc323, slc3_ia32_gcc323_dbg, slc3_ia32_gcc344, slc3_ia32_gcc344_dbg, win32_vc71_dbg
     - Test builds: slc3_amd64_gcc344, slc3_amd64_gcc344_dbg

  - Configuration:
     - SCRAM toolbox : LCG_42_1
     - CORAL scram config: CORAL-CONFIG_1_3_0
     - Dependency updates:
       - seal 1.8.1
       - oracle 10.2.0.1
       - mysql 5.0.18
       - boost 1.33.1
       - frontier_client 2.4.1_cms_p1

+ Bug fixes and updates

   - CoralBase
       - The base coral::Exception class inherits from std::exception
         instead of seal::Exception.
       - Bug fix #14903: output to the actual ostream instead of cout.

   - All packages:
       - Completed the migration to std::exception from the seal::Exception.
       - Unit tests do no longer handle seal::Exception.

   - RelationalAccess
       - Introduced new interfaces for the controlling of web cache policies.
       - Extended the ISession interface so that the connection mode is
         specified, and introduced two more methods required for the efficient
         implementation of the Connection Service.
       - Introduced an InvalidOperationInReadOnlyModeException which should be
         thrown by the RDBMS plugins when an update operation is attempted
         during a read-only session.
       - Extended the ConnectionService related interfaces for improved
         configuration control.
       - Added protected empty destructors in the interfaces, where
         they were missing.

   - ConnectionService
       - New, extended, production-quality implementation of the
         package with improved configuration control.

   - OracleAccess
     - Changes required to comply to the updates of the interfaces and semantics
       of the RelationalAccess interfaces.
     - Uses int by default instead of long in the SQL->C++ type
       conversions.
     - Fixed the sources of the segmentation faults occuring with
       the 10gR2 Oracle client.

   - SQLiteAccess
     - Adds double quote around table, column and alias names. fix bug #14518.
     - Checks session readonly flag for update operations; throws
       InvalidOperationInReadOnlyModeException when update operations attempted 
       on readonly sessions.
     - Complies to the new ISession interface

   - MySQLAccess
     - Upgraded to the use of MySQL 5.0.x client API:
        - error handler adapted to include prepared statement diagnostics.
        - added server version detection.
        - updated bind variables parser for supporting prepared statements.
        - fixed parser for FK constraints in MySQL version 4.1.x and later.
     - Fixed use of implementation classes due to introduction of protected
       virtual destructors in the RelationalAccess package interfaces.
     - Fixed reading of TIMESTAMP columns from MySQL servers of version 4.1.x
       and later. CORAL integration test has passed against both
       server versions, i.e. 4.0.26 and 4.1.16.
     - Adopted the new coral::ISession interface

   - FrontierAccess
     - Adopted changes in the coral::RelationalAccess interfaces

   - Integration tests
     - Removed the dependency on seal::Exception
     - New test: Integration_ConnectionService_ConnectionPool



##########################################################################################

CORAL 1.2.2
----------
+ General

  - Platforms:
     - Standard: slc3_ia32_gcc323, slc3_ia32_gcc323_dbg, win32_vc71_dbg
     - New: slc3_ia32_gcc344, slc3_ia32_gcc344_dbg, slc3_amd64_gcc344, slc3_amd64_gcc344_dbg

  - Configuration:
     - SCRAM toolbox : LCG_41_1
     - CORAL scram config: CORAL-CONFIG_1_2_2
     - Dependency updates:
       - SEAL 1.8.0
       - XercesC 2.7.0

+ Bug fixes and updates

   - CoralBase
     - A 64-bit integer is labeled always as "long long"

   - MySQLAccess
     - fixed bug #14569 concerning strings with quotes inside
     - fixed connection leaking with MySQL 5.0 server
     - fixed compilation problems against MySQL 5.0 client

   - OracleAccess
     - fixed compilation errors on amd64


   - FrontierAccess
     - fixed compilation errors with gcc344

   - XMLLookupService
     - fixed compilation errors with gcc344


##########################################################################################

CORAL 1.2.1
----------
+ General

  - Platforms:
     - Standard: slc3_ia32_gcc323, slc3_ia32_gcc323_dbg, win32_vc71_dbg

  - Configuration:
     - SCRAM toolbox : LCG_40_1a
     - CORAL scram config: CORAL-CONFIG_1_2_1
     - Dependency updates:
       - SEAL 1.7.9
       - sqlite 3.2.8

+ Bug fixes and updates

   - CoralBase
     - specialized output streamer for unsigned char
       (so that a number is printed)

   - ConnectionService
     - transactions are properly closed for unused connections
     - fixed the internal context hierarchy
     - monitoring switched off until the moment any monitoring-related
       call is issued.

   - MySQLAccess
     - fixed mapping from CHAR(N) SQL type to C++
     - fixed quoted regions scan for variable binding emulation
     - corrected nullness handling for binding, writing & reading
     - corrected char type writing & reading
     - fixes for the bug #14465, thanks COOL team for many fixes (Andrea and Sven)
     - fixed problem similar to bug #14465 in table schema loader
       confusing C++ type for VARCHAR BINARY column type
     - fixed segmentation fault in Session class.
     - fixed insertion of boolean values
     - fixed wasteful time statistics gathering

   - SQLiteAccess
     - NULL values properly treated at bulk operations
     - MessageStream instances created as late as possible just
       before their first use.
     - fixed index handling in schema editing, bug#14470
     - bug fixes in MonitorController 
     - implementation of time measurement for sqlite statement
       (including the bulk operation)

   - OracleAccess
     - MessageStream objects instantiated as late as possible.
     - fixed bug at delete operation when no condition is specified.
     - Time measurement only when monitoring is enabled.
     - Time measurement implemented for bulk operations as well.


   - FrontierAccess
     - fixed result set metadata column type name comparison for
       numeric types.


   - Unit and Integration Testing
     - extended and added new unit tests in the MySQLAccess and
       SQLiteAccess packages
     - New integration test "Integration_InputOutput" exercising
       simple and bulk row I/O for all the supported C++ types,
       for the oracle, mysql and sqlite plugins.


##########################################################################################

CORAL 1.2.0
----------
+ General

  - Platforms:
     - Standard: slc3_ia32_gcc323, slc3_ia32_gcc323_dbg, win32_vc71_dbg

  - Configuration:
     - SCRAM toolbox : LCG_40_1
     - CORAL scram config: CORAL-CONFIG_1_2_0
     - Dependency updates:
       - SEAL 1.7.8
     - New dependencies required for the newly introduced FrontierAccess plugin
       - frontier_client 2.4.1_cms
       - expat 1.95.8

+ Bug fixes and updates

   - CoralBase
     - fixed bug in templated Attribute::data method which could lead to
       very hard to trace segmentation violation problem coming from the type
       incompatibility between the actual data and the asked data type.
       If client is now asking for different type than is that of the
       attribute the data() accessor method throws an exception.

   - RelationalAccess
     - added two methods in the IRelationalService interface for retrieving the
       names of the available technologies and implementations.
     - added InvalidOperationException due to read-only FrontierAccess
       semantics which does not support updates

   - RelationalService
     - Implemented the updates in the IRelationalService interface

   - ConnectionService
     - Performs late loading of the components.
     - The choice of the particular authentication service to be
       loaded depends on the existence of the relevant environment variables.

   - EnvironmentAuthenticationService
     - checking of the values of the environment variables is done as late as 
       possible to avoid unhandled std::exceptions from being thrown in a
       static constructor.

   - MySQLAccess
     - fixed bug in variable binding emulation
     - fixed wrong default mapping for columns having 0 size specification,
       the default type in this case now is TEXT
     - fixed initial connection to the database which now does not retry with
       use of authetication services
     - Real connection happens only at the time user session is requested as
       well as the setting of session parameters
     - added support for coral::Date & coral::TimeStamp types
         NOTE: MySQL TIMESTAMP is only up to seconds precision so for
               high precision timestamps one must use something like BIGINT
               number which can be mapped directly into 64 bit seal::Time.

   - SQLiteAccess
     - fixed typo in Schema::dropView    
     - implemented View description
     - fixed description of unique constraints and indices in case of table schema change
          Note: different from the Oracle backend, constraints on source table 
                columns are NOT propagated to the VIEW. Otherwise, integration tests show 
                the same behaviour between sqlite and Oracle backends.
     - fixed UNION operation (added SELECT DISTINCT * in front of set operations to be consistent with oracle UNION results)
     - fixed DataEditor::updateRows for updating rows without "WHERE" condition
     - fixed DataEditor::deleteRows without "WHERE" condition to return 
       correctly the number of deleted rows. Note: in the case of delete without 
       "WHERE" condition, worse performance is expected than before due to this fix
     - correctly detects nullness of a retrieved column

   - FrontierAccess
     - First release of an RDBMS plugin based on the frontier client.

##########################################################################################

CORAL 1.1.0
----------
+ General

  - Platforms:
     - Standard: slc3_ia32_gcc323, slc3_ia32_gcc323_dbg, win32_vc71_dbg
     - First try with: slc3_ia32_gcc344 and slc3_ia32_gcc344_dbg
        - The XML-based plugins (XMLLookupService and XMLAuthenticationService
          are not built because of non-availability of the relevant external libraries.

  - Configuration:
     - SCRAM toolbox : LCG_39_1
     - CORAL scram config: CORAL-CONFIG_1_1_0
     - Dependency updates:
       - SEAL 1.7.7

+ Bug fixes and updates

   - CoralBase
     - Defined the Date and TimeStamp types. Their implementation is based on the seal::Time class.
     - Added the operators != and == in the AttributeList related classes.
     - Added the const qualifiers in the methods of the AttributeList
       related classes wherever they were missing.

   - OracleAccess
     - Added support for the Date and TimeStamp variables
     - Code cleanup and optimization of the internal classes

   - MySQLAccess
     - fixed type mapping for TINYINT
     - fixed possibility of std::exception due to wrong substr() range

   - SQLiteAccess
     - Added support for the Date and TimeStamp variables

##########################################################################################

CORAL 1.0.0
----------
+ General

  - First public release

  - Platforms:
       slc3_ia32_gcc323, slc3_ia32_gcc323_dbg,
       win32_vc71_dbg

  - Configuration:
     - SCRAM toolbox : LCG_38_1
     - CORAL scram config: CORAL-CONFIG_1_0_0
     - Dependency updates:
       - SEAL 1.7.6
       - UUID 1.38

+ Bug fixes and updates

   - ConnectionService
     - Various bug fixes and documentation updates

   - MySQLAccess
     - First public version available. Implementation using the MySQL C API.

##########################################################################################

CORAL 0.0.7
----------
+ General
  - Platforms:
       slc3_ia32_gcc323, slc3_ia32_gcc323_dbg,
       win32_vc71_dbg

  - Configuration:
     - SCRAM toolbox : LCG_37_1c
     - CORAL scram config: CORAL-CONFIG_0_0_7
     - Dependency updates:
       - SEAL 1.7.5

  - Bug fixes and updates
     - SQLiteAccess, ConnectionService
       - Various bug fixes and documentation updates



##########################################################################################

CORAL 0.0.6
----------
+ General
  - Platforms:
       slc3_ia32_gcc323, slc3_ia32_gcc323_dbg,
       win32_vc71_dbg

  - Configuration:
       SCRAM toolbox : LCG_37_1
       CORAL scram config: CORAL-CONFIG_0_0_6

  - First release available to the users for validation


##########################################################################################