Transition migration NUM => TIMESTAMPED?


#1

Ayant migré un projet en edge, mes nouvelle migrations sont maintenant
pare
des “20090225205324_” plutôt que des “042_”.

Très bien, je souhaite garder ça (Git en vue) mais ça a pas l’air de
vouloir
passer (voir dump plus bas).

Qqun à déja eu ça ?

Ca a peut-être rien à voir mais comme c’est la première migration
“timestamped” de ce projet il y a un fort soupçon.

Quelqu’un à déjà changé de mode “migratoire” en cours de projet ?

Merci d’avance pour vos réponses

===================================
rake aborted!
undefined method reenable' for <Rake::Task db:schema:dump => [environment]>:Rake::Task /home/virtualmice/Projects/icimarche/vendor/rails/railties/lib/tasks/databases.rake:253 /usr/lib/ruby/gems/1.8/gems/rake-0.8.1/lib/rake.rb:546:incall’
/usr/lib/ruby/gems/1.8/gems/rake-0.8.1/lib/rake.rb:546:in execute' /usr/lib/ruby/gems/1.8/gems/rake-0.8.1/lib/rake.rb:541:ineach’
/usr/lib/ruby/gems/1.8/gems/rake-0.8.1/lib/rake.rb:541:in execute' /usr/lib/ruby/gems/1.8/gems/rake-0.8.1/lib/rake.rb:508:ininvoke_with_call_chain’
/usr/lib/ruby/gems/1.8/gems/rake-0.8.1/lib/rake.rb:501:in synchronize' /usr/lib/ruby/gems/1.8/gems/rake-0.8.1/lib/rake.rb:501:ininvoke_with_call_chain’
/usr/lib/ruby/gems/1.8/gems/rake-0.8.1/lib/rake.rb:494:in invoke' /home/virtualmice/Projects/icimarche/vendor/rails/railties/lib/tasks/databases.rake:117 /usr/lib/ruby/gems/1.8/gems/rake-0.8.1/lib/rake.rb:546:incall’
/usr/lib/ruby/gems/1.8/gems/rake-0.8.1/lib/rake.rb:546:in execute' /usr/lib/ruby/gems/1.8/gems/rake-0.8.1/lib/rake.rb:541:ineach’
/usr/lib/ruby/gems/1.8/gems/rake-0.8.1/lib/rake.rb:541:in execute' /usr/lib/ruby/gems/1.8/gems/rake-0.8.1/lib/rake.rb:508:ininvoke_with_call_chain’
/usr/lib/ruby/gems/1.8/gems/rake-0.8.1/lib/rake.rb:501:in synchronize' /usr/lib/ruby/gems/1.8/gems/rake-0.8.1/lib/rake.rb:501:ininvoke_with_call_chain’
/usr/lib/ruby/gems/1.8/gems/rake-0.8.1/lib/rake.rb:494:in invoke' /usr/lib/ruby/gems/1.8/gems/rake-0.8.1/lib/rake.rb:1931:ininvoke_task’
/usr/lib/ruby/gems/1.8/gems/rake-0.8.1/lib/rake.rb:1909:in top_level' /usr/lib/ruby/gems/1.8/gems/rake-0.8.1/lib/rake.rb:1909:ineach’
/usr/lib/ruby/gems/1.8/gems/rake-0.8.1/lib/rake.rb:1909:in top_level' /usr/lib/ruby/gems/1.8/gems/rake-0.8.1/lib/rake.rb:1948:instandard_exception_handling’
/usr/lib/ruby/gems/1.8/gems/rake-0.8.1/lib/rake.rb:1903:in top_level' /usr/lib/ruby/gems/1.8/gems/rake-0.8.1/lib/rake.rb:1881:inrun’
/usr/lib/ruby/gems/1.8/gems/rake-0.8.1/lib/rake.rb:1948:in
standard_exception_handling' /usr/lib/ruby/gems/1.8/gems/rake-0.8.1/lib/rake.rb:1878:inrun’
/usr/lib/ruby/gems/1.8/gems/rake-0.8.1/bin/rake:31
/usr/local/bin/rake:19:in `load’
/usr/local/bin/rake:19


IciMarché fédère l’e-commerce de proximité
http://icimarche.fr


#2

philippe lachaise wrote:

Ayant migré un projet en edge, mes nouvelle migrations sont maintenant
pare
des “20090225205324_” plutôt que des “042_”.

Quelqu’un à déjà changé de mode “migratoire” en cours de projet ?

Je ne me souviens plus très bien de ce qui s’était passé lors de notre
basculement des migrations, mais il me semble qu’il faut retirer les
anciens fichiers du type 042_ (ou les renommer) sinon rake db:migrate
s’emmêle les pinceaux.

Regarde aussi dans la table schema_migrations ce qu’il y a dedans.


Formations vidéos: http://www.digiprof.fr


#3

Fernando P. wrote:

Je ne me souviens plus très bien de ce qui s’était passé lors de notre
basculement des migrations, mais il me semble qu’il faut retirer les
anciens fichiers du type 042_ (ou les renommer) sinon rake db:migrate
s’emmêle les pinceaux.

Regarde aussi dans la table schema_migrations ce qu’il y a dedans.

Avec Typo nous n’avons eu aucun soucis. La preuve, il y a encore des
fichier de migration en XXX et en timestamp.


Cyril M.
http://blog.shingara.fr


#4

il me semble qu’il faut retirer les anciens fichiers du type 042_ (ou les
renommer) sinon rake db:migrate s’emmêle les pinceaux.

C’est mon impression.
Quoi que ma migration s’est malgré tout effectuée et rake db:version me
donne le No de cette migration !

retirer les anciens fichiers du type 042_ (ou les renommer)

Oui mais alors au niveau de schema_migrations ça va plu coller ?!

Ou ptet tout simplement que la beta 2.3.0 a un pb de ce côté ? …

On verra ce que dit la seconde migration …

config.active_record.timestamped_migrations = false

J’avais pensé à ça, mais vu qu’il s’agit d’un projet à longue haleine je
préférerai moderniser :slight_smile:


#5

Tu peux aussi conserver l’ancien système de nommage pour ce projet :

config.active_record.timestamped_migrations = false


#6

J’ai aussi un projet qui a les 2 types de nommage sans avoir pour autant
de
souci.
Si j’ai bien compris rake db:migrate exécutait les migrations de
manière séquentielle sans se poser de question alors que là il regarde
les
migrations qui ne sont pas effectuées, sans importance d’ordre, c’est
peut
être une piste …

2009/2/27 philippe lachaise removed_email_address@domain.invalid


#7

J’ai aussi un projet avec les deux types de nommages et aucun souci. Je
ne comprends pas ton souci: rails effectue les migrations par ordre
alphabetique, donc c’est compatible avec l’ancien système:

Exemple:
001
002

028
20080819173849_xxx
20080819211411_xxx
20080824142119_xxx
20080826181752_xxx
20080826182157_xxx
20080826182506_xxx
20080826183045_xxx

Ca ne change pas l’ordre des migrations. Je pencherais plus sur un souci
de la 2.3 beta. As-tu essayé avec la 2.2.2 pour voir?

Joël AZÉMAR a écrit :


#8

Le 26 février 2009 10:58, Philippe a écrit :

Ayant migré un projet en edge, mes nouvelle migrations
sont maintenant pare des “20090225205324_” plutôt que
des “042_”.

Passe à rake 0.8.3

– Jean-François.


http://twitter.com/underflow_


#9

Même problème (méthode “reenable” inexistante) sur un projet en Rails
2.3rc1
passé d’un premier PC (où tout marchait) à un second (où ça a planté).
J’étais en rake 0.8.1 et j’ai upgradé en 0.8.3 comme le conseillait
Jean-François, cela a résolu le problème. Toutes mes migrations étaient
en
mode “timestamped”. Hope this helps…


Jean-Baptiste


#10

Jean-François Trân wrote:

Le 26 f�vrier 2009 10:58, Philippe a �crit :

Ayant migr� un projet en edge, mes nouvelle migrations
sont maintenant pare des “20090225205324_” plut�t que
des “042_”.

Passe � rake 0.8.3

– Jean-Fran�ois.


http://twitter.com/underflow_

yep, this worked for me:
http://petersteinberger.com/2009/04/howto-update-rake-081-084-on-debian/


#11

Thomas a écrit :

20080819211411_xxx
20080824142119_xxx
20080826181752_xxx
20080826182157_xxx
20080826182506_xxx
20080826183045_xxx

Ca ne change pas l’ordre des migrations. Je pencherais plus sur un souci
de la 2.3 beta. As-tu essayé avec la 2.2.2 pour voir?

Pas sur que ca soit lié au problème mais il y a aussi un changement dans le
nom
de la table utilisée pour gérer les migrations :

  • schema_info pour l’ancien système avec une seule ligne qui contient la
    version
    de la migration la plus récente
    effectuée- schema_migrations pour le nouveau format avec une entrée pour chaque
    migration
    (un champ version conserve le numéro/timestamp de la migration).
    Effectivement
    cela a plus de sens vu que l’on peut ne pas effectuer une migration