Drizzled Public API Documentation

os_aio_array_struct Struct Reference

Public Attributes

os_mutex_t mutex
os_event_t not_full
os_event_t is_empty
ulint n_slots
ulint n_segments
ulint cur_seg
ulint n_reserved
os_aio_slot_tslots

Detailed Description

The asynchronous i/o array structure

Definition at line 203 of file os0file.cc.

Member Data Documentation

ulint os_aio_array_struct::cur_seg

We reserve IO requests in round robin fashion to different segments. This points to the segment that is to be used to service next IO request.

Definition at line 221 of file os0file.cc.

os_event_t os_aio_array_struct::is_empty

The event which is set to the signaled state when there are no pending i/os in this array

Definition at line 210 of file os0file.cc.

Referenced by os_aio_wait_until_no_pending_writes().

os_mutex_t os_aio_array_struct::mutex

the mutex protecting the aio array

Definition at line 204 of file os0file.cc.

Referenced by os_aio_print(), and os_aio_simulated_handle().

ulint os_aio_array_struct::n_reserved

Number of reserved slots in the aio array outside the ibuf segment

Definition at line 226 of file os0file.cc.

Referenced by os_aio_print().

ulint os_aio_array_struct::n_segments

Number of segments in the aio array of pending aio requests. A thread can wait separately for any one of the segments.

Definition at line 217 of file os0file.cc.

Referenced by os_aio_print(), and os_aio_simulated_handle().

ulint os_aio_array_struct::n_slots

Total number of slots in the aio array. This must be divisible by n_threads.

Definition at line 213 of file os0file.cc.

Referenced by os_aio_print(), and os_aio_simulated_handle().

os_event_t os_aio_array_struct::not_full

The event which is set to the signaled state when there is space in the aio outside the ibuf segment

Definition at line 206 of file os0file.cc.

os_aio_slot_t* os_aio_array_struct::slots

Pointer to the slots in the array

Definition at line 228 of file os0file.cc.


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