oauth-plugin icon indicating copy to clipboard operation
oauth-plugin copied to clipboard

CreateOauthTables migration buggy

Open christoph-buente opened this issue 15 years ago • 9 comments
trafficstars

When running ./script/generate oauth_provider a migration for nessecary tables is generated. The indexes that are created should be uniqe add_index :client_applications, :key, :unique

Correct Syntax is: add_index :client_applications, :key, :unique => true

christoph-buente avatar Dec 16 '09 10:12 christoph-buente

I agree with you, but strangely enough it didn't throwe an error after a db:migrate... And my indexes are unique, i guess that the ":unique" syntax works too.

brugidou avatar May 06 '10 08:05 brugidou

It didn't work for me, that's why i had to modify it. After i had it running, this info might be usefull for others.

christoph-buente avatar May 06 '10 10:05 christoph-buente

OK, i guess this should be fixed then but i don't know who if pelle is hearing us...

(for info, i'm with rails 2.3.5 and ruby 1.9.1)

brugidou avatar May 06 '10 11:05 brugidou

Can anyone shed any light on this response to rake db:migrate after rails g oauth_consumer?

Mysql2::Error: Specified key was too long; max key length is 767 bytes: CREATE UNIQUE INDEX index_consumer_tokens_on_token ON consumer_tokens (token)

cantlin avatar Mar 12 '11 18:03 cantlin

This is related to the mysql charset. change it to UTF8, that should do the trick

Christoph

Am 12.03.2011 um 19:21 schrieb [email protected]:

Can anyone shed any light on this response to rake db:migrate?

Mysql2::Error: Specified key was too long; max key length is 767 bytes: CREATE UNIQUE INDEX index_consumer_tokens_on_token ON consumer_tokens (token)

https://github.com/pelle/oauth-plugin/issues/6#comment_864063

christoph-buente avatar Mar 12 '11 19:03 christoph-buente

Thanks Christoph, that did it.

cantlin avatar Mar 21 '11 11:03 cantlin

I had the unique issue as well. Running Rails 2.3.8 and Ruby 1.8.7. The other index created in this migration has the => true in it.

wleeperogs avatar May 16 '11 16:05 wleeperogs

I edited mysql for utf8 but it did not worked any idea ?

vi /etc/mysql/my.cnf

There are several sections in the file. Modify two of them – “client” and “mysqld” as shown below to configure mySql for UTF-8 support:

... [client]

default-character-set=utf8

... [mysqld]

default-character-set=utf8 character-set-server=utf8 default-collation=utf8_unicode_ci

any suggestions i am looking for a quick solution ?

bournenapster avatar Nov 06 '11 19:11 bournenapster

If the table was created with latin1 you have to alter it first. Setting the default-character set doesn't affect existing tables.

alter table TABLE_NAME change COLUMN_NAME COLUMN_NAME COLUMN_DATA_TYPE character set utf8;

christoph-buente avatar Nov 06 '11 20:11 christoph-buente