SqueezeCenter and Scalar::Util

After upgrading to snv_93 SqueezeCenter (quite predictably) refused to start again. The error was:

# ./slimrun
Weak references are not implemented in the version of perl at /usr/perl5/site_perl/5.8.4/DBIx/Class/Schema.pm line 8
BEGIN failed–compilation aborted at /usr/perl5/site_perl/5.8.4/DBIx/Class/Schema.pm line 8.
Compilation failed in require at (eval 113) line 3.
…propagated at /usr/perl5/5.8.4/lib/base.pm line 85.
BEGIN failed–compilation aborted at /opt/csw/squeezecenter-7.2-21059-noCPAN/Slim/Schema.pm line 29.
Compilation failed in require at /opt/csw/squeezecenter-7.2-21059-noCPAN/Slim/Utils/Progress.pm line 11.
BEGIN failed–compilation aborted at /opt/csw/squeezecenter-7.2-21059-noCPAN/Slim/Utils/Progress.pm line 11.
Compilation failed in require at /opt/csw/squeezecenter-7.2-21059-noCPAN/Slim/Utils/Scanner.pm line 45.
. . .

The issue is related to the same Scalar::Util module. Just force install it like explained here.

MAC for UNIX

MAC (Monkey’s Audio Converter) for Windows can be downloaded from http://www.monkeysaudio.com. But what about a UNIX version? Two years ago v3.99 Update 4 Build 5 was released but then the development stopped because of some contradictory licensing reasons. That means that MAC for UNIX is not maintained anymore. Fortunately, the old version still works. I compiled it under Solaris 11 x86 and use it for SqueezeCenter.

The source tar file is attached to the post: mac-399-u4-b5.tgz (MD5)

Some notes.

  • To check the MD5 digest:
    % md5sum -c mac-3.99-u4-b5.tgz.md5
    mac-3.99-u4-b5.tgz: OK
  • Always use –prefix=/usr/local (or any other directory in which you keep non-standard files) configuration parameter, because by default the prefix is set to /usr. You might overwrite Solaris file /usr/bin/mac (message authentication code):
    % ./configure –prefix=/usr/local
  • If you are going to use –enable-assembly=yes option (you need yasm to compile assembler code) under Solaris change “sh” to “bash” in src/MACLib/Assembly/Makefile in the following line (line 214 in my case):
    STRIP_FPIC = sh $(top_srcdir)/strip_fPIC.sh

    This is what the line should look like:

    STRIP_FPIC = bash $(top_srcdir)/strip_fPIC.sh
  • There is already a program /bin/mac (see above). If you don’t want to use the full path to the MAC, simply rename the latter:
    # mv /usr/local/bin/mac /usr/local/bin/MAC

Vermillion on OpenSolaris

The current version can be found here: http://dlc.sun.com/osol/jds/downloads/current/

Tried to install Vermillion 94 yesterday (GNOME 2.23.4) but had to fail back to nevada_92 (GNOME 2.22.2), because 94 was almost unusable (e.g. right button did not work, window manager did not want to start automatically, etc). Both installers failed to install JDS correclty (missed or incorrectly configured packages and files).
For example, libgnome-desktop-2.so.2 was missing in v94.

2L against the loudness war or DSD64 download

Mozart Violin concerto in D major

2L (Lindberg Lyd Ltd) is about to hammer another nail into the CD’s coffin. You can buy and download albums (not many at that time)  in DSD64, FLAC 24/96 and FLAC 24/96 multichannel formats  from their website. Or test taste the HiRez for free here.

The picture shows sono- and spectrogram of W.A.Mozart: Violin concerto in D major (KV 218) – Allegro
Marianne Thorsen / TrondheimSolistene / Øyvind Gimse (Stereo WAV 24bit/96kHz). And it sounds accordingly 😉

What a difference from the crap like this recording!

More info:

Un(un)mountable file system

After hitting this bug (yes, again and again) I had to unmount the broken file system and run fsck (twice). But then I apparently hit anoter bug (or a feature?) – I could not mount the file system back.

xeon# mount /dev/dsk/c2d0s3 /export/docs
mount: /dev/dsk/c2d0s3 is already mounted or /export/docs is busy

Neither pwdx not lsof showed any processes using /export/docs. The solution was to recreate the directory:

xeon# rm -rf docs
xeon# mkdir docs
xeon# mount /dev/dsk/c2d0s3 /export/docs (after a loooong pause)
xeon# mount | fgrep docs
/export/docs on /dev/dsk/c2d0s3 read/write/setuid/devices/intr/largefiles/logging/xattr/onerror=panic/dev=1980043 on Tue Jul  1 01:07:08 2008

Unkillable process

Snv_92 has been entertaining me since I upgraded from quite stable snv_88. I’m hitting a bug after a bug. (See here).

This is the latest – unkillable process, which can’t be killed with kill -9 or zone reboot. Reboot just hangs. Truss ends up with:

xeon# kill -9 22131
xeon# ps -ef | fgrep 22131
root 22728 5471 0 00:49:27 pts/5 0:00 fgrep 22131
alekz 22131 1 0 20:48:30 zoneconsole 0:03 /opt/sfw/lib/firefox/firefox-bin -P Sun –no-remote
xeon# truss -p 22131
^Ctruss: unanticipated system error: 22131

dtrace shows nothing. The only workaround is to reboot the entire system.

See also:

Revenge of the unkillable process
Unkillable process
Bug ID 6455727

Hard drives: Enterprise vs. Desktop

What to choose for a home server? The most important difference is not the accelerometers or MTBF but whether the disks will be used in RAID’s.

An excerpt from Western-Digital FAQ:

When an error is found on a desktop edition hard drive, the drive will enter into a deep recovery cycle to attempt to repair the error, recover the data from the problematic area, and then reallocate a dedicated area to replace the problematic area. This process can take up to 2 minutes depending on the severity of the issue. Most RAID controllers allow a very short amount of time for a hard drive to recover from an error. If a hard drive takes too long to complete this process, the drive will be dropped from the RAID array. Most RAID controllers allow from 7 to 15 seconds for error recovery before dropping a hard drive from an array. Western Digital does not recommend installing desktop edition hard drives in an enterprise environment (on a RAID controller).

Western Digital RAID edition hard drives have a feature called TLER (Time Limited Error Recovery) which stops the hard drive from entering into a deep recovery cycle. The hard drive will only spend 7 seconds to attempt to recover. This means that the hard drive will not be dropped from a RAID array.

If you install a RAID edition hard drive in a desktop computer, the computer system may report more errors than a normal desktop hard drive (due to the TLER feature). Western Digital does not recommend installing RAID edition hard drives into a desktop computer environment.

Source: What is the difference between Desktop edition and RAID (Enterprise) edition hard drives?