Entradas

Mostrando las entradas etiquetadas como bugs

Error 503 Collabnet Subversion Edge

Si tienes instalado Collabnet Subversion Edge y por algún motivo al acceder a http://localhost:3343/csvn recibes el siguiente error: HTTP ERROR: 503 Problem accessing /csvn/. Reason: Service Unavailable Powered by Jetty:// Entonces este artículo es para ti, este post es una versión actualizada de esta url y es compatible con Collabnet Subversion Edge 5 (en este momento la actual es la 5.0.1). Los pasos son los siguientes (seguirlos uno a uno porque no vale de nada reinstalar) Lo primero que debemos hacer es crear un backup de los repositorios c:\csvn\data\repositories y los archivos de configuración que se encuentran en c:\csvn\data\conf: svn_auth_file (usuarios y passwords) y svn_access_file (accesos). Si reinstalas el Collabnet este ultimo archivo es el único que se sobrescribe por eso es necesario crear el backup, aunque como bien dije antes reinstalar no vale de nada. Desinstalar Collabnet Subversion Edge (CSE) y reiniciar. Seguirán quedando archivos en la carpeta c:\c...

Mailman y las copias ocultas

Si por un casual recibís los siguientes errores en el mailman y no encontráis explicación posible a por qué siendo enviados los mensajes a las direcciones de manera correcta aparece, la causa es que no soporta el envío con copias ocultas sin pasar primeramente por la aprobación del moderador. Ha sido retenido en espera de que el moderador de la lista lo revise y apruebe. Ha sido retenido por: El mensaje no va dirigido explícitamente a la lista O se mandará el mensaje a la lista o se le enviará una notificación con la decisión del moderador. O la versión en inglés Message has implicit destination

Instalando SSMS 2016 CTP2 en Windows 10

Al descargar el instalador web del nuevo SQL Server Managment Studio 2016 y ejecutarlo en mi máquina con Windows 10 build 10158, me daba el siguiente error: Error 0x800713ec: Process returned error: 0x13ec Error 0x800713ec: Failed to execute EXE package. Error 0x800713ec: Failed to configure per-machine EXE package. Applied execute package: VS2010SP1Update, result: 0x800713ec, restart: None Error 0x800713ec: Failed to execute EXE package. Este error se produce porque SQL Server 2016 requiere Visual Studio 2010. Al instalarlo hay un error ( 0x800713ec – Asia ) cuando intenta instalar el SP1. El error se produce tanto con el instalador web como con la ISO completa. Es cierto que con el instalador web las pistas no son tan claras pero gracias a la ISO pude descargarme el SP1 de Visual Studio 2010   he instalarlo sin problemas. Si solo tienes SSMS puedes descargar la ISO completa (previo registro) y actualizar los componentes, mucho mejor que con el instalador web que sospecho...

Actualizando a Zend Studio 12.x

Imagen
Generalmente el paso de una actualización a otra en Zend Studio (ZS) es bastante trivial pero al actualizar de Zend Studio 11 a ZS 12 o ZS 12.5 me he encontrado con algunas dificultades, cambios de configuración que afectan las codificaciones de los archivos JavaScript y el uso del editor, sobre todo las teclas tab . Error de codificación de archivos JavaScript a UTF-8 en Zend Studio 12 En Zend Studio 11 para cambiar la codificación de un proyecto bastaba con hacer click derecho en el proyecto Properties > Resource y especificar allí nuestra configuración, pero el paso a la versión 12 que implica la actualización a Eclipse 4 ha cambiado el orden de prioridades de las codificaciones. Permítanme dar más detalles de cómo funciona. La codificación de un archivo de texto está determinada por las reglas siguientes: Si la codificación se encuentra justo en el archivo, entonces este es la codificación que se aplica, de lo contrario La codificación de archivos de texto se hereda de...

DateJS y jQuery UI Datepicker

Imagen
 La librería DateJS es una interfaz muy intuitiva para trabajar con fechas en JS, sobre todo internacionalizar las mismas y escribirlas en diferentes idiomas. Trabajando con ella me he dado cuenta que tal y como la descargamos es incompatible con la extensión de jQuery UI Datepicker produciendo el error Maximum call stack size exceeded error al llamar a la función toString que esta librería sobre escribe. Para corregirlo basta con editar el archivo date.js y reemplazar las apariciones de toString por print (es el nombre que escogí yo) salvo en la línea 40 donde aparece s.toString. Con estas modificaciones ya podremos trabajar con ambas características.

CPU does not support crc32 instructions

