Page 1 of 2

HTTP Error: 503 - Service Unavailable

PostPosted: Sat Jun 25, 2011 5:28 pm
by mstaggerlee
[u]Problem Description: [/u] Can't connect to my server, either at <myservername>.subsonic.org. Subsonic control panel says service is running, but from a browser, I get "HTTP ERROR: 503 - SERVICE UNAVAILABLE - RequestURI=/". Error message on my Droid is "Didn't understand the reply. Please check the server address."

[u]Troubleshooting Steps:[/u] Stopped & re-started server. Browser address bar displays the local IP address of my server (192.168.x.y), when I type in <myservername>.subsonic.org. If I click on http://localhost in the Subsonic control panel, localhost echoes in the address bar, but I still get the 503 error.

[u]Playback Application and version:[/u] Standard Subsonic Web Interface

[u]Subsonic Version:[/u] 4.4 Build 2172.

[u]Server Version:[/u] jetty-6.1.x

[u]Hardware Platform:[/u] Windows XP Pro SP3

[u]Java Memory Limit:[/u] 1000 MB

Problem Filename: None (or should I say 'any'?)

Output from ffmpeg -i: 'ffmpeg' is not recognized as an internal or external command, operable program or batch file.

NOTE - the boot/system drive on my computer is NOT C:\, but H:\! The reasons for this are too twisted to go into here, but subsonic 4.4 has worked fine until about a week ago -perhaps a recent Windows Update has caused this?

Last ten log file lines:

From c:\subsonic\subsonic.log -

[code][2011-01-11 13:19:22,402] INFO NetworkService - Successfully forwarding port 80.
[2011-01-11 14:19:25,941] INFO NetworkService - Successfully forwarding port 80.
[2011-01-11 15:19:29,382] INFO NetworkService - Successfully forwarding port 80.
[2011-01-11 16:19:33,012] INFO NetworkService - Successfully forwarding port 80.
[2011-01-11 17:19:36,474] INFO NetworkService - Successfully forwarding port 80.
[2011-01-11 18:19:39,928] INFO NetworkService - Successfully forwarding port 80.
[2011-01-11 19:19:43,464] INFO NetworkService - Successfully forwarding port 80.
[2011-01-11 20:19:47,013] INFO NetworkService - Successfully forwarding port 80.
[2011-01-11 21:19:50,575] INFO NetworkService - Successfully forwarding port 80.
[2011-01-11 22:19:54,006] INFO NetworkService - Successfully forwarding port 80.
[2011-01-11 23:19:57,432] INFO NetworkService - Successfully forwarding port 80.
[2011-01-12 00:20:01,094] INFO NetworkService - Successfully forwarding port 80.
[2011-01-12 01:20:04,792] INFO NetworkService - Successfully forwarding port 80.
[2011-01-12 02:20:08,166] INFO NetworkService - Successfully forwarding port 80.
[2011-01-12 03:00:04,303] INFO SearchService - Starting to create search index.
[2011-01-12 03:00:04,303] ERROR SearchService - Failed to create search index.
java.io.FileNotFoundException: c:\subsonic\subsonic12.index (Access is denied)
at java.io.FileOutputStream.open(Native Method)
at java.io.FileOutputStream.<init>(Unknown Source)
at java.io.FileOutputStream.<init>(Unknown Source)
at java.io.FileWriter.<init>(Unknown Source)
at net.sourceforge.subsonic.service.SearchService.doCreateIndex(SearchService.java:131)
at net.sourceforge.subsonic.service.SearchService.access$000(SearchService.java:60)
at net.sourceforge.subsonic.service.SearchService$1.run(SearchService.java:113)[/code]

from H:\Program Files\Subsonic\log\subsonic-agent.log -

[code]java.lang.NumberFormatException: null
at java.lang.Integer.parseInt(Unknown Source)
at java.lang.Integer.parseInt(Unknown Source)
at net.sourceforge.subsonic.booter.agent.SettingsPanel.getHttpsPortFromOptionsFile(SettingsPanel.java:65)
at net.sourceforge.subsonic.booter.agent.SettingsPanel.setValues(SettingsPanel.java:55)
at net.sourceforge.subsonic.booter.agent.SubsonicFrame.showControlPanel(SubsonicFrame.java:100)
at net.sourceforge.subsonic.booter.agent.SubsonicAgent.showControlPanel(SubsonicAgent.java:116)
at net.sourceforge.subsonic.booter.agent.TrayController$2.actionPerformed(TrayController.java:48)
at java.awt.TrayIcon.processActionEvent(Unknown Source)
at java.awt.TrayIcon.processEvent(Unknown Source)
at java.awt.TrayIcon.dispatchEvent(Unknown Source)
at java.awt.EventQueue.dispatchEventImpl(Unknown Source)
at java.awt.EventQueue.access$000(Unknown Source)
at java.awt.EventQueue$1.run(Unknown Source)
at java.awt.EventQueue$1.run(Unknown Source)
at java.security.AccessController.doPrivileged(Native Method)
at java.security.AccessControlContext$1.doIntersectionPrivilege(Unknown Source)
at java.security.AccessControlContext$1.doIntersectionPrivilege(Unknown Source)
at java.awt.EventQueue$2.run(Unknown Source)
at java.awt.EventQueue$2.run(Unknown Source)
at java.security.AccessController.doPrivileged(Native Method)
at java.security.AccessControlContext$1.doIntersectionPrivilege(Unknown Source)
at java.awt.EventQueue.dispatchEvent(Unknown Source)
at java.awt.EventDispatchThread.pumpOneEventForFilters(Unknown Source)
at java.awt.EventDispatchThread.pumpEventsForFilter(Unknown Source)
at java.awt.EventDispatchThread.pumpEventsForHierarchy(Unknown Source)
at java.awt.EventDispatchThread.pumpEvents(Unknown Source)
at java.awt.EventDispatchThread.pumpEvents(Unknown Source)
at java.awt.EventDispatchThread.run(Unknown Source)
5040183 [pool-1-thread-2] WARN org.springframework.remoting.rmi.RmiProxyFactoryBean - Could not connect to RMI service [rmi://localhost:9412/SubsonicDeployerService] - retrying
5088464 [pool-1-thread-2] WARN org.springframework.remoting.rmi.RmiProxyFactoryBean - Could not connect to RMI service [rmi://localhost:9412/SubsonicDeployerService] - retrying
5110792 [pool-1-thread-2] WARN org.springframework.remoting.rmi.RmiProxyFactoryBean - Could not connect to RMI service [rmi://localhost:9412/SubsonicDeployerService] - retrying
[/code]
from H:\Program Files\Subsonic\log\subsonic-agent.log -
[code]Failed to write to subsonic.log.
java.io.FileNotFoundException: c:\subsonic\subsonic.log (Access is denied)
at java.io.FileOutputStream.open(Native Method)
at java.io.FileOutputStream.<init>(Unknown Source)
at java.io.FileWriter.<init>(Unknown Source)
at net.sourceforge.subsonic.Logger.getPrintWriter(Logger.java:162)
at net.sourceforge.subsonic.Logger.add(Logger.java:152)
at net.sourceforge.subsonic.Logger.info(Logger.java:112)
at net.sourceforge.subsonic.Logger.info(Logger.java:103)
at net.sourceforge.subsonic.service.NetworkService$PortForwardingTask.execute(NetworkService.java:155)
at net.sourceforge.subsonic.service.NetworkService$Task.run(NetworkService.java:309)
at java.util.concurrent.Executors$RunnableAdapter.call(Unknown Source)
at java.util.concurrent.FutureTask$Sync.innerRunAndReset(Unknown Source)
at java.util.concurrent.FutureTask.runAndReset(Unknown Source)
at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.access$101(Unknown Source)
at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.runPeriodic(Unknown Source)
at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(Unknown Source)
at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(Unknown Source)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
at java.lang.Thread.run(Unknown Source)[/code]

PostPosted: Sun Jun 26, 2011 12:09 am
by GJ51
NOTE - the boot/system drive on my computer is NOT C:\, but H:\! The reasons for this are too twisted to go into here

java.io.FileNotFoundException: c:\subsonic\subsonic.log (Access is denied)

I think you've already answered your own question. Subsonic really likes to be on the C: drive.

PostPosted: Sun Jun 26, 2011 4:47 am
by mstaggerlee
GJ51 said: "Subsonic really likes to be on the C: drive."

Yes, I know ... it's impossible, in fact, for the playlists folder to be anywhere but C: - I can change it temporarily, but next reboot, it resets to C:.

That said, there IS a C:\subsonic folder, and there's a subsonic.log file in it - lines from it are included in my original post. It apparently hasn't been written to since January, but subsonic was able to stream to my droid until at least the first week of June.

Contents of c:\subsonic -
subfolders : db, jetty, lucene, thumbs, transcode
files: subsonic13.index, subsonic.log, subsonic.properties

Something else occurs to me - between the time that subsonic last worked for me and the time I noticed that it didn't anymore, my wife got a new job and had to set up an account on a remote e-mail server. The admin of the remote site did not give her the correct login info, and she re-tried MANY times, until finally, that server blacklisted our IP. after getting the correct password, she was able to login to the remote server if she connected to my next-door neighbors wireless router, but NOT from ours. That's all been cleared up, but is it possible that my IP is now blacklisted at subsonic, and that's why I can't connect?

PostPosted: Sun Jun 26, 2011 5:05 am
by GJ51
I doubt that. Subsonic just uses redirection to connect. You can always check by trying to use your external IP address and port number to make the connection.

http://108.17.27.224:8092/

will get you to the same page as using my public site link listed below.

PostPosted: Sun Jun 26, 2011 5:16 am
by mstaggerlee
Well, I can connect to YOUR server, but not to mine.

PostPosted: Sun Jun 26, 2011 5:28 am
by GJ51
Does it work internally using the local ip:port#?

PostPosted: Sun Jun 26, 2011 5:00 pm
by mstaggerlee
No ... typing address:port into the browser's address bar results in the same 503 error. When I type the server's name into the address bar, it echoes with the local address:port, and gives me the 503 error. If I click on the localhost address in the subsonic CP, it echoes with http://localhost, but still gives the 503 error.

PostPosted: Sun Jun 26, 2011 5:19 pm
by GJ51
Reinstall Subsonic. Might want to redo Java as well.

PostPosted: Sun Jun 26, 2011 5:34 pm
by mstaggerlee
Updated java yesterday morning ... but subsonic was "broken" before that.

I'll try a reinstall, & report back.

PostPosted: Sun Jun 26, 2011 6:05 pm
by mstaggerlee
OK, Gary, re-installing has seemed to do the trick. Thanks!

Not to complain now that my major problem has been solved, but referring back to this exchange ...

[quote="mstaggerlee"]GJ51 said: "Subsonic really likes to be on the C: drive."

Yes, I know ... it's impossible, in fact, for the playlists folder to be anywhere but C: - I can change it temporarily, but next reboot, it resets to C:.[/quote]

Might this not be a situation worthy of being elevated to "bug" status? Honestly, I can't be unique in all the world as a guy with multiple drives in his server who'd prefer not to share ANY files on one drive or another. Yes, there is a workaround - I COULD, indeed, put my playlist folder on the c: drive without sharing anything on my system drive, cuz on this particular system, C: is NOT system. But why should I be FORCED to?

Anyhow, whatever you guts decide about the playlist folder, thanks again!

PostPosted: Sun Jun 26, 2011 6:14 pm
by GJ51
There's no doubt that SS has a few bugs, and all of us have our favorites that we want fixed right away. Unfortunately there is only one developer and it's all up to him. He does a great job of getting to the most frequently requested changes that need to be made, so I'd suggest posting what you want to see in the Features Request area.

http://subsonic.svn.sourceforge.net/vie ... n/TODO.TXT

PostPosted: Wed Jun 29, 2011 12:00 pm
by mstaggerlee
Now that I've re-installed, the setting DOES appear to be "sticky". :)

PostPosted: Wed Jun 29, 2011 12:18 pm
by GJ51
Great. Subsonic is a bit more complicated than most typical applications, but I've found that most problems can be fixed with some research and persistence. It ain't easy, but then again, if it was, everybody would be doin it.

That's part of the fun. :wink:

PostPosted: Fri Jul 01, 2011 2:30 am
by mstaggerlee
Thanx for your help, Gary.

PostPosted: Thu Jul 07, 2011 3:43 pm
by Alpha One
I've got the same problem, and re-installing didn't help here is my log file

[2011-07-07 08:40:34,601] INFO DaoHelper - Checking database schema.
[2011-07-07 08:40:34,899] INFO Schema25 - Database table 'version' not found. Creating it.
[2011-07-07 08:40:35,024] ERROR DaoHelper - Failed to initialize database.
org.springframework.jdbc.CannotGetJdbcConnectionException: Could not get JDBC Connection; nested exception is java.sql.SQLException: File input/output error: java.io.IOException: org.hsqldb.HsqlException: Unexpected token:
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:36)
at net.sourceforge.subsonic.dao.DaoHelper.checkDatabase(DaoHelper.java:107)
at net.sourceforge.subsonic.dao.DaoHelper.<init>(DaoHelper.java:64)
at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
at sun.reflect.NativeConstructorAccessorImpl.newInstance(Unknown Source)
at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(Unknown Source)
at java.lang.reflect.Constructor.newInstance(Unknown Source)
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(Unknown Source)
at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(Unknown Source)
at java.lang.reflect.Constructor.newInstance(Unknown Source)
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:16)
at net.sourceforge.subsonic.booter.Main.main(Main.java:24)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
at java.lang.reflect.Method.invoke(Unknown Source)
at com.exe4j.runtime.LauncherEngine.launch(Unknown Source)
at com.exe4j.runtime.WinLauncher$1.run(Unknown Source)
Caused by: java.sql.SQLException: File input/output error: java.io.IOException: org.hsqldb.HsqlException: Unexpected token:
at org.hsqldb.jdbc.Util.sqlException(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)
... 82 more