Service: zimbraAdmin

Command: CheckBlobConsistency
Namespace: urn:zimbraAdmin
Description: Checks for items that have no blob, blobs that have no item, and items that have an incorrect blob size stored in their metadata. If no volumes are specified, all volumes are checked. If no mailboxes are specified, all mailboxes are checked. Blob sizes are checked by default. Set checkSize to 0 (false) to * avoid the CPU overhead of uncompressing compressed blobs in order to calculate size.
Properties:
Authorization token required true
Admin Authorization token required true

CheckBlobConsistencyRequest

    <CheckBlobConsistencyRequest [checkSize="(0|1)"] [reportUsedBlobs="{report-used-blobs} (0|1)"]> ## CheckBlobConsistencyRequest
        (<volume id="{id} (int)" /> ## IntIdAttr)*
        (<mbox id="{id} (int)" /> ## See /volume [ ## IntIdAttr])*
    </CheckBlobConsistencyRequest>

elements and attributes you can define within a <CheckBlobConsistencyRequest> element:

XPath Required / Optional Description
@checkSize Optional (0 or 1) Type: 0|1
Set checkSize to 0 (false) to avoid the CPU overhead of uncompressing compressed blobs in order to calculate size.
@reportUsedBlobs Optional (0 or 1) Type: 0|1
If set a complete list of all blobs used by the mailbox(es) is returned
/volume Optional (0 or more) Volumes
/volume@id Required (only 1) Type: int
ID
/mbox Optional (0 or more) Mailboxes
See /volume for more details.

CheckBlobConsistencyResponse

    <CheckBlobConsistencyResponse> ## CheckBlobConsistencyResponse
        (<mbox id="{mailbox-id} (int)"> ## MailboxBlobConsistency
            <missingBlobs>
                (<item id="{id} (int)" rev="{revision} (int)" s="{data-size} (long)" volumeId="{volume-id} (short)"
                           blobPath="{blob-path}" external="{external-flag} (0|1)" version="{version} (int)" /> ## MissingBlobInfo)*
            </missingBlobs>
            <incorrectSize>
                (<item id="{item-id} (int)" rev="{rev-num} (int)" s="{size} (long)" volumeId="{volume-id} (short)"> ## IncorrectBlobSizeInfo
                    <blob path="{path}" s="{data-size} (Long)" fileSize="{file-size} (Long)"
                             external="{external-flag} (0|1)" /> ## BlobSizeInfo
                  </item>)*
            </incorrectSize>
            <unexpectedBlobs>
                (<blob volumeId="{volume-id} (short)" path="{path}" fileSize="{size} (Long)"
                           external="{external-flag} (0|1)" /> ## UnexpectedBlobInfo)*
            </unexpectedBlobs>
            <incorrectRevision>
                (<item id="{item-id} (int)" rev="{rev-num} (int)" s="{size} (long)" volumeId="{volume-id} (short)"> ## IncorrectBlobRevisionInfo
                    <blob path="{path}" fileSize="{file-size} (Long)" rev="{revision} (int)"
                             external="{external-flag} (0|1)" /> ## BlobRevisionInfo
                  </item>)*
            </incorrectRevision>
            <usedBlobs>
                (<item id="{id} (int)" rev="{rev} (int)" s="{size} (long)" volumeId="{volume-id} (short)"> ## UsedBlobInfo
                    <blob ... /> ## See /mbox/incorrectSize/item/blob [ ## BlobSizeInfo]
                  </item>)*
            </usedBlobs>
          </mbox>)*
    </CheckBlobConsistencyResponse>

elements and attributes you can define within a <CheckBlobConsistencyResponse> element:

XPath Required / Optional Description
/mbox Optional (0 or more) Information for mailboxes
/mbox@id Required (only 1) Type: int
Mailbox ID
/mbox/missingBlobs Required (only 1)
/mbox/missingBlobs/item Optional (0 or more)
/mbox/missingBlobs/item@id Required (only 1) Type: int
ID
/mbox/missingBlobs/item@rev Required (only 1) Type: int
revision
/mbox/missingBlobs/item@s Required (only 1) Type: long
Data size
/mbox/missingBlobs/item@volumeId Required (only 1) Type: short
Volume ID
/mbox/missingBlobs/item@blobPath Required (only 1) Type: String
Blob path
/mbox/missingBlobs/item@external Required (only 1) Type: 0|1
Set if the blob is stored in an ExternalStoreManager rather than locally in FileBlobStore
/mbox/missingBlobs/item@version Required (only 1) Type: int
Version
/mbox/incorrectSize Required (only 1)
/mbox/incorrectSize/item Optional (0 or more)
/mbox/incorrectSize/item@id Required (only 1) Type: int
Item ID
/mbox/incorrectSize/item@rev Required (only 1) Type: int
Revision
/mbox/incorrectSize/item@s Required (only 1) Type: long
Size
/mbox/incorrectSize/item@volumeId Required (only 1) Type: short
Volume ID
/mbox/incorrectSize/item/blob Required (only 1) Blob size information
/mbox/incorrectSize/item/blob@path Required (only 1) Type: String
Path
/mbox/incorrectSize/item/blob@s Required (only 1) Type: Long
Data size
/mbox/incorrectSize/item/blob@fileSize Required (only 1) Type: Long
File size
/mbox/incorrectSize/item/blob@external Required (only 1) Type: 0|1
Set if the blob is stored in an ExternalStoreManager rather than locally in FileBlobStore
/mbox/unexpectedBlobs Required (only 1)
/mbox/unexpectedBlobs/blob Optional (0 or more)
/mbox/unexpectedBlobs/blob@volumeId Required (only 1) Type: short
volume ID
/mbox/unexpectedBlobs/blob@path Required (only 1) Type: String
Path
/mbox/unexpectedBlobs/blob@fileSize Required (only 1) Type: Long
Size
/mbox/unexpectedBlobs/blob@external Required (only 1) Type: 0|1
Set if the blob is stored in an ExternalStoreManager rather than locally in FileBlobStore
/mbox/incorrectRevision Required (only 1)
/mbox/incorrectRevision/item Optional (0 or more)
/mbox/incorrectRevision/item@id Required (only 1) Type: int
Item ID
/mbox/incorrectRevision/item@rev Required (only 1) Type: int
Revision
/mbox/incorrectRevision/item@s Required (only 1) Type: long
Size
/mbox/incorrectRevision/item@volumeId Required (only 1) Type: short
Volume ID
/mbox/incorrectRevision/item/blob Required (only 1) Blob information
/mbox/incorrectRevision/item/blob@path Required (only 1) Type: String
Path
/mbox/incorrectRevision/item/blob@fileSize Required (only 1) Type: Long
File size
/mbox/incorrectRevision/item/blob@rev Required (only 1) Type: int
Revision number
/mbox/incorrectRevision/item/blob@external Required (only 1) Type: 0|1
Set if the blob is stored in an ExternalStoreManager rather than locally in FileBlobStore
/mbox/usedBlobs Required (only 1)
/mbox/usedBlobs/item Optional (0 or more)
/mbox/usedBlobs/item@id Required (only 1) Type: int
Blob ID
/mbox/usedBlobs/item@rev Required (only 1) Type: int
Revision
/mbox/usedBlobs/item@s Required (only 1) Type: long
Size
/mbox/usedBlobs/item@volumeId Required (only 1) Type: short
Volume ID
/mbox/usedBlobs/item/blob Required (only 1) Blob size information
See /mbox/incorrectSize/item/blob for more details.