notbugAs an Amazon Associate I earn from qualifying purchases.
Want a good read? Try FreeBSD Mastery: Jails (IT Mastery Book 15)
All times are UTC
non port: databases/cego/distinfo

Number of commits found: 288 (showing only 100 on this page)

1 | 2 | 3  »  

Sun, 14 May 2023
[ 10:12 Kurt Jaeger (pi) search for other commits by this committer Author: Björn Lemke ]    commit hash:14202f58e98f1217b84ee06f86538edf18edd913  commit hash:14202f58e98f1217b84ee06f86538edf18edd913  commit hash:14202f58e98f1217b84ee06f86538edf18edd913  14202f5 
databases/cego: update 2.48.23 -> 2.48.25

- Performance improved for stored procedures.
  In CegoFunction, the procedure handle is now stored after first
  stored procedure call ( instead of freeing the handle and requesting
  it again with the next call )
  So for subsequent function calls, the handle is already available,
  which improves stored procedure execution time significantly.
  As a consequene, code has been added for cleanUp the handle at
  the end of the query ( object is also in use during the whole
  query with CegoDatabaseManager::useObject and must be unused by cleanup )
- Patch added in CegoFunction to avoid useObject leaks
Fri, 28 Apr 2023
[ 19:24 Kurt Jaeger (pi) search for other commits by this committer Author: Björn Lemke ]    commit hash:9b184369780286eaf422af87a7febade83ba4016  commit hash:9b184369780286eaf422af87a7febade83ba4016  commit hash:9b184369780286eaf422af87a7febade83ba4016  9b18436 
devel/lfcbase,databases/cego: update 1.18.3 -> 1.18.5, 2.48.19 -> 2.48.23

- Added scrollable feature to Screen2::Message, so longer messages can
  now be handled by the panel
- improvements for Screen2:Message panel

- Added default append mode setting for tableset.
  WIth cgadm the appendmode can be setup ( e.g. enable appendmode for TS1 )
  It may be useful to have enabled appendmode at default for insert
  intensive tableset configurations
- Fix added for CegoAdmScreen in tableset parameter panel.
  Initfile was not setup correctly
  ( null value indicated, should be empty string )
- Changes in CegoAdmScreen::DBThread panel to show long queries
  with new Screen2::Message panel
- Patch added in CegoTableManager::updateTuple,
  reactivated evalExtTableReferences method call,
  since this is needed for update with nested selects,
  where external attributes are referenced
  in combination with enabled query cache
  ( e.g. update t1 set a = ( select a from t2 where t1.b = t2.b ) )
Tue, 7 Mar 2023
[ 10:58 Kurt Jaeger (pi) search for other commits by this committer Author: Björn Lemke ]    commit hash:9c66b76f4317f9b180626d579e7cbf6b03ab8531  commit hash:9c66b76f4317f9b180626d579e7cbf6b03ab8531  commit hash:9c66b76f4317f9b180626d579e7cbf6b03ab8531  9c66b76 
devel/lfcbase,databases/cego: update

lfcbase: 1.18.0 -> 1.18.3
- Opimization in Screen2 to customize screen refreshes
  ( introduced virtual method Panel::doRefresh )

cego: 2.48.15 -> 2.48.19
- Fix added for CegoAdmScreen, the data file root path was not added
  to new datafiles in the 'tableset add datafile mask'
- Fixes added for CegoAdmScreen, to avoid too many admin requests,
  backup panel and data file panel are just refreshed initially and
  after add objects.
- Fix added in CegoObjectManager::alterObject, the getNewFilePage has
  been changed to type CegoObject::SYSTEM. Otherwise, a page from a
  tuple datafile is allocated, which results in strange effects
- Some adaptions for extended Screen2 interface with refresh customizing.
Thu, 26 Jan 2023
[ 19:07 Kurt Jaeger (pi) search for other commits by this committer Author: Björn Lemke ]    commit hash:b76b5eb90168ece763a6d59cfce791727636b064  commit hash:b76b5eb90168ece763a6d59cfce791727636b064  commit hash:b76b5eb90168ece763a6d59cfce791727636b064  b76b5eb 
databases/cego: 2.48.14 -> 2.48.15

- Fixes added in CegoAction and CegoSelect to treat cego parser
  with tablemanager pointer = 0.
  This is needed for cegobridge to parse procedures and generated
  other db specific code
Tue, 24 Jan 2023
[ 10:49 Kurt Jaeger (pi) search for other commits by this committer Author: Björn Lemke ]    commit hash:314ad8b61a980fe77aeb170b6742af1503aad7dc  commit hash:314ad8b61a980fe77aeb170b6742af1503aad7dc  commit hash:314ad8b61a980fe77aeb170b6742af1503aad7dc  314ad8b 
databases/cego: 2.48.10 -> 2.48.14

- Fix added in CegoObjectManager::alterObject, after freeing old page entry,
  page should be unfixed with marked as dirty. In the main loop,
  unfix has been changed to dirty = false
- Added function dateformat which can be feeded with two expressions
  to return a datetime value from a given format and value string (
  analog to date(x,y) which expects constant input values )
- Added more date functions to the datefunc package. Now there are
  the following date functions available
  int second(datetime d)
  int minute(datetime d)
  int hour(datetime d)
  int day(datetime d)
  int month(datetime d)
(Only the first 15 lines of the commit message are shown above View all of this commit message)
Tue, 3 Jan 2023
[ 12:31 Kurt Jaeger (pi) search for other commits by this committer Author: Björn Lemke ]    commit hash:c4bd7112177b15db430300f39f86ac6356029572  commit hash:c4bd7112177b15db430300f39f86ac6356029572  commit hash:c4bd7112177b15db430300f39f86ac6356029572  c4bd711 
devel/lfcbase: update 1.17.2 -> 1.18.0

- Fix for some geometries in Screen::showFormBox
- Further improvements for Screen::showFormBox and showInfoBox
  ( selected rows and newline treatment )
- integrate Screen2 interface

databases/cego: update 2.48.2 -> 2.48.10

- Introduced Backup branch id for online backup verification. Due
  to datafile page id constraints, just online backups can be recovered
  inside one backup branch. Creation of a tableset and adding a
  datafile to a tableset violates this contraint, so a new backup
  branch is created.
- Added backup branch option for backup manager. So just valid
(Only the first 15 lines of the commit message are shown above View all of this commit message)
Fri, 18 Nov 2022
[ 19:23 Kurt Jaeger (pi) search for other commits by this committer Author: Björn Lemke ]    commit hash:68b2a25ae09b6a2c8e268b1b661c0cba01dde15f  commit hash:68b2a25ae09b6a2c8e268b1b661c0cba01dde15f  commit hash:68b2a25ae09b6a2c8e268b1b661c0cba01dde15f  68b2a25 
devel/lfcbase: update 1.16.6 -> 1.17.2, databases/cego: 2.47.31 -> 2.48.2

- Improvements done for ncurses based Monitor class.
  Added confirm box and improved form box
- many changed have been made to Screen class ( was Monitor ).
  The changes require a recompile for consuming packages ( here : cego )
- Improvements done for Screen::showFormBox ( scrolling content in input mask )

- Fix added in CegoFactor and CegoFieldValue.
  To get the factor id for query cache management, a dedicated
  method was introduced in CegoFieldValue ( getId ) This method
  uses for DATETIME values valAsChain(true) ( to evaluate current
  timestamp in case of sysdate values ) and for all others toChain()
(Only the first 15 lines of the commit message are shown above View all of this commit message)
Fri, 23 Sep 2022
[ 14:42 Kurt Jaeger (pi) search for other commits by this committer Author: Björn Lemke ]    commit hash:fcbe84c2b40fad3629be2b974a6b8c968602ae3d  commit hash:fcbe84c2b40fad3629be2b974a6b8c968602ae3d  commit hash:fcbe84c2b40fad3629be2b974a6b8c968602ae3d  fcbe84c 
databases/cego: 2.47.30 -> 2.47.31

Fix added in CegoTableManager::alterDataTable, the altering table
object has to be retrieved completely via getObject to setup
data page id and last data page id. With the new introduced
object manager method alterObject, these values
are not copied during the alter procedure.
[ 08:53 Kurt Jaeger (pi) search for other commits by this committer Author: Björn Lemke ]    commit hash:35129a4e7c0390c113875a2f34c8cb19e1fdccce  commit hash:35129a4e7c0390c113875a2f34c8cb19e1fdccce  commit hash:35129a4e7c0390c113875a2f34c8cb19e1fdccce  35129a4 
databases/cego: 2.47.29 -> 2.47.30

Fix in CegoObjectManager for alterTableObject.
If a new system page has to be allocated, this page was not linked.
This might lead to loss table objects for corresponding altering
queries. Furthermore, the ObjectManager has been cleaned up and
reduced in code size in such a way that generic create and alter
methods are now provided for all objects
( createObject and alterObject using encoding method inherited from
CegoDecodableObject ). This results in less code, since the create/alter
operations are just implemented once.
Thu, 22 Sep 2022
[ 12:56 Kurt Jaeger (pi) search for other commits by this committer Author: Björn Lemke ]    commit hash:3da7b521739bc5e37d6a0b978cb4550865cb8ae1  commit hash:3da7b521739bc5e37d6a0b978cb4550865cb8ae1  commit hash:3da7b521739bc5e37d6a0b978cb4550865cb8ae1  3da7b52 
devel/lfcbase,databases/cego: update 1.16.5 -> 1.16.6, 2.47.27 -> 2.47.29

