Roy,
Thanks for the insight, how surprised am I to find out
Microsoft did something 'non-standard' again! I will give
the tds driver a shot though as you suggest. Any obvious
draw backs to using the FreeTds driver you can think of?
Not that I know of except that it is not supported by Microsoft so if you have a problem they will probably say that's because you are not using their driver. Otherwise, it looks like jTDS supports all JDBC 3 (http://jtds.sourceforge.net/features.html). Does the Microsoft driver support JDBC4 ?

Emmanuel
Hi Roy,

Welcome to heterogeneous clustering!

As stated in the JDBC spec (http://java.sun.com/j2se/1.5.0/docs/api/java/sql/Statement.html#executeUpdate(java.lang.String)) Statement.executeUpdate should return 0 on a CREATE statement. This is what the PostgreSQL driver does. However, the MSSQL driver you are using returns -1 which is completely bogus. Sequoia checks on every execute update that results are consistent between backends and here it is not the case (and the Microsoft JDBC driver is to blame for that). Unfortunately, this check cannot be disabled in Sequoia so here are some options:
- Change the MSSQL JDBC driver for FreeTds
- File a bug report on MSSQL JDBC driver and wait for it to be fixed
- File a JIRA entry in Sequoia to disable consistency checkings (and wait for it to be implemented) - Wrap your create table calls in stored procedures and make sure the stored procedure returns the same result in all implementations

Actually, I would recommend to do all of the above!

Thanks for your feedback,
Emmanuel

I added the first postgresql database and using a simple database 'roytest' on 
all three
MSSQL, MSSQL, Postgresql  I run the create table test and it does create the 
table
but then errors (see below) and takes the postgres backend down. Any ideas?

I am including me virtual database config below also, just in case I have messed
something up there ..
10:52:43,491 INFO  DatabaseBackend.roytest.IS-pe3 Detected backend as: 
PostgreSQL
10:52:43,588 WARN  DatabaseBackend.roytest.IS-pe3 Unable to test 
ResultSet.getObject

10:54:10,069 ERROR backend.DatabaseBackend.IS-pe3 Disabling backend IS-pe3 that 
reports a different number of updated rows (0) than first backend to succeed 
(-1) for request create table test(i integer);/
10:54:10,077 WARN  DatabaseBackend.roytest.IS-pe3 A worker thread was still 
processing task Autocommit StatementExecuteUpdateTask 9 (create table test(i 
integer);/), aborting the request execution.

    <DatabaseBackend name="IS-pe1" 
driver="com.microsoft.sqlserver.jdbc.SQLServerDriver"
      url="jdbc:sqlserver://qa-pe1:4225;DatabaseName=roytest;"
      connectionTestStatement="select 1">
      <ConnectionManager vLogin="sqladmin" rLogin="sqladmin" rPassword="[EMAIL 
PROTECTED]">
        <VariablePoolConnectionManager initPoolSize="10" minPoolSize="5"
          maxPoolSize="50" idleTimeout="30" waitTimeout="10"/>
      </ConnectionManager>
    </DatabaseBackend>

    <DatabaseBackend name="IS-pe2" 
driver="com.microsoft.sqlserver.jdbc.SQLServerDriver"
      url="jdbc:sqlserver://qa-pe2:4225;DatabaseName=roytest;"
      connectionTestStatement="select 1">
      <ConnectionManager vLogin="sqladmin" rLogin="sqladmin" rPassword="[EMAIL 
PROTECTED]">
        <VariablePoolConnectionManager initPoolSize="10" minPoolSize="5"
          maxPoolSize="50" idleTimeout="30" waitTimeout="10"/>
      </ConnectionManager>
    </DatabaseBackend>
<!-- Add Postgresql Here -->
    <DatabaseBackend name="IS-pe3" driver="org.postgresql.Driver"
      url="jdbc:postgresql://qa-pe3:4225/roytest"
      connectionTestStatement="select now()">
      <ConnectionManager vLogin="sqladmin" rLogin="sqladmin" rPassword="[EMAIL 
PROTECTED]">
        <VariablePoolConnectionManager initPoolSize="10" minPoolSize="5"
          maxPoolSize="50" idleTimeout="30" waitTimeout="10"/>
      </ConnectionManager>
    </DatabaseBackend>

_______________________________________________
Sequoia mailing list
[email protected]
https://forge.continuent.org/mailman/listinfo/sequoia





--
Emmanuel Cecchet - Research scientist
EPFL - LABOS/DSLAB - IN.N 317
Phone: +41-21-693-7558

_______________________________________________
Sequoia mailing list
[email protected]
https://forge.continuent.org/mailman/listinfo/sequoia

Reply via email to