Database keeps getting corrupted

Need help? Post your questions here.

Moderator: moderators

Database keeps getting corrupted

Postby Ankhman » Sun Jan 14, 2018 7:03 pm

Hi there,

Been using subsonic forever, I love it! Lately (the last 6 months or so) every few days my Subsonic Database is getting corrupted or broken somehow and I have to wipe the c:\subsonic directory and restore a backup (I backup files/folders with Acronis). I've attached the screen I get in the browser when the Database is broken below. I have tried doing a clean install/new database and the corruption still happens within a few weeks/days. Let me know if you need any additional information, and thank you in advance for the assistance.

Jeff~

------

Error
Subsonic encountered an internal error. You can report this error in the Subsonic Forum. Please include the information below.

Exception java.lang.NullPointerException
Message null
Java version Oracle Corporation 1.8.0_151
Operating system Windows 10 10.0
Server jetty-6.1.x
Memory Used 101 of 191 MB
Stack trace java.lang.NullPointerException
at org.hsqldb.scriptio.ScriptWriterText.writeLogStatement(Unknown Source)
at org.hsqldb.persist.Log.writeStatement(Unknown Source)
at org.hsqldb.persist.Logger.writeToLog(Unknown Source)
at org.hsqldb.persist.Logger.logConnectUser(Unknown Source)
at org.hsqldb.Database.connect(Unknown Source)
at org.hsqldb.DatabaseManager.newSession(Unknown Source)
at org.hsqldb.jdbc.jdbcConnection.(Unknown Source)
at org.hsqldb.jdbcDriver.getConnection(Unknown Source)
at org.hsqldb.jdbcDriver.connect(Unknown Source)
at java.sql.DriverManager.getConnection(Unknown Source)
at java.sql.DriverManager.getConnection(Unknown Source)
at org.springframework.jdbc.datasource.DriverManagerDataSource.getConnectionFromDriverManager(DriverManagerDataSource.java:174)
at org.springframework.jdbc.datasource.DriverManagerDataSource.getConnectionFromDriver(DriverManagerDataSource.java:165)
at org.springframework.jdbc.datasource.AbstractDriverBasedDataSource.getConnectionFromDriver(AbstractDriverBasedDataSource.java:149)
at org.springframework.jdbc.datasource.AbstractDriverBasedDataSource.getConnection(AbstractDriverBasedDataSource.java:119)
at org.springframework.jdbc.datasource.DataSourceUtils.doGetConnection(DataSourceUtils.java:113)
at org.springframework.jdbc.datasource.DataSourceUtils.getConnection(DataSourceUtils.java:79)
at org.springframework.jdbc.core.JdbcTemplate.execute(JdbcTemplate.java:577)
at org.springframework.jdbc.core.JdbcTemplate.query(JdbcTemplate.java:641)
at org.springframework.jdbc.core.JdbcTemplate.query(JdbcTemplate.java:670)
at org.springframework.jdbc.core.JdbcTemplate.query(JdbcTemplate.java:678)
at org.springframework.jdbc.core.JdbcTemplate.query(JdbcTemplate.java:710)
at net.sourceforge.subsonic.dao.AbstractDao.query(AbstractDao.java:84)
at net.sourceforge.subsonic.dao.AbstractDao.queryOne(AbstractDao.java:150)
at net.sourceforge.subsonic.dao.UserDao.getUserByName(UserDao.java:59)
at net.sourceforge.subsonic.service.SecurityService.getUserByName(SecurityService.java:93)
at net.sourceforge.subsonic.service.SecurityService.loadUserByUsername(SecurityService.java:47)
at org.acegisecurity.ui.rememberme.TokenBasedRememberMeServices.loadUserDetails(TokenBasedRememberMeServices.java:308)
at org.acegisecurity.ui.rememberme.TokenBasedRememberMeServices.autoLogin(TokenBasedRememberMeServices.java:218)
at org.acegisecurity.ui.rememberme.RememberMeProcessingFilter.doFilter(RememberMeProcessingFilter.java:104)
at org.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:275)
at org.acegisecurity.wrapper.SecurityContextHolderAwareRequestFilter.doFilter(SecurityContextHolderAwareRequestFilter.java:81)
at org.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:275)
at org.acegisecurity.ui.basicauth.BasicProcessingFilter.doFilter(BasicProcessingFilter.java:173)
at org.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:275)
at org.acegisecurity.ui.AbstractProcessingFilter.doFilter(AbstractProcessingFilter.java:271)
at org.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:275)
at org.acegisecurity.ui.logout.LogoutFilter.doFilter(LogoutFilter.java:110)
at org.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:275)
at org.acegisecurity.context.HttpSessionContextIntegrationFilter.doFilter(HttpSessionContextIntegrationFilter.java:249)
at org.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:275)
at org.acegisecurity.util.FilterChainProxy.doFilter(FilterChainProxy.java:149)
at org.acegisecurity.util.FilterToBeanProxy.doFilter(FilterToBeanProxy.java:98)
at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1084)
at net.sourceforge.subsonic.filter.RequestEncodingFilter.doFilter(RequestEncodingFilter.java:25)
at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1084)
at net.sourceforge.subsonic.filter.ParameterDecodingFilter.doFilter(ParameterDecodingFilter.java:36)
at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1084)
at net.sourceforge.subsonic.filter.BootstrapVerificationFilter.doFilter(BootstrapVerificationFilter.java:41)
at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1084)
at org.mortbay.jetty.servlet.ServletHandler.handle(ServletHandler.java:360)
at org.mortbay.jetty.security.SecurityHandler.handle(SecurityHandler.java:216)
at org.mortbay.jetty.servlet.SessionHandler.handle(SessionHandler.java:181)
at org.mortbay.jetty.handler.ContextHandler.handle(ContextHandler.java:712)
at org.mortbay.jetty.webapp.WebAppContext.handle(WebAppContext.java:405)
at org.mortbay.jetty.handler.HandlerWrapper.handle(HandlerWrapper.java:139)
at org.mortbay.jetty.Server.handle(Server.java:313)
at org.mortbay.jetty.HttpConnection.handleRequest(HttpConnection.java:506)
at org.mortbay.jetty.HttpConnection$RequestHandler.headerComplete(HttpConnection.java:830)
at org.mortbay.jetty.HttpParser.parseNext(HttpParser.java:514)
at org.mortbay.jetty.HttpParser.parseAvailable(HttpParser.java:211)
at org.mortbay.jetty.HttpConnection.handle(HttpConnection.java:381)
at org.mortbay.io.nio.SelectChannelEndPoint.run(SelectChannelEndPoint.java:396)
at org.mortbay.thread.BoundedThreadPool$PoolThread.run(BoundedThreadPool.java:442)
Ankhman
 
Posts: 13
Joined: Mon May 25, 2015 5:56 pm

Re: Database keeps getting corrupted

Postby lonesomerider » Sun Jan 14, 2018 9:52 pm

Ankhman wrote:Memory Used 101 of 191 MB


Strange, But
Try to give a little bit more memory, could be that to restart the database morem memory is needed.
Maybe this helps.
/lonesomerider

