ADSM API
1995-04-13 13:08:19
For the dsmSendObj API call from the server standpoint it is very
important for the estimated size to be accurate for a few reasons.
1 - The server supports selection of a storage pool based on the size
of an object by setting the maximum size of an object allowed for a
storage pool and specifying a next storage pool. The size used will
be the estimated size passed on this API call.
2 - The server could fail the transaction after backing up most of the
data. As an example say you have 50M of space available in your storage
pool. Suppose your estimate on the dsmSendObj call that the size of
the object is 45M but the actual size is 55M. The server will allocate
the 45M, as you back up additional data the server will make additional
allocations in the storage pool, but as soon as you go over the 50M
that is available in the storage pool you will get an ANR9999D message
on the server and the transaction will be aborted wasting 50M of
network traffic because 50M of data was transmitted and then discarded
because of the aborted transaction.
3 - You will not be able to use caching in your server storage pool because
the cached space is not eligible to allocate additional space for an
object being backed up over the estimated size specified in the
dsmSendObj API call. Cached space is eligible for the initial
allocation as determined by your size estimate.
4 - From the performance side these allocations over the amount of data
estimated for the size are made in small chunks in the storage pool
so if your estimate is really low there is a lot of additional overhead
making a determination for what space is available for allocation in
that storage pool and allocating that space.
Hope this helps
David Bohm, ADSM Level 2
|
<Prev in Thread] |
Current Thread |
[Next in Thread> |
- ADSM API,
David E. Bohm <=
|
|
|