Commit History - (may be incomplete: for full details, see links to repositories near top of page) |
Commit | Credits | Log message |
2.44.12 11 May 2019 07:44:38
  |
pi  |
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(),
SYS_RB_TABLE))
Submitted by: Bjoern Lemke <lemke@lemke-it.com> |
2.44.11 10 May 2019 09:19:07
  |
pi  |
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 <lemke@lemke-it.com> |
2.44.10 04 May 2019 15:34:35
  |
pi  |
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
CegoBTreeManager::deleteBTree.
Otherwise, it might happen that non-unique btree objects are not found
Submitted by: Bjoern Lemke <lemke@lemke-it.com> |
2.44.9 02 May 2019 12:50:47
  |
pi  |
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
CegoFieldValue::getLocalCopy.
Submitted by: Bjoern Lemke <lemke@lemke-it.com> |
2.44.8 28 Apr 2019 08:35:47
  |
pi  |
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
evaluation.
Submitted by: Bjoern Lemke <lemke@lemke-it.com> |
2.44.7 26 Apr 2019 07:35:55
  |
pi  |
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 <lemke@lemke-it.com> |
2.44.6 23 Apr 2019 11:56:47
  |
pi  |
databases/cego: update 2.44.5 -> 2.44.6
- Added some code cleanup and additional checks ( check082 and check083 )
Submitted by: Bjoern Lemke <lemke@lemke-it.com> |
2.44.5 22 Apr 2019 14:11:46
  |
pi  |
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 <lemke@lemke-it.com> |
2.44.4 22 Apr 2019 12:16:56
  |
pi  |
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 <lemke@lemke-it.com> |
2.44.3 22 Apr 2019 06:57:54
  |
pi  |
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 <lemke@lemke-it.com> |
2.44.1 21 Apr 2019 13:31:25
  |
pi  |
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
See UPDATING
- 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
possible
Submitted by: Bjoern Lemke <lemke@lemke-it.com>
Changelog: http://www.lemke-it.com/litexec?request=pubnews&user=&lang=en&numlog=1000 |
2.39.16_1 09 Apr 2019 14:04:50
  |
sunpoet  |
Update devel/readline to 8.0
- Bump PORTREVISION of dependent ports for shlib change
Changes: https://tiswww.case.edu/php/chet/readline/CHANGES
PR: 236156
Exp-run by: antoine |
2.39.16 24 Apr 2018 05:22:57
  |
pi  |
devel/lfcbase: update 1.11.8 -> 1.11.9
databases/cego: update 2.39.15 -> 2.39.16
lfcbase:
- Introduced new method File::flush to force synchronization of data to disk
cego:
- 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 <lemke@lemke-it.com> |
2.39.15 11 Apr 2018 11:24:41
  |
pi  |
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 <lemke@lemke-it.com> |
2.39.14 09 Apr 2018 17:56:15
  |
pi  |
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 <lemke@lemke-it.com> |
2.39.13 07 Apr 2018 17:22:23
  |
pi  |
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 <lemke@lemke-it.com> |
2.39.12 05 Apr 2018 17:10:43
  |
pi  |
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 <lemke@lemke-it.com> |
2.39.11 01 Apr 2018 14:00:47
  |
pi  |
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 <lemke@lemke-it.com> |
2.39.9 29 Mar 2018 11:55:48
  |
pi  |
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 <lemke@lemke-it.com> |
2.39.8 18 Mar 2018 10:57:01
  |
pi  |
devel/lfcbase: 1.11.6 -> 1.11.7
databases/cego: 2.39.7 -> 2.39.8
lfcbase:
- 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
cego:
- Fix for memory leak in CegoPredDesc, pMatcher has not been cleaned up
Submitted by: Bjoern Lemke <lemke@lemke-it.com> |
2.39.7 10 Mar 2018 11:45:01
  |
pi  |
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 <lemke@lemke-it.com> |
2.39.5 06 Mar 2018 18:26:49
  |
pi  |
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 <lemke@lemke-it.com> |
2.39.4 05 Mar 2018 20:34:13
  |
pi  |
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 <lemke@lemke-it.com> |
2.39.3 03 Mar 2018 09:10:07
  |
pi  |
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 <lemke@lemke-it.com> |
2.39.2 01 Mar 2018 12:29:31
  |
pi  |
databases/cego: update 2.39.1 -> 2.39.2
databases/cegobridge: update 1.3.0 -> 1.4.0
cego:
- 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 )
cegobridge:
- Adaptions for cego-2.39
Submitted by: Bjoern Lemke <lemke@lemke-it.com> |
2.39.1 28 Feb 2018 18:53:11
  |