Image
lonesomerider
 
Posts: 26
Joined: Fri Oct 20, 2017 9:09 am
Location: Switzerland

Re: Database keeps getting corrupted

Postby Ankhman » Mon Jan 15, 2018 4:00 am

Thanks, I will give this a try.

Edit: I checked my memory settings in the tray icon and it's set to 1024. Is there someone else memory limits are set in Subsonic?

Jeff~
Ankhman
 
Posts: 13
Joined: Mon May 25, 2015 5:56 pm

Re: Database keeps getting corrupted

Postby lonesomerider » Mon Jan 15, 2018 10:06 am

Ankhman wrote:Thanks, I will give this a try.

Edit: I checked my memory settings in the tray icon and it's set to 1024. Is there someone else memory limits are set in Subsonic?

Jeff~


No, there is no other place. set it to 400MB first, 1024 is too much.
I have over 200000 tracks and I am running with 400MB
/lonesomerider

Image
lonesomerider
 
Posts: 26
Joined: Fri Oct 20, 2017 9:09 am
Location: Switzerland

Re: Database keeps getting corrupted

Postby Ankhman » Thu Jan 18, 2018 6:56 pm

I reset the memory as indicated a few days ago, but it broke again this morning.

Edit: Additional information - I realized that last night is the first time I've added anything to the database for a few days, and I'm set to re-crawl my folders at 3AM. Server was working fine yesterday. And after restoring from a backup (from yesterday at 8AM) I was able to run a manual re-crawl from the web console with no issues.

Anyone have any additional suggestions? Is there a way to contact Subsonic directly?

New logs:

-----

Subsonic encountered an internal error. You can report this error in the Subsonic Forum. Please include the information below.

Exception java.lang.NullPointerException
Message null
Java version Oracle Corporation 1.8.0_151
Operating system Windows 10 10.0
Server jetty-6.1.x
Memory Used 104 of 189 MB
Stack trace java.lang.NullPointerException
at org.hsqldb.scriptio.ScriptWriterText.writeLogStatement(Unknown Source)
at org.hsqldb.persist.Log.writeStatement(Unknown Source)
at org.hsqldb.persist.Logger.writeToLog(Unknown Source)
at org.hsqldb.persist.Logger.logConnectUser(Unknown Source)
at org.hsqldb.Database.connect(Unknown Source)
at org.hsqldb.DatabaseManager.newSession(Unknown Source)
at org.hsqldb.jdbc.jdbcConnection.(Unknown Source)
at org.hsqldb.jdbcDriver.getConnection(Unknown Source)
at org.hsqldb.jdbcDriver.connect(Unknown Source)
at java.sql.DriverManager.getConnection(Unknown Source)
at java.sql.DriverManager.getConnection(Unknown Source)
at org.springframework.jdbc.datasource.DriverManagerDataSource.getConnectionFromDriverManager(DriverManagerDataSource.java:174)
at org.springframework.jdbc.datasource.DriverManagerDataSource.getConnectionFromDriver(DriverManagerDataSource.java:165)
at org.springframework.jdbc.datasource.AbstractDriverBasedDataSource.getConnectionFromDriver(AbstractDriverBasedDataSource.java:149)
at org.springframework.jdbc.datasource.AbstractDriverBasedDataSource.getConnection(AbstractDriverBasedDataSource.java:119)
at org.springframework.jdbc.datasource.DataSourceUtils.doGetConnection(DataSourceUtils.java:113)
at org.springframework.jdbc.datasource.DataSourceUtils.getConnection(DataSourceUtils.java:79)
at org.springframework.jdbc.core.JdbcTemplate.execute(JdbcTemplate.java:577)
at org.springframework.jdbc.core.JdbcTemplate.query(JdbcTemplate.java:641)
at org.springframework.jdbc.core.JdbcTemplate.query(JdbcTemplate.java:670)
at org.springframework.jdbc.core.JdbcTemplate.query(JdbcTemplate.java:678)
at org.springframework.jdbc.core.JdbcTemplate.query(JdbcTemplate.java:710)
at net.sourceforge.subsonic.dao.AbstractDao.query(AbstractDao.java:84)
at net.sourceforge.subsonic.dao.AbstractDao.queryOne(AbstractDao.java:150)
at net.sourceforge.subsonic.dao.UserDao.getUserByName(UserDao.java:59)
at net.sourceforge.subsonic.service.SecurityService.getUserByName(SecurityService.java:93)
at net.sourceforge.subsonic.service.SecurityService.loadUserByUsername(SecurityService.java:47)
at org.acegisecurity.ui.rememberme.TokenBasedRememberMeServices.loadUserDetails(TokenBasedRememberMeServices.java:308)
at org.acegisecurity.ui.rememberme.TokenBasedRememberMeServices.autoLogin(TokenBasedRememberMeServices.java:218)
at org.acegisecurity.ui.rememberme.RememberMeProcessingFilter.doFilter(RememberMeProcessingFilter.java:104)
at org.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:275)
at org.acegisecurity.wrapper.SecurityContextHolderAwareRequestFilter.doFilter(SecurityContextHolderAwareRequestFilter.java:81)
at org.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:275)
at org.acegisecurity.ui.basicauth.BasicProcessingFilter.doFilter(BasicProcessingFilter.java:173)
at org.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:275)
at org.acegisecurity.ui.AbstractProcessingFilter.doFilter(AbstractProcessingFilter.java:271)
at org.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:275)
at org.acegisecurity.ui.logout.LogoutFilter.doFilter(LogoutFilter.java:110)
at org.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:275)
at org.acegisecurity.context.HttpSessionContextIntegrationFilter.doFilter(HttpSessionContextIntegrationFilter.java:249)
at org.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:275)
at org.acegisecurity.util.FilterChainProxy.doFilter(FilterChainProxy.java:149)
at org.acegisecurity.util.FilterToBeanProxy.doFilter(FilterToBeanProxy.java:98)
at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1084)
at net.sourceforge.subsonic.filter.RequestEncodingFilter.doFilter(RequestEncodingFilter.java:25)
at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1084)
at net.sourceforge.subsonic.filter.ParameterDecodingFilter.doFilter(ParameterDecodingFilter.java:36)
at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1084)
at net.sourceforge.subsonic.filter.BootstrapVerificationFilter.doFilter(BootstrapVerificationFilter.java:41)
at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1084)
at org.mortbay.jetty.servlet.ServletHandler.handle(ServletHandler.java:360)
at org.mortbay.jetty.security.SecurityHandler.handle(SecurityHandler.java:216)
at org.mortbay.jetty.servlet.SessionHandler.handle(SessionHandler.java:181)
at org.mortbay.jetty.handler.ContextHandler.handle(ContextHandler.java:712)
at org.mortbay.jetty.webapp.WebAppContext.handle(WebAppContext.java:405)
at org.mortbay.jetty.handler.HandlerWrapper.handle(HandlerWrapper.java:139)
at org.mortbay.jetty.Server.handle(Server.java:313)
at org.mortbay.jetty.HttpConnection.handleRequest(HttpConnection.java:506)
at org.mortbay.jetty.HttpConnection$RequestHandler.headerComplete(HttpConnection.java:830)
at org.mortbay.jetty.HttpParser.parseNext(HttpParser.java:514)
at org.mortbay.jetty.HttpParser.parseAvailable(HttpParser.java:211)
at org.mortbay.jetty.HttpConnection.handle(HttpConnection.java:381)
at org.mortbay.io.nio.SelectChannelEndPoint.run(SelectChannelEndPoint.java:396)
at org.mortbay.thread.BoundedThreadPool$PoolThread.run(BoundedThreadPool.java:442)
Ankhman
 
