[mythtv-users] mythlogserver fixes/0.26 OS-X?

Glenn xdrcft at sonic.net
Wed Jan 30 18:24:21 UTC 2013


> At 9:39 AM -0800 1/24/13, Glenn wrote:
>> On Jan 24, 2013, at 3:58 AM, mythtv-users-request at mythtv.org wrote:
>>> At 10:43 AM -0800 1/22/13, Glenn wrote:
>>>> Can anyone tell me if mythlogserver is expected to work properly on
>>>> OS-X after building with osx-packager-qtsdk.pl from git, dated
>>>> 1/6/13?
>>>> 
>>>> Other than console logging, I can't seem to get logging to work.
>>>> File logging with mythbackend --logpath <path to log directory> and
>>>> going to the internal backend web server (127.0.0.1:6544) show no
>>>> entries.
>>>> 
>>>> Inside MythBackend.app I can't find a binary named mythlogserver ,
>>>> nor can I see a process of that name after invoking "top" when
>>>> mythbackend is running. Also, messages on the console indicate
>>>> attempts to start mythlogserver every 30 seconds.
>>> 
>>> Logging is broken with 0.26 on OS X.  See:
>>> 
>>> http://code.mythtv.org/trac/ticket/10890


I'm slowly making progress of sorts on this. At first, MythBackend tried to start mythlogserver 30 seconds, and now that I've made improvements it tries to start mythlogserver every 6 seconds :-(

I got the build/packaging script from git:
	git clone git://github.com/MythTV/packaging.git.

My builds are made with
	./osx-packager-qtsdk.pl -buildprofile 0.26-fixes -qtsdk /Users/dgktkr/QtSDK/Desktop/Qt/4.8.1/gcc -enable-backend -pluginskip -verbose

Looking at the logs after MythBackend was run, it appeared that the failure to launch mythlogserver was because MythBackend couldn't find it. So I looked around in the build directories, found it and put a copy into the MacOS subdirectory of MythBackend.app.

That didn't work, however, and the crash log revealed why: even though the mythlogserver executable was found, the shared libraries it needed weren't . After reading up on that and studying the script osx-packager-qtsdk.pl (I'm not familiar with Perl, so this isn't easy), I added "mythlogserver" to the list of binaries to be bundled up in MythBackend.app (line 1909 of osx-packager-qtsdk.pl). After completely rebuilding using that modified script, mythlogserver can find the libraries it needs. However, it quickly crashes. The top, and most relevant part of the crash log is included below. It seems that the problem now is a system programming problem, not just a packaging/bundling issue: "USING_FORK_WITHOUT_EXEC_IS_NOT_SUPPORTED_BY_FILE_MANAGER". On the face of it, a solution will require some detailed knowledge of OS-X system programming, which is way beyond me.

dgktkr

*********************************************************************************************

Process:         mythlogserver [75229]
Path:            /Applications/MythTV/MythBackend.app/Contents/MacOS/mythlogserver
Identifier:      mythlogserver
Version:         ??? (???)
Code Type:       X86-64 (Native)
Parent Process:  ??? [1]

Date/Time:       2013-01-30 09:37:49.774 -0800
OS Version:      Mac OS X 10.7.5 (11G63)
Report Version:  9

Crashed Thread:  0  Dispatch queue: com.apple.main-thread

Exception Type:  EXC_CRASH (SIGABRT)
Exception Codes: 0x0000000000000000, 0x0000000000000000

Application Specific Information:
abort() called
*** multi-threaded process forked ***
objc[75228]: garbage collection is OFF
USING_FORK_WITHOUT_EXEC_IS_NOT_SUPPORTED_BY_FILE_MANAGER

Thread 0 Crashed:: Dispatch queue: com.apple.main-thread
0   libsystem_kernel.dylib        	0x00007fff94dc1ce2 __pthread_kill + 10
1   libsystem_c.dylib             	0x00007fff8dc197d2 pthread_kill + 95
2   libsystem_c.dylib             	0x00007fff8dc0aa7a abort + 143
3   com.apple.CoreServices.CarbonCore	0x00007fff95e62ec0 _SCSessionUniverseByUIDAcquireAndLock + 402
4   com.apple.CoreServices.CarbonCore	0x00007fff95e5ce29 FSNodeStorageGetAndLockCurrentUniverse + 103
5   com.apple.CoreServices.CarbonCore	0x00007fff95e5cc91 FileIDTreeGetAndLockVolumeEntryForDeviceID + 40
6   com.apple.CoreServices.CarbonCore	0x00007fff95e5cc47 FSMount::FSMount(unsigned int, FSMountNumberType, short*, unsigned int const*) + 171
7   com.apple.CoreServices.CarbonCore	0x00007fff95e5b491 PathGetObjectInfo(char const*, unsigned int, unsigned int, short*, unsigned int*, unsigned int*, char*, unsigned int*, unsigned char*) + 335
8   com.apple.CoreServices.CarbonCore	0x00007fff95e5b279 FSPathMakeRefInternal(unsigned char const*, unsigned int, unsigned int, FSRef*, unsigned char*) + 97
9   QtCore                        	0x00000001073c8349 QFileSystemEngine::fillMetaData(QFileSystemEntry const&, QFileSystemMetaData&, QFlags<QFileSystemMetaData::MetaDataFlag>) + 1113
10  QtCore                        	0x00000001073c587c QFSFileEnginePrivate::doStat(QFlags<QFileSystemMetaData::MetaDataFlag>) const + 188
11  QtCore                        	0x00000001073c5b1b QFSFileEngine::fileFlags(QFlags<QAbstractFileEngine::FileFlag>) const + 139
12  QtCore                        	0x0000000107377b5f QFile::exists() const + 47
13  mythupnp                      	0x00000001060cafd1 XmlConfiguration::Load() + 161 (configuration.cpp:49)
14  mythupnp                      	0x00000001060cae99 XmlConfiguration::XmlConfiguration(QString const&) + 169 (configuration.cpp:37)
15  myth                          	0x0000000106690d0a MythContextPrivate::Init(bool, bool, bool, bool) + 106 (mythcontext.cpp:280)
16  myth                          	0x000000010669a9cd MythContext::Init(bool, bool, bool, bool) + 2269 (mythcontext.cpp:1156)
17  mythlogserver                 	0x00000001044d036c main + 1132 (main.cpp:117)
18  mythlogserver                 	0x00000001044cfd84 start + 52

Thread 1:
0   libsystem_kernel.dylib        	0x00007fff94dc1bca __psynch_cvwait + 10
…
…



More information about the mythtv-users mailing list