Skip to content

File px_sort.h

FileList > cubrid > src > query > parallel > px_sort.h

Go to the source code of this file

  • #include "error_manager.h"
  • #include "thread_compat.hpp"

Classes

Type Name
struct result_run

Public Types

Type Name
typedef enum parallel_type PARALLEL_TYPE
typedef enum px_status PX_STATUS
typedef struct result_run RESULT_RUN
typedef struct sort_param SORT_PARAM
enum parallel_type
enum px_status

Public Functions

Type Name
int sort_check_parallelism (THREAD_ENTRY * thread_p, SORT_PARAM * sort_param)
int sort_copy_sort_info (THREAD_ENTRY * thread_p, SORT_INFO ** dest_sort_info, SORT_INFO * src_sort_info)
int sort_copy_sort_param (THREAD_ENTRY * thread_p, SORT_PARAM * dest_param, SORT_PARAM * src_param, int parallel_num)
int sort_end_parallelism (THREAD_ENTRY * thread_p, SORT_PARAM * px_sort_param, SORT_PARAM * sort_param)
void sort_listfile_execute (cubthread::entry & thread_ref, SORT_PARAM * sort_param)
int sort_merge_nruns (THREAD_ENTRY * thread_p, SORT_PARAM * sort_param)
void sort_merge_nruns_parallel (cubthread::entry & thread_ref, SORT_PARAM * sort_param)
int sort_merge_run_for_parallel (THREAD_ENTRY * thread_p, SORT_PARAM * dest_param, SORT_PARAM * src_param, int parallel_num)
void sort_put_result_for_parallel (cubthread::entry & thread_ref, SORT_PARAM * sort_param)
int sort_put_result_from_tmpfile (THREAD_ENTRY * thread_p, SORT_PARAM * sort_param, int start_pagenum)
int sort_split_input_temp_file (THREAD_ENTRY * thread_p, SORT_PARAM * dest_param, SORT_PARAM * src_param, int parallel_num)
void sort_split_last_run (THREAD_ENTRY * thread_p, SORT_PARAM * px_sort_param, SORT_PARAM * sort_param, int parallel_num)
int sort_start_parallelism (THREAD_ENTRY * thread_p, SORT_PARAM * px_sort_param, SORT_PARAM * sort_param)

Macros

Type Name
define SORT_EXECUTE_PARALLEL (num, px_sort_param, function) /* multi line expression */
define SORT_IS_PARALLEL (t) (([**t**](broker__monitor_8c.md#function-timeout))->px\_parallel\_num > 1)
define SORT_MAX_PARALLEL [**PRM\_MAX\_PARALLELISM**](system__parameter_8h.md#define-prm_max_parallelism)
define SORT_PX_MERGE_FILES 4
define SORT_WAIT_PARALLEL (parallel_num, sort_param, px_sort_param) /* multi line expression */

Public Types Documentation

typedef PARALLEL_TYPE

typedef enum parallel_type PARALLEL_TYPE;

typedef PX_STATUS

typedef enum px_status PX_STATUS;

typedef RESULT_RUN

typedef struct result_run RESULT_RUN;

typedef SORT_PARAM

typedef struct sort_param SORT_PARAM;

enum parallel_type

enum parallel_type {
    PX_SINGLE = 0,
    PX_MAIN_IN_PARALLEL = 1,
    PX_THREAD_IN_PARALLEL
};

enum px_status

enum px_status {
    PX_ERR_FAILED = -1,
    PX_DONE = 0,
    PX_PROGRESS
};

Public Functions Documentation

function sort_check_parallelism

int sort_check_parallelism (
    THREAD_ENTRY * thread_p,
    SORT_PARAM * sort_param
) 

function sort_copy_sort_info

int sort_copy_sort_info (
    THREAD_ENTRY * thread_p,
    SORT_INFO ** dest_sort_info,
    SORT_INFO * src_sort_info
) 

function sort_copy_sort_param

int sort_copy_sort_param (
    THREAD_ENTRY * thread_p,
    SORT_PARAM * dest_param,
    SORT_PARAM * src_param,
    int parallel_num
) 

function sort_end_parallelism

int sort_end_parallelism (
    THREAD_ENTRY * thread_p,
    SORT_PARAM * px_sort_param,
    SORT_PARAM * sort_param
) 

function sort_listfile_execute

void sort_listfile_execute (
    cubthread::entry & thread_ref,
    SORT_PARAM * sort_param
) 

function sort_merge_nruns

int sort_merge_nruns (
    THREAD_ENTRY * thread_p,
    SORT_PARAM * sort_param
) 

function sort_merge_nruns_parallel

void sort_merge_nruns_parallel (
    cubthread::entry & thread_ref,
    SORT_PARAM * sort_param
) 

function sort_merge_run_for_parallel

int sort_merge_run_for_parallel (
    THREAD_ENTRY * thread_p,
    SORT_PARAM * dest_param,
    SORT_PARAM * src_param,
    int parallel_num
) 

function sort_put_result_for_parallel

void sort_put_result_for_parallel (
    cubthread::entry & thread_ref,
    SORT_PARAM * sort_param
) 

function sort_put_result_from_tmpfile

int sort_put_result_from_tmpfile (
    THREAD_ENTRY * thread_p,
    SORT_PARAM * sort_param,
    int start_pagenum
) 

function sort_split_input_temp_file

int sort_split_input_temp_file (
    THREAD_ENTRY * thread_p,
    SORT_PARAM * dest_param,
    SORT_PARAM * src_param,
    int parallel_num
) 

function sort_split_last_run

void sort_split_last_run (
    THREAD_ENTRY * thread_p,
    SORT_PARAM * px_sort_param,
    SORT_PARAM * sort_param,
    int parallel_num
) 

function sort_start_parallelism

int sort_start_parallelism (
    THREAD_ENTRY * thread_p,
    SORT_PARAM * px_sort_param,
    SORT_PARAM * sort_param
) 

Macro Definition Documentation

define SORT_EXECUTE_PARALLEL

#define SORT_EXECUTE_PARALLEL (
    num,
    px_sort_param,
    function
) `/* multi line expression */`

define SORT_IS_PARALLEL

#define SORT_IS_PARALLEL (
    t
) `(( t )->px_parallel_num > 1)`

define SORT_MAX_PARALLEL

#define SORT_MAX_PARALLEL `PRM_MAX_PARALLELISM`

define SORT_PX_MERGE_FILES

#define SORT_PX_MERGE_FILES `4`

define SORT_WAIT_PARALLEL

#define SORT_WAIT_PARALLEL (
    parallel_num,
    sort_param,
    px_sort_param
) `/* multi line expression */`


The documentation for this class was generated from the following file cubrid/src/query/parallel/px_sort.h