Posts: 13
Joined: Mon May 25, 2015 5:56 pm

Re: Database keeps getting corrupted

Postby lonesomerider » Fri Jan 19, 2018 2:57 pm

Ankhman wrote:I reset the memory as indicated a few days ago, but it broke again this morning.


Let's try something else.

Next time it crashes do the following (without a restore):

1) Check if subsonic is still running in Task-Manager. If Not continue with step 4)
2) Stop subsonic.
3) Check on Task-Manager if it is really stopped. if not kill it.
4) Save the subsonic.log file to another place. CHeck this file for the issues before trying too restart.
5) Check if you have still space left on the drive for subsonic (How much?).
6) check in the subsonic/db folder if a file subsonic.lck exists. if it does, remove it.
7) restart subsonic

Tell us please the results of each step.

It looks from the log that subsonic is not able to open the database. Could be it is corrupt, but could also be that it is blocked by a zombie process (dead process, but not fully removed) or by some other means, like snapshot backups, deep virus scanning etc.)
If the above is working, you have a situation where subsonic loses connection to the database or is killed by some external event,

Some questions on your set up:

On the PC you have subsonic installed:
is sleep mode/hybernation mode on?
is the subsonic folder on a local or a shared folder?
is virusscan disabled for the subsonic/db folder?
/lonesomerider

Image
lonesomerider
 
Posts: 26
Joined: Fri Oct 20, 2017 9:09 am
Location: Switzerland

Re: Database keeps getting corrupted

Postby Ankhman » Fri Jan 19, 2018 6:30 pm

Let's try something else.

Next time it crashes do the following (without a restore):

1) Check if subsonic is still running in Task-Manager. If Not continue with step 4)
2) Stop subsonic.
3) Check on Task-Manager if it is really stopped. if not kill it.
4) Save the subsonic.log file to another place. Check this file for the issues before trying too restart.
I checked the logs and did not see anything unusual, but then again, I may not know what to look for.
5) Check if you have still space left on the drive for subsonic (How much?).
70GB Free on my SSD boot drive where Subsonic is installed and the database lives (default locations).
6) check in the subsonic/db folder if a file subsonic.lck exists. if it does, remove it.
No .lck file present when Subsonic is stopped, only when service was restarted.
7) restart subsonic

Tell us please the results of each step.

It looks from the log that subsonic is not able to open the database. Could be it is corrupt, but could also be that it is blocked by a zombie process (dead process, but not fully removed) or by some other means, like snapshot backups, deep virus scanning etc.)
If the above is working, you have a situation where subsonic loses connection to the database or is killed by some external event,

Some questions on your set up:

On the PC you have subsonic installed:
is sleep mode/hybernation mode on?
Negative.
is the subsonic folder on a local or a shared folder?
Local drive for application and C:\subsonic (default locations)
is virusscan disabled for the subsonic/db folder?[/quote]
This and the information above got me thinking. Subsonic was not excluded in Windows Defender (it is now). I also automatically run a disk image backup every morning of the boot drive on this system. I have excluded the C:\subsonic folder from this backup job and will back that folder up manually from now on. Let's see how this works. Thank you for your continued assistance. I'll check back in on the thread when I have more information.
Ankhman
 
Posts: 13
Joined: Mon May 25, 2015 5:56 pm

Re: Database keeps getting corrupted

Postby Ankhman » Mon Jan 22, 2018 7:23 pm

Hi there.

