[SOLUCIONADO] Problema al regenerar proyecto

Tengo un problema al querer regenar el proyecto. el error que me sale es el que detallo mas abajo.
la version de toba que utilizo es la 2.1.1. tenia la 2.1.0 pero me cambie de rama y el problema persiste.
espero haber sido claro y que me puedan ayudar. saludos

Exportando informacion local ddjj…OK
Borrando metadatos…OK
Cargando datos globales…OK
Cargando componentes
ERROR ejecutando SQL:
[CODIGO]: 7
[SQLSTATE]: db_42703
[MENSAJE]: ERROR: no existe la columna «punto_montaje» en la relación «apex_item»
LINE 10: …_proyecto, actividad_patron, nombre, descripcion, punto_mont…
^
[SQL EJECUTADA]: ------------------------------------------------------------
–[50000001]-- ABM de estados de DDJJ


– apex_item

— INICIO Grupo de desarrollo 50
INSERT INTO apex_item (item_id, proyecto, item, padre_id, padre_proyecto, padre, carpeta, nivel_acceso, solicitud_tipo, pagina_tipo_proyecto, pagina_tipo, actividad_buffer_proyecto, actividad_buffer, actividad_patron_proyecto, actividad_patron, nombre, descripcion, punto_montaje, actividad_accion, menu, orden, solicitud_registrar, solicitud_obs_tipo_proyecto, solicitud_obs_tipo, solicitud_observacion, solicitud_registrar_cron, prueba_directorios, zona_proyecto, zona, zona_orden, zona_listar, imagen_recurso_origen, imagen, parametro_a, parametro_b, parametro_c, publico, redirecciona, usuario, exportable, creacion, retrasar_headers) VALUES (
NULL, --item_id
‘ddjj’, --proyecto
‘50000001’, --item
NULL, --padre_id
‘ddjj’, --padre_proyecto
‘23000003’, --padre
‘0’, --carpeta
‘0’, --nivel_acceso
‘web’, --solicitud_tipo
‘ddjj’, --pagina_tipo_proyecto
‘pagina_ddjj’, --pagina_tipo
NULL, --actividad_buffer_proyecto
NULL, --actividad_buffer
NULL, --actividad_patron_proyecto
NULL, --actividad_patron
‘ABM de estados de DDJJ’, --nombre
NULL, --descripcion
NULL, --punto_montaje
NULL, --actividad_accion
‘1’, --menu
‘20’, --orden
‘0’, --solicitud_registrar
NULL, --solicitud_obs_tipo_proyecto
NULL, --solicitud_obs_tipo
NULL, --solicitud_observacion
NULL, --solicitud_registrar_cron
NULL, --prueba_directorios
NULL, --zona_proyecto
NULL, --zona
NULL, --zona_orden
‘0’, --zona_listar
‘apex’, --imagen_recurso_origen
NULL, --imagen
NULL, --parametro_a
NULL, --parametro_b
NULL, --parametro_c
‘0’, --publico
NULL, --redirecciona
NULL, --usuario
‘0’, --exportable
‘2011-08-31 20:28:14’, --creacion
‘0’ --retrasar_headers
);
— FIN Grupo de desarrollo 50


– apex_item_objeto

INSERT INTO apex_item_objeto (item_id, proyecto, item, objeto, orden, inicializar) VALUES (
NULL, --item_id
‘ddjj’, --proyecto
‘50000001’, --item
‘50000006’, --objeto
‘0’, --orden
NULL --inicializar
);

Hola German,

por lo que puedo ver, del error se desprenderia que la tabla no posee la columna ‘punto_montaje’. Podrias verificar si es asi accediendo directamente a la base de datos?

Te explico el porque, como podes ver aqui la DDL de la tabla apex_item posee la columna que a vos te dice que falta, por eso me extraña que la misma no este en la tabla.

Cuando exportas el proyecto te tira error tambien?.
Una ultima consulta, luego de haberte pasado de rama… regeneraste la instancia en algun momento?

gracias por contestar tan rapido,
En cuanto a lo que me consultas te comento:
si, efectivamente falta el campo en la tabla, lo cual tb me parecio extraño.
El error tambien se produce al momento de exportar
y si regenere la instancia, en el archivo de version aparece la 2.1.1
cuando regenere me tiro un error que muestro mas abajo, pero me parecio que no era por eso

vm-toba:~# cd /2.1.0/bin/
vm-toba:/2.1.0/bin# ./toba instancia regenerar -i desarrollo
PHP Warning: Module ‘PDO’ already loaded in Unknown on line 0
PHP Warning: Module ‘pdo_pgsql’ already loaded in Unknown on line 0
^[[3~Desea conservar datos locales como usuarios y logs? (Si o No)
Si responde NO se utilizaran los exportados el Fri 13-Apr-12 a las 10:04
(s/n):n
(s/n):n

±-----------+
| BASE |
±-----------+
| postgres7 |
| localhost |
| postgres |
| postgres |
| toba_2_1 |
| 5432 |
| LATIN1 |
| desarrollo |
±-----------+
Se guardaran los datos existentes en un schema backup


Creación de la instancia


Creando las tablas del framework…OK
Cargando datos del nucleo…OK

ddjj:

Cargando datos globales…OK
Cargando componentes…OK
Cargando permisos…OK

toba_usuarios:

Cargando datos globales…OK
Cargando componentes…OK
Cargando permisos.OK

Cargando datos de la instancia…OK
Actualizando secuencias…OK

ERROR ejecutando SQL:
[CODIGO]: 7
[SQLSTATE]: db_23503
[MENSAJE]: ERROR: inserción o actualización en la tabla «apex_usuario_proyecto» viola la llave foránea «apex_usu_proy_fk_usuario»
DETAIL: La llave (usuario)=(12205952) no está presente en la tabla «apex_usuario».
[SQL EJECUTADA]: COMMIT TRANSACTION

Hiola German,

El archivo de version es independiente de la regeneracion de la instancia, es mas una referencia rapida para que la persona que desarrolla pueda saber en que version de toba se encuentra y para nosotros poder determinar los pasos intermedios de migracion que haya que hacer al pasar de una version a otra.

vm-toba:~# cd /2.1.0/bin/ vm-toba:/2.1.0/bin# ./toba instancia regenerar -i desarrollo

Cargando datos de la instancia…OK
Actualizando secuencias…OK

ERROR ejecutando SQL:
[CODIGO]: 7
[SQLSTATE]: db_23503
[MENSAJE]: ERROR: inserción o actualización en la tabla «apex_usuario_proyecto» viola la llave foránea «apex_usu_proy_fk_usuario»
DETAIL: La llave (usuario)=(12205952) no está presente en la tabla «apex_usuario».
[SQL EJECUTADA]: COMMIT TRANSACTION

Esto es porque se han exportado los permisos del proyecto (en la regeneracion del mismo) pero no se exporto el usuario asociado (exportacion local de la instancia), el tema es que si te falla la regeneracion es lo mismo que si no la hubieras hecho.

Lo que podes hacer es lo siguiente, cuando tires el comando de regeneracion… responde ‘Si’ a la pregunta "Desea conservar datos locales como usuarios y logs? ", eso va a exportar el usuario asociado y te va a permitir regenerar normalmente la instancia, si con eso no aparece la columna te mando un equipo del FBI pa ver por que no la crea :D.

Cualquier cosa seguimos por aca.

Saludos

Gracias por contestar Richard te hago otra consulta, en caso de contestar si, no pierdo nada de los usuarios que tengo actualmente en la base?

Gracias

Saludos

German,

en caso de contestar SI a la pregunta, no deberias perder nada de los usuarios, ya que eso realiza los mismo que el comando:


toba instancia exportar_local

Cualquier cosa, si queres un doble reaseguro… podes ejecutar el comando antes y luego regenerar como antes contestando NO.
Es lo mismo.

Saludos

Richard,
no llames al FBI, aparecio la columna y regenero perfecto tanto la instancia como el proyecto.
Muchas gracias.

PD: para cuando puedas. cual es la diferencia internamente de haber puesto ‘si’

Hola German,

la historia es mas o menos asi, la secuencia de comandos a ejecutar cuando habia cambios en la bd de Toba, era mas o menos asi:


toba instancia exportar_local                                      //Exporta permisos y usuarios
toba instancia regenerar                              

El tema es que en gral, la gente se olvidaba de tirar la primera linea y entonces perdian los usuarios nuevos.
Por lo que directamente se incluyo la pregunta como primer paso de la regeneracion, en caso afirmativo se ejecuta el metodo que representaria el primer comando, en caso negativo no se hace nada y se prosigue.
Es mas un recordatorio de ultimo momento que otra cosa.

Saludos