Imagen
Una de las cosas que me sorprendió al instalar MySQL 5.6.10 fue en el log de inicio ver la siguiente instrucción CPU does not support crc32 instructions ¿que son las instrucciones crc32 ? Es nueva instrucción que se utiliza para acelerar el cálculo de sumas de comprobación CRC32 . Esta instrucción es parte del conjunto SSE4.2, y al igual que la mayoría de las instrucciones SSE, es bastante inútil. ¿qué son las instrucciones SSE ? Son instrucciones que mejoras las posibilidades de nuestro procesador, dependiendo de la CPU de nuestro servidor tendrá unas u otras. Al parecer hasta MySQL 5.6.10 aparecía el texto CPU does not support crc32 instructions en algunos procesadores que si soportan esta instrucción, es un bug de MySQL que se ha corregido en MySQL 5.6.11. Cómo sabes si estamos utilizando estas instrucciones, muy sencillo, lo veremos en el log de mysql bajo el siguiente texto: Not using CPU crc32 instructions . ¿cómo saber si en efecto mi CPU no soporta las instrucciones SS...

MySQL 5.6.11 error 1146

Al parece hay algún tipo de error en la instalación de algunas versiones de MySQL o en la actualización de algunas (a mi me ha pasado actualizando de la 5.6.10 a la 5.6.11), en el cual te pueden dar los siguientes errores: ERROR 1146 (42S02) at line 36: Table 'mysql.innodb_table_stats' doesn't exist ERROR 1146 (42S02) at line 45: Table 'mysql.innodb_index_stats' doesn't exist ERROR 1146 (42S02) at line 73: Table 'mysql.slave_relay_log_info' doesn't exist ERROR 1146 (42S02) at line 102: Table 'mysql.slave_master_info' doesn't exist ERROR 1146 (42S02) at line 120: Table 'mysql.slave_worker_info' doesn't exist Sin embargo si entras en un administrador de MySQL como SQLYog puedes ver que las tablas existen pero luego al intentar abrirlas te sale el error Error CODE: 1146 TABLE ‘mysql.innodb_table_stats’ doesn’t exist Esto ocurre al tener activada en nuestro my.cnf la opción innodb_file_per_table. Al parecer al actualizar MySQ...

Archivos grandes con PHPseclib

Imagen
Uno de los mejores conjuntos de plugins, o clases, o librerías externas, para PHP es PHPseclib (PHP secure library) la cual implementa de manera mucho más intuitiva las funcionalidades para acceder a servidores con SSH y SFTP. Lo malo de casi todas estas librerías es que no son distribuciones oficiales y por tanto estamos sujetos a los intereses o convicciones de cada programador. Las ventajas de PHPseclib son muchísimo mayores que sus desventajas, que las hay, una de ellas por ejemplo es su incapacidad de gestionar correctamente el tamaño de archivos superiores a 4 GB. Según reza en la misma documentación de la clase: Los archivos de más de 4GB se mostrarán como si tuviesen exactamente 4GB. Los tamaños de archivos están representado por un número entero de 64 bits, no se debe utilizar Net_SFTP para transferir archivos con más de 4 GB (0xFFFFFFFF bytes) porque todos los tamaños de los archivos que son más grandes se representarán como 4GB. La solución para esto es reescribir la f...

jQuery, Firefox 15, live + onKey

Si tenéis errores con Firefox 15 utilizando jQuery con captura de eventos del tipo live blur, y además tenéis sobre ese elemento definidas funciones onKeyUp o por el estilo, tened presente que esto os va a dar error, lo aconsejable para solucionarlo es eliminar las funciones onKey del propio elemento y definirlas dentro del estándar jQuery, o también podéis probar a actualizar vuestra versión de este framework a la más reciente.

Activando CURL en WAMP 2.2 64 bits

Imagen
¿Problemas con PHP Curl en una de las instalaciones wamp siguientes para Windows 64bit? wampserver2.2e-php5.4.3-httpd2.2.22-mysql5.5.24-x64.exe wampserver2.2e-php5.4.3-httpd-2.4.2-mysql5.5.24-x64.exe Si es así entonces este post te ayudará a solucionarlas y activar nuevamente esta extensión tan útil de PHP. WAMP no cabe duda ha mejorado muchísimo desde que sus primeras versiones vieran la luz, es una interfaz muy sencilla y una de las pocas que se ha atrevido a compilar MySQL, PHP y Apache para Windows en 64 bits, y es sobre esta distribución en concreto que voy ha hablar y es que la librería curl que viene compilada para PHP 5.4.3 en WAMP 2.2 está mal, al activarla todo parece normal pero cuando ejecutamos un script con alguna de las funciones podemos tener errores de este tipo: Use of undefined constant CURLOPT_TIMEOUT O si comprobamos el evento de logs de WAMP tendríamos lo siguiente: Activation context generation failed for “c:\wamp\bin\php\php5.4.3\ext\php_curl.dll”. De...

