(new Soapbox())->shout(array_map('strtoupper', $opinions)); //Shaun's blog


Me, elsewhere

GitHub
parseword
Miscellaneous public code

snuze
A PHP API client for Reddit

Twitter
@parseword
I don't tweet much

XMPP chat
xmpp@shaunc.com
(Pidgin, Miranda, Swift, etc.)


Perfect is the enemy of good enough.

Resolving dashboardadvisoryd errors in an old Mac's system.log

Posted November 22, 2017 by shaun

On a relatively old Mac that I was inspecting recently, I saw a load of entries in the system.log generated by a process named dashboardadvisoryd. The errors follow this pattern:

    dashboardadvisoryd[4326]: fetch: advisory list is not the correct format, could not obtain being marker
    dashboardadvisoryd[4326]: fetch: unable to get sql from net
    dashboardadvisoryd[4326]: fetch-parsers: unable to fetch data from read stream

As is common with Mac errors, a quick search turned up only one result, an unanswered 10-year-old post on the Apple forums.

Not being familiar with dashboardadvisoryd, I poked around a bit to see if I could track down what's throwing the error. The binary itself is part of the Dock, and lives at:

    /System/Library/CoreServices/Dock.app/Contents/Resources/dashboardadvisoryd

It has a preferences file and a couple of sqlite3 databases,

    /private/etc/mach_init.d/dashboardadvisoryd.plist
    /private/var/db/.dashboardadvisory.database
    /private/var/db/dashboardadvisory.database

These were dead ends; the database files, which are of identical size with identical April 2017 mtimes, are empty, save for three rows in the "meta" table:

    select * from meta;
    serial-number-time-stamp|399067189.42373
    serial-number|1
    last-fetch|513114816.438282

With nothing there, I ran strings on the dashboardadvisoryd binary itself and found the likely culprit. It looks like the process is trying to fetch data from a file at http://www.apple.com/widgets/parser.info. That file exists (after a redirect to the same URI over https), but only contains 4 spaces. Whatever data dashboardadvisoryd is expecting to find isn't there.

Searching for that URI, I wound up on this ancient MacWorld post which explains what dashboardadvisoryd does: it's checking for new or updated Dock widgets, and/or verifying the integrity of the ones you have installed. I imagine Apple is no longer supporting this, hence the empty file on their site and the subsequent error messages when the process tries to load it.

    sudo launchctl unload -w /System/Library/LaunchDaemons/com.apple.dashboard.advisory.fetch.plist

...seems to have disabled the process and put an end to the log messages.

As an aside, the text "could not obtain being marker" in the error contains a typo, it should say "begin marker," as the companion string "could not obtain end marker" is in the binary.


Recent articles

📰 Compiling Doxygen on FreeBSD without LaTeX and Ghostscript

📰 Introducing Snuze, a PHP client for the Reddit API

📰 jisusaiche: Java's installer telemetry

📰 BIND client log error "query_find: query_getdb failed"

📰 Resolving "The lang/perl5.24 port has been deleted: Has expired" portmaster error

📰 Armagaddon2 interim fix for Firefox 56 and other old versions

📰 Strange DNS queries: qname "miep", qtype ANY

📰 Undeliverable as addressed: A massive broken spam campaign?

📰 Using WITH_META_MODE and ccache for FreeBSD build boosts

📰 Resolving subversion error E000013: Unable to create pristine install stream

📰 Enhancements to SmokePing's AnotherDNS probe

📰 Generating vanity DNSSEC key tags

📰 DDoS involving forged packets from 23.225.141.70

📰 Website integrity monitoring through version control

📰 SpamAssassin 3.4.2 fixes security problems, adds HashBL and phishing plugins

▲ Back to top | Permalink to this page