h1

Subsonic, ERROR DaoHelper – Failed to initialize database.

26/01/2015

Cuando ocurre un error del servidor web «jetty» de Subsonic ó Madsonic, y tras comprobar el log:

root@shirley:/var/subsonic# cat /var/subsonic/subsonic.log

Si se produce este error:

[2015-01-26 14:38:57,352] INFO DaoHelper - Checking database schema.
[2015-01-26 14:38:59,489] ERROR DaoHelper - Failed to initialize database.
org.springframework.jdbc.CannotGetJdbcConnectionException: Could not get JDBC Connection; nested exception is java.sql.SQLException: error in script file line: 62 S1000 General error java.lang.NullPointerException in statement [SET TABLE SHARE INDEX'9290275 9290275 9290275 9290275 1']
        at org.springframework.jdbc.datasource.DataSourceUtils.getConnection(DataSourceUtils.java:82)
        at org.springframework.jdbc.core.JdbcTemplate.execute(JdbcTemplate.java:382)
        at org.springframework.jdbc.core.JdbcTemplate.execute(JdbcTemplate.java:429)
        at net.sourceforge.subsonic.dao.schema.Schema25.execute(Schema25.java:38)
        at net.sourceforge.subsonic.dao.DaoHelper.checkDatabase(DaoHelper.java:115)
        at net.sourceforge.subsonic.dao.DaoHelper.<init>(DaoHelper.java:72)
        at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
        at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:57)
        at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
        at java.lang.reflect.Constructor.newInstance(Constructor.java:526)
        at org.springframework.beans.BeanUtils.instantiateClass(BeanUtils.java:100)
        at org.springframework.beans.factory.support.SimpleInstantiationStrategy.instantiate(SimpleInstantiationStrategy.java:61)
        at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.instantiateBean(AbstractAutowireCapableBeanFactory.java:877)
        at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBeanInstance(AbstractAutowireCapableBeanFactory.java:839)

es debido a que la base de datos está corrupta. Para solucionar, es necesario restaurar un backup:

carlos@shirley:~# cd /var/subsonic/db/
root@shirley:/var/subsonic/db# cp subsonic.backup subsonic.data

y rearrancar Subsonic:

carlos@shirley:/var/subsonic/db# /etc/init.d/subsonic restart
* Restarting Subsonic Daemon subsonic Started Subsonic [PID 4093, /var/subsonic/subsonic_sh.log]

Deja una respuesta

Introduce tus datos o haz clic en un icono para iniciar sesión:

Logo de WordPress.com

Estás comentando usando tu cuenta de WordPress.com. Salir /  Cambiar )

Foto de Facebook

Estás comentando usando tu cuenta de Facebook. Salir /  Cambiar )

Conectando a %s

Este sitio usa Akismet para reducir el spam. Aprende cómo se procesan los datos de tus comentarios.

A %d blogueros les gusta esto: