Problemas de memoria con Eclipse en MacOS

Me estaba encontrando con problemas a la hora de lanzar eclipse desde el MacOS a la hora de depurar un programa.

La solución es muy sencilla, y consiste en usar el Xms, Xmx y MaxPermSize. Dentro de la carpeta eclipse debemos buscar el fichero eclipse.ini, normalmente es Eclipse.app/Contents/MaxOS.

Debemos fijarnos en estos tres parámetros:

-XX:MaxPermSize=256m
-Xms40m
-Xmx512m

  • El MaxPermSize es la memoria permanente, y sólo debemos aumentarla si al aumentar Xmx no solucionamos el problema
  • Xms indica el tamaño de memoria con el que empieza el eclipse
  • Xmx indica el tamaño máximo de memoria que puede usar el eclipse. Con aumentar este valor a 1024m debería de dejar de darnos problemas.

con esto la depuración en el eclipse ya no tendrá ningún problema con la memoria.

Error en Apache: No space left on device: mod_rewrite: could not create rewrite_log_lock

Hoy nos hemos encontrado con este error en Apache que impedía su arranque:

No space left on device: mod_rewrite: could not create rewrite_log_lock

La solución, algo que no tenía que usar desde la práctica de sistemas operativos de la carrera. Borrar los semáforos del sistema.

Podemos ver los semáforos del sistema con el comando “ipsc -s”:

# ipcs -s (mostrar el listado de Semaphore Arrays, este es un ejemplo, no el mio)
------ Semaphore Arrays --------
key semid owner perms nsems
0x00000000 2686976 stas 600 1
0x00000000 2719745 stas 600 1
0x00000000 2752514 stas 600 1

Y podemos ir matando los semáforos con “ipcrm -s SEMID” siendo SEMID el identificador del semáforo obtenido con “ipsc -s”.

Es importante que lo ejecutéis con suficientes privilegios por lo que os recomiendo usar el usuario “root”.

WordPress 3.0 Multisite

La instalación de WordPress Multisite es muy sencilla desde la versión 3. Antes teníamos que bajarnos el paquete wordpress-mu pero ahora está incluída en la distribución normal.

Una vez instalado el wordpress (en un servidor con php y en una base de datos MySQL, entramos en http://SERVIDOR/CARPETA DEL WORDPRESS/wp-admin/install.php y seguimos las indicaciones) debemos editar el fichero y añadir:
define('WP_ALLOW_MULTISITE', true);
Después entramos como administrador y veremos en el menú dentro de Herramientas un nuevo elemento, Red. Tendremos dos opciones pero ojo, que luego no podemos cambiar, así que es el momento de tomar la decisión.

  • Como subdominios. Si el sitio principal es sitio.com podemos crear los blogs automáticamente como blog1.sitio.com, blog2.sitio.com
  • Como carpetas. Si el sitio principal es sitio.com podemos crear los blogs automáticamente como sitio.com/blog1, sitio.com/blog2

Mi recomendación es como subdominio. Al seleccionarlo y dar a siguiente nos aparece la siguiente información:

1.Crea el directorio blogs.dir en <RUTA DEL SERVIDOR>/wordpress/wp-content. Este directorio se usa para almacenar los archivos subidos por los sitios adicionales y el servidor web, debe poder escribir en él.

2.Añade lo siguiente a tu archivo wp-config.php en <RUTA DEL SERVIDOR>/wordpress/ sobre la línea que dice /* ¡Eso es todo, no hay que editar nada más! Feliz blogging. */:
define( 'MULTISITE', true );
define( 'SUBDOMAIN_INSTALL', true );
$base = '/';
define( 'DOMAIN_CURRENT_SITE', 'blogs.uva.es' );
define( 'PATH_CURRENT_SITE', '/' );
define( 'SITE_ID_CURRENT_SITE', 1 );
define( 'BLOG_ID_CURRENT_SITE', 1 );

3.Añade lo siguiente a tu archivo .htaccess en /wordpress/, remplazando las reglas existentes de WordPress:
RewriteEngine On
RewriteBase /
RewriteRule ^index\.php$ - [L]
# uploaded files
RewriteRule ^files/(.+) wp-includes/ms-files.php?file=$1 [L]
RewriteCond %{REQUEST_FILENAME} -f [OR]
RewriteCond %{REQUEST_FILENAME} -d
RewriteRule ^ - [L]
RewriteRule . index.php [L]

Y con esto tendremos nuestro servidor wordpress multisite funcionando.