Commit graph

17 commits

Author SHA1 Message Date
Kurt Jaeger
65db7a8725 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
2019-04-21 13:31:25 +00:00
Kurt Jaeger
a19dcac247 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>
2018-03-01 12:29:31 +00:00
Kurt Jaeger
a90cb2865a 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>
2017-11-18 08:34:07 +00:00
Kurt Jaeger
ab253c5ab8 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>
2017-11-10 19:09:33 +00:00
Kurt Jaeger
59c7249a69 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
- Support for lfcbase-1.11.x with new Net API.
  The parameter maxSendLen ist still a constant in CegoDefs.h
  Improvements added for CegoXMLSpace::setPerm, for existing permissions,
  just tableset, filter or right can be set up now,
  e.g set permission p1 with right=WRITE for role1 just sets the right
  value for permission p1 to value WRITE, all other values are unchanged
- Added show parameter admin command to show all tableset independent
  database parameters

p5-DBD-cego:
- support changed API with lfcbase-1.11.0

cegobridge:
- support changed API with lfcbase-1.11.0

Submitted by:	Bjoern Lemke <lemke@lemke-it.com>
2017-11-08 10:23:00 +00:00
Kurt Jaeger
9ddae3c3f6 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>
2017-11-01 17:42:34 +00:00
Kurt Jaeger
27784b1d85 databases/cegobridge: update 1.1.4 -> 1.1.5
- Add some compat hooks to parse mysql 5.0 exports

Submitted by:	Bjoern Lemke <lemke@lemke-it.com>
2017-10-30 18:06:27 +00:00
Kurt Jaeger
0e1c8df944 databases/cegobridge: update 1.1.3 -> 1.1.4
- fixes build problem due to invalid pointer arithmetic

Submitted by:	Bjoern Lemke <lemke@lemke-it.com>
2017-07-22 08:32:31 +00:00
Kurt Jaeger
6c73e6edd2 databases/cegobridge: fix backChar() for Oracle/Postgres, too 2017-05-07 11:17:41 +00:00
Kurt Jaeger
655eea77c3 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
  not calculated correctly
- Fix in CegoDistManager::stopDistTableSet, removing of btree objects
  from database object dictionary was still missing
- In CegoTableManager::dropTableSet now also counter objects are
  dropped ( stored in the database xml file ).
- Added some sizing optimizations for CegoAdmMon forms
- Fix in CegoRecoveryManager::recoverCurrentTransactionLog, added
  the force option to addCounter method, since counters already could
  be synched to xml ( not completely transaction save )
- Online index build up tested and verified. First tests with heavy
  insert operations ( using cgblow ) during index build went succesful.
- Improvements for CegoAdmMon role permission handling, added remove
  permission option
- Preparation of CegoObjectCursor and CegoTableManager to support
  online index rebuild with write access to the table.
  For this, concurrent insert operations have to be performed with
  append =true. The ObjectCursor locks the last page until the index
  rebuild is finished ( method setLastPageSync )
  In this way, the index can be build up in parallel, while further
  tuples could be appended to the table. ( just supported for btree
  index objects )

PR:		216621
Submitted by:	Bjoern Lemke <lemke@lemke-it.com>
Reported by:	jbeich
2017-03-05 11:08:50 +00:00
Mathieu Arnold
4e1b79a0a6 Remove ${PORTSDIR}/ from dependencies, categories d, e, f, and g.
With hat:	portmgr
Sponsored by:	Absolight
2016-04-01 14:00:51 +00:00
Kurt Jaeger
8d767d9eba devel/lfcbase: 1.7.0 -> 1.7.2
databases/cego: 2.28.3 -> 2.29.1
databases/cegobridge: 1.1.1 -> 1.1.2

Please note: Updating cego databases needs an export/import
             cycle for 2.28 -> 2.29

lfcbase:
- Fix in Datetime.cc, added include config.h, otherwiese the local
  implementation of strptime ist used. This should just be done, if
  the system API does not provide this call ( e.g. MINGW ) .
- Memory leak fixed in File::readLine

cego:
- Started with clob datatype implementation
- Fix in CegoSelect constructor, _cacheEnabled var was not initialized
  in the decoding constructor, which might lead to core dumps in case
  of recovery of complex with enabled querycache Fix in CegoAdminThread
  constructor, disableAuth method for TableManger called, otherwise
  tableset recovery might fail with auth error
- Required network protocol expansions done for clob handling
  (putclob, getclob, delclob)
- More work on clob handling. A fix was done for update operations
  on clob values in CegoTableManager::updateTuple method. Before
  updating the tuple, all clob references must be cloned, otherwise
  in case of untouched clobs, references are invalid. This approach
  is brute force, better would be, to stay on the untouched clob
  references. But in terms of transaction and recovery handling,
  this is not trivial
- Very long strings are handled now in CegoAction and CegoClient
  to also parse large clob values
