matchthe original object metadata. There are no transactional guarantees regarding ordering
ofqueries and delete operations that are occurring at the same time. If an object is being deleted
atthe same time that a query that matches that object is being performed, then that object may
ormay not show up in the query result set, with no guarantee either way.
Note– When all objects that share an underlying block of data storage been deleted, the
underlyingblock of data storage will itself be scavenged and returned to the supply of free disk
space.But all details of how objects are stored, and how and whether they ever share data — or
everare scavenged — are outside of the scope of this API.
Deleteoperations are all-or-nothing,with some caveats. Specically, if a delete operation fails
withan error, it is possible that the object is not fully deleted but is temporarily not queryable.
Suchan object is in an analogous state to a store index exception (see “The 5800 System Query
IntegrityModel” on page 21). The queryability of such an object will eventually be resolved by
automaticsystem healing. In addition, the queryability of such an object can be resolved under
programcontrol by using the checkIndexed method. Alternatively, the customer application
maychoose to re-execute the delete operation until it succeeds, or until it fails with an error that
indicatesthe object is already deleted.
5800SystemOver view
Chapter1 • Sun StorageTek 5800 System Client API 23