Fórum

Actualizando LR 5.1 a 6.1

thumbnail
Rafael Lluis, modificado 11 Anos atrás.

Actualizando LR 5.1 a 6.1

Junior Member Postagens: 30 Data de Entrada: 15/10/12 Postagens Recentes
Hola,

Estamos en el proceso de actualización y estamos encontrando diferentes problemas para los que desconozco si existen soluciones. Hemos optado por hacer una migración manual (ejecución de todos los scripts de BBDD y actualización en consecuencia de la tabla release_), también intentando ejecutar cada paso de cada versión según la Wiki (http://www.liferay.com/es/community/wiki/-/wiki/Main/Upgrade+Instructions)

Resumo a continuación los principales problemas:

1. Documentos: tenemos una base de datos Oracle en español. Parece ser que se la columna que gestiona la versión de un documento ahora incluye decimales para poder almacenar versiones tipo "1.0" en lugar de "1". El caso es que al ser español, el separador de decimales es la "," (coma) y auqnue Liferay en principio parece soportarlo, luego no funciona verdaderamente ningún documento: LR 6.1 no es capaz de mostrar ningún documento.

2. Páginas Journal: todas las páginas tipo journal (contenido web) que tenemos dejan de funcionar. Tras ver la base de datos resulta que si creamos una página nueva, en las preferencias (portetpreferences) se almacena la llamada a un contenido con propiedades como "articleId" y "groupId" y todo funciona. Ahora bien, si revisamos una de nuestras páginas, veremos que tienen "article-Id" y "group-Id". Salvo que LR tenga en cuenta ambas ocpiones o que el proceso de actualización no manual incluyera un UPDATE masivo en BBDD, no veo cómo va a poder funcionar esta migración: ¿alquién lo puede confirmar? ¿hay que hacer un replace en BBDD de todo "article-id" por "articleId" o similar?

3. Proceso de verificacion: existe un proceso de verificacion de la BBDD que ejecuta LR 6 y que hemos optado por desactivar ya que en el caso de Oracle intenta actualizar todas las columnas VARCHAR cuyo tamaño esté expresado en bytes a columnas VARCHAR con tamaño expresado en CHARS. Este proceso lo hace contra TODAS las tablas (aunque no sean de LR) y además lo hace erróneamente puesto que intenta meter tamaños que luego la BBDD dice que no son válidos puesto que son menores a los datos almacenados; e incluso en algún caso intenta meter tamaño 0 lo cual hace que el proceso acabe finalizando con errores.

4. Permisos: si bien hemos ejecutado el asistente que migra permisos del algoritmo LR5 a permisos de LR6 aún algunas páginas fallan y no se cargan en absoluto. Tenemos que verificar aún la tabla de permisos, pero no parece que el migrador haya funcionado.

Iremos contando avances, pero ¿alguien más con estos problemas?

Saludos

Estamos mirando
thumbnail
Juan Gonzalez P, modificado 11 Anos atrás.

RE: Actualizando LR 5.1 a 6.1

Liferay Legend Postagens: 3089 Data de Entrada: 28/10/08 Postagens Recentes
Hola Rafael,

Rafael Lluis:

Estamos en el proceso de actualización y estamos encontrando diferentes problemas para los que desconozco si existen soluciones. Hemos optado por hacer una migración manual (ejecución de todos los scripts de BBDD y actualización en consecuencia de la tabla release_), también intentando ejecutar cada paso de cada versión según la Wiki (http://www.liferay.com/es/community/wiki/-/wiki/Main/Upgrade+Instructions)


Estáis intentando migrar directamente en un solo paso de la 5.1 a la 6.1? En tal caso, eso está mal. Deberia ser 5.1->6.0->6.1.
Otra cosa, es muy peligroso migrar sin usar la propia aplicación, ya que es posible que muchos procesos requieran de las clases Java para migrarse correctamente.

Rafael Lluis:

1. Documentos: tenemos una base de datos Oracle en español. Parece ser que se la columna que gestiona la versión de un documento ahora incluye decimales para poder almacenar versiones tipo "1.0" en lugar de "1". El caso es que al ser español, el separador de decimales es la "," (coma) y auqnue Liferay en principio parece soportarlo, luego no funciona verdaderamente ningún documento: LR 6.1 no es capaz de mostrar ningún documento.

Algun error en los logs? Es posible que sea por no migrar usando la aplicación, y solo los scripts SQL.

Rafael Lluis:

2. Páginas Journal: todas las páginas tipo journal (contenido web) que tenemos dejan de funcionar. Tras ver la base de datos resulta que si creamos una página nueva, en las preferencias (portetpreferences) se almacena la llamada a un contenido con propiedades como "articleId" y "groupId" y todo funciona. Ahora bien, si revisamos una de nuestras páginas, veremos que tienen "article-Id" y "group-Id". Salvo que LR tenga en cuenta ambas ocpiones o que el proceso de actualización no manual incluyera un UPDATE masivo en BBDD, no veo cómo va a poder funcionar esta migración: ¿alquién lo puede confirmar? ¿hay que hacer un replace en BBDD de todo "article-id" por "articleId" o similar?

Idem, preferible usar la aplicacion y no los scripts.

Rafael Lluis:

3. Proceso de verificacion: existe un proceso de verificacion de la BBDD que ejecuta LR 6 y que hemos optado por desactivar ya que en el caso de Oracle intenta actualizar todas las columnas VARCHAR cuyo tamaño esté expresado en bytes a columnas VARCHAR con tamaño expresado en CHARS. Este proceso lo hace contra TODAS las tablas (aunque no sean de LR) y además lo hace erróneamente puesto que intenta meter tamaños que luego la BBDD dice que no son válidos puesto que son menores a los datos almacenados; e incluso en algún caso intenta meter tamaño 0 lo cual hace que el proceso acabe finalizando con errores.


Resuelto en la version parcheada, aqui:

https://www.lcepatchers.org/downloads
thumbnail
Rafael Lluis, modificado 11 Anos atrás.

RE: Actualizando LR 5.1 a 6.1

Junior Member Postagens: 30 Data de Entrada: 15/10/12 Postagens Recentes
Rafael Lluis:

Estamos en el proceso de actualización y estamos encontrando diferentes problemas para los que desconozco si existen soluciones. Hemos optado por hacer una migración manual (ejecución de todos los scripts de BBDD y actualización en consecuencia de la tabla release_), también intentando ejecutar cada paso de cada versión según la Wiki (http://www.liferay.com/es/community/wiki/-/wiki/Main/Upgrade+Instructions)


Juan Gonzalez P:

Estáis intentando migrar directamente en un solo paso de la 5.1 a la 6.1? En tal caso, eso está mal. Deberia ser 5.1->6.0->6.1.
Otra cosa, es muy peligroso migrar sin usar la propia aplicación, ya que es posible que muchos procesos requieran de las clases Java para migrarse correctamente.


No, lo estamos haciendo por pasos. Lo que sí es cierto es que lo estamos haciendo sin la aplicación, es decir, de forma manual. Si es un método 100% incorrecto rogaría se pudiera confirmar puesto que es el único que nos parece válido para un entorno de producción. No se, por ejemplo, ¿de verdad existe un proceso dentro de la actualización que sin script masivo de bbdd cambie todos los aricle-id por articleID? Si es así efectivamente el proceso manual quedaría 100% prohibido.

Rafael Lluis:

1. Documentos: tenemos una base de datos Oracle en español. Parece ser que se la columna que gestiona la versión de un documento ahora incluye decimales para poder almacenar versiones tipo "1.0" en lugar de "1". El caso es que al ser español, el separador de decimales es la "," (coma) y auqnue Liferay en principio parece soportarlo, luego no funciona verdaderamente ningún documento: LR 6.1 no es capaz de mostrar ningún documento.

Juan Gonzalez P:

Algun error en los logs? Es posible que sea por no migrar usando la aplicación, y solo los scripts SQL.

Al acceder por el panel de control no me encuentra ningun documento y el error que da es este:

com.ibm.ws.webcontainer.servlet.ServletWrapper service SRVE0068E: Se ha creado una excepción no detectada en uno de los métodos de servicio del servlet /html/portlet/document_library/add_button.jsp en la aplicación liferay-portal-6_1_1-ce-ga2-20120731132656558_war. Excepción creada: java.lang.NullPointerException
	at com.ibm._jsp._add_5F_button._jspService(_add_5F_button.java:1509)
	at com.ibm.ws.jsp.runtime.HttpJspBase.service(HttpJspBase.java:98)
	at javax.servlet.http.HttpServlet.service(HttpServlet.java:831)
	at com.ibm.ws.webcontainer.servlet.ServletWrapper.service(ServletWrapper.java:1449)
	at com.ibm.ws.webcontainer.servlet.ServletWrapper.service(ServletWrapper.java:1384)
	at com.ibm.ws.webcontainer.filter.WebAppFilterChain.doFilter(WebAppFilterChain.java:131)
	at com.liferay.portal.kernel.servlet.filters.invoker.InvokerFilterChain.doFilter(InvokerFilterChain.java:72)
	at com.liferay.portal.kernel.servlet.filters.invoker.InvokerFilterChain.doFilter(InvokerFilterChain.java:116)
	at com.liferay.portal.kernel.servlet.filters.invoker.InvokerFilter.doFilter(InvokerFilter.java:73)
	at com.ibm.ws.webcontainer.filter.FilterInstanceWrapper.doFilter(FilterInstanceWrapper.java:188)
	at com.ibm.ws.webcontainer.filter.WebAppFilterChain.doFilter(WebAppFilterChain.java:116)
	at com.ibm.ws.webcontainer.filter.WebAppFilterChain._doFilter(WebAppFilterChain.java:77)
	at com.ibm.ws.webcontainer.filter.WebAppFilterManager.doFilter(WebAppFilterManager.java:852)
	at com.ibm.ws.webcontainer.servlet.ServletWrapper.handleRequest(ServletWrapper.java:785)
	at com.ibm.ws.webcontainer.servlet.ServletWrapper.handleRequest(ServletWrapper.java:443)
	at com.ibm.ws.webcontainer.servlet.ServletWrapperImpl.handleRequest(ServletWrapperImpl.java:175)
	at com.ibm.wsspi.webcontainer.servlet.GenericServletWrapper.handleRequest(GenericServletWrapper.java:121)
	at com.ibm.ws.jsp.webcontainerext.AbstractJSPExtensionServletWrapper.handleRequest(AbstractJSPExtensionServletWrapper.java:234)
	at com.ibm.ws.jsp.webcontainerext.AbstractJSPExtensionProcessor.handleRequest(AbstractJSPExtensionProcessor.java:335)
	at com.ibm.ws.webcontainer.webapp.WebAppRequestDispatcher.include(WebAppRequestDispatcher.java:644)
	at com.liferay.portal.servlet.DirectServletPathRegisterDispatcher.include(DirectServletPathRegisterDispatcher.java:53)
	at com.liferay.portal.servlet.PACLRequestDispatcherWrapper.doDispatch(PACLRequestDispatcherWrapper.java:90)
	at com.liferay.portal.servlet.PACLRequestDispatcherWrapper.include(PACLRequestDispatcherWrapper.java:54)
	at com.liferay.taglib.util.IncludeTag.include(IncludeTag.java:345)
	at com.liferay.taglib.util.IncludeTag.doInclude(IncludeTag.java:245)
	at com.liferay.taglib.util.IncludeTag.doEndTag(IncludeTag.java:86)
	at com.ibm._jsp._toolbar._jspx_meth_liferay$1util_include_0(_toolbar.java:1161)
	at com.ibm._jsp._toolbar._jspService(_toolbar.java:900)
	at com.ibm.ws.jsp.runtime.HttpJspBase.service(HttpJspBase.java:98)
	at javax.servlet.http.HttpServlet.service(HttpServlet.java:831)
	at com.ibm.ws.webcontainer.servlet.ServletWrapper.service(ServletWrapper.java:1449)
	at com.ibm.ws.webcontainer.servlet.ServletWrapper.service(ServletWrapper.java:1384)
	at com.ibm.ws.webcontainer.filter.WebAppFilterChain.doFilter(WebAppFilterChain.java:131)
	at com.liferay.portal.kernel.servlet.filters.invoker.InvokerFilterChain.doFilter(InvokerFilterChain.java:72)
	at com.liferay.portal.kernel.servlet.filters.invoker.InvokerFilterChain.doFilter(InvokerFilterChain.java:116)
	at com.liferay.portal.kernel.servlet.filters.invoker.InvokerFilter.doFilter(InvokerFilter.java:73)
	at com.ibm.ws.webcontainer.filter.FilterInstanceWrapper.doFilter(FilterInstanceWrapper.java:188)
	at com.ibm.ws.webcontainer.filter.WebAppFilterChain.doFilter(WebAppFilterChain.java:116)
	at com.ibm.ws.webcontainer.filter.WebAppFilterChain._doFilter(WebAppFilterChain.java:77)
	at com.ibm.ws.webcontainer.filter.WebAppFilterManager.doFilter(WebAppFilterManager.java:852)
	at com.ibm.ws.webcontainer.servlet.ServletWrapper.handleRequest(ServletWrapper.java:785)
	at com.ibm.ws.webcontainer.servlet.ServletWrapper.handleRequest(ServletWrapper.java:443)
	at com.ibm.ws.webcontainer.servlet.ServletWrapperImpl.handleRequest(ServletWrapperImpl.java:175)
	at com.ibm.wsspi.webcontainer.servlet.GenericServletWrapper.handleRequest(GenericServletWrapper.java:121)
	at com.ibm.ws.jsp.webcontainerext.AbstractJSPExtensionServletWrapper.handleRequest(AbstractJSPExtensionServletWrapper.java:234)
	at com.ibm.ws.jsp.webcontainerext.AbstractJSPExtensionProcessor.handleRequest(AbstractJSPExtensionProcessor.java:335)
	at com.ibm.ws.webcontainer.webapp.WebAppRequestDispatcher.include(WebAppRequestDispatcher.java:644)
	at com.liferay.portal.servlet.DirectServletPathRegisterDispatcher.include(DirectServletPathRegisterDispatcher.java:53)
	at com.liferay.portal.servlet.PACLRequestDispatcherWrapper.doDispatch(PACLRequestDispatcherWrapper.java:90)
	at com.liferay.portal.servlet.PACLRequestDispatcherWrapper.include(PACLRequestDispatcherWrapper.java:54)
	at com.liferay.taglib.util.IncludeTag.include(IncludeTag.java:345)
	at com.liferay.taglib.util.IncludeTag.doInclude(IncludeTag.java:245)
	at com.liferay.taglib.util.IncludeTag.doEndTag(IncludeTag.java:86)
	at com.ibm._jsp._view._jspx_meth_liferay$1util_include_2(_view.java:1275)
	at com.ibm._jsp._view._jspService(_view.java:824)
	at com.ibm.ws.jsp.runtime.HttpJspBase.service(HttpJspBase.java:98)
	at javax.servlet.http.HttpServlet.service(HttpServlet.java:831)
	at com.ibm.ws.webcontainer.servlet.ServletWrapper.service(ServletWrapper.java:1449)
	at com.ibm.ws.webcontainer.servlet.ServletWrapper.service(ServletWrapper.java:1384)
	at com.ibm.ws.webcontainer.filter.WebAppFilterChain.doFilter(WebAppFilterChain.java:131)
	at com.liferay.portal.kernel.servlet.filters.invoker.InvokerFilterChain.doFilter(InvokerFilterChain.java:72)
	at com.liferay.portal.kernel.servlet.filters.invoker.InvokerFilterChain.doFilter(InvokerFilterChain.java:116)
	at com.liferay.portal.kernel.servlet.filters.invoker.InvokerFilter.doFilter(InvokerFilter.java:73)
	at com.ibm.ws.webcontainer.filter.FilterInstanceWrapper.doFilter(FilterInstanceWrapper.java:188)
	at com.ibm.ws.webcontainer.filter.WebAppFilterChain.doFilter(WebAppFilterChain.java:116)
	at com.ibm.ws.webcontainer.filter.WebAppFilterChain._doFilter(WebAppFilterChain.java:77)
	at com.ibm.ws.webcontainer.filter.WebAppFilterManager.doFilter(WebAppFilterManager.java:852)
	at com.ibm.ws.webcontainer.servlet.ServletWrapper.handleRequest(ServletWrapper.java:785)
	at com.ibm.ws.webcontainer.servlet.ServletWrapper.handleRequest(ServletWrapper.java:443)
	at com.ibm.ws.webcontainer.servlet.ServletWrapperImpl.handleRequest(ServletWrapperImpl.java:175)
	at com.ibm.wsspi.webcontainer.servlet.GenericServletWrapper.handleRequest(GenericServletWrapper.java:121)
	at com.ibm.ws.jsp.webcontainerext.AbstractJSPExtensionServletWrapper.handleRequest(AbstractJSPExtensionServletWrapper.java:234)
	at com.ibm.ws.jsp.webcontainerext.AbstractJSPExtensionProcessor.handleRequest(AbstractJSPExtensionProcessor.java:335)
	at com.ibm.ws.webcontainer.webapp.WebAppRequestDispatcher.include(WebAppRequestDispatcher.java:644)
	at com.liferay.portal.servlet.DirectServletPathRegisterDispatcher.include(DirectServletPathRegisterDispatcher.java:53)
	at com.liferay.portal.servlet.PACLRequestDispatcherWrapper.doDispatch(PACLRequestDispatcherWrapper.java:90)
	at com.liferay.portal.servlet.PACLRequestDispatcherWrapper.include(PACLRequestDispatcherWrapper.java:54)
	at com.liferay.taglib.util.IncludeTag.include(IncludeTag.java:345)
	at com.liferay.taglib.util.IncludeTag.doInclude(IncludeTag.java:245)
	at com.liferay.taglib.util.IncludeTag.doEndTag(IncludeTag.java:86)
	at com.ibm._jsp._portlet._jspService(_portlet.java:4379)
	at com.ibm.ws.jsp.runtime.HttpJspBase.service(HttpJspBase.java:98)
	at javax.servlet.http.HttpServlet.service(HttpServlet.java:831)
	at com.ibm.ws.webcontainer.servlet.ServletWrapper.service(ServletWrapper.java:1449)
	at com.ibm.ws.webcontainer.servlet.ServletWrapper.service(ServletWrapper.java:1384)
	at com.ibm.ws.webcontainer.filter.WebAppFilterChain.doFilter(WebAppFilterChain.java:131)
	at com.liferay.portal.kernel.servlet.filters.invoker.InvokerFilterChain.doFilter(InvokerFilterChain.java:72)
	at com.liferay.portal.kernel.servlet.filters.invoker.InvokerFilterChain.doFilter(InvokerFilterChain.java:116)
	at com.liferay.portal.kernel.servlet.filters.invoker.InvokerFilter.doFilter(InvokerFilter.java:73)
	at com.ibm.ws.webcontainer.filter.FilterInstanceWrapper.doFilter(FilterInstanceWrapper.java:188)
	at com.ibm.ws.webcontainer.filter.WebAppFilterChain.doFilter(WebAppFilterChain.java:116)
	at com.ibm.ws.webcontainer.filter.WebAppFilterChain._doFilter(WebAppFilterChain.java:77)
	at com.ibm.ws.webcontainer.filter.WebAppFilterManager.doFilter(WebAppFilterManager.java:852)
	at com.ibm.ws.webcontainer.servlet.ServletWrapper.handleRequest(ServletWrapper.java:785)
	at com.ibm.ws.webcontainer.servlet.ServletWrapper.handleRequest(ServletWrapper.java:443)
	at com.ibm.ws.webcontainer.servlet.ServletWrapperImpl.handleRequest(ServletWrapperImpl.java:175)
	at com.ibm.wsspi.webcontainer.servlet.GenericServletWrapper.handleRequest(GenericServletWrapper.java:121)
	at com.ibm.ws.jsp.webcontainerext.AbstractJSPExtensionServletWrapper.handleRequest(AbstractJSPExtensionServletWrapper.java:234)
	at com.ibm.ws.webcontainer.webapp.WebAppRequestDispatcher.include(WebAppRequestDispatcher.java:644)
	at com.liferay.portlet.PortletRequestDispatcherImpl.dispatch(PortletRequestDispatcherImpl.java:323)
	at com.liferay.portlet.PortletRequestDispatcherImpl.include(PortletRequestDispatcherImpl.java:120)
	at com.liferay.portal.struts.PortletRequestProcessor.doInclude(PortletRequestProcessor.java:357)
	at com.liferay.portal.struts.PortletRequestProcessor.doForward(PortletRequestProcessor.java:327)
	at org.apache.struts.tiles.TilesRequestProcessor.processTilesDefinition(TilesRequestProcessor.java:239)
	at org.apache.struts.tiles.TilesRequestProcessor.processForwardConfig(TilesRequestProcessor.java:302)
	at com.liferay.portal.struts.PortletRequestProcessor.processForwardConfig(PortletRequestProcessor.java:465)
	at org.apache.struts.action.RequestProcessor.process(RequestProcessor.java:241)
	at com.liferay.portal.struts.PortletRequestProcessor.process(PortletRequestProcessor.java:224)
	at com.liferay.portlet.StrutsPortlet.include(StrutsPortlet.java:274)
	at com.liferay.portlet.StrutsPortlet.doView(StrutsPortlet.java:153)
	at com.liferay.portal.kernel.portlet.LiferayPortlet.doDispatch(LiferayPortlet.java:218)
	at javax.portlet.GenericPortlet.render(GenericPortlet.java:233)
	at com.liferay.portlet.FilterChainImpl.doFilter(FilterChainImpl.java:100)
	at com.liferay.portal.kernel.portlet.PortletFilterUtil.doFilter(PortletFilterUtil.java:64)
	at com.liferay.portlet.InvokerPortletImpl.invoke(InvokerPortletImpl.java:548)
	at com.liferay.portlet.InvokerPortletImpl.invokeRender(InvokerPortletImpl.java:607)
	at com.liferay.portlet.InvokerPortletImpl.render(InvokerPortletImpl.java:359)
	at com.ibm._jsp._render_5F_portlet._jspService(_render_5F_portlet.java:1204)
	at com.ibm.ws.jsp.runtime.HttpJspBase.service(HttpJspBase.java:98)
	at javax.servlet.http.HttpServlet.service(HttpServlet.java:831)
	at com.ibm.ws.webcontainer.servlet.ServletWrapper.service(ServletWrapper.java:1449)
	at com.ibm.ws.webcontainer.servlet.ServletWrapper.service(ServletWrapper.java:1384)
	at com.ibm.ws.webcontainer.filter.WebAppFilterChain.doFilter(WebAppFilterChain.java:131)
	at com.liferay.portal.kernel.servlet.filters.invoker.InvokerFilterChain.doFilter(InvokerFilterChain.java:72)
	at com.liferay.portal.kernel.servlet.filters.invoker.InvokerFilterChain.doFilter(InvokerFilterChain.java:116)
	at com.liferay.portal.kernel.servlet.filters.invoker.InvokerFilter.doFilter(InvokerFilter.java:73)
	at com.ibm.ws.webcontainer.filter.FilterInstanceWrapper.doFilter(FilterInstanceWrapper.java:188)
	at com.ibm.ws.webcontainer.filter.WebAppFilterChain.doFilter(WebAppFilterChain.java:116)
	at com.ibm.ws.webcontainer.filter.WebAppFilterChain._doFilter(WebAppFilterChain.java:77)
	at com.ibm.ws.webcontainer.filter.WebAppFilterManager.doFilter(WebAppFilterManager.java:852)
	at com.ibm.ws.webcontainer.servlet.ServletWrapper.handleRequest(ServletWrapper.java:785)
	at com.ibm.ws.webcontainer.servlet.ServletWrapper.handleRequest(ServletWrapper.java:443)
	at com.ibm.ws.webcontainer.servlet.ServletWrapperImpl.handleRequest(ServletWrapperImpl.java:175)
	at com.ibm.wsspi.webcontainer.servlet.GenericServletWrapper.handleRequest(GenericServletWrapper.java:121)
	at com.ibm.ws.jsp.webcontainerext.AbstractJSPExtensionServletWrapper.handleRequest(AbstractJSPExtensionServletWrapper.java:234)
	at com.ibm.ws.webcontainer.webapp.WebAppRequestDispatcher.include(WebAppRequestDispatcher.java:644)
	at com.liferay.portal.servlet.DirectServletPathRegisterDispatcher.include(DirectServletPathRegisterDispatcher.java:53)
	at com.liferay.portal.servlet.PACLRequestDispatcherWrapper.doDispatch(PACLRequestDispatcherWrapper.java:90)
	at com.liferay.portal.servlet.PACLRequestDispatcherWrapper.include(PACLRequestDispatcherWrapper.java:54)
	at com.liferay.portal.util.PortalImpl.renderPortlet(PortalImpl.java:5158)
	at com.liferay.portal.util.PortalUtil.renderPortlet(PortalUtil.java:1569)
	at com.liferay.portlet.layoutconfiguration.util.RuntimePortletImpl.processPortlet(RuntimePortletImpl.java:165)
	at com.liferay.portlet.layoutconfiguration.util.RuntimePortletImpl.processPortlet(RuntimePortletImpl.java:203)
	at com.liferay.portlet.layoutconfiguration.util.RuntimePortletImpl.processPortlet(RuntimePortletImpl.java:190)
	at com.liferay.portlet.layoutconfiguration.util.RuntimePortletUtil.processPortlet(RuntimePortletUtil.java:87)
	at com.liferay.portlet.layoutconfiguration.util.velocity.TemplateProcessor.processMax(TemplateProcessor.java:165)
	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:45)
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:37)
	at java.lang.reflect.Method.invoke(Method.java:599)
	at org.apache.velocity.util.introspection.UberspectImpl$VelMethodImpl.doInvoke(UberspectImpl.java:389)
	at org.apache.velocity.util.introspection.UberspectImpl$VelMethodImpl.invoke(UberspectImpl.java:378)
	at org.apache.velocity.runtime.parser.node.ASTMethod.execute(ASTMethod.java:270)
	at org.apache.velocity.runtime.parser.node.ASTReference.execute(ASTReference.java:262)
	at org.apache.velocity.runtime.parser.node.ASTReference.render(ASTReference.java:342)
	at org.apache.velocity.runtime.parser.node.SimpleNode.render(SimpleNode.java:336)
	at org.apache.velocity.Template.merge(Template.java:328)
	at org.apache.velocity.Template.merge(Template.java:235)
	at org.apache.velocity.app.VelocityEngine.mergeTemplate(VelocityEngine.java:381)
	at com.liferay.portal.velocity.VelocityEngineImpl.mergeTemplate(VelocityEngineImpl.java:264)
	at com.liferay.portal.kernel.velocity.VelocityEngineUtil.mergeTemplate(VelocityEngineUtil.java:73)
	at com.liferay.portlet.layoutconfiguration.util.RuntimePortletImpl.doProcessTemplate(RuntimePortletImpl.java:499)
	at com.liferay.portlet.layoutconfiguration.util.RuntimePortletImpl.doDispatch(RuntimePortletImpl.java:394)
	at com.liferay.portlet.layoutconfiguration.util.RuntimePortletImpl.processTemplate(RuntimePortletImpl.java:228)
	at com.liferay.portlet.layoutconfiguration.util.RuntimePortletUtil.processTemplate(RuntimePortletUtil.java:125)
	at com.ibm._jsp._control_5F_panel._jspService(_control_5F_panel.java:661)
	at com.ibm.ws.jsp.runtime.HttpJspBase.service(HttpJspBase.java:98)
	at javax.servlet.http.HttpServlet.service(HttpServlet.java:831)
	at com.ibm.ws.webcontainer.servlet.ServletWrapper.service(ServletWrapper.java:1449)
	at com.ibm.ws.webcontainer.servlet.ServletWrapper.service(ServletWrapper.java:1384)
	at com.ibm.ws.webcontainer.filter.WebAppFilterChain.doFilter(WebAppFilterChain.java:131)
	at com.liferay.portal.kernel.servlet.filters.invoker.InvokerFilterChain.doFilter(InvokerFilterChain.java:72)
	at com.liferay.portal.kernel.servlet.filters.invoker.InvokerFilterChain.doFilter(InvokerFilterChain.java:116)
	at com.liferay.portal.kernel.servlet.filters.invoker.InvokerFilter.doFilter(InvokerFilter.java:73)
	at com.ibm.ws.webcontainer.filter.FilterInstanceWrapper.doFilter(FilterInstanceWrapper.java:188)
	at com.ibm.ws.webcontainer.filter.WebAppFilterChain.doFilter(WebAppFilterChain.java:116)
	at com.ibm.ws.webcontainer.filter.WebAppFilterChain._doFilter(WebAppFilterChain.java:77)
	at com.ibm.ws.webcontainer.filter.WebAppFilterManager.doFilter(WebAppFilterManager.java:852)
	at com.ibm.ws.webcontainer.servlet.ServletWrapper.handleRequest(ServletWrapper.java:785)
	at com.ibm.ws.webcontainer.servlet.ServletWrapper.handleRequest(ServletWrapper.java:443)
	at com.ibm.ws.webcontainer.servlet.ServletWrapperImpl.handleRequest(ServletWrapperImpl.java:175)
	at com.ibm.wsspi.webcontainer.servlet.GenericServletWrapper.handleRequest(GenericServletWrapper.java:121)
	at com.ibm.ws.jsp.webcontainerext.AbstractJSPExtensionServletWrapper.handleRequest(AbstractJSPExtensionServletWrapper.java:234)
	at com.ibm.ws.webcontainer.webapp.WebAppRequestDispatcher.include(WebAppRequestDispatcher.java:644)
	at com.liferay.portal.action.LayoutAction.includeLayoutContent(LayoutAction.java:468)
	at com.liferay.portal.action.LayoutAction.processLayout(LayoutAction.java:735)
	at com.liferay.portal.action.LayoutAction.execute(LayoutAction.java:249)
	at org.apache.struts.action.RequestProcessor.processActionPerform(RequestProcessor.java:431)
	at org.apache.struts.action.RequestProcessor.process(RequestProcessor.java:236)
	at com.liferay.portal.struts.PortalRequestProcessor.process(PortalRequestProcessor.java:176)
	at org.apache.struts.action.ActionServlet.process(ActionServlet.java:1196)
	at org.apache.struts.action.ActionServlet.doGet(ActionServlet.java:414)
	at javax.servlet.http.HttpServlet.service(HttpServlet.java:718)
	at com.liferay.portal.servlet.MainServlet.callParentService(MainServlet.java:560)
	at com.liferay.portal.servlet.MainServlet.service(MainServlet.java:537)
	at javax.servlet.http.HttpServlet.service(HttpServlet.java:831)
	at com.ibm.ws.webcontainer.servlet.ServletWrapper.service(ServletWrapper.java:1449)
	at com.ibm.ws.webcontainer.servlet.ServletWrapper.service(ServletWrapper.java:1384)
	at com.ibm.ws.webcontainer.filter.WebAppFilterChain.doFilter(WebAppFilterChain.java:131)
	at com.liferay.portal.kernel.servlet.filters.invoker.InvokerFilterChain.doFilter(InvokerFilterChain.java:72)
	at com.liferay.portal.kernel.servlet.filters.invoker.InvokerFilterChain.doFilter(InvokerFilterChain.java:116)
	at com.liferay.portal.kernel.servlet.filters.invoker.InvokerFilterChain.doFilter(InvokerFilterChain.java:116)
	at com.liferay.portal.kernel.servlet.filters.invoker.InvokerFilterChain.doFilter(InvokerFilterChain.java:116)
	at com.liferay.portal.kernel.servlet.filters.invoker.InvokerFilterChain.doFilter(InvokerFilterChain.java:116)
	at com.liferay.portal.kernel.servlet.filters.invoker.InvokerFilterChain.doFilter(InvokerFilterChain.java:116)
	at com.liferay.portal.kernel.servlet.BaseFilter.processFilter(BaseFilter.java:163)
	at com.liferay.portal.servlet.filters.secure.SecureFilter.processFilter(SecureFilter.java:294)
	at com.liferay.portal.kernel.servlet.BaseFilter.doFilter(BaseFilter.java:57)
	at com.liferay.portal.kernel.servlet.filters.invoker.InvokerFilterChain.processDoFilter(InvokerFilterChain.java:206)
	at com.liferay.portal.kernel.servlet.filters.invoker.InvokerFilterChain.doFilter(InvokerFilterChain.java:108)
	at com.liferay.portal.kernel.servlet.filters.invoker.InvokerFilter.doFilter(InvokerFilter.java:73)
	at com.ibm.ws.webcontainer.filter.FilterInstanceWrapper.doFilter(FilterInstanceWrapper.java:188)
	at com.ibm.ws.webcontainer.filter.WebAppFilterChain.doFilter(WebAppFilterChain.java:116)
	at com.ibm.ws.webcontainer.filter.WebAppFilterChain._doFilter(WebAppFilterChain.java:77)
	at com.ibm.ws.webcontainer.filter.WebAppFilterManager.doFilter(WebAppFilterManager.java:852)
	at com.ibm.ws.webcontainer.servlet.ServletWrapper.handleRequest(ServletWrapper.java:785)
	at com.ibm.ws.webcontainer.servlet.ServletWrapper.handleRequest(ServletWrapper.java:443)
	at com.ibm.ws.webcontainer.servlet.ServletWrapperImpl.handleRequest(ServletWrapperImpl.java:175)
	at com.ibm.ws.webcontainer.webapp.WebAppRequestDispatcher.forward(WebAppRequestDispatcher.java:325)
	at com.liferay.portal.servlet.FriendlyURLServlet.service(FriendlyURLServlet.java:138)
	at javax.servlet.http.HttpServlet.service(HttpServlet.java:831)
	at com.ibm.ws.webcontainer.servlet.ServletWrapper.service(ServletWrapper.java:1449)
	at com.ibm.ws.webcontainer.servlet.ServletWrapper.service(ServletWrapper.java:1384)
	at com.ibm.ws.webcontainer.filter.WebAppFilterChain.doFilter(WebAppFilterChain.java:131)
	at com.liferay.portal.kernel.servlet.filters.invoker.InvokerFilterChain.doFilter(InvokerFilterChain.java:72)
	at com.liferay.portal.kernel.servlet.filters.invoker.InvokerFilterChain.doFilter(InvokerFilterChain.java:116)
	at com.liferay.portal.kernel.servlet.filters.invoker.InvokerFilterChain.doFilter(InvokerFilterChain.java:116)
	at com.liferay.portal.kernel.servlet.BaseFilter.processFilter(BaseFilter.java:163)
	at com.liferay.portal.servlet.filters.strip.StripFilter.processFilter(StripFilter.java:335)
	at com.liferay.portal.kernel.servlet.BaseFilter.doFilter(BaseFilter.java:57)
	at com.liferay.portal.kernel.servlet.filters.invoker.InvokerFilterChain.processDoFilter(InvokerFilterChain.java:206)
	at com.liferay.portal.kernel.servlet.filters.invoker.InvokerFilterChain.doFilter(InvokerFilterChain.java:108)
	at com.liferay.portal.kernel.servlet.filters.invoker.InvokerFilterChain.doFilter(InvokerFilterChain.java:116)
	at com.liferay.portal.kernel.servlet.filters.invoker.InvokerFilterChain.doFilter(InvokerFilterChain.java:116)
	at com.liferay.portal.kernel.servlet.BaseFilter.processFilter(BaseFilter.java:163)
	at com.liferay.portal.servlet.filters.secure.SecureFilter.processFilter(SecureFilter.java:294)
	at com.liferay.portal.kernel.servlet.BaseFilter.doFilter(BaseFilter.java:57)
	at com.liferay.portal.kernel.servlet.filters.invoker.InvokerFilterChain.processDoFilter(InvokerFilterChain.java:206)
	at com.liferay.portal.kernel.servlet.filters.invoker.InvokerFilterChain.doFilter(InvokerFilterChain.java:108)
	at com.liferay.portal.kernel.servlet.BaseFilter.processFilter(BaseFilter.java:163)
	at com.liferay.portal.servlet.filters.i18n.I18nFilter.processFilter(I18nFilter.java:241)
	at com.liferay.portal.kernel.servlet.BaseFilter.doFilter(BaseFilter.java:57)
	at com.liferay.portal.kernel.servlet.filters.invoker.InvokerFilterChain.processDoFilter(InvokerFilterChain.java:206)
	at com.liferay.portal.kernel.servlet.filters.invoker.InvokerFilterChain.doFilter(InvokerFilterChain.java:108)
	at com.liferay.portal.kernel.servlet.filters.invoker.InvokerFilterChain.doFilter(InvokerFilterChain.java:116)
	at com.liferay.portal.kernel.servlet.filters.invoker.InvokerFilterChain.doFilter(InvokerFilterChain.java:116)
	at com.liferay.portal.kernel.servlet.BaseFilter.processFilter(BaseFilter.java:163)
	at com.liferay.portal.servlet.filters.etag.ETagFilter.processFilter(ETagFilter.java:56)
	at com.liferay.portal.kernel.servlet.BaseFilter.doFilter(BaseFilter.java:57)
	at com.liferay.portal.kernel.servlet.filters.invoker.InvokerFilterChain.processDoFilter(InvokerFilterChain.java:206)
	at com.liferay.portal.kernel.servlet.filters.invoker.InvokerFilterChain.doFilter(InvokerFilterChain.java:108)
	at com.liferay.portal.kernel.servlet.BaseFilter.processFilter(BaseFilter.java:163)
	at com.liferay.portal.servlet.filters.autologin.AutoLoginFilter.processFilter(AutoLoginFilter.java:246)
	at com.liferay.portal.kernel.servlet.BaseFilter.doFilter(BaseFilter.java:57)
	at com.liferay.portal.kernel.servlet.filters.invoker.InvokerFilterChain.processDoFilter(InvokerFilterChain.java:206)
	at com.liferay.portal.kernel.servlet.filters.invoker.InvokerFilterChain.doFilter(InvokerFilterChain.java:108)
	at com.liferay.portal.kernel.servlet.BaseFilter.processFilter(BaseFilter.java:163)
	at com.liferay.portal.servlet.filters.sso.ntlm.NtlmPostFilter.processFilter(NtlmPostFilter.java:83)
	at com.liferay.portal.kernel.servlet.BaseFilter.doFilter(BaseFilter.java:57)
	at com.liferay.portal.kernel.servlet.filters.invoker.InvokerFilterChain.processDoFilter(InvokerFilterChain.java:206)
	at com.liferay.portal.kernel.servlet.filters.invoker.InvokerFilterChain.doFilter(InvokerFilterChain.java:108)
	at com.liferay.portal.kernel.servlet.BaseFilter.processFilter(BaseFilter.java:163)
	at com.liferay.portal.sharepoint.SharepointFilter.processFilter(SharepointFilter.java:80)
	at com.liferay.portal.kernel.servlet.BaseFilter.doFilter(BaseFilter.java:57)
	at com.liferay.portal.kernel.servlet.filters.invoker.InvokerFilterChain.processDoFilter(InvokerFilterChain.java:206)
	at com.liferay.portal.kernel.servlet.filters.invoker.InvokerFilterChain.doFilter(InvokerFilterChain.java:108)
	at com.liferay.portal.kernel.servlet.BaseFilter.processFilter(BaseFilter.java:163)
	at com.liferay.portal.servlet.filters.virtualhost.VirtualHostFilter.processFilter(VirtualHostFilter.java:216)
	at com.liferay.portal.kernel.servlet.BaseFilter.doFilter(BaseFilter.java:57)
	at com.liferay.portal.kernel.servlet.filters.invoker.InvokerFilterChain.processDoFilter(InvokerFilterChain.java:206)
	at com.liferay.portal.kernel.servlet.filters.invoker.InvokerFilterChain.doFilter(InvokerFilterChain.java:108)
	at com.liferay.portal.kernel.servlet.filters.invoker.InvokerFilterChain.processDirectCallFilter(InvokerFilterChain.java:187)
	at com.liferay.portal.kernel.servlet.filters.invoker.InvokerFilterChain.doFilter(InvokerFilterChain.java:95)
	at com.liferay.portal.kernel.servlet.filters.invoker.InvokerFilterChain.doFilter(InvokerFilterChain.java:116)
	at com.liferay.portal.kernel.servlet.filters.invoker.InvokerFilterChain.doFilter(InvokerFilterChain.java:116)
	at com.liferay.portal.kernel.servlet.filters.invoker.InvokerFilterChain.doFilter(InvokerFilterChain.java:116)
	at com.liferay.portal.kernel.servlet.filters.invoker.InvokerFilterChain.doFilter(InvokerFilterChain.java:116)
	at org.tuckey.web.filters.urlrewrite.UrlRewriteFilter.doFilter(UrlRewriteFilter.java:738)
	at com.liferay.portal.kernel.servlet.filters.invoker.InvokerFilterChain.processDoFilter(InvokerFilterChain.java:206)
	at com.liferay.portal.kernel.servlet.filters.invoker.InvokerFilterChain.doFilter(InvokerFilterChain.java:108)
	at com.liferay.portal.kernel.servlet.filters.invoker.InvokerFilterChain.processDirectCallFilter(InvokerFilterChain.java:167)
	at com.liferay.portal.kernel.servlet.filters.invoker.InvokerFilterChain.doFilter(InvokerFilterChain.java:95)
	at com.liferay.portal.kernel.servlet.filters.invoker.InvokerFilterChain.doFilter(InvokerFilterChain.java:116)
	at com.liferay.portal.kernel.servlet.filters.invoker.InvokerFilterChain.processDirectCallFilter(InvokerFilterChain.java:167)
	at com.liferay.portal.kernel.servlet.filters.invoker.InvokerFilterChain.doFilter(InvokerFilterChain.java:95)
	at com.liferay.portal.kernel.servlet.filters.invoker.InvokerFilterChain.doFilter(InvokerFilterChain.java:116)
	at com.liferay.portal.kernel.servlet.filters.invoker.InvokerFilterChain.processDirectCallFilter(InvokerFilterChain.java:187)
	at com.liferay.portal.kernel.servlet.filters.invoker.InvokerFilterChain.doFilter(InvokerFilterChain.java:95)
	at com.liferay.portal.kernel.servlet.filters.invoker.InvokerFilter.doFilter(InvokerFilter.java:73)
	at com.ibm.ws.webcontainer.filter.FilterInstanceWrapper.doFilter(FilterInstanceWrapper.java:188)
	at com.ibm.ws.webcontainer.filter.WebAppFilterChain.doFilter(WebAppFilterChain.java:116)
	at com.ibm.ws.webcontainer.filter.WebAppFilterChain._doFilter(WebAppFilterChain.java:77)
	at com.ibm.ws.webcontainer.filter.WebAppFilterManager.doFilter(WebAppFilterManager.java:852)
	at com.ibm.ws.webcontainer.servlet.ServletWrapper.handleRequest(ServletWrapper.java:785)
	at com.ibm.ws.webcontainer.servlet.ServletWrapper.handleRequest(ServletWrapper.java:443)
	at com.ibm.ws.webcontainer.servlet.ServletWrapperImpl.handleRequest(ServletWrapperImpl.java:175)
	at com.ibm.ws.webcontainer.servlet.CacheServletWrapper.handleRequest(CacheServletWrapper.java:91)
	at com.ibm.ws.webcontainer.WebContainer.handleRequest(WebContainer.java:859)
	at com.ibm.ws.webcontainer.WSWebContainer.handleRequest(WSWebContainer.java:1557)
	at com.ibm.ws.webcontainer.channel.WCChannelLink.ready(WCChannelLink.java:173)
	at com.ibm.ws.http.channel.inbound.impl.HttpInboundLink.handleDiscrimination(HttpInboundLink.java:455)
	at com.ibm.ws.http.channel.inbound.impl.HttpInboundLink.handleNewInformation(HttpInboundLink.java:384)
	at com.ibm.ws.http.channel.inbound.impl.HttpICLReadCallback.complete(HttpICLReadCallback.java:83)
	at com.ibm.ws.tcp.channel.impl.AioReadCompletionListener.futureCompleted(AioReadCompletionListener.java:165)
	at com.ibm.io.async.AbstractAsyncFuture.invokeCallback(AbstractAsyncFuture.java:217)
	at com.ibm.io.async.AsyncChannelFuture.fireCompletionActions(AsyncChannelFuture.java:161)
	at com.ibm.io.async.AsyncFuture.completed(AsyncFuture.java:138)
	at com.ibm.io.async.ResultHandler.complete(ResultHandler.java:202)
	at com.ibm.io.async.ResultHandler.runEventProcessingLoop(ResultHandler.java:766)
	at com.ibm.io.async.ResultHandler$2.run(ResultHandler.java:896)
	at com.ibm.ws.util.ThreadPool$Worker.run(ThreadPool.java:1527)



Rafael Lluis:

2. Páginas Journal: todas las páginas tipo journal (contenido web) que tenemos dejan de funcionar. Tras ver la base de datos resulta que si creamos una página nueva, en las preferencias (portetpreferences) se almacena la llamada a un contenido con propiedades como "articleId" y "groupId" y todo funciona. Ahora bien, si revisamos una de nuestras páginas, veremos que tienen "article-Id" y "group-Id". Salvo que LR tenga en cuenta ambas ocpiones o que el proceso de actualización no manual incluyera un UPDATE masivo en BBDD, no veo cómo va a poder funcionar esta migración: ¿alquién lo puede confirmar? ¿hay que hacer un replace en BBDD de todo "article-id" por "articleId" o similar?

Juan Gonzalez P:

Idem, preferible usar la aplicacion y no los scripts.

Como decía lo que veo es que es muy diferente la forma en la que en LR6.1 se almacena un contenido web respecto a LR5.1. Es más me atrevería a asegurar (estamos en ello) que hasta la version 6.0.6 todo iba igual y es en la última version (6.1) donde se produce el verdadero cambio. Lo que no tengo muy claro (paralelamente estamos ahora haciendo un proceso de migracion en un entorno replicado pero con la aplicacion) es cómo se va a solucionar la cuestión aún usando la aplicación.

Rafael Lluis:

3. Proceso de verificacion: existe un proceso de verificacion de la BBDD que ejecuta LR 6 y que hemos optado por desactivar ya que en el caso de Oracle intenta actualizar todas las columnas VARCHAR cuyo tamaño esté expresado en bytes a columnas VARCHAR con tamaño expresado en CHARS. Este proceso lo hace contra TODAS las tablas (aunque no sean de LR) y además lo hace erróneamente puesto que intenta meter tamaños que luego la BBDD dice que no son válidos puesto que son menores a los datos almacenados; e incluso en algún caso intenta meter tamaño 0 lo cual hace que el proceso acabe finalizando con errores.


Juan Gonzalez P:

Resuelto en la version parcheada, aqui:
https://www.lcepatchers.org/downloads


Muchas gracias
thumbnail
Juan Gonzalez P, modificado 11 Anos atrás.

RE: Actualizando LR 5.1 a 6.1

Liferay Legend Postagens: 3089 Data de Entrada: 28/10/08 Postagens Recentes
Hola Rafael,

No, lo estamos haciendo por pasos. Lo que sí es cierto es que lo estamos haciendo sin la aplicación, es decir, de forma manual. Si es un método 100% incorrecto rogaría se pudiera confirmar puesto que es el único que nos parece válido para un entorno de producción. No se, por ejemplo, ¿de verdad existe un proceso dentro de la actualización que sin script masivo de bbdd cambie todos los aricle-id por articleID? Si es así efectivamente el proceso manual quedaría 100% prohibido.

Tampoco te aseguro que sea 100% incorrecto, aunque sí que es cierto que hay varios procesos que actualizan valores , entre ellos las preferencias de portlets, parecido (sino igual) al caso que has dicho. Es por esto que mejor intentes la forma recomendada por Liferay (en la Wiki), que es desplegando y arrancando la aplicación.
thumbnail
Juan Gonzalez P, modificado 11 Anos atrás.

RE: Actualizando LR 5.1 a 6.1

Liferay Legend Postagens: 3089 Data de Entrada: 28/10/08 Postagens Recentes
Intenta hacerlo con el despliegue de la aplicación (previo backup de los datos y BDD, claro).

Si tienes cualquier problema ponlo aqui e intentaremos solucionarlo.
thumbnail
Rafael Lluis, modificado 11 Anos atrás.

RE: Actualizando LR 5.1 a 6.1

Junior Member Postagens: 30 Data de Entrada: 15/10/12 Postagens Recentes
De acuerdo. Os informo al respecto en cuanto tengamos avances en el proceso vía aplicativo (descartamos de momento el manual)
thumbnail
Rafael Lluis, modificado 11 Anos atrás.

RE: Actualizando LR 5.1 a 6.1

Junior Member Postagens: 30 Data de Entrada: 15/10/12 Postagens Recentes
He estado revisando el codigo fuente de Liferay, concretamente las clases de upgrade situadas en

liferay-portal-src-6.1.1-ce-ga2\portal-impl\src\com\liferay\portal\upgrade

Y efectivamente existen muchísimos procesos de actualización de la base de datos que sólo se van a ejecutar si se realiza una actualización mediante la aplicación. Por lo que parece los scripts de actualizacion entre las diferentes versiones (descargables aparte) sólo se refieren a estructura, no a los datos en sí mismos puesto que la reorganización, limplieza, adaptación, etc. de los datos se produce en estas clases JAVA que se ejecutan en el momento de actualización.

Siendo así, es 100% NO recomendable una actualización manual puesto que se dejaría millones de cosas en el tintero. Si bien en algún sitio lo he leido (el hecho de que no se recomienda una actualización manual) sí que creo que tal y como es el proceso, debería dejarse totalmente claro, por ejemplo en la Wiki relativa a actualización: NO debería realizarse un proceso de actualización manual de la base de datos.
thumbnail
Rafael Lluis, modificado 11 Anos atrás.

RE: Actualizando LR 5.1 a 6.1

Junior Member Postagens: 30 Data de Entrada: 15/10/12 Postagens Recentes
Hemos continuado con la actualización (ya tal y como LR recomienda) y aún así hemos tenido algunos problemas que hemos tenido que ir solventando tras revisar cada uno de ellos (llegando al nivel de código fuente en la mayoría de los casos). Por si a alguien le ayuda incluyo los principales a continuación:

de 5.1.1 a 5.2.3 --> en nuestra instalación nos falta el role owner y el proceso de actualización lo exige (a posteriori, una vez el proceso de actualizacion falla, pero se consigue iniciar LR, éste se crea automáticamente, pero ya es tarde (ya el update se ha interrumpido). También tuvimos problemas porque las columnas classnameid y classpk de la tabla groups no estaban rellenas convenientemente para el grupo Guest (se menciona en el bug http://issues.liferay.com/browse/LPS-5498).
Para corregirlo, antes de ejecutar la actualización preparamos la base de datos precreando el owner y corrigiendo el grupo guest

de 5.2.3 a 6.0.6 --> hay que asegurarse inicialmente de poner el algoritmo de permisos a 5 para luego cambiarlo una vez migrado. Hay que tener paciencia: con un portal de 2500 ficheros tarda en torno a 30 minutos ya que se recorre fichero a fichero durante la migración. Una vez migrado se debe ejecutar (tal y como se explica en la wiki) el proceso de migración de permisos a algoritmo 6 y reiniciar de nuevo el servidor cambiando la propiedad en el portal-ext a 6.
OJO: como teníamos un Oracle en español, el proceso de actualización genera las versiones de los documentos como "1,0" y no "1.0" lo cuál implica que no funciona correctamente ningún documento. Para solucionarlo, a posteriori, una vez migrado procedemos a hacer un replace en BBDD en las tablas implicadas para poner la versión con separador ".".
También hay que asegurarse de desactivar el proceso de verificación (valor 0) en el portal-ext para que no ejecute la verificación Oracle que es errónea puesto que intenta corregir todas las tablas de la base de datos (no solo las de LR) y falla. Al principio de este hilo se explica cómo solucionarlo en 6.1.1. y ya reactivarlo

de 6.0.6 a 6.1.1 --> La columna changelog de la tabla dlfileitem parece ser demasiado pequeña puesto que alguna de las actualizaciones falla debido a falta de espacio. La aumentamos previamente a varchar 4000. En este caso aun con el proceso verify desactivado, LR 6.1.1 intenta a su vez hacer una verificacion (Definida en portal.properties) y que podemos o bien desactivar en portal-ext (no recomendable puesto que parece que hace bastantes cosas) o utilizar la versión de www.icepatchers.org que ya incluye el proceso de verificación de oracle corregido (Así procedimos en nuestro caso)

Ya tenemos un 6.1.1 migrado y funcionando. Si alguien necesita más detalles (nombres exactos de tablas, etc.) no dude en pedirlo.

OJO: antes de cada paso se debe hacer backup de bbdd y ficheros (jackrabbit/lucene) puesto que si se da algún fallo y el proceso se interrumpe (podemos ver al final que la tabla release_ no se ha actualizado convenientemente) luego no podemos volver a arrancar el servidor: va a reintentar el proceso de actualización y le va a fallar porque falten columnas ya borradas, etc. Siempre hay que partir de un backup.
thumbnail
Rafael Lluis, modificado 11 Anos atrás.

RE: Actualizando LR 5.1 a 6.1

Junior Member Postagens: 30 Data de Entrada: 15/10/12 Postagens Recentes
Hay que añadir además que los metadatos de las páginas no se actualizan convenientemente: en nuestro LR 5.1 estaban en la abla layout, columna typesettings. En el nuevo LR 6.1 tienen que estar en las columnas description y keywords creadas en la misma tabla layout.

Pero el proceso de actualización no ha hecho nada al respecto así que hemos tenido que generar un script de BBDD para extraer convenientemente los datos de la columna typesettings para volcarlo en las nuevas columnas. Pero, ¿no debería hacerlo Liferay?
thumbnail
Alberto Chaparro, modificado 11 Anos atrás.

RE: Actualizando LR 5.1 a 6.1

Liferay Master Postagens: 549 Data de Entrada: 25/04/11 Postagens Recentes
Hola Rafael,

En principio el portal debería haber realizado ese cambio sobre la tabla layout durante el proceso de migración. Esa lógica está contenida en la clase upgradeLayout.java, lo que desconozco es que si por algún motivo no se ha ejecutado esa clase o no ha encontrado datos para actualizar en la ejecución de vuestro proceso de migración.

Un saludo.
thumbnail
Rafael Lluis, modificado 11 Anos atrás.

RE: Actualizando LR 5.1 a 6.1

Junior Member Postagens: 30 Data de Entrada: 15/10/12 Postagens Recentes
Pues también lo desconozco. Echaré un vistazo a la clase que comentas para ver porqué no ha funcionado en nuestro entorno y os lo cuento aquí por si ayudo a alguién en el futuro...
thumbnail
Rafael Lluis, modificado 10 Anos atrás.

RE: Actualizando LR 5.1 a 6.1

Junior Member Postagens: 30 Data de Entrada: 15/10/12 Postagens Recentes
Además he mos podido comprobar que una vez actualizado LR desde la 5.1 a la 6.1 y con un entorno más o menos estable, se ha producido un problema con los usuarios. Hemos dado de alta un nuevo usuario y al ir a acceder con su usuario y contraseña, el portal se quedaba en blanco. Viendo los logs, hemos visto que existe un problema con la longitud de la columna username en la tabla mbmessage.

Hemos podido comprobar que en un LR limpio, las columnas varchar de las tablas MB* (tracking de LR para comentarios, etc.) son de tamaño 75, mientras que en nuestro LR actualizado desde la 5.1 a la 6.1 éstas columnas han permanecido con tamaño 15. Y no hemos visto ninguna parte del proceso de actualización donde se intente cambiar el tamaño de estos varchar.

Por lo tanto hemos tenido que cambiarlo nosotros manualmente, desapareciendo así el error del log:


alter table mbmessage modify  
(userName VARCHAR2(75 CHAR), 
subject VARCHAR2(75 CHAR));

alter table mbban modify  
(userName VARCHAR2(75 CHAR));

alter table mbcategory modify  
(userName VARCHAR2(75 CHAR),
name VARCHAR2(75 CHAR));

alter table MBMailingList modify  
("UUID_" VARCHAR2(75 CHAR), 
"USERNAME" VARCHAR2(75 CHAR), 
"EMAILADDRESS" VARCHAR2(75 CHAR), 
"INPROTOCOL" VARCHAR2(75 CHAR), 
"INSERVERNAME" VARCHAR2(75 CHAR), 
"INUSERNAME" VARCHAR2(75 CHAR), 
"INPASSWORD" VARCHAR2(75 CHAR), 
"OUTEMAILADDRESS" VARCHAR2(75 CHAR), 
"OUTSERVERNAME" VARCHAR2(75 CHAR), 
"OUTUSERNAME" VARCHAR2(75 CHAR), 
"OUTPASSWORD" VARCHAR2(75 CHAR));