Compact -B did not recover space for some db

i have a program doc that runs compact -B on user database every night. It is able to recover whitespace for most databases but not all.

From the log, its says 0% recovered, but if i manually compact it, it recovers space.

anybody know why is it like this?