- Added new method BigDecimal::scaleTo to change scaling for an instance.
  This includes an appropriate rounding, if scaling is reduced

- In CegoFieldValue::castTo, cast from varchar to fixed is done
  now with newly introduced BigDecimal::scaleTo method
  This includes an appropriate rounding in case of precision reduction.
- Fix in CegoCaseCondition to allow null types in condition
  see dbcheck/check106.sql for a sample
Tue, 16 Aug 2022
[ 14:23 Kurt Jaeger (pi) search for other commits by this committer Author: Björn Lemke ]    commit hash:71e17812c2baf539fb77b4eadf98a89691493ae0  commit hash:71e17812c2baf539fb77b4eadf98a89691493ae0  commit hash:71e17812c2baf539fb77b4eadf98a89691493ae0  71e1781 
devel/lfcbase,databases/cego: update 1.16.4 -> 1.16.5, 2.47.26 -> 2.47.27

- Fix in BigDecimal::operator ==, if _val, _scale and _isPositive
  do not match, we still have to call further checks

- Fix in CegoProcBlock::toChain, dimension has still not been
  treated for fixed procedure variables
Sun, 10 Jul 2022
[ 08:30 Kurt Jaeger (pi) search for other commits by this committer Author: Björn Lemke ]    commit hash:83aad88a3980f5ae060b78cf8c12d9d8b54accf7  commit hash:83aad88a3980f5ae060b78cf8c12d9d8b54accf7  commit hash:83aad88a3980f5ae060b78cf8c12d9d8b54accf7  83aad88 
databases/cego: update 2.47.25 -> 2.47.26

- In CegoFieldValue, completed appropriate rounding via cast for
  decimal types to integer types
Sat, 9 Jul 2022
[ 14:22 Kurt Jaeger (pi) search for other commits by this committer Author: Björn Lemke ]    commit hash:0ccb79496bfc7a62189fa21fbe1fe45a71998b86  commit hash:0ccb79496bfc7a62189fa21fbe1fe45a71998b86  commit hash:0ccb79496bfc7a62189fa21fbe1fe45a71998b86  0ccb794 
devel/lfcbase: 1.16.3 -> 1.16.4, databases/cego: 2.47.24 -> 2.47.25

- Fix added for BigDecimal to avoid rounding for zero trailing values,
  e.g. 119.00 / 100.00 was 1.1, should be 1.19

- Added small patch for verification check to meet new BigDecimal patch
  in lfcbase
Mon, 13 Jun 2022
[ 09:25 Kurt Jaeger (pi) search for other commits by this committer Author: Björn Lemke ]    commit hash:4c310a05f3fdfcee1377f58d97a215039c2c315e  commit hash:4c310a05f3fdfcee1377f58d97a215039c2c315e  commit hash:4c310a05f3fdfcee1377f58d97a215039c2c315e  4c310a0 
databases/cego: update 2.47.22 -> 2.47.24

- Replaced Chain("") with Chain() for several. This was motivated by
  an observed bug for check constraint xml import, where a comparision
  between Chain() and Chain("") returned false
- Fix in CegoFunction::evalFieldValue for case REPLACE. If replace
  string is null, then empty string is replaced instead of "null"

Author:    Björn Lemke <>
Sun, 20 Feb 2022
[ 13:03 Kurt Jaeger (pi) search for other commits by this committer Author: Björn Lemke ]    commit hash:4c4ce8d3853f42823802c297c74a06d453bc1639  commit hash:4c4ce8d3853f42823802c297c74a06d453bc1639  commit hash:4c4ce8d3853f42823802c297c74a06d453bc1639  4c4ce8d 
databases/cego: upgrade 2.47.16 -> 2.47.22

- Fix in CegoFunction::clone, also if _exprList is empty, the function
  must treated and cloned completely including table manager reference.
  Otherwise, for user defined function with no arguments which are used
  in views will throw an exception
- Change in CegoJDBCInfo for table list retrievel. This JDBC meta
  information command is not split to tab and vie for dedicated
  retrievel of table and view objects
- More work has been done regarding clean shutdown of the
  database / tableset stop while busy db sessions still exist.
  For this, CegoDistCursr desctructor method has been stabilized,
  so no exception is thrown. Otherwise, double memory freeing of
  cursor resources might occur which results in a crash
- In CegoTableManager::stopTableset, relocated the setTableSetRunState
(Only the first 15 lines of the commit message are shown above View all of this commit message)
Sun, 16 Jan 2022
[ 20:56 Kurt Jaeger (pi) search for other commits by this committer Author: Björn Lemke ]    commit hash:fcd7f34fbeaef4b20344fe544fb634e4cfc640a9  commit hash:fcd7f34fbeaef4b20344fe544fb634e4cfc640a9  commit hash:fcd7f34fbeaef4b20344fe544fb634e4cfc640a9  fcd7f34 
databases/cego: update 2.47.14 -> 2.47.16

- Fix in CegoAttrComp for equal, lt and gt operators.
  The compMode ATTR was not treated correctly in a way, that the
  attrDesc part was not evaluated. This might lead to missing attr
  cond entries for sophisticated queries.
  A verify check ( verify008 ) has been added to check this case

Author:    Björn Lemke <>
Wed, 5 Jan 2022
[ 15:43 Kurt Jaeger (pi) search for other commits by this committer Author: Björn Lemke ]    commit hash:414c5d54aab8ef3e14fe1b13f5f63f68600726ac  commit hash:414c5d54aab8ef3e14fe1b13f5f63f68600726ac  commit hash:414c5d54aab8ef3e14fe1b13f5f63f68600726ac  414c5d5 
databases/cego: update 2.47.13 -> 2.47.14

- In CegoDistManager::startTableset the method setCurrentLSN
  has to be called before registerObjects since this method
  might also trigger checkpoints
Tue, 4 Jan 2022
[ 19:33 Kurt Jaeger (pi) search for other commits by this committer Author: Björn Lemke ]    commit hash:b9cb61848a2eb98a67abd0368f885e66e5eae497  commit hash:b9cb61848a2eb98a67abd0368f885e66e5eae497  commit hash:b9cb61848a2eb98a67abd0368f885e66e5eae497  b9cb618 
databases/cego: update 2.47.11 -> 2.47.13

- Fix in CegoDistManager::renameLocalObject, before renaming the object,
  it has to be checked, if the new object name is already in use
- Fix in CegoXPorter::readIndexObject, index schema expects tablename
  instead of indexname.
  As a result binary and plain imports with index objects have failed.
Thu, 23 Dec 2021
[ 15:47 Kurt Jaeger (pi) search for other commits by this committer Author: Björn Lemke ]    commit hash:8da598cd7bf2bf8efce4cf261d940ac21d4ee186  commit hash:8da598cd7bf2bf8efce4cf261d940ac21d4ee186  commit hash:8da598cd7bf2bf8efce4cf261d940ac21d4ee186  8da598c 
databases/cego: 2.47.7 -> 2.47.11

- Fix in CegoDistManager::startTableSet, the current lsn has
  to be setup before performing the cleanup option. cleanup uses
  bufferFix which might result in a checkpoint. For this the current
  lsn has to be setup
- In CegoQuery, added execSchema which is copied for each execution
  call from _schema ( to have a virgin schema definition ). The
  execSchema then is enriched in the appropriate way. For the insert
  query, an addExprList variable was decleare to store the addition
  needed expression to complete the insert value list ( instead of
  adding it to _exprListArray ). After performing the query, the
  allocated and inserted expression have to be deleted. This
  implementation seems to be more useful for procedure based queries,
  where the intiantiated CegoQuery object is executed multiple times
- In CegoDistManager, reload message for views, procedure and trigger
  is avoided now ( since this occurs for each db thread during startup )
- In CegoAttrComp::setup(ListT** pJoinBuf, int offset) the _isSetup
  flag was not set to true for the posSetup case. This might lead to
  invalid error message. See
  for details
- Fix in CegoGroupSpace::getValueForAgg, The return value
  ( of type CegoFieldValue ) must be converted to a local copy,
  since the reference to the bufferpool might be invalidated
Sun, 10 Oct 2021
[ 19:16 Kurt Jaeger (pi) search for other commits by this committer Author: Björn Lemke ]    commit hash:6da2ac6908610b933725fd86858844396030da46  commit hash:6da2ac6908610b933725fd86858844396030da46  commit hash:6da2ac6908610b933725fd86858844396030da46  6da2ac6 
databases/cego: update 2.47.6 -> 2.47.7

- Added format correction in CegoField::castTo for case VARCHAR to
  FIXED. In case of string values without leading zeros ( e.g. .345),
  leading zero is concated.

