FireFly Media Server › Firefly Media Server Forums › Firefly Media Server › Setup Issues › New problems with Solaris and 1586
- This topic has 6 replies, 4 voices, and was last updated 17 years, 4 months ago by bfranke.
-
AuthorPosts
-
11/07/2007 at 7:47 PM #1547bfrankeParticipant
Hi there,
I’ve updated from 1538 to 1586 on my SPARC/Solaris 9 machine, but I experience a few problems. (The reason for updating was some spurious crashes). mt-daapd starts up, does it scan, and gets ready. I can access the user interface via a web browser and change settings etc., but as soon as I want to play a song from within iTunes (on Mac) I get a segmentation fault on the server. (In fact, I also get a seg. fault if I try to do something in the web interface when the file scan is still running). Running mt-daapd in GDB in order to get a stack trace doesn’t work as it simply won’t run that far as that I could do anything with iTunes, mt-daapd seems to get stuck at some point when executed within GDB (see below). Any ideas? Thanks!
Bjoern
# /opt/csw/bin/gdb /usr/local/sbin/mt-daapd
GNU gdb 6.1
Copyright 2004 Free Software Foundation, Inc.
GDB is free software, covered by the GNU General Public License, and you are
welcome to change it and/or distribute copies of it under certain conditions.
Type “show copying” to see the conditions.
There is absolutely no warranty for GDB. Type “show warranty” for details.
This GDB was configured as “sparc-sun-solaris2.8″…
(gdb) run -f -d9 -c /usr/local/etc/mt-daapd.conf -y
Starting program: /usr/local/sbin/mt-daapd -f -d9 -c /usr/local/etc/mt-daapd.conf -y
Got general/web_root, convert to general/web_root (/usr/local/share/mt-daapd/admin-root)
Found existing section
Got general/port, convert to general/port (3689)
Found existing section
Got general/admin_pw, convert to general/admin_pw (mt-daapd)
Found existing section
Got general/db_type, convert to general/db_type (sqlite3)
Found existing section
Got general/db_parms, convert to general/db_parms (/usr/local/var/cache/mt-daapd)
Found existing section
Got general/mp3_dir, convert to general/mp3_dir (/export/home0/samba/data/music/)
Found existing section
Found 1 tokens in /export/home0/samba/data/music/
Token 1: /export/home0/samba/data/music/
Got general/servername, convert to general/servername (Firefly %v on %h)
Found existing section
Got general/runas, convert to general/runas (nobody)
Found existing section
Got general/playlist, convert to general/playlist (/usr/local/etc/mt-daapd.playlist)
Found existing section
Got general/extensions, convert to general/extensions (.mp3,.m4a,.m4p)
Found existing section
Got general/ssc_codectypes, convert to general/ssc_codectypes (ogg,flac,alac)
Found existing section
Got general/ssc_prog, convert to general/ssc_prog (/usr/local/bin/mt-daapd-ssc.sh)
Found existing section
Expanding precomments to 2048
Expanding precomments to 4096
Got general/scan_type, convert to general/scan_type (1)
Found existing section
Got general/rescan_interval, convert to general/rescan_interval (900)
Found existing section
Got plugins/plugin_dir, convert to plugins/plugin_dir (/usr/local/share/mt-daapd/plugins)
Found existing section
Checking existence of /usr/local/share/mt-daapd/admin-root
Checking existence of /usr/local/share/mt-daapd/admin-root
Checking existence of /usr/local/var/cache/mt-daapd
Checking existence of /usr/local/var/cache/mt-daapd
Checking existence of /usr/local/share/mt-daapd/plugins
Checking existence of /usr/local/share/mt-daapd/plugins
Loading new config file.
Firefly Version svn-1586: Starting with debuglevel 9
Attempting to load plugin /usr/local/share/mt-daapd/plugins/out-daap.so
Loaded plugin /usr/local/share/mt-daapd/plugins/out-daap.so (daap/svn-1586)
New transcode codec list:
Attempting to load plugin /usr/local/share/mt-daapd/plugins/rsp.so
Loaded plugin /usr/local/share/mt-daapd/plugins/rsp.so (rsp/svn-1586)
New transcode codec list:
Attempting to load plugin /usr/local/share/mt-daapd/plugins/ssc-script.so
Loaded plugin /usr/local/share/mt-daapd/plugins/ssc-script.so (ssc-script/svn-1586)
New transcode codec list: ogg,flac,alac
Plugin loaded: ssc-script/svn-1586
Plugin loaded: rsp/svn-1586
Plugin loaded: daap/svn-1586
Starting rendezvous daemon
Starting signal handler
Opening database
[New LWP 1]
[New LWP 2]
[New LWP 3]
[LWP 2 exited]
[New LWP 2]
[LWP 3 exited]
[New LWP 3]
Executing: select value from config where term=’version’
Results: 0
Initializing database
Executing: select count(*) FROM songs
Executing: select value from config where term=’rescan’
Executing: vacuum
Rows: 1
Executing: create index idx_path on songs(path,idx)
Query: create index idx_path on songs(path,idx)
Error: index idx_path already exists
Executing: create index idx_songid on playlistitems(songid)
Query: create index idx_songid on playlistitems(songid)
Error: index idx_songid already exists
Executing: create index idx_playlistid on playlistitems(playlistid,songid)
Query: create index idx_playlistid on playlistitems(playlistid,songid)
Error: index idx_playlistid already exists
Starting web server from /usr/local/share/mt-daapd/admin-root on port 3689
Listening on port 3689
Starting server thread
[New LWP 4]
Registering rendezvous namesProgram received signal SIGPIPE, Broken pipe.
0xff0a09f4 in _write () from /usr/lib/libc.so.1
(gdb)11/07/2007 at 8:12 PM #11643fizzeParticipantwell, the errors during db upgrade/scan are alright, there seems to be some problem with renzdezvous.
What are your compile options? 😉11/07/2007 at 8:18 PM #11644whatdoineed2do-againParticipantyou’ll want to get gdb to ignore signals (ie let the mt-daapd signal handlers deal with them)
i believe the syntax is something like:
handle SIGPIPE ignorererun and see how you go
ray11/07/2007 at 9:06 PM #11645bfrankeParticipantThanks for your quick responses.
I’ve now set GDB to ignore SIGPIPE (handle SIGPIPE nostop ignore). Now I can run the server within GDB (still, for some mysterious reasons, sometimes GDB is put in the background after a short while and only becomes active again after I get it back into the foreground with fg %1).
mt-daapd seems to run for a while, I can use the web interface, but it stops working as soon as I click on any song in the iTunes shared resource. Ok, having said this and having this checked over again, this is rather weird. Killed GDB and mt-daapd, started everything up again, and I got somewhat further. Again, killed everything and started up everything again it appears to work. The only change I am aware of is that I have waited until all file scanning activity had ceased, before I accessed the iTunes shared resource.
BTW, the options of “configure” are –enable-sqlite3, compiler options are -g -O2.
I’ll check again, maybe I can narrow down the situation when it works and when it doesn’t.
Cheers,
Bjoern
11/07/2007 at 9:14 PM #11646bfrankeParticipantHere’s some additional info. I still haven’t found out what to do to make it crash (or actually to avoid this), sometime it works, but not always. If it gets stuck, however, this is the last output I can see in the GDB window.
Cheers,
Bjoern
Executing: INSERT INTO updated VALUES (306)
Rows: 1
Skipping file, not modified
Found /export/home0/samba/data/music/Depeche Mode/The Singles 86_98 (Disc 2)/._2-08 Useless.m4a
Found /export/home0/samba/data/music/Depeche Mode/The Singles 86_98 (Disc 2)/2-09 Only When I Lose Myself.m4a
Executing: select * from songs where path=’/export/home0/samba/data/music/Depeche Mode/The Singles 86_98 (Disc 2)/2-09 Only When I Lose Myself.m4a’ and idx=0
Thread 19: URI Match!
Thread 19: Time is 1184188401 seconds after epoch
Thread 19: Setting time header
Added *Date=Wed, 11 Jul 2007 21:13:21 GMT*
Added *Connection=keep-alive*
Added *Server=mt-daapd/svn-1586*
Added *Content-Type=text/html*
Added *Content-Language=en_us*
Thread 19: Using non-default handler
in main_auth
Checking url /xml-rpc
Checking url /xml-rpc
Dispatching auth for /xml-rpc to config auth
Checking if pw required for /xml-rpc as admin
Yep
Preparing to decode YWRtaW46bXQtZGFhcGQ=
Decoded admin:mt-daapd
Decoded user=admin, pw=mt-daapd
in main_auth
Checking url /xml-rpc
Checking url /xml-rpc
Dispatching auth for /xml-rpc to config auth
Added *HTTP_USER=admin*
Added *HTTP_PASSWD=mt-daapd*
in main_handler
Checking url /xml-rpc
Checking url /xml-rpc
Dispatching /xml-rpc to config handler
Entering config_handler
Entering config_set_status
Exiting config_set_status
Updating Connection from keep-alive to close
Entering config_set_status
Exiting config_set_status
Added *Cache-Control=no-cache*
Added *Expires=-1*
Updating Content-Type from text/html to text/xml; charset=utf-8
Emitting reponse header Expires: -1
Emitting reponse header Cache-Control: no-cache
Emitting reponse header Content-Language: en_us
Emitting reponse header Content-Type: text/xml; charset=utf-8
Emitting reponse header Server: mt-daapd/svn-1586
Emitting reponse header Connection: close
Emitting reponse header Date: Wed, 11 Jul 2007 21:13:21 GMT
Status inquiry
Returning status -112/07/2007 at 3:28 AM #11647rpeddeParticipant@bfranke wrote:
Here’s some additional info. I still haven’t found out what to do to make it crash (or actually to avoid this), sometime it works, but not always. If it gets stuck, however, this is the last output I can see in the GDB window.
Cheers,
Bjoern
Executing: INSERT INTO updated VALUES (306)
Rows: 1
Skipping file, not modified
Found /export/home0/samba/data/music/Depeche Mode/The Singles 86_98 (Disc 2)/._2-08 Useless.m4a
Found /export/home0/samba/data/music/Depeche Mode/The Singles 86_98 (Disc 2)/2-09 Only When I Lose Myself.m4a
Executing: select * from songs where path=’/export/home0/samba/data/music/Depeche Mode/The Singles 86_98 (Disc 2)/2-09 Only When I Lose Myself.m4a’ and idx=0
Thread 19: URI Match!
Thread 19: Time is 1184188401 seconds after epoch
Thread 19: Setting time header
Added *Date=Wed, 11 Jul 2007 21:13:21 GMT*
Added *Connection=keep-alive*
Added *Server=mt-daapd/svn-1586*
Added *Content-Type=text/html*
Added *Content-Language=en_us*
Thread 19: Using non-default handler
in main_auth
Checking url /xml-rpc
Checking url /xml-rpc
Dispatching auth for /xml-rpc to config auth
Checking if pw required for /xml-rpc as admin
Yep
Preparing to decode YWRtaW46bXQtZGFhcGQ=
Decoded admin:mt-daapd
Decoded user=admin, pw=mt-daapd
in main_auth
Checking url /xml-rpc
Checking url /xml-rpc
Dispatching auth for /xml-rpc to config auth
Added *HTTP_USER=admin*
Added *HTTP_PASSWD=mt-daapd*
in main_handler
Checking url /xml-rpc
Checking url /xml-rpc
Dispatching /xml-rpc to config handler
Entering config_handler
Entering config_set_status
Exiting config_set_status
Updating Connection from keep-alive to close
Entering config_set_status
Exiting config_set_status
Added *Cache-Control=no-cache*
Added *Expires=-1*
Updating Content-Type from text/html to text/xml; charset=utf-8
Emitting reponse header Expires: -1
Emitting reponse header Cache-Control: no-cache
Emitting reponse header Content-Language: en_us
Emitting reponse header Content-Type: text/xml; charset=utf-8
Emitting reponse header Server: mt-daapd/svn-1586
Emitting reponse header Connection: close
Emitting reponse header Date: Wed, 11 Jul 2007 21:13:21 GMT
Status inquiry
Returning status -1I don’t have access to a sparc solaris box that I can handily use, but I don’t think it’s an endian issue or an alignment issue, since it works okay on ppc, mips, arm, etc.
I’ll try and replicate it on opensolaris and see if that gets me anywhere. Oh… and if you could get it to crash in gdb and get a backtrace, that would be really really helpful.
— Ron
12/07/2007 at 9:30 PM #11648bfrankeParticipantOk, I’ll give it a try, but I will be away for the next two weeks.
Cheers,
Bjoern
-
AuthorPosts
- The forum ‘Setup Issues’ is closed to new topics and replies.