pi  |
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
operation.
Submitted by: Bjoern Lemke <lemke@lemke-it.com> |
2.38.20_1 25 Feb 2018 04:49:55
  |
pi  |
databases/cego: fix distinfo
Reported by: pkg-fallout |
2.38.20 24 Feb 2018 19:09:17
  |
pi  |
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 <lemke@lemke-it.com> |
2.38.19 13 Feb 2018 20:25:50
  |
pi  |
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 <lemke@lemke-it.com> |
2.38.18 02 Feb 2018 18:04:41
  |
pi  |
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 <lemke@lemke-it.com> |
2.38.16 31 Dec 2017 19:28:21
  |
pi  |
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
load
- 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 <lemke@lemke-it.com> |
2.38.14 20 Dec 2017 19:59:04
  |
pi  |
devel/lfcbase: update 1.11.4 -> 1.11.5
databases/cego: update 2.38.12 -> 2.38.14
lfcbase:
- Stability patch for strptime implementation ( MinGW only )
cego:
- 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 <lemke@lemke-it.com> |
2.38.12 14 Dec 2017 16:56:12
  |
pi  |
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 <lemke@lemke-it.com> |
2.38.10 10 Dec 2017 20:36:28
  |
pi  |
devel/lfcbase: update 1.11.3 -> 1.11.4
databases/cego: update 2.38.9 -> 2.38.10
lfcbase:
- Fixes in TreeT class, changed methods First, Next, isEmpty and
compare operators to const
cego:
- 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
object)
- 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 <lemke@lemke-it.com> |
2.38.9 09 Dec 2017 10:52:32
  |
pi  |
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 <lemke@lemke-it.com> |
2.38.7 02 Dec 2017 10:43:31
  |
pi  |
devel/lfcbase: update 1.11.2 -> 1.11.3
databases/cego: update 2.38.6 -> 2.38.7
lfcbase:
- 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.
cego:
- 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 <lemke@lemke-it.com> |
2.38.6 30 Nov 2017 20:09:17
  |
pi  |
devel/lfcbase: update 1.11.1 -> 1.11.2
databases/cego: update 2.38.5 -> 2.38.6
lfcbase:
- More detailed exception messages for BigDecimal and BigInteger
cego:
- 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 <lemke@lemke-it.com> |
2.38.5 25 Nov 2017 12:54:49
  |
pi  |
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
RESERVED_BTREE_FLOATLEN in CegoDefs.h
- 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 <lemke@lemke-it.com> |
2.38.3 22 Nov 2017 18:46:12
  |
pi  |
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 <lemke@lemke-it.com> |
2.38.1 19 Nov 2017 09:33:10
  |
pi  |
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 <lemke@lemke-it.com> |
2.38.0 18 Nov 2017 08:34:07
  |
pi  |
databases/cego: update 2.37.3 -> 2.38.0
databases/cegobridge: update 1.2.1 -> 1.3.0
cego:
- 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.
cegobridge:
- 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 <lemke@lemke-it.com> |
2.37.3 15 Nov 2017 12:32:34
  |
pi  |
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 <lemke@lemke-it.com> |
2.37.1 10 Nov 2017 19:09:34
  |
pi  |
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 <lemke@lemke-it.com> |
2.37.0 08 Nov 2017 10:23:00
  |
pi  |
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
lfcbase:
- 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
cego:
- 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 ) |
2.36.4 01 Nov 2017 17:42:35
  |
pi  |
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
cego:
- 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
cegobridge:
- Speed up imports by changing the way the parser reads the input
Submitted by: Bjoern Lemke <lemke@lemke-it.com> |
2.36.3 01 Nov 2017 06:44:05
  |
pi  |
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
reasons.
Submitted by: Bjoern Lemke <lemke@lemke-it.com> |
2.36.2 30 Oct 2017 19:36:54
  |
pi  |
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 <lemke@lemke-it.com> |
2.36.1 29 Oct 2017 10:42:23
  |
pi  |
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 <lemke@lemke-it.com> |
2.36.0 30 Sep 2017 06:17:07
  |
pi  |
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 <lemke@lemke-it.com> |
2.35.10 17 Sep 2017 18:23:36
  |
pi  |
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 <lemke@lemke-it.com> |
2.35.8 09 Sep 2017 20:38:04
  |
pi  |
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 <lemke@lemke-it.com> |
2.35.4 03 Sep 2017 09:44:23
  |
