It's impossible to answer your question since you are providing zero detail about your issue. What kind of disk failure and what else was done? And you're sure XFS was on
/dev/sdb (full disk) instead of a partition? This is slightly unusual.
So I'd just like to point out that the output by
xfs_repair is what you get when running it on a full zero device that isn't and never has been XFS.
# truncate -s 40M foobar.img
# losetup --find --show foobar.img
# xfs_repair /dev/loop0
Phase 1 - find and verify superblock...
bad primary superblock - bad magic number !!!
attempting to find secondary superblock...
...........................Sorry, could not find valid secondary superblock
So, in case you're using the wrong device or making another similar mistake, the output doesn't mean a thing.
fsck, etc. should be used with caution, they can cause more damage. In a data recovery situation, you should always have a full disk copy or a copy-on-write layer to experiment with.