Bug 8360 - 7.0.1 fails running on OSX (in some cases)
: 7.0.1 fails running on OSX (in some cases)
Status: CLOSED FIXED
Product: Logitech Media Server
Classification: Unclassified
Component: Misc
: 7.0.1
: Macintosh MacOS X 10.4
: P2 major (vote)
: 7.x
Assigned To: Squeezebox QA Team email alias
http://forums.slimdevices.com/showthr...
:
Depends on:
Blocks:
  Show dependency treegraph
 
Reported: 2008-06-08 20:26 UTC by Michael Herger
Modified: 2009-07-31 10:22 UTC (History)
2 users (show)

See Also:
Category: ---


Attachments
fix file closing (1.76 KB, patch)
2008-06-09 07:04 UTC, Michael Herger
Details | Diff
Patched Misc.m (11.20 KB, application/zip)
2008-06-09 09:00 UTC, Bill Eccles
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Michael Herger 2008-06-08 20:26:55 UTC
We've had a bunch of reports in the forums where 7.0.1 would fail on OSX, while 7.0 would happily run. The users see the following messages in the log:

[08-05-25 18:03:17.8599] Slim::Utils::Misc::msg (1329) Warning: [18:03:17.8598] ERROR: Processor Name: Intel Core 2 Duo
[08-05-25 18:03:17.8602] Slim::Utils::Misc::msg (1329) Warning: [18:03:17.8601] ERROR: Processor Name: Intel Core 2 Duo
[08-05-25 18:03:17.8605] Slim::Utils::Misc::msg (1329) Warning: [18:03:17.8604] ERROR: Processor Name: Intel Core 2 Duo
[08-05-25 18:03:17.8607] Slim::Utils::Misc::msg (1329) Warning: [18:03:17.8606] ERROR: Processor Name: Intel Core 2 Duo

[08-05-25 18:03:17.8635] main::main (211) Error: Failed when running main scan: [Can't locate URI/file/Unix.pm in @INC (@INC contains: /Library/PreferencePanes/SqueezeCenter.prefPane/Contents/server/CPAN/arch/5.8/darwin-thread-multi-2level /Library/PreferencePanes/SqueezeCenter.prefPane/Contents/server/CPAN/arch/5.8/darwin-thread-multi-2level/auto /Library/PreferencePanes/SqueezeCenter.prefPane/Contents/server/CPAN/arch/5.8.8/darwin-thread-multi-2level /Library/PreferencePanes/SqueezeCenter.prefPane/Contents/server/CPAN/arch/5.8.8/darwin-thread-multi-2level/auto /Library/PreferencePanes/SqueezeCenter.prefPane/Contents/server/CPAN/arch/5.8/darwin-thread-multi-2level /Library/PreferencePanes/SqueezeCenter.prefPane/Contents/server/CPAN/arch/5.8/darwin-thread-multi-2level/auto /Library/PreferencePanes/SqueezeCenter.prefPane/Contents/server/CPAN/arch/darwin-thread-multi-2level /Library/PreferencePanes/SqueezeCenter.prefPane/Contents/server/lib /Library/PreferencePanes/SqueezeCenter.prefPane/Contents/server/CPAN /Library/PreferencePanes/SqueezeCenter.prefPane/Contents/server /Library/Application Support/SqueezeCenter /Users/itunes/Library/Application Support/SqueezeCenter /Library/PreferencePanes/SqueezeCenter.prefPane/Contents/server /System/Library/Perl/5.8.8/darwin-thread-multi-2level /System/Library/Perl/5.8.8 /Library/Perl/5.8.8/darwin-thread-multi-2level /Library/Perl/5.8.8 /Library/Perl /Network/Library/Perl/5.8.8/darwin-thread-multi-2level /Network/Library/Perl/5.8.8 /Network/Library/Perl /System/Library/Perl/Extras/5.8.8/darwin-thread-multi-2level /System/Library/Perl/Extras/5.8.8 /Library/Perl/5.8.6 /Library/Perl/5.8.1 .) at (eval 503) line 3.
]
[08-05-25 18:03:17.8638] main::main (212) Error: Skipping post-process & Not updating lastRescanTime!
[08-05-25 18:03:17.8644] Carp::carp (271) Warning: Can't read /Users/itunes/Library/Caches/SqueezeCenter/templates: Too many open files at /Library/PreferencePanes/SqueezeCenter.prefPane/Contents/server/scanner.pl line 236
[08-05-25 18:03:17.8647] Carp::carp (271) Warning: Can't remove directory /Users/itunes/Library/Caches/SqueezeCenter/templates: Directory not empty at /Library/PreferencePanes/SqueezeCenter.prefPane/Contents/server/scanner.pl line 236


Can't reproduce the issue myself. I'd assume the missing module part might be due to the "too many open files" issue.
Comment 1 Michael Herger 2008-06-08 20:33:43 UTC
Biggest change between 7.0 and 7.0.1 is supporting aliases. Might start digging there.
Comment 2 Michael Herger 2008-06-08 20:35:41 UTC
QA - could you please try running SC 7.0.1 on a very default system? I wonder whether I installed some module to support aliases on my machine which aren't included by default.
Comment 3 Bill Eccles 2008-06-09 04:50:12 UTC
> whether I installed some module to support aliases on my machine which aren't

The only extra plugin I had is ExtendedAlarms. It might be worth noting that I went from 7.0 to 7.0.1 with the installer and no cleaning-out-of-7.0 and (I'm fairly certain) did not have a problem until I moved my music library from one place to another and had to repoint 7.0.1 to the new location.
Comment 4 Michael Herger 2008-06-09 04:56:39 UTC
Bill - may I ask you what size your collection is? And when exactly does it crash: only during scans or already at startup?
Comment 5 Michael Herger 2008-06-09 05:28:16 UTC
change 20533 - make sure all resources and files are freed/closed when checking for aliases

There's a new 7.0.2 build available: http://www.slimdevices.com/downloads/nightly/latest/7.0/SqueezeCenter-7.0.2-20533.dmg - would be great if you could give it a try.
Comment 6 Bill Eccles 2008-06-09 06:17:01 UTC
> change 20533 - make sure all resources and files are freed/closed when checking
> for aliases

Sounds like a good thing to do.

> There's a new 7.0.2 build available:
> http://www.slimdevices.com/downloads/nightly/latest/7.0/SqueezeCenter-7.0.2-20533.dmg
> - would be great if you could give it a try.
> 

OK, did so. Set scan to debug. Installed on top of 7.0.0 and forced a clear library and rescan. tail'ed scanner.log and got:


[08:39:06.8159] Slim::Utils::Scanner::__ANON__ (130) Warning: Use of uninitialized value in concatenation (.) or string at /Library/PreferencePanes/SqueezeCenter.prefPane/Contents/server/Slim/Utils/Scanner.pm line 130.
[08:39:06.8171] Slim::Utils::Misc::msg (1348) Warning: [08:39:06.8166] ERROR: 

(repeats 921 more times, then this:)

[08:39:07.9496] main::main (211) Error: Failed when running main scan: [Can't locate URI/file/Unix.pm in @INC (@INC contains: /Library/PreferencePanes/SqueezeCenter.prefPane/Contents/server/CPAN/arch/5.8/darwin-thread-multi-2level /Library/PreferencePanes/SqueezeCenter.prefPane/Contents/server/CPAN/arch/5.8/darwin-thread-multi-2level/auto /Library/PreferencePanes/SqueezeCenter.prefPane/Contents/server/CPAN/arch/5.8.8/darwin-thread-multi-2level /Library/PreferencePanes/SqueezeCenter.prefPane/Contents/server/CPAN/arch/5.8.8/darwin-thread-multi-2level/auto /Library/PreferencePanes/SqueezeCenter.prefPane/Contents/server/CPAN/arch/5.8/darwin-thread-multi-2level /Library/PreferencePanes/SqueezeCenter.prefPane/Contents/server/CPAN/arch/5.8/darwin-thread-multi-2level/auto /Library/PreferencePanes/SqueezeCenter.prefPane/Contents/server/CPAN/arch/darwin-thread-multi-2level /Library/PreferencePanes/SqueezeCenter.prefPane/Contents/server/lib /Library/PreferencePanes/SqueezeCenter.prefPane/Contents/server/CPAN /Library/PreferencePanes/SqueezeCenter.prefPane/Contents/server /Library/Application Support/SqueezeCenter /Users/admin/Library/Application Support/SqueezeCenter /Library/PreferencePanes/SqueezeCenter.prefPane/Contents/server /System/Library/Perl/5.8.8/darwin-thread-multi-2level /System/Library/Perl/5.8.8 /Library/Perl/5.8.8/darwin-thread-multi-2level /Library/Perl/5.8.8 /Library/Perl /Network/Library/Perl/5.8.8/darwin-thread-multi-2level /Network/Library/Perl/5.8.8 /Network/Library/Perl /System/Library/Perl/Extras/5.8.8/darwin-thread-multi-2level /System/Library/Perl/Extras/5.8.8 /Library/Perl/5.8.6 /Library/Perl/5.8.1 .) at (eval 509) line 3.
]
[08:39:07.9502] main::main (212) Error: Skipping post-process & Not updating lastRescanTime!
[08:39:07.9515] Carp::carp (271) Warning: Can't read /Users/admin/Library/Caches/SqueezeCenter/templates: Too many open files at /Library/PreferencePanes/SqueezeCenter.prefPane/Contents/server/scanner.pl line 236
[08:39:07.9526] Carp::carp (271) Warning: Can't remove directory /Users/admin/Library/Caches/SqueezeCenter/templates: Directory not empty at /Library/PreferencePanes/SqueezeCenter.prefPane/Contents/server/scanner.pl line 236

"Music Scan Details" still showing directory scan stuck at 1 of 2220 and clock keeps running. (JavaScript, I presume.) Clicked "Home" and got 0/0/0.

I poked around with fs_usage and got this during a scan:

09:04:16.613  getattrlist                            ems/Sound/Music/iTunes/iTunes Music/Billy Joel/1974 Streetlife Serenade/02 Los Angelenos.m4a                                                            0.000013   perl                
09:04:16.613  getattrlist                            ems/Sound/Music/iTunes/iTunes Music/Billy Joel/1974 Streetlife Serenade/02 Los Angelenos.m4a                                                            0.000013   perl                
09:04:16.613  getattrlist                            ems/Sound/Music/iTunes/iTunes Music/Billy Joel/1974 Streetlife Serenade/02 Los Angelenos.m4a                                                            0.000012   perl                
09:04:16.613  getattrlist                            ems/Sound/Music/iTunes/iTunes Music/Billy Joel/1974 Streetlife Serenade/02 Los Angelenos.m4a                                                            0.000012   perl                
09:04:16.613  open              F=243      (RW____)  ems/Sound/Music/iTunes/iTunes Music/Billy Joel/1974 Streetlife Serenade/02 Los Angelenos.m4a                                                            0.000018   perl                
09:04:16.613  fstat             F=243                                                                                                                                                                        0.000004   perl                
09:04:16.613  close             F=243                                                                                                                                                                        0.000007   perl                
09:04:16.613  stat                                   c/iTunes/iTunes Music/Billy Joel/1974 Streetlife Serenade/03 The Great Suburban Showdown.m4a                                                            0.000013   perl                
09:04:16.613  lstat                                  c/iTunes/iTunes Music/Billy Joel/1974 Streetlife Serenade/03 The Great Suburban Showdown.m4a                                                            0.000009   perl                
09:04:16.613  getattrlist                            c/iTunes/iTunes Music/Billy Joel/1974 Streetlife Serenade/03 The Great Suburban Showdown.m4a                                                            0.000013   perl                
09:04:16.613  getattrlist                            c/iTunes/iTunes Music/Billy Joel/1974 Streetlife Serenade/03 The Great Suburban Showdown.m4a                                                            0.000016   perl                
09:04:16.613  getattrlist                            usic/iTunes/iTunes Music/Billy Joel/1974 Streetlife Serenade/03 The Great Suburban#7DE77.m4a                                                            0.000059   perl                
09:04:16.613  getattrlist                            c/iTunes/iTunes Music/Billy Joel/1974 Streetlife Serenade/03 The Great Suburban Showdown.m4a                                                            0.000013   perl                
09:04:16.613  open              F=243      (RW____)  c/iTunes/iTunes Music/Billy Joel/1974 Streetlife Serenade/03 The Great Suburban Showdown.m4a                                                            0.000027   perl                
09:04:16.613  fstat             F=243                                                                                                                                                                        0.000005   perl                
09:04:16.613  close             F=243                                                                                                                                                                        0.000010   perl                
09:04:16.613  getattrlist                            c/iTunes/iTunes Music/Billy Joel/1974 Streetlife Serenade/03 The Great Suburban Showdown.m4a                                                            0.000014   perl                
09:04:16.613  getattrlist                            c/iTunes/iTunes Music/Billy Joel/1974 Streetlife Serenade/03 The Great Suburban Showdown.m4a                                                            0.000013   perl                
09:04:16.613  getattrlist                            usic/iTunes/iTunes Music/Billy Joel/1974 Streetlife Serenade/03 The Great Suburban#7DE77.m4a                                                            0.000042   perl                
09:04:16.613  getattrlist                            c/iTunes/iTunes Music/Billy Joel/1974 Streetlife Serenade/03 The Great Suburban Showdown.m4a                                                            0.000012   perl                
09:04:16.613  open              F=243      (RW____)  c/iTunes/iTunes Music/Billy Joel/1974 Streetlife Serenade/03 The Great Suburban Showdown.m4a                                                            0.000021   perl                
09:04:16.613  fstat             F=243                                                                                                                                                                        0.000004   perl                
09:04:16.614  close             F=243                                                                                                                                                                        0.000008   perl                
09:04:16.614  stat                                   ems/Sound/Music/iTunes/iTunes Music/Billy Joel/1974 Streetlife Serenade/04 Root Beer Rag.m4a                                                            0.000014   perl                
09:04:16.614  lstat                                  ems/Sound/Music/iTunes/iTunes Music/Billy Joel/1974 Streetlife Serenade/04 Root Beer Rag.m4a                                                            0.000009   perl                
09:04:16.614  getattrlist                            ems/Sound/Music/iTunes/iTunes Music/Billy Joel/1974 Streetlife Serenade/04 Root Beer Rag.m4a                                                            0.000013   perl                
09:04:16.614  getattrlist                            ems/Sound/Music/iTunes/iTunes Music/Billy Joel/1974 Streetlife Serenade/04 Root Beer Rag.m4a                                                            0.000016   perl                
09:04:16.614  getattrlist                            ems/Sound/Music/iTunes/iTunes Music/Billy Joel/1974 Streetlife Serenade/04 Root Beer Rag.m4a                                                            0.000012   perl                
09:04:16.614  getattrlist                            ems/Sound/Music/iTunes/iTunes Music/Billy Joel/1974 Streetlife Serenade/04 Root Beer Rag.m4a                                                            0.000012   perl                
09:04:16.614  open              F=243      (RW____)  ems/Sound/Music/iTunes/iTunes Music/Billy Joel/1974 Streetlife Serenade/04 Root Beer Rag.m4a                                                            0.000025   perl                
09:04:16.614  fstat             F=243                                                                                                                                                                        0.000005   perl                
09:04:16.614  close             F=243                                                                                                                                                                        0.000010   perl                
09:04:16.614  getattrlist                            ems/Sound/Music/iTunes/iTunes Music/Billy Joel/1974 Streetlife Serenade/04 Root Beer Rag.m4a                                                            0.000014   perl                
09:04:16.614  getattrlist                            ems/Sound/Music/iTunes/iTunes Music/Billy Joel/1974 Streetlife Serenade/04 Root Beer Rag.m4a                                                            0.000013   perl                
09:04:16.614  getattrlist                            ems/Sound/Music/iTunes/iTunes Music/Billy Joel/1974 Streetlife Serenade/04 Root Beer Rag.m4a                                                            0.000012   perl                
09:04:16.614  getattrlist                            ems/Sound/Music/iTunes/iTunes Music/Billy Joel/1974 Streetlife Serenade/04 Root Beer Rag.m4a                                                            0.000012   perl                
09:04:16.614  open              F=243      (RW____)  ems/Sound/Music/iTunes/iTunes Music/Billy Joel/1974 Streetlife Serenade/04 Root Beer Rag.m4a                                                            0.000018   perl                
09:04:16.614  fstat             F=243                                                                                                                                                                        0.000004   perl                
09:04:16.614  close             F=243                                                                                                                                                                        0.000007   perl                
09:04:16.614  stat                                   red Items/Sound/Music/iTunes/iTunes Music/Billy Joel/1974 Streetlife Serenade/05 Roberta.m4a                                                            0.000014   perl                
09:04:16.614  lstat                                  red Items/Sound/Music/iTunes/iTunes Music/Billy Joel/1974 Streetlife Serenade/05 Roberta.m4a                                                            0.000009   perl                
09:04:16.614  getattrlist                            red Items/Sound/Music/iTunes/iTunes Music/Billy Joel/1974 Streetlife Serenade/05 Roberta.m4a                                                            0.000012   perl                
09:04:16.614  getattrlist                            red Items/Sound/Music/iTunes/iTunes Music/Billy Joel/1974 Streetlife Serenade/05 Roberta.m4a                                                            0.000016   perl                
09:04:16.614  getattrlist                            red Items/Sound/Music/iTunes/iTunes Music/Billy Joel/1974 Streetlife Serenade/05 Roberta.m4a                                                            0.000013   perl                
09:04:16.614  getattrlist                            red Items/Sound/Music/iTunes/iTunes Music/Billy Joel/1974 Streetlife Serenade/05 Roberta.m4a                                                            0.000012   perl                
09:04:16.614  open              F=243      (RW____)  red Items/Sound/Music/iTunes/iTunes Music/Billy Joel/1974 Streetlife Serenade/05 Roberta.m4a                                                            0.000024   perl                
09:04:16.614  fstat             F=243                                                                                                                                                                        0.000005   perl                
09:04:16.614  close             F=243                                                                                                                                                                        0.000010   perl                
09:04:16.614  getattrlist                            red Items/Sound/Music/iTunes/iTunes Music/Billy Joel/1974 Streetlife Serenade/05 Roberta.m4a                                                            0.000013   perl                
09:04:16.614  getattrlist                            red Items/Sound/Music/iTunes/iTunes Music/Billy Joel/1974 Streetlife Serenade/05 Roberta.m4a                                                            0.000013   perl                
09:04:16.614  getattrlist                            red Items/Sound/Music/iTunes/iTunes Music/Billy Joel/1974 Streetlife Serenade/05 Roberta.m4a                                                            0.000012   perl                
09:04:16.614  getattrlist                            red Items/Sound/Music/iTunes/iTunes Music/Billy Joel/1974 Streetlife Serenade/05 Roberta.m4a                                                            0.000012   perl                
09:04:16.614  open              F=243      (RW____)  red Items/Sound/Music/iTunes/iTunes Music/Billy Joel/1974 Streetlife Serenade/05 Roberta.m4a                                                            0.000018   perl                
09:04:16.614  fstat             F=243                                                                                                                                                                        0.000004   perl                
09:04:16.614  close             F=243                                

I'll be darned if I can figure out if there are an appropriate number of closes for opens in there. I wish fs_usage showed what was getting closed and stat'd and that kind of thing when it is reporting back stuff.
Comment 7 Bill Eccles 2008-06-09 06:23:29 UTC
What I can tell you is that 7.0.0 presents a very different fs_usage output--a very much different pattern to things, and the "F" number doesn't seem to be nearly as high. (Is this indicative of the number of files open?) Here's a sample.

09:20:01.042  chdir                                  hared Items/Sound/Music/iTunes/iTunes Music/Anna Ternheim/Somebody Outside [Limited Edition]                                                            0.000022   perl                
09:20:01.042  lstat                                  16 I Say No (Naked Version).mp3                                                                                                                         0.000016   perl                
09:20:01.042  open              F=9        (R_____)  .                                                                                                                                                       0.000008   perl                
09:20:01.042  fcntl             F=9   <GETPATH>                                                                                                                                                              0.000010   perl                
09:20:01.042  close             F=9                                                                                                                                                                          0.000011   perl                
09:20:01.042  fchdir            F=6                                                                                                                                                                          0.000003   perl                
09:20:01.042  close             F=6                                                                                                                                                                          0.000004   perl                
09:20:01.043  open              F=6        (R_____)  .                                                                                                                                                       0.000041   perl                
09:20:01.043  chdir                                  hared Items/Sound/Music/iTunes/iTunes Music/Anna Ternheim/Somebody Outside [Limited Edition]                                                            0.000019   perl                
09:20:01.043  lstat                                  16 I Say No (Naked Version).mp3                                                                                                                         0.000014   perl                
09:20:01.043  open              F=9        (R_____)  .                                                                                                                                                       0.000007   perl                
09:20:01.043  fcntl             F=9   <GETPATH>                                                                                                                                                              0.000009   perl                
09:20:01.043  close             F=9                                                                                                                                                                          0.000008   perl                
09:20:01.043  fchdir            F=6                                                                                                                                                                          0.000003   perl                
09:20:01.043  close             F=6                                                                                                                                                                          0.000004   perl                
09:20:01.043  stat                                   Tunes Music/Anna Ternheim/Somebody Outside [Limited Edition]/16 I Say No (Naked Version).mp3                                                            0.000012   perl                
09:20:01.043  stat                                   Tunes Music/Anna Ternheim/Somebody Outside [Limited Edition]/16 I Say No (Naked Version).mp3                                                            0.000031   perl                
09:20:01.044  open              F=6        (R_____)  Tunes Music/Anna Ternheim/Somebody Outside [Limited Edition]/16 I Say No (Naked Version).mp3                                                            0.000038   perl                
09:20:01.044  fstat             F=6                                                                                                                                                                          0.000006   perl                
09:20:01.044  fcntl             F=6   <SETFD>                                                                                                                                                                0.000003   perl                
09:20:01.044  lseek             F=6    O=0x00000000         <SEEK_CUR>                                                                                                                                       0.000004   perl                
09:20:01.044  lseek             F=6    O=0x00369000         <SEEK_SET>                                                                                                                                       0.000002   perl                
09:20:01.046  read              F=6    B=0x8df                                                                                                                                                               0.002412 W perl                
09:20:01.046  read              F=6    B=0x0                                                                                                                                                                 0.000008   perl                
09:20:01.046  lseek             F=6    O=0x00369000         <SEEK_SET>                                                                                                                                       0.000004   perl                
09:20:01.046  lseek             F=6    O=0x0036985f         <SEEK_SET>                                                                                                                                       0.000002   perl                
09:20:01.046  lseek             F=6    O=0x00369000         <SEEK_SET>                                                                                                                                       0.000002   perl                
09:20:01.046  read              F=6    B=0x8df                                                                                                                                                               0.000012   perl                
09:20:01.046  lseek             F=6    O=0x00000000         <SEEK_SET>                                                                                                                                       0.000002   perl                
09:20:01.056  read              F=6    B=0x1000                                                                                                                                                              0.009830 W perl                
09:20:01.057  read              F=6    B=0x1000                                                                                                                                                              0.000333   perl                
09:20:01.057  read              F=6    B=0x1000                                                                                                                                                              0.000205   perl                
09:20:01.057  read              F=6    B=0x1000                                                                                                                                                              0.000229   perl                
09:20:01.057  read              F=6    B=0x1000                                                                                                                                                              0.000034   perl                
09:20:01.058  read              F=6    B=0x1000                                                                                                                                                              0.000260   perl                
09:20:01.060  stat                                   Tunes Music/Anna Ternheim/Somebody Outside [Limited Edition]/16 I Say No (Naked Version).mp3                                                            0.000051   perl                
09:20:01.060  lseek             F=6    O=0x00369000         <SEEK_SET>                                                                                                                                       0.000004   perl                
09:20:01.060  read              F=6    B=0x8df                                                                                                                                                               0.000032   perl                
09:20:01.060  read              F=6    B=0x0                                                                                                                                                                 0.000003   perl                
09:20:01.060  lseek             F=6    O=0x00000000         <SEEK_SET>                                                                                                                                       0.000002   perl                
09:20:01.060  lseek             F=6    O=0x00000000         <SEEK_SET>                                                                                                                                       0.000002   perl                
09:20:01.060  read              F=6    B=0x1000                                                                                                                                                              0.000011   perl                
09:20:01.060  lseek             F=6    O=0x00005000         <SEEK_SET>                                                                                                                                       0.000003   perl                
09:20:01.060  read              F=6    B=0x1000                                                                                                                                                              0.000011   perl                
09:20:01.060  lseek             F=6    O=0x00369000         <SEEK_SET>                                                                                                                                       0.000002   perl                
09:20:01.060  read              F=6    B=0x8df                                                                                                                                                               0.000013   perl                
09:20:01.060  read              F=6    B=0x0                                                                                                                                                                 0.000003   perl                
09:20:01.060  lseek             F=6    O=0x00369000         <SEEK_SET>                                                                                                                                       0.000002   perl                
09:20:01.060  lseek             F=6    O=0x0036985f         <SEEK_SET>                                                                                                                                       0.000010   perl                
09:20:01.060  lseek             F=6    O=0x00369000         <SEEK_SET>                                                                                                                                       0.000002   perl                
09:20:01.060  read              F=6    B=0x8df                                                                                                                                                               0.000007   perl                
09:20:01.061  fstat             F=6                                                                                                                                                                          0.000017   perl                
09:20:01.061  fcntl             F=6   <GETFL>                                                                                                                                                                0.000003   perl                
09:20:01.061  fstat             F=6                                                                                                                                                                          0.000004   perl                
09:20:01.061  fcntl             F=6   <SETFD>                                                                                                                                                                0.000002   perl                
09:20:01.061  lseek             F=6    O=0x003698df         <SEEK_CUR>                                                                                                                                       0.000003   perl                
09:20:01.061  lseek             F=6    O=0x00005000         <SEEK_SET>                                                                                                                                       0.000002   perl                
09:20:01.061  read              F=6    B=0x1000                                                                                                                                                              0.000025   perl                
09:20:01.061  lseek             F=6    O=0x00369000         <SEEK_SET>                                                                                                                                       0.000005   perl                
09:20:01.061  read              F=6    B=0x8df                                                                                                                                                               0.000017   perl                
09:20:01.062  read              F=6    B=0x0                                                                                                                                                                 0.000007   perl                
09:20:01.062  lseek             F=6    O=0x00369000         <SEEK_SET>                                                                                                                                       0.000003   perl                
09:20:01.062  lseek             F=6    O=0x003697f8         <SEEK_SET>                                                                                                                                       0.000002   perl                
09:20:01.062  close             F=6                                                                                                                                                                          0.000004   perl                
09:20:01.062  close             F=9                                                                                                                                                                          0.000002   perl                
09:20:01.062  close             F=6                                                                                                                                                                          0.000014   perl                
09:20:01.062  stat                                   Tunes Music/Anna Ternheim/Somebody Outside [Limited Edition]/16 I Say No (Naked Version).mp3                                                            0.000055   perl                
09:20:01.062  stat                                   Tunes Music/Anna Ternheim/Somebody Outside [Limited Edition]/16 I Say No (Naked Version).mp3                                                            0.000009   perl                
09:20:01.067  write             F=8    B=0x5                                                                                                                                                                 0.000053   perl                
09:20:01.067  read              F=8    B=0xb                                                                                                                                                                 0.000128 W perl                
09:20:01.067  write             F=8    B=0x299                                                                                                                                                               0.000041   perl                
09:20:01.068  read              F=8    B=0xd                                                                                                                                                                 0.000802 W perl                
09:20:01.071  write             F=8    B=0x5                                                                                                                                                                 0.000060   perl                
09:20:01.071  read              F=8    B=0xb                                                                                                                                                                 0.000166 W perl                
09:20:01.071  write             F=8    B=0x80                                                                                                                                                                0.000032   perl                
09:20:01.072  read              F=8    B=0x15a                                                                                                                                                               0.000544 W perl                
09:20:01.074  write             F=8    B=0x5                                                                                                                                                                 0.000060   perl                
09:20:01.074  read              F=8    B=0xb                                                                                                                                                                 0.000164 W perl                
09:20:01.074  write             F=8    B=0x91                                                                                                                                                                0.000030   perl                
09:20:01.075  read              F=8    B=0x8d                                                                                                                                                                0.000379 W perl                
09:20:01.076  write             F=8    B=0x5                                                                                                                                                                 0.000047   perl                
09:20:01.076  read              F=8    B=0xb                                                                                                                                                                 0.000129 W perl                
09:20:01.076  write             F=8    B=0x40                                                                                                                                                                0.000034   perl                
09:20:01.077  read              F=8    B=0xb                                                                                                                                                                 0.000393 W perl                
09:20:01.078  write             F=8    B=0x5                                                                                                                                                                 0.000061   perl                
09:20:01.079  read              F=8    B=0xb                                                                                                                                                                 0.000135 W perl                
09:20:01.079  write             F=8    B=0xa3                                                                                                                                                                0.000025   perl                
09:20:01.079  read              F=8    B=0x1e6                                                                                                                                                               0.000506 W perl                
09:20:01.081  write             F=8    B=0x5                                                                                                                                                                 0.000050   perl                
09:20:01.082  read              F=8    B=0xb                                                                                                                                                                 0.000099 W perl                
09:20:01.082  write             F=8    B=0xd8                                                                                                                                                                0.000039   perl                
09:20:01.082  read              F=8    B=0xe4                                                                                                                                                                0.000423 W perl                
09:20:01.084  write             F=8    B=0x5                                                                                                                                                                 0.000055   perl                
09:20:01.084  read              F=8    B=0xb                                                                                                                                                                 0.000166 W perl                
09:20:01.084  write             F=8    B=0x58                                                                                                                                                                0.000029   perl                
09:20:01.085  read              F=8    B=0xb                                                                                                                                                                 0.000383 W perl                
09:20:01.088  write             F=8    B=0x5                                                                                                                                                                 0.000051   perl                
09:20:01.088  read              F=8    B=0xb                                                                                                                                                                 0.000157 W perl                
09:20:01.088  write             F=8    B=0xf9                                                                                                                                                                0.000036   perl                
09:20:01.089  read              F=8    B=0x3f1                                                                                                                                                               0.000471 W perl                
09:20:01.093  write             F=8    B=0x5                                                                                                                                                                 0.000052   perl                
09:20:01.093  read              F=8    B=0xb                                                                                                                                                                 0.000117 W perl                
09:20:01.093  write             F=8    B=0xd4                                                                                                                                                                0.000030   perl                
09:20:01.094  read              F=8    B=0xf0                                                                                                                                                                0.000362 W perl                
09:20:01.096  write             F=8    B=0x5                                                                                                                                                                 0.000057   perl                
09:20:01.096  read              F=8    B=0xb                                                                                                                                                                 0.000139 W perl                
09:20:01.096  write             F=8    B=0x39                                                                                                                                                                0.000030   perl                
09:20:01.097  read              F=8    B=0x34                                                                                                                                                                0.000658 W perl                
09:20:01.098  write             F=8    B=0x5                                                                                                                                                                 0.000063   perl                
09:20:01.099  read              F=8    B=0xb                                                                                                                                                                 0.000139 W perl                
09:20:01.099  write             F=8    B=0x3c                                                                                                                                                                0.000027   perl                
09:20:01.099  read              F=8    B=0x4f                                                                                                                                                                0.000395 W perl                
09:20:01.101  write             F=8    B=0x5                                                                                                                                                                 0.000051   perl                
09:20:01.101  read              F=8    B=0xb                                                                                                                                                                 0.000096 W perl                
09:20:01.101  write             F=8    B=0x71                                                                                                                                                                0.000034   perl                
09:20:01.102  read              F=8    B=0xb9                                                                                                                                                                0.000504 W perl                
09:20:01.103  write             F=8    B=0x5                                                                                                                                                                 0.000046   perl                
09:20:01.103  read              F=8    B=0xb                                                                                                                                                                 0.000133 W perl                
09:20:01.103  write             F=8    B=0x49                                                                                                                                                                0.000028   perl                
09:20:01.103  read              F=8    B=0xb                                                                                                                                                                 0.000338 W perl                
09:20:01.105  open              F=6        (R_____)  . 
Comment 8 Michael Herger 2008-06-09 06:29:27 UTC
Ok, you seem savvy enough so I can through a patch at you :-)

