c-treeACE V10.3 Release Notes

Copyright Notice
FairCom Typographical Conventions
Important Changes
Automatic Recovery - Bus error during automatic recovery
Automatic Recovery - Superfile TRANDEP rename
Concurrent calls to ctdbAllocSession() crashing on Windows
Dynamic Dump / Segmented File deadlock
General Fixes
Adding identity field after adding records causes record update to fail
NCR Unix - Ported to new platform and fixed system error message from random number generator
Check for invalid FORCE_LOGIDX and COALESCE_TRNLOG configuration options
c-tree client library now avoids using socket after connection to server has been lost
c-treeACE Server fails to start on Unix with "Missing License File" error
c-treeACE Server on Unix system looks for license file in LOCAL_DIRECTORY directory
c-treeACE Server - Unhandled exception freeing memory during checkpoint with replication
c-treeACE Server - Unhandled exception when REPL_MAPPINGS configuration option is used
c-treeACE Server - Unhandled exception when STPUSR or CLISAM is called before ending impersonation
c-treeACE Server - Unhandled exception in RBLIFILz when rebuilding file with more than 32 indices
c-treeACE Bound Server - Unhandled exception when bound thread calls rebuild or compact with a callback function set
Compact utility fixed
ctQTblockLogFiles - Avoid possibility of log buffer write when in force
ctredirect of aidxnam names
ctsqlimp unlink not removing virtual tables
cttcre leaks memory and sockets when it fails
Dynamic Dump to detect system clock change
Dynamic partition member bug fixes
Encrypt/Decrypt inconsistent for batch insert on AES-encrypted files
Error 127/128 using FSHAREMM on AIX
Error 971 (SQL_MUSR_ERR) returned on an ISAM connection attempt
Failed file compact deletes original and leaves compacted file with temporary filename
Failed GETRES() writes to output buffer in client/server mode
FAIRCOM.FCS upgrade problems with ADMIN_KEY
File Create Error 753 (SPCL_ERR) when using ctAUTOSAVE and ctDEFERBEG
Improved ctQUIET / Dynamic Dump interaction
Invalid DAR value crashes server
ISAM client on high/low byte-order system does not attempt a shared memory connection when localhost host name is specified
License error if license file belongs to user/group not on the machine
Linux FSHAREMM connection fails with packed alignment
ctcv67 final messages upon exit
Low-level ctOPENCRPT open of replicated data file fails with error 775
PUTDODA in standalone mode fails on replicated data file
Rebuild Error 62 after Low-Level index delete when using KEEPOPEN_LIST
Rebuild with UNIFRMAT enabled - Deleted or resource records treated as active
r-tree Server crash running concurrent reports
r-tree report causes c-treeACE Server to terminate with Internal Error 7497
Stop server initialization immediately when license file initialization fails
Transaction commit fails with error 42 when file opened twice with COMPATIBILITY MULTIOPN_DIFUSR
Unexpected old transaction log causes c-treeACE Server to shut down
VSS Writer does not support 32-bit writer on 64-bit Windows Vista or later
Zero log-entry file handle during auto recovery following file compact operation
Memory Leaks
ctadmn memory leaks fixed
CTDB .NET - GetFieldValue() memory overwrite
c-treeDB API Fixes
CTDB - ctdbAlterTable cannot alter segmented files
CTDB - ctdbAlterTable did not keep field alignment
CTDB - ctdbAlterTable did not move COBOL and VTABLE resources to new table
CTDB - ctdbAlterTable (truncate) may change file mode
CTDB - ctdbAlterTable (truncate) may lose the VLENGTH property
CTDB - ctdbAlterTable with CTDB_ALTER_OWNER fails on table not under transaction control
CTDB - ctdbDateTimeSetDate invalid timestamp
CTDB - ctdbGetFieldAsSigned on CT_?FLOAT memory overwrite
CTDB - ctsqlimp Error 101 unlinking after updating server to V10
CTDB - ctdbStringToNumber stack corruption causes server crash
CTDB - Error 12 in ctdbAddTableXtd with file with no extension and hint set to EXT_PRESENT_P
CTDB - Infinite loop in ctdbCloseAll when ctdbCloseTable failed with network error
CTDB - Handling of non-default field delimiters and padding bytes
CTDB - SetFieldAsBigint may fail with OVERFLOW error when setting CT_INT4U fields
CTDB - sqlimp does not remove owner prefix from SQL table names
CTDB - unlink fails for MRT tables when using prefix
CTDB - Wrong field offsets in variable portion of the record
c-treeACE SQL Updates and Corrections
c-treeACE SQL on big-endian systems considers index for backward scan
c-treeACE SQL Server memory leak when SQL client establishes GUEST connection
c-treeACE SQL Server memory leaks
c-treeACE SQL Server's fc_get_server_version stored procedure leaks memory when it fails
c-treeACE SQL Server process does not appear in Unix process list
c-treeACE SQL Server terminates when connection limit causes non-secure SQL connection to fail
c-treeACE SQL Server terminates with unhandled exception on starting up
c-treeACE SQL Server unhandled exceptions when using the SQL Debug keyword, TPESQLDBG=YYYYYYY
c-treeACE SQL Server unhandled exception creating table with CHECK clause without column name
ctsqlimp does not mark tables linked specifying a primary key
Direct SQL - Function added to client API
Python batch updates with executemany
SQL - 64-bit Windows clients terminate with unhandled exception when connecting to c-treeACE SQL Server on same machine
SQL - ADO.Net inefficient LVB retrieval - Wrong server version checking
SQL - Allow ":param is null" syntax
SQL - Attempting to terminate a SQL connection has no effect when user name contains lowercase characters
SQL - sqlapi support for batch updates: SQL_ERR_BADSQLDA
SQL - Callback library causes crash or terr(7495)
SQL - Calling UDF with extra arguments crashes server
SQL - Cannot kill server on Unix after first SQL connection occurred
SQL - Clients fail to connect with error 17012 when PRIME_CACHE and PRIME_INDEX options match names of FAIRCOM.FCS members
SQL - Crash after failed memory allocation
SQL - CREATE TABLE AS SELECT unexpected errors
SQL - ctsqlapi functions exported with c++ mangled names on Unix
SQL - ctSQLImportTable Error 101 while unlinking after updating server to V10
SQL - Database conversion fails when REPLICATE matches superfile
SQL - dbload handling of table with reserved names
SQL - Error -17004 on Delete using rowid as search criteria on tables with foreign keys
SQL - Failed ALTER TABLE caused server hangs or crash
SQL - Group By Order By memory leak slowing performance
SQL - Group By with parameters now fails during prepare
SQL - Incorrect conversion of BIGINT values on HIGH_LOW systems
SQL - Incorrect conversion of double values greater than 10^16 on Linux
SQL - ISQL on Windows takes a long time to fail to connect when server is not running
SQL - ISQL "Tuple size too high" error on query returning large number of columns
SQL - Java stored procedures fail to compile on Unix
SQL - Java user.dir using absolute path for JDK 1.7
SQL - JDBC batch insert inserts incorrect values
SQL - JDBC wrong hard-coded field-size limit
SQL - JDBC Shared Memory fix
SQL - JVM memory consumption
SQL - Length scalar function may corrupt data
SQL - MONEY problems with precision > 18 digits
SQL - Order By ignored in sub-queries
SQL - Order By with parameters may cause server crash with ODBC
SQL - Panic running sqlqa
SQL - Panic situation using Alias and OR operator
SQL - Prevent crash in SQLSnapshot:UpdateSnapshot
SQL - Query Builder bug with tables with '-' in table name
SQL - Query containing scalar subquery with outer references returns incorrect NULL column values
SQL - Query with all outer joins crashes server
SQL - Query with large number (>500) of OR predicates and/or large number (>500) of parameters crashes server
SQL - Restrictions not applied to views
SQL - Second execution of a certain query crashes server
SQL - Select with two levels of nested scalar subqueries
SQL - Server crash running parameterized insert statement with LVARCHAR parameter and > 50 parameters
SQL - Server crash calling CtreeSqlDataReader.GetBytes()
SQL - Exception when a SQL client connected while server was shutting down
SQL - Specifying multiple options in DH_JVM_OPTION_STRINGS may cause memory overwrite, etc.
SQL - Exception when RPC error occurs during SQL shared memory client logon
SQL - Slow performance on Group By Order By
SQL - Stored procedures failed with SQL_ERR_NOSTMT
SQL - Stored procedure not available if called before JVM initialized
SQL - Uninitialized variables cleanup
SQL - User-Defined Functions returned wrong result
SQL - Wrong query result joining on rowID with extra conditions
SQL - Wrong query result when mixing inner and outer joins
SQL - Wrong selectivity calculation for unique index with multiple components; last operator Not EQ
SQL - MM crash when multiple cursors requiring MM are opened
SQL Optimizer
SQL - Optimizer now removes redundant outer joins
SQL - Slow query with useless OR predicate
ADO.NET Provider - CommandBehavior.CloseConnection OR-ed with another option
ADO.NET Provider - DataReader getValue(...) method returning NULL
ADO.NET Provider - Error when reading non-Unicode char fields from Unicode server
ADO.NET Provider - ExecuteScalar() not called with CALL "procedure" syntax
ADO.NET Provider - Numeric types handled incorrectly
ADO.NET Provider - Views with parameters bug
ADO.NET Provider - "Wrong Number of Parameters" calling stored procedure
PHP Support
PHP - Invalidate prefetched elements when transaction is ended
PHP - Execution problem on Mac OSX 64-bit
PHP - Runtime error loading library on recent Linux versions
Other Improvements
ctsqlimp: Wrong data in SQL dictionary causes Error -20000 on imported tables with public permissions
ctrdmp fails with Error 75 in Dynamic Dump with more than 1024 active connections
Data Compression deactivated for Bound Server Library, UNIX
Error 598 using conditional expression on field in variable-length part of record when file uses custom field delimiter
FairComConfig - Error when VS2012 is not installed
File compact fails with Error 944 on compressed file
GTREC - Correct automatic key transformation on index allowing duplicates
IICT - Fixed potential infinite loop
Java - CLASSPATH default setting changed to “:” instead of “;”
Java FairComIsam Library - CtreeSession: Added check for NULL JCtree
JEE - JDK1.6 compatibility fix
JDBC - Out of Bounds exception in CtreeDA:enlarge()
JDBC - Open socket caused client thread to hang after JDBC connection failed
JDBC - Shared Memory
Mac OS X - Dependency on CoreFoundation framework when linking c-treeSQL with Java support
ODBC - Too many indexes in connection
r-tree causes c-treeACE Server to terminate with Internal Error 7497 if DODA defines fields on fixed-length portion of record
Security - User names with embedded spaces
VCL - BLOB field not stored after CopyFrom()
Replication Agent Updates
Replication Agent - Avoid duplicate log position entries when automatic recovery reads more than one checkpoint in its scan phase
Replication Agent - Improved counting of failed operations
Replication Agent - Improved calculation and persistence of replication reader transaction log requirements
Replication Agent - Unhandled exception when transaction contains multiple updates
Replication Agent - Unhandled exception if data source and target files use different alignment than agent
GUI Tools
Cross-platform Java tools
Changes to the .NET GUI Tools
c-treeACE SQL Explorer - Create view with special characters in name
c-treeACE SQL Explorer - Empty lines added to script and lost server connection
c-treeACE SQL Explorer - Errors display in Scripts
c-treeACE SQL Explorer - Export Schema bug on "double" return values
c-treeACE SQL Explorer - Statements still executed after removing them
c-treeACE SQL Explorer - Wrong formatting of DECIMAL and NUMERIC columns
c-treeACE SQL Explorer and c-treeACE Explorer - Comment chars in quotes 'xx--'
c-treeACE SQL Explorer and c-treeACE Explorer - Scripts may lose spaces
Dr. c-tree - Delete record bug
Dr. c-tree - Error 963 on UpdateDoda
Dr. c-tree - Records not read on files with reclen = 0
c-treeACE ISAM Explorer - Crash on disconnect
c-treeACE ISAM Explorer - 32-bit Windows version now runs on Windows XP
c-treeACE Monitor - Error 516 (ctNOGLOBALS Not Allocated)
c-treeACE Monitor - Exception on tool start
c-treeACE Monitor - Exception when server stops
Notable Compatibility Changes
Camouflage Data Protection (CAMO) not available in c-treeACE Express
Encryption of c-treeACE SQL System Tables
File rebuild memory limit - File memory usage keyword for rebuild memory usage
Dynamic Dump of Non-Transaction Files Defaults to YES
Suppress logging File Delete Error for I0000000.FCS during startup
ODBC - SQLColAttributes renamed
ctOpenSequence() returns NO_ERROR when specified sequence does not exist
ctSETENCRYPT - Passing a NULL to disable encryption
Rebuild Fails with Error 484 (Could Not Open Sort Work File)
Treat fixed-length compressed data files consistently across batch record returns, inserts, and updates
Unix Shared Memory Protocol Not Freeing Shared Memory Segments (different client and server user accounts)