• Open Menu Close Menu
  • Apple
  • Shopping Bag
  • Apple
  • Mac
  • iPad
  • iPhone
  • Watch
  • TV
  • Music
  • Support
  • Search apple.com
  • Shopping Bag

Lists

Open Menu Close Menu
  • Terms and Conditions
  • Lists hosted on this site
  • Email the Postmaster
  • Tips for posting to public mailing lists
Re: Migrations not executed at startup problem
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Migrations not executed at startup problem


  • Subject: Re: Migrations not executed at startup problem
  • From: Miguel Angel Torres Avila <email@hidden>
  • Date: Wed, 06 Apr 2011 12:17:35 -0500

Thanks Chuck

The Application class extends ERXApplication.

But I just tried the code and the 

migrator().migrateToLatest();

line of code is reached but nothing happens.

I just added a System.out.println like this in the com.toracom.app.migration.DInAdminEOModel1.java class

@Override
public void upgrade(EOEditingContext editingContext, EOAdaptorChannel channel, EOModel model) throws Throwable {
System.out.println("Inside migrations");
}

But it is never called.

So I have a configuration problem somewhere, maybe I misspelled something.

I will doble checked everything.

On Apr 6, 2011, at 12:07 PM, Chuck Hill wrote:

Is this a "full" Wonder app, extending ERXApplication?  If not, you need to initiate the migration:

            if (ERXMigrator.shouldMigrateAtStartup())
            {
                try
                {
                    migrator().migrateToLatest();
                }
                catch (ERXMigrationFailedException e)
                {
                    // It might be a missing plugin problem
                    new ERXJDBCConnectionAnalyzer(databaseConnectionDictionary());
                    throw e;
                }
            }

Chuck


On Apr 6, 2011, at 9:47 AM, Miguel Angel Torres Avila wrote:

Hi all,

I am trying to implement Migrations in an existing Application.

I followed the instructions in this page:

http://webobjects.mdimension.com/hudson/job/Wonder/javadoc/er/extensions/migration/package-summary.html

and this one 

http://webobjects.mdimension.com/hudson/job/Wonder/javadoc/er/extensions/migration/ERXMigration.html

I think the steps are:

1. Modify properties file:

# Migrations
er.migration.migrateAtStartup=true
er.migration.createTablesIfNecessary=true
er.migration.modelNames=DInAdminEOModel
er.extensions.migration.ERXMigration.useDatabaseSpecificMigrations=true

DInAdminEOModel.InitialMigrationVersion=1
DInAdminEOModel.MigrationClassPrefix=com.toracom.app.migration.DInAdminEOModel 

2. Create class com.toracom.app.migration.DInAdminEOModel1.java

/////// BEGIN CLASS
package com.toracom.app.migration;

import com.webobjects.eoaccess.EOAdaptorChannel;
import com.webobjects.eoaccess.EOModel;
import com.webobjects.eocontrol.EOEditingContext;
import com.webobjects.foundation.NSArray;

import er.extensions.migration.ERXMigration;
import er.extensions.migration.ERXModelVersion;

public class DInAdminEOModel1 extends ERXMigration {
public NSArray<ERXModelVersion> modelDependencies() { 
    return null; 
  } 


@Override
public void upgrade(EOEditingContext editingContext, EOAdaptorChannel channel, EOModel model) throws Throwable {

}

@Override
public void downgrade(EOEditingContext editingContext, EOAdaptorChannel channel, EOModel model) throws Throwable {
// TODO Auto-generated method stub

} 
}

////// END CLASS


3. Create DInAdminEOModel1_Postgresql_Upgrade.migration file

ALTER TABLE parametros ADD COLUMN modulo_cfdivault_habilitado varchar(5);
UDPATE parametros SET modulo_cfdivault_habilitado = 'false';
ALTER TABLE parametros ALTER COLUMN modulo_cfdivault_habilitado SET NOT NULL;


When I run my application never get the SQL code executed. In the Application class I load a Parametros entity but I get the following error

