georgiev / rubyfb

ruby/rails Firebird db access library
Other
16 stars 5 forks source link

Problem with devise STORE RDB$RELATION_FIELDS failed attempt to store duplicate value (visible to active transactions) in unique index "RDB$INDEX_15" #16

Open mariuz opened 12 years ago

mariuz commented 12 years ago

I try to use devise and i have this issue http://blog.blazingcloud.net/2011/01/08/devise-authentication-in-rails-3/

== AddDeviseToUsers: migrating ========================================= -- change_table(:users) rake aborted! An error has occurred, this and all later migrations canceled:

Rubyfb::FireRubyException: Error executing SQL statement. unsuccessful metadata update STORE RDB$RELATION_FIELDS failed attempt to store duplicate value (visible to active transactions) in unique index "RDB$INDEX_15" This operation is not defined for system tables. SQL Code = -607 Firebird Code = 335544351 : ALTER TABLE "USERS" ADD "EMAIL" varchar(255) DEFAULT '' NOT NULL

Tasks: TOP => db:migrate

if i comment the line

t.string :email

it works and the migration finishes

so the line with the problem is in the migration add_devise_to_devise_users.rb the one that readds email column , maybe it should recreate it ?

Class AddDeviseToUsers < ActiveRecord::Migration def self.up change_table(:devise_users) do |t|

Database authenticatable

  t.string :email,              :null => false, :default => ""
mariuz commented 12 years ago

it can happen if the users migration is already created befor devise migration