lunes, 20 de julio de 2009

Olvidaré en 10 minutos cómo solucioné los problemas de errores "userenv" que aparecían cada dos minutos

En una de mis máquinas principales de trabajo, el log de eventos "reventaba" con mensajes como este:

Event Type: Error
Event Source: Userenv
Event Category: None
Event
ID: 1000
Date: 20/07/2009
Time: 7:56:58
User: NT AUTHORITY\SYSTEM
Computer: XXX
Description:
Windows cannot unload your registry
file. If you have a roaming profile, your settings are not replicated. Contact
your administrator.

DETAIL - Access is denied. , Build number ((2195)).



Después de darle muchas vueltas tratando de indentificar alguna tarea local o remota que fuese la responsabe de este error, encontré un fix que Microsoft tenía a disposición del personal, que se referenciaba desde la siguiente página, que terminaba llevando a un de Microsoft donde te bajabas una herramienta llamada "User Profile Hive Cleanup Service" . Una vez instalada (no requiere ni reiniciar el servidor), en lugar del error recurrente, aparece de vez en cuando la siguiente información, que parece que está corrigiendo el problema:

Event Type: Information
Event Source: UPHClean
Event Category: None
Event ID: 1401
Date: 20/07/2009
Time: 8:43:01
User: DOMGRAF\XXX
Computer: XXX
Description:
The following handles in user profile hive DOMGRAF\admin (S-1-5-21-88042264-442827290-926709054-1036) have been remapped because they were preventing the profile from unloading successfully:

mstask.exe (1392)
HKCU\Software\Classes (0x298)

CMD.EXE (6540)
HKCU\Software\Classes (0x3a4)
HKCU (0x3bc)



Parece que con esto se ha mitigado el problema y además da más información para seguir buscando el responsable último del mensaje

martes, 14 de julio de 2009

Olvidaré en 10 minutos lo que he aprendido sobre la optimización de servidores mySQL

A raíz de darle vueltas a por qué alguna de las páginas de mi servidor Zope cargaban demasiado lento, y asumiendo que no sólo sería culpa de la máquina que está muy castigada ya, me decidí a leer sobre cómo optimizar las tablas y las búsquedas en un servidor MySQL.

Me encontré con algunas páginas muy interesantes:
Muy interesante:
EXPLAIN "unaquery" --> analiza qué indices usará y por lo tanto dará pistas para determinar si hay que poner alguna query más
Este comando explain se usa también sobre una tabla, con EXPLAIN_EXTENDED... muy interesante

Más cosas aprendidas:
- parece que hay que evitar, si es posible, ordenar una query por una columna que no vaya en el WHERE
- por mi experiencia, evitar el uso de la función TIMESTAMP() a menos de que sea imprescindible. Me ayudó en todas las query que usaba para comparar contenidos de la tabla de recibidos vs transmitidos.


Con estas técnicas mejoré el redimiento de:

Páginas comparativas recepción vs transmisión
Páginas comparativas recepción por distintos caminos
Página de simulación de la cola de transmisión

** sobre todo, ajustar las tablas de "historicotx" a la hora de ejecutar el script que actualiza contenido, pasó de ejecutarse en minutos a hacerlo en unos pocos segundos. Increíble.

No pude probar, pero habría que hacerlo, la herramienta de la que se habla aquí:
MySqlTuner "Tuning MySQL Performance with MySQLTuner"

Además, también encontré consejos para configurar una cache al servidor MySQL que mejore los resultados: Turn on MySQL query cache to speed up query performance

domingo, 12 de julio de 2009

Olvidaré en 10 minutos cómo conseguir buenas capturas de un DVD

El objetivo era conseguir unas buenas capturas de un DVD con imágenes de nuestro viaje a Tailandia. La calidad que conseguía capturando directamente con el BSPlayer, VLCPlayer y la comodidad de ir capturando no me convencía, así que busqué por Internet y encontré una entrada de un blog bastante reciente donde se recomendaba y se explicaba cómo usar el GOM Player para esto (http://www.pablogeo.com/la-mejor-forma-de-capturar-imagenes-de-videos)

Pero al intentar usarlo me encuentro con que el GOM no captura directamente de mi DVD, quizá por el formato (el que utiliza mi disco duro grabador al pasr a un DVD). Así que decido que mejor pasarlo primero a MPEG, que seguro que así podré capturar perfectamente las imágenes.

Al buscar un programa gratuíto y facilón, me encontré con DVDx que me pareció potente y rápido de usar para tener unos buenos resultados cuanto antes.

Resumiendo:

1) pasar de DVD a MPEG --> usar DVDx
2) capturar con alta calidad frames de la película --> usar GOMPlayer. Se puede configurar calidad de JPEG, ráfagas de frames para después elegir la mejor,...