Page 1 of 1

HTTP error 503 version 4.7 running on Mountain Lion (Mac)

PostPosted: Tue Oct 02, 2012 11:55 pm
by manga84
The first beta installed no problem, but all the following betas and 4.7 give me the 503 error in the web browser. I am able to just install 4.6 over it, restart subsonic, and all is well. Any ideas besides removing every trace of subsonic and rebuilding? Here's the log file:

Code: Select all
[2012-10-02 11:29:33,235] INFO DaoHelper - Checking database schema.
[2012-10-02 11:29:34,079] INFO Schema47 - Database table 'media_file' not found.  Creating it.
[2012-10-02 11:29:34,080] ERROR DaoHelper - Failed to initialize database.
org.springframework.jdbc.BadSqlGrammarException: StatementCallback; bad SQL grammar [create cached table media_file (id identity,path varchar not null,folder varchar,type varchar not null,format varchar,title varchar,album varchar,artist varchar,album_artist varchar,disc_number int,track_number int,year int,genre varchar,bit_rate int,variable_bit_rate boolean not null,duration_seconds int,file_size bigint,width int,height int,cover_art_path varchar,parent_path varchar,play_count int not null,last_played datetime,comment varchar,created datetime not null,changed datetime not null,last_scanned datetime not null,children_last_updated datetime not null,present boolean not null,version int not null,unique (path))]; nested exception is java.sql.SQLException: Table already exists: MEDIA_FILE in statement [create cached table media_file]
   at org.springframework.jdbc.support.SQLStateSQLExceptionTranslator.doTranslate(SQLStateSQLExceptionTranslator.java:97)
   at org.springframework.jdbc.support.AbstractFallbackSQLExceptionTranslator.translate(AbstractFallbackSQLExceptionTranslator.java:72)
   at org.springframework.jdbc.support.AbstractFallbackSQLExceptionTranslator.translate(AbstractFallbackSQLExceptionTranslator.java:80)
   at org.springframework.jdbc.support.AbstractFallbackSQLExceptionTranslator.translate(AbstractFallbackSQLExceptionTranslator.java:80)
   at org.springframework.jdbc.core.JdbcTemplate.execute(JdbcTemplate.java:407)
   at org.springframework.jdbc.core.JdbcTemplate.execute(JdbcTemplate.java:429)
   at net.sourceforge.subsonic.dao.schema.Schema47.execute(Schema47.java:44)
   at net.sourceforge.subsonic.dao.DaoHelper.checkDatabase(DaoHelper.java:110)
   at net.sourceforge.subsonic.dao.DaoHelper.<init>(DaoHelper.java:67)
   at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
   at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:39)
   at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:27)
   at java.lang.reflect.Constructor.newInstance(Constructor.java:513)
   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)
   at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:440)
   at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory$1.run(AbstractAutowireCapableBeanFactory.java:409)
   at java.security.AccessController.doPrivileged(Native Method)
   at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:380)
   at org.springframework.beans.factory.support.AbstractBeanFactory$1.getObject(AbstractBeanFactory.java:264)
   at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:222)
   at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:261)
   at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:185)
   at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:164)
   at org.springframework.beans.factory.support.BeanDefinitionValueResolver.resolveReference(BeanDefinitionValueResolver.java:269)
   at org.springframework.beans.factory.support.BeanDefinitionValueResolver.resolveValueIfNecessary(BeanDefinitionValueResolver.java:104)
   at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.applyPropertyValues(AbstractAutowireCapableBeanFactory.java:1245)
   at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.populateBean(AbstractAutowireCapableBeanFactory.java:1010)
   at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:472)
   at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory$1.run(AbstractAutowireCapableBeanFactory.java:409)
   at java.security.AccessController.doPrivileged(Native Method)
   at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:380)
   at org.springframework.beans.factory.support.AbstractBeanFactory$1.getObject(AbstractBeanFactory.java:264)
   at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:222)
   at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:261)
   at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:185)
   at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:164)
   at org.springframework.beans.factory.support.DefaultListableBeanFactory.preInstantiateSingletons(DefaultListableBeanFactory.java:429)
   at org.springframework.context.support.AbstractApplicationContext.finishBeanFactoryInitialization(AbstractApplicationContext.java:728)
   at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:380)
   at org.springframework.web.context.ContextLoader.createWebApplicationContext(ContextLoader.java:255)
   at org.springframework.web.context.ContextLoader.initWebApplicationContext(ContextLoader.java:199)
   at org.springframework.web.context.ContextLoaderListener.contextInitialized(ContextLoaderListener.java:45)
   at org.mortbay.jetty.handler.ContextHandler.startContext(ContextHandler.java:530)
   at org.mortbay.jetty.servlet.Context.startContext(Context.java:135)
   at org.mortbay.jetty.webapp.WebAppContext.startContext(WebAppContext.java:1218)
   at org.mortbay.jetty.handler.ContextHandler.doStart(ContextHandler.java:500)
   at org.mortbay.jetty.webapp.WebAppContext.doStart(WebAppContext.java:448)
   at org.mortbay.component.AbstractLifeCycle.start(AbstractLifeCycle.java:40)
   at org.mortbay.jetty.handler.HandlerWrapper.doStart(HandlerWrapper.java:117)
   at org.mortbay.jetty.Server.doStart(Server.java:217)
   at org.mortbay.component.AbstractLifeCycle.start(AbstractLifeCycle.java:40)
   at net.sourceforge.subsonic.booter.deployer.SubsonicDeployer.deployWebApp(SubsonicDeployer.java:131)
   at net.sourceforge.subsonic.booter.deployer.SubsonicDeployer.<init>(SubsonicDeployer.java:65)
   at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
   at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:39)
   at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:27)
   at java.lang.reflect.Constructor.newInstance(Constructor.java:513)
   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)
   at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:440)
   at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory$1.run(AbstractAutowireCapableBeanFactory.java:409)
   at java.security.AccessController.doPrivileged(Native Method)
   at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:380)
   at org.springframework.beans.factory.support.AbstractBeanFactory$1.getObject(AbstractBeanFactory.java:264)
   at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:222)
   at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:261)
   at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:185)
   at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:164)
   at org.springframework.beans.factory.support.DefaultListableBeanFactory.preInstantiateSingletons(DefaultListableBeanFactory.java:429)
   at org.springframework.context.support.AbstractApplicationContext.finishBeanFactoryInitialization(AbstractApplicationContext.java:728)
   at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:380)
   at org.springframework.context.support.ClassPathXmlApplicationContext.<init>(ClassPathXmlApplicationContext.java:139)
   at org.springframework.context.support.ClassPathXmlApplicationContext.<init>(ClassPathXmlApplicationContext.java:83)
   at net.sourceforge.subsonic.booter.Main.<init>(Main.java:24)
   at net.sourceforge.subsonic.booter.Main.main(Main.java:63)
   at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
   at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
   at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
   at java.lang.reflect.Method.invoke(Method.java:597)
   at apple.launcher.LaunchRunner.run(LaunchRunner.java:116)
   at apple.launcher.LaunchRunner.callMain(LaunchRunner.java:51)
   at apple.launcher.JavaApplicationLauncher.launch(JavaApplicationLauncher.java:52)