Ok, the server crashed again. I followed the steps outlined in your previous post, and the Subsonic service was still running. I checked the log file, there's a lot in there and I just don't know what to look for. I've pasted it (it's long!) at the bottom of this message (port # replaced with XXXX).

There was no lock file. I restarted Subsonic and the service and web interface came up, but much of the music was missing from the database - meaning searching for bands that were previously present were no longer visible. I ran the database cleanup and rescanned the folders manually and everything was indexed properly again.

Hopefully the logs give you some insight as to what's happening. It's frustrating to have to reset things every couple of days.

Thanks again for your ongoing help, standing by.

Jeff~

------
subsonic log (post-crash)

31 [main] INFO org.springframework.context.support.ClassPathXmlApplicationContext - Refreshing org.springframework.context.support.ClassPathXmlApplicationContext@4fe196: display name [org.springframework.context.support.ClassPathXmlApplicationContext@4fe196]; startup date [Fri Jan 19 12:01:12 CST 2018]; root of context hierarchy
62 [main] INFO org.springframework.beans.factory.xml.XmlBeanDefinitionReader - Loading XML bean definitions from class path resource [applicationContext-deployer.xml]
312 [main] INFO org.springframework.context.support.ClassPathXmlApplicationContext - Bean factory for application context [org.springframework.context.support.ClassPathXmlApplicationContext@4fe196]: org.springframework.beans.factory.support.DefaultListableBeanFactory@1a66f33
312 [main] INFO org.springframework.beans.factory.support.DefaultListableBeanFactory - Pre-instantiating singletons in org.springframework.beans.factory.support.DefaultListableBeanFactory@1a66f33: defining beans [service,org.springframework.remoting.rmi.RmiServiceExporter#0]; root of factory hierarchy
344 [main] INFO org.mortbay.log - Logging to org.slf4j.impl.SimpleLogger(org.mortbay.log) via org.mortbay.log.Slf4jLog
Using WAR file: C:\Program Files (x86)\Subsonic\subsonic.war
Extracting webapp to c:\subsonic\jetty\e408c9
Using WAR file: C:\Program Files (x86)\Subsonic\subsonic.war
359 [main] INFO org.mortbay.log - jetty-6.1.x
SLF4J: Class path contains multiple SLF4J bindings.
SLF4J: Found binding in [jar:file:/C:/Program%20Files%20(x86)/Subsonic/subsonic-booter-jar-with-dependencies.jar!/org/slf4j/impl/StaticLoggerBinder.class]
SLF4J: Found binding in [jar:file:/C:/subsonic/jetty/e408c9/webapp/WEB-INF/lib/slf4j-log4j12-1.6.1.jar!/org/slf4j/impl/StaticLoggerBinder.class]
SLF4J: See http://www.slf4j.org/codes.html#multiple_bindings for an explanation.
719 [main] INFO / - Initializing Spring root WebApplicationContext
719 [main] INFO org.springframework.web.context.ContextLoader - Root WebApplicationContext: initialization started
734 [main] INFO org.springframework.web.context.support.XmlWebApplicationContext - Refreshing org.springframework.web.context.support.XmlWebApplicationContext@6e6b29: display name [Root WebApplicationContext]; startup date [Fri Jan 19 12:01:13 CST 2018]; root of context hierarchy
765 [main] INFO org.springframework.beans.factory.xml.XmlBeanDefinitionReader - Loading XML bean definitions from ServletContext resource [/WEB-INF/applicationContext-service.xml]
828 [main] INFO org.springframework.beans.factory.xml.XmlBeanDefinitionReader - Loading XML bean definitions from ServletContext resource [/WEB-INF/applicationContext-security.xml]
844 [main] INFO org.springframework.beans.factory.xml.XmlBeanDefinitionReader - Loading XML bean definitions from ServletContext resource [/WEB-INF/applicationContext-cache.xml]
859 [main] INFO org.springframework.beans.factory.xml.XmlBeanDefinitionReader - Loading XML bean definitions from ServletContext resource [/WEB-INF/applicationContext-sonos.xml]
875 [main] INFO org.springframework.beans.factory.xml.XmlBeanDefinitionReader - Loading XML bean definitions from class path resource [META-INF/cxf/cxf.xml]
890 [main] INFO org.springframework.beans.factory.xml.XmlBeanDefinitionReader - Loading XML bean definitions from class path resource [META-INF/cxf/cxf-servlet.xml]
1049 [main] INFO org.springframework.web.context.support.XmlWebApplicationContext - Bean factory for application context [org.springframework.web.context.support.XmlWebApplicationContext@6e6b29]: org.springframework.beans.factory.support.DefaultListableBeanFactory@1dbad1e
1190 [main] INFO org.springframework.beans.factory.support.DefaultListableBeanFactory - Pre-instantiating singletons in org.springframework.beans.factory.support.DefaultListableBeanFactory@1dbad1e: defining beans [playerDao,mediaFileDao,artistDao,albumDao,playlistDao,playQueueDao,internetRadioDao,musicFileInfoDao,musicFolderDao,userDao,transcodingDao,podcastDao,avatarDao,shareDao,bookmarkDao,videoConversionDao,daoHelper,mediaFileService,securityService,settingsService,mediaScannerService,searchService,networkService,playerService,playlistService,versionService,statusService,ratingService,musicIndexService,audioScrobblerService,transcodingService,shareService,podcastService,adService,jukeboxService,folderBasedContentDirectory,upnpService,lastFmService,bookmarkService,videoConversionService,sonosService,metaDataParserFactory,ajaxMultiService,ajaxNowPlayingService,ajaxPlayQueueService,ajaxPlaylistService,ajaxLyricsService,ajaxCoverArtService,ajaxStarService,ajaxTagService,ajaxTransferService,ajaxChatService,localeResolver,loginFailureLogger,net.sourceforge.subsonic.security.SubsonicApplicationEventListener#0,filterChainProxy,httpSessionContextIntegrationFilter,logoutFilter,authenticationProcessingFilter,basicProcessingFilter,restRequestParameterProcessingFilter,basicProcessingFilterEntryPoint,securityContextHolderAwareRequestFilter,rememberMeProcessingFilter,anonymousProcessingFilter,exceptionTranslationFilter,basicExceptionTranslationFilter,filterInvocationInterceptor,accessDecisionManager,rememberMeServices,authenticationManager,daoAuthenticationProvider,userCacheWrapper,ldapAuthenticationProvider,bindAuthenticator,userDetailsServiceBasedAuthoritiesPopulator,ajaxServiceInterceptor,ajaxTagServiceSecure,ajaxTransferServiceSecure,cacheFactory,userCache,mediaFileMemoryCache,cxf,org.apache.cxf.bus.spring.BusWiringBeanFactoryPostProcessor,org.apache.cxf.bus.spring.Jsr250BeanPostProcessor,org.apache.cxf.bus.spring.BusExtensionPostProcessor,sonosEndpoint,sonosHelper]; root of factory hierarchy
1237 [main] INFO org.springframework.jdbc.datasource.DriverManagerDataSource - Loaded JDBC driver: org.hsqldb.jdbcDriver
6246 [main] INFO org.acegisecurity.intercept.AbstractSecurityInterceptor - Validated configuration attributes
6262 [main] INFO org.acegisecurity.intercept.method.MethodDefinitionMap - Adding secure method [public net.sourceforge.subsonic.ajax.UploadInfo net.sourceforge.subsonic.ajax.TransferService.getUploadInfo()] with attributes [[ROLE_UPLOAD]]
6262 [main] INFO org.acegisecurity.intercept.method.MethodDefinitionMap - Adding secure method [public java.lang.String net.sourceforge.subsonic.ajax.TagService.setTags(int,java.lang.String,java.lang.String,java.lang.String,java.lang.String,java.lang.String,java.lang.String)] with attributes [[ROLE_COVERART]]
6262 [main] INFO org.acegisecurity.intercept.AbstractSecurityInterceptor - Validated configuration attributes
7074 [main] INFO org.springframework.web.context.ContextLoader - Root WebApplicationContext: initialization completed in 6355 ms
7184 [main] INFO / - Initializing Spring FrameworkServlet 'subsonic'
7184 [main] INFO org.springframework.web.servlet.DispatcherServlet - FrameworkServlet 'subsonic': initialization started
7184 [main] INFO org.springframework.web.context.support.XmlWebApplicationContext - Refreshing org.springframework.web.context.support.XmlWebApplicationContext@d69038: display name [WebApplicationContext for namespace 'subsonic-servlet']; startup date [Fri Jan 19 12:01:19 CST 2018]; parent: org.springframework.web.context.support.XmlWebApplicationContext@6e6b29
7184 [main] INFO org.springframework.beans.factory.xml.XmlBeanDefinitionReader - Loading XML bean definitions from ServletContext resource [/WEB-INF/subsonic-servlet.xml]
7215 [main] INFO org.springframework.web.context.support.XmlWebApplicationContext - Bean factory for application context [org.springframework.web.context.support.XmlWebApplicationContext@d69038]: org.springframework.beans.factory.support.DefaultListableBeanFactory@451947
7262 [main] INFO org.springframework.beans.factory.support.DefaultListableBeanFactory - Pre-instantiating singletons in org.springframework.beans.factory.support.DefaultListableBeanFactory@451947: defining beans [leftController,artistsController,rightController,statusController,mainController,playlistController,playlistsController,bookmarksController,importPlaylistController,topController,helpController,moreController,uploadController,lyricsController,allmusicController,podcastController,podcastChannelsController,internetRadioController,internetRadioStreamController,podcastChannelController,podcastReceiverAdminController,setMusicFileInfoController,shareManagementController,setRatingController,randomPlayQueueController,changeCoverArtController,nowPlayingController,starredController,searchController,settingsController,playerSettingsController,dlnaSettingsController,sonosSettingsController,shareSettingsController,musicFolderSettingsController,networkSettingsController,transcodingSettingsController,internetRadioSettingsController,podcastSettingsController,videoConversionSettingsController,generalSettingsController,advancedSettingsController,personalSettingsController,avatarUploadController,userSettingsController,passwordSettingsController,homeController,editTagsController,playQueueController,coverArtController,artistImageController,captionsController,avatarController,statusChartController,userChartController,m3uController,streamController,hlsController,segmentController,videoPlayerController,videoConverterController,externalPlayerController,downloadController,premiumSettingsController,multiController,wapController,restController,dbController,premiumSettingsValidator,userSettingsValidator,passwordSettingsValidator,urlMapping,messageSource,themeSource,themeResolver,viewResolver]; parent: org.springframework.beans.factory.support.DefaultListableBeanFactory@1dbad1e
7824 [main] INFO org.springframework.web.servlet.DispatcherServlet - FrameworkServlet 'subsonic': initialization completed in 640 ms
7840 [main] INFO org.mortbay.log - Started SelectChannelConnector@0.0.0.0:XXXX
Subsonic running on: http://localhost:XXXX/
7871 [main] INFO org.springframework.remoting.rmi.RmiServiceExporter - Looking for RMI registry at port '9412'
8902 [main] INFO org.springframework.remoting.rmi.RmiServiceExporter - Could not detect RMI registry - creating new one
8918 [main] INFO org.springframework.remoting.rmi.RmiServiceExporter - Binding service 'SubsonicDeployerService' to RMI registry: RegistryImpl[UnicastServerRef [liveRef: [endpoint:[192.168.1.102:9412](local),objID:[0:0:0, 0]]]]
193545246 [btpool0-31] INFO org.directwebremoting.log.startup - Starting: DwrServlet v3.0.0-FINAL on jetty-6.1.x / JDK 1.8.0_151 from Oracle Corporation at
193545453 [btpool0-31] INFO org.directwebremoting.log.startup - Starting: Using container abstraction org.directwebremoting.server.servlet2.Servlet24ContainerAbstraction
193545468 [btpool0-31] INFO org.directwebremoting.servlet.UrlProcessor - Probably not an issue: the url:/gi.js (org.directwebremoting.gi.GiHandler) Handler is not available. This is only an problem if you wanted to use it.
Exception in thread "Thread-11" java.lang.NullPointerException
at org.hsqldb.scriptio.ScriptWriterText.writeLogStatement(Unknown Source)
at org.hsqldb.persist.Log.writeStatement(Unknown Source)
at org.hsqldb.persist.Logger.writeToLog(Unknown Source)
at org.hsqldb.persist.Logger.logConnectUser(Unknown Source)
at org.hsqldb.Database.connect(Unknown Source)
at org.hsqldb.DatabaseManager.newSession(Unknown Source)
at org.hsqldb.jdbc.jdbcConnection.<init>(Unknown Source)
at org.hsqldb.jdbcDriver.getConnection(Unknown Source)
at org.hsqldb.jdbcDriver.connect(Unknown Source)
at java.sql.DriverManager.getConnection(Unknown Source)
at java.sql.DriverManager.getConnection(Unknown Source)
at org.springframework.jdbc.datasource.DriverManagerDataSource.getConnectionFromDriverManager(DriverManagerDataSource.java:174)
at org.springframework.jdbc.datasource.DriverManagerDataSource.getConnectionFromDriver(DriverManagerDataSource.java:165)
at org.springframework.jdbc.datasource.AbstractDriverBasedDataSource.getConnectionFromDriver(AbstractDriverBasedDataSource.java:149)
at org.springframework.jdbc.datasource.AbstractDriverBasedDataSource.getConnection(AbstractDriverBasedDataSource.java:119)
at org.springframework.jdbc.datasource.DataSourceUtils.doGetConnection(DataSourceUtils.java:113)
at org.springframework.jdbc.datasource.DataSourceUtils.getConnection(DataSourceUtils.java:79)
at org.springframework.jdbc.core.JdbcTemplate.execute(JdbcTemplate.java:577)
at org.springframework.jdbc.core.JdbcTemplate.query(JdbcTemplate.java:641)
at org.springframework.jdbc.core.JdbcTemplate.query(JdbcTemplate.java:670)
at org.springframework.jdbc.core.JdbcTemplate.query(JdbcTemplate.java:678)
at org.springframework.jdbc.core.JdbcTemplate.query(JdbcTemplate.java:710)
at net.sourceforge.subsonic.dao.AbstractDao.query(AbstractDao.java:84)
at net.sourceforge.subsonic.dao.VideoConversionDao.getVideoConversionsByStatus(VideoConversionDao.java:68)
at net.sourceforge.subsonic.service.VideoConversionService$VideoConverter.run(VideoConversionService.java:169)
262341091 [btpool0-47] ERROR org.mortbay.log - /
java.lang.NullPointerException
at org.hsqldb.scriptio.ScriptWriterText.writeLogStatement(Unknown Source)
at org.hsqldb.persist.Log.writeStatement(Unknown Source)
at org.hsqldb.persist.Logger.writeToLog(Unknown Source)
at org.hsqldb.persist.Logger.logConnectUser(Unknown Source)
at org.hsqldb.Database.connect(Unknown Source)
at org.hsqldb.DatabaseManager.newSession(Unknown Source)
at org.hsqldb.jdbc.jdbcConnection.<init>(Unknown Source)
at org.hsqldb.jdbcDriver.getConnection(Unknown Source)
at org.hsqldb.jdbcDriver.connect(Unknown Source)
at java.sql.DriverManager.getConnection(Unknown Source)
at java.sql.DriverManager.getConnection(Unknown Source)
at org.springframework.jdbc.datasource.DriverManagerDataSource.getConnectionFromDriverManager(DriverManagerDataSource.java:174)
at org.springframework.jdbc.datasource.DriverManagerDataSource.getConnectionFromDriver(DriverManagerDataSource.java:165)
at org.springframework.jdbc.datasource.AbstractDriverBasedDataSource.getConnectionFromDriver(AbstractDriverBasedDataSource.java:149)
at org.springframework.jdbc.datasource.AbstractDriverBasedDataSource.getConnection(AbstractDriverBasedDataSource.java:119)
at org.springframework.jdbc.datasource.DataSourceUtils.doGetConnection(DataSourceUtils.java:113)
at org.springframework.jdbc.datasource.DataSourceUtils.getConnection(DataSourceUtils.java:79)
at org.springframework.jdbc.core.JdbcTemplate.execute(JdbcTemplate.java:577)
at org.springframework.jdbc.core.JdbcTemplate.query(JdbcTemplate.java:641)
at org.springframework.jdbc.core.JdbcTemplate.query(JdbcTemplate.java:670)
at org.springframework.jdbc.core.JdbcTemplate.query(JdbcTemplate.java:678)
at org.springframework.jdbc.core.JdbcTemplate.query(JdbcTemplate.java:710)
at net.sourceforge.subsonic.dao.AbstractDao.query(AbstractDao.java:84)
at net.sourceforge.subsonic.dao.AbstractDao.queryOne(AbstractDao.java:150)
at net.sourceforge.subsonic.dao.UserDao.getUserByName(UserDao.java:59)
at net.sourceforge.subsonic.service.SecurityService.getUserByName(SecurityService.java:93)
at net.sourceforge.subsonic.service.SecurityService.loadUserByUsername(SecurityService.java:47)
at org.acegisecurity.ui.rememberme.TokenBasedRememberMeServices.loadUserDetails(TokenBasedRememberMeServices.java:308)
at org.acegisecurity.ui.rememberme.TokenBasedRememberMeServices.autoLogin(TokenBasedRememberMeServices.java:218)
at org.acegisecurity.ui.rememberme.RememberMeProcessingFilter.doFilter(RememberMeProcessingFilter.java:104)
at org.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:275)
at org.acegisecurity.wrapper.SecurityContextHolderAwareRequestFilter.doFilter(SecurityContextHolderAwareRequestFilter.java:81)
at org.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:275)
at org.acegisecurity.ui.basicauth.BasicProcessingFilter.doFilter(BasicProcessingFilter.java:173)
at org.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:275)
at org.acegisecurity.ui.AbstractProcessingFilter.doFilter(AbstractProcessingFilter.java:271)
at org.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:275)
at org.acegisecurity.ui.logout.LogoutFilter.doFilter(LogoutFilter.java:110)
at org.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:275)
at org.acegisecurity.context.HttpSessionContextIntegrationFilter.doFilter(HttpSessionContextIntegrationFilter.java:249)
at org.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:275)
at org.acegisecurity.util.FilterChainProxy.doFilter(FilterChainProxy.java:149)
at org.acegisecurity.util.FilterToBeanProxy.doFilter(FilterToBeanProxy.java:98)
at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1084)
at net.sourceforge.subsonic.filter.RequestEncodingFilter.doFilter(RequestEncodingFilter.java:25)
at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1084)
at net.sourceforge.subsonic.filter.ParameterDecodingFilter.doFilter(ParameterDecodingFilter.java:36)
at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1084)
at net.sourceforge.subsonic.filter.BootstrapVerificationFilter.doFilter(BootstrapVerificationFilter.java:41)
at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1084)
at org.mortbay.jetty.servlet.ServletHandler.handle(ServletHandler.java:360)
at org.mortbay.jetty.security.SecurityHandler.handle(SecurityHandler.java:216)
at org.mortbay.jetty.servlet.SessionHandler.handle(SessionHandler.java:181)
at org.mortbay.jetty.handler.ContextHandler.handle(ContextHandler.java:712)
at org.mortbay.jetty.webapp.WebAppContext.handle(WebAppContext.java:405)
at org.mortbay.jetty.handler.HandlerWrapper.handle(HandlerWrapper.java:139)
at org.mortbay.jetty.Server.handle(Server.java:313)
at org.mortbay.jetty.HttpConnection.handleRequest(HttpConnection.java:506)
at org.mortbay.jetty.HttpConnection$RequestHandler.headerComplete(HttpConnection.java:830)
at org.mortbay.jetty.HttpParser.parseNext(HttpParser.java:514)
at org.mortbay.jetty.HttpParser.parseAvailable(HttpParser.java:211)
at org.mortbay.jetty.HttpConnection.handle(HttpConnection.java:381)
at org.mortbay.io.nio.SelectChannelEndPoint.run(SelectChannelEndPoint.java:396)
at org.mortbay.thread.BoundedThreadPool$PoolThread.run(BoundedThreadPool.java:442)
262341138 [btpool0-47] ERROR org.mortbay.log - /style/default.css
java.lang.NullPointerException
at org.hsqldb.scriptio.ScriptWriterText.writeLogStatement(Unknown Source)
at org.hsqldb.persist.Log.writeStatement(Unknown Source)
at org.hsqldb.persist.Logger.writeToLog(Unknown Source)
at org.hsqldb.persist.Logger.logConnectUser(Unknown Source)
at org.hsqldb.Database.connect(Unknown Source)
at org.hsqldb.DatabaseManager.newSession(Unknown Source)
at org.hsqldb.jdbc.jdbcConnection.<init>(Unknown Source)
at org.hsqldb.jdbcDriver.getConnection(Unknown Source)
at org.hsqldb.jdbcDriver.connect(Unknown Source)
at java.sql.DriverManager.getConnection(Unknown Source)
at java.sql.DriverManager.getConnection(Unknown Source)
at org.springframework.jdbc.datasource.DriverManagerDataSource.getConnectionFromDriverManager(DriverManagerDataSource.java:174)
at org.springframework.jdbc.datasource.DriverManagerDataSource.getConnectionFromDriver(DriverManagerDataSource.java:165)
at org.springframework.jdbc.datasource.AbstractDriverBasedDataSource.getConnectionFromDriver(AbstractDriverBasedDataSource.java:149)
at org.springframework.jdbc.datasource.AbstractDriverBasedDataSource.getConnection(AbstractDriverBasedDataSource.java:119)
at org.springframework.jdbc.datasource.DataSourceUtils.doGetConnection(DataSourceUtils.java:113)
at org.springframework.jdbc.datasource.DataSourceUtils.getConnection(DataSourceUtils.java:79)
at org.springframework.jdbc.core.JdbcTemplate.execute(JdbcTemplate.java:577)
at org.springframework.jdbc.core.JdbcTemplate.query(JdbcTemplate.java:641)
at org.springframework.jdbc.core.JdbcTemplate.query(JdbcTemplate.java:670)
at org.springframework.jdbc.core.JdbcTemplate.query(JdbcTemplate.java:678)
at org.springframework.jdbc.core.JdbcTemplate.query(JdbcTemplate.java:710)
at net.sourceforge.subsonic.dao.AbstractDao.query(AbstractDao.java:84)
at net.sourceforge.subsonic.dao.AbstractDao.queryOne(AbstractDao.java:150)
at net.sourceforge.subsonic.dao.UserDao.getUserByName(UserDao.java:59)
at net.sourceforge.subsonic.service.SecurityService.getUserByName(SecurityService.java:93)
at net.sourceforge.subsonic.service.SecurityService.loadUserByUsername(SecurityService.java:47)
at org.acegisecurity.ui.rememberme.TokenBasedRememberMeServices.loadUserDetails(TokenBasedRememberMeServices.java:308)
at org.acegisecurity.ui.rememberme.TokenBasedRememberMeServices.autoLogin(TokenBasedRememberMeServices.java:218)
at org.acegisecurity.ui.rememberme.RememberMeProcessingFilter.doFilter(RememberMeProcessingFilter.java:104)
at org.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:275)
at org.acegisecurity.wrapper.SecurityContextHolderAwareRequestFilter.doFilter(SecurityContextHolderAwareRequestFilter.java:81)
at org.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:275)
at org.acegisecurity.ui.basicauth.BasicProcessingFilter.doFilter(BasicProcessingFilter.java:173)
at org.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:275)
at org.acegisecurity.ui.AbstractProcessingFilter.doFilter(AbstractProcessingFilter.java:271)
at org.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:275)
at org.acegisecurity.ui.logout.LogoutFilter.doFilter(LogoutFilter.java:110)
at org.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:275)
at org.acegisecurity.context.HttpSessionContextIntegrationFilter.doFilter(HttpSessionContextIntegrationFilter.java:249)
at org.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:275)
at org.acegisecurity.util.FilterChainProxy.doFilter(FilterChainProxy.java:149)
at org.acegisecurity.util.FilterToBeanProxy.doFilter(FilterToBeanProxy.java:98)
at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1084)
at net.sourceforge.subsonic.filter.ResponseHeaderFilter.doFilter(ResponseHeaderFilter.java:29)
at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1084)
at net.sourceforge.subsonic.filter.RequestEncodingFilter.doFilter(RequestEncodingFilter.java:25)
at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1084)
at net.sourceforge.subsonic.filter.ParameterDecodingFilter.doFilter(ParameterDecodingFilter.java:36)
at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1084)
at net.sourceforge.subsonic.filter.BootstrapVerificationFilter.doFilter(BootstrapVerificationFilter.java:41)
at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1084)
at org.mortbay.jetty.servlet.ServletHandler.handle(ServletHandler.java:360)
at org.mortbay.jetty.security.SecurityHandler.handle(SecurityHandler.java:216)
at org.mortbay.jetty.servlet.SessionHandler.handle(SessionHandler.java:181)
at org.mortbay.jetty.handler.ContextHandler.handle(ContextHandler.java:712)
at org.mortbay.jetty.webapp.WebAppContext.handle(WebAppContext.java:405)
at org.mortbay.jetty.handler.HandlerWrapper.handle(HandlerWrapper.java:139)
at org.mortbay.jetty.Server.handle(Server.java:313)
at org.mortbay.jetty.HttpConnection.handleRequest(HttpConnection.java:506)
at org.mortbay.jetty.HttpConnection$RequestHandler.headerComplete(HttpConnection.java:830)
at org.mortbay.jetty.HttpParser.parseNext(HttpParser.java:514)
at org.mortbay.jetty.HttpParser.parseAvailable(HttpParser.java:211)
at org.mortbay.jetty.HttpConnection.handle(HttpConnection.java:381)
at org.mortbay.io.nio.SelectChannelEndPoint.run(SelectChannelEndPoint.java:396)
at org.mortbay.thread.BoundedThreadPool$PoolThread.run(BoundedThreadPool.java:442)
262341169 [btpool0-47] ERROR org.mortbay.log - /icons/default_light/error.png
java.lang.NullPointerException
at org.hsqldb.scriptio.ScriptWriterText.writeLogStatement(Unknown Source)
at org.hsqldb.persist.Log.writeStatement(Unknown Source)
at org.hsqldb.persist.Logger.writeToLog(Unknown Source)
at org.hsqldb.persist.Logger.logConnectUser(Unknown Source)
at org.hsqldb.Database.connect(Unknown Source)
at org.hsqldb.DatabaseManager.newSession(Unknown Source)
at org.hsqldb.jdbc.jdbcConnection.<init>(Unknown Source)
at org.hsqldb.jdbcDriver.getConnection(Unknown Source)
at org.hsqldb.jdbcDriver.connect(Unknown Source)
at java.sql.DriverManager.getConnection(Unknown Source)
at java.sql.DriverManager.getConnection(Unknown Source)
at org.springframework.jdbc.datasource.DriverManagerDataSource.getConnectionFromDriverManager(DriverManagerDataSource.java:174)
at org.springframework.jdbc.datasource.DriverManagerDataSource.getConnectionFromDriver(DriverManagerDataSource.java:165)
at org.springframework.jdbc.datasource.AbstractDriverBasedDataSource.getConnectionFromDriver(AbstractDriverBasedDataSource.java:149)
at org.springframework.jdbc.datasource.AbstractDriverBasedDataSource.getConnection(AbstractDriverBasedDataSource.java:119)
at org.springframework.jdbc.datasource.DataSourceUtils.doGetConnection(DataSourceUtils.java:113)
at org.springframework.jdbc.datasource.DataSourceUtils.getConnection(DataSourceUtils.java:79)
at org.springframework.jdbc.core.JdbcTemplate.execute(JdbcTemplate.java:577)
at org.springframework.jdbc.core.JdbcTemplate.query(JdbcTemplate.java:641)
at org.springframework.jdbc.core.JdbcTemplate.query(JdbcTemplate.java:670)
at org.springframework.jdbc.core.JdbcTemplate.query(JdbcTemplate.java:678)
at org.springframework.jdbc.core.JdbcTemplate.query(JdbcTemplate.java:710)
at net.sourceforge.subsonic.dao.AbstractDao.query(AbstractDao.java:84)
at net.sourceforge.subsonic.dao.AbstractDao.queryOne(AbstractDao.java:150)
at net.sourceforge.subsonic.dao.UserDao.getUserByName(UserDao.java:59)
at net.sourceforge.subsonic.service.SecurityService.getUserByName(SecurityService.java:93)
at net.sourceforge.subsonic.service.SecurityService.loadUserByUsername(SecurityService.java:47)
at org.acegisecurity.ui.rememberme.TokenBasedRememberMeServices.loadUserDetails(TokenBasedRememberMeServices.java:308)
at org.acegisecurity.ui.rememberme.TokenBasedRememberMeServices.autoLogin(TokenBasedRememberMeServices.java:218)
at org.acegisecurity.ui.rememberme.RememberMeProcessingFilter.doFilter(RememberMeProcessingFilter.java:104)
at org.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:275)
at org.acegisecurity.wrapper.SecurityContextHolderAwareRequestFilter.doFilter(SecurityContextHolderAwareRequestFilter.java:81)
at org.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:275)
at org.acegisecurity.ui.basicauth.BasicProcessingFilter.doFilter(BasicProcessingFilter.java:173)
at org.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:275)
at org.acegisecurity.ui.AbstractProcessingFilter.doFilter(AbstractProcessingFilter.java:271)
at org.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:275)
at org.acegisecurity.ui.logout.LogoutFilter.doFilter(LogoutFilter.java:110)
at org.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:275)
at org.acegisecurity.context.HttpSessionContextIntegrationFilter.doFilter(HttpSessionContextIntegrationFilter.java:249)
at org.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:275)
at org.acegisecurity.util.FilterChainProxy.doFilter(FilterChainProxy.java:149)
at org.acegisecurity.util.FilterToBeanProxy.doFilter(FilterToBeanProxy.java:98)
at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1084)
at net.sourceforge.subsonic.filter.ResponseHeaderFilter.doFilter(ResponseHeaderFilter.java:29)
at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1084)
at net.sourceforge.subsonic.filter.RequestEncodingFilter.doFilter(RequestEncodingFilter.java:25)
at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1084)
at net.sourceforge.subsonic.filter.ParameterDecodingFilter.doFilter(ParameterDecodingFilter.java:36)
at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1084)
at net.sourceforge.subsonic.filter.BootstrapVerificationFilter.doFilter(BootstrapVerificationFilter.java:41)
at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1084)
at org.mortbay.jetty.servlet.ServletHandler.handle(ServletHandler.java:360)
at org.mortbay.jetty.security.SecurityHandler.handle(SecurityHandler.java:216)
at org.mortbay.jetty.servlet.SessionHandler.handle(SessionHandler.java:181)
at org.mortbay.jetty.handler.ContextHandler.handle(ContextHandler.java:712)
at org.mortbay.jetty.webapp.WebAppContext.handle(WebAppContext.java:405)
at org.mortbay.jetty.handler.HandlerWrapper.handle(HandlerWrapper.java:139)
at org.mortbay.jetty.Server.handle(Server.java:313)
at org.mortbay.jetty.HttpConnection.handleRequest(HttpConnection.java:506)
at org.mortbay.jetty.HttpConnection$RequestHandler.headerComplete(HttpConnection.java:830)
at org.mortbay.jetty.HttpParser.parseNext(HttpParser.java:514)
at org.mortbay.jetty.HttpParser.parseAvailable(HttpParser.java:211)
at org.mortbay.jetty.HttpConnection.handle(HttpConnection.java:381)
at org.mortbay.io.nio.SelectChannelEndPoint.run(SelectChannelEndPoint.java:396)
at org.mortbay.thread.BoundedThreadPool$PoolThread.run(BoundedThreadPool.java:442)
Ankhman
 