Author:    Björn Lemke <>
Sun, 4 Jul 2021
[ 07:48 Kurt Jaeger (pi) search for other commits by this committer Author: Björn Lemke ]    commit hash:5aa5b648b19ff6d5cdf3ad047167fac2c7d594f8  commit hash:5aa5b648b19ff6d5cdf3ad047167fac2c7d594f8  commit hash:5aa5b648b19ff6d5cdf3ad047167fac2c7d594f8  5aa5b64 
databases/cego: update 2.47.3 -> 2.47.6 and devel/lfcbase: 1.16.1 -> 1.16.2

- Added HashT::getRangePos and HashT::RemovePos for more efficient
  hash array manipulation

- Fix in CegoQueryCacheEntry::cleanCache, reset of all relevant
  variables. Furthermore, in CegoQueryCache methods, remove from
  hasharray is checked for return code true
- Usage of new HashT methods ( getRangePos and RemovePos ) for
  CegoQueryCache to remove entries from query cache array more efficient
- Fix in CegoFactor::evalFieldValue(), for case CegoFactor::QUERY,
  the fetched value must be saved to a local copy, otherwise the
  buffer could be overwritten by the subsequent nextTuple method call
  to complete the query for query cache. As a result, wrong values
  are returned in case of heavy buffer cache relocation.
Sun, 6 Jun 2021
[ 11:47 Kurt Jaeger (pi) search for other commits by this committer Author: Bjoern Lemke ]    commit hash:64b9e0376f0278eab2c16ac51924983f4491b2fc  commit hash:64b9e0376f0278eab2c16ac51924983f4491b2fc  commit hash:64b9e0376f0278eab2c16ac51924983f4491b2fc  64b9e03 
databases/cego: update 2.47.2 -> 2.47.3

- New generated parsers ( Cego.def and CegoAdm.def ) with dragon 1.5.5
Mon, 24 May 2021
[ 07:24 Kurt Jaeger (pi) search for other commits by this committer Author: Bjoern Lemke ]    commit hash:6794ce73f1eb7f732823398324a8995969aa36f3  commit hash:6794ce73f1eb7f732823398324a8995969aa36f3  commit hash:6794ce73f1eb7f732823398324a8995969aa36f3  6794ce7 
databases/cegobridge: update 1.6.0 -> 1.6.1

Also update databases/cego: update 2.47.1 -> 2.47.2

- Fix in CegoQueryHelper::checkIndexForPredicate, wrong tabSetId
  was used for getObjectListByTable, must be table specific

- In method void MySQLAction::storeVarcharType, dimension value was
  doubled, since MySQL calculates visible length for varchars and
  cego length in bytes. So for multibyte character encodings, length
  might exceed ...
Sun, 23 May 2021
[ 21:24 Kurt Jaeger (pi) search for other commits by this committer Author: Bjoern Lemke ]    commit hash:ec39a1184666a6de185041126039306b4a40149c  commit hash:ec39a1184666a6de185041126039306b4a40149c  commit hash:ec39a1184666a6de185041126039306b4a40149c  ec39a11 
databases/cego: update 2.47.0 -> 2.47.1

- Rework of new hash array based query cache.
  The new introduced methods HashT::FirstInRange and HashT::NextInRange
  are used to find an appropriate hash array slot to replace entries
  in an occupied array.
- Added cego command line mode setpwd to setup user password
  for offline database
Sun, 21 Feb 2021
[ 19:14 pi search for other commits by this committer ] Original commit   Revision:566237
devel/lfcbase: update 1.15.1 -> 1.16.0
databases/cego: update 2.46.8 -> 2.47.0

- Introduction of template class HashT

- Integration of HashT into QueryCache for faster access of cached
  query entries
- Fix in CegoClient and CegoAction for comment parsing. Comment token
  in string are treated now. For this, a new method
  CegoQueryHelper::skipComment has been introduced
- Improvements done for query cache handling
  ( more support for nested queries, stabilization fixes )

Submitted by:	Bjorn Lemke <>
Mon, 1 Feb 2021
[ 15:37 pi search for other commits by this committer ] Original commit   Revision:563585
databases/cego: update 2.46.7 -> 2.46.8

- Removed log entry in CegoDatabaseManager::checkTableSetRunState

Submitted by:	Bjorn Lemke <>
Fri, 29 Jan 2021
[ 19:37 pi search for other commits by this committer ] Original commit   Revision:563242
databases/cego: update 2.46.6 -> 2.46.7

- Added fix in CegoTableManager::createBTree
  For btree value extraction, we also have to use
  valueFromSchema(tableSchema, btreeSchema)
  Otherwise, in case if inverted index attributes, the values are
  not extraced correctly
  create table t1 ( a int, b string(10));
  insert into t1 values ( 1, 'alpha');
  create btree b1 on t1(b,a); -- inverted, value for a would be
				 not setup correctly

Submitted by:	Bjorn Lemke <>
Sun, 24 Jan 2021
[ 10:01 pi search for other commits by this committer ] Original commit   Revision:562455
databases/cego: 2.46.5 -> 2.46.6

- Fix in CegoObjectManager / CegoDatabaseManager added.
  The checkTableSetRunState method has been moved to CegoDatabaseManager.
  This ensures a single point of check definition.
  In the previous version, tableset RECOVERY mode was not treated for
  useObject, unuseObject and objectExists method calls which might lead to
  crash recovery abort.

Submitted by:	Bjorn Lemke <>
Sat, 5 Dec 2020
[ 20:24 pi search for other commits by this committer ] Original commit   Revision:557082
databases/cego: update 2.46.0 -> 2.46.5

- Fix in CegoExpr::evalField, fixed dimension was still not handled
  here for ADD and SUB cases
- Added error msg improvement in CegoProcBlock
- Added MAXDELETEPAGE parameter to show parameter admin command
- set default checkpoint value for new defined tablesets
- added function check in CegoFunction::evalFieldValue to ensure, this is
  not a procedure without return value
- Fix in CegoTableManager for table altering. No type conversion
  allowed with alter modify and no length shrinking

Submitted by:	Bjorn Lemke <>
Sat, 28 Nov 2020
[ 19:28 pi search for other commits by this committer ] Original commit   Revision:556518
devel/lfcbase: update 1.14.6 -> 1.15.0
devel/lfcxml: update 1.2.11 -> 1.3.0
databases/cego: update 2.45.35 -> 2.46.0
databases/cegobridge: update 1.5.4 -> 1.6.0

Please note: database updates from 2.45.x to version 2.46.x require
a xml tableset export and import, since table structure information
has been changed!

- Added template class GraphT for dependency graph implementations
- Fix in BigInteger::mul and BigInteger::div, signing was not treated
  ( e.g. -12 * 12 => -144 ( was 144 ) )

lfcxml: get in sync with lfcbase
(Only the first 15 lines of the commit message are shown above View all of this commit message)
Wed, 18 Nov 2020
[ 17:01 pi search for other commits by this committer ] Original commit   Revision:555652
databases/cego: update 2.45.34 -> 2.45.35

- Added noinit option to cgadm tableset start command. With the
  noinit option, the configured init file will not be processed after
  tableset startup, otherwise this will be processed now ( if any
  configured ) All output messages are written to main log file.
- Redirected output for CegoAction and CegoOutput added to print output
  to logfile. This is useful in case of tableset init file, where
  several SQL action could be performed
- Fix in CegoAction::execSetCounter, new value must be checked for
  null value and if so, set counter to 0. The bug caused a seg fault ..

Submitted by:	Bjorn Lemke <>
Tue, 17 Nov 2020
[ 20:22 pi search for other commits by this committer ] Original commit   Revision:555583
databases/cego: update 2.45.32 -> 2.45.34

- Improved runstate handling in CegoDistManager
- Further fix in CegoPredDesc::getFieldList, case CegoPredDesc::NULLCOMP,
  getFieldList method call added for pExpr1,
  in CegoPredDesc::setFieldListArray method calls added for
  _pC and _pNotPred. For this, setFieldListArray method has been
  introduced in CegoCondDesc. This fixes should complete case
  cond handling e.g. for aggregation queries.
  check097 has been expanded for this

Submitted by:	Bjorn Lemke <>
Mon, 16 Nov 2020
[ 21:15 pi search for other commits by this committer ] Original commit   Revision:555517
databases/cego: 2.45.31 -> 2.45.32

- CegoObjectManager has been modified to check tableset run state
  for several methods. For this, method
  CegoObjectManager::checkTableSetRunState has been introduced.
- Added check in CegoDatabaseManager::objectExists to verify, if
  corresponding tableset is online. So instead of "invalid object"
  exception, a tableset offline exception is thrown, which might be
  more useful

Submitted by:	Bjorn Lemke <>
Sat, 14 Nov 2020
[ 15:46 pi search for other commits by this committer ] Original commit   Revision:555118
databases/cego: update 2.45.28 -> 2.45.31

- Added case-cond support for aggregation queries
- Fix in CegoCaseCond::evalField, all expression are evaluated now
  and are checked for type mismatch. Expressions must return the same
  type, otherwise this might lead to value evaluation problems. This
  fix also leads to fix in CegoFieldValue::getDim() and CegoFactor::evalField
  since now getDim ist used for field length specification which is
  also compared by CegoCaseCond::evalField

Submitted by:	Bjorn Lemke <>
Sun, 25 Oct 2020
[ 20:53 pi search for other commits by this committer ] Original commit   Revision:553291
databases/cego: update 2.45.25 -> 2.45.28

- Fix in CegoTableManager::insertDataTable, before call
  getObjectListByTable, type must be checked ( must be CegoObject::TABLE
  ), otherwise ( for system objects ) not found exception arises.
  This error may appear with the admin commands begin backup and end
  back ( stat information is written to bustat system table )
- Added format fix to CegoAction::formatTableInfo, to treat very
  long object names, max name length of all corresponding objects is
  now calculated and output is printed in appropriate format
- Change in CegoAction::execProcCall and CegoAction::execFuncCall,
  procedure/function arguments are evaluated and cast in this methods
  now. This is needed, to support string to clob casting for procedure
  arguments. As a consequence the CegoProcedure::execute method has
  been changed to receive ListT instead of ListT.

Submitted by:	Bjorn Lemke <>
Fri, 18 Sep 2020
[ 08:01 pi search for other commits by this committer ] Original commit   Revision:548877
databases/cego: update 2.45.23 -> 2.45.25

- Typo fix in CegoTerm::evalField and CegoExpr::evalField
- More rework on CegoFieldValue for improved cast handling
  ( especially on fixed values )

Submitted by:	Bjorn Lemke <>
Thu, 17 Sep 2020
[ 07:25 pi search for other commits by this committer ] Original commit   Revision:548819
devel/lfcxml: update 1.2.10 -> 1.2.11
databases/cego: update 2.45.19 -> 2.45.23

- Sync patch for MinGW package build

- Fix in CegoFieldValue::castTo, case VARCHAR_TYPE to FIXED_TYPE,
  plain integers have not been accepted. check091 added for this
- Fix in CegoTerm::evalField and CegoExpr::evalField, type and
  length calculation must correspond to cast logic in CegoFieldValue
  ( corresponding operators for mul, div, add and sub )
- Fix in CegoProcVar::setValue, a castTo has been added to cast to
  appropriate target type

Submitted by:	Bjorn Lemke <>
Tue, 25 Aug 2020
[ 09:16 pi search for other commits by this committer ] Original commit   Revision:546144
databases/cego: update 2.45.18 -> 2.45.19

- Fix in CegoAction::insertArg to check for duplicate attribute
  specification in insert statement, e.g.
  INSERT INTO t1 ( a, a ) VALUES ...

Submitted by:	Bjorn Lemke <>
Fri, 14 Aug 2020
[ 07:20 pi search for other commits by this committer ] Original commit   Revision:544874
databases/cego: 2.45.16 -> 2.45.18

- Fix in CegoClient for treating interactive input. Ctl-D input
  lead to segmentation fault, if used in multiline statements.
- Patch in CegoAction::formatTableInfo. For size calculation of
  btree objects, null value must be used instead of INVALID, otherwise,
  wrong values are indicated during btree build
- Patch in CegoLogManager::switchLogFile, we first have to switch log
  file and then change the status to OCCUPIED. Otherwise, the logfile
   archiver ( CegoLogThreadPool::shiftRedoLogs ) might access occupied
  logfile in parallel. Since this is a different thread and File::open
  seems to be not thread safe, bad things might happen ...

Submitted by:	Bjoern Lemke <>
Fri, 5 Jun 2020
[ 18:05 pi search for other commits by this committer ] Original commit   Revision:538042
databases/cego: update 2.45.9 -> 2.45.16

- Fix in CegoBtreeManager for duplicate null handling. The corresponding
  btree value has to be checked to be null. For this, the method
  CegoBTreeValue::isNull has been introduced
- Fix in CegoFieldValue::negate, for FIXED_TYPE values, trailing
  zeros have to be treated. Otherwise, select null - a from t1 where
  a = 0.10 will result in 0.1
- Patch in 'update with return' clause. It seems to be useful, that
  in combination with return, update should return after first matching
  tuple providing the updated tuple in the return clause. So the
  values for the tuple can be stored in procedure variables.
  create table t1 ( a int, b string(30));
  insert into t1 values ( 1, 'DONE');
  insert into t1 values ( 2, 'DONE');
(Only the first 15 lines of the commit message are shown above View all of this commit message)
Sun, 1 Dec 2019
[ 20:16 pi search for other commits by this committer ] Original commit   Revision:518811
databases/cego: upgrade 2.45.8 -> 2.45.9

- Fix in CegoBTreeManager, the allowDuplicateNull flag was not
  treated any more. The duplicate handling has been moved from
  CegoBtreeNode to CegoBtreeManager

Submitted by:	Bjoern Lemke <>
Sun, 24 Nov 2019
[ 17:29 pi search for other commits by this committer ] Original commit   Revision:518340
databases/cego: upgrade 2.45.6 -> 2.45.8

- Fix in CegoSelect::setVIewCond, a view condition id has to be
  calculated which is later used for getQueryId(). Otherwise, wrong
  query cache entries are used in case of views with outer conditions
- Added method CegoBTreeNode::verifyLeafFull for full btree
  verification in a sense, that each btree value is compared with the
  corresponding table data entry via datapointer reference
- Improvement in CegoAdmAction for input handling. Used the same
  methods for nextChar and friends as in CegoAction
- In CegoXMLSpace, changed access methods for mediator, primary and
  secondary in a way, that the default value ist the current hostname.
  In this case, no attribute values are set up. This reduces complexity
  and avoids to change the entries manually, if the hostname changes
  (do not edit the database xml without any deeper knowledge).

Submitted by:	Bjoern Lemke <>
Sun, 18 Aug 2019
[ 17:22 pi search for other commits by this committer ] Original commit   Revision:509231
devel/lfcbase: upgrade 1.14.0 -> 1.14.2
databases/cego: upgrade 2.45.5 -> 2.45.6

- In added check for darwin. This is required, since
  for File::flush implemention, darwin rather requires a fcntl call
  with option F_FULLFSYNC instead of fsync ( see OSX man page for
  fsync )

- Added command line option --fsync to enable physical disk synchronisation
  for logging and checkpointing. This options slows down database
  significantly but ensures consistent data in case of an operating
  system crash

Submitted by:	Bjoern Lemke <>
Sun, 14 Jul 2019
[ 07:48 pi search for other commits by this committer ] Original commit   Revision:506611
databases/cego: upgrade 2.45.1 -> 2.45.5

- Fix in CegoQuery::execute for INSERTBYSELECT_QUERY case.
  Since the selected tuples are clustered ( MAX_CLUSTERED_INSERT) we have
  to create a local copy for the corresponding field values.
  Otherwise, tuple information could be invalidated by relocated
  buffer pool pages
- Fix in CegoFieldValue::fastComp, the castTo method calls for t1
  and t2 have to be switched, since first ist has to be checked to
  cast to native btree datatype ( used in CegoBTreeCursor::traceLog,
  inRange and fullMatch )
  create table t1 ( a int, d datetime);
  create btree b1 on t1(b);
  select a from t1 where b = '12.07.2019'; -- should be casted
					   -- from string to datetime
- Code cleanup to avoid warnings with -Wswitch-enum
- In CegoClient, added input data check via File::hasData ( available
  with lfcbase 1.14.0 ). Now, pipe input is autodetected, so the
  command line argument "--pipe" has been removed

Submitted by:	Bjoern Lemke <>
Sun, 7 Jul 2019
[ 08:53 pi search for other commits by this committer ] Original commit   Revision:506111
databases/cego: upgrade 2.45.0 -> 2.45.1

- Treated alias insert queries with empty schema, e.g.
  insert into a1 values ( 1, 'XXX');
- Some patches added for alias management to allow alias defintions
  as a subset of the original table, e.g.
  create table t1 ( a int, b string(10), c string(30))
  create alias a1 on t1 ( a as ax, b as bx);
  This has required some fixes in CegoAliasObject::mapSchema and

Submitted by:	Bjoern Lemke <>
Thu, 4 Jul 2019
[ 19:13 pi search for other commits by this committer ] Original commit   Revision:505863
databases/cego: upgrade 2.44.14 -> 2.45.0

- Added table alias feature to grammar definition. Table aliases
  allow alternate table name and attribute name definitions for a
  table ( create alias ... )
- Added classes CegoAliasObject and CegoAttrAlias for table alias handling
- Implemented base semantic actions for creating, listing and
  describe alias objects ( still no usage )
- In CegoDistManager::registerObjects, added registration for fkey,
  check, trigger and alias
- Added alias mapping for insert, update and delete queries (
  CegoQueryHelper::mapAliasPredicate still to implement )
- Basic alias mapping for select works, here's a sample SQL script
  drop if exists table t1;
  list alias;
