activemq-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Bruce Snyder (JIRA)" <j...@apache.org>
Subject [jira] Updated: (AMQ-1432) Sybase compatibility
Date Fri, 20 Nov 2009 18:13:52 GMT

     [ https://issues.apache.org/activemq/browse/AMQ-1432?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]

Bruce Snyder updated AMQ-1432:
------------------------------

      Description: 
I meet some problems when I tried to use activemq-4.1.1 with Sybase. The oracle test worked
fine.

With Sybase, I have the following problem :

I tried to create the scheme but I get this error :

CREATE TABLE ACTIVEMQ_ACKS (       CONTAINER VARCHAR(250) NOT NULL ,        CLIENT_ID VARCHAR(250)
NOT NULL ,        SUB_NAME VARCHAR(250) NOT NULL ,        SELECTOR VARCHAR(250),        LAST_ACKED_ID
DECIMAL(22),       PRIMARY KEY (CLIENT_ID, CONTAINER, SUB_NAME)) => KO !!

com.sybase.jdbc2.jdbc.SybSQLException: 600 is the maximum allowable size of an index.  Composite
index specified is 750 bytes.

=> the composite primary key has a length of 750 bytes : size of CLIENT_ID, CONTAINER ,
SUB_NAME but sybase don't handle index larger than 600 bytes. 
For the moment, I don't use the createDatabaseOnStartup and provide my own sql script to resize
the column to 100 bytes.


In master slave mode, activemq master tried to lock the database with a SELECT FOR UPDATE
but FOR UPDATE clause is allowed only for DECLARE CURSOR. I have to make my own database locker
for now.

And last, the BLOB type for the message is not supported on Sybase, I replaced by TEXT on
my own scripts.


Regards,







  was:

I meet some problems when I tried to use activemq-4.1.1 with Sybase. The oracle test worked
fine.

With Sybase, I have the following problem :

I tried to create the scheme but I get this error :

CREATE TABLE ACTIVEMQ_ACKS (       CONTAINER VARCHAR(250) NOT NULL ,        CLIENT_ID VARCHAR(250)
NOT NULL ,        SUB_NAME VARCHAR(250) NOT NULL ,        SELECTOR VARCHAR(250),        LAST_ACKED_ID
DECIMAL(22),       PRIMARY KEY (CLIENT_ID, CONTAINER, SUB_NAME)) => KO !!

com.sybase.jdbc2.jdbc.SybSQLException: 600 is the maximum allowable size of an index.  Composite
index specified is 750 bytes.

=> the composite primary key has a length of 750 bytes : size of CLIENT_ID, CONTAINER ,
SUB_NAME but sybase don't handle index larger than 600 bytes. 
For the moment, I don't use the createDatabaseOnStartup and provide my own sql script to resize
the column to 100 bytes.


In master slave mode, activemq master tried to lock the database with a SELECT FOR UPDATE
but FOR UPDATE clause is allowed only for DECLARE CURSOR. I have to make my own database locker
for now.

And last, the BLOB type for the message is not supported on Sybase, I replaced by TEXT on
my own scripts.


Regards,







    Fix Version/s:     (was: AGING_TO_DIE)
                   4.1.3

> Sybase compatibility
> --------------------
>
>                 Key: AMQ-1432
>                 URL: https://issues.apache.org/activemq/browse/AMQ-1432
>             Project: ActiveMQ
>          Issue Type: Bug
>          Components: Message Store
>    Affects Versions: 4.1.1
>         Environment: linux, sybase 15, driver jdbc: com.sybase.jdbc2.jdbc.SybDriver (jconn2.jar),
activemq-4.1.1
>            Reporter: hugo l
>             Fix For: 4.1.3
>
>
> I meet some problems when I tried to use activemq-4.1.1 with Sybase. The oracle test
worked fine.
> With Sybase, I have the following problem :
> I tried to create the scheme but I get this error :
> CREATE TABLE ACTIVEMQ_ACKS (       CONTAINER VARCHAR(250) NOT NULL ,        CLIENT_ID
VARCHAR(250) NOT NULL ,        SUB_NAME VARCHAR(250) NOT NULL ,        SELECTOR VARCHAR(250),
       LAST_ACKED_ID DECIMAL(22),       PRIMARY KEY (CLIENT_ID, CONTAINER, SUB_NAME)) =>
KO !!
> com.sybase.jdbc2.jdbc.SybSQLException: 600 is the maximum allowable size of an index.
 Composite index specified is 750 bytes.
> => the composite primary key has a length of 750 bytes : size of CLIENT_ID, CONTAINER
, SUB_NAME but sybase don't handle index larger than 600 bytes. 
> For the moment, I don't use the createDatabaseOnStartup and provide my own sql script
to resize the column to 100 bytes.
> In master slave mode, activemq master tried to lock the database with a SELECT FOR UPDATE
but FOR UPDATE clause is allowed only for DECLARE CURSOR. I have to make my own database locker
for now.
> And last, the BLOB type for the message is not supported on Sybase, I replaced by TEXT
on my own scripts.
> Regards,

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


Mime
View raw message