|
From: Charles P. <c.e...@da...> - 2008-07-14 01:56:52
|
Leif, My application is an MP3 player that streams music from a networked PC to a TiVo DVR, thus the messages about playlists. What should be happening at the point in the logs timestamped with 17:53:21 ["Searching for music..."] in the log I previously sent is that harmonium is searching through a directory tree for mp3 files and setting up an internal data structure. This takes a few seconds with the small data set I use for testing, then it moves on to search for playlists at 17:53:27. I have no playlists in my set of test data, so it immediately announces "Build of music database completed". I'm attaching another log in which harmonium prints some debug messages. It doesn't really show much that's new other than it has successfully found the music directory and is loading mp3 files. In your email you said that there were two options you could think of. The first involved System.exit(). I don't call System.exit() in my program. (I just did a `find` to double check.) Are there other ways for that to be called other than through my code? The second was that "all non-daemon threads have completed." I'm not sure I completely understand that, but it seems to mean that harmonium decided that it was done and exited. Any ideas what might cause my program to bail out when the only thing that changed was the method of execution? After your comment about environment variables, I modified my wrapper.conf file to use the absolute path to java (/usr/bin/java). As far as I can tell, all file references in wrapper.conf now are either absolute paths, or are relative to the current directory (which should be ok, right?). I'm attaching my wrapper.conf for your reference. What else might be affected by a messed up environment variables? Should I modify the shell script you supplied to set a PATH environment variable? Sorry for all the questions, but thanks for the help. Charlie Leif Mortenson wrote: > Charles, > When Linux boots up, the environment used to launch daemon services > has very little in the way of an environment set up. Most likely > your system PATH and any other environment variables have not been set > up in this case. > > Looking at your log file, the following is interesting: > INFO | jvm 1 | 2008/07/13 17:53:27 | Searching for playlists... > INFO | jvm 1 | 2008/07/13 17:53:27 | Build of music database completed > INFO | jvm 1 | 2008/07/13 17:53:27 | LOG: added factory > INFO | jvm 1 | 2008/07/13 17:53:27 | WrapperSimpleApp: main method > completed > INFO | jvm 1 | 2008/07/13 17:53:27 | Wrapper Manager: ShutdownHook > started > > I am not sure what exactly your application does. But it says it is > looking for playlists and is immediately done. The JVM (and not the > Wrapper) then decides that the JVM should be shutdown. This happens > either when something calls System.exit or when all non-daemon threads > have completed. > > >From what I can see however, the Wrapper is working correctly. We > need to figure out which of the above 2 reasons is causing your > application to complete. > > Cheers, > Leif > > |