POOL 2.9.1
----------
+ General
- Platforms:
slc4_ia32_gcc34(_dbg),
slc4_amd64_gcc34(_dbg),
win32_vc71_dbg,
osx105_ia32_gcc401(_dbg)
- Configuration:
LCGCMT_57
+ StorageSvc: position free reference mechanism allowing fast merge of POOL files
+ Collections: minor bug fixes and improvements
##########################################################################################
POOL 2.9.1
----------
+ General
- Platforms:
slc4_ia32_gcc34(_dbg),
slc4_amd64_gcc34(_dbg),
win32_vc71_dbg,
osx105_ia32_gcc401(_dbg)
- Configuration:
LCGCMT_56c
##########################################################################################
POOL 2.9.1
----------
+ General
- Platforms:
slc4_ia32_gcc34(_dbg),
slc4_amd64_gcc34(_dbg),
win32_vc71_dbg,
osx105_ia32_gcc401(_dbg)
- Configuration:
LCGCMT_56b
+ New features and improvements in Collections Utilities
##########################################################################################
POOL 2.9.0
----------
+ General
- Platforms:
slc4_ia32_gcc34(_dbg),
slc4_amd64_gcc34(_dbg),
win32_vc71_dbg,
osx105_ia32_gcc401(_dbg)
- Configuration:
LCGCMT_56a
+ New features in collections:
- TTree name used by RootCollection
changed name to POOLCollectionTree to avoid clashing with Atlas
data TTree. The change is transparent and existing collections
are still readable. Root collections can be copied into an
existing Root file now.
- Part of CollListAttribute tool functionality was relocated to
a new utility called CollQuery, so inspecting collection schema
and content are now separated. Query output format has changed.
- CollAppend can now copy or add new collection metadata
- CollRemove will now delete collection metadata
- All collection utilities have new command line argument
processing, with improved help and ability to store all
arguments into XML format for later reuse.
##########################################################################################
POOL 2.8.0
----------
+ General
- Platforms:
slc4_ia32_gcc34(_dbg),
slc4_amd64_gcc34(_dbg),
win32_vc71_dbg,
osx105_ia32_gcc401(_dbg)
- Configuration:
LCGCMT_55
- Dependency updates:
- removed dependency on the SEAL project
+ Updates and bug fixes
##########################################################################################
POOL 2.7.6
----------
+ General
- Platforms:
slc4_ia32_gcc34(_dbg),
slc4_amd64_gcc34(_dbg),
osx105_ia32_gcc401_dbg
- Configuration:
LCGCMT_54g
- Dependency updates:
+ Updates and bug fixes
- fixes and improvements in collections
##########################################################################################
POOL 2.7.5
----------
+ General
- Platforms:
slc4_ia32_gcc34(_dbg),
slc4_amd64_gcc34(_dbg), win32_vc71_dbg,
osx104_ia32_gcc401(_dbg)
- Configuration:
LCGCMT_54d
- Dependency updates:
+ Updates and bug fixes
##########################################################################################
POOL 2.7.4
----------
+ General
- Platforms:
slc4_ia32_gcc34(_dbg),
slc4_amd64_gcc34(_dbg), win32_vc71_dbg,
osx104_ia32_gcc401(_dbg)
- Configuration:
LCGCMT_54c
- Dependency updates:
+ Updates and bug fixes
##########################################################################################
POOL 2.7.3
----------
+ General
- Platforms:
slc4_ia32_gcc34(_dbg),
slc4_amd64_gcc34(_dbg), win32_vc71_dbg,
osx104_ia32_gcc401(_dbg)
- Configuration:
- Dependency updates:
+ Updates and bug fixes
##########################################################################################
POOL 2.7.1
----------
+ General
- Platforms:
slc4_ia32_gcc34(_dbg),
slc4_amd64_gcc34(_dbg), win32_vc71_dbg,
osx104_ia32_gcc401(_dbg)
- Configuration:
LCGCMT_54a
- Dependency updates:
ROOT 5.18.00a
+ Updates and bug fixes
##########################################################################################
POOL 2.7.0
----------
+ General
- Platforms:
slc4_ia32_gcc34(_dbg),
slc4_amd64_gcc34(_dbg), win32_vc71_dbg,
osx104_ia32_gcc401(_dbg)
- Configuration:
LCGCMT_54
- Dependency updates:
ROOT 5.18.00a
+ Updates and bug fixes
##########################################################################################
POOL 2.6.2
----------
+ General
- Platforms:
slc3_ia32_gcc323, slc4_ia32_gcc34(_dbg),
slc4_amd64_gcc34(_dbg), win32_vc71_dbg,
osx104_ia32_gcc401(_dbg)
- Configuration:
LCGCMT_53e
- Dependency updates:
+ Updates and bug fixes
##########################################################################################
POOL 2.6.2
----------
+ General
- Platforms:
slc3_ia32_gcc323, slc4_ia32_gcc34(_dbg),
slc4_amd64_gcc34(_dbg), win32_vc71_dbg,
osx104_ia32_gcc401(_dbg)
- Configuration:
LCGCMT_53d
- Dependency updates (wrt POOL 2_6_0):
ROOT 5.14.00h
+ Updates and bug fixes
- Several Collection bugfixes and new configuration LCGCMT 53d
##########################################################################################
POOL 2.6.1
----------
+ General
- Platforms:
slc3_ia32_gcc323, slc4_ia32_gcc34(_dbg),
slc4_amd64_gcc34(_dbg), win32_vc71_dbg
- Configuration:
LCGCMT_53b
- Dependency updates (wrt POOL 2_6_0):
ROOT 5.14.00h
+ Updates and bug fixes
- Collection bugfixes and new configuration LCGCMT 53b
##########################################################################################
POOL 2.5.4
----------
+ General
- Platforms:
slc3_ia32_gcc323(_dbg), slc4_ia32_gcc34(_dbg),
slc4_amd64_gcc34(_dbg), win32_vc71_dbg
- Configuration:
LCGCMT_53
- Dependency updates (wrt POOL 2_5_3):
ROOT 5.14.00g
CORAL_1_9_0
oracle 10.2.0.3-full
sqlite 2.4
frontier_client 2.7.4
lfc 1.6.5
+ Updates and bug fixes
- Rebuild of POOL 2.5.3 with LCGCMT 53
##########################################################################################
POOL 2.6.0
----------
+ General
- Platforms:
slc3_ia32_gcc323(_dbg), slc4_ia32_gcc34(_dbg),
slc4_amd64_gcc34(_dbg), win32_vc71_dbg
- Configuration:
LCGCMT_53
- Dependency updates:
ROOT 5.14.00g
CORAL_1_9_0
oracle 10.2.0.3-full
sqlite 2.4
frontier_client 2.7.4
lfc 1.6.5
+ Updates and bug fixes
- Collections
- major update of the collection implementation (provided by Marcin Nowak)
##########################################################################################
POOL 2.5.3
----------
+ General
- Platforms:
slc3_ia32_gcc323(_dbg), slc4_ia32_gcc34(_dbg),
slc4_amd64_gcc34(_dbg), win32_vc71_dbg
- Configuration:
LCGCMT_52
- Dependency updates:
CORAL_1_8_1
oracle 10.2.0.3
+ Updates and bug fixes
- PersistencySvc
- Fixed the setting of the technology specific attributes at the domain level.
##########################################################################################
POOL 2.5.2
----------
+ General
- Platforms:
slc3_ia32_gcc323(_dbg), slc4_ia32_gcc34(_dbg),
slc4_amd64_gcc34(_dbg), win32_vc71_dbg
- Configuration:
LCGCMT_51
- Dependency updates:
ROOT 5.14.00e
CORAL_1_8_0
RELAX_1_1_8
+ Updates and bug fixes
- RootStorageSvc
- Applied patch supplied by Bill Tanenbaum fixing bug #25110
- ObjectRelationalAccess
- Fixed treatment of blob column names generated with default rules
- RelationalStorageService
- Added support for blob on nested containers
##########################################################################################
POOL 2.5.1
----------
+ General
- Platforms:
slc3_ia32_gcc323(_dbg), slc4_ia32_gcc34(_dbg),
slc4_amd64_gcc34(_dbg), win32_vc71_dbg
- First release based on the CMT and QMtest infrastructures
- Configuration:
LCGCMT_50b
- Dependency updates:
ROOT 5.14.00c
CORAL_1_7_2
RELAX_1_1_7a
+ Updates and bug fixes
- RootStorageSvc
- Fixed change of TDirectory to a ROOT base class.
- ObjectRelationalAccess
- Extended mapping utilities for support of external session
- Extended mapping utility interface to handle in-memory XML document
- RelationalStorageService
- Adapted to changes on ObjectRelationalUtilities
- XMLCatalog
- Fixed bug #18848, memory leaks related to the Xerces-C parsing
##########################################################################################
POOL 2.5.0
----------
+ General
- Platforms:
slc3_ia32_gcc323(_dbg), slc4_ia32_gcc34(_dbg),
slc4_amd64_gcc34(_dbg), win32_vc71_dbg
- Configuration:
SCRAM toolbox : LCG_50_2
POOL scram config: POOL-CONFIG_2_5_0
- Dependency updates:
ROOT 5.14.00b
SEAL_1_9_2
CORAL_1_7_0
RELAX_1_1_7
+ Updates and bug fixes
- ObjectRelationalAccess, RelationalStorageService, RelationalCollection
- Adapted to the interface changes of CORAL
##########################################################################################
POOL 2.4.9
----------
+ General
- Platforms:
slc3_ia32_gcc323(_dbg), slc4_ia32_gcc34(_dbg),
slc4_amd64_gcc34(_dbg), win32_vc71_dbg
- Configuration:
SCRAM toolbox : LCG_49_2
POOL scram config: POOL-CONFIG_2_4_9
- Dependency updates:
ROOT 5.14.00a
SEAL_1_9_1
CORAL_1_6_3a
+ Updates and bug fixes
- ObjectRelationalAccess, RelationalStorageService
- Added support for C arrays
##########################################################################################
POOL 2.4.8
----------
+ General
- Platforms:
slc3_ia32_gcc323(_dbg), slc4_ia32_gcc34(_dbg),
slc4_amd64_gcc34(_dbg), win32_vc71_dbg
- Configuration:
SCRAM toolbox : LCG_48_2
POOL scram config: POOL-CONFIG_2_4_8
- Dependency updates:
ROOT 5.13.04b
SEAL_1_9_0
CORAL_1_6_1
+ Updates and bug fixes
- StorageSvc
- Fix in DbTypeInfo to remove reflex typedef object causing confusion in ROOT.
- RootStorageSvc
- Fix bug when setting address to branch when booking.
Apparently the corruption manifests itself only with ROOT 5.13.04 and above.
The bug was found by ATLAS.
- RelationalStorageSvc
- Fixed the treatment of the ConnectionService exceptions
##########################################################################################
POOL 2.4.7a
----------
+ General
- Platforms:
slc3_ia32_gcc323(_dbg), slc4_ia32_gcc34(_dbg),
slc4_amd64_gcc34(_dbg), win32_vc71_dbg
- Configuration:
SCRAM toolbox : LCG_47b_2
POOL scram config: POOL-CONFIG_2_4_7a
- Dependency updates:
ROOT 5.13.04a
##########################################################################################
POOL 2.4.7
----------
+ General
- Platforms:
slc3_ia32_gcc323(_dbg), slc4_ia32_gcc34(_dbg),
slc4_amd64_gcc34(_dbg), win32_vc71_dbg
- Configuration:
SCRAM toolbox : LCG_47_2
POOL scram config: POOL-CONFIG_2_4_7
- Dependency updates:
ROOT 5.13.02
CORAL_1_6_0
LFC 1.5.8
+ Updates and bug fixes
- PersistencySvc
- Fixed #19358
- StorageSvc
- Re-enabled automatic dictionary loading
- ObjectRelationalAccess
- Minor updates to comply to the interface changes in CORAL
- Collection
- Minor updates to comply to the interface changes in ROOT (Reflex)
##########################################################################################
POOL 2.4.6
----------
+ General
- Platforms:
slc3_ia32_gcc323(_dbg), slc3_ia32_gcc344(_dbg),
slc3_amd64_gcc344(_dbg), slc4_ia32_gcc345(_dbg),
slc4_amd64_gcc345(_dbg), win32_vc71_dbg
- Configuration:
SCRAM toolbox : LCG_46e_2
POOL scram config: POOL-CONFIG_2_4_6
- Dependency updates:
ROOT 5.12.00c
CORAL_1_5_3
+ Updates and bug fixes
- PersistencySvc
- Implemented the ROOT warning suppression in the command line
tools pool_insertFileToCatalog and pool_extractFileIdentifier
- ObjectRelationalAccess
- Optmized retrieving of mapping information by fetching the required info
in a single select statement for a given version. Old procedure kept in
the code (in case a rollback is needed), but presently not used.
##########################################################################################
POOL 2.4.5
----------
+ General
- Platforms:
slc3_ia32_gcc323(_dbg), slc3_ia32_gcc344(_dbg),
slc3_amd64_gcc344(_dbg), slc4_ia32_gcc345(_dbg),
slc4_amd64_gcc345(_dbg), win32_vc71_dbg
- Configuration:
SCRAM toolbox : LCG_46_2
POOL scram config: POOL-CONFIG_2_4_5
- Dependency updates:
ROOT 5.12.00
CORAL_1_5_1
RELAX_1_1_2
+ Updates and bug fixes
- StorageSvc
- Small patch for the 64-bit platforms in DbHeap
- RootStorageSvc
- Fix bug for updating keyed objects. We always write in mode kOverwrite.
- ObjectRelationalAccess / RelationalStorageService
- Fixed handling of fixed handling of std::map
##########################################################################################
POOL 2.4.4
----------
+ General
- Platforms:
slc3_ia32_gcc323(_dbg), slc3_ia32_gcc344(_dbg),
slc3_amd64_gcc344(_dbg), slc4_ia32_gcc345(_dbg),
slc4_amd64_gcc345(_dbg), win32_vc71_dbg
- Configuration:
SCRAM toolbox : LCG_45_2
POOL scram config: POOL-CONFIG_2_4_4
- Dependency updates:
ROOT 5.11.06a
CORAL_1_5_0
+ Updates and bug fixes
- StorageSvc
- Propagate READ transaction to backends (Savannah bug #17334).
Side effect: databases with active transactions will not be retired.
This can possibly give memory problems if many databases are opened.
The existence of a valid transaction handle is required when reading
objects using the storage service instance.
Callbacks are received by pool::IDbDatabase and for each connected
instance of pool::IDbContainer.
- OODatabaseImp hosts a context pointer possibly needed by backend services.
The pointer is passed once, when the DbSession is opened.
All backends connected to one session receive the same pointer.
- Fixed Memory leak in DbTypeInfo reported by H.Degaudenzi.
- RootStorageSvc
- Fix to Bug# 16072: Opening POOL files change the ROOT current directory
- Changed ROOT Domain option TREE_MAX_SIZE from int to "long long".
- Added ROOT Domain option ERROR_LEVEL (see Savannah bug#17236) to modify the ROOT global variable "gErrorIgnoreLevel".
- Added ROOT Domain option ABORT_LEVEL to modify the ROOT global variable "gErrorAbortLevel".
- Adapted to new interface and propagate context pointer to OODatabaseImp.
- Adjust patches to be backwards compatible with ROOT versions prior to 5.11.00.
- ObjectRelationalAccess
- fixed mapping rule for some container
- Fixed handling of std::map types
- RelationalStorageSvc
- Migrated to the use of CollectionProxy for the storage of STL containers. No
special dictionary building is any longer required.
- Applied various fixes related to the transaction handling.
##########################################################################################
POOL 2.4.3
----------
+ 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,
slc4_ia32_gcc345, slc4_ia32_gcc345_dbg,
slc4_amd64_gcc345, slc4_amd64_gcc345_dbg
- Configuration:
SCRAM toolbox : LCG_44_2
POOL scram config: POOL-CONFIG_2_4_3
- Dependency updates:
RELAX_1_1_1
ROOT 5.11.02
LFC 1.5.7
##########################################################################################
POOL 2.4.2
----------
+ 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,
slc4_ia32_gcc345, slc4_ia32_gcc345_dbg,
slc4_amd64_gcc345, slc4_amd64_gcc345_dbg
- Configuration:
SCRAM toolbox : LCG_43b_2
POOL scram config: POOL-CONFIG_2_4_2
- Dependency updates:
CORAL_1_4_3
ROOT 5.10.00d
+ Updates and bug fixes
- RootCollection
- Exception is thrown in case of incorrect ROOT predicate syntax used for query
- Integration Tests
- Fixes to remove the remaining dependencies on SealSTDDict and seal::Exception
##########################################################################################
POOL 2.4.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_43_2
POOL scram config: POOL-CONFIG_2_4_1
- Dependency updates:
RELAX_1_1_0
CORAL_1_4_0
ROOT 5.10.00c
+ Updates and bug fixes
- LFCCatalog
- Replaced use of seal::Exception with pool::Exception (in parser and tests)
- small change in error message string from parser
- fix endpoint in functional test
- ObjectRelationalAccess
- Fixed assignment of default column name for Blob types
##########################################################################################
POOL 2.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_42_2
POOL scram config: POOL-CONFIG_2_4_0
- Dependency updates:
SEAL_1_8_1
RELAX_1_0_0
CORAL_1_3_0
ROOT 5.10.00a
MySQL 5.0.18
+ Updates and bug fixes
- ALL
- Migrated away from seal::Exception.
- POOLCore
- Defines a pool::Exception class deriving from std::exception
- Relational Abstraction Layer
- No longer released. All functionality exists in CORAL.
##########################################################################################
POOL 2.3.1
----------
+ General
- Platforms:
slc3_ia32_gcc323, slc3_ia32_gcc323_dbg,
slc3_ia32_gcc344, slc3_ia32_gcc344_dbg,
win32_vc71_dbg
- Configuration:
SCRAM toolbox : LCG_41_2
POOL scram config: POOL-CONFIG_2_3_1
+ Updates and bug fixes
- File Catalog
- XMLCatalog
- Updated ID attribute type error message filter for Xerces-C 2.7.0
- Relational Abstraction Layer
- OracleAccess, ODBCAccess, AuthenticationService, FrontierAccess
- Fixed compilation errors for gcc344
##########################################################################################
POOL 2.3.0
----------
+ General
- Platforms:
slc3_ia32_gcc323, slc3_ia32_gcc323_dbg, win32_vc71_dbg
under test: slc3_ia32_gcc344(_dbg), slc3_amd64_gcc344(_dbg)
- Dependencies (updates w.r.t. version 2.2.6):
SEAL 1.8.0
ROOT 5.08.00b
CORAL 1.2.2
XercesC 2.7.0
LFC 1.4.1
- Configuration:
SCRAM toolbox : LCG_41_2
POOL scram config: POOL-CONFIG_2_3_0
+ Updates and bug fixes
- Storage Manager
- StorageSvc, RootStorageSvc, ObjectRelationalAccess,
RelationalStorageService, PersistencySvc, DataSvc
- Ported to the use of Reflex from ROOT
- File Catalog
- LFCCatalog
- Ported to the use of lfc 1.4.1
- added return of relative LFNs when a relative LFN path is specified
- better defined multithread/multiple catalog instances and native lfc
api interaction (described in the documentation)
- enhanced performance that makes use of new lfc server functionality
with LFC version 1.4.1 and newer
- added 'lfcsess' as an allowed protocol name, to allow the selection
of LFC sessions rather than transactions
- by default disable duplicate checking in bulk query results
- fix bug that affected large result sets that had to be checked for
result uniqueness
- Collections
- Collection
- Ported to the use of Reflex from ROOT
##########################################################################################
POOL 2.2.7
----------
+ General
- Platforms:
slc3_ia32_gcc323, slc3_ia32_gcc323_dbg,
win32_vc71_dbg
- Dependencies (updates w.r.t. version 2.2.6):
SEAL 1.7.9
CORAL 1.2.1
sqlite 3.2.8
- Configuration:
SCRAM toolbox : LCG_40_2a
POOL scram config: POOL-CONFIG_2_2_7
+ Updates and bug fixes
- RelationalCollection and RelationalFileCatalog
- Reverted back (for this release only) to the RAL-based implementation.
- Storage Manager
- ObjectRelationalAccess
- Migration to the use of CORAL supporting the new features
(views, streaming into BLOBs)
- RelationalStorageService
- Migration to the use of CORAL.
- Defines interface for BLOB streamers
- Uses BLOB streamers for storing object containers into BLOB variables.
- DataSvc
- Supports automatic dictionary loading
- File Catalog
- RelationalFileCatalog
- Completed migration to CORAL with the use of the ConnectionService
- Collections
- RelationalCollection
- Completed migration to CORAL with the use of the ConnectionService
- Relational Abstraction Layer
- General
- No longer used by any POOL component. It will be there for a
few more release cycles. Users are encouraged to use CORAL instead.
- FrontierAccess
- fixed result set metadata column type name comparison for the NUMBER SQL type
##########################################################################################
POOL 2.2.6
----------
+ General
- Platforms:
slc3_ia32_gcc323, slc3_ia32_gcc323_dbg,
win32_vc71_dbg
- Dependencies (updates w.r.t. version 2.2.5):
SEAL 1.7.8
gccxml 0.6.0_patch3
python 2.4.2
boost 1.32.0_python242
ROOT 5.08.00
CORAL 1.2.0
- Configuration:
SCRAM toolbox : LCG_40_2
POOL scram config: POOL-CONFIG_2_2_6
+ Updates and bug fixes
- RelationalCollection and RelationalFileCatalog
- Reverted back (for this release only) to the RAL-based implementation.
- Storage Manager
- StorageSvc
- implemented technology specific attributes of type "longlong".
- introduced the automatic dictionary loading mechanism.
- RootStorageSvc
- fixed access to technology specific attributes of type "longlong"
like TREE_MAX_SIZE and FILE_END. This allows to overcome the
1.8 GB file limit when writing trees with root (see also bug #12725).
- provide patches and workarounds for segmentation faults
occuring with the migration to ROOT 5.08.00
- PersistencySvc
- fixed return value in technology-specific attributes.
THANKS PETER!
- Relational Abstraction Layer
- FrontierAccess
- Changed connection string handling to include schema name, so format
of accepted connection strings are now:
frontier://server.domain:port/BaseURL/SCHEMA_NAME
and this gets transalted into Frontier valid URL as:
http://server.domain:port/BaseURL
- Changed the reload cache strategy. Now only the data dictionary
queries force reload while data queries use cached results
unless POOL_FRONTIER_RELOAD env. Variable is set.
##########################################################################################
POOL 2.2.5
----------
+ General
- Platforms:
slc3_ia32_gcc323, slc3_ia32_gcc323_dbg,
win32_vc71_dbg
- Dependencies (updates w.r.t. version 2.2.4):
SEAL 1.7.7
gccxml 0.6.0_patch3
glite 1.4
- First release with dependency on CORAL
CORAL version : 1.1.0
- Configuration:
SCRAM toolbox : LCG_39_2
POOL scram config: POOL-CONFIG_2_2_5
+ Updates and bug fixes
- Storage Manager
- ObjectRelationalAccess, RelationalStorageService
- added control of verbosity mode to OR mapping and Database
setup tools
- Relational Abstraction Layer
- FrontierAccess
- changed the data source handling, now each statement uses its own
frontier data source which solves the nested queries problem.
- fully debugged version tested against with the
RelationalStorageService
- ODBCAccess (MySQL)
- added check into type converter to prevent possible
std::exception being thrown when searching for sub-string
- fixed TINYINT SQL type handling in type converter
- Collections
- RelationalCollection
- first implementation based on CORAL
- File Catalog
- GliteCatalog
- Migrated to version 1.4 of glite
- RelationalFileCatalog
- first implementation based on CORAL
- Utilities
- FClistPFN, FClistLFN, FClistMetaData: take contact
string from POOL_CATALOG if -u option is absent. close #13261
##########################################################################################
POOL 2.2.4
----------
+ General
- Platforms:
slc3_ia32_gcc323, slc3_ia32_gcc323_dbg,
win32_vc71_dbg
- Dependencies (updates w.r.t. version 2.2.3):
SEAL 1.7.6
ROOT 5.06.00
UUID 1.38
- Configuration:
SCRAM toolbox : LCG_38_1
POOL scram config: POOL-CONFIG_2_2_4
+ Updates and bug fixes
- Storage Manager
- RootStorageSvc
- Fixed compilation errors while porting to ROOT v.5
- ObjectRelationalAccess
- improved the error messages in case of missing class in
the dictionary for a top level class member
- allow for support of typedefs in the OR mapping
- RelationalStorageService
- fixed clean up of containers before data filling during read-out
- added tools for POOL database synchronization with external tables
- extended the chunk size for data importing
- re-enabled reflex-based iterators clean up (after fix in
seal)
- Relational Abstraction Layer
- First evaluation release of a plugin based on Frontier (FrontierAccess).
##########################################################################################
POOL 2.2.3
----------
+ General
- Platforms:
slc3_ia32_gcc323, slc3_ia32_gcc323_dbg,
win32_vc71_dbg
- Dependencies (updates w.r.t. version 2.2.2):
SEAL 1.7.5
MySQL++ 1.7.9_mysql.4.0.24
- Configuration:
SCRAM toolbox : LCG_37_1c
POOL scram config: POOL-CONFIG_2_2_3
+ Updates and bug fixes
- Storage Manager
- RootStorageSvc
- Fix Streamer problem for pool tokens and references after changing OID from longs to integers.
- RelationalStorageService
- fixed clean up of containers before data filling during read-out
- Object Relational Access
- improved the error messages in case of missing class in the dictionary for a top level class member
##########################################################################################
POOL 2.2.2
----------
+ General
- Platforms:
slc3_ia32_gcc323, slc3_ia32_gcc323_dbg,
win32_vc71_dbg
- Dependencies (updates w.r.t. version 2.2.1):
SEAL 1.7.4
- Configuration:
SCRAM toolbox : LCG_37_1b
POOL scram config: POOL-CONFIG_2_2_2
+ Updates and bug fixes
- Storage Manager
- RootStorageSvc
- Fixed backwards compatible streaming of references and tokens.
##########################################################################################
POOL 2.2.1
----------
+ General
- Platforms:
slc3_ia32_gcc323, slc3_ia32_gcc323_dbg,
win32_vc71_dbg
- Configuration:
SCRAM toolbox : LCG_37_1
POOL scram config: POOL-CONFIG_2_2_1
+ Updates and bug fixes
- Storage Manager
- DataSvc
- Fixed compilation problems under win32.
- RelationalStorageService
- Fixed compilation problems under win32.
- Fixed destruction of objects created via seal::reflex::Member::invoke
- File Catalog
- LFCCatalog
-Fix for bug #10877 ('FCpublish from LFC to XML does not work')
##########################################################################################
POOL 2.2.0
----------
+ General
- Platforms:
slc3_ia32_gcc323, slc3_ia32_gcc323_dbg,
win32_vc71_dbg
- Dependencies (updates w.r.t. version 2.1.1):
SEAL 1.7.3
Reflex-based.
ROOT 4.04.02g
- Configuration:
SCRAM toolbox : LCG_37_1
POOL scram config: POOL-CONFIG_2_2_0
+ Updates and bug fixes
- Storage Manager
- StorageSvc, RootStorageSvc, PersistencySvc, DataSvc,
ObjectRelationalAccess, RelationalStorageService:
- First release based on Reflex
- PersistencySvc
- Added the command line tool pool_extractFileIdentifier which extracts
the GUID from a file and prints it to the standard output.
- POOLCore
- Change from "long" data type to int, which is ensured to keep
32 bits on 64 bit platforms. Another issue to come up soon as well.
- Fix bug in Guid when converting string to Guid. The %02hhx
Format directive to read ynsidned chars (undocumented in
inux man pages) corrupts the memory for some other
compilers, who ignore the "hh" but still expect a 4-byte
integer.
- File Catalog
- FileCatalog
- Fix in FCQueryParser
- LFCCatalog
- Removed case conversions on file id
- Collection
- Changed names of SEAL exception variables to avoid
multiple declaration complier errors when using
gcc 3.4 with -pedantic flag set
- ImplicitCollection
- Made it possible to open a database of any technology without the file catalog
- Relational Abstraction Layer
- AuthenticationService
- Avoid crash in EnvironmentAuthentication when no params are
stored in the environment
- RelationalAccess
- Added to the tagged version IRelationalSchema::DropTableCascade (was
on the head but never released), needed by the tool pool_remove_object_relational_mapping
- OracleAccess, SQLiteAccess, ODBCAccess
- Correctly declaring the m_cursor data member to be of the leaf
class type instead of pool::IRelationalCursor, solving the memory
leak problem.
##########################################################################################
POOL 2.1.4
----------
+ General
- Platforms:
slc3_ia32_gcc323, slc3_ia32_gcc323_dbg,
win32_vc71_dbg
- Configuration:
SCRAM toolbox : LCG_37_1
POOL scram config: POOL-CONFIG_2_1_14
+ Updates and bug fixes
- Storage Manager
- ObjectRelationalAccess
- Synchronized with the Reflex-based branch
- File Catalog
- LFCCatalog
-Fix for bug #10877 ('FCpublish from LFC to XML does not work')
##########################################################################################
POOL 2.1.3
----------
+ General
- Platforms:
slc3_ia32_gcc323, slc3_ia32_gcc323_dbg,
win32_vc71_dbg
- Dependencies (updates w.r.t. version 2.1.1):
SEAL 1.7.3
ROOT 4.04.02g
- Configuration:
SCRAM toolbox : LCG_37_1
POOL scram config: POOL-CONFIG_2_1_13
+ Updates and bug fixes
- Storage Manager
- RootStorageSvc
- Implement patch suggested by Philippe Canal to overcome
broken branch hierarchy. (Savannah ROOT bug #9553).
- File Catalog
- FileCatalog
- Fix in FCQueryParser
- LFCCatalog
- Removed case conversions on file id
- Collection
- Changed names of SEAL exception variables to avoid
multiple declaration complier errors when using
gcc 3.4 with -pedantic flag set
- ImplicitCollection
- Made it possible to open a database of any technology without the file catalog
- Relational Abstraction Layer
- AuthenticationService
- Avoid crash in EnvironmentAuthentication when no params are
stored in the environment
- RelationalAccess
- Added to the tagged version IRelationalSchema::DropTableCascade (was
on the head but never released), needed by the tool pool_remove_object_relational_mapping
- OracleAccess, SQLiteAccess, ODBCAccess
- Correctly declaring the m_cursor data member to be of the leaf
class type instead of pool::IRelationalCursor, solving the memory
leak problem.
##########################################################################################
POOL 2.1.2
----------
+ General
- Platforms:
slc3_ia32_gcc323, slc3_ia32_gcc323_dbg,
win32_vc71_dbg
- Dependencies (updates w.r.t. version 2.1.1):
SEAL 1.7.1
- Configuration:
SCRAM toolbox : LCG_36_1a
POOL scram config: POOL-CONFIG_2_1_15
+ Updates and bug fixes
- File Catalog
- FileCatalog
- fixed IFileCatalog::importCatalog for metadata support (bug #9308)
- Utilities
- prints error message before exiting (bugs #9306,#9307)
- Storage Manager
- RootStorageSvc
- Overcomes problem with "long long" type name.
- ObjectRelationalAccess
- Changes required for the dbsetup tool in RelationalStorageService
- RelationalStorageService
- Added prototype of dbsetup tool (setting up a pool database from existing relational data)
- Relational Abstraction Layer
- OracleAccess
- Fixed the problem with the bulk inserts of strings larger
than 64kB (CLOBs)
- ODBCAccess (MySQL)
- updated error handling to include source file & line for better diagnostics
##########################################################################################
POOL 2.1.1
----------
+ General
- Platforms:
slc3_ia32_gcc323, slc3_ia32_gcc323_dbg,
win32_vc71_dbg
- Dependencies (updates w.r.t. version 2.1.0):
SEAL 1.7.0
root 4.04.02f
boost 1.32.0
sqlite 3.2.1
mysql 4.0.24
myodbc 3.51.06_mysql.4.0.24
mysqlpp 1.7.31_mysql.4.0.24
lfc 1.3.4
vdt 1.2.3_globusrls215b
cgsigsoap 2.6_1.1.9
- Configuration:
SCRAM toolbox : LCG_36_1
POOL scram config: POOL-CONFIG_2_1_12
+ Updates and bug fixes
- File Catalog
- GTCatalog
- First public release of a catalog based on the globus toolkit
- LFCCatalog
- Using lfc 1.3.4
- added implied 'lfname like %' to queries that would require scan
over all LFN directories in the DB
- fixed bug in query parsing that could cause some legal queries
to fail with an internal error
- report more exceptions also as warnings through pool message stream
- empty queries handled as 'lfname like %'
- allow general form PFNs (eg. not a SURL)
- added support for relative LFNs
- performance improvement, particularly for inserts
- Storage Manager
- RootStorageSvc
- Reverted to version POOL_2_0_7 + fix to preload STL container dictionaries.
- PersistencySvc
- Introduced the command line tool pool_extractFileIdentifier
which extracts the GUID from a file and prints it to the standard output.
- ObjectRelationalAccess
- size of table name is checked before the existence of the
table in the schema.
- RelationalStorageService
- limits the cache size for bulk insertions to 10000 elements.
- Collections
- RelationalCollection
- controls the selection of meta data (from the option string)
- eg. "SELECT *", "SELECT x,y, z"
- controls the number of prefetched rows (from the option string)
- eg: "PrefetchedRows = 1234"
- Unless specified 1000 rows are prefetched.
- Utilities
- Option "-queryopt" added to all utilities to specify
metadata selection and caching (replaces option "-cache").
Syntax for selection conforms with that expected by
RelationalCollection and MySQLCollection.
- Option "-nevtread" added to CollListAttrib to specify
number of events for which to read in metadata. Default=0.
- Time stamps of key processes added to CollListAttrib
with option to print out results by specifying new
"-timing" option on command line.
- Option "-quiet" added to CollListAttrib to suppress all
unessential printout (for performance test purposes).
- Option "-nevtana" renamed to "-nevtstat" in CollListAttrib.
- Default values of "-nevtdmp" and "-nevtstat" changed
from "all" to 0 in CollListAttrib.
- Relational Abstraction Layer
- SQLiteAccess
- Uses sqlite 3.2.1
- reimplemente SQLiteBulkRowInserter to use sqlite3_bind instead of
binding everything through string, fix bug#9014
- OracleAccess
- Fixed the problem with the open cursors during bulk inserts.
##########################################################################################
POOL 2.1.0
----------
+ General
- Platforms:
slc3_ia32_gcc323, slc3_ia32_gcc323_dbg,
win32_vc71_dbg
- Dependencies (updates w.r.t. version 2.0.7):
lfc 1.3.1
glite 1.1
vdt 1.2.3
cgsigsoap 2.6_1.1.5
- Configuration:
SCRAM toolbox : LCG_35_1c
POOL scram config: POOL-CONFIG_2_1_8
+ Updates and bug fixes
- File Catalog
- First public release based on the new developer-level
interfaces which seperate the functionalities of the file
lookup and the meta handling.
- MySQLCatalog
- Updated to comply to the new interfaces.
- XMLCatalog
- Updated to comply to the new interfaces.
- PyFileCatalog
- Updated to comply to the new interfaces.
- RelationalFileCatalog
- updated to comply to the new interfaces.
- Fixed bug of not checking for presence of metadata and
trying to remove an meta data entry.
- Fix to allow SQLite back-end work properly.
- LFCCatalog
- First release of a catalog based on the lfc software.
(http://pool.cern.ch/currentReleaseDoc/LFCCatalog/LFCCatalog/)
(http://pool.cern.ch/currentReleaseDoc/LFCCatalog/LFCCatalog.pdf)
- GliteCatalog
- First release of a catalog based on the glite software (Fireman).
(/afs/cern.ch/sw/lcg/app/releases/POOL/POOL_2_1_0/src/GliteCatalog/doc/README)
- EDGCatalog
- NO LONGER RELEASED.
- GTCatalog (grid catalog based on the globus toolkit)
- NOT YET RELEASED.
- It will be made available in one of the coming bug fix releases.
- Utilities
- Updated to comply to the new interfaces.
- Fixed FCpublish for the cases of no metadata catalog plugin found
- Fixed -l -p options in FClistGUID
- Storage Manager
- PersistencySvc
- Package updated to comply to the new FileCatalog interfaces
- Collections
- CollectionBase
- Package updated to comply to the new FileCatalog interfaces.
- Collection
- Package updated to comply to the new FileCatalog interfaces.
- RootCollection
- Package updated to comply to the new FileCatalog interfaces.
- Utilities
- Modified CollAppend utility to create the specified destination
collection(s) if it does not already exist (it is then assigned
the same schema as the first source collection specified).
- In utilities CollAppend, CollCopy, CollListAttrib, and
CollListToken eliminated unnecessary (and potially confusing) command
line argument specfiying the file catalog names being used, since a
NULL ISession pointer is sufficient for collection creation and
opening by these utilities.
- Added option to CollCopy and CollAppend to specify maximum
number of events to process before calling collection commit.
Default set to 10000.
- Added option to CollListAttrib to specify number of events
for which to calculate max, min average values (default is all).
- Added option to CollListAttrib to specify number of events
scanned and counted (default is all).
- Added option to control rate of status printout for CollListAttrib,
CollCopy and CollAppend
- Repaired bug in "-nevtscan" option
- Made full event scan in CollListAttrib more performant when no
event dump or event analysis requested
- Added option to set "FetchAll" or "FetchOne" in CollListAttrib
- Relational Abstraction Layer
- SQLiteAccess
- Rolled back SQLiteTableSchemaEditor.cpp to use
sqlite3_exec (bug#8804, bug#8748)
- Fixed row counting in cursor and statement
- Reset statement when iteration over
- Fixed table alias problem in SQLiteQueryWithMultipleTables
and SQLiteSubQuery (bug#8963); provide unit test for these cases
- Uses SQLiteStatement for variable binding in SQLiteTableDataEditor::updateRows
and deleteRows (bug #8828)
- Fixed SQLiteExpressionParser::parseBindExpression to parse
more than one bound variables (bug #8859)
- Returns false when iteration over in SQLiteCusor.next (bug #8818)
- Added support for the bool type in SQLiteStatement::defineOutput (bug #8854)
- ODBCAccess
- bug fix #9076, fixed ODBCSession::disconnect() method
- Cleanup of type converter
- Hidden ODBC connection string to avoid revealing database password
- Fixed (yet once more) the type mapping for unsigned char reading
- OracleAccess
- Avoid querying the ALL_TABLES dictionary table when checking for the existence of a table.
- Bug fix by Marco Clemencic from COOL in handling CLOBs (thanks!)
##########################################################################################
POOL 2.0.7
----------
+ General
- Platforms:
slc3_ia32_gcc323, slc3_ia32_gcc323_dbg,
rh73_gcc323, rh73_gcc323_dbg,
rh73_gcc32, rh73_gcc32_dbg,
win32_vc71_dbg
- Dependencies (updates w.r.t. version 2.0.6):
SEAL_1_6_3
ROOT 4.04.02
- Configuration:
SCRAM toolbox : LCG_35_1
POOL scram config: POOL-CONFIG_2_0_13
+ Bug fixes and updates
- Relational Abstraction Layer
- ODBCAccess (MySQL)
- fixed bug #8450 for missing unsigned char C++ <-> SQL mapping
- fixed problem in bulk inserts with inserting bool values
- SQLiteAccess
- restructure the component to be fully compatible with the new style sqlite3 API
- fixed bug in Subquery
##########################################################################################
POOL 2.0.6
----------
+ General
- Platforms:
slc3_ia32_gcc323, slc3_ia32_gcc323_dbg,
rh73_gcc323, rh73_gcc323_dbg,
rh73_gcc32, rh73_gcc32_dbg,
win32_vc71_dbg
- Configuration:
SCRAM toolbox : LCG_34_1
POOL scram config: POOL-CONFIG_2_0_12
+ Bug fixes and updates
- Storage Manager
- RootStorageSvc
- Fix bugs in backwards compatibility for reading
containers of references (maps, multmaps etc) written with ROOT 3.
- File Catalog
- EDGCatalog
- rolled back to an older tag to be compatible with edg-rls server
version 2.2.5 currently deployed in production.
##########################################################################################
POOL 2.0.5
----------
+ General
- Platforms:
slc3_ia32_gcc323, slc3_ia32_gcc323_dbg,
rh73_gcc323, rh73_gcc323_dbg,
rh73_gcc32, rh73_gcc32_dbg,
win32_vc71_dbg, osx103_gcc33
- Configuration:
SCRAM toolbox : LCG_34_1
POOL scram config: POOL-CONFIG_2_0_12
+ Bug fixes and updates
- Storage Manager
- StorageSvc
- Fix bug in database retirement spotted by B.Tanenbaum (Bug #8002).
The fix allows to reopen the containers after the retirement of the
database they belong to. This however still requires that the age
limit is set to some reasonable value depending on the number of
databases you want to be open concurrently.
- RootStorageSvc
- Fix bug in database retirement spotted by B.Tanenbaum (Bug #8002).
Need to reassign pointer to tree for select statement.
- Relational Abstraction Layer
- ODBCAccess (MySQL)
- Fixed bug with bulk inserting bool variables.
- OracleAccess
- Fixed bug with bulk inserting bool variables.
- Fixed bug in the treatment of unsigned char variables in the type converter
- Enabled SQL TRACE by setting the environment variable POOL_ORA_SQL_TRACE_ON to any value.
- Collections
- Utilities
- Updated for use with RelationalCollection type collections.
- Allow different database connection string for input and output when using relational table collections.
##########################################################################################
POOL 2.0.4
----------
+ General
- Platforms:
slc3_ia32_gcc323, slc3_ia32_gcc323_dbg,
rh73_gcc323, rh73_gcc323_dbg,
rh73_gcc32, rh73_gcc32_dbg,
win32_vc71_dbg, osx103_gcc33
- Dependencies (updates w.r.t. version 2.0.3):
SEAL_1_6_2
ROOT 4.03.04a
gccxml 0.6.0_patch2
- Configuration:
SCRAM toolbox : LCG_34_1
POOL scram config: POOL-CONFIG_2_0_12
+ Bug fixes and updates
- Relational Abstraction Layer
- ODBCAccess (MySQL)
- Fixed bind variable name parsing producing invalid SQL in some cases
- Fixed logging
- Fixed column modification
- File Catalog
- RelationalFileCatalog
- Loads the XMLAuthenticationService if the POOL_AUTH_PATH
variable is set. This was required to allow FCpublish use two relational file catalogs.
- Collections
- RelationalCollection
- Fixed bug #7679
##########################################################################################
POOL 2.0.3
----------
+ General
- Platforms:
slc3_ia32_gcc323, slc3_ia32_gcc323_dbg,
rh73_gcc323, rh73_gcc323_dbg,
rh73_gcc32, rh73_gcc32_dbg,
win32_vc71_dbg, osx103_gcc33
- Dependencies (updates w.r.t. version 2.0.2):
mysql++ 1.7.31
- Configuration:
SCRAM toolbox : LCG_33_1c
POOL scram config: POOL-CONFIG_2_0_11
+ Bug fixes and updates
- Relational Abstraction Layer
- RelationalAccess
- Removed the concept of the SID in the RelationalURIParser.
- OracleAccess
- Fixed 64-bit integer I/O
- The TNS_ADMIN is no longer essential. The connection string that can be used is
oracle://dbhost:port/ServiceName/SchemaName
- AuthenticationService
- XML-based authentication:
The authentication file is also searched for in the directories
defined in the POOL_AUTH_PATH path environment variable
- Storage Manager
- RootStorageSvc
- Remove check for file existence before opening as file
in read mode. For update the file existence is still checked.
- ObjectRelationalAccess
- inverted the order in the columns when creating indices,
so that they become more efficient for reading back object data
- RelationalStorageService
- Fixed bug in locking mechanism so that concurrent writers now write consistently.
- File Catalog
- XMLCatalog
- Removed an unnecessary warning
- MySQLCatalog
- ported to mysql++ 1.7.31
- Collections
- MySQLCollection, MySQLltCollection
- ported to mysql++ 1.7.31
##########################################################################################
POOL 2.0.2
----------
+ General
- Platforms:
slc3_ia32_gcc323, slc3_ia32_gcc323_dbg,
rh73_gcc323, rh73_gcc323_dbg,
rh73_gcc32, rh73_gcc32_dbg,
win32_vc71_dbg, osx103_gcc33
- Configuration:
SCRAM toolbox : LCG_33_1b
POOL scram config: POOL-CONFIG_2_0_10
+ Bug fixes and updates
- Relational Abstraction Layer
- ODBCAccess (mysql)
- package builds under win32
- fixed column-wise variable binding for std::string data
cache in bulk inserts
- Fixed tests missing symbols during link stage in optimized version for SLC3
- Storage Manager
- PersistencySvc
- fixed the ITechnologySpecificAttributes::setAttribute<T> method (bug #7385)
- enabled the passing of an option string in the ITechnologySpecificAttributes
- RelationalStorageService
- fixed crashes which were caused by write-commit loops.
- loading the EnvironmentAuthenticationService if no other
IAuthenticationService is already loaded. This allows the
running of the pool_insertFileToCatalog utility against RDBMS-based POOL "databases".
##########################################################################################
POOL 2.0.1
----------
+ General
- Platforms:
slc3_ia32_gcc323, slc3_ia32_gcc323_dbg,
rh73_gcc323, rh73_gcc323_dbg,
rh73_gcc32, rh73_gcc32_dbg,
win32_vc71_dbg,
osx103_gcc33 (not yet thoroughly tested)
- Dependencies (updates w.r.t. version 2.0.0):
SEAL_1_6_1
- Configuration:
SCRAM toolbox : LCG_33_1b
POOL scram config: POOL-CONFIG_2_0_9
+ Bug fixes and updates
- Relational Abstraction Layer
- OracleAccess
- made the limiting of the result set more efficient without the
need of fetching and then skipping on the client side the
"offset" number of rows.
- ODBCAccess (mysql)
- fix for missing database port setting
- type for C++ strings mapping fixed back to varchar(255) binary to make
it case-sensitive by default
- added debug printout for ODBC prepared statement
- cursor changed to forward-only
- added 64 bit integer type support
- fixed compilation errors on osx103_gcc33
- SQLiteAccess
- Fix contact string handling (bug #7187)
Note: the correct contact string formats for relational sqlite catalog:
relationalcatalog_sqlite_file:///home/x/foo.db (for absolute path)
relationalcatalog_sqlite_file:foo.db (for db in current dir)
- File Catalog
- FileCatalog (base package)
- fixed compilation errors on gcc 3.4
- Utilities
- set default logging level to Warning if POOL_OUTMSG_LEVEL is not set (bug #6311)
- redirect all component logging messages to std::cerr, all FC
tool output to std::cout. Exception: in case the command quits immediately due
to illegal command syntax, the error and help message is in std::cout.(bug #3104)
- RelationalFileCatalog
- using bind variables in queries and enabled row prefetching
wherever it was not there
- Fixed the prefetching mechanism when using the FCContainers.
- Storage Manager
- ObjectRelationalAccess
- added support for the 64-bit integer types.
- RelationalStorageService
- Notice: Any STL container of pointers, which is filled
in the default constructor will cause a crash.
Very likely this will have to be resolved soon, but
a possible solution is unclear.
- Change all !isalnum() characters in branch names to "_". (#6959)
- Set splitlevel automatically to 0 if the class cannot be split.
- Fix patch to properly read std::map<I,pool::Ref<T> >
from ROOT version 3 files. Same patch applies for std::multimap,
stdext/__gnu_cxx::hash_map and stdext/__gnu_cxx::hash_multimap.
- DataSvc
- fixed compilation errors on osx103_gcc33
- Examples
- Two new examples (SimpleWriterBranches, SimpleReaderBranches) exercising
the writing of objects in ROOT Tree branches.
- Collections
- ImplicitCollection
- Allows for usage without a file catalog
##########################################################################################
POOL 2.0.0
----------
+ General
- Platforms:
slc3_ia32_gcc323, slc3_ia32_gcc323_dbg,
rh73_gcc323, rh73_gcc323_dbg,
rh73_gcc32, rh73_gcc32_dbg,
win32_vc71_dbg
- Dependencies (updates):
SEAL_1_6_0
ROOT 4.03.02
Oracle 10.1.03-1 (instant client)
- Configuration:
SCRAM toolbox : LCG_33_1
POOL scram config: POOL-CONFIG_2_0_8
+ Bug fixes and updates
- AttributeList
- Added support for the seal::IntBits<64>::SLeast and
seal::IntBits<64>::SLeast 64-bit integer types
- Added a shareData() method in the Attribute class
- AttributeListSpecification can be constructed out of type_info objects
- Relational Abstraction Layer
- OracleAccess
- Plugin available for win32 platforms
- Support for the 64-bit integer types
- Cursors in queries are by default not scrollable. This can
be changed by setting the environment variable POOL_ORA_SCROLLABLE_CURSOR to ON
- ODBCAccess (mysql)
- new expressions parser which allows to use named variables in prepared
statement in form of ":VARNAME" or ":1". This makes ODBCAccess compatible with OracleAccess for specifying query conditions
- Bug fixes in bulk inserters
- fixed famous bug of 3rd column being NULL for non-null data
caused by invalidated addresses of indicators vector
- removed useless diagnostic fields from ODBCErrorHandler
- fixed bug in setting NOT NULL constraint
- added new test cases
- TO BE DONE : disable scrollable cursors by default and add
support for 64-bit integer types.
- SQLiteAccess
- Support for the 64-bit integer types
- Fixed duplicate temporary table in SQLiteTableSchemaEditor
- KNOWN BUGS : Checking the NULL-ness of a variable does not work.
- AuthenticationService
- fixed crash on SLC3 when shutting down DOM parser
- File Catalog
- Utilities
- added command FClistGUID
- RelationalFileCatalog
- Removed the call to IRelationalQuery::numberOfRows() so that
it does not depend on the availability of scrollable cursors.
- added handling of message output level compatible with
POOL_OUTMSG_LEVEL env. variable
- Storage Manager
- RootStorageService
- First release based on ROOT 4.
- The RootTree technology has been extended to support the storing
of objects in tree branches (Contribution from Bill Tanenbaum).
- ObjectRelationalAccess
- First release of the package which provides the
functionality of storing and materializing customizable
object-relational mapping definitions. Intermediate package
used by the relational storage service
- RelationalStorageService
- First release of the package. An implementation of the POOL
StorageSvc interfaces based on RAL and the SEAL reflection
mechanism.
- Collections
- RelationalCollection
- First release of the package which is a
generic RDBMS implementation of the CollectionBase interfaces
based on RAL.
##########################################################################################
POOL 1.8.0
----------
+ General
- Uses SEAL_1_4_2 (and the corresponding dependent packages),
Root 3.10.02, edg-rls-client 2.3.3,
oracle 10.1.0.2 (instant client), sqlite 3.0.8,
myodbc 3.51.06_mysql.4.0.18, xerces-c 2.3.0
- Configuration: POOL-CONFIG_1_8_2
- SCRAM toolbox: LCG_30b_1
- Platforms cel3-i386_gcc323 (slc3_gcc323/slc3_ia32_gcc323),
cel3-i386_gcc323_dbg (slc3_gcc323_dbg/slc3_ia32_gcc323_dbg),
rh73_gcc32, rh73_gcc32_dbg,
rh73_gcc323, rh73_gcc323_dbg,
win32_vc71_dbg
+ Bug fixes and updates
- AttributeList
- completed the support of all the C++ primitive types.
- The AttributeSpecification is holding a pointed to the attribute
type_info instead of the type name.
- Added the methods setValueFromData, cloneData and copyData in AttributeBaseValue
- Storage Manager
- StorageSvc
- Implemented workaround for platform slc3 to overcome the
bug in the cxxabi for datatype int.
- Provide access to SEAL reflection information through
single class in StorageSvc package (DbReflex).
This is a provision to later simplify the use of the
SEAL dictionary service.
- Relational Abstraction Layer
- The type converter depends on the session instead of the domain so that
the back end implementation can detect the server version and set up the
converter accordingly.
- Added the method setForUpdate in the IRelationalQuery interface.
It is used in order to instruct the backend to append the clause
"FOR UPDATE" at the end of a select statement, in order to lock the
rows of the result set. This extension is required for the object storage.
- Introduction of the ODBCAccess plugin module to serve accesses
to MySQL databases. It is implemented against MyODBC.
- The OracleAccess plugin module is linked against the Oracle instant client and
can access both 10g and 9i servers.
- Added CLOB <->string support in the OracleAccess plugin module and fixed the
retrieval of foreign keys.
- Moved to sqlite 3 for the SQLiteAccess plugin module.
- Fixed the XMLAuthenticationService (AuthenticationService plugin module),
so that multiple connections can be handled.
- FileCatalog :
- Fixed the iteration problem in composite catalog with multiple
read-only catalogs.
- XMLCatalog : add backend level support for switching off the .BAK files,
fixed in query length equal zero - bug report 4673, fixed memory leak in DTDRedirect.cpp
- EDGCatalog : dded low level protection for query length equal zero - bug report 4673.
- RelationalFileCatalog : added handling of message output level compatible
with POOL_OUTMSG_LEVEL env. variable
- Collection :
- Updated the documentation to include the description of the command line tools.
##########################################################################################
POOL 1.7.0
----------
+ General
- Uses SEAL_1_4_0, Root 3.10.02 (a release based on ROOT 4 will
follow), edg-rls-client 2.3.3, boost 1.31.0, python 2.3.4,
gccxml 0.6.0_patch1
- Configuration: POOL-CONFIG_1_7_2
- SCRAM toolbox: LCG_26_1
- First release of the POOL Relational Abstraction Layer
- New packages:
- RelationalAccess (base package defining the abstract interfaces)
- AuthenticationService (plugin: two implementations of the
IAuthenticationService interface)
- OracleAccess (plugin: implementation of the interfaces that
can be accessed starting from the IRelationalDomain interface,
for an Oracle backend. Implemented using OCI 9.2.0.4)
- SQLiteAccess (plugin: implementation of the interfaces that
can be accessed starting from the IRelationalDomain interface,
for an SQLite backend)
+ Bug fixes and updates
- FileCatalog :
- Introduction of the RelationalFileCatalog, an implementation of
the FileCatalog interfaces based on the Relational Abstraction Layer
- PersistencySvc:
- Support for more modes in the implicit opening of database
files (DatabaseConnectionPolicy).
- Collection :
- A new set of utilities for the management of collections and
the extraction of metadata and the attributes of the files which
are referenced.
##########################################################################################
POOL 1.6.5
----------
+ General
- Uses SEAL_1_3_4, Root 3.10.02, edg-rls-client 2.3.2
- Configuration: POOL-CONFIG_1_6_7
- SCRAM toolbox: LCG_23_1d
+ Bug fixes and updates
- FileCatalog :
- EDGCatalog updated to use the edg-rls-client version 2.3.2
##########################################################################################
POOL 1.6.4
----------
+ General
- Uses SEAL_1_3_4, Root 3.10.02, edg-rls-client 2.2.1
- Configuration: POOL-CONFIG_1_6_6
- SCRAM toolbox: LCG_23_1c
+ Bug fixes and updates
- FileCatalog :
- fix bug #2933 in FCImplBuilder::BuildFCImpl, exception thrown in case
the catalog implementation cannot be loaded.
- XMLCatalog: re-implemented FCduplicatemetadataexception in
insertMetadata method, and the clear buffer in the insert
methods, lost from POOL_1_6_1 to POOL_1_6_3.
- Collection :
- Explicit mysql-based collections:
- Extended query options to allow only a subset of all attributes
to be read in from persistence (as is already done in RootCollection).
- Repairs a memory leak due to previous changes in which FetchAll
and FetchOne iterators were combined.
- RootCollection, MultiCollection :
- Modifications to allow for same query option syntax (SQL)
as for MySQLCollection.
- Update of Doxygen documentation to account for this additional query
option.
##########################################################################################
POOL 1.6.3
----------
+ General
- Uses SEAL_1_3_4, Root 3.10.02, edg-rls-client 2.2.1
- Configuration: POOL-CONFIG_1_6_5
- SCRAM toolbox: LCG_23_1c
- Platforms: rh73_gcc32, rh73_gcc32_dbg, win32_vc71, win32_vc71_dbg
- Windows builds does not contain the tests, the examples and the following
plugin libraries: MySQLCatalog, MySQLCollection, RootCollection,
EDGCatalog, as well as the PyFileCatalog package.
- All documentation deliverables now under the release area.
+ Bug fixes and updates
- Collection
- Code cleanup in the MySQL explicit collection packages.
- (Root)StorageSvc
- Add interface method to IStorageSvc::existsConnection
to allow checking for the existence of a database
- PersistencySvc
- Uses the new method IStorageSvc::existsConnection to eliminate
the misleading error output whenever a new database file is
created.
- Changed the flag of the pool_insertFileToCatalog which specifies
the file catalog from -c to -u so that it is compatible with
the rest of the file catalog tools.
##########################################################################################
POOL 1.6.2
----------
+ General
- Uses SEAL_1_3_4, Root 3.10.02, edg-rls-client 2.2.1
- Configuration: POOL-CONFIG_1_6_4
- SCRAM toolbox: LCG_23_1c
- Platforms: rh73_gcc32, rh73_gcc32_dbg, win32_vc71, win32_vc71_dbg
- Windows builds does not contain the tests, the examples and the following
plugin libraries: MySQLCatalog, MySQLCollection, RootCollection,
EDGCatalog, as well as the PyFileCatalog package.
- Doxygen documentation regularly available with every release
under $PROJECTTOP/doc/classReference/html/index.html
- The top level include directories contain relative links.
+ Bug fixes and updates
- FileCatalog
- Removed filetype in the catalog schema to speed up EDGCatalog
queries. A ROOT type is always assumed. This fix is not the ultimate solution.
- Added a addPFNtoGuid function to the developer level interfaces (C++ and Python),
and implemented this function in all backends.
- Added a -g option to the FCaddReplica command to allow adding a PFN to a given guid.
- Fixed in all back ends duplicated entries during catalog importing.
- Fixed the exception logic in insertMetaData (XMLCatalog).
- RootStorageSvc
- Fix bug # 2424 Removed unnecessary print statements
- Fix bug # 2743 Problem reading preallocated STL containers
- Fix bug # 2357 Vectors with custom allocators
- Fix bug: getOption method must be const!
- Fix bug in RootDBase: byte counters now __int64 to prevent wrapping
- Optimize TClass lookup for pointers: Memorize last instance type
- PersistencySvc
- The name of FID, PFN or LFN which is supplied by the user and
not found in the file catalog is appended to the information
carried by the relevant exception that is thrown.
- The system attempts to retrieve the FID from the file itself,
if a PFN is specified that is not registered in the file catalog.
##########################################################################################
POOL 1.6.1
----------
+ General
- Uses SEAL_1_3_3, Root 3.10.02, edg-rls-client 2.2.1
- Configuration: POOL-CONFIG_1_6_3
- SCRAM toolbox: LCG_23_1
- Platforms: rh73_gcc32, rh73_gcc32_dbg, win32_vc71, win32_vc71_dbg
- Windows builds does not contain the tests, the examples and the following
plugin libraries: MySQLCatalog, MySQLCollection, RootCollection,
EDGCatalog, as well as the PyFileCatalog package.
+ Bug fixes and updates
- FileCatalog
- fixed (in all back ends) duplicated entries in importing catalog.
- fixed the exception logic in insertMetaData (XMLCatalog).
- RootStorageSvc
- RootClassLoader.cpp
When creating the CINT gateway of an abstract class
force the creation using a concrete sub-class, which
allows to construct an object.
- RootKeyContainer.cpp
When reading do key lookup using the directories
hash-table (performance improvement).
##########################################################################################
POOL 1.6.0
----------
+ General
- The highlight of this release is the new FileCatalog interface which allows now
to work with composite file catalogs.
- There was major re-design of the POOL documentation infrastructure to provide
automatic compilation of user and developer documentation based on DocBook XML.
The system prototype is in place with basic functionality and first version
of DocBook based templates. Some parts of the existing documentation have been
already moved into DocBook format, the rest will be done in the coming weeks.
- The new rh73_gcc32_gcov platform has been introduced which provides source code
coverage build of POOL
- Uses SEAL_1_3_3, Root 3.10.02, edg-rls-client 2.2.1
- Configuration: POOL-CONFIG_1_6_3
- SCRAM toolbox: LCG_23_1
- Platforms: rh73_gcc32, rh73_gcc32_dbg, rh73_gcc32_gcov, win32_vc71, win32_vc71_dbg
- Windows builds does not contain the tests, the examples and the following
plugin libraries: MySQLCatalog, MySQLCollection, RootCollection,
EDGCatalog, as well as the PyFileCatalog package.
+ Bug fixes and updates
- POOLCore
- Dictionary for the pool::Reference class is automatically generated
and compiled with the rest of the library.
- A new utility: pool_gen_uuid which prints a new valid Guid.
- AttributeList
- Support for pool::Token
- PersistencySvc
- Conform to the new FileCatalog interfaces
- Introduced the IDatabaseParameters interface to access the
annotation-like parameters (string-string pairs) stored in a POOL
database.
- bug fix: Stricter condition checking and throwing of exceptions
before error conditions are propagated to the StorageSvc.
- FileCatalog
- Documentation update: http://pool.cern.ch/catalog/FileCatalog-component-010304.pdf
General new features (C++, Python)
-support composite catalog
-split the old user interface into smaller ones
-accept user defined catalog implementation wrapper
-importCatalog skips duplicated entries
-accept XMLFileCatalog_ prefix in the contact string
-add PyFClookup::lookupEntryByQuery method in the Python component
Command line tools
-add deletePFN, deleteLFN, deleteMetaData commands
MySQLCatalog
-metadata table uses blob type for c++ string type, metadata entry length
can grow as large as 64KB
-fix the column name preservation problem of MySQL by using an extra
table to hold the metadata specification
NOTE: in order to run MySQLCatalog in POOL_1_6_0, metadata in the old
MySQL catalog has to be dropped using the command-line FCdropMetaData.
Please make backups if there are important data in the old MySQL catalog.
EDGCatalog
- adopted the edg-rls 2.2.5
- MySQLCollection
- Compliance with the latest FileCatalog interfaces
- Allows for Token attributes, in compliance with latest changes
to AttributeList
- MySQLltCollection
- Compliance with the latest FileCatalog interfaces
- Extends link table storage to Token objects stored as attributes.
- Application of MySQLCollection optimizations for attribute
retrieval to Token attributes.
- RootCollection
- Compliance to the new file catalog interfaces
- Compliance to latest version of AttributeList
- support for token attributes
- Bugfix, in RootCollection::retrieveUniquePFN the uniqueness check
didn't work correctly since the XML pfn container provides each
real pfn twice, once from the read catalog and once from the write
catalog, removal of the read catalog fixed this.
- Examples-Libraries-ExampleBase
- Uses the platform independent way of loading dictionary libraries
- Examples-Libraries-AthenaExampleDict
- Does not generate the dictionary for the string
- Examples-AthenaExample
- Loads the SEAL precompiled dictionary for the string
##########################################################################################
POOL 1.5.0
----------
+ General
- first POOL release with Windows platform (even if limited so far)
- first POOL release supporting LCG-2 RLS
- Uses SEAL_1_3_3, Root 3.10.02, edg-rld-client 2.2.1
- platforms: rh73_gcc32, rh73_gcc32_dbg, win32_vc71, win32_vc71_dbg
- Windows builds does not contain the tests, the examples and the following
plugin libraries: MySQLCatalog, MySQLCollection, RootCollection,
EDGCatalog, as well as the PyFileCatalog package.
+ Bug fixes and updates
- POOLCore
- Minor update in the buildfile, relevant only to the win32 builds.
- AttributeList
- no changes
- FileCatalog
- EDGCatalog:
- adopted the edg-rls-client version 2.2.1
- New endpoints:
ALICE
-LRC http://rlsalice.cern.ch:7777/alice/v2.2/edg-local-replica-catalog/services/edg-local-replica-catalog
-RMC http://rlsalice.cern.ch:7777/alice/v2.2/edg-replica-metadata-catalog/services/edg-replica-metadata-catalog
ATLAS
-LRC http://rlsatlas.cern.ch:7777/atlas/v2.2/edg-local-replica-catalog/services/edg-local-replica-catalog
-RMC http://rlsatlas.cern.ch:7777/atlas/v2.2/edg-replica-metadata-catalog/services/edg-replica-metadata-catalog
CMS
-LRC http://rlscms.cern.ch:7777/cms/v2.2/edg-local-replica-catalog/services/edg-local-replica-catalog
-RMC http://rlscms.cern.ch:7777/cms/v2.2/edg-replica-metadata-catalog/services/edg-replica-metadata-catalog
LHCb
-LRC http://rlslhcb.cern.ch:7777/lhcb/v2.2/edg-local-replica-catalog/services/edg-local-replica-catalog
-RMC http://rlslhcb.cern.ch:7777/lhcb/v2.2/edg-replica-metadata-catalog/services/edg-replica-metadata-catalog
- PyFileCatalog
- postLib.mk made platform independent
- MySQLCatalog
- Uses the EXCLUDEDCOMPILERFLAGS variable in the BuildFile
- Collections
- Minor changes in the Collection.inl file fixing compilation problems under win32_vc71
- MySQLCollection
- Uses the EXCLUDEDCOMPILERFLAGS variable in the BuildFile
- Storage Manager
- Fix bug: "getOption" must be const!
- Add option callback for technology specific external
option treatment
- Add data handler guard class to store intermediate streaming
context. This class is not specific to root only, but can be
re-used across several storage technologies.
- Improve retirement procedure. Try to re-open on any access
when going through pool.
- Fixed for internal dictionary generation.
- RootStorageSvc
- Fix bug: "getOption" must be const!
- Fix bug in RootDBase: byte counters now __int64 to prevent wrapping
- Optimize TClass lookup for pointers: Memorize last instance type
- Fix proper BLOB names
- Allow to (pre)set the default ROOT class version.
Domain option: "CLASS_VERSION" . Default is 1.
- Minimize execution of cint interpreted code for persistency.
Now all classes with NO custom streamer and NO explicit data handler
are "foreign" if the default class version is 2 or higher.
This improves speed. Since it is unclear, if this improvement is
backward compatible, the switch must be explicitly enabled.
- [ Bug #2125 ] Need the ability to set ROOT Write options kWriteDelete, etc.
The option can be set at the level
of each Database or keyed container. The initial value is 0 (default).
When opening a container the value is inherited from the database,
but can the adjusted later.
The name of this option is "DEFAULT_WRITEPOLICY".
Note: The value of this option has side-effects on deleting objects,
because with the default value "0" all cycles are removed, whereas
otherwise only one cycle is removed.
- Introduce fix for Savannah Bug# 2001 (Supplied by B.Tanenbaum)
- Automatically set tree split level to 0 if an object has a custom streamer.
- Enable root interactivity - as far as possible. See the
example in the doc area how to deal with root files interactively.
Note: Template support for compiled templates as they are used
in pool is very limited.
- Fix bug in member declarations for aggregated fields.
- PersistencySvc
- Access to the file catalog in use through the ISession class
- Access to the technology specific attributes at domain and
container level as well (used to be only at the database level)
- DataSvc
- Added explicit #include missing in Ref.h
##########################################################################################
POOL 1.4.0
----------
+ General
- Release platform RH7.3 with gcc 3.2 (both optimized and debug versions)
- Uses SEAL 1.3.0
+ Bug fixes and updates
- POOLCore
- Prepared porting to win32_vc71 using the external uuid installation
- The centrally installed uuid.h file is used instead of a local copy.
- AttributeList
- minor fixes to compile under win32_vc71
- FileCatalog
- In POOL_1_4_x releases, the main schema of the filecatalog are
different from that of POOL_1_3_x, i.e PFN attributes jobstatus, filestatus
are droped for performance reason.
As a consequence, old catalogs produced by POOL_1_3_x have to be
updated to the new schema. XML and EDG catalog provide command-line tools
for schema migration while MySQL catalog provides a script.
In general, it's not recommended to strip off the XML header of the catalog
for schema evolution reason.
- The catalog metadata schema handling is more flexible in POOL_1_4:
the metadata schema can be droped and updated;
in the cross catalog operations, user can choose whether to keep/update
the metadata schema.
- Logging policy has been revisited. Some Warning messages have been
moved to Info.
- FCBrowser now fully depends on PyFileCatalog for c++ - python binding.
More functionalities are added: browsing metadata, register PFN,LFN and
import from another catalog. The cache size is user configurable.
- upgraded external packages: XercesC-2.3, edg-rls-client-2.0.0,
mysql-4.0.13, mysql++_1.7.9_mysql.4.0.13
Due to the change in the installation structure of the mysql related
libraries, MySQLCatalog now depends on both scram tools: mysqlpp and mysql.
- EDGCatalog : review of the warning/info policy for lookup and register functions
- PyFileCatalog : fixed a query string in test; all tests are backend independent
- Collections
- The base Collection package has been split into two:
- CollectionBase, which defines the low level abstract interfaces handling
tokens. It depends on PersistencySvc.
- Collection, where the typed user collection classes have been kept.
- All collection implementations depend now on CollectionBase.
- First entry of the MySQLltCollection package, which is an improved version
of MySQLCollection, where tokens are handled more efficiently with the use
of a lookup table.
- MultiCollection and RootCollection : optionally utilize a FileCatalog to
locate/register the collection files.
- A python module wrapping the collections can be found under the POOL
CVS repository: pool/contrib/PyCollection
- Storage Manager
- Defines and implements a COMMIT_FLUSH mode for the transactions
- RootStorageSvc
- Removed kIsForeign bit for generated classes
- Fix bug to properly declare constructor/destructor function to ROOT. Thanks Bill!
The problem only showed up when analysing templated class names.
This is certainly not the end of the story of weird template names.
- PersistencySvc
- The commit method of ITransaction is now implemented with the StorageSvc COMMIT_FLUSH.
- A new commitAndHold method is introduced to perform a simple StorageSvc COMMIT.
- Introduced a class to retrieve technology specific attributes of a database
such as the file size in the case of ROOT.
- Improved the design of the developer level interfaces to avoid dynamic casting
an ITransaction to an IGlobalTransaction.
- DataSvc
- Introduced the changes which have been suggested during the DataSvc review.
- necessary updates to comply to the developer level interface changes in PersistencySvc.
##########################################################################################
POOL 1.3.3
----------
+ General
- Release platform RH7.3 with gcc 3.2 (both optimized and debug versions)
- Scram config area has been updated so that issuing a single "scram b" builds
all the packages, with the building order determined on the fly from the
BuildFiles of the packages.
+ Bug fixes and updates
- All packages defining a plugin category:
- Corrected the I*Info.cpp files according to the SEAL guidelines.
- Storage Manager
- Fix of the side effects caused by an object deletion.
##########################################################################################
POOL 1.3.2
----------
+ General
- Release platform RH7.3 with gcc 3.2 (both optimized and debug versions)
- Compilation flags aligned with SEAL.
- Corrected the Boost version.
+ Bug fixes and updates
- Storage Manager
- Partial fix of the side effects caused by an object deletion.
- Collections
- Fixed bug in the iterator of the RootCollection, responsible for
a segmentation violation when its destructor is called.
##########################################################################################
POOL 1.3.1
----------
+ General
- Release platform RH7.3 with gcc 3.2 (both optimized and debug versions)
- Documentation : A mini web tutorial demonstrating the usage of pool,
the building and running of applications in a standalone environment
(using simple makefiles or shell scripts) is under construction.
The first couple examples are already available.
+ Bug fixes and updates
- Storage Manager
- Transient data members (except embedded object arrays) do no longer
require the dictionary.
- The failures are accompanied with more descriptive messages.
- File Catalog
- Re-introduced the FileCatalog scripts which were missed out in 1.3.0
##########################################################################################
POOL 1.3.0
----------
+ General
- Release platform RH7.3 with gcc 3.2 (both optimized and debug versions)
- Upgraded packages external to POOL: SEAL 1.1.0, ROOT 3.05.07a
- Updated all the components to use the new SEAL MessageService and
MessageStream, through a POOL-specific context.
+ Bug fixes and updates
- Storage Manager
- Fixed most critical bugs and in the StorageSvc, RootStorageSvc
and PersistencySvc packages.
- Collections
- Use of boost shared pointer in the AttributeList.
- File Catalog
- Some minor bug fixes and performance improvements.
##########################################################################################
POOL 1.2.1
----------
+ General
- Release platform RH7.3 with gcc 3.2
- Upgraded packages external to POOL: SEAL 0.3.4, ROOT 3.05.07a
##########################################################################################
POOL 1.2.0
----------
+ General
- Release platform RH7.3 with gcc 3.2
- Upgraded packages external to POOL: SEAL 0.3.3, ROOT 3.05.06, and
edg-rls-client 2.0.0
- Please note that we did not yet incorporate SEAL 1.0 in this release
but expect this to happen shortly after. The reason for this is that
most integration tests in the experiments have been done with the
older SEAL and we did not want to risk a late upgrade now.
- Added performance tests for all components and started with some
performance improvements.
+ Bug fixes and updates
- Data Service and Ref area
- introduced configurable cache delete policy (for ATLAS)
- several bug fixes in
- memory management (allow to explicitly close objects in
the cache)
- assigment operators between Refs
- explicit (rather than implict) dynamic_cast between Refs
- mutliple inheritance from std::vector
- Storage Manager
- support for stl vector of bool
- iteration over uncommited objects (used by implicit collections)
- fixed transaction handling problem after file open mode changes
- removed need to create dictionary for non-streamed template args
- Collections
- Major performance improvements in the AttributeList and RootCollection
implementation.
- New untyped user interface providing late type checking.
- First version of the MultiCollections, i.e. Collections of Collections.
- File Catalog
- Several bug fixes in all the implementations and the python-based browser.
- First entry of a python interface module to the file catalog.
##########################################################################################
POOL 1.1.0
----------
+ General
- Release platform RH7.3 with gcc 3.2
- Upgraded packages external to pool: SEAL 0.3.2, ROOT 3.05.05, and
edg-rls-client 1.3.0
- All validation tests now in oval and run from the installation scripts
- some performance related test which require either additional h/w
resources or special interpretation by their developers are not yet
fully ovalised
- there are now 35 integration and 32 unit tests in total
- Simplified user level transaction handling
- POOL now keeps track of individual storage manager transactions for a
POOL context (DataSvc) and automatically propagates user commit/abort.
- This change will need changes (mainly deletes of explicit calls) to
existing code. Please refer to the now much simple POOL examples for how
to use the new functionality.
- Better integration (and encapsulation) of the file catalog: POOL will now
(based on a configurable policy) register new files automatically as they
are used. No explicit calls to the file catalog registrations or
transaction handling are required. Again, please see the much simplified
POOL examples.
- Documentation: First draft of the POOL V1.1 User Guide will be releases
shortly
+ StorageManager
- Support for transient data members
-declared in lcgdict class selection file
- Support for embedded C++ pointers and STL collections of them
semantics: exactly one object is pointed to by each pointer
- Support for object update (including associated low level file re-open in
update mode)
+ FileCatalog
- Checked and aligned transaction protocol between different catalog back ends
- Introduced consistent exception handling, and limit checks for string
- POOL catalog browser moved from contrib to the official release
- Added meta data population programs (currently as test) for cms meta data
+ Collections
- New support for ROOT based explicit collections (compliant to existing
interface)
- New support for implicit collections (low level functionality provided
by Storage Manager component)
+ Known bugs and limitations
- Meta data queries for EDG catalog back-end is currently done on the
client side - plan to move to server side queries as soon as this
is supported by the EDG-RLS back-end.
- POOL has not performed any systematic performance optimisation yet.
Because of the still significant changes in V1.1 this has been moved
to V1.2.
+ Related services
- Already with the last release of POOL V1.0 a EDG-RLS test service was made
available. The service has recently been upgraded to the new EDG-RLS client
used in POOL V1.1 and is still available.
Please refer to the service web pages
(http://edg-wp2.web.cern.ch/edg-wp2/replication/rls-for-pool.html)
for details on how to use this service and whom to contact in case of questions
or problems.
New EDG-RLS services dedicated to individual experiments will be
provided as part of LCG-1 (probably already later this week).
##########################################################################################
POOL 1.0.0
----------
+ General
- Release platform RH7.3 with gcc 3.2
- Upgraded packages external to pool: SEAL 0.2.1, ROOT 3.05.04, and edg-rls-client 1.2.11.
- Adoption of the SEAL plugin manager to significantly reduce compile/link time
dependencies.
- Common meta data access package (AttributeList) for the meta data of the FileCatalog and
the Collection components.
- The packages NaiveAttributeList, RootCollection, ImplicitRootCollection
and CollectionFactory are now obsolete and have been dropped.
- There are 20 integration tests and 26 unit tests in total covering
a significant part of the POOL functionality (and POOL components).
+ StorageManager
- Support for most STL containers (vector, list, and now also map, set and
deque) of concrete objects or Ref<T>
- Automatic registration of class identifiers (reflection) during
reading and writing. No need to explicitly register classes
which are default converted.
- Support for inheritance and type checking in the Ref<T>.
+ FileCatalog
- Integrated the AttributeList package for the meta data description.
- Provide query based extraction of sub-catalogs based on this meta data.
- FileCatalog holding the file type/technology information.
- Scalable iterator of the catalog
+ Collections
- New interfaces for the base collections and their associated
iterators, based on the AttributeList package for the meta data description.
- New type-safe collections with iterators behaving as Ref<T>.
- Re-implementation of MySQLCollection, based on mysql++, providing iterators
for different data serving modes (single vs multiple fetches of the query result).
+ Known bugs and limitations
- No support for storing classes in namespaces.
- No support for vectors of polymorphic objects. Planned for 1.1.
- No support for 'pure' pointers as aggregate members.
- Meta data queries for EDG catalog backend is currently done on the
client side - plan to move to server side queries as soon as this
is supported by the EDG-RLS backend.
- POOL has not performed any systematic performance optimisation yet.
Planned for 1.1
+ Related services
- Together with the release of POOL V1.0 a EDG-RLS testservice is made available.
Please refer to the service web pages
(http://edg-wp2.web.cern.ch/edg-wp2/replication/rls-for-pool.html)
for details on how to use this service and whom to contact in case of questions or problems.