Ojo con la función filesize de PHP

Este post es bastante corto y es para hacer énfasis en los que a mi entender es un bug de la función filesize de PHP en algunos sistemas Linux de archivos. Según el propio manual de PHP filesize : Devuelve el tamaño del fichero en bytes, o FALSE (y genera un error de nivel E_WARNING ) en caso de que se produzca un error. Aunque lo más interesante es la nota siguiente: Nota : Debido a que el tipo integer de PHP es con signo y muchas plataformas usan enteros de 32bit, algunas funciones de sistema de ficheros pueden devolver resultados inesperados para ficheros que son mayores de 2GB. Pues bien, estos resultados inesperados en mi caso han sido que a veces se devuelve el tamaño del archivo en bits y no en bytes, para calcular la relación entre bits y bytes os dejo este enlace.

Desaparece la opción de compartir archivos en WS2003

Imagen
Esta es una pequeña guía que te puede ayudar a solucionar el fallo en tu Windows Server 2003 si detectas que te han desaparecido las carpetas que tenías compartidas. Hay mucha información sobre compartir archivos en internet pero a mí particularmente no me valió de mucho y esta guía de pasos es la que me ayudó. Lo primero es comprobar que está configurado tu adaptador de Red para compartir archivos e impresoras, vamos a inicio, panel de control, adaptadores de red y comprobamos cada adaptador: Para cada adaptador abrimos las propiedades y debe de estar marcada la opción de compartir archivos e impresoras : Si está todo correcto comprobemos si está el servicio Server activado , inicio, ejecutar, services.msc y debería aparecernos como la siguiente imagen, si no está activado debemos arrancarlo y ponerlo en modo automático: Por último comprobamos qué carpetas tenemos realmente compartidas : Inicio - Ejecutar -  compmgmt.msc - (enter) - Computer Managment Local - Syst...

Errores que no existen en SQL Server

Imagen
Esto no sé si es un bug o que no he logrado dar realmente con la información correcta para solucionar mi problema, pero a falta de una solución propongo el problema. Hace poco me estaba dando un error bastante frecuente el SQL Server, error del tipo Communication link failure y número 16389. Al ir al agente de SQL Server e intentar crear una alerta para este error en concreto (16389) (ver imagen siguiente para los pasos que he seguido al crear la alerta nueva) Pues eso que al intentar crear la alerta como os he mostrado anteriormente me sale el siguiente error: No se puede crear una nueva alerta . (SqlManagerUI) Error de Crear para Alerta 'Error'.  (Microsoft.SqlServer.Smo) Excepción al ejecutar una instrucción o un proceso por lotes Transact-SQL. (Microsoft.SqlServer.ConnectionInfo) The specified @message_id ('16389') does not exist. (Microsoft SQL Server, Error: 14262) ¡Que raro! un error reportado por el propio SQL Server y que no exista, bueno, vamos a com...

Tickets que caducan en jQuery

Al parecer el equipo de trabajo de jquery esta saturado de trabajo porque hoy me ha llegado una actualización del ticket que les mandé hace 15 días con el problema de los nombres con corchetes en el core de jquery , la respuesta ha sido que al no tener un caso de ejemplo por mi parte pues que cerraban el ticket porque reciben muchos, he aquí la respuesta textual: Because we get so many tickets, we often need to return them to the initial reporter for more information. If that person does not reply within 14 days, the ticket will automatically be closed, and that has happened in this case. If you still are interested in pursuing this issue, feel free to add a comment with the requested information and we will be happy to reopen the ticket if it is still valid. Thanks! En español Debido a que recibimos muchas entradas de errores, a menudo necesitamos volver al que lo reportó inicialmente para más información. Si esa persona no responde dentro de 14 días, el ticket se cerrará automá...

URLs de los bugs reportados

Aquí dejo las direcciones de los 2 bugs que os comenté en los 2 post anteriores. Para el error de jQuery para campos cuyo nombre tuviera corchetes [] aquí está la url del bug reportado al equipo de desarrollo de jQuery . Para bug de Google Chrome que reorganiza los índices numéricos de los objetos JSON aquí esta la url del bug reportado al proyecto Chromium .

Bug Google Chrome con JSON

