FairCom Corporation
 
FairCom Start PageFairCom ProductsDownloadsDeveloper SupportSales InformationFairCom CustomersFairCom Company InformationContact FairCom

Homebulletgrey.gifeNewsletterbulletgrey.gifVolume 34bulletgrey.gifc-treeACE V9 Compatibility Reminders


c-treeACE V9 Compatibility Reminders

c-treeACE introduced many new features and changes to enhance ease of use. While FairCom always tries to maintain as much backward compatibility as possible, with any major upgrade, there are areas that inevitably result in changes that affect particular applications. Here is a quick review of the most frequently encountered changes in V9 that our support team captures.

c-treeACE Extended Header Support

c-treeACE V9 now includes extended headers on all newly created files. You might find that files created under V9 could return errors in older existing applications. Specifically, for example, a FVER_ERR (43) could be returned under some circumstances. Review Default Extended Headers in c-treeACE V9 for more information regarding this change.

Commit Read Locks

c-treeACE has become a popular choice for high volume OLTP applications. In these high performance environments it is possible to have a partially updated record buffer returned without explicit read or write locks. c-treeACE V9 enables commit read locks by default now which can change the behavior of some existing applications.

Conditional Index Parser

The conditional index parser in c-treeACE V9 was updated to provide consistency in the c-tree ISAM API and c-treeDB APIs. While this change was intended to be neutral with no compatibility changes, some developers with conditional index expressions have reported minor changes in behavior. For example, the following expression:

(unsigned) CT_INT_fld <= (unsigned)0xffffffff

now compares as -1, as unsigned types are not yet handled.

V9 Also checks if a field is NULL and treats a NULL value as distinct from a value of 0. So a comparison such as the following may not return what might previously be expected:

MyField >= 0 or MyField is null

If you are using conditional index expressions and will be migrating to V9, you are encouraged to thoroughly test your existing expressions. Should you find changed behavior, please contact your nearest FairCom support team and let us know.

c-treeACE SQL HUGE Files

Today's massive storage needs require HUGE files. Up to 16 exabytes (that's 16 million terabytes!) with c-treeACE. c-treeACE SQL now creates all files as HUGE by default so you are always prepared.

c-treeDB.NET V9 Updates

c-treeDB.NET is a high level .NET interface that rests upon the c-treeDB relational model. c-treeDB.NET allows for rapid application development with the ease and productivity of C# or VB.NET. c-tree Plus V8.14 introduced the first version of the .NET ISAM access layer and V9 greatly expanded upon that. Several changes in V9 were intended to provide additional flexibility and ease for developers, however, the changes could catch one off guard when moving from a V8 application to V9.

One set of changes in particular has been noted in support calls. The CTRecord class now provides a single overloaded method to get or set a field value.

CTRecord.SetFieldValue( FieldNumber,  value )
CTRecord.SetFieldValue( FieldName,    value )
CTRecord.GetFieldValue( FieldNumber,  value )
CTRecord.GetFieldValue( FieldName,    value )

These functions allow for a more flexible coding design and reduce the number of specific methods required. When compiling your original application against a V9 c-treeDB assembly, the original CTRecord.SetFieldAs() methods will now be noticed marked obsolete.

Note: Alternative SetFieldAs() methods may be unavailable if #define ctNoOldGetSet is included in in the makefile when compiling.

Java JDK 1.5

c-treeACE SQL V9 is now compiled against Java JDK 1.5. As a result, current JDBC, Stored Procedures, Triggers and User Defined Functions are now recommended to update to the latest Java versions. In addition. 64-bit versions of c-treeACE SQL now require a 64-bit edition of the JVM to implement stored procedures.

FAIRCOM.FCS Internal Structure

The internal FC_USER structure in the FAIRCOM.FCS user and group information file has been enhanced. As a result, a compatibility check has been added to ensure matching client server behavior.

If a client prior to these changes tries to open the file FAIRCOM.FCS!USER.dat using a server that has these changes, the open will fail with error UVRC_ERR (859, the client's structure definition for the file FAIRCOM.FCS!USER.dat is out of date. Update your client library.).

If a client with these changes tries to open the file FAIRCOM.FCS!USER.dat using a server without these changes, the open will fail with error UVRS_ERR (860, the server's structure definition for the file FAIRCOM.FCS!USER.dat is out of date. Update your server.).

See Also

NeuroScript’s MovAlyzeR software provides a unique tool for accurately measuring and analyzing human movements of the hand and fingers, for a wide variety of applications in research, psychiatry, neurology, education, forensics, artificial intelligence, and computer interaction. This technology was originally designed for handwriting and drawing movements, goal-directed movements, and bimanual grip force coordination.

FairCom’s c-tree client/server architecture allows users to share data collected by MovAlyzeR in any c-tree Server accessible through the internet. Data can be uploaded or downloaded so that various MovAlyzeR client workstations can share common experimental procedures and results. Exploiting the security features that c-tree provides, NeuroScript is also working towards a secure centralized worldwide database for researchers and medical practitioners and for multi-site studies involving handwriting tests.

Read More... (780KB PDF)

FairCom Start PageSite MapContact FairComThe FairCom Privacy Policy Your Location: USA | Europe | Brazil | Japan
Copyright 2012 FairCom Corporation. All rights reserved.