pi  |
databases/cego: update 2.35.3 -> 2.35.4
- Added tuple information command tupleinfo to indicate
tuple state information for a given table
( COMMITTED, INSERTED, DELETED, OBSOLETE )
- 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 <lemke@lemke-it.com> |
2.35.3 02 Sep 2017 10:08:30
  |
pi  |
devel/lfcxml: update 1.2.4 -> 1.2.5
databases/cego: update 2.35.2 -> 2.35.3
lfcxml:
- Small improvement in XMLSuite::nextChar to check for non-ASCII characters
cego:
- 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 <lemke@lemke-it.com> |
2.35.2 25 Aug 2017 19:50:19
  |
pi  |
databases/cego: update 2.35.1 -> 2.35.2
- Fix for a bad patch
In CegoSelect::clone also the pCache variable has to be copied
( was previously done by calling setTabSetId )
Submitted by: Bjoern Lemke <lemke@lemke-it.com> |
2.35.1 24 Aug 2017 17:20:17
  |
pi  |
databases/cego: update 2.35.0 -> 2.35.1
- Fix in CegoSelect::setProcBlock, pBlock was not setup for _pPred
This might result in wrong query results within stored procedures
with select statements which refer to procedure variables
- Changed index recovery handling in a way, that index and btree
objects are rebuild immediately instead of invalidating them. This
leads to a much better recovery performance in case of expensive
queries where index use is needed for fast evaluation
Submitted by: Bjoern Lemke <lemke@lemke-it.com> |
2.35.0 23 Aug 2017 14:32:57
  |
pi  |
databases/cego: update 2.34.0 -> 2.35.0
- Fix in CegoDistManager::checkKey ( used for verify tableset admin
commend ). Check for foreign key has been redesigned
- Fix in CegoBTreeCursor::getFirst, _pAttrCond has to be checked
for 0, otherwise a core dump may occur ( detected with verify
tableset admin command )
- In CegoViewObject::toChain() the view object reference string has
to return complete information including the tableset. Otherwise,
references to foreign tableset objects with the view will not work
correctly.
- Fix in CegoDistCursor to support multiple view references in a
query ( e.g. select a from v1 where exists select * from v1 ... )
In the past, this might lead to infinite loops, since just the view
select reference was used. Now the reference is cloned. (Only the first 15 lines of the commit message are shown above ) |
2.34.0 12 Aug 2017 12:21:23
  |
pi  |
devel/lfcbase: update 1.9.7 -> 1.10.0
databases/cego: update 2.33.22 -> 2.34.0
lfcbase:
- Adoptions made in CommandExecuter and Outstream for MINGW builds
- Added Datetime advanced constructor for more efficient datetime construction
cego:
- Small fix in CegoAttrCond::operator = , compare Find result
with 0 instead of false. A compile error occured for MINGW compiles
- Use of new introduced lfcbase datetime constructor to create
datetime values with numeric input ( year, month, day, hour, minute
and second ) for more efficient value handling
- Fix in CegoTypeConverter::getTypeLen for LONG_TYPE values, it
should be size of(long long) instead of sizeof(long). This impacts
MINGW compiles, since sizeof(long) ist just 4 bytes
- Changed CegoTypeConverter methods to static
- Introduced new date function newdate with optional numeric input.
If used with year and month input, this can double the speed for
date construction ( no string parsing required )
Submitted by: Bjoern Lemke <lemke@lemke-it.com> |
2.33.22 05 Aug 2017 12:12:36
  |
pi  |
databases/cego: update 2.33.21 -> 2.33.22
- More fixes in CegoTableManager::keyReferenceExists and
CegoTableManager::createForeignKey, there still were missing some
adpotions for TableCursor::setup return code and other case handling
Submitted by: Bjoern Lemke <lemke@lemke-it.com> |
2.33.21 29 Jul 2017 07:01:49
  |
pi  |
databases/cego: update 2.33.20 -> 2.33.21
- Added further constraint check in CegoTableManager::dropObjectSynced.
Primary objects just allowed to be removed, if no foreign key
reference exists
- More fixes on foreign key contraint handling in
CegoTableManager::checkKeyIntegrity and CegoTableManager::insertDataTable
methods
- Fix in CegoTableManager::checkKeyIntegrity. The implementation
of the mehod has been completly reworked, since not all violation
cases have been treated.
Submitted by: Bjoern Lemke <lemke@lemke-it.com> |
2.33.20 22 Jul 2017 08:34:58
  |
pi  |
databases/cego: update 2.33.19 -> 2.33.20
Fix in CegoDistCursor to support advanced left and right outer
join queries of the form
SELECT tx.a AS xa, ty.a AS ya FROM t1 tx
LEFT OUTER JOIN t2 ty ON tx.a = ty.a + 1;
For this, the evaluation of the predicate has to be done in a
different way to get complete row set
Submitted by: Bjoern Lemke <lemke@lemke-it.com> |
2.33.19 16 Jul 2017 13:47:20
  |