Apr 06 11:38:11 dinadmin[55559] DEBUG NSLog  -  evaluateExpression: <com.webobjects.jdbcadaptor.PostgresqlExpression: "SELECT DISTINCT t0.directorio_raiz_procesamiento_cfd, t0.email_formato, t0.encoding_archivo_fuente, t0.encoding_escritura_cfd, t0.encoding_escritura_div_sol, t0.encoding_escritura_xml_co, t0.encoding_escritura_xml_impresion, t0.encoding_lectura_jaxb, t0.encoding_obtencion_co, t0.encoding_trans_co, t0.fh, t0.fhc, t0.formato_fecha_dhtmlxgrid, t0.formato_numero_registro_bd, t0.formato_numero_registro_bd_corto, t0.fsh, t0.fshnm, t0.iva, t0.logs_debug, t0.logs_path, t0.logs_stdout, t0.metodo_impresion, t0.modulo_cfdivault_habilitado, t0.moneda_id, t0.nd, t0.ne, t0.nm, t0.nombre_aplicacion, t0.np, t0.ntc, t0.parametros_id, t0.retraso_daemon, t0.rfc_fisica, t0.rfc_moral, t0.sistema_inicializado, t0.url_birt_viewer, t0.version_comprobante FROM parametros t0" withBindings: >
Apr 06 11:38:11 dinadmin[55559] DEBUG NSLog  -  === Rollback Internal Transaction
ERROR: column t0.modulo_cfdivault_habilitado does not existat org.postgresql.core.v3.QueryExecutorImpl.receiveErrorResponse(QueryExecutorImpl.java:1608)
at org.postgresql.core.v3.QueryExecutorImpl.processResults(QueryExecutorImpl.java:1343)
at org.postgresql.core.v3.QueryExecutorImpl.execute(QueryExecutorImpl.java:194)
at org.postgresql.jdbc2.AbstractJdbc2Statement.execute(AbstractJdbc2Statement.java:451)
at org.postgresql.jdbc2.AbstractJdbc2Statement.executeWithFlags(AbstractJdbc2Statement.java:336)


Because the modulo_cfdivault_habilitado column does not exist, so the migration's file is never executed.

Am I missing something, maybe a missing Framework?

Thanks in advance.


_______________________________
Ing. Miguel Angel Torres Avila
Director General
Tel: +52 (33) 3367 1892
Cel: +52 (33) 3106 8758
E-mail: email@hidden
www.toracom.net

Antes de imprimir, piense en el Medio Ambiente. Before printing think about the Environment. Avant d'imprimer, pensez à l'Environnement 
 

-- 
Chuck Hill             Senior Consultant / VP Development

Practical WebObjects - for developers who want to increase their overall knowledge of WebObjects or who are trying to solve specific problems.    
http://www.global-village.net/products/practical_webobjects






_______________________________
Ing. Miguel Angel Torres Avila
Director General
Tel: +52 (33) 3367 1892
Cel: +52 (33) 3106 8758
E-mail: email@hidden
www.toracom.net

Antes de imprimir, piense en el Medio Ambiente. Before printing think about the Environment. Avant d'imprimer, pensez à l'Environnement 


 

 _______________________________________________
Do not post admin requests to the list. They will be ignored.
Webobjects-dev mailing list      (email@hidden)
Help/Unsubscribe/Update your Subscription:

This email sent to email@hidden

References: 
 >Migrations not executed at startup problem (From: Miguel Angel Torres Avila <email@hidden>)
 >Re: Migrations not executed at startup problem (From: Chuck Hill <email@hidden>)

  • Prev by Date: Re: Migrations not executed at startup problem
  • Next by Date: Re: Migrations not executed at startup problem
  • Previous by thread: Re: Migrations not executed at startup problem (SOLVED)
  • Next by thread: fromBlob is not called on ERXMutableDictionary with mutableDictionary prototype
  • Index(es):
    • Date
    • Thread