Posts: 13
Joined: Mon May 25, 2015 5:56 pm

Re: Database keeps getting corrupted

Postby lonesomerider » Tue Jan 23, 2018 10:29 pm

I am at the end of my ideas.

SLF4J: Class path contains multiple SLF4J bindings.
SLF4J: Found binding in [jar:file:/C:/Program%20Files%20(x86)/Subsonic/subsonic-booter-jar-with-dependencies.jar!/org/slf4j/impl/StaticLoggerBinder.class]
SLF4J: Found binding in [jar:file:/C:/subsonic/jetty/e408c9/webapp/WEB-INF/lib/slf4j-log4j12-1.6.1.jar!/org/slf4j/impl/StaticLoggerBinder.class]
SLF4J: See http://www.slf4j.org/codes.html#multiple_bindings for an explanation.


looks strange to me, but as I am not using the standalone version (I use Tomcat), I cannot say if it is correct that the subsonic-booter-jar-with-dependencies.jar has to be in the classpath. But I do not think this is the issue.

:cry: :cry: :cry:

Anybody else any ideas?
/lonesomerider

Image
lonesomerider
 
Posts: 26
Joined: Fri Oct 20, 2017 9:09 am
Location: Switzerland

Re: Database keeps getting corrupted

Postby Ankhman » Tue Jan 23, 2018 10:35 pm

