V11.5 Release Notes

 
Introduction
FairCom 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 FairCom 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
FairCom 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() possible file loss on Unix/Linux fixed
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
FairCom Server
File copy function call may fail with error 965 (BCOD_ERR)
Record update callback function file open
V11 client may lose connection to FairCom Server when pstack was run on server
Server shutdown failed with error 452
FairCom Server ISAM counter values on Linux
FairCom 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
COMPATIBILITY RENAME_OVERWRITE ignored on Windows
FairCom 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
FairCom 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 Server
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 indexes 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
SQL - DEFAULT NUMERIC, BIGINT values
c-treeACE SQL Server race condition fixed
Unknown indexes identified because CreateFilesetHost renamed templates' internal indexes
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 FairCom 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
Indexing
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 High Concurrent FPUTFGET Environments now 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
Caching
PRIME_CACHE and PRIME_INDEX caused only data or index file to be read into cache
File Management
FairCom 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)
Relational c-treeACE SQL
SQL
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)
SQL STORAGE_ATTRIBUTES parsing issue
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
c-treeACE JDBC
Unexpected JDBC 26046 (closed resultset) exception calling getWarning()
c-treeACE 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
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 FairCom Server
ADO.NET client-side crash fixed
ADO.NET EF6 provider support for V11 servers
ADO.NET connection pooling
ODBC
ODBC SQLTables call failed with syntax error
ODBC driver allowed "%" as catalog in ODBC SQLTables and SQLColumns calls
c-treeACE PHP
PHP driver improvements
Embedded SQL function dh_conv_data() causes client crash
High-Velocity c-treeACE APIs
FairCom Low-Level
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()
VRLN_ERR (149) in RWTVREC()
PUTHDR mode ctSUSSRLSEGhdr ignored on client side
ctstat -isam - Improved accuracy of ISAM counters
c-treeDB “NAV” API
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 indexes 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)
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)
Administrative 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)
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
Copyright Notice
Index