Caused by: java.sql.SQLException: Table already exists: MEDIA_FILE in statement [create cached table media_file]
   at org.hsqldb.jdbc.Util.sqlException(Unknown Source)
   at org.hsqldb.jdbc.jdbcStatement.fetchResult(Unknown Source)
   at org.hsqldb.jdbc.jdbcStatement.execute(Unknown Source)
   at org.springframework.jdbc.core.JdbcTemplate$1ExecuteStatementCallback.doInStatement(JdbcTemplate.java:422)
   at org.springframework.jdbc.core.JdbcTemplate.execute(JdbcTemplate.java:396)
   ... 82 more

[2012-10-02 11:29:34,218] INFO VersionService - Resolved local Subsonic version to: 4.7
[2012-10-02 11:29:34,535] INFO PlayerDao - Deleted 3 player(s) that haven't been used after Fri Aug 03 11:29:34 EDT 2012
[2012-10-02 11:29:34,639] INFO MediaScannerService - Deleted old index file: /Library/Application Support/Subsonic/subsonic14.index
[2012-10-02 11:29:34,641] INFO MediaScannerService - Automatic media library scanning scheduled to run every 1 day(s), starting at Wed Oct 03 03:00:00 EDT 2012
[2012-10-02 11:31:48,779] INFO NetworkService - Successfully forwarding port 4040.

Re: HTTP error 503 version 4.7 running on Mountain Lion (Mac

PostPosted: Wed Oct 03, 2012 5:32 am
by hakko
I think you should send that log to Sindre. This is the code that's running: http://subsonic.svn.sourceforge.net/vie ... iew=markup

To me, it seems like the code that tries to detect whether table media_file exists fails. I've no idea why but it looks like an odd bug.

Also read this thread before updating: viewtopic.php?f=6&t=10338

Re: HTTP error 503 version 4.7 running on Mountain Lion (Mac

PostPosted: Wed Oct 03, 2012 3:36 pm
by manga84
Thanks for your reply, hakko. The thing that seems weirdest about it all is that I can install the old version back over the bad update and all my settings are the way they were. I haven't seen that in anyone else's errors. How do I send the log to Sindre?

Re: HTTP error 503 version 4.7 running on Mountain Lion (Mac

PostPosted: Wed Oct 03, 2012 3:57 pm
by hakko
That's probably because the offending table (media_file) was added in 4.7, so your 4.6 install won't try to access it and hence won't fail.

Sindre has this email address published at the subsonic.org site: sindre@activeobjects.no

Re: HTTP error 503 version 4.7 running on Mountain Lion (Mac

PostPosted: Wed Oct 03, 2012 4:15 pm
by manga84
hakko wrote:I think you should send that log to Sindre. This is the code that's running: http://subsonic.svn.sourceforge.net/vie ... iew=markup

To me, it seems like the code that tries to detect whether table media_file exists fails. I've no idea why but it looks like an odd bug.

Also read this thread before updating: viewtopic.php?f=6&t=10338


I've sent the log to Sindre as you suggested. I see that the code detects that the table media_file doesn't exist. It looks like the error is in creating that table. Do you agree?

Re: HTTP error 503 version 4.7 running on Mountain Lion (Mac

PostPosted: Wed Oct 03, 2012 6:06 pm
by hakko
Yes, but the SQL error (trying to create this non-existing table) is:

java.sql.SQLException: Table already exists: MEDIA_FILE in statement [create cached table media_file]