Thank you for trying to help Lonesomerider!

Yes! Is there anyone else who can look at these logs and offer a potential solution? For what it's worth, I have tried uninstalling/wiping Subsonic and all directories and these corruptions have continued to happen.

Please help Subsonic Forums, you're my only hope.
Ankhman
 
Posts: 13
Joined: Mon May 25, 2015 5:56 pm

Re: Database keeps getting corrupted

Postby G8DHE » Wed Jan 24, 2018 10:33 am

Just a vague thought, given that the code has been re-installed and your still having problems but no other reports of a common problem maybe its something in one of tracks causing the problem.
Try temporarily removing any folders that were added around the time the problem started and seeing if the db retains its integrity, then start adding folders back into the structure and see if that identifies a likely suspect ?
Geoff G8DHE
Version 6.0 Beta 2
G8DHE
 
Posts: 139
Joined: Sun Nov 04, 2012 4:56 pm

Re: Database keeps getting corrupted

Postby lonesomerider » Wed Jan 24, 2018 3:12 pm

G8DHE wrote:Just a vague thought, given that the code has been re-installed and your still having problems but no other reports of a common problem maybe its something in one of tracks causing the problem.
Try temporarily removing any folders that were added around the time the problem started and seeing if the db retains its integrity, then start adding folders back into the structure and see if that identifies a likely suspect ?