pi  |
databases/cego: update 2.33.18 -> 2.33.19
- Fix in CegoOrderSpace::insertTuple, for the localTuple variable,
also a dedicated copy has to be allocated, otherwise it may happen
that invalid tuple references ( caused be page relocation ) lead
to invalid order results
- Added performance optimization to CegoTableManager::updateTuple.
The already evaluated index, key and checklist are also provided
to checkIntegrity method now ( instead of retrieving the lists again).
The improves performance for updates with many tuples significantly
Submitted by: Bjoern Lemke <lemke@lemke-it.com> |
2.33.18 14 Jul 2017 06:22:06
  |
pi  |
databases/cego: update 2.33.16 -> 2.33.18
- Method cleanup in CegoSelect.cc, also some irrelevant case is
treated for grouping clauses in combination with distinct operator
- Added tablemanager parameter to CegoProcWhileStmt to catch query
abort. In case of infinite while loops, this enables the db admin
to abort procedure execution
- Optimization for CegoFunction::SETCOUNT procedure implementation
added. Now this is an atomic operation, instead of calling
getCounterValue.
- For this, also the CegoXMLSpace::setCounterValue method has been
changed to return the current counter value return the current
counter value
Submitted by: Bjoern Lemke <lemke@lemke-it.com> |
2.33.16 29 Jun 2017 05:38:13
  |
pi  |
databases/cego: update 2.33.14 -> 2.33.16
- Completion for admin help backup section, some commands were still missing
Improvements for procedure indent formatting. All sugar, nothing functional
- Fix in CegoAction::execute, missing break added after calling execListView
- Fix in CegoQueryHelper::evalPredicate. In case of subselects, the
parent join buf also has to reset after performing the subselect,
otherwise invalid pointer references are still active for the next
caller
- Seg faults have been experienced for delete with double nested
subselect conditions ( see check055 )
Submitted by: Bjoern Lemke <lemke@lemke-it.com> |
2.33.14_1 27 Jun 2017 13:46:53
  |
sunpoet  |
Update devel/readline to 7.0 patch 3
- Bump PORTREVISION for shlib change
Changes: https://cnswww.cns.cwru.edu/php/chet/readline/CHANGES
https://lists.gnu.org/archive/html/bug-bash/2016-09/msg00107.html
https://lists.gnu.org/archive/html/bug-readline/2017-01/msg00002.html
Differential Revision: https://reviews.freebsd.org/D11172
PR: 219947
Exp-run by: antoine |
2.33.14 03 Jun 2017 18:48:09
  |
pi  |
databases/cego: 2.33.12 -> 2.33.14
- Design modification in CegoAction for semantic action ( execXXX methods )
An analysed statement is now just executed after complete succesful
parsing of the given input. This avoid protocol effects for queries
like "select * from t1;;" where the query is executed but the
second semicolon is detected as an parse error which also is sent
to the client.
For this the new method CegoAction::execute has introduced which
is ( explicitly ) called after successful CegoAction::parse
- Fix for distinct handling in CegoAggreation
Fix for alias handling regarding view creates. Alias definitions
are mandatory now for aggregated attribute definitions, e.g.
create view v1 as select count(*) from t1;
=> returns now
ERROR: Missing alias reference for view create
and must be written as
create view v1 as select count(*) as c from t1;
Submitted by: Bjoern Lemke <lemke@lemke-it.com> |
2.33.12 27 May 2017 07:39:21
  |
pi  |
databases/cego: update 2.33.11 -> 2.33.12
- Fix in CegoAttrComp::reset, case VALUE2VALUE still was not treated,
which lead to wrong index handling for between clauses with native values
Submitted by: Bjoern Lemke <lemke@lemke-it.com> |
2.33.11 25 May 2017 20:03:54
  |
pi  |
databases/cego: update 2.33.9 -> 2.33.11
- Fix in CegoObjectManager::createBTreeObject to avoid some duplicate btree
entries
- Added space character in CegoSelect::toChain after distinct keyword
to avoid certain errors
- Fix in CegoAttrComp::operator== The values should NOT be compared,
since they are set up by the calling CegoAttrCond::update method
Otherwise, the error "Cannot set up diff for attribute condition"
occurs.
basecheck54 added to test for the this problem
- Fix in CegoQueryHelper::evalAttrCond, comparison modulation was
missing for one case whihc leads to wrong query results for comparisons
like 3 < a ( constant left )
- Optimization added for between clause, indexes were just used for
constant values in between clause ( eg. a between 10 and 20 )
This has been expanded, that also indexes are used, if attribute
references are contained ( eg. a between t2.x and t3.y )
Submitted by: Bjoern Lemke <lemke@lemke-it.com> |
2.33.9 07 May 2017 11:50:49
  |
