(Migrated) mysq varchar problem

(This message has been automatically imported from the retired mailing list)

Hello.

I try to use zato with mysql. When I launch this command:
./bin/zato quickstart create ~/Tmp/qs-1 mysql localhost 3306 zato1 zato1
localhost 6379 --verbose

I got this error:
sqlalchemy.exc.OperationalError: (OperationalError) (1071, ‘Specified key
was too long; max key length is 767 bytes’) ‘\nCREATE TABLE service (\n\tid
INTEGER NOT NULL AUTO_INCREMENT, \n\tname VARCHAR(2000) NOT NULL,
\n\tis_active BOOL NOT NULL, \n\timpl_name VARCHAR(2000) NOT NULL,
\n\tis_internal BOOL NOT NULL, \n\twsdl BLOB(5000000), \n\twsdl_name
VARCHAR(200), \n\tslow_threshold INTEGER NOT NULL, \n\tcluster_id INTEGER
NOT NULL, \n\tPRIMARY KEY (id), \n\tUNIQUE (name, cluster_id), \n\tCHECK
(is_active IN (0, 1)), \n\tCHECK (is_internal IN (0, 1)), \n\tFOREIGN
KEY(cluster_id) REFERENCES cluster (id) ON DELETE CASCADE\n)\n\n’ ()

It seems that mysql can’t manage varchar(2000). According to many tutorials
on the web, I try to change collation, but nothing changes. Is there a way
to workaround this problem?

Thank you.

Sorry if I insist. I like Zato, but I have some internal policies to manage
and it would be a lot easier if zato supports mysql.

Thank you

On Thu, Mar 6, 2014 at 5:46 AM, Giovanni Colapinto <
giovanni.colapinto@gmail.com> wrote:

Hello.

I try to use zato with mysql. When I launch this command:
./bin/zato quickstart create ~/Tmp/qs-1 mysql localhost 3306 zato1 zato1
localhost 6379 --verbose

I got this error:
sqlalchemy.exc.OperationalError: (OperationalError) (1071, ‘Specified key
was too long; max key length is 767 bytes’) ‘\nCREATE TABLE service (\n\tid
INTEGER NOT NULL AUTO_INCREMENT, \n\tname VARCHAR(2000) NOT NULL,
\n\tis_active BOOL NOT NULL, \n\timpl_name VARCHAR(2000) NOT NULL,
\n\tis_internal BOOL NOT NULL, \n\twsdl BLOB(5000000), \n\twsdl_name
VARCHAR(200), \n\tslow_threshold INTEGER NOT NULL, \n\tcluster_id INTEGER
NOT NULL, \n\tPRIMARY KEY (id), \n\tUNIQUE (name, cluster_id), \n\tCHECK
(is_active IN (0, 1)), \n\tCHECK (is_internal IN (0, 1)), \n\tFOREIGN
KEY(cluster_id) REFERENCES cluster (id) ON DELETE CASCADE\n)\n\n’ ()

It seems that mysql can’t manage varchar(2000). According to many
tutorials on the web, I try to change collation, but nothing changes. Is
there a way to workaround this problem?

Thank you.


www.syshell.net