- Modification in cgclt for raw mode, Now just plain data is listed,
  with the command line option --raw=X, a separator token can be setup
  as a column separator

cegobridge:
- fix build problem

Submitted by:	Bjoern Lemke <lemke@lemke-it.com>
2016-02-06 15:59:38 +00:00
Kurt Jaeger
ad9999f483 databases/cegobridge: 1.1.0 -> 1.1.1, fixes build 2016-01-12 08:53:00 +00:00
Kurt Jaeger
9b796fdfb0 devel/lfcbase: 1.6.7 -> 1.7.0
devel/lfcxml: 1.1.8 -> 1.2.2
databases/cego: 2.27.2 -> 2.28.3
databases/p5-DBD-cego: bump portrevision
databases/cegobridge: bump portrevision

IMPORTANT: Upgrades of cego 2.27.x to 2.28.x databases has to be done by
export and import.

lfcbase:
- Adaptions made for build with msys2 / mingw64. Many windows
  specific stuff could be eliminated, since mingw64 provides better
  POSIX support ( e.g. pthreads, timer functions .. )

lfcxml:
- Fix in configure.ac to find lfcbase and for FreeBSD

cego:
- Fix in CegoSelect::CegoSelect, the pCacheList variable was not
  initialized to 0 for all constructors. In case of system table
  selects, the variable might be undefined which might lead to
  segmetation faults.
- Changed synchronization level for btree creation. So the base
  table can also be accessed while btree is created ( During creation
  btree status is invalid )
  This also allows to perform on online btree reorganization, since
  a new btree can be build up in parallel
- Fix in CegoSystemObject::createSystemSpace, id values for bustat
  table must start with id 1 instead of id 0, otherwise, bustat
  information retrievel fails or may result in a core dump
  ( select * from $bustat )
- Added performance fix for CegoQueryHelper::decodeFVL, since the
  tuple context information is already from the method called, the
  tid, tastep and ts parameters have been remove from this method.
  This saves some decoding time
- Please note, that version 2.28.x makes datafiles from older versions
  incompatible.
  An upgrade requires a xml tableset export of existing data and a
  restore after succesful upgrade
- 2.28.x also contains many code cleanup fixes and some fixes for
  btree handling.
- Fix in CegoTableManager::createBTree, in case of an exception
  during build up, the allocated have to be cleanup up. For this the
  a rollback method was introduced in class CegoBTreeManager.
  Fix in CegoTableCursor, invalid btree objects have not been ignored
- Many adapations to make cego full 64bit ready also in combination
  with MSYS2 / MINGW64. This resulted in change of many variables
  from type long to type unsigned long long (type long is just 32 bit
  for Windows ) With an appropriate MSYS2 / MINGW64 installation,
  cego compiles proper and runs stable now.
  Many thanks to the MSYS/MINGW developers for their amazing work !
- Several changes from type int to type unsigned long long
- Fix in CegoTableManager::deleteDataTable ( renamed to
  deleteDataTableEntry )
  Since we allow now parallel updates, the method must check if the
  target tuple has already been touched by another transaction.
  Otherwise, invalid double entries could occur in case of concurrent
  updates on the same tuple.
  If a concurrent transaction is detected, the method returns false.
  This return value is used by the updateTuple method to decide,
  if the subsequent insert operation must be performed.
- Since it is not enough jut checking the tuple header info for
  update deletes, a record locking has to be added to avoid duplicates.
  In this sense, record locking for setTupleInfo method call ( used
  in CegoTableManager and CegoTransactionManager ) was added. For
  this, the lockRecord and unlockRecord method have been reactivated
  in CegoLockManager class.
  This lock avoids, that in case of concurrent tuple updates duplicate
  tuples are produced by an update.
- Fix in configure.ac to find lfcbase and lfcxml and for FreeBSD

Submitted by:	lemke@lemke-it.com
2016-01-11 12:30:27 +00:00
Kurt Jaeger
fd0a56db07 databases/cegobridge: 1.0.1 -> 1.1.0
- adaptions for cego-2.25.0 API change

Submitted by:	Bjoern Lemke <lemke@lemke-it.com>
2015-09-11 06:42:03 +00:00
Kurt Jaeger
74a35865b1 databases/cegobridge: 1.0.0 -> 1.0.1
- Fixes for MySQL import

Submitted by:	lemke@lemke-it.com
2015-06-01 20:58:44 +00:00
Kurt Jaeger
dd2c8e6807 New port: databases/cegobridge (replaces databases/my2cego)
cegobridge is a tool to import/export database dumps into Cego, a
Relational Database Management System (RDBMS). Currently it supports
MySQL, other database systems to import/export can be added.

Many more details are available at:

WWW: http://www.lemke-it.com/

Submitted by:	Björn Lemke <lemke@lemke-it.com>
2015-05-19 06:23:02 +00:00