I don't think an init script should make that decision for you. Maybe the pid files are stale, but maybe there's a new non-celery process that happened to get assigned the same pid. I don't think we want to own this much responsibility.