martes, 16 de agosto de 2011

Después de mucha espera y con críticas, Oracle lanzó Java 7

Tras cinco años en proceso de desarrollo, Java 7 por fin fue lanzado por Oracle con bombos y platillos. Sin embargo, no ha tenido que esperar mucho para recibir los primeros cuestionamientos. Y es que según los desarrolladores de Apache Lucene, una biblioteca con motor de búsqueda de código abierto para recuperación de información, la nueva versión de la plataforma incluye bugs que pueden causar que las máquinas virtuales se cuelguen o que se generen errores en las aplicaciones.

 La versión final de Java 7 ha sido publicada de forma oficial por Oracle, tras más de 4 años desde la última actualización. Como comentó Mark Reinhold (Arquitecto Jefe de Oracle) en su blog, se han corregido 9.494 bugs, se han implementado 1.966 mejoras y se realizaron 9.018 cambios. Además, la nueva versión ahora dispone de una nueva API del sistema de archivos y un framework nuevo enfocado al trabajo con procesadores de varios núcleos. Java 7 permite utilizar otros lenguajes, (tales como Ruby), gestión automática de recursos, mejoras en la liberación de la memoria de recursos, compatibilidad con el estándar Unicode 6.0, un nuevo interfaz visual y otro conjunto de funcionalidades que agradecerán los programadores. 

Sin embargo, en un comunicado, los desarrolladores de Apache Lucene han pedido a los usuarios que sean precavidos a la hora de usar Java 7 porque incluiría errores que afectan al código de varios proyectos. “Oracle ha publicado hoy Java 7. Por desgracia, contiene optimizaciones de HotSpot que compilan erróneamente algunos bucles”, advierten. “Esto puede afectar al código de varios proyectos de Apache. A veces las JVMs sólo se bloquean pero, en muchos casos, los resultados calculados pueden ser incorrectos, conduciendo a errores en las aplicaciones”. 

Precisamente Apache Lucene Core es uno de esos proyectos. Pero también el buen funcionamiento de Apache Solr queda comprometido. “A los usuarios de Solr con la configuración por defecto se les bloqueará Java con SIGSEGV [referencia de memoria no válida] tan pronto como empiecen a indexar documentos, ya que una parte afectada es el de sobra conocido lematizador Porter”, explican los desarrolladores de Apache. 

“Otros ciclos en Lucene también pueden compilarse mal, dando lugar a corrupción de índice”. Los problemas fueron detectados y remitidos a Oracle sólo cinco días antes del lanzamiento oficial de Java 7, por lo que la compañía no ha tenido tiempo para solucionarlos. Sin embargo, Oracle habría prometido solucionarlos con la segunda actualización de Java 7. “Esto significa que no se puede utilizar Apache Lucene/Solr con Java 7 hasta la actualización 2″, lamenta Apache.

No hay comentarios: