Switch to standard view 
  Sybase logo
 
 
 



Recommended ODBC Drivers for 10.0.0 MobiLink

The MobiLink server connects to several types of consolidated database using the ODBC 3.5 standard. For some supported consolidated database types you should use the iAnywhere Solutions ODBC driver for that type of database. For others we recommend drivers supplied by the database vendors. The iAnywhere Solutions ODBC drivers and the MobiLink server are included in the SQL Anywhere 10 product. When iAnywhere Solutions does not provide an ODBC driver, then you must use one provided by another vendor. ODBC drivers from other vendors may not support some optional ODBC functionality that the MobiLink server requires.

Some ODBC drivers have different behaviors that cannot be detected by querying the driver. For these we test the driver to determine viable workarounds. Once we have identified a set of workarounds that are required for a driver, we update the MobiLink server so that it recognizes the version of the driver. It then will automatically apply the required set of workarounds for that driver.

For some ODBC drivers, we are unable to develop viable workarounds for all issues. In these cases, you still may be able to use the driver if your synchronizations do not require the missing driver functionality.

For ease of testing and to allow MobiLink to apply workarounds to drivers that it does not recognize, the MobiLink workarounds can be set by the undocumented –hw command-line switch. This switch and its associated workarounds are not documented because indiscriminate use of workarounds could cause data corruption or software errors.

Note that after workaround sets are identified, we can make future versions of MobiLink apply the associated hidden workaround switches automatically. Thus if you chose to use hidden workarounds directly, you may not need them with newer versions of the MobiLink server. Continued use of hidden switches with a newer MobiLink may even cause problems or reduced performance.

Driver testing

We use two types of testing of ODBC drivers with MobiLink.

The first type of testing is a comprehensive suite of regression tests that exercise synchronization functionality. If some specific regression tests fail, the driver may still be suitable as long as your synchronizations do not rely on the functionality that failed. For example, if the only regression tests that fail are for synchronization of LONG BINARY data, then the driver may still be suitable for you if you are not using MobiLink to synchronize LONG BINARY data.

The second type of testing is high-load testing involving many clients synchronizing simultaneously with a MobiLink server running on a multi-processor computer. We have found that some drivers from other vendors will fail with multiple simultaneous connections or under high load while running on multiple processors.

Recommended Drivers

As a result of our testing, we recommend the following ODBC drivers for use with version 10.0.0 of the MobiLink server.

If you are having problems with an older version of MobiLink, you should consider upgrading to a newer version. Older versions may no longer be actively supported. For more information, see SQL Anywhere Supported Platforms and Engineering Support Status.

The following sections list the recommended ODBC driver for different types of consolidated database. In some cases, alternative drivers are also listed. Click on one of the consolidated DBMS types below to see recommended driver information for using MobiLink with that type of DBMS:

SQL Anywhere (SA)

Sybase Adaptive Server Enterprise 12.5, 15

Oracle 9i, 10g

Microsoft SQL Server 2000, 2005

IBM DB2

For detailed supported consolidated databases, please refer to http://www.sybase.com/detail?id=1042323#ConsDB.

SQL Anywhere (SA)

Driver

SQL Anywhere 10.0

Version

10.0.0

Status

Recommended for use with MobiLink.

Client s/w

None.

OS

Windows

200x, XP.

Linux

Redhat Enterprise Linux 4
SuSE 9.1, 9.1 x86_64, 10
Supported where the kernel/glibc versions are within the ranges specified on the SA Linux support matrix.

Solaris

8, 9, 10

AIX

5.2, 5.3

Mac OS

10.4 on Intel x86 processor

Workarounds applied by MobiLink

-hwc+

Other required workarounds

None

Pros

All tests pass.

Cons

None.

Notes

None

Sybase Adaptive Server Enterprise 12.5, 15

Driver

Sybase Adaptive Server Enterprise ODBC driver

Version

