FireFly Media Server › Firefly Media Server Forums › Firefly Media Server › Setup Issues › Setting up multiple instances of Firefly on Linkstation NAS
- This topic has 11 replies, 3 voices, and was last updated 18 years, 3 months ago by risimmonsuk.
-
AuthorPosts
-
14/08/2006 at 9:03 PM #508risimmonsukParticipant
I’m running the latest nightly build (1340) on a Buffalo Linkstation, and I’d like to run multiple instances.
I’ve seen a few comments that this should be possible.
I’ve got multiple mt-daapd.conf scripts, each of which refers to a different db_params directory, they have port numbers 1 apart and each has a different server name.
I can start each one individually fine with the relevant -c option. iTunes and my Soundbridge see this 1 instance, and it seems to contain all the files i’d expect.
However, if I start a second instance with the different conf file, it doesn’t appear to start correctly. I can see it’s web page using the different port number, however it doesn’t report any uptime or songs or clients, and the configuration page is blank. Also iTunes/Soundbridge don’t see the library. looking at the log file with -d9 I see;
2006-08-14 21:49:44 (00004000): Starting with debuglevel 9
2006-08-14 21:49:44 (00004000): Attempting to load plugin /usr/local/share/mt-daapd/plugins/rsp.so
2006-08-14 21:49:44 (00004000): Loaded plugin /usr/local/share/mt-daapd/plugins/rsp.so (rsp/svn-1340)
2006-08-14 21:49:44 (00004000): New transcode codec list:
2006-08-14 21:49:44 (00004000): Attempting to load plugin /usr/local/share/mt-daapd/plugins/ssc-script.so
2006-08-14 21:49:44 (00004000): Loaded plugin /usr/local/share/mt-daapd/plugins/ssc-script.so (ssc-script/svn-1340)
2006-08-14 21:49:44 (00004000): New transcode codec list: ogg,flac,alac
2006-08-14 21:49:44 (00004000): Starting rendezvous daemon
2006-08-14 21:49:44 (00004000): get_ifi_info
2006-08-14 21:49:44 (00004000): intf name=lo AF=2, flags=00000002
2006-08-14 21:49:44 (00004000): intf name=eth0 AF=2, flags=00000002
2006-08-14 21:49:44 (00004000): SetupInterfaceList
2006-08-14 21:49:44 (00004000): bind: Address already in use
2006-08-14 21:49:44 (00004000): SetupOneInterface: eth0 192.160.0.2 failed to register 125
2006-08-14 21:49:44 (00004000): bind: Address already in use
2006-08-14 21:49:44 (00004000): SetupOneInterface: lo 127.0.0.1 failed to register 125
2006-08-14 21:49:44 (00004000): select(1, 0.000976)
2006-08-14 21:49:44 (00004000): Starting signal handler
2006-08-14 21:49:44 (00004000): mDNS_Execute
2006-08-14 21:49:44 (00004000): select(1, 1966079.977539)
2006-08-14 21:49:44 (00004002): Signal handler started
2006-08-14 21:49:45 (00004000): Opening database
2006-08-14 21:49:45 (00004000): Executing: select value from config where term='version'
2006-08-14 21:49:45 (00004000): Results: 0
2006-08-14 21:49:45 (00004000): Initializing database
2006-08-14 21:49:45 (00004000): Executing: select count(*) FROM songs
2006-08-14 21:49:45 (00004000): Executing: select value from config where term='rescan'
2006-08-14 21:49:45 (00004000): Executing: vacuum
2006-08-14 21:50:22 (00004000): Rows: 0
2006-08-14 21:50:22 (00004000): Executing: create index idx_path on songs(path,idx)
2006-08-14 21:50:22 (00004000): Query: create index idx_path on songs(path,idx)
2006-08-14 21:50:22 (00004000): Error: index idx_path already exists
2006-08-14 21:50:22 (00004000): Executing: create index idx_songid on playlistitems(songid)
2006-08-14 21:50:22 (00004000): Query: create index idx_songid on playlistitems(songid)
2006-08-14 21:50:22 (00004000): Error: index idx_songid already exists
2006-08-14 21:50:22 (00004000): Executing: create index idx_playlistid on playlistitems(playlistid,songid)
2006-08-14 21:50:22 (00004000): Query: create index idx_playlistid on playlistitems(playlistid,songid)
2006-08-14 21:50:22 (00004000): Error: index idx_playlistid already exists
2006-08-14 21:50:22 (00004000): Starting web server from /usr/local/share/mt-daapd/admin-root on port 3689
2006-08-14 21:50:22 (00004000): Listening on port 3689
2006-08-14 21:50:22 (00004000): Starting server thread
2006-08-14 21:50:22 (00004000): Registering rendezvous names
This suggests to me that the problem is that I can’t have 2 instances from the same IP address. Is this correct? If so, is it possible to run 2 instances at all? The original library continues to run fine while whichever one starts second always fails.
14/08/2006 at 10:36 PM #5925AnonymousInactiveYou can assign more than one ip address to your NIC so it might be worth going down that route.
15/08/2006 at 2:12 AM #5926rpeddeParticipant@risimmonsuk wrote:
This suggests to me that the problem is that I can’t have 2 instances from the same IP address. Is this correct? If so, is it possible to run 2 instances at all? The original library continues to run fine while whichever one starts second always fails.
Nope, will work fine. make sure you have different paths (db_parms), different ports (port), and different server names (servername). You can use the same admin_root, though.
You’ll need (obviously) two different config files, and you’ll need to run the second with a -c parameter pointing to the second config file.
If you can’t get it to go, post your two config files.
— Ron
15/08/2006 at 10:13 AM #5927risimmonsukParticipant@rpedde wrote:
Nope, will work fine. make sure you have different paths (db_parms), different ports (port), and different server names (servername). You can use the same admin_root, though.
— RonI believe I’ve got all this. I’ll post the config files when I get home tonight.
One thought though – the server names both start with Firefly and have spaces in them – could there be an issue with this? (eg. Firefly Albums and Firefly Comedy)
15/08/2006 at 8:42 PM #5928risimmonsukParticipantOk – I still can’t get this to work. 2 Config files below (comments and whitespace removed for the purpose of the post).
I start mt-daapd with the following command line;
/usr/local/sbin/mt-daapd -c /usr/local/etc/mt-daapd.comedy.conf
followed by
/usr/local/sbin/mt-daapd -c /usr/local/etc/mt-daapd.classical.confThe first library (whichever I start first) works fine. The second one has the following behaviour;
– web interface loads
– web interface shows bonjour service is running (I don’t believe it)
– web interface shows the media server is running
– uptime blank
– songs blank
– clients blank
– configuration page blank
– iTunes doesn’t see second server
Can anybody tell me what I’m doing wrong?Thanks!
/usr/local/etc/mt-daapd.comedy.conf
[general]
web_root = /usr/local/share/mt-daapd/admin-root
port = 3691
admin_pw = mt-daapd
db_type = sqlite
db_parms = /usr/local/var/cache/mt-daapd/comedy
mp3_dir = /mnt/hda/richardshare/Music/Comedy
servername = Comedy
runas = nobody
playlist = /usr/local/etc/mt-daapd.playlist
#password = mp3
extensions = .mp3,.m4a,.m4p,.wma
ssc_codectypes = ogg,flac,alac
ssc_prog = /usr/local/bin/mt-daapd-ssc.sh
#logfile = /var/log/mt-daapd.log
#art_filename = _folderOpenImage.jpg
rescan_interval = 300
# always_scan = 0
# process_m3u = 0
scan_type = 2
#compress = 0
[plugins]
plugin_dir = /usr/local/share/mt-daapd/plugins
plugins = rsp.so,ssc-script.so
/usr/local/etc/mt-daapd.classical.conf
[general]
web_root = /usr/local/share/mt-daapd/admin-root
port = 3690
admin_pw = mt-daapd
db_type = sqlite
db_parms = /usr/local/var/cache/mt-daapd/classical
mp3_dir = /mnt/hda/richardshare/Music/Classical
servername = Classical
runas = nobody
playlist = /usr/local/etc/mt-daapd.playlist
#password = mp3
extensions = .mp3,.m4a,.m4p,.wma
ssc_codectypes = ogg,flac,alac
ssc_prog = /usr/local/bin/mt-daapd-ssc.sh
#logfile = /var/log/mt-daapd.log
#art_filename = _folderOpenImage.jpg
rescan_interval = 300
# always_scan = 0
# process_m3u = 0
scan_type = 2
#compress = 0
[plugins]
plugin_dir = /usr/local/share/mt-daapd/plugins
plugins = rsp.so,ssc-script.so
16/08/2006 at 1:42 AM #5929rpeddeParticipant@risimmonsuk wrote:
Ok – I still can’t get this to work. 2 Config files below (comments and whitespace removed for the purpose of the post).
This looks good. Did you try running each of them with -d9 -f? That might show enough debugging into to see what’s up.
Meanwhile, I’ll see if I can get it to do the same thing on my linkstation.
— Ron
16/08/2006 at 9:01 PM #5930risimmonsukParticipant@rpedde wrote:
@risimmonsuk wrote:
Did you try running each of them with -d9 -f? That might show enough debugging into to see what’s up.
— RonI got some logs from running with -d9. Is there somewhere I can send them – they’re a couple of hundred kB each. I can’t spot anything obvious in them, but I don’t know what I’m looking for!
21/08/2006 at 6:39 PM #5931risimmonsukParticipantI still can’t get multiple instances to work. The second instance appears to die somewhere inside the rendezvous initialisation and never return. The second instance I start gets this far…
2006-08-21 19:03:50 (00004000): Starting with debuglevel 9
2006-08-21 19:03:50 (00004000): Attempting to load plugin /usr/local/share/mt-daapd/plugins/rsp.so
2006-08-21 19:03:50 (00004000): Loaded plugin /usr/local/share/mt-daapd/plugins/rsp.so (rsp/svn-1348)
2006-08-21 19:03:50 (00004000): New transcode codec list:
2006-08-21 19:03:50 (00004000): Attempting to load plugin /usr/local/share/mt-daapd/plugins/ssc-script.so
2006-08-21 19:03:50 (00004000): Loaded plugin /usr/local/share/mt-daapd/plugins/ssc-script.so (ssc-script/svn-1348)
2006-08-21 19:03:50 (00004000): New transcode codec list: ogg,flac,alac
2006-08-21 19:03:50 (00004000): Starting rendezvous daemon
2006-08-21 19:03:50 (00004000): Starting signal handler
2006-08-21 19:03:50 (00004000): get_ifi_info
2006-08-21 19:03:50 (00004000): intf name=lo AF=2, flags=00000002
2006-08-21 19:03:50 (00004000): intf name=eth0 AF=2, flags=00000002
2006-08-21 19:03:50 (00004000): SetupInterfaceList
2006-08-21 19:03:50 (00004000): bind: Address already in use
2006-08-21 19:03:50 (00004000): SetupOneInterface: eth0 192.160.0.2 failed to register 125
2006-08-21 19:03:50 (00004000): bind: Address already in use
2006-08-21 19:03:50 (00004000): SetupOneInterface: lo 127.0.0.1 failed to register 125
2006-08-21 19:03:50 (00004000): select(1, 0.000976)
2006-08-21 19:03:50 (00004000): Opening database
2006-08-21 19:03:50 (00004002): Signal handler started
2006-08-21 19:03:50 (00004000): mDNS_Execute
2006-08-21 19:03:50 (00004000): select(1, 1966079.964843)
2006-08-21 19:03:50 (00004000): Executing: select value from config where term='version'
2006-08-21 19:03:50 (00004000): Results: 0
2006-08-21 19:03:50 (00004000): Initializing database
2006-08-21 19:03:50 (00004000): Executing: select count(*) FROM songs
2006-08-21 19:03:50 (00004000): Executing: select value from config where term='rescan'
2006-08-21 19:03:50 (00004000): Executing: vacuum
2006-08-21 19:03:51 (00004000): Rows: 0
2006-08-21 19:03:51 (00004000): Executing: create index idx_path on songs(path,idx)
2006-08-21 19:03:51 (00004000): Query: create index idx_path on songs(path,idx)
2006-08-21 19:03:51 (00004000): Error: index idx_path already exists
2006-08-21 19:03:51 (00004000): Executing: create index idx_songid on playlistitems(songid)
2006-08-21 19:03:51 (00004000): Query: create index idx_songid on playlistitems(songid)
2006-08-21 19:03:51 (00004000): Error: index idx_songid already exists
2006-08-21 19:03:51 (00004000): Executing: create index idx_playlistid on playlistitems(playlistid,songid)
2006-08-21 19:03:51 (00004000): Query: create index idx_playlistid on playlistitems(playlistid,songid)
2006-08-21 19:03:51 (00004000): Error: index idx_playlistid already exists
2006-08-21 19:03:51 (00004000): Starting web server from /usr/local/share/mt-daapd/admin-root on port 3691
2006-08-21 19:03:51 (00004000): Listening on port 3691
2006-08-21 19:03:51 (00004000): Starting server thread
2006-08-21 19:03:51 (00004000): Registering rendezvous names
And then that’s it. Nothing more (unless I connect to the web interface, which gives additional messages, but never anything from the rendezvous thread).
If I start the same instance as the only instance I get the following log;
2006-08-21 19:29:07 (00004000): Starting with debuglevel 9
2006-08-21 19:29:07 (00004000): Attempting to load plugin /usr/local/share/mt-daapd/plugins/rsp.so
2006-08-21 19:29:07 (00004000): Loaded plugin /usr/local/share/mt-daapd/plugins/rsp.so (rsp/svn-1348)
2006-08-21 19:29:07 (00004000): New transcode codec list:
2006-08-21 19:29:07 (00004000): Attempting to load plugin /usr/local/share/mt-daapd/plugins/ssc-script.so
2006-08-21 19:29:07 (00004000): Loaded plugin /usr/local/share/mt-daapd/plugins/ssc-script.so (ssc-script/svn-1348)
2006-08-21 19:29:07 (00004000): New transcode codec list: ogg,flac,alac
2006-08-21 19:29:07 (00004000): Starting rendezvous daemon
2006-08-21 19:29:07 (00004000): Starting signal handler
2006-08-21 19:29:07 (00004000): get_ifi_info
2006-08-21 19:29:07 (00004000): intf name=lo AF=2, flags=00000002
2006-08-21 19:29:07 (00004000): intf name=eth0 AF=2, flags=00000002
2006-08-21 19:29:07 (00004000): SetupInterfaceList
2006-08-21 19:29:07 (00004000): mDNS_RegisterInterface: InterfaceID 1000AD78 192.160.0.2 not represented in list; marking active and retriggering queries
2006-08-21 19:29:07 (00004000): Adding 1000AD88 NAS250GB.local. (Addr) to active record list
2006-08-21 19:29:07 (00004000): Adding 1000B034 2.0.160.192.in-addr.arpa. (PTR) to active record list
2006-08-21 19:29:07 (00004000): Not creating HINFO record: platform support layer provided no information
2006-08-21 19:29:07 (00004000): SetupOneInterface: eth0 192.160.0.2 Registered
2006-08-21 19:29:07 (00004000): select(7, 0.000976)
2006-08-21 19:29:07 (00004000): Opening database
2006-08-21 19:29:07 (00004000): Executing: select value from config where term='version'
2006-08-21 19:29:07 (00004000): Results: 0
2006-08-21 19:29:07 (00004000): Initializing database
2006-08-21 19:29:07 (00004000): Executing: select count(*) FROM songs
2006-08-21 19:29:07 (00004000): Executing: select value from config where term='rescan'
2006-08-21 19:29:07 (00004000): Executing: vacuum
2006-08-21 19:29:07 (00004000): mDNS_Execute
2006-08-21 19:29:07 (00004000): select(7, 0.063476)
2006-08-21 19:29:07 (00004002): Signal handler started
2006-08-21 19:29:07 (00004000): mDNS_Execute
2006-08-21 19:29:07 (00004000): SendQueries: Put Question NAS250GB.local. (Addr) probecount 2
2006-08-21 19:29:07 (00004000): SendQueries: Sending 1 Question 0 Answers 1 Update on 1000AD78
2006-08-21 19:29:07 (00004000): select(7, 0.094726)
2006-08-21 19:29:07 (00004000): SocketDataReady got a packet from 192.160.0.2 to 224.0.0.251 on interface 192.160.0.2/eth0/2
2006-08-21 19:29:07 (00004000): Received Query from 192.160.0.2 :5353 to 224.0.0.251 :5353 on 0x1000AD78 with 1 Question, 0 Answers, 1 Authority, 0 Additionals
2006-08-21 19:29:07 (00004000): select(7, 0.089843)
2006-08-21 19:29:07 (00004000): mDNS_Execute
2006-08-21 19:29:07 (00004000): select(7, 0.149414)
2006-08-21 19:29:07 (00004000): mDNS_Execute
2006-08-21 19:29:07 (00004000): SendQueries: Put Question NAS250GB.local. (Addr) probecount 1
2006-08-21 19:29:07 (00004000): SendQueries: Sending 1 Question 0 Answers 1 Update on 1000AD78
2006-08-21 19:29:07 (00004000): select(7, 0.098632)
2006-08-21 19:29:07 (00004000): SocketDataReady got a packet from 192.160.0.2 to 224.0.0.251 on interface 192.160.0.2/eth0/2
2006-08-21 19:29:07 (00004000): Received Query from 192.160.0.2 :5353 to 224.0.0.251 :5353 on 0x1000AD78 with 1 Question, 0 Answers, 1 Authority, 0 Additionals
2006-08-21 19:29:07 (00004000): select(7, 0.097656)
2006-08-21 19:29:07 (00004000): Rows: 0
2006-08-21 19:29:07 (00004000): Executing: create index idx_path on songs(path,idx)
2006-08-21 19:29:07 (00004000): Query: create index idx_path on songs(path,idx)
2006-08-21 19:29:07 (00004000): Error: index idx_path already exists
2006-08-21 19:29:07 (00004000): Executing: create index idx_songid on playlistitems(songid)
2006-08-21 19:29:07 (00004000): Query: create index idx_songid on playlistitems(songid)
2006-08-21 19:29:07 (00004000): Error: index idx_songid already exists
2006-08-21 19:29:07 (00004000): Executing: create index idx_playlistid on playlistitems(playlistid,songid)
2006-08-21 19:29:07 (00004000): Query: create index idx_playlistid on playlistitems(playlistid,songid)
2006-08-21 19:29:07 (00004000): Error: index idx_playlistid already exists
2006-08-21 19:29:07 (00004000): Starting web server from /usr/local/share/mt-daapd/admin-root on port 3691
2006-08-21 19:29:07 (00004000): Listening on port 3691
2006-08-21 19:29:07 (00004000): Starting server thread
2006-08-21 19:29:07 (00004000): Registering rendezvous names
2006-08-21 19:29:07 (00004000): Processing rendezvous message
2006-08-21 19:29:07 (00004000): Registering Comedy._daap._tcp (3691)
2006-08-21 19:29:07 (00004000): Adding 1000CD70 Comedy._daap._tcp.local. (SRV) to active record list
2006-08-21 19:29:07 (00004000): Adding 1000D01C Comedy._daap._tcp.local. (TXT) to active record list
2006-08-21 19:29:07 (00004000): Adding 1000C818 _services._dns-sd._udp.local. (PTR) to active record list
2006-08-21 19:29:07 (00004000): Adding 1000CAC4 _daap._tcp.local. (PTR) to active record list
2006-08-21 19:29:07 (00004000): Registered service 0, name 'Comedy', type '_daap._tcp', domain 'local.', port 3691
2006-08-21 19:29:07 (00004000): select(7, 0.018554)
2006-08-21 19:29:07 (00004000): Processing rendezvous message
2006-08-21 19:29:07 (00004000): Registering Comedy._http._tcp (3691)
2006-08-21 19:29:07 (00004000): Adding 1000D948 Comedy._http._tcp.local. (SRV) to active record list
2006-08-21 19:29:07 (00004000): Adding 1000DBF4 Comedy._http._tcp.local. (TXT) to active record list
2006-08-21 19:29:07 (00004000): Adding 1000D3F0 _services._dns-sd._udp.local. (PTR) to active record list
2006-08-21 19:29:07 (00004000): Adding 1000D69C _http._tcp.local. (PTR) to active record list
2006-08-21 19:29:07 (00004000): Registered service 1, name 'Comedy', type '_http._tcp', domain 'local.', port 3691
2006-08-21 19:29:07 (00004000): select(7, 0.013671)
2006-08-21 19:29:07 (00004000): Checking ssc-script/svn-1348
2006-08-21 19:29:07 (00004000): Checking rsp/svn-1348
2006-08-21 19:29:07 (00004000): Registering _rsp._tcp
2006-08-21 19:29:07 (00004000): Processing rendezvous message
2006-08-21 19:29:07 (00004000): Registering Comedy._rsp._tcp (3691)
2006-08-21 19:29:07 (00004000): Adding 1000E520 Comedy._rsp._tcp.local. (SRV) to active record list
2006-08-21 19:29:07 (00004000): Adding 1000E7CC Comedy._rsp._tcp.local. (TXT) to active record list
2006-08-21 19:29:07 (00004000): Adding 1000DFC8 _services._dns-sd._udp.local. (PTR) to active record list
2006-08-21 19:29:07 (00004000): Adding 1000E274 _rsp._tcp.local. (PTR) to active record list
2006-08-21 19:29:07 (00004000): Registered service 2, name 'Comedy', type '_rsp._tcp', domain 'local.', port 3691
2006-08-21 19:29:07 (00004000): select(7, 0.004882)
2006-08-21 19:29:07 (00004000): Executing: select count(*) FROM songs
2006-08-21 19:29:07 (00004000): mDNS_Execute
2006-08-21 19:29:07 (00004000): select(7, 0.150390)
2006-08-21 19:29:07 (00004000): Serving 113 songs. Startup complete in 0 seconds
2006-08-21 19:29:07 (00004000): Rescanning database
etc.Can anybody help point me at further ways I can debug this – should I add more debug to the code? Anybody got any ideas?
[/quote]21/08/2006 at 9:11 PM #5932risimmonsukParticipantAh – sorted it! Need to compile firefly with Howl, whatever that is… Seems to work now
21/08/2006 at 9:23 PM #5933risimmonsukParticipant@risimmonsuk wrote:
Ah – sorted it! Need to compile firefly with Howl, whatever that is… Seems to work now
Ok – maybe i spoke too soon. Can get multiple instances, but now iTunes and my soundbridge don’t see them, even if there’s only 1 running.
Seems to be that howl isn’t running properly. In the log I see;
2006-08-21 22:24:40 (00004000): Starting rendezvous daemon
2006-08-21 22:24:40 (00004000): Starting signal handler
2006-08-21 22:24:40 (00004000): Starting rendezvous services
2006-08-21 22:24:40 (00004000): Error initializing howl
2006-08-21 22:24:40 (00004000): Opening database
2006-08-21 22:24:40 (00004002): Signal handler started
2006-08-21 22:24:40 (00004000): Executing: select value from config where term='version'
2006-08-21 22:24:40 (00004000): Results: 0
2006-08-21 22:24:40 (00004000): Initializing database
2006-08-21 22:24:40 (00004000): Executing: select count(*) FROM songs
2006-08-21 22:24:40 (00004000): Executing: select value from config where term='rescan'
2006-08-21 22:24:40 (00004000): Executing: vacuum
2006-08-21 22:24:40 (00004000): Rows: 0
Any ideas?
-
AuthorPosts
- The forum ‘Setup Issues’ is closed to new topics and replies.