× News Cego SysMT Croom Web Statistics Impressum
SysMT Logo
Change Log

In the following, change log entries for the managed software packages are shown

Last 10 30 100 1000 10000 entries

Category Date Version Log
cego 02.07.2026 2.54.38 Version released
cego 02.07.2026 2.54.38 Fix added in CegoPredicate::Constructor, for LIKE-Constructor, the case ISNOTLIKE was not treated with the right condition ( ! isNegated && isCaseSensitive => isNegated && isCaseSensitive ). This might lead to undefined _mode variable which could result in a crash.
cego 30.06.2026 2.54.37 Version released
cego 28.06.2026 2.54.37 Added cgclt command show transaction to indicate detailed transaction information. This may be useful for a deeper investigations
cego 28.06.2026 2.54.37 Added list transaction command to cgclt to retrieve open transaction information ( analog to cgadm )
cego 25.06.2026 2.54.36 Version released
cego 24.06.2026 2.54.36 Several patches added for schema change recovery operations ( alter table operations ). In CegoRecoveryManager::recoverCurrentTransactionLog, for the LOGREC_ALTER case it must be distinguished for the object types TABLE, BTREE and FKEY. After decoding altered object information from the log, just schema must be setup for the alter object, otherwise page id information is corrupted.
cego 24.06.2026 2.54.36 Further patches added regarding recovery procedure. The CegoFieldValue::setup method was changed to treat sysdate values during recovery in the right way ( local copy has to be created to save original field value information ) CegoFactor::evalFieldValue has to adapted for this
cego 24.06.2026 2.54.36 Further patches added regarding recovery procedure. The CegoFieldValue::setup method was changed to treat sysdate values during recovery in the right way ( local copy has to be created to save original field value information ) CegoFactor::evalFieldValue has to adapted for this
cego 23.06.2026 2.54.35 Version released
cego 23.06.2026 2.54.35 Fix added in CegoRecoveryManager::recoverCurrentTransactionLog for case LOGREC_UPDATE and LOGREC_DELETE. The predicate and exprlist which was allocated be CegoQueryHelper::decodeDelRec/decodeUpdRec has to be deleted after delete/update operation was performed. Otherwise this results in a memory leak and might result in an object usage leak
cego 23.06.2026 2.54.34 Version released
cego 23.06.2026 2.54.34 Added extension for backupManager to indicate number of logs to recover up to crash for the corresponding backup id. CegoAdminThread hast to be adapted to support this new information in backup list
cego 22.06.2026 2.54.34 Some more code cleanup done
cego 21.06.2026 2.54.33 Version released
cego 20.06.2026 2.54.33 Some optimizations made for CegoFunction and CegoProcedure regarding procedure cache handling. To store proc cache values, SetT has been replaced by HashT. Furthermore, for recursive calls, the cache of the nested procedure instance is propagated to the enclosing instance ( I guess, this is just theoretically useful :)
lfcbase 17.06.2026 1.23.6 Version released
lfcbase 17.06.2026 1.23.6 Some compiler warning elimination for class Chain::toUpper and toLower ( dynamic wText allocation )
cego 17.06.2026 2.54.32 Version released
cego 16.06.2026 2.54.32 Added new admin command object usage to show usage of tableset objects which reflects the useObject method of CegoDatabaseManager.
This might be useful to detect any usage leaks and to get an overview of objects in use by running database threads
cego 16.06.2026 2.54.32 Small code adaptions for CegoFunction regarding procedure management ( replaced procedure stack for recursive procedure call by a single variable which is enough ) Added check127 for performance comparison of recursive versus iterative approaches ( anyhow, recursive approach makes sense for several design aspects :)
cego 15.06.2026 2.54.31 Version released
cego 15.06.2026 2.54.31 Patch added in CegoQueryManager, _authUser has to be stored locally, otherwise setUser method looses user information, if auth was not enabled
cego 15.06.2026 2.54.30 Version released
cego 14.06.2026 2.54.30 Added admin command set maxpagedelete to set up maximum number of pages marked for delete before forcing a checkpoint. This value is refreshed now with each checkpoint, so it can be adjusted hot.
cego 14.06.2026 2.54.30 Procedure cache basically works. A good example for usage is the procedure calcFibonacci, which calculates fibonacci numbers in a recursive manner :
drop if exists procedure calcFibonacci;
@
create procedure calcFibonacci(n in int) return int
begin
        var f int;
        var c int;
        if :n > 2
        then
                :f = calcFibonacci( :n - 1 ) + calcFibonacci( :n - 2 ); 
        else
                :f = 1;
        end;
        return  :f;
