Subtle signal-delivery behavior on OS X (and some other BSD systems)

An online article discussed a subtle behavior on OS X, NetBSD, and OpenBSD delivering the SIGPROF signal to multithreaded programs: http://research.swtch.com/macpprof. In a nutshell, the current implementations in those systems cannot do it right to deliver the signal to a running thread, which most other systems would do.

This behavioral difference affects profilers that rely on SIGPROF to avoid sampling bias. For example, we can see a short description here: https://code.google.com/p/lightweight-java-profiler/issues/detail?id=2.

If the Photos app for Mac stuck on “Updating”…

If you have enabled iCloud Photo Library, and just restored your whole system from a Time-Machine backup, you would very likely see your Photos app keeps showing “Updating”, and you would not see anything in your shared albums (that’s what my system encountered). In the Console, you may see an error log message following a message of “New connection request” from cloudphotosd. The error message shows “RDErrorServiceDatabaseOpenError”.

In that case, delete the directory “~/Library/Containers/com.apple.cloudphotosd/Data/Library/Application Support/com.apple.cloudphotosd/” to force the Photos and its backend services to rebuild the internal database.