Thanks...upallnight. I don't remember exactly when the battery was replaced but it should be at least 40k miles ago. Currently 141k miles.
Just checked battery voltage again it showed 12.3V now.
I am still wondering why would this happen right after the mechanic did some work on the x5??