end;
@
With enabled proc cache, subsequent calls of calcFibonacci result in an improved performance, since the calculation is detected as static and can be cached :
CGCLT > select calcFibonacci(10);
+-------------------+
|              FUNC |
| calcFibonacci(10) |
+-------------------+
|                55 |
+-------------------+
1 tuples
ok ( 0.073 s )
CGCLT > select calcFibonacci(10);
+-------------------+
|              FUNC |
| calcFibonacci(10) |
+-------------------+
|                55 |
+-------------------+
1 tuples
ok ( 0.000 s )
cego 14.06.2026 2.54.30 Reanimation of procedure cache. This feature was still just drafted. If procedure cache is enabled, calculated static values are stored to a local procedure cache and can be retrieved for subsequent calls of this procedure. The cache values are just used for static procedure return values, e.g. if values are calculated using nested queries, cache is not used.
cego 13.06.2026 2.54.29 Version released ( including post patch )
cego 13.06.2026 2.54.28 Post patch for this version : In CegoFieldValue::castTo, changed __dateFormatLock to writeLock. This is needed, since with readlock the _dateFormatList could be traversed in parallel by the Datetime constructor. This may lead to concurreny issues
cego 13.06.2026 2.54.28 Version released
cego 13.06.2026 2.54.28 More code reorganization for CegoAuthManager, CegoQueryManager and CegoTableManager regarding the following design strategy : TableManager contains low level data access methods, QueryManger contains high level access and AuthMenager contains authorized access methods
cego 12.06.2026 2.54.28 Consolidation work done for CegoTableManager and CegoAuthManager ( including renaming from CegoQueryManager to CegoAuthManager )
cego 11.06.2026 2.54.28 Changed return code of CegoBufferPool::writeCheckPoint to int to return the exit code of the optional escape command. This exit code then is indicated in the admin console
cego 09.06.2026 2.54.27 Version released
cego 09.06.2026 2.54.27 Some log mesage cleanup done for CegoRecoveryManager, CegoQueryManager and CegoTableManager. No functional impact in this patch
cego 01.06.2026 2.54.26 Version released
cego 01.06.2026 2.54.26 The previous patch is non-critical, since the method valueToFVL is actually just just by the btree verification
cego 01.06.2026 2.54.26 Bug fix in CegoBTreeValue::valueToFVL, idxPtr was increased to idxPtr += len + 1 in else condition of nullIndicator == 1, must be idxPtr += len instead, since further increment must be done, if isNullTermined returns true. ( compare this method to CegoBTreeValue::toChain, which is correct )
cego 24.05.2026 2.54.25 Version released
cego 24.05.2026 2.54.25 Introduced crash recovery autocorrect option ( direct and post ) for index rebuild either direclty after invalidating index during recovery or at at the end of the recovery procedure.
post advantage : in case of many insert operations during recovery, this might lead to a faster recovery time, since index is invalidated and not treated
direct advantage : in case of index oriented update operations, this might lead to a better recovery performance
cego 23.05.2026 2.54.25 A recovery issue occured when using user function is expression list for update operations. For expressions containing user functions, the values for CegoQueryManager and tabSetId have to be setup explicit, since this is not done by redo log decoding. The coresponding setup method setQueryManager has been added for all involved classes ( CegoExpr, CegoTerm, CegoFactor, CaseCaseCond, etc )
Furthermore a new global variable CegoFieldValue::__recoveryTS has been introduced. During transaction recovery, this variable is setup to the corresponding recovery timestamp. So the constant datatime value sysdate is setup to the current recovery timestamp value ( otherwise the current timestamp is used )
cego 13.05.2026 2.54.24 Version released
cego 12.05.2026 2.54.24 Added btree dump implementation to CegoAction::execDumpBTree
cego 12.05.2026 2.54.24 More cleanup of dump statements ( moved dump table / btree statements from CegoAdm.def to Cego.def ). Dump still supported for table objecs ( TODO : dump of btree objects )
cego 11.05.2026 2.54.24 In CegoFunction::evalFieldValue, case USERDEFINED, removed cout debugging statements
cego 08.04.2026 2.54.23 Version released
lfcbase 08.04.2026 1.23.5 Version released
lfcbase 08.04.2026 1.23.5 Fix added in File::operator = and File:operator +=, after file copy operation, source file descriptor was not closed. This might lead to file descriptor leaks.
cego 08.04.2026 2.54.23 In CegoXMLSpace, set initial value for __fsyncOn = false ( was not initialized )
Small code cleanup in CegoArchiveThread
cego 07.04.2026 2.54.22 Version released
lfcbase 07.04.2026 1.23.4 Version released
lfcbase 07.04.2026 1.23.4 Improved error message for File::open with strerror details added
cego 07.04.2026 2.54.22 Added patch in CegoArchiveThread::job, in case of an exception while shifting logs, the sleep is also executed. This avoids log file noise in case of a repeating error, e.g. if the shifting logfile cannot be accessed for any reason
cego 25.03.2026 2.54.21 Improved checkpoint recovery. If crash occurs during checkpoint with enabled cpdump, the dump file is checked and if required, moved to ready state. This ensures a stable recovery also if a crash occurs after database xml is written and before the checkpoint dump file was moved to ready.
cego 25.03.2026 2.54.21 Version released
cego 25.03.2026 2.54.21 Cleanup work done for several encoding / decoding methods. Decoding constructors ( e.g. CegoSelect, CegoFactor, CegoTerm, etc ) have been reduced and for encoding, just the CegoProcBlock instance is needed ( for update query encoding inside procedures )
cego 22.03.2026 2.54.20 Version released
cego 22.03.2026 2.54.20 small code cleanups
cego 21.03.2026 2.54.19 Version released
cego 20.03.2026 2.54.19 Improvement added to thread pool initialization ( db and admin ), if any network address cannot be bind, the daemon terminates immediately with error message ( introduction of init method to CeegoAdminThreadPool and CegoDbThreadPool )
cego 15.03.2026 2.54.18 Version released
cego 15.03.2026 2.54.18 Improved exception handling for NETMNG_MAXSERCHAIN validation in CegoNet and CegoClient. In case of a validation, the connection on client side is closed in a controlled way with message "Fatal protocol error". Since there is no way to get more information from server side, this is ok. On server side, in case of MAXSERCHAIN validation, the connection must be closed immediately ( also for security reasons ), since the serial protocol can not be reset or recovered
In CegoDefs, NETMNG_MAXSERCHAIN has been increased to 4MB
cego 14.03.2026 2.54.17 Version released
cego 14.03.2026 2.54.17 In CegoDefs.h, introduced NETMNG_MAXSERCHAIN which defines the maxium length of a serial protocol message ( see CegoSerial.h )
For database configuration, which are using CLOBS, this value should bet setup large enough ( standard now 1MB )
cego 13.03.2026 2.54.16 Version released
cego 13.03.2026 2.54.16 Fix for include added in CegoXMLSpace.h ( CegoAdminHandler.h was included with brackets, which leads to compile problem for using packages, should be included with quotes )
cego 05.03.2026 2.54.15 Version released
cego 05.03.2026 2.54.15 In CegoClient, query abort via Cntrl-C was broken. This was caused by the pager mode expansion, which requires a special signal handling setup. For interactive mode, setup method was introduced to setup signals SIGINT and SIGPIPE
cego 05.03.2026 2.54.15 In CegoTableManager::checkBTreeIntegrity, improved message for duplicate btree values ( with validating btree value )
cego 02.03.2026 2.54.14 Version released
cego 01.03.2026 2.54.14 Completed verify locks command with missing pool, querycache, tablecache, db and xml locks
cego 01.03.2026 2.54.13 Version released
cego 01.03.2026 2.54.13 In CegoLockHandler, added check for unlock methods to check for lockId == 0. This ensures to avoid unlock operations of undefined lockIds which can impact semaId=0 ( first record lock ). It has been observed, that in deadlock situations, this might lead to locking leaks for RECLOCK-0
cego 01.03.2026 2.54.13 In CegoTableManager::checkBTreeIntegrity added support for allowDuplicateNull feature ( multiple null values in unique btree )
cego 28.02.2026 2.54.12 Version released
cego 27.02.2026 2.54.12 Fix added in CegoQueryHelper::maxFieldSize. The returned size must be at least MAX_NULL_LEN, otherwise format errors occur ( string(1) field with null values )
cego 27.02.2026 2.54.12 Added admin command "verify locks" to perform a test aquire of all lock manager locks read and write
cego 27.02.2026 2.54.11 Version released
cego 27.02.2026 2.54.11 Small exception improvement added for CegoFactor::evalFieldValue for query case
cegojdbc 25.02.2026 1.16.1 removed logback.xml to avoid logging side effects
cego 25.02.2026 2.54.10 Version released
cego 24.02.2026 2.54.10 Rework of tableset verification procedure. Using plain output format now, more details added and bugs removed
cego 24.02.2026 2.54.9 Version released
cego 24.02.2026 2.54.9 Added patch in CegoBtreeNode::verifyLeafFull. Before decoding values via CegoQueryHelper::decodeFVL, the btree schema has to be sorted in terms of field id. Otherwise, decoding might be not complete in case of non-ascending btree attributes.
cego 19.02.2026 2.54.8 Version released
cego 19.02.2026 2.54.8 Fix added in CegoAdminThread::srvVerifyTableSet for view loop iterator
Cleanup distributed legacy stuff in CegoAdminHandler::syncWithInfo
cego 14.02.2026 2.54.7 Version released
cego 13.02.2026 2.54.7 Added patch in CegoAction::execProcCall and CegoAction::execFuncCall, in case of an exception, for the procedure instance, a cleanup should be called, otherwise the lock will not be released
fail002 has been added for this scenario
cego 08.02.2026 2.54.6 Version released
lfcbase 08.02.2026 1.23.3 Version released
cego 08.02.2026 2.54.6 More rework done for CegoAdmScreen to support current backup and restore features. Also added online help.
cego 07.02.2026 2.54.6 More cleanup and improvements done for CegoAdmScreen ( cgadm curses based admin interface )
cego 07.02.2026 2.54.6 Added dbcheck/failcheck to also check correct handling of failed queries
cego 07.02.2026 2.54.6 Improvements added for CegoAdmScreen ( e.h. help text at the bottom line )
cego 07.02.2026 2.54.6 Fixes added for CegoFieldValue:castTo. In case of thrown data conversion exceptions, is is ensured, that _pV is set to _staticBuf after freed, otherwise memory fault cause by double free in desctructor may occur
lfcbase 07.02.2026 1.23.3 Fixes added for Screen class regarding. Some calculations where broken caused by the int to unsigned cleanup
cego 05.02.2026 2.54.5 Version released
cego 05.02.2026 2.54.5 Added patches to CegoBufferPool, CegoLogManager and CegoArchiveThread. The synchronization of the database xml file ( method CegXMLSpace::doc2Xml ) at daemon runtime is just executed during checkpointing. This should result in consistency for checkpoint lsn and current active logfile setup ( the doc2Xml method call in CegoLogManager::switchLogFile before resetLog lead to non reset log file in case of a system crash and error message "lsn too high" during startup recovery )
cego 04.02.2026 2.54.4 Version released
cego 03.02.2026 2.54.4 Improved ts initfile handling. In case of an init file error, just an error is indicated with tableset startup success In CegoAdmScreen, added start recovery and stop recovery for db shadow mode