> http://www.readwriteweb.com/hack/2011/12/google-releases-mac-management.php
Interesting. Is there now a Python-Objective C bridge?
Any guesses as to how long it lasts?
I found this snippet of code especially interesting. I'd trust that
Google knows better than this:
# this looks weird, but it's the simplest way to do an update or insert
# operation in sqlite, and atomically update number_times, that I could
# figure out. plus we avoid using transactions and multiple SQL
# statements in most cases.
v = (app_version, app_path, now, event, bundle_id)
q = conn.execute(APPLICATION_USAGE_TABLE_UPDATE, v)
if q.rowcount == 0:
number_times = 1
v = (event, bundle_id, app_version, app_path, now, number_times)
conn.execute(APPLICATION_USAGE_TABLE_INSERT, v)
If you don't see the bug: If there is no entry for the application,
then a new entry for the application is NON-ATOMICALLY added. Just
imagine a second copy of this program running after the first update
fails.
--
Political and economic blog of a strict constitutionalist
http://StrictConstitution.BlogSpot.com
This message may have been spell checked by a laptop kitten.
_______________________________________________
MacOSX-admin mailing list
[email protected]
http://www.omnigroup.com/mailman/listinfo/macosx-admin