15.0.0.140( This version is available by downloading the ESD#6 of ASE 15.0 SDK )

Status

Recommended for use with MobiLink with caveats.

Client s/w

None

OS

Windows

200x, XP.

Linux

Redhat Enterprise Linux 4
SuSE 10

Workarounds applied by MobiLink

-hwi+

Other required workarounds

None

Pros

All performance tests pass
Passes most regression tests

Cons

1. Fetching a zero value from a numeric column binding with SQL_CHAR will return the value "0.".
2. On Linux, if set UseCursor=1, the synchronization tables can't be dropped after synchronization.

Notes

You need to apply ASE 12.5 ESD#1 for ASE 12.5 server.

Always set UseCursor to zero on Linux.

Always set ServerInitiatedTransactions to zero

Set AnsiNull to 1, if the "where clauses" of any of the upload and download scripts may have the clause of "column_name = NULL"

On Linux, you need to set SYBASE environment variable to the directory where you install ASE SDK1500, otherwise, you will get the error "Could not load code page for requested charset".

 

Oracle 9i, 10g

We do not recommend any ODBC drivers from Oracle. All of the ones from Oracle that we have tested have had multi-threading issues. Use one of the following drivers instead.

 

Driver

iAnywhere Solutions 10 - Oracle Wire Protocol ODBC Driver
DataDirect Oracle Wire Protocol ODBC Driver

Version

5.10.0124(B0080,U0044) (Win32), 5.10.0124(B0080,U0044)( Linux ), 5.10.0124(B0080,U0044)( Solaris ), 5.10.0124(B0080,U0044)( AIX )

Status

Recommended for use with MobiLink -- This driver must be purchased from DataDirect

Client s/w

None

OS

Windows

2000, XP, 2003( 32 bit).

Linux

Redhat Enterprise Linux 4.0
SuSE Linux Enterprise 9.1, 10

Solaris

8, 9, 10

AIX

5.2, 5.3

Workarounds applied by MobiLink

None

Other required workarounds

None

Pros

All tests pass

Cons

The BINARY_FLOAT and BINARY_DOUBLE data types, new in Oracle 10g, are not supported.

Notes

The file name of the driver is wqora21.xxx, where xxx refers to dll, so or sl.

This driver supports Oracle 9i and Oracle 10g, including RAC feature.

When setting up the DSN, on Win32, don't set "Enable Static Cursors for Long Data"; on Unix, don't set EnableStaticCursorsForLongData=1, since that will adversely affect MobiLink performance. "Application Using Threads" should always be enabled on Win32. The equivalent option "ApplicationUsingThreads=1" should be set on Unix.

Enable "Procedure Returns Results" on Win32 or set "ProcedureRetResults=1" on Unix if you want stored procedures to return result sets.

On Unix, EnableScrollableCursor=1 should be set, otherwise, it will fail to unlock the driver.

 

Microsoft SQL Server 2005, 2000

Important: With any version of SQL Server, you should specify "SET NOCOUNT ON" as the first statement in all stored procedures or SQL batches executed via ODBC. Without this option, a "number of rows affected" message is sent to MobiLink for each statement executed. If you are doing a relatively large number of inserts, updates, and select into statements, these messages can fill network buffers resulting in data being lost without any indication that it is being lost!

SQL Server 2005

SQL Server 2000

SQL Server 2005

Driver

Microsoft SQL Native Client ODBC Driver

Version

2005.90.2047.00

Status

Recommended for use with MobiLink.

Client s/w

None

OS

Win32

Workarounds applied by MobiLink

-hwe+j+f+

Other required workarounds

None

Pros

Passes all tests.

Cons

None

Notes

Be sure to put "SET NOCOUNT ON" at the start of all stored procedures and batches that are executed via ODBC.

For SQL Server, using the ODBC convention for calling stored procedures:
    { call MyMSSProc(?, ?, ? ) }
may cause problems. Please use the native calling convention instead:
    exec MyMSSProc ?, ?, ?

 

SQL Server 2000

Driver

Microsoft SQL Server ODBC Driver

Version

2000.85.1117.00

Status

Recommended for use with MobiLink.

Client s/w

None

OS

Win32

Workarounds applied by MobiLink

-hwe+j+

Other required workarounds

None

Pros

Passes all tests.

Cons

None

Notes

Be sure to put "SET NOCOUNT ON" at the start of all stored procedures and batches that are executed via ODBC.

For SQL Server 2000, the driver has problems with the ODBC convention for calling stored procedures:
    { call MyMSSProc(?, ?, ? ) }
You should instead use the native calling convention:
    exec MyMSSProc ?, ?, ?

 

IBM DB2

Important:

DB2 UDB 8.x

DB2 UDB 8.x

Driver

IBM DB2 UDB ODBC Driver

Version

8.01.11.973(Win32), 8.02.0000(Linux, Solaris, AIX)

Status

Recommended for use with MobiLink.

Client s/w

DB2 UDB Client 8.1+FixPak 7 or DB2 UDB 8.2

OS

Windows

200x, XP.

Linux

Redhat Enterprise Linux 4
SuSE 9.1, 10

Solaris

8, 9, 10

AIX

5.2, 5.3

Workarounds applied by MobiLink

-hwh+

Other required workarounds

None

Pros

Passes all tests

Cons

With "Long object binary treatment" set to "AS LONGVAR data", all BLOB, CLOB, LONG VARCHAR, LONG VARCHAR FOR BIT DATA tests will fail, always set to "AS LOB data".

Notes

On Linux, Solaris, AIX, you need to source db2profile to export DB2 environment variables. db2profile is in your DB2 install home directory.

In situation where the MobiLink is under load, you need to change two database configuration parameters LOCKLIST and APPLHEAPSZ, set LOCKLIST to 500 and APPLHEASZ to 1024.

The CHR() function of DB2 UDB 8.1 changes 0x00 to 0x20.



Back to Top
© Copyright 2010, Sybase Inc.