(Only the first 15 lines of the commit message are shown above View all of this commit message)
Wed, 19 Jun 2019
[ 11:57 pi search for other commits by this committer ] Original commit   Revision:504537
databases/cego: upgrade 2.44.13 -> 2.44.14

- Some improved exception handling in CegoTableManager::checkIntegrity
  ( more detail information about violated object )
- Code cleanup CegoTableManager, drop/create/alter operations inside
  a transaction no more allowed

Submitted by:	Bjoern Lemke <>
Tue, 14 May 2019
[ 05:23 pi search for other commits by this committer ] Original commit   Revision:501620
databases/cego: upgrade 2.44.12 -> 2.44.13

- Further recovery fix in CegoTableManager::insertDataTable In case
  of an insert exception ( e.g. duplicate pkey ), a checkpoint is
  forced now after deleteData to ensure file consistency
  In CegoObjectManager::insertPageData a second checkpoint is forced
  after data copy, if a previous checkpoint has occured. Otherwise
  this insert might be ignored during recovery because of lower LSN
- Fix in CegoBTreeManager::checkDuplicate, the check for uflag (
  returned CegoBTreeNode::valueExists ) to check for high value is
  not enough if, entries have been deleted from node.
  Instead, all subsequent pages have to be checked until a value higher is found
- Introduced CegoBufferPool::getCPCount() to return to current
  checkpoint count. This method is used by CegoTableManager,
  CegoObjectManager and CegoTransactionManager to decide, if a
(Only the first 15 lines of the commit message are shown above View all of this commit message)
Sat, 11 May 2019
[ 07:44 pi search for other commits by this committer ] Original commit   Revision:501228
databases/cego: upgrade 2.44.11 -> 2.44.12

- Fix added in CegoTransactionManager::commitUpdate, btree must be
  inserted with insertBTreeWithCommit
