Tengo una aplicación Java EE ejecutándose en Red Hat 6 con Java 7 y Wildfly 9. La aplicación ha estado funcionando bien a veces, de repente el tiempo de respuesta hace que la aplicación sea inutilizable y tengo que detener el proceso Wildfly y comenzar de nuevo. Luego la aplicación se normaliza durante unos días más. No tengo ningún error de jvm en Wildfly server.log ni ningún otro error de Java, pero recibí este mensaje de error con dmesg
el comando.
NET: Registered protocol family 36
INFO: task java:14736 blocked for more than 120 seconds.
"echo 0 > /proc/sys/kernel/hung_task_timeout_secs" disables this message.
java D 0000000000000002 0 14736 1 0x00000080
ffff8804aefdddf8 0000000000000082 0000000000000000 ffff8804fb0211e8
ffffea0011529c00 ffff8804aefddde8 0000000000000000 000000011889588b
ffff8804875eba78 ffff8804aefddfd8 000000000000f598 ffff8804875eba78
Call Trace:
[<ffffffffa00e05d5>] jbd2_log_wait_commit+0xc5/0x140 [jbd2]
[<ffffffff8108e160>] ? autoremove_wake_function+0x0/0x40
[<ffffffffa00e0686>] ? __jbd2_log_start_commit+0x36/0x40 [jbd2]
[<ffffffffa00fc55c>] ext4_sync_file+0x13c/0x250 [ext4]
[<ffffffff811a09b1>] vfs_fsync_range+0xa1/0xe0
[<ffffffff811a0a5d>] vfs_fsync+0x1d/0x20
[<ffffffff811a0a9e>] do_fsync+0x3e/0x60
[<ffffffff811a0af0>] sys_fsync+0x10/0x20
[<ffffffff8100b172>] system_call_fastpath+0x16/0x1b
hrtimer: interrupt took 3019336509 ns
NET: Unregistered protocol family 36
NET: Registered protocol family 36
Busqué una respuesta y apliqué la siguiente configuración en mi archivo sysctl.conf
.
vm.dirty_background_ratio = 5
vm.dirty_ratio = 10
¡Pero no funcionó! ¿Alguien tiene alguna idea sobre lo que podría causar este problema?