Good idea, but he stated that he did a rescan of the library and everything went fine. But this gave me the idea that maybe there are some podcasts files or urls crashing?

I also read that sometimes there are issues with ffmpeg if using transcoding.

Another thing to ask (Sorry, if I ask silly questions):
I just read in the installation guide:
It installs Subsonic as a service, available in Control Panel > Administrative Tools > Services, that is started automatically when you log on to Windows.


Could You please check under "Control Panel > Administrative Tools > Services", then select the subsonic service, right click > properties and tell us what you have as configuration there (all tabs).
Maybe the server tries to restart, overwrites the log and is not able to restart for some reason while You are not logged in.
The logs you posted are start phase logs.

1) If any error restart is defined, you should set it to not do anything on errors. like this you would at least have the crash log in subsonic.log
2) disable automatic scanning in subsonic (Settings > Media Folders > Scan media folders should be Never)
3) disable automatic podcast scanning in subsonic (Settings > podcast > Check for new episodes should be Manual)

if crash happens again: check the log again.
if no crash happens:
it is maybe 2) or 3). enable first music rescan and see if crash happens again, check log
if no crash happens:
it is maybe 3). enable podcast scan and see if crash happens again, check log
if no crash happens: revert the settings of the service.
/lonesomerider

Image
lonesomerider
 
Posts: 26
Joined: Fri Oct 20, 2017 9:09 am
Location: Switzerland

Re: Database keeps getting corrupted

Postby Ankhman » Wed Jan 24, 2018 8:20 pm

Thanks again for the ongoing assistance!

The database for sure goes through a manual scan (scan media folders now) with no issues. I've run many such scans since this problem cropped up (which was many months ago, I only recently got frustrated enough to reach out for help). I have one podcast set up and it downloads updates with no issues, just meaning that it pulls new episodes correctly.

I have Subsonic running on a fully-updated W10 Pro system. It's always on and always logged in.

The Subsonic service is set to automatic startup. It logs on using the Local System account, and Allow service to interact with desktop is checked. Recovery options are all set to 'Take No Action", and "Enable actions fro stops with errors is unchecked.

I will disable automatic scanning (folders and podcast) and follow up. Just FYI, database scans were Every Day at 3AM, podcasts set to check Every Day. My issue only seems to happen after a few days (sometimes more than a week) of stable up-time.

Let me know if you need any additional info.

Thanks again!
Jeff~
Ankhman
 
Posts: 13
Joined: Mon May 25, 2015 5:56 pm

Re: Database keeps getting corrupted

Postby G8DHE » Wed Jan 24, 2018 9:28 pm

My thinking is along the lines that it may well read the files happily, but when the database is accessed to write the number of plays etc. it might well cause the corruption at that time possibly several days after the scan has been done, so initial and subsequent scans fine, error occurs when that record is later written to.
Geoff G8DHE
Version 6.0 Beta 2
G8DHE
 
Posts: 139
Joined: Sun Nov 04, 2012 4:56 pm

Re: Database keeps getting corrupted

Postby Ankhman » Wed Jan 24, 2018 9:38 pm

My problem is that I have close to 140K files, and since this has been happening for several months it would be impossible without some sort of logging to know which file(s) were causing the issue, especially since it's not repeatable.
Ankhman
 
Posts: 13
Joined: Mon May 25, 2015 5:56 pm

Next

Return to Help

Who is online

Users browsing this forum: No registered users and 28 guests