The following schema for Microsoft SQL Server code name "Katmai" describes
query memory grant information in XML format.
Microsoft does not make any representation or warranty regarding the
schema or any product or item developed based on the schema. The schema
is provided to you on an AS IS basis. Microsoft disclaims all express,
implied and statutory warranties, including but not limited to the implied
warranties of merchantability, fitness for a particular purpose, and freedom
from infringement. Without limiting the generality of the foregoing,
Microsoft does not make any warranty of any kind that any item developed
based on the schema, or any portion of the schema, will not infringe any
copyright, patent, trade secret, or other intellectual property right of any
person or entity in any country. It is your responsibility to seek licenses
for such intellectual property rights where appropriate.
MICROSOFT SHALL NOT BE LIABLE FOR ANY DAMAGES OF ANY KIND ARISING OUT OF OR
IN CONNECTION WITH THE USE OF THE SCHEMA, INCLUDING WITHOUT LIMITATION, ANY
DIRECT, INDIRECT, INCIDENTAL, CONSEQUENTIAL (INCLUDING ANY LOST PROFITS),
PUNITIVE OR SPECIAL DAMAGES, WHETHER OR NOT MICROSOFT HAS BEEN ADVISED OF
SUCH DAMAGES.
(c) Microsoft Corporation. All rights reserved.
This is the root element. It contains individual "Grant" elements for each per-query memory grant.
Information about one memory grant.
SPID: Not NULL. The SPID (system process ID) of the connection that issued the batch (that contains the query) for which this element is generated.
BatchID: Not NULL. The batch ID.
SQLHandle: SQL Handle, at most 128 characters following the initial '0x'.
PlanHandle: Plan Handle, at most 128 characters following the initial '0x'.
MemoryRequested: Memory requested by this query in number of 8 KB buffers.
MemoryGranted: Memory granted to this query in number of 8 KB buffers. For a queued up query, this value is equal to 0.
MemoryUsed: Memory used by this query in number of 8 KB buffers. This value could be lower than that in MemoryGranted in case the query is not currently using its entire memory grant. For a queued up query, this value is equal to 0.
DOP: Degree of parallelism.
TimeoutInMS: Timeout value, in milliseconds. If this value is 0, then the query is NOT in memory queue; if it is greater than 0, then the query is IN memory queue.
MemoryRequestTime: The time the memory was requested. Current time - MemoryRequestTime = Wait so far.
MemoryGrantTime: The time the memory was granted.
SQL Handle, at most 128 characters folloiwing the initial '0x'.
The time the memory was requested. Format = yyyy-mm-dd hh:mm:ss.sss. For a queued up query, this time also equals the time the query entered the memory queue.
The time the memory was granted. Format = yyyy-mm-dd hh:mm:ss.sss. For a queued up query, an all-0 value is output.