- Fix added in CegoTransactionManager::getCrashAffectedTables,
  schema entry must be searched with Find(CegoField(Chain(),

Submitted by:	Bjoern Lemke <>
Fri, 10 May 2019
[ 09:19 pi search for other commits by this committer ] Original commit   Revision:501163
databases/cego: upgrade 2.44.10 -> 2.44.11

- Fix in CegoRecovery:::recoverCurrentTransactionLog, for LOGREC_INSERT
  and LOGREC_DELETE, the corresponding index have to be invalidated
  with CegoTableManager::invalidateIndexForTable. This logic was
  already implemented but removed in context of more sophisticated
  transaction handling ( patch 2.39.11 and around )
- Small fix in CegoObjectCursor constructor, changed _isEOC = false
  to _isEOC = ( pageId == 0 ). This causes getFirst to return false
  in case of truncated objects ( can occur for RBSEG objects )

Submitted by:	Bjoern Lemke <>
Sat, 4 May 2019
[ 15:34 pi search for other commits by this committer ] Original commit   Revision:500814
databases/cego: upgrade 2.44.9 -> 2.44.10

- Fix in CegoAction::readChain() to support "\r" escape character
  Fix in CegoBTreeCursor::getFirst, in case of pAttrCond = 0, getNext
  has to be called if current leaf page is empty, otherwise cursor
  trace is incomplete ( just used for CegoDistManager::verifyTable )
- Fix in CegoBTreeNode::getChildPage, parameter traceMin has been
  introduced, which is needed to trace btree with
  Otherwise, it might happen that non-unique btree objects are not found

Submitted by:	Bjoern Lemke <>
Thu, 2 May 2019
[ 12:50 pi search for other commits by this committer ] Original commit   Revision:500656
databases/cego: upgrade 2.44.8 -> 2.44.9

- Removed legacy method CegoAggregation::setInit/isInit
- Fix in CegoQueryHelper::aggregateTuple, since the field value
  reference for aggregation field value might be no more valid during
  the aggregation run, a local copy is created via

Submitted by:	Bjoern Lemke <>
Sun, 28 Apr 2019
[ 08:35 pi search for other commits by this committer ] Original commit   Revision:500295
databases/cego: upgrade 2.44.7 -> 2.44.8

- Added method CegoClient::treateEscape to handle escacpe charaters
  in command strings for interactive and batch mode ( newline, carriage
  return und tab )
- Further optimization in CegoFunction::getReturnTypeLen, if the
  length argument in left, right substr function is a constant, this
  value is used for schema definition, otherwise the length of the
  source is used. Example:
    select left(a,3) from t1 => length 3 is used for schema
    select left(a,b) from t1 => definition of a is used for schema
  Further optimization done in CegoSelect and CegoAction for schema

Submitted by:	Bjoern Lemke <>
Fri, 26 Apr 2019
[ 07:35 pi search for other commits by this committer ] Original commit   Revision:500086
databases/cego: update 2.44.6 -> 2.44.7

- In CegoSelect::evalSelection, optimization provided in a way,
  that schema is not evaluated explizit anymore. Rather the previous
  analysed schema ( prepare method, _evalSchema ) is used. Since for
  dynamic field length, the resulting schema must be estiamated, this
  approach is ok.
- Fix added in CegoFunction::getReturnTypeLen, evalFieldValue for
  expression values could fail, since FLA ist still not set up. For
  this case, now the cont value RETVAL_LEN is returned as an estimation.

Submitted by:	Bjoern Lemke <>
Tue, 23 Apr 2019
[ 11:56 pi search for other commits by this committer ] Original commit   Revision:499747
databases/cego: update 2.44.5 -> 2.44.6

- Added some code cleanup and additional checks ( check082 and check083 )

Submitted by:	Bjoern Lemke <>
Mon, 22 Apr 2019
[ 14:11 pi search for other commits by this committer ] Original commit   Revision:499646
databases/cego: update 2.44.4 -> 2.44.5

- Added fix in CegoAttrComp::setup, _posSetup variable was not setup
  correctly for case BTWN / VALUE2VALUE which might lead to invalid
  join array access.

Submitted by:	Bjoern Lemke <>
[ 12:16 pi search for other commits by this committer ] Original commit   Revision:499629
databases/cego: update 2.44.3 -> 2.44.4

- Added fix in CegoExpr::evalField and CegoTerm::evalField to provide
  correct result type. This is required for fastserial protocol usage.
- Also added fix in CegoFieldValue::operators +-*/ to cast to the
  largest value

Submitted by:	Bjoern Lemke <>
[ 06:57 pi search for other commits by this committer ] Original commit   Revision:499609
databases/cego: update 2.44.1 -> 2.44.3

- Fix in CegoTableManager::deleteDataTable, before resolving external
  table references via evalExtTableReferences, the subquery must be
  prepared, to resolve local attributes first
- Optimization added in CegoBufferPool::bufferFix. If there is no
  available slot in the bufferpool, a checkpoint is forced for the
  corresponding tableset ( already implemented ). Now if still no
  available slot, we force checkpoint for all other online tableset
  of the database. This might be useful, if the bufferpool is heavily
  occupied by other tablesets with dirty pages.

Submitted by:	Bjoern Lemke <>
Sun, 21 Apr 2019
[ 13:31 pi search for other commits by this committer ] Original commit   Revision:499537 (Only the first 10 of 12 ports in this commit are shown above. View all ports for this commit)
devel/lfcbase: update 1.11.9 -> 1.13.0
devel/lfcxml: update 1.2.6 -> 1.2.10
databases/cego: update 2.39.16 -> 2.44.1
databases/cegobridge: update 1.4.0 -> 1.5.0
databases/p5-DBD-cego: update 14.0 -> 1.5.0

- Warning: storage format has changed
  Export to xml format before upgrade and re-import after the upgrade
- recompile all applications linked to libcego
- Lots of changes, among them:
  o improved crash recovery
  o fixes to SQL expected behaviour
  o better CDATA handling
  o fixes primary key handling design issue
  o changes to serialisation for export/import, XML export/import is still

Submitted by:	Bjoern Lemke <>
Tue, 24 Apr 2018
[ 05:22 pi search for other commits by this committer ] Original commit   Revision:468176
devel/lfcbase: update 1.11.8 -> 1.11.9
databases/cego: update 2.39.15 -> 2.39.16

- Introduced new method File::flush to force synchronization of data to disk

- Fix in CegoObjectManager::insertPageData, new data entry is checked
  now for maximum available space in page. This is done if a new
  data page has to be allocated and the data entry still fits not
  into page
- Added File::flush method to CegoLogManager and CegoFileHandler
  to synchronize log data and datafile data to disk

Submitted by:	Bjoern Lemke <>
Wed, 11 Apr 2018
[ 11:24 pi search for other commits by this committer ] Original commit   Revision:467043
databases/cego: update 2.39.14 -> 2.39.15

- Fix in dbcheck/expimpcheck, test plan was not set up correctly
  In CegoXPorter and CegoExpImpStream, row export information was
  added again to indicate overall row export for each table
- Fix added in CegoDbThread::serveRequest ( GETBLOB and GETCLOB case ) and
  CegoTableManager::getBlobData / getClobData chunkSize calculation. The
  existing calculation did not treat every boundary case.

Submitted by:	Bjoern Lemke <>
Mon, 9 Apr 2018
[ 17:56 pi search for other commits by this committer ] Original commit   Revision:466871
databases/cego: update 2.39.13 -> 2.39.14

- Fix in CegoXPorter::writeRow and CegoXPorter::readRow for binary
  export and import of tables containing lob null values. lob null
  values must be identified by colLen unsigned long long = 0 instead
  of integer = 0

Submitted by:	Bjoern Lemke <>
Sat, 7 Apr 2018
[ 17:22 pi search for other commits by this committer ] Original commit   Revision:466757
databases/cego: update 2.39.12 -> 2.39.13

- Introduced CegoTransactionManager::getCrashAffectedTables method.
  In case of a crash recovery, all transaction affected tables have
  to be analysed for index objects. Before finishing transactions,
  the index objects have to be invalidated ( since they might be
  corrupted ) and after completion of transactions they have to be
  recreated. This is done now in CegoTableManager::finishOpenTransaction
- Fixes in CegoLogManager, CegoRecoveryManager, CegoDistManager and
  CegoTableManager for LSN handling. Instead of saving the next LSN,
  now the current written LSN is recorded in CegoLogManager. This
  seems to be more natural, since a lot of methods set up the LSN to
  a value + 1. Also this fixes a mismatch between commited lsn and
  current lsn, which leads to a tableset recovery during startup in
  any case ( occured with version 2.39.9 )

Submitted by:	Bjoern Lemke <>
Thu, 5 Apr 2018
[ 17:10 pi search for other commits by this committer ] Original commit   Revision:466571
databases/cego: update 2.39.11 -> 2.39.12

- Patch in CegoClient to catch format exceptions like
  "Invalid datetime string <0> for format <%d.%m.%Y %H:%M:%S>"
  This may happen, if on server side bad union selects are defined like
  create view v1 as
    select a as a, b as b from t1
    union all
    select a as a, 0 as b from t2;
  where b is a datetime data type. In this case, invalid formatted
  strings occur on the client side, which are catched now.
- Patch in CegoDatabaseManager::useObject to support lock
  delay values > 1 sec. The DBM_LOCKDELAY value in CegoDefs has now
  increased to 2500 msec. In some cases for heavy updates
  ( e.g. clob updates ) this might be useful to avoid ugly exclusive
  lock delay messages in database log file
- Fix in CegoTableManager::updateTuple. If the update fails ( this
  might happen, if another transaction actually updates the corresponding
  tuple ), any allocated lob values are freed now. Otherwise the
  data pages for the lob values were allocated with no more references.

Submitted by:	Bjoern Lemke <>
Sun, 1 Apr 2018
[ 14:00 pi search for other commits by this committer ] Original commit   Revision:466159
databases/cego: update 2.39.9 -> 2.39.11

- Improvements for log handling, the logIt method was moved from
  CegoTableManager to CegoBufferPool. This allows a more adequate
  locking of the logging actions. For this the tsLock array has been
  removed from CegoTableManager and lmLock array has been set up in
  CegoBufferPool. Since checkpoint writing occurs in CegoBufferPool
  ( which is also relevant for loging operations ), the logging method
  is now part of CegoBufferPool.
- The logAction method in CegoLogManager has also been improved in
  a way, that a log buffer is not allocated for each logging operation
  anymore. Instead, a logBuf array has been defined for all tablesets
  and the logBuf is reallocated, if the current logging record exceeds
  the log buffer.

Submitted by:	Bjoern Lemke <>
Thu, 29 Mar 2018
[ 11:55 pi search for other commits by this committer ] Original commit   Revision:465886
databases/cego: update 2.39.8 -> 2.39.9

- Added fixes for recovery procedure in CegoTableManager. Now the
  LSN is allocated at the beginning of critical operation to avoid
  double operations in case of a forced checkpoint. For this the
  CegoLogManager::nextLSN method has been introduced. Now it is no
  more ensured that the log is written with increasing LSN, so some
  logical parts of the recovery procedure in CegoRecoveryManager has
  been changed.
- In CegoBufferPool, the writeCheckPoint method still returned int
  value. This has been changed to unsigned long long

Submitted by:	Bjoern Lemke <>
Sun, 18 Mar 2018
[ 10:57 pi search for other commits by this committer ] Original commit   Revision:464892
devel/lfcbase: 1.11.6 -> 1.11.7
databases/cego: 2.39.7 -> 2.39.8

- Fix for memory leak in TreeT and AVLTreeT.
  The = operator implementation did not empty the tree before copy.
- Additional fix to this release : Added regfree call to Matcher
  destructor. Missing this call seems to cause a small memory leak

- Fix for memory leak in CegoPredDesc, pMatcher has not been cleaned up

Submitted by:	Bjoern Lemke <>
Sat, 10 Mar 2018
[ 11:45 pi search for other commits by this committer ] Original commit   Revision:464070
databases/cego: update 2.39.5 -> 2.39.7

- Fix in CegoTableManager::deleteDataTable, pBlock has to be checked
  for null value, otherwise crash recovery might crash. ( bug came
  with 2.39.0 to check for pBlock->getTriggerValueList )
- Some clob related fixes in CegoQueryHelper::decodeNativeFVL /
  decodeFVL relevant for recovery handling
- Fix in CegoRecoveryManager::recoverCurrentTransactionLog for the
  INSERT case. For the blob/clob handling, the lobREf values have not
  been set up correctly. This might lead to problems for table recovery
  with more than one lob row ( e.g. table t1 ( a blob , b clob )

Submitted by:	Bjoern Lemke <>
Tue, 6 Mar 2018
[ 18:26 pi search for other commits by this committer ] Original commit   Revision:463738
databases/cego: update 2.39.4 -> 2.39.5

- Bug fix in CegoAction::reallocateStringBuf, in the memcpy call,
  just the previous stringBufLen has to be copied ( _stringBufLen -
  MAXSTRINGLEN ). This bug might lead to seg fault in case of large
  parser input ( e.g. clob strings )
- In CegoQuery for insert and insert-by-select case, allocated blob
  and clob data ( by CegoQueryHelper::prepareFieldValue ) is cleaned
  now if any exception occurs

Submitted by:	Bjoern Lemke <>
Mon, 5 Mar 2018
[ 20:34 pi search for other commits by this committer ] Original commit   Revision:463667
databases/cego: update 2.39.3 -> 2.39.4

- Small bug fix in CegoDistManager, which came up with version
  2.39.0. In method deleteLocalDataTable, the variable delCount was
  declared two times, which lead to a result of 0 tuples deleted in
  any case

Submitted by:	Bjoern Lemke <>
Sat, 3 Mar 2018
[ 09:10 pi search for other commits by this committer ] Original commit   Revision:463472
databases/cego: update 2.39.2 -> 2.39.3

- Small improvement in CegoDbThreadPool. For a better db thread
  load value calculation, the request queue is no longer locked while
  waiting for incoming requests. Instead the QUEUEDELAY parameter has been
  increased to a default value of 200 msec to reduce db thread cpu
  load while idle. Now the db thread has a good chance to report
  idle time to the db thread pool.

Submitted by:	Bjoern Lemke <>
Thu, 1 Mar 2018
[ 12:29 pi search for other commits by this committer ] Original commit   Revision:463300
databases/cego: update 2.39.1 -> 2.39.2
databases/cegobridge: update 1.3.0 -> 1.4.0

- Fix in CegoTableManager::updateTuple, while setting up expression
  list, field list array must be setup BEFORE block ist set, since
  field list is needed by block setup ( in case of subqueries for
  prepare )

- Adaptions for cego-2.39

Submitted by:	Bjoern Lemke <>
Wed, 28 Feb 2018
[ 18:53 pi search for other commits by this committer ] Original commit   Revision:463258
databases/cego: update 2.38.20 -> 2.39.1

- Introduced table locking statements to set an explicit lock on a
  table ( e.g. for update synchronisation ). This feature replaces
  the "set update sync on/off" command
- Trigger implementation basically completed
- Fix in CegoQueryHelper::encodeFVL, for blob/clob values lists,
  the corresponding index variables ( blobidx/clobidx ) have not been
  increaed while encoding lob data. This might lead to invalid results
  and seg faults in case of multiple lobs values in one insert/update

Submitted by:	Bjoern Lemke <>
Sun, 25 Feb 2018
[ 04:49 pi search for other commits by this committer ] Original commit   Revision:462898
databases/cego: fix distinfo

Reported by:	pkg-fallout
Sat, 24 Feb 2018
[ 19:09 pi search for other commits by this committer ] Original commit   Revision:462859
databases/cego: 2.38.19 -> 2.38.20

- For heavy update operations on tables with btrees using embedding
  transactions, duplicate btree errors may occur. This is caused
  by not checking corresponding tuple states. To solve this problem,
  the following fixes have been done :
  o Fix in CegoTableManager::checkBTreeIntegrity : The tuple state for
    found entries has to be checked if state = COMMITTED
  o Fix in CegoBTreeNode:checkForAffected ( was checkForDeleted before ) :
    The tuple state has already checked for state
    INSERTED if tid != dataTid

Submitted by:	Bjoern Lemke <>
Tue, 13 Feb 2018
[ 20:25 pi search for other commits by this committer ] Original commit   Revision:461745
databases/cego: update 2.38.18 -> 2.38.19

- Fix in dbcheck/check065.sql for union sql in view.There must be
  set up aliases for attributes in selection now

Submitted by:	Bjoern Lemke <>
Fri, 2 Feb 2018
[ 18:04 pi search for other commits by this committer ] Original commit   Revision:460719
databases/cego: update 2.38.16 -> 2.38.18

- Fix in CegoTableManager::createForeignKey, for empty tables,
  referenced attributes names have not been checked. This might lead
  to invalid key objects.
- Fix in CegoSelect::prepare, expression alias in select list are
  checked now for union selects. Alias definition in select expression
  list should be identical for all select statements in union

Submitted by:	Bjoern Lemke <>
Sun, 31 Dec 2017
[ 19:28 pi search for other commits by this committer ] Original commit   Revision:457717
databases/cego: update 2.38.14 -> 2.38.16

- Increased NETMNG_QUEUE_DELAY to 1000000 ( 1 ms ) to minimize CPU load
- Introduced QUEUEDELAY ( in usec ) config parameter to adjust queue
  delay in database xml file. This allows to throttle down database
  response time for incoming connection requests and minimize CPU
- Added dbcheck/check072.sql. This implements the calculation of
  fibonacci numbers using stored procedures as a demonstration for
  massive recursive procedure calls
- Optimization for procedure load in CegoFunction::evalFieldValue
  ( case USERDEFINED ), procedure is just loaded as a dedicated
  instance ( via loadProcedure method ), if pMasterBlock is set. This
  avoids ( expensive ) dedicated load, if the procedure is still not
  in use by the corresponding thread. So just for recursive procedure
  calls, the dedicated load happens.

Submitted by:	Bjoern Lemke <>
Wed, 20 Dec 2017
[ 19:59 pi search for other commits by this committer ] Original commit   Revision:456848
devel/lfcbase: update 1.11.4 -> 1.11.5
databases/cego: update 2.38.12 -> 2.38.14

- Stability patch for strptime implementation ( MinGW only )

- Fixed memory lead in CegoDistManager destructor ( _pPA was not deleted )
- Further optimization done in CegoBTreeCursor, introduced methods
  traceLow and inRange to treat btree comparison in a more efficient way
- Fix in CegoAttrCond::getIndexCond, like and no like comparisons
  must be filtered out for new btree cursor tracing logic

Submitted by:	Bjoern Lemke <>
Thu, 14 Dec 2017
[ 16:56 pi search for other commits by this committer ] Original commit   Revision:456311
databases/cego: update 2.38.10 -> 2.38.12

- Small optimization in CegoAttrCond::checkIndex, removed primary
  flag, since this is done now by attribute ordering. This leads
  to full index trace match instead of trace with index support and
  so, additional unnecessary predicate evaluation is avoided.
- More rework for btree evaluation in CegoBTreeCursor
- Optimization in CegoBTreeCursor::getNext. Instead of calling
  getNext in a recursive way, this is now done in a iterative way.
  This might avoid heavy stacking in case of special query constraints
  ( e..g multi dimensional btrees and range conditions like a > 400
  and b betweeen 'AAA' and 'DDD' )

Submitted by:	Bjoern Lemke <>
Sun, 10 Dec 2017
[ 20:36 pi search for other commits by this committer ] Original commit   Revision:455910
devel/lfcbase: update 1.11.3 -> 1.11.4
databases/cego: update 2.38.9 -> 2.38.10

- Fixes in TreeT class, changed methods First, Next, isEmpty and
  compare operators to const

- Fix in CegoDistManager, we have to use a dedicated parser for
  loadView and loadProc methods. Otherwise compilation may fail in
  case of nested objects ( e.g. a view which references another view
- Fix in CegoBTreeCursor, CegoAttrCond and CegoAttrComp, for
  conflicting cursor conditions ( e.g. a = 4 and a < 1 ), the cursor
  evaluation failed, since just the primary condition was treated.
- For CegoBTreeCursor, the method fullMatch has been introduced,
  to make an final evalution in case of multi conditions.
- Also introduced: a ordering for CegoAttrComp set in
  CegoAttrCond to treat more constraint conditions at the beginning
  ( EQUAL before LESS_THAN before NOT_EQUAL and so on )
- Changed CegoAttrCond compSet from SetT to TreeT.
  This is required, since we need the ordering in the set.

Submitted by:	Bjoern Lemke <>
Sat, 9 Dec 2017
[ 10:52 pi search for other commits by this committer ] Original commit   Revision:455840
databases/cego: update 2.38.7 -> 2.38.9

- Introduction of new functions ascii ( get ascii character for
  numeric value ) , ldiv and lmod ( div and mod operation for long
  values )
- Modification in CegoFunction::evalFieldValue. To allow recursive
  calls of user defined functions and procedures, dedicated procedure
  instances are created for each call. This is done by parsing the
  procedure text via CegoAction

Submitted by:	Bjoern Lemke <>
Sat, 2 Dec 2017
[ 10:43 pi search for other commits by this committer ] Original commit   Revision:455343
devel/lfcbase: update 1.11.2 -> 1.11.3
databases/cego: update 2.38.6 -> 2.38.7

- Improvements made for dedicated strptime implementation. The
  function did not return null in case of unparsable date values.
  This code is just used for MinGW compiles since there is no
  implementation in the Standard C library available.

- Fix in CegoXPorter::readTableObject, the defintion for MAXROW BUF
  still was defined locally and rowLen was noch checked.
- Optimization in CegoFieldValue::decode, memory was allocated via
  malloc, rather _staticBuf should be used for performance reasons.
  _isLocalCopy was not set to true

Submitted by:	Bjoern Lemke <>
Thu, 30 Nov 2017
[ 20:09 pi search for other commits by this committer ] Original commit   Revision:455223
devel/lfcbase: update 1.11.1 -> 1.11.2
databases/cego: update 2.38.5 -> 2.38.6

- More detailed exception messages for BigDecimal and BigInteger

- Fix in CegoFunction::getId and CegoSelect::getQueryId : with
  enabled query cache, the following select is cached
    select nextcount(mycount);
- Since nextcount is a modifying operation, this is not a good idea.
  To avoid caching, CegoFunction now throws an Exception if
  nextcount / setcount function calls are detected during getQueryId.
  For these cases, the query id ignored for caching

Submitted by:	Bjoern Lemke <>
Sat, 25 Nov 2017
[ 12:54 pi search for other commits by this committer ] Original commit   Revision:454880
databases/cego: update 2.38.3 -> 2.38.5

- Fix in CegoBTreeValue::valueFromSchema, introduced method
  getReservedLength to return fixed value length for type fixed and
  decimal. Since for decimal and fixed type just the dimension is
  stored in CegoField::getLength, we must define a reserved area
  for those types. This is done now with constant definition
- Improved ordersize calculation in CegoOrderSpace:insertTuple. Now
  the following formula is used :
    int s = sizeof(fv);
    if ( fv.getLength() > STATICFIELDBUF )
      s += fv.getLength();
    orderEntryLen += s;
  The catches the base memory usage for the instance but also the
  dynamic allocated part

Submitted by:	Bjoern Lemke <>
Wed, 22 Nov 2017
[ 18:46 pi search for other commits by this committer ] Original commit   Revision:454698
databases/cego: update 2.38.1 -> 2.38.3

- Fix in CegoXMLSpace::setTSSortAreaSize, changed type from int to
  unsigned long long, otherwise overflow may occur for large sort
  area size configurations
- Performance optimization done in CegoOrderSpace. Instead of storing
  the CegoField list for the result tuple in CegoOrderNode, just the
  values are stored there. The order cursor now gets the schema with
  the constructor and build the CegoField List in the getFirst /
  getNext methods. This seems a huge amount of heap space, which is
  dynamically allocated during the sorting procedure ( sortareasize
  parameter ).
  Especially for large ordering result sets this saves significantly
  memory and improves performance.

Submitted by:	Bjoern Lemke <>
Sun, 19 Nov 2017
[ 09:33 pi search for other commits by this committer ] Original commit   Revision:454483
databases/cego: update 2.38.0 -> 2.38.1

- Fix in CegoPredDesc::decode, loop variable i for IN/NOTIN case
  was not initialized
- Fix in CegoAction::execCheckCreate, check contraints are checked
  for contained subselects. subselects are ( still ) not supported
  since the CegoCheckOject::decode method can not provide a valid
  tablemanager instance ( it is called from CegoObjectManager )

Submitted by:	Bjoern Lemke <>
Sat, 18 Nov 2017
[ 08:34 pi search for other commits by this committer ] Original commit   Revision:454415
databases/cego: update 2.37.3 -> 2.38.0
databases/cegobridge: update 1.2.1 -> 1.3.0

- Fix in CegoSelect::clone, pUnionSelect was not cloned, which might
  lead to seg faults
- Introduced predicate clause for select .. in ( expr, expr, ... ),
  e.g. select * from t1 where a in ( 1, 2, 3 ); This was still not
  implemented but is part of standard SQL.

- Adaptions made for modified cego-2.38.0 API with extended
  CegoDatabaseFormatter::formatPred method ( exprList was added for
  new introduced select in ( expr list ) predicate )

Submitted by:	Bjoern Lemke <>
Wed, 15 Nov 2017
[ 12:32 pi search for other commits by this committer ] Original commit   Revision:454234
databases/cego: update 2.37.1 -> 2.37.3

- Fix in CegoClient, the new comment logic by using Tokenizer does
  not work ( '-' characters are detected as comment tokens ). Code
  replaced by using posStr chain function
- Adaption in CegoMain to also parse comment lines in a more
  sophisticated way ( same as in CegoMain ), just relevant for server
  batch mode
- Optimization in CegoDistCuror::joinSetup, the join predicate is
  now analysed in a way, that a condition list is created ( via makeCNF
  and createCondition methods in CegoQueryHelper ). The condition
  list then is analysed to achieve a better cursor condition which
  results in improved index usage

Submitted by:	Bjoern Lemke <>
Fri, 10 Nov 2017
[ 19:09 pi search for other commits by this committer ] Original commit   Revision:453921
devel/lfcbase: update 1.11.0 -> 1.11.1
devel/lfcxml: update 1.2.5 -> 1.2.6
databases/cego: update 2.37.0 -> 2.37.1
databases/cegobridge: update 1.2.0 -> 1.2.1

- New generated configure script with libtool-2.4.6

Submitted by:	Bjoern Lemke <>
Wed, 8 Nov 2017
[ 10:23 pi search for other commits by this committer ] Original commit   Revision:453728
devel/lfcbase: update 1.10.3 -> 1.11.0
databases/cego: update 2.36.4 -> 2.37.0
databases/p5-DBD-cego: update 1.3.0 -> 1.4.0
databases/cegobridge: update 1.1.6 -> 1.2.0

- Layout improvements in Pager class
- Changed constructor for Net and NetHandler class to setup maxSendLen.
  Since this changes the API, minor release level has been increased

- Improvements for cgblow simulation mode added
- Improvements for cgclt, added pipe mode to read input from stdin
  Now comments are allowed also after delimiter token, e.g.
  create table t1(a int); -- a sample table
(Only the first 15 lines of the commit message are shown above View all of this commit message)
Wed, 1 Nov 2017
[ 17:42 pi search for other commits by this committer ] Original commit   Revision:453310
devel/lfcbase: update 1.10.1 -> 1.10.2
databases/cego: update 2.36.3 -> 2.36.4
databases/cegobridge: update 1.1.5 -> 1.1.6

- Fix in CegoSelect::nextTuple, before adding an entry to the query
  cache, it has to be checked, if any tables from foreign tableset
  are referenced in the query. If so, no cache entry is made, since
  table changes for foreign tables are not detected.
- Improved error messages for invalid database objects
- Decreased shutdown delay time by reducing net delays for all
  thread pools and optimized mediator thread wait procedure
- Completely removed the nologging option for import actions.
  Logging is disabled in any case now.
- Optimization added for log handling. During ( xml ) import,
  logging is completely deactivated, after import is completed,
  log is started again and a checkpoint is written.
  Since import can be repeated in case of a system during import,
  nothing gets lost. Deactivating logging increases import speed and
  avoids side effects

- Speed up imports by changing the way the parser reads the input

Submitted by:	Bjoern Lemke <>
[ 06:44 pi search for other commits by this committer ] Original commit   Revision:453262
databases/cego: update 2.36.2 -> 2.36.3

- Changed recovery strategy for existing btree / avl index objects.
  Before creating an index object, it is checked if exists. If exists,
  it is dropped and recreated. This seems to be a more stable strategy,
  since it may occur, that index objects still exist for several

Submitted by:	Bjoern Lemke <>
Mon, 30 Oct 2017
[ 19:36 pi search for other commits by this committer ] Original commit   Revision:453209
databases/cego: update 2.36.1 -> 2.36.2

- Fix in CegoFactor::setFieldListArray, the _flaCached variable has
  to be set to false, if _pFLA is set to a different value. Otherwise,
  we might refer to invalid memory, which results in core dump

Submitted by:	Bjoern Lemke <>
Sun, 29 Oct 2017
[ 10:42 pi search for other commits by this committer ] Original commit   Revision:453106
databases/cego: update 2.36.0 -> 2.36.1

- Added signal handler to CegoAdmAction. Now, ( long ) running
  tableset export and import requests can be aborted in a controlled
  way via Ctrl-C command.
- Fix in CegoXPorter, export file will be removed, if any exception
  occurs. So it is ensured, that the written export file is consistent
  and complete
- fixes in CegoXPorter for CLOB handling ( was not checked for plain exports )

Submitted by:	Bjoern Lemke <>
Sat, 30 Sep 2017
[ 06:17 pi search for other commits by this committer ] Original commit   Revision:450945
databases/cego: 2.35.10 -> 2.36.0

- Completed pointer cleanup in CegoQueryHelper::evalPredicate, added
  check061 to check pointer cleanup
- Fix in CegoTableManager::createBTree, pC object cursor has to be
  set to 0, otherwise in case of abortion a seg fault occurs
- Changed default value for btree cache enabling to false
- Improvement in CegoBufferPool::calcSegment for segid calculation.
  It has been recognized, that with the current calculation
  ( pageid % numsegment ) not all slots can be reached for
  special buffer pool configurations.
  The formula has been changed ( to ( pageid / numpages ) % numsegment )
- Adding missing export / import messages to CegoXPorter
- Changed btree cache enabling syntax. Instead of a dedicated switch
  command ( set btree cache on / off ), the cache option now is
  directly given with the create btree command ( e.g. create btree
  b1 on t1(a) cached )

Submitted by:	Bjoern Lemke <>
Sun, 17 Sep 2017
[ 18:23 pi search for other commits by this committer ] Original commit   Revision:450018
databases/cego: update 2.35.8 -> 2.35.10

- Fix in CegoBufferpool::writeCheckpoint, in case of an locking
  exception ( lockBufferPool ), the pool must be released in any case.
  For this the CegoLockManager::lockBufferPool and
  CegoLockManager::unlockBufferPool have been modified in a way,
  that lockBufferPool saves the current sema index ( _poolRangeLock )
  which is later used for the unlocking call.
- Timeout parameter for bufferpool lock reduced to 60 seconds.
- Optimization in CegoBufferPool:bufferfix for minHashId calculation
  in step 2, there was an unneeded locking operation for the
  minhashId, which was already locked by the main loop
- Small format fix in CegoProcCreateStmt ( missing indent )
- Add header row out put for client raw mode ( attribute names )
- Fix in CegoQueryHelper::evalPredicate, for all predicate types,
  the field array value has to be reset to 0, otherwise seg fault my
  occur since invalid references might be used

Submitted by:	Bjoern Lemke <>
Sat, 9 Sep 2017
[ 20:38 pi search for other commits by this committer ] Original commit   Revision:449509
databases/cego: update 2.35.4 -> 2.35.8

- Fix in CegoQueryHelper::aggregateTuple, in case of min-Aggregation,
  wrong results may occur, if null values have to be treated. Since
  null value handling is now treated inside CegoFieldValue, some code
  here was obsolete.
- Fix in CegoPredDesc for INSUB and NOTINSUB constructor + clone
  method. There was a confusing with the isNegated flag which has
  been corrected ( also in using class CegoAction ) The wrong negation
  might lead to wrong query result for views using subselect with in
  or not in subselects
- Bug fix in CegoDistCursor::getTuple, for the LEFTOUTER case and
  moreRight conditions, the right table cursor was called double time
  ( native and with nextRight ). The native call has to be removed
  since this may lead to strange effects actually just observed for
  mingw compiles

Submitted by:	Bjoern Lemke <>
Sun, 3 Sep 2017
[ 09:44 pi search for other commits by this committer ] Original commit   Revision:449192
databases/cego: update 2.35.3 -> 2.35.4

- Added tuple information command tupleinfo to indicate
  tuple state information for a given table
- Fix in CegoTransactionManager::commitTransaction and
  CegoTransactionManager::rollbackTransaction, in case of a crash recovery
  the taList does not contain any transaction entries, but the rollback
  segments have to be checked in any case for entries to process. Otherwise,
  the transaction will not be completed

Submitted by:	Bjoern Lemke <>
Sat, 2 Sep 2017
[ 10:08 pi search for other commits by this committer ] Original commit   Revision:449117
devel/lfcxml: update 1.2.4 -> 1.2.5
databases/cego: update 2.35.2 -> 2.35.3

- Small improvement in XMLSuite::nextChar to check for non-ASCII characters

- Fix in CegoTableManager::finishOpenTransaction, the transaction id for
  the corresponding tableset must be set to zero, otherwise in case of crash
  recovery procedures a transaction id might be active and the open
  transactions are not completed correctly

Submitted by:	Bjoern Lemke <>

Number of commits found: 288 (showing only 100 on this page)

1 | 2 | 3  »