Let's try disabling the alias handling. All you have to do is disable the inclusion of the modules needed:

Index: /Users/mh/Documents/workspace/trunk/server/Slim/Utils/Misc.pm
===================================================================
--- /Users/mh/Documents/workspace/trunk/server/Slim/Utils/Misc.pm	(revision 20533)
+++ /Users/mh/Documents/workspace/trunk/server/Slim/Utils/Misc.pm	(working copy)
@@ -75,7 +75,7 @@
 	
 	elsif ($^O =~/darwin/i) {
 		# OSX 10.3 doesn't have the modules needed to follow aliases
-		$canFollowAlias = !Slim::bootstrap::tryModuleLoad('Mac::Errors', 'Mac::Files', 'Mac::Resources', 'nowarn');
+#		$canFollowAlias = !Slim::bootstrap::tryModuleLoad('Mac::Errors', 'Mac::Files', 'Mac::Resources', 'nowarn');
 	}
 }
 

Then run another full scan. Does this change the behaviour?
Comment 9 Bill Eccles 2008-06-09 06:36:58 UTC
Yup. Scanning now works. Nothing showing in scanner.log (even with logging at debug) except the occasional DRM note:

[09:31:24.5137] Slim::Schema::Storage::dbh (38) Warning: Unable to connect to the database - trying to bring it up!
[09:31:25.7946] Slim::Schema::Storage::dbh (46) Warning: Issuing rollback() for database handle being DESTROY'd without explicit disconnect() at /Library/PreferencePanes/SqueezeCenter.prefPane/Contents/server/Slim/Schema/Storage.pm line 46.
[09:34:20.6120] Slim::Schema::newTrack (819) Track has DRM -- skipping it!
[09:34:47.0907] MP4::Info::parse_file (419) Warning: Use of uninitialized value in substitution (s///) at /Library/PreferencePanes/SqueezeCenter.prefPane/Contents/server/lib/MP4/Info.pm line 419.
[09:34:47.0913] MP4::Info::parse_file (419) Warning: Use of uninitialized value in substitution (s///) at /Library/PreferencePanes/SqueezeCenter.prefPane/Contents/server/lib/MP4/Info.pm line 419.
[09:35:11.8572] Slim::Schema::newTrack (819) Track has DRM -- skipping it!
[09:31:24.5137] Slim::Schema::Storage::dbh (38) Warning: Unable to connect to the database - trying to bring it up!
[09:31:25.7946] Slim::Schema::Storage::dbh (46) Warning: Issuing rollback() for database handle being DESTROY'd without explicit disconnect() at /Library/PreferencePanes/SqueezeCenter.prefPane/Contents/server/Slim/Schema/Storage.pm line 46.
[09:34:20.6120] Slim::Schema::newTrack (819) Track has DRM -- skipping it!


153 albums and counting.
Comment 10 Bill Eccles 2008-06-09 06:39:35 UTC
And some of these:

[09:38:35.7967] MPEG::Audio::Frame::broken (616) Warning: substr outside of string at /Library/PreferencePanes/SqueezeCenter.prefPane/Contents/server/lib/MPEG/Audio/Frame.pm line 616, <$mpeg> chunk 4916.

[09:38:35.7972] MPEG::Audio::Frame::broken (616) Warning: Use of uninitialized value in unpack at /Library/PreferencePanes/SqueezeCenter.prefPane/Contents/server/lib/MPEG/Audio/Frame.pm line 616, <$mpeg> chunk 4916.

[09:38:35.7977] MPEG::Audio::Frame::broken (618) Warning: Use of uninitialized value in right bitshift (>>) at /Library/PreferencePanes/SqueezeCenter.prefPane/Contents/server/lib/MPEG/Audio/Frame.pm line 618, <$mpeg> chunk 4916.


Comment 11 Michael Herger 2008-06-09 07:04:17 UTC
Created attachment 3413 [details]
fix file closing

Argh... The file closing was still broken. Here's another try. 

Could you please tell me what "uname -a" says (run in the context of the user who's running SC)?

Thanks for helping me test this!
Comment 12 Bill Eccles 2008-06-09 07:09:15 UTC
Darwin shr-g5.eccles.net 9.3.0 Darwin Kernel Version 9.3.0: Fri May 23 00:51:20 PDT 2008; root:xnu-1228.5.18~1/RELEASE_PPC Power Macintosh

Yeah, PPC. G5s.
Comment 13 Michael Herger 2008-06-09 07:38:01 UTC
I'm sorry, I meant "ulimit -a".

Did you have a chance to give this new patch a try?
Comment 14 Bill Eccles 2008-06-09 08:01:08 UTC
core file size          (blocks, -c) 0
data seg size           (kbytes, -d) unlimited
file size               (blocks, -f) unlimited
max locked memory       (kbytes, -l) unlimited
max memory size         (kbytes, -m) unlimited
open files                      (-n) 256
pipe size            (512 bytes, -p) 1
stack size              (kbytes, -s) 8192
cpu time               (seconds, -t) unlimited
max user processes              (-u) 266
virtual memory          (kbytes, -v) unlimited

Yes, the patch worked, see Comment #9--all's OK in the world of scanning with the patch.
Comment 15 Michael Herger 2008-06-09 08:11:27 UTC
> Yes, the patch worked, see Comment #9--all's OK in the world of scanning with
> the patch.

Ok, great news! Thanks a lot for testing so quickly!
Comment 16 Michael Herger 2008-06-09 08:15:55 UTC
> Yes, the patch worked, see Comment #9--all's OK in the world of scanning with
> the patch.

Ah... that comment was before my latest patch. The previous attempt was simply disabling Alias parsing - a workaround, not a fix. I've uploaded another patch which should parse Aliases, but correctly close the handles (see comment #11). Did you try this one as well?
Comment 17 Bill Eccles 2008-06-09 08:19:43 UTC
Nope--not yet. I'll give that a shot now.

Comment 18 Bill Eccles 2008-06-09 09:00:40 UTC
Created attachment 3416 [details]
Patched Misc.m
Comment 19 Bill Eccles 2008-06-09 09:06:52 UTC
> Created an attachment (id=3416) [details]
> Patched Misc.m
> 

I had a bit of trouble patching my Misc.pm this go-round (we had some whitespace differences for some reason), so I'm sending the current Misc.pm so you can see if it's exactly what you expect Misc.pm to look like post-patch.

Note that I undid the previous patch, so this should include all of the alias-handling stuff.

Now, the moment you've all been waiting for... does it work...?

Yes.

The scanning is going again with this patch applied and it has found at least 1275 albums, and only the usual warnings are showing up in scanner.log.

BTW, I'm running the most ancient of ancient SliMP3s. It's still cookin' right along. But it sure would be nice to have one of those new little boxes, if you can convince your overlords (tongue-in-cheek) at Logitech to part with one. :-)
Comment 20 Michael Herger 2008-06-09 09:16:30 UTC
woot! Thanks again for testing.

change 20551
Comment 21 Bill Eccles 2008-06-09 09:38:09 UTC
You're welcome.

/Bill

Comment 22 Chris Owens 2009-07-31 10:22:24 UTC
Reduce number of active targets for SC