pi  |
databases/cego: update 2.33.8 -> 2.33.9
- in CegoTableManager::getClobData added termination character to
ensure clob values are terminated with 0 character
- Small fixes for fixed value handling
- Small fixes for quote escape handling in cgclt batch mode
- In CegoAction::selectionList1 added alias check for non unique
alias definitions
- Stored Procedure formatting improvements regarding indent handling
Submitted by: Bjoern Lemke <lemke@lemke-it.com> |
2.33.8 22 Apr 2017 15:29:38
  |
pi  |
databases/cego: update 2.33.6 -> 2.33.8
- Fix in CegoSelect::buildJoinConditions, the _attrPred array has
to be set up. Otherwise it may occur, that the predicate is not
evaluated, if it could not been evaluated by the table curser
condition.
- Furthermore, a setup method has been introduced for CegoAttrCond
to evalute joinBuf and parentJoinBuf ( if both references occur in
a condition this is needed )
- Optimization in CegoCheckpoint::checkpointReached, if interval
was reduced, we set up the new interval
- Fix in CegoTableManager::removeAllComp, first we have to remove
from the list, the we can free the memory. On Linux system with
g++, the previous sequence might lead to memory faults
- Fix in CegoRecoveryManager::recoverTableSet, after regDataFiles,
als registerObjects method must be called, otherwise recovery could
fail in case of table view recoveries
- Optimization in CegoDistManager::stopDistTableSet, the new
introduced method CegoDatabaseManager::removeAllObjects is called,
the ensure object cache cleaning
- Added prompt command line option to cgadm to set up specific prompt value
- Adding formating improvements to CegoAdminHandler for show logmng
and show backupmng commands
Submitted by: Bjoern Lemke <lemke@lemke-it.com> |
2.33.6_1 22 Apr 2017 12:45:43
  |
miwi  |
- Fix shebangs |
2.33.6 14 Apr 2017 14:30:12
  |
pi  |
devel/lfcbase: update 1.9.3 -> 1.9.6
databases/cego: update 2.33.5 -> 2.33.6
lfcbase:
- Small correction in OutStream, include required by FreeBSD
( for definition of WEXISTATUS )
- Added method getErrorCode to OutStream class
- Cleanup of OutStream implementation ( removed some includes,
removed ifdef for MINGW)
cego:
- Small improvements for utility scripts cgmkdb, logManager and backupManager
Submitted by: Bjoern Lemke <lemke@lemke-it.com> |
2.33.5 07 Apr 2017 19:56:49
  |
pi  |
databases/cego: update 2.33.4 -> 2.33.5
- Fix in CegoSelect and friends for query cleanup. The cleanUp
method did not cleanup all field value references which might lead
to invalid memory access in case of repeated view calls ( Variable
pParentJoinBuf ).
Corresponding cleanUp method have been introduced or CegoExpr,
CegoTerm, CegoFactor and friends.
- Check052 has been introduced to verify the previous described behaviour
Submitted by: Bjoern Lemke <lemke@lemke-it.com> |
2.33.4 02 Apr 2017 08:01:52
  |
pi  |
databases/cego: update 2.33.3 -> 2.33.4
- Fix in CegoTableManager::insertDataTable, the newRBEntry method
call for the transactions manager also must be catched by the
exception. Otherwise, the index might be corrupted if any exception
occur ( e.g. out of temp space )
Submitted by: Bjoern Lemke <lemke@lemke-it.com> |
2.33.3 01 Apr 2017 08:18:38
  |
pi  |
devel/lfcbase: update 1.9.2 -> 1.9.3
databases/cego: update 2.33.1 -> 2.33.3
lfcbase:
- Small fixes for Monitor and Pager class, adding missing ifdef for
curses option in Pager class, replaced CGNOCURSES with LFCNOCURSES
cego:
- Fix in CegoRecoveryManager::recoverTableSet, before calling
transactionRecovery, we have to set flag setIgnoreInvalid to true.
During transaction recovery phase, we must ignore invalid btrees/index
objects since these objects could be invalidated but Log data
integrity and consistency is ensured
- Added implizit tableset btree and index correction to recovery procedure
( CegoRecoveryManager::recoverTableSet ) (Only the first 15 lines of the commit message are shown above ) |
2.33.1 26 Mar 2017 09:02:55
  |
