{"id":1550,"date":"2009-09-19T07:59:30","date_gmt":"2009-09-19T11:59:30","guid":{"rendered":"http:\/\/www.schollnick.net\/wordpress\/?p=1550"},"modified":"2010-02-13T04:35:05","modified_gmt":"2010-02-13T08:35:05","slug":"preference-plist-was-not-a-dictionary","status":"publish","type":"post","link":"http:\/\/www.schollnick.net\/wordpress\/2009\/09\/preference-plist-was-not-a-dictionary\/","title":{"rendered":"Preference plist was NOT a dictionary."},"content":{"rendered":"<p>It&#8217;s not a dictionary? \u00c2\u00a0Well, that&#8217;s right! \u00c2\u00a0My preferences aren&#8217;t a dictionary&#8230;.<\/p>\n<p><strong>Updated 10\/27\/2009, with a potential solution&#8230;<br \/>\nUpdated 02\/13\/2010, with a solution&#8230; <\/strong><\/p>\n<p>Seriously though, if you see the following in your console log:<br \/>\n<code><br \/>\n9\/18\/09 12:36:49 PM<span style=\"white-space: pre;\"> <\/span>PreferenceSyncClient[60967]<span style=\"white-space: pre;\"> <\/span>Preference plist was NOT a dictionary.<br \/>\n9\/18\/09 12:36:49 PM<span style=\"white-space: pre;\"> <\/span>PreferenceSyncClient[60967]<span style=\"white-space: pre;\"> <\/span>Preference plist was NOT a dictionary.<br \/>\n9\/18\/09 12:36:49 PM<span style=\"white-space: pre;\"> <\/span>PreferenceSyncClient[60967]<span style=\"white-space: pre;\"> <\/span>Preference plist was NOT a dictionary.<br \/>\n9\/18\/09 12:36:49 PM<span style=\"white-space: pre;\"> <\/span>PreferenceSyncClient[60967]<span style=\"white-space: pre;\"> <\/span>Preference plist was NOT a dictionary.<\/code><\/p>\n<p>You might have an small issue to resolve&#8230;<\/p>\n<p>In my case, that message has been occurring every hour&#8230;  From some research it appears to be MobileMe related&#8230;  But when I checked the MobileMe status on Nerv, I found a funny thing&#8230;<\/p>\n<p>MobileMe was turned off&#8230;  But I know I see the MobileMe Widget activated, and that message was occurring&#8230;  I re-activated MobileMe, and forced a sync&#8230;<\/p>\n<p>Now, I am waiting to see if that resolved the error in the log&#8230;&#8230; And it hasn&#8217;t&#8230;<\/p>\n<p>So, if anyone has any suggestions on resolving this issue, please feel free to let me know&#8230;<\/p>\n<p><a href=\"http:\/\/nslog.com\/2009\/09\/01\/mobileme_sync_issue\">Here&#8217;s another case of a similar issue&#8230;Except that he&#8217;s had high CPU use, and a stuck MobileMe sync..<\/a>.<\/p>\n<p>Update &#8212; 9\/24\/2009<\/p>\n<p style=\"padding-left: 30px;\">There has been some speculation that this maybe related to MobileMe Syncing (as discussed above), Google Syncing, and at least one set of fingers have been pointed towards Growl. \u00c2\u00a0I have submitted this case to Apple under Radar # 7249814.<\/p>\n<p>Update &#8212; 9\/25\/2009<\/p>\n<p style=\"padding-left: 30px;\">As far as I can tell, all of my preferences (~\/library\/Preferences &amp; \/Library\/Preferences) are intact, and not corrupted&#8230;<\/p>\n<p style=\"padding-left: 30px;\">If you would like to test this, use this small bit of python code:<\/p>\n<div id=\"_mcePaste\" style=\"position: absolute; left: -10000px; top: 362px; width: 1px; height: 1px; overflow-x: hidden; overflow-y: hidden; padding-left: 30px;\">import sys<\/div>\n<div id=\"_mcePaste\" style=\"position: absolute; left: -10000px; top: 362px; width: 1px; height: 1px; overflow-x: hidden; overflow-y: hidden; padding-left: 30px;\">import os<\/div>\n<div id=\"_mcePaste\" style=\"position: absolute; left: -10000px; top: 362px; width: 1px; height: 1px; overflow-x: hidden; overflow-y: hidden; padding-left: 30px;\">directory_to_scan = sys.argv[1].strip()<\/div>\n<div id=\"_mcePaste\" style=\"position: absolute; left: -10000px; top: 362px; width: 1px; height: 1px; overflow-x: hidden; overflow-y: hidden; padding-left: 30px;\">print directory_to_scan<\/div>\n<div id=\"_mcePaste\" style=\"position: absolute; left: -10000px; top: 362px; width: 1px; height: 1px; overflow-x: hidden; overflow-y: hidden; padding-left: 30px;\">files_in_directory = os.listdir ( directory_to_scan )<\/div>\n<div id=\"_mcePaste\" style=\"position: absolute; left: -10000px; top: 362px; width: 1px; height: 1px; overflow-x: hidden; overflow-y: hidden; padding-left: 30px;\">for x in files_in_directory:<\/div>\n<div id=\"_mcePaste\" style=\"position: absolute; left: -10000px; top: 362px; width: 1px; height: 1px; overflow-x: hidden; overflow-y: hidden; padding-left: 30px;\"><span style=\"white-space: pre;\"> <\/span>#print directory_to_scan,&#8221;\/&#8221;,x<\/div>\n<div id=\"_mcePaste\" style=\"position: absolute; left: -10000px; top: 362px; width: 1px; height: 1px; overflow-x: hidden; overflow-y: hidden; padding-left: 30px;\"><span style=\"white-space: pre;\"> <\/span>if x.upper().find (&#8220;.PLIST&#8221;) &lt;&gt; -1:<\/div>\n<div id=\"_mcePaste\" style=\"position: absolute; left: -10000px; top: 362px; width: 1px; height: 1px; overflow-x: hidden; overflow-y: hidden; padding-left: 30px;\"><span style=\"white-space: pre;\"> <\/span>os.system (&#8216;sudo plutil -s &#8220;%s\/%s&#8221;; # Use Plutil in &#8220;lint&#8221; mode to check the plist&#8217; % (directory_to_scan,x) )<\/div>\n<div id=\"_mcePaste\" style=\"position: absolute; left: -10000px; top: 362px; width: 1px; height: 1px; overflow-x: hidden; overflow-y: hidden; padding-left: 30px;\"><span style=\"white-space: pre;\"> <\/span><\/div>\n<p style=\"padding-left: 30px;\"><code><br \/>\nimport sys<br \/>\nimport os<br \/>\ndirectory_to_scan = sys.argv[1].strip()<br \/>\nprint directory_to_scan<br \/>\nfiles_in_directory = os.listdir ( directory_to_scan )<br \/>\nfor x in files_in_directory:<br \/>\n<span style=\"white-space: pre;\"> <\/span>if x.upper().find (\".PLIST\") &lt;&gt; -1:<br \/>\n<span style=\"white-space: pre;\"> <\/span>os.system ('sudo plutil -s \"%s\/%s\"; # Use Plutil in \"lint\" mode to check the plist' % (directory_to_scan,x) )<br \/>\n<span style=\"white-space: pre;\"> <\/span><\/code><\/p>\n<p><span style=\"white-space: pre;\"><span style=\"white-space: normal;\">Update &#8212; 10\/27\/2009<\/span><\/span><\/p>\n<p style=\"padding-left: 30px;\">A posting on the Apple discussions thread mentioned:<\/p>\n<blockquote style=\"padding-left: 30px;\"><p><span style=\"font-family: 'Lucida Grande', Geneva, Arial, Verdana, sans-serif; line-height: 16px; font-size: 12px; border-collapse: collapse; color: #333333;\">I found the problem. It was Google trying to connect to an unknown server. I had downloaded Chrome but didn&#8217;t like it. Anyway, I used HoudahSpot to find everything Google after LittleSnitch reported Google trying to &#8220;phone home&#8221;. I trashed everything GOOGLE and restarted last night. The console message is now gone.<\/span><\/p><\/blockquote>\n<p style=\"padding-left: 30px;\"><span style=\"font-family: 'Lucida Grande', Geneva, Arial, Verdana, sans-serif; line-height: 16px; font-size: 12px; border-collapse: collapse; color: #333333;\"><span style=\"border-collapse: separate; color: #000000; font-family: Georgia, 'Times New Roman', 'Bitstream Charter', Times, serif; line-height: 19px; font-size: 13px;\">That got me thinking&#8230;. \u00c2\u00a0I did at one time have Address Book configured to sync with Google&#8230; \u00c2\u00a0I checked and that is still turned on. \u00c2\u00a0I have turned it off, and I am currently waiting to see if that message disappears&#8230;.<\/span><\/span><\/p>\n<p style=\"padding-left: 30px;\">The files that were created when I configured it, are:<\/p>\n<ul>\n<li>com.google.GoogleContactSyncAgent.plist @ ~\/Library\/LaunchAgents<\/li>\n<li>com.google.ContactSync (folder) @ ~\/Library\/Application Support<\/li>\n<li>com.google.GoogleContactSync.plist @ ~\/Library\/Preferences<\/li>\n<\/ul>\n<p style=\"padding-left: 30px;\">So, if we take the error message at face value, either the LaunchAgent or preference file maybe damaged&#8230;<\/p>\n<p style=\"padding-left: 30px;\"><strong>But of course, the root cause of this issue is that the error message is uninformative, and does not indicate which plist &#8220;is not a dictionary&#8221;. <\/strong>If Apple had indicated which plist was the cause, we would not be investigating this issue.<\/p>\n<p>Update #2 &#8212; 10\/27\/2009<\/p>\n<p style=\"padding-left: 30px;\">Well, that did not seemingly solve the problem for me&#8230;. \u00c2\u00a0I still have the preferences message appearing in the console log on a regular basis&#8230;<\/p>\n<p>Update #3 &#8211; 2\/13\/2010<\/p>\n<p style=\"padding-left: 30px;\">I believe that a solution has been found in the Apple Customer forums&#8230; \u00c2\u00a0The following command, will reproduce the plist was not a dictionary error message&#8230;<\/p>\n<p style=\"padding-left: 30px;\">\/System\/Library\/CoreServices\/PreferenceSyncClient.app\/Contents\/MacOS\/PreferenceSyncClient &#8211;sync &#8211;periodic<\/p>\n<p style=\"padding-left: 30px;\">and the next command will display all the files that have any array in it&#8230;<\/p>\n<p style=\"padding-left: 30px;\">egrep &#8216;^&lt;array&gt;&#8217; ~\/Library\/Preferences\/*<\/p>\n<p style=\"padding-left: 30px;\">I do not suggest deleting these files, instead move them to a different directory. \u00c2\u00a0For example, my iTunes preferences was detected as a file in question&#8230; \u00c2\u00a0As well as the iCal alarmscache file&#8230;. \u00c2\u00a0And neither application was indicating or showing any issues&#8230; \u00c2\u00a0So move the file to a different location, and test to ensure that you are not receiving a false positive&#8230;.<\/p>\n<p style=\"padding-left: 30px;\">egrep just does a pattern match, so it just scanning the files for &#8220;&lt;array&gt;&#8221; being found at the beginning of a line. \u00c2\u00a0I hope to have this confirmed as a solution in a few hours, when I don&#8217;t see this error message in the log file any longer&#8230;<\/p>\n<p style=\"padding-left: 30px;\">\n<p style=\"padding-left: 30px;\">\n","protected":false},"excerpt":{"rendered":"<p>It&#8217;s not a dictionary? \u00c2\u00a0Well, that&#8217;s right! \u00c2\u00a0My preferences aren&#8217;t a dictionary&#8230;. Updated 10\/27\/2009, with a potential solution&#8230; Updated 02\/13\/2010, with a solution&#8230; Seriously though, if you see the following in your console log: 9\/18\/09 12:36:49 PM PreferenceSyncClient[60967] Preference plist was NOT a dictionary. 9\/18\/09 12:36:49 PM PreferenceSyncClient[60967] Preference plist was NOT a dictionary. 9\/18\/09 <a class=\"read-more\" href=\"http:\/\/www.schollnick.net\/wordpress\/2009\/09\/preference-plist-was-not-a-dictionary\/\">[&hellip;]<\/a><\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_monsterinsights_skip_tracking":false,"_monsterinsights_sitenote_active":false,"_monsterinsights_sitenote_note":"","_monsterinsights_sitenote_category":0},"categories":[12,5,25],"tags":[141,154],"_links":{"self":[{"href":"http:\/\/www.schollnick.net\/wordpress\/wp-json\/wp\/v2\/posts\/1550"}],"collection":[{"href":"http:\/\/www.schollnick.net\/wordpress\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"http:\/\/www.schollnick.net\/wordpress\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"http:\/\/www.schollnick.net\/wordpress\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"http:\/\/www.schollnick.net\/wordpress\/wp-json\/wp\/v2\/comments?post=1550"}],"version-history":[{"count":0,"href":"http:\/\/www.schollnick.net\/wordpress\/wp-json\/wp\/v2\/posts\/1550\/revisions"}],"wp:attachment":[{"href":"http:\/\/www.schollnick.net\/wordpress\/wp-json\/wp\/v2\/media?parent=1550"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"http:\/\/www.schollnick.net\/wordpress\/wp-json\/wp\/v2\/categories?post=1550"},{"taxonomy":"post_tag","embeddable":true,"href":"http:\/\/www.schollnick.net\/wordpress\/wp-json\/wp\/v2\/tags?post=1550"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}<!-- WP Super Cache is installed but broken. The constant WPCACHEHOME must be set in the file wp-config.php and point at the WP Super Cache plugin directory. -->