45 size_t heap_page_size, uint32_t flags);
148 void* xroad_storage_cursor_get_prev(xroad_cursor_t* cursor);
149 void* xroad_storage_cursor_get_first(xroad_cursor_t* cursor);
150 void* xroad_storage_cursor_get_last(xroad_cursor_t* cursor);
177 #define xroad_storage_heap_alloc(storage, sz, data, ...) \
178 xroad_storage_heap_alloc_va(storage, sz, data, ##__VA_ARGS__ , 0)
180 storage_heap_ref_t xroad_storage_heap_alloc_va(
200 #define xroad_storage_heap_realloc(storage, ref, sz, data, ...) \
201 xroad_storage_heap_realloc_va(storage, ref, sz, data, ##__VA_ARGS__ ,0)
203 storage_heap_ref_t xroad_storage_heap_realloc_va(
204 xroad_storage_t* storage, uint64_t ref, uint32_t sz,
storage_heap_data_t* data, ...) __nonnull((1));
Definition: xroad_storage_fwd.h:28
Definition: xroad_storage_fwd.h:37
Definition: xroad_storage_fwd.h:58
Definition: xroad_string.h:29
void * xroad_storage_copy_row(xroad_storage_t *storage, xroad_row_id_t from, xroad_row_id_t to)
xroad_errno_t xroad_storage_heap_free(xroad_storage_t *storage, storage_heap_ref_t ref)
void * xroad_storage_get_row(xroad_storage_t *storage, xroad_row_id_t row_id)
xroad_storage_stat_t xroad_storage_get_stat(xroad_storage_t *storage)
xroad_str_t xroad_storage_get_err()
xroad_errno_t xroad_storage_clear(xroad_storage_t *storage, bool force)
xroad_storage_flags_t
Definition: xroad_storage.h:25
@ xroad_storage_flags_zero_space
zero allocated space
Definition: xroad_storage.h:26
@ xroad_storage_flags_debug
write storage log into <working_dir>/<pid>.<storage_name>.log file
Definition: xroad_storage.h:28
@ xroad_storage_flags_memory_locked
lock strorage in memory
Definition: xroad_storage.h:27
@ xroad_storage_flags_clear
clear storage
Definition: xroad_storage.h:29
xroad_errno_t xroad_storage_verify(xroad_str_t path, bool dump_heap)
void * xroad_storage_cursor_offset(xroad_cursor_t *cursor, int64_t offset)
void * xroad_storage_cursor_get_next(xroad_cursor_t *cursor)
xroad_storage_t * xroad_storage_open(xroad_str_t path, uint32_t row_size)
xroad_errno_t xroad_storage_create(uint32_t id, xroad_str_t path, uint32_t row_size, size_t rows_at_page, size_t heap_page_size, uint32_t flags)
const xroad_storage_info_t * xroad_storage_get_info(xroad_storage_t *storage)
void xroad_storage_destroy_cursor(xroad_cursor_t *cursor)
xroad_errno_t xroad_storage_resize(xroad_storage_t *storage, uint32_t row_size)
storage_heap_data_t xroad_storage_heap_get(xroad_storage_t *storage, storage_heap_ref_t ref) __nonnull((1))
xroad_cursor_t * xroad_storage_create_cursor(xroad_storage_t *storage)
xroad_errno_t xroad_storage_add_page(xroad_storage_t *storage, xroad_storage_page_type_t ptype)
xroad_str_t xroad_storage_get_name(xroad_storage_t *storage)
xroad_errno_t xroad_storage_drop(xroad_str_t path)
void xroad_storage_destroy(xroad_storage_t *storage)
void * xroad_storage_create_row(xroad_storage_t *storage, xroad_row_id_t *id)
xroad_errno_t xroad_storage_check_deadlock(xroad_storage_t *storage, bool force_unlock)