Imagen
Esta es la semana de los errores y hoy me ha pasado uno muy curioso, al principio pensaba que era un bug de la función json_encode de PHP pero al comprobar mi script con Firefox me he dado cuenta que el error radicaba en la forma de tratar los objetos JSON recibidos como respuesta de un AJAX por Google Chrome. Versiones de los navegadores: Google Chrome 15.0.854.15 dev-m Mozilla Frefox 7.0 El error en cuestión es la ordenación de los índices de un objeto JSON cuando estos son numéricos. Por ejemplo supongamos que tenemos el siguiente array: Array (     [236] => aargelich     [251] => aferrer     [245] => ambordas ) Y ahora codificamos este array con PHP y lo enviamos a nuestra web a través de AJAX, la codificación correcta de este array sería: {"236":"aargelich","251":"aferrer","245":"ambordas"} Sin embargo en el Google Chrome recibimos como respuesta el siguiente: {"236":"aargelich",...

Error de jQuery para campos con []

Imagen
Todos sabemos que para enviar un array desde nuestros formularios nos basta con incluir al final del nombre del input los corchetes []. Hoy trabajando con jQuery 1.5b1 (luego actualicé a la 1.6.4 y ocurre lo mismo) me he dado cuenta que en concreto la función find de jQuery no sabe tratar este tipo de nombre de campos, es la única función que he probado pero me imagino que con otras pase lo mismo. El código es muy simple y lo que pretende es recorrer todos los campos de un formulario y asignarle el valor, si existe, proveniente de un XML, el código fuente es el siguiente: $('#formulario :input').each(function(index) {         var form = $(this);         var name = form.attr('name');         var type = form.attr('type');         var found = $(xml).find(name);         if (found.length > 0) {   ...

MySQL error 1025: explicación y solución

Este post es una traducción al castellano y una ampliación del post MySQL’s ERROR 1025 explained . En versiones de MySQL superiores o iguales a la 5.5.* el motor de InnoDB ha sido cambiado totalmente y con ello la forma de tratar las claves externas, con ello aparecen nuevos errores como el que vamos a tratar de solucionar hoy: MySQL Error Number 1025 Error on rename of ‘tabla temporal’ to ‘tabla real’ (errno: 150) Este error puede aparecer al intentar cambiar el nombre de la columna, o el tipo de datos o su valor por defecto, en fin, cualquier modificación que afecte a una columna de la tabla que sea una foreign key (clave extranjera). O sea MySQL emite un mensaje de error crítico, error on rename (error en cambiar el nombre), cuando se intenta modificar una tabla de tal manera que se tenga que romper una restricción de clave externa. Explicación del error 1025 de MySQL Para comprender la solución primero debemos entender el origen de este error y con ello el funciona...

Bug con el plugin de jquery WYSIWYG

Imagen
El plugin de jquery WYSIWYG es uno de los que más utilizo y de hecho utilizaba una de las versiones antiguas la 0.5, el motivo que me hizo actualizar es que esta versión no permite crear cuadros WYSIWYG (What you see is what you get – Lo que ves es lo que obtienes) dentro de un dialog de jquery ui, o sí los crea pero no permite editarlos ni escribir en ellos. La solución fue bastante simple, actualizar a la última versión del momento la 0.95 pero con ella vinieron nuevos errores: En efecto, como podréis notar los botones se duplicaban y esto lo he reportado en el bug número 218 de la página de Google Code. La solución no obstante es bastante sencilla y pasa por crearnos una variable interna en el plugin que yo la llamé initStart y en la línea 494 dentro de la función que anexa el menú agregar estas líneas: if ( this .initStart) return ; this .initStart = true ; Con esto estaría solucionado y nos quedaría de la siguiente forma: El motivo de esto es la doble llamada (línea...

Bug en jquery 1.4.4 con la función each

Imagen
El motivo por el que muchos utilizamos jquery es por la comodidad que nos brinda al trabajar con varios navegadores y un mismo código, además de eliminar prácticamente toda las validaciones de errores que pueden detener la ejecución de una página web. Dicho esto en la versión 1.4.4 hay un error muy curioso en la tan útil función each, imaginemos el siguiente código: $.each(datos, function(clave, valor) {}); En él la variable datos (en mi caso) es un objeto json, el problema viene dado cuando esta variable está vacía. En Google Chrome 10 el error reportado en el archivo jquery es que la función length no puede ser aplicada a un objeto nulo, mientras que Mozilla Firefox 3.6.13 se queda más corto y solo nos dice que object es nulo (en la versión normal de jquery) ó que j es nulo (en la versión minimizada). Para reportar un bug en jquery podemos hacerlo desde el enlace anterior. Este bug en concreto tiene el número 8008 . Otros bugs que he reportado recientemente para Chr...