Emmanuel, 

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?

-Roy


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

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

Reply via email to