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 | 18.08.2025 | 2.52.29 | Version released |
cego | 17.08.2025 | 2.52.29 | In CegoDbThread::serveRequest, added further tableset states ( BACKUP, CHECKPOINT ) where sessions are accepted |
cego | 17.08.2025 | 2.52.29 | Renamed new option forcestart to lockexpire. Since the argument expects an expire value, this seems to be a better naming. Added lockexpire option to bsd rc script |
cego | 14.08.2025 | 2.52.28 | Version released |
cego | 14.08.2025 | 2.52.28 | Added command line option forcestart with integer parameter seconds exceeded. If set, this option will check for the configured daemon lockfile and if the timestamp of the lockfile is older than now - seconds exceeded, the lock file is removed and the database is started. Since in the meantime, the database crash recovery seems to be pretty stable, this option makes sense. |
cego | 13.08.2025 | 2.52.28 | Improved input handling in CegoClient. For interactive mode, trailing LF, CR and multiple semicolons are cut now. |
cego | 11.08.2025 | 2.52.27 | Version released |
cego | 10.08.2025 | 2.52.27 | Some code cleanup done in CegoSelect::nextTuple for code isolation regarding start and finish caching ( methods startCaching and finishCaching have been introduced ) Another performance patch was made regarding CegoSelect::reset method. Freeing table cursors is no more needed, so doRelease parameter was removed from the method. It is expected, that nested views and subqueries in expressions which are traced multiple times should run pretty faster. |
cego | 08.08.2025 | 2.52.26 | Version released |
cego | 08.08.2025 | 2.52.26 | Version released |
cego | 08.08.2025 | 2.52.26 | For the admin command "threadinfo db", lastAction was added to the threadlist to indicate the current processed query. Once, this was indicated by "threadinfo db <thrid>", but was lost with introduction of query history |
cego | 08.08.2025 | 2.52.26 | Added format improvements for CegoAction::getPlanString to indent subqueries |
cego | 08.08.2025 | 2.52.26 | Added fix in CegoPredicate::eval, the cleanUp method call was removed, since this seems to be not needed and throttles performance in case of nested select statements |
cego | 01.08.2025 | 2.52.25 | Version released |
cego | 01.08.2025 | 2.52.25 | Fix added in CegoAttrCond::asConjunctionList, for the _isAnd == false case, the attr name also must be mapped to alias name from expression list to satisfy views, where attribute names are mapped |
cego | 31.07.2025 | 2.52.24 | Version released |
cego | 31.07.2025 | 2.52.24 | Added fix for combined conditions with in-expr predicate ( in-expr and comparison, e.g invnr like '%4711%' and status in ( 'EDIT', 'REVIEW' ) For these kind of conditions, CegoQueryHelper::checkAttrCond must priorize one of the predicates. For this, new method CegoAttrCond::hasIndexCandidate has been introduced |
cego | 27.07.2025 | 2.52.23 | Version released |
cego | 26.07.2025 | 2.52.23 | The optimization expansion basically works. Several code modules around CegoAttrCond have been adapted to support this expansion. Execution plans for several test cases look good and test suite runs without any errors. |
cego | 25.07.2025 | 2.52.23 | Started with further join optimization for in-exprlist-Conditions. This idea is, to expand CegoAttrCond with a isAnd-Flag. If flag ist not set, the contains CegoAttrComp set which are treated as a or-list. CegoTableCursor then uses this or-list ( instead of a and-list ) and traces for each attribute comparison via btree cursor This optimization will just work for in-expr conditions ( e.g. a in ( 'alpha', 'beta', 'gamma') ) but NOT for any other or-Condition |
cego | 24.07.2025 | 2.52.22 | Version released |
cego | 24.07.2025 | 2.52.22 | Fixed a memory leak in both CegoDistCursor::distSetup methods. _pJoinPred must be freed before allocate it via CegoPredicate::getReduced method |
cego | 24.07.2025 | 2.52.22 | To join plan added information for master predicate ( eval on level 0 ) For master predicate mapping, added case cond case |
cego | 23.07.2025 | 2.52.22 | More work on check123.sql to render random invoices which is useful to perform queries on larger filled tables |
cego | 23.07.2025 | 2.52.21 | Version released |
cego | 22.07.2025 | 2.52.21 | Several patches have been addd to handle join master predicate in the most optimal way. To show several condition cases, check123.sql has been introduced to demonstrate the join optimization for different join cases |
cego | 21.07.2025 | 2.52.21 | For the new introduced master predicate handling, there was still missing some case handling. To map consequently a view condition to the unerlying join, a more sophisticed mapping is needed. For this, further mapping methods have been introduced in CegoExpr, CegoTerm, CegoFactor, CegoFunction and CegoCondition E.g. for the following query on the view companyview plan select cpid from companyview cv where lower(cv.cpname) like '%%' or debnr = 3; The master condition now is mapped as can be seen in the execution plan ... Joining table company (cp) with full table scan with master condition (cp.debnr) = 3 or lower((cp.cpname)) like '%%' ... Still just a subset of any possible master condition is actually mapped inside the view join. If no mapping is possible, the condition must be evaluated outside with a possibly lower performance |
cego | 20.07.2025 | 2.52.20 | Version released |
cego | 20.07.2025 | 2.52.20 | Added verify010 db check with a small invoice er model. This is used for advanced query verification with multilevel nested views and other dynamic stuff which is also relevant to proof valid results from query cache |
cego | 19.07.2025 | 2.52.20 | Added fix in CegoAction for the following query: select invid from invoice where status = ( select 'OPEN' ); In CegoAction::noFromOption, for _coListStack has to be pushed empty coList |
cego | 19.07.2025 | 2.52.20 | For the new introduced query optimization, several code extensions have been added. In CegoPredicate, new methods map, getReduced, mapExpr and reduceExpr have been added to convert the "master" predicate to an appropriate form, which can be handled by CegoDistCursor. Also for for CegoDistCursor, the distSetup methods have been expanded to propagate the master predicate |
cego | 18.07.2025 | 2.52.20 | Performance optimization added in CegoSelect and CegoDistCursor for or-condition handling If an or-condition is recognized, the predicate is propagateed to the corresponding join level cursor and the evaluation is handled by the cursor. This might avoid large table cursor result sets for the embedding join and might improve overall performance of the query |
cego | 16.07.2025 | 2.52.19 | Version released |
lfcbase | 16.07.2025 | 1.22.1 | Version released |
lfcbase | 15.07.2025 | 1.22.1 | More patches on Replacer class to handle more match and replace cases. The match token has been changed to $ char to treat database integration. |
cego | 14.07.2025 | 2.52.19 | Started with integration of lfcbase Replace class. For this, new function regmatch was added |
lfcbase | 13.07.2025 | 1.22.0 | Version released |
lfcbase | 13.07.2025 | 1.22.0 | More work on Replacer class with heafy rework of orgiginal regex_replace.c code. The original code did not treat many cases, e.g. replace string without prefix, multiple replace references and so on. |
lfcbase | 12.07.2025 | 1.22.0 | Added further fixes for BigDecimal, scale handling still not correct for some cases |
lfcbase | 11.07.2025 | 1.22.0 | Added class Replacer to support string replacement based on regular expressions ( like unix sed ) |
lfcbase | 11.07.2025 | 1.21.9 | Version released |
lfcbase | 11.07.2025 | 1.21.9 | Fix added to BigDecimal class for internal constructor to normalize zero values to "0" and in scaleTo method to treat zero values correctly |
cego | 10.07.2025 | 2.52.18 | Version released |
lfcbase | 10.07.2025 | 1.21.8 | Version released |
cego | 09.07.2025 | 2.52.18 | Added suport for lfcbase-1.21.8 ( BigDecimal::RoundMode ), Round mode ist setup in dbxml via database ROUNDMODE attribute ( either UP, DOWN, HALFUP, HALFDOWN ) |
lfcbase | 09.07.2025 | 1.21.8 | For class BigDecimal::scaleTo, added RoundMode parameter which can either be UP ( round up ), DOWN ( round down ) , HALFUP ( round up if neigbours equidistant or higher ) or HALFDOWN ( rond down if neighbors are equidistant or lower ) |
cego | 08.07.2025 | 2.52.17 | Version released |
cego | 08.07.2025 | 2.52.17 | Added datetime cast operator to convert from string value to datetime. If used, this avoids expensive real time cast operations for queries and should accelerate execution time |
cego | 08.07.2025 | 2.52.16 | Version released |
cego | 08.07.2025 | 2.52.16 | In CegoFieldValue::toChain, for case DATETIME resulting string was corrected. In the meantime, we avoid date value construction via date/scandate function, either the required value is calculated via cast. So just the date string value is provided in the defined datetime formt. |
cego | 07.07.2025 | 2.52.15 | Version released |
cego | 06.07.2025 | 2.52.15 | Added performance patch to CegoSelect::buildJoinConditions. pPred is set to checked if analyzed as complete, also if the predicate is external ( setup via setViewCond ) In the meantime, external conditions are fully handeled via CegoDistCursor |
cego | 04.07.2025 | 2.52.14 | Version released |
cego | 04.07.2025 | 2.52.14 | To provide an appropriate output length for datetime values, date format evaluation has been added to CegoMain which sets up __dateLength. This global variable then is used by CegoQueryHelper to provide appropriate length ( method maxFieldSize ) |
cego | 04.07.2025 | 2.52.13 | Note : If check contraints are used, tableset export and import is required for this version ! |
cego | 03.07.2025 | 2.52.13 | Version released |
cego | 03.07.2025 | 2.52.13 | Introduction of nclike operator for case insensitive pattern matching ( analog usage as like operator ) |
cego | 03.07.2025 | 2.52.12 | Version released |
cego | 02.07.2025 | 2.52.12 | Patch addded in CegoTerm::getSelectQueryList to retrieve subselects also for case conditions and nested conditions. So this affects also class CegoFactor, CegoCaseCond and CegoCondition which have to provide the getSelectQueryList method. This extension is required to retrieve appropriate table sets for query cache decicisions |
cego | 25.06.2025 | 2.52.11 | Version released |
cego | 25.06.2025 | 2.52.11 | Fix added in CegoQueyHelper::evalAttrCond, COMPLETE value must be returned in flArray loop and if not found PARTIAL must be returned ( return was missing ) |
cego | 21.06.2025 | 2.52.10 | Version released |
cego | 21.06.2025 | 2.52.10 | Added tableset online check in CegoDbThread::serveRequest. This avoids query execution of any connected client during recovery phase |
cego | 20.06.2025 | 2.52.10 | Improved log trace in CegoDistManager::startTableSet to log complete stack trace in case of tableset startup failure |
cego | 15.06.2025 | 2.52.9 | Version released |
cego | 15.06.2025 | 2.52.9 | Added duplicate check for table aliases in CegoSelect::evalReferences |
cego | 15.06.2025 | 2.52.9 | In CegoSelect::getPlan, added parentJoinBuf setup for nested queries in expression list to evaluate join plan correctly ( parentJoinBuf is required for analysis in CegoQueryHelper::checkAttrCond) |
cego | 15.06.2025 | 2.52.9 | Fix added in CegoDistCursor::joinSetup, for outerCond calculation, also null value comparisons are used, since leads to correct join results and can be optimized by using btrees. ( set attrCond.getFilterCond(outerSchema, false) to (outerSchema, true) for left outer and right outer join) |
cego | 09.06.2025 | 2.52.9 | In CegoAdminHandler::getUserInfo, increased size of NUMREQ and NUMQUERY from 10 to 12, which could be usefulfor some long running system with many requests ( > 1000 000 000 requests ) Added pack mode in CegoClient for a better representation of large string column definitions. A number of packsize rows is analyzed and the schema is packed for minimal column length, e.g. CGCLT > desc table t1; +-----------+-----------+-----------+-----------+-----------+-----------+ | TABLEDESC | TABLEDESC | TABLEDESC | TABLEDESC | TABLEDESC | TABLEDESC | | ATTR | TYPE | LENGTH | DIM | DEFAULT | NULLABLE | +-----------+-----------+-----------+-----------+-----------+-----------+ | a | int | 4 | 0 | null | yes | | b | string | 300 | 0 | null | yes | +-----------+-----------+-----------+-----------+-----------+-----------+ 2 tuples ok ( 0.001 s ) CGCLT > select * from t1; +-----------+-------+ | t1 | t1 | | a | b | +-----------+-------+ | 1 | Hello | +-----------+-------+ 1 tuples ok ( 0.001 s ) |
cego | 31.05.2025 | 2.52.8 | Version released |
cego | 31.05.2025 | 2.52.8 | Fix added in CegoSelect constructors to initialize _joinLevel to 0. A problem may arise, if the reset method is called without a previous select analyse which happens in nested subselects |
cego | 30.05.2025 | 2.52.7 | Version released |
cego | 30.05.2025 | 2.52.7 | Patch added in CegoPredicate::getExprOnlyValue, changed return value from reference to value |
cego | 28.05.2025 | 2.52.6 | Version released |
lfcbase | 28.05.2025 | 1.21.7 | Version released |
cego | 28.05.2025 | 2.52.6 | Patch added in CegoCondition and CegoPredicate for arithmetic expression evaluation. The recent grammar modification limits enclosed arithmetic expression to logic expressions. This leads confusing results e.g. for select ( a + b ) / 2 from t1 since ( a + b ) is evaluated as a condition with a logical value as the result ( true or false ) ( caused by grammar production : Factor -> LB Condition RB ) Arithmetic expressions are just parsed with grammar production Predicate -> Expr ( expression only ), so for this case now a special handling has been added ( with new introduced method CegoPredicate::getExprOnlyValue ) |
lfcbase | 17.05.2025 | 1.21.7 | Added improvements to Pager class, e.g. case insensitive search and message box at end of search ) |
cego | 12.05.2025 | 2.52.5 | Small adaptions made for Debian ( in cgwtest.c, cast added to malloc for CGClob and CGBlob allocation ). There are still required some changes for the testsuite shell scripts to safisty Debian flavour ( expimpcheck ) |
cego | 11.05.2025 | 2.52.4 | Version released |
cego | 11.05.2025 | 2.52.4 | Adaptions made for pager history feature |
lfcbase | 11.05.2025 | 2.21.6 | Version released |
lfcbase | 10.05.2025 | 1.21.6 | Added history feature to Pager class. Command history can be loaded and saved with readHistory and writeHistory methods. Navigation through command history in Edit mode with Cntrl-P and Cntrl-N |
lfcbase | 10.05.2025 | 1.21.6 | In Pager class, added buffer scrolling in editor part. Preparation started for Pager command history management |
cego | 05.05.2025 | 2.52.3 | Version released |
lfcbase | 05.05.2025 | 1.21.5 | Version released |
cego | 05.05.2025 | 2.52.3 | Adaptions made for lfcbase-1.21.5 |
lfcbase | 05.05.2025 | 1.21.5 | Added virtual method hasData to Pager class. The method must be implemented to indicate, if an execution returns a result set. If no result set is returned, just a message box is shown and edit mode is left ). This seems to be useful for DML queries ( insert, udate, delete, create, drop, ...) |
lfcbase | 04.05.2025 | 1.21.4 | Version released |
lfcbase | 04.05.2025 | 1.21..4 | To support several keyboard layouts, changed some window control sequences from Cntrl-Key to ESC key ( e.g. Esc-h is now help in edit mode ) |
lfcbase | 02.05.2025 | 1.21.3 | Version released |
lfcbase | 01.05.2025 | 1.21.3 | Added pattern search feature for Pager class |
cegojdbc | 01.05.2025 | 1.14.0 | Version released |
cegojdbc | 01.05.2025 | 1.14.0 | Support added for cego-2.52 |
cego | 01.05.2025 | 2.52.2 | Version released |
lfcbase | 01.05.2025 | 1.21.2 | Version released |
cego | 01.05.2025 | 2.52.2 | Fixes made for CegoFunction regarding Datetime long long values ( e.g. date2str from int to long long ) |
lfcbase | 01.05.2025 | 1.21.2 | Patches added in Datetime class to complete change from unsigned long long to long long value |
cego | 30.04.2025 | 2.52.1 | Version released |
lfcbase | 30.04.2025 | 1.21.1 | Version released |
cego | 30.04.2025 | 2.52.1 | Added patches for abort handler to cgclt pager mode Queries now can be interrupted with Cntrl-C also in pager mode |