pi  |
databases/cego: update 2.33.0 -> 2.33.1
- Some cosmetic changes for backup manager handlng
( change nameing from archmng to backupmng )
Submitted by: Bjoern Lemke <lemke@lemke-it.com> |
2.33.0 25 Mar 2017 18:06:25
  |
pi  |
devel/lfcbase: update 1.9.1 -> 1.9.2
databases/cego: update 2.32.14 -> 2.33.0
lfcbase:
- Added CommandExecuter::executeStream method to catch stdout for
any forked process
- Added class OutStream to catch stdout from forked programs via popen
cego:
- Added database verify006 to check multidimensional btrees also in
combination of null value handling.
- Fix in CegoObjectCursor::getNext, double method call for unlockData removed
- Small grammar correction to treat distinct flag for select-star statement
- Fix in CegoBTreeCursor::compValue, null values have not been handled
correctly. For string values, string termination was not clean, which (Only the first 15 lines of the commit message are shown above ) |
2.32.14 11 Mar 2017 19:33:22
  |
pi  |
devel/lfcbase: update 1.9.0 -> 1.9.1
databases/cego: update 2.32.11 -> 2.32.14
lfcbase:
- Small fix for Monitor::showFormBox, in case of menu elements,
delete key is disabled
cego:
- Correstion for distinct clause. With the current grammar implemention,
queries with nested selects and using the distinct operator might
fail. Cego.def grammar and CegoAction implementation has been changed
in way, that distinct option is just allowed at the beginning ( e.g.
select distinct count(a) from t1 and NOT select count(distinct a) from t1 )
This should simplify usage, since by using the distinct clause,
distinct tuples are retrieved either for plain queries or for (Only the first 15 lines of the commit message are shown above ) |
2.32.11 05 Mar 2017 11:08:50
  |
pi  |
devel/lfcbase: update 1.8.12 -> 1.9.0
databases/cego: update 2.32.8 -> 2.32.11
databases/cegobridge: update 1.1.2 -> 1.1.3, fix build with clang 4.0
devel/lfcbase:
- Added Monitor class for ncurses based GUI utility implementation.
This class provides GUI layout and event handling to simply ncurses
based GUI tool implementaton.
- Added class Pager for curses based pager implementation
databases/cego:
- Include stdlib.h added in CegoNet ( still missing forLinux compiles )
- Added CegoFieldValue::getDim method required for arithmetic operations
on fixed values
- Fix in CegoTableManager::getPoolInfo, readdelay and writedelay was (Only the first 15 lines of the commit message are shown above ) |
2.32.8 29 Jan 2017 09:36:37
  |
pi  |
devel/lfcebase: update 1.8.11 -> 1.8.12
databases/cego: update 2.32.7 -> 2.32.8
lfcbase:
- Changed methods for class Sleeper to static. Added Sleeper class
test to test suite
- Added include file limits.h in Chain.cc. For Linux compiles, this
include is required ( definition of INT_MAX and INT_MIN )
cego:
- Small improvements for CegoAdmMon curses based admin console
Submitted by: Bjoern Lemke <lemke@lemke-it.com> |
2.32.7 21 Jan 2017 15:10:16
  |
pi  |
databases/cego: update 2.32.6 -> 2.32.7
- Fix in CegoFileHandler::releaseFiles.
_tabSetId and _isReg vars have to be set to zero/false in any case.
Otherwise, it might happen that old entries are still visible and in case
of a tableset recreation obsolete file handle information is provided
- Method CegoTransactionManager::hasOpenTransaction added to check for open
transaction for a spedific table. This method is called now before a table
can be dropped to ensure there are no open transaction for this table.
Submitted by: Bjoern Lemke <lemke@lemke-it.com> |
2.32.6_1 16 Jan 2017 12:54:59
  |
amdmi3  |
- Fix missed shebang
- Add dependency on bash, the port installs bash scripts
- Switch to USES=localbase
- Switch to new test framework
Approved by: portmgr blanket |
2.32.6 04 Jan 2017 19:37:20
  |
pi  |
databases/cego: update 2.32.5 -> 2.32.6
- Small performance improvement in CegoBufferPool::bufferFix
Instead of copying the buffer head data to a local variable via
memcpy, a pointer variable is used to access the data directly
Performance improvement: just a few percent ...
Submitted by: Bjoern Lemke <lemke@lemke-it.com> |
2.32.5 01 Jan 2017 15:43:37
  |
