Всъщност се опитвам да накарам Rails да работи с RedShift и се сблъсквам с проблем с индексите по подразбиране на Rails. Моята работа се основава на репо activerecord-redshift-adapter.
По подразбиране Rails използва типа SERIAL, за да създаде своя първичен ключ. За съжаление, това не се поддържа от RedShift. Така че всъщност се опитвам да намеря алтернатива на този SERIAL тип и след това разклонявам репото, след като намерим жизнеспособно решение. Мисля за BIGINT от това, което офертата на RedShift.
Редът, който трябва да бъде променен, се намира тук redshit_adaptated.rb (ред 252).
Някакво предложение, по-добро решение?
CREATE SEQUENCE
? Защото ако е така -SERIAL
е само удобен псевдотип, който може да бъде заменен сCREATE SEQUENCE
, след това създаване на таблица с колона bigint сdefault nextval('sequence_name')
и накраяALTER SEQUENCE .. OWNED BY
. - person Craig Ringer   schedule 21.08.2013CREATE SEQUENCE
, които имат смисъл, ако SERIAL е само конвенция за това. Някакви други идеи? - person Kim C.   schedule 09.09.2013