My gut feeling tells me that Drobo works with the supported filesystem of its volume.
IOW, Drobo doesn’t have its own volume bitmap - it uses the one for the filesystem. Internally it may remap physical clusters as necessary to stay within the bounds of its physical storage, but since the host system can’t bypass Drobo’s translation, no matter what the host does (beyond trying to fill beyond the amount of available storage), Drobo will keep it “in line.”
I’ve never seen the volume bitmap mark used space as free (which would essentially mean files are “lost”) but I have seen it mark free space as used. In the case of having free space marked used, Drobo would simply think it’s “more full” than it really is, and it might issue the “Hey, I’m getting full” warning earlier than needed.
Once the volume bitmap is repaired and the free space marked as free again, then the free space usage will be corrected, Drobo will know there’s more free space, and it’ll then be “less full” again.
Or I guess another way to look at it would be like Drobo is a managed (non-accessible, ie, you don’t have “your own” shed/locker) public storage facility and you’re the OS.
You take your goods there and ask the agent there to store it.
They generate a manifest, number each of your boxes and that becomes the manifest (volume bitmap) and that manifest manages how many boxes you have stored and of what sizes (volume bitmap), because you only pay for a certain amount of storage.
Internally, you have your own sheet of what’s in each box and their groupings (filenames and content) - kitchenware #2 of 5, bedding #4 of 7, toys, etc. But you don’t share that with the storage facility because they don’t need to know.
The storage facility, in an effort to maximize space efficiency, will split up your boxes and put each one where it fits best. Box 1 might end up in warehouse 8, aisle 4, shelf 1 while Box 2 might end up in warehouse 13, aisle 2, shelf 4. The storage facility manages the physical locations of your boxes (physical layout), and you have no idea of where your stuff is physically, other than it’s with the storage facility.
Since the storage facility might not actually have enough physical space to hold the entire storage space that you have paid for (thin provisioning), they keep an eye on the amount of used space compared to the amount of actual space they have (keeping an eye on the volume bitmap). If they start to run out of space, they raise a flag that they’ll have to build/acquire more warehouse space (“hey I’m getting full” indication from Drobo).
When you come to retrieve a box, you just tell them which box from the manifest you want, they check their internal list to determine where to physically grab it from, then they deliver it to you and mark it off the manifest as free space.
In the event that somehow the manifest becomes out of sync with what the facility actually has (maybe you wrote down a box and just before giving it to them, decided not to and didn’t erase the box from the manifest), then you read off each of the boxes and the facility does an internal physical check to see if the box is there (CHKDSK/fsck).
If they find there’s a box on the manifest that isn’t actually in the warehouse, then they fix (repair free space marked used) the manifest. (We’ll assume for now that theft and loss don’t happen in this universe)
Since the storage facility doesn’t let you directly rummage through the warehouse and everything you do is through the manifest and facility agent.
Would be great to get a confirm/deny from DRI.