pi  |
databases/cego: update 2.32.4 -> 2.32.5
- Added another performance patch to CegoBTreeCursor.
The method compValue has been redesigned in a way, that comparison
is prepared at cursor creation time and so could be executed in
a optimized and faster way
This speeds up queries with joined tables, where the joined table
is traced many times ( e.g. select count(*) from t1, t2 where
t1.a = t2.a )
Submitted by: Bjoern Lemke <lemke@lemke-it.com> |
2.32.4 31 Dec 2016 18:14:09
  |
pi  |
databases/cego: update 2.32.3 -> 2.32.4
- Fixes and improvements for table export added
In CegoXPorter::xmlExportable, the pOutStream pointer was deleted,
which lead to a core dump ( pointer is already deleted by Element )
Row counter handling and messages have been improved
- Change back to memove call in CegoBTreeNode:shiftEntries. Copying manually
and bytewise decreased performance about two times for building
up btree objects. This has been observed on native POSIX ( FreeBSD 11 )
but also on MSYS64 compiles
- Improvements for CegoBTreeCursor. With the new introduced methods
CegoBTreeNode::getMedPage and CegoBTreeNode::rightValue, the search
for the appropriate subnode can be made with logarithmic efforts
instead of linear search. To validate this improvement, the following
query has been setup for a random filled table t1 (Only the first 15 lines of the commit message are shown above ) |
2.32.3 24 Dec 2016 10:03:02
  |
pi  |
databases/cego: update 2.32.2 -> 2.32.3
- Fix in CegoAction::insertStore and CegoAction::insertValueSpecStore;
for value array inserts via network, the ack for the protocol was
no satisfied ( e.g. insert into t1 values ( 1, 'XXX'),(2,'YYY'),...)
which leads to a hanging database client. Since class CegoQuey
was already prepared for bulk inserts, this was a simple fix,
just calling execQuery via insertStore parser method just one time.
- Code cleanup in CegoBTReeManager and CegoBTreeNode, use of static
method CegoDataPointer::getEncodingLength, (define of DPENCODINGLENGTH)
- Fix in CegoFileHandler::CleanDataFile,pageId was not calculated
correctly ( missing offset )
Submitted by: Bjoern Lemke <lemke@lemke-it.com> |
2.32.2 22 Dec 2016 06:24:48
  |
pi  |
databases/cego: update 2.32.1 -> 2.32.2
- Fix in CegoTranactionManager, replaced LONG_TYPE with PAGEID_TYPE,
since this is the correct type for page entries. This was detected
on MinGW64 compiles (seg fault occured), since the type size differs
on this platform.
Submitted by: Bjoern Lemke <lemke@lemke-it.com> |
2.32.1 18 Dec 2016 16:57:51
  |
pi  |
databases/cego: update 2.32.0 -> 2.32.1
- Fixes for CegoBTreeManager::deleteBTree ( changed int type to
PageIdType for page vars )
and CegoBTreeManager::insertBTree ( propValue was not setup correctly
for root node propagation in some cases, which might lead to corrupt
btree structure )
Submitted by: Bjoern Lemke <lemke@lemke-it.com> |
2.32.0 16 Dec 2016 18:24:51
  |
pi  |
devel/lfcbase: update 1.8.10 -> 1.8.11
lfcbase:
- Added range check to Chain::toInteger method to catch overflow exception
cego:
- This version brings a complete redesign of low level page handling.
Instead of page references identified by fileId and pageid, a
database unique pageid is used now
This results in a complete reimplemtation of several low level
classes like CegoFileHandler, CegoBufferPool, Blob handling, etc.
Since pages are references by a single ( 64 bit ) id now, I expect
an increased performance behaviour over all database operations.
Most code modifications are done, code complies and basic
functionally works ( create tableset, create table, insert table )
- First performance analysis indicates a speedup of about 10% for
btree creation, so significant speedup for full table scans.
- All base checks passed, but there is still a page allocation leak
for table drops
- Functional tests with SysMT successful completed
Submitted by: Bjoern Lemke <lemke@lemke-it.com> |
2.31.7 04 Dec 2016 10:54:06
  |
pi  |
databases/cego: update 2.31.6 -> 2.31.7
- Fix in CegoFieldValue for fixed value handling.
In case of fixed value aggregations, the specified fixed dimension
should be kept. This has been done be analysing the value dimension
in the CegoFieldValue:add/sub/mu/div methods.
In CegoQueryHelper::prepareFieldValue, fixed values are checked now
for right dimension
Submitted by: Bjoern Lemke <lemke@lemke-it.com> |
2.31.6 02 Dec 2016 11:58:22
  |
