DAOS API (v2.1 - dev)
Loading...
Searching...
No Matches
daos_iod_t Struct Reference

#include <daos_obj.h>

Data Fields

daos_key_t iod_name
 
daos_iod_type_t iod_type
 
daos_size_t iod_size
 
uint64_t iod_flags
 
uint32_t iod_nr
 
daos_recx_tiod_recxs
 

Detailed Description

An I/O descriptor is a list of extents (effectively records associated with contiguous array indices) to update/fetch in a particular array identified by its akey.

Definition at line 362 of file daos_obj.h.

Field Documentation

◆ iod_flags

uint64_t iod_flags

Per akey conditional. If DAOS_COND_PER_AKEY not set, this is ignored.

Definition at line 382 of file daos_obj.h.

◆ iod_name

daos_key_t iod_name

akey for this iod

Definition at line 364 of file daos_obj.h.

◆ iod_nr

uint32_t iod_nr

Number of entries in the iod_recxs for arrays, should be 1 if single value.

Definition at line 387 of file daos_obj.h.

◆ iod_recxs

daos_recx_t* iod_recxs

Array of extents, where each extent defines the index of the first record in the extent and the number of records to access. If the type of the iod is single, this is ignored.

Definition at line 393 of file daos_obj.h.

◆ iod_size

daos_size_t iod_size

Size of the single value or the record size of the array

Definition at line 378 of file daos_obj.h.

◆ iod_type

daos_iod_type_t iod_type

Type of the value in an iod can be either a single type that is always overwritten when updated, or it can be an array of EQUAL sized records where the record is updated atomically. Note that an akey can only support one type of value which is set on the first update. If user attempts to mix types in the same akey, the behavior is undefined, even after the object, key, or value is punched. If iod_type == DAOS_IOD_SINGLE, then iod_nr has to be 1, and iod_size would be the size of the single atomic value. The idx is ignored and the rx_nr is also required to be 1.

Definition at line 376 of file daos_obj.h.


The documentation for this struct was generated from the following file: