ec_message_swap_out_meta

March 26, 2020 Contributors

Name

ec_message_swap_out_meta — Write message meta data to disk

Synopsis

#include "ec_message.h"

| int **ec_message_swap_out_meta** ( | mess, |   |
|   | force); |   |

ec_message * <var class="pdparam">mess</var>;
int <var class="pdparam">force</var>;

Description

Write message meta data to disk.

Parameters

mess

A pointer to an ec_message struct. For documentation of this data structure see “ec_message”

force

An integer indicating whether or not to force (1) the swap out.

Return Values

Returns one of EC_MSG_SWAP_RESULT_ERR, EC_MSG_SWAP_RESULT_COMPLETE or EC_MSG_SWAP_RESULT_PARTIAL.

  • EC_MSG_SWAP_RESULT_ERR (0) on error.

  • EC_MSG_SWAP_RESULT_COMPLETE (1) on success.

  • EC_MSG_SWAP_RESULT_PARTIAL (2) if the swap out was incomplete.

Threading

It is legal to call this function in any thread. However, as this may block the caller, it should not be called from the Scheduler Thread.

Note

This function may induce IO or otherwise block the caller. If your code is running in the IO subsystem, the core will have already taken steps to ensure that blocking is acceptable. Otherwise, you should look at using the thread pool API to run a job in the IO pool.