V11.5 Release Notes
c-treeACE Server Critical Fixes
Corrected checkpoint processing to persist required transaction logs for recovery
V11.2 unhandled exception on first update to member index, or error 14 on member index after automatic recovery
Protection for internal server threads still running at end of server shutdown
Server Crash - Failed memory allocation on startup could crash server
Possible Server exception with CTSTATUS_SIZE option
Server terminated abnormally when ctQUIET() was called after a quiesce previously failed to reopen a file
ctrdmp terminated with unhandled exception during recovery phase
Failed call to ctDeferredIndexControl() could hang c-tree Server connections
Unhandled exception in Blocking Locks: BLKIREC()
Crash in REDVREC following fileblock
Unhandled exception when a second callback is added to a file
Crash after error opening file with conditional index
ctdump may truncate dump stream file if DAVL_ERR (442) occurred
Dynamic dump restore terminated with internal error when restoring segmented files
Dynamic Dump with !PROTECT option sometimes caused c-treeACE Server to hang
Automatic recovery crash when redoing PRMIIDX operation for data file with compressed records
Automatic recovery failed with error 12
Automatic recovery failed with L69 error
RECOVER_MEMLOG option could cause automatic recovery to fail with errors 55, 96, etc.
Auto Restore Point quiesce no longer causes threads to remain blocked after quiesce fails with error 843
Exception when undoing transaction-dependent file create
c-treeACE Server controlled shutdown CHKP_ERR (529)
Server deadlock involving aged cache page flush
Successive BLKIREC() calls caused memory leak
Server crash due to orphaned cache page when out of disk space
Server Exception - Correct unhandled exception in compression logic
Server Exception or read incorrect ending of compressed record
Server - Exception when Replication Agent read past end of transaction log
Server hang while dynamic dump waited for quiet transaction state
Server deadlock in record update callback
Server unhandled exception when using ctstat -funcfile file
Server crash when field starting in fixed portion and ending in variable portion
Server crash due to invalid license
Server unhandled exception when two connections rebuild a compressed data record file at the same time
Server - Exception at shutdown when DISK_FULL_ACTION active
Server unhandled exception when r-tree report's c-tree initialization fails
Mac OS X server exception when shutting down fails
Server handles failed startup with SNAPSHOT_SHUTDOWN
RenameIfil() deletes existing file on Unix/Linux
Server Exception - Correct unhandled exception in compression logic
Server Exception or read incorrect ending of compressed record
REDREC() reads wrong last 4 bytes of uncompressed fixed-length record in compressed file
c-treeACE SQL Server Critical Fixes
SQL parser consumed all system memory and crashed the server
Exception when identity field references out-of-range field number
c-treeACE SQL Server Unicode crash
c-treeACE SQL Server crash following failed Java initialization on AIX
c-treeACE SQL Server exception when building a key for a Unicode key segment
Possible exception or infinite loop in co-file support
Server crash with self-referencing constraints on table with long field
SQL subquery in case clause crash
SQL parser crash fixed
Fixed crash running query with Order By and a sub-query with Group By on multiple columns
Fixed memory leak on each SQL connection
SQL Bit String conversion fix
SQL handling of binary literals larger than field size
DSQL - Server crash when calling ctsqlGetBlob on a field with any data type other than a long
c-treeACE Server
File copy function call may fail with error 965 (BCOD_ERR)
Record update callback function file open
V11 client may lose connection to c-treeACE Server when pstack was run on server
Server shutdown failed with error 452
c-treeACE Server ISAM counter values on Linux
c-treeACE Server no longer logs TLOG_ERR with trantyp of 0x4e
One-time memory leak in background file flush threads
Improved detection of invalid server configuration option values
Socket timeout TRSP_ERR (809)
V11 COMMIT_DELAY on Windows change
DISK_FULL_ACTION environment variables fix
c-treeACE Server now writes automatic restore points at the specified interval
Automatic directory create option not working for TRNLOG transaction-dependent file creates
Connection hangs when reading records due to abandoned commit write locks
PREIMG file create fail with DOTX_ERR (955) during dynamic dump
Error 160 after automatic recovery or forward roll on huge TRNLOG fixed-length data file
Automatic Recovery - "ctfsize failed" message in CTSTATUS.FCS
c-treeACE Server keeps all transaction logs when deferred index thread starts with nonexistent log 1
Node split in transaction-controlled index file could cause error
Transaction commit improvements
c-treeACE SQL
Dropping a column sometimes caused problems with the IDENTITY field
SQL cursor position not properly maintained
SQL DECODE scalar function
DECODE scalar function did not properly set the scale of its result
Linux Unicode server failed to enable SQL TCP-IP socket
Query with predicate "X OR EXISTS(Y)" yielded incorrect results
ctsqlimp imports indices with ISAM null key check causing wrong query result
Corrected SQL database upgrade conversions
SQL database conversion for Unicode databases
Reduce file descriptor usage
c-treeACE SQL Server ignored "preserve cursor" client request
SQL yielded wrong query result
Selecting from a view that referred to a Select statement with right outer join gave wrong results
Parameterized query failed if one parameter was a 8192-char string
Alter Table on table with identity field failed with error -17749
Alter Table VARBINARY default error
c-treeACE SQL Server race condition fixed
Unknown indices identified because CreateFilesetHost renamed templates' internal indices
Unable to connect to SQL on Windows Server 2003 or XP
Core Engine
Communications Layer
Client may hang after failed call to ctTempDir() when using TCP/IP protocol
Shared memory connection attempt hanged on Solaris 9 and earlier systems
Shared memory error 128 on AIX when multithreaded process used single-threaded library
Error 133 connecting to c-treeACE Server using shared memory when server was busy
Communication fixes and modifications
SQL IPv6 support fixes
SQL connect failed with error -17749 using LDAP
Memory Management
Server memory counters reported incorrect values
Index Sub-System
Exception in client-side library when ALCRNG() is called with an out of range index file number
Error 519 or wrong index key counts after automatic recovery (if member updated; host not)
CREIFILX8 failed to create non-existent directory on Unix when ctAUTOMKDIR was specified
Record update failed with NKEY_ERR (894) when using null key
Adding index to a compressed file could fail with READ_ERR (36)
Unhandled exception when assembling key value if index definition specified a negative segment length
Error 894 (NKEY_ERR) - Deleting record failed if index used null key feature and key was null
Error 14 when opening index with additional members that was copied after quiesce with flush
PRMIIDX/RBLIIDX QTOC_ERR (953) with auto restore points
Dynamic Dump and Backup/Restore
Incorrect key counts after dynamic dump restore
Forward Roll failed for TRANDEP creates
Dynamic dump restore terminated with internal error when restoring segmented files
Incremental forward roll reported successful termination when restore point not found
ctrdmp - Dump restore failed with error 12
Multi-User Standalone (FPUTFGET)
Rare occurrence of "Retried Hdr I/O failed" messages in highly concurrent FPUTFGET environment has been eliminated
Multi-threaded FPUTFGET compile error with Embarcadero
Multi-threaded FPUTFGET on Unix - Incorrect lock release with recursive lock support
FPUTFGET header updates result in errors
FPUTFGET now treats read lock requests as write lock requests
FPUTFGET - Corrected variable-length record add duplicate key error on SRLSEG index
PRIME_CACHE and PRIME_INDEX caused only data or index file to be read into cache
File Management
c-treeACE Server displays correct file descriptor requirement value
UQID_ERR (463) on file open
Avoid infinite loop on a corrupted index file
PLOW_ERR (712) on record Add over multi-segment partition key
Superfile member error 14 after being restored from Dynamic Dump
Rebuild or compact failed with FUSE_ERR (46)
Rebuild failed with error 775 on replicated file if a connection had the file open
Compacting file with Extended field types
CreateFilesetHost: Resource copy failed
File compact or index rebuild sometimes failed with FULL_ERR (39) or KLOD_ERR (58)
ctVerifyFile() sometimes failed with error 160 on a 64-bit memory file or error 123 on a huge file
Rebuild or compact failed with error 608 on file with SCHSRL key segment
Possible buffer overflow generating temporary file names on Windows
Rebuild/compact with errorOnCorruptIFILoption enabled causes VLENGTH files to fail with DCPT_ERR (1107)
IERR_COD (923) compacting a transaction-controlled data file
Fixes for Extended Features
Record update callback function could unexpectedly change the current record offset
Fixed-length record update or delete in IICT failed with error 114 if the outer transaction added the record
Time handling in expressions
Batch Processing
ctdbEndBatch() call sometimes freed record locks even with CTBATCH_LOCK_KEEP option
Physical order batch retrieval with record filter returned too few records
ctdbInsertBatch may cause heap corruption
Sequence Create error
PartitionAdmin() returns RSYN_ERR (747)
c-treeACE SQL APIs
SQL query that generates dynamic index corrected
SQL queries never returned when synonym pointed to non-existing table
SQL table open error 4120 (or -21120)
Internal SQL error on REPEATABLE READ query
ctscmp failed with error 608 during index rebuild
SQL query with left outer join and parameters now parses correctly
SQL query with Left Outer Join fixed
Unexpected JDBC 26046 (closed resultset) exception calling getWarning()
c-treeACE SQL JDBC ResultSet.isAfterLast incorrectly returned true with the isAfterLast() positioning method
JDBC catalog handling in DatabaseMetaData was not compliant with JDBC standard
JDBC Connection to set warnings instead of failing with exception on method returning a resultset
ADO.NET Provider may inappropriately retain SQL cursors for ExecuteNonQuery statements
ADO.NET returned wrong number of decimals
ADO.NET Entity Framework provider issues with DDL generation
ADO.NET error when reading non-Unicode varchar fields from Unicode c-treeACE Server
ADO.NET client-side crash fixed
ADO.NET EF6 provider support for V11 servers
ADO.NET connection pooling
ODBC SQLTables call failed with syntax error
ODBC driver allowed "%" as catalog in ODBC SQLTables and SQLColumns calls
PHP driver improvements
Embedded SQL function dh_conv_data() causes client crash
c-treeACE NoSQL APIs
c-treeACE LowLevel
Unexpected Deleted Data with low-level calls in client/server model
c-treeACE ISAM
ISAM-level client call returned error 128
ADDREC DELFLG_ERR (31) following recovery
ITIM_ERR (160) Reading records another connection is deleting
ITIM_ERR (160) or wrong record on Next Record with ISAM key buffers disabled
Next Record fix using co-files
FRSREC() failed with error INOT_ERR (101)
Incorrect parameter specified in SETFLTR() and SETFLTRN()
PUTHDR mode ctSUSSRLSEGhdr ignored on client side
ctstat -isam - Improved accuracy of ISAM counters
Select c-treeDB functions improperly allowed fields larger than 65535 bytes
ctdbDeleteTable on missing table failed with INOT_ERR instead of CTDBRET_NOSUCHTABLE
ctdbGetRecordCount sometimes returned incorrect count
ctdbRenameTable may not rename index having the same name of the table
ctdbRenameTable did not properly rename indices containing full path
ctdbStringTo* functions fail with 4029 (invalid date)
ITIM_ERR (160) reading a record that used Unicode ctKSEG_STYP_PROVIDED key segment
Unicode conversion failed with VBSZ_ERR (153)
c-treeACE Replication
Replication Agent Unique Index improved
Replication Agent terminated with error 938 decompressing a record image
Replication Agent LOPN_ERR (96)
Replication Agent failed to start with error -1
Socket timeout TRSP_ERR (809)
Command-Line Utilities
ctrdmp BIDX_ERR (527)
ctquiet - Add ctQTfailAfterTimeout mode
ctsqlimp - Correct SQL column widths for imported CT_MONEY columns in ctslqimp
ctstat -i X
cttrnmod UNQK_ERR (775)
Locale support added to dbdump, dbload, dbschema
ctidmp utility FTYP_ERR(53)
Graphical Tools
Notable Compatibility Changes
Preventing Possible Data Loss with Compact & Rebuild Operations
Failed ctdbCreateTable could leave files on disk
Save space in variable-length files created by c-treeDB/SQL
ctdbCreateMRTTable behavior change
FPUTFGET now treats read lock requests as write lock requests
Transaction commit improvements
ctdbDeleteTable on missing table failed with INOT_ERR instead of CTDBRET_NOSUCHTABLE