mat  |
Do not use post-stage. Use post-install instead.
The only reason to use post-stage is because the port needs to do
"things" at a later time, like some plist manipulation.
While there, fold post-install in do-install targets when they are
defined.
PR: 214780
Submitted by: mat
Exp-run by: antoine
Sponsored by: Absolight |
2.31.6 26 Nov 2016 10:24:06
  |
pi  |
databases/cego: 2.31.5 -> 2.31.6
- Fix in CegoSelect::getQueyId added, for the ordering clause asc
and desc ordering attributes were missing. This might lead to wrong
ordering results if query caching is used
Submitted by: Bjoern Lemke <lemke@lemke-it.com> |
2.31.5 21 Nov 2016 06:41:32
  |
pi  |
databases/cego: update 2.31.4 -> 2.31.5
- Changed CegoQueryHelper methods to static
- Fix for CegoBTreeManager and friends regarding small string values
( string(1) )
- Please note, that this fix invalidates btree format.
Btrees have to be recreated after this fix, databases need to
be exported and imported.
Submitted by: Bjoern Lemke <lemke@lemke-it.com> |
2.31.4 19 Nov 2016 08:26:19
  |
pi  |
databases/cego: update 2.31.3 -> 2.31.4
- Fix some leaks in CegoXPorter regarding file handles and memory
allocation ( improved exception handling )
Submitted by: Bjoern Lemke <lemke@lemke-it.com> |
2.31.3 16 Nov 2016 08:44:12
  |
pi  |
databases/cego: update 2.31.2 -> 2.31.3
- Fixed a file handle leak for datafiles and logfiles ( CegoFileHandler,
CegoTableManager and CegoLogManager ) After tableset creation (
or start and stop ), file handles have not cleaned up properly.
This lead to file remove problems in case of a tableset drop.
This effect was detected by building and testing the MinGW64 port
Submitted by: lemke@lemke-it.com |
2.31.2 13 Nov 2016 14:35:36
  |
pi  |
databases/cego: update 2.31.1 -> 2.31.2
- Fix in CegoClient for escape character handling in batch mode
- Fix in CegoClient for dumpfile generation. Default values handling corrected
- Join optimizer fix in CegoSelect, CegoAttrCond and CegoBtreeCursor.
join attributes are checked now in a more sophisticed way, which
leads to improved execution performace for advanced joins
PR: Bjoern Lemke <lemke@lemke-it.com> |
2.31.1 10 Nov 2016 20:19:50
  |
pi  |
databases/cego: update 2.31.0 -> 2.31.1
- Fix in CegoBTreeManager::insertBTree, in case of a duplicate
exception, a bufferpool leak occured ( buffer is not unfixed ). |
2.31.0 10 Sep 2016 12:46:48
  |
pi  |
databases/cego: 2.30.26 -> 2.31.0
- Added database flag DUPLICATENULL to allow duplicate null values
for unique btree objects
Submitted by: Bjoern Lemke <lemke@lemke-it.com> |
2.30.26 21 Aug 2016 19:03:45
  |
pi  |
databases/cego: 2.30.24 -> 2.30.26
- Fix in CegoFunction::evalFieldValue, for functions date2str,
date2int, int2date, type casting to appropriate type has been added.
Without the cast, the functions might return wrong results
- Adaptions for CegoBlowTab to use CegoNet API
- Completion for blob methods in CegoNet
- Improved flow control in CegoClient ( based on ncurses )
- Optimization in CegoClient, just high level CegoNet API methods
are used now for client implementation. Missing methods have been
added to CegoNet API
Submitted by: Bjoern Lemke <lemke@lemke-it.com> |
2.30.24 11 Aug 2016 18:07:17
  |
pi  |
databases/cego: 2.30.23 -> 2.30.24
- Fix in CegoNet::connect, the global vars __dateTimeFormat,
__currencySymbol and __decimalPoint are set up now to appropriate
defaults
Submitted by: Bjoern Lemke <lemke@lemke-it.com> |
2.30.23 11 Aug 2016 10:54:17
  |
pi  |
devel/lfcbase: 1.8.9 -> 1.8.10
databases/cego: 2.30.21 -> 2.30.23
lfcbase:
- Improvements for BigDecimal class
All values are normalized now and stored now with non trailing zeros
cego:
- Fixes for cast operations regarding values for type fixed
- Fix in CegoClient, global vars __currencySymbol and __decimalPoint
still have not been set up correctly, done in the same way as for
CegoMain on server side
- Added verify005.sql to dbcheck suite to verify cast operations
Submitted by: Bjoern Lemke <lemke@lemke-it.com> |