23 #ifndef _THREAD_ENTRY_HPP_ 24 #define _THREAD_ENTRY_HPP_ 26 #if !defined (SERVER_MODE) && !defined (SA_MODE) 28 #endif // not SERVER_MODE and not SA_MODE 59 template <
typename Res>
60 class resource_tracker;
70 class critical_section_tracker;
93 #define THREAD_TS_COUNT THREAD_TS_LAST 103 struct timeval cs_waits;
104 struct timeval lock_waits;
105 struct timeval latch_waits;
108 struct timeval temp_expand_time;
206 void request_lock_free_transactions (
void);
234 struct drand48_data rand_buf;
287 pthread_t get_posix_id ();
289 void unregister_id ();
290 bool is_on_current_thread ()
const;
304 return m_alloc_tracker;
308 return m_pgbuf_tracker;
312 return m_csect_tracker;
321 m_systdes = sys_tdes;
327 void claim_system_worker ();
328 void retire_system_worker ();
330 void end_resource_tracks (
void);
331 void push_resource_tracks (
void);
332 void pop_resource_tracks (
void);
339 void clear_resources (
void);
360 #ifndef _THREAD_COMPAT_HPP_ 364 #endif // _THREAD_COMPAT_HPP_ 465 #endif // _THREAD_ENTRY_HPP_
int thread_suspend_with_other_mutex(cubthread::entry *p, pthread_mutex_t *mutexp, int timeout, struct timespec *to, thread_resume_suspend_status suspended_reason)
void thread_suspend_wakeup_and_unlock_entry(cubthread::entry *p, thread_resume_suspend_status suspended_reason)
void reset_system_tdes(void)
cubbase::pgbuf_tracker & get_pgbuf_tracker(void)
int thread_get_recursion_depth(cubthread::entry *thread_p)
css_conn_entry * conn_entry
int thread_suspend_timeout_wakeup_and_unlock_entry(cubthread::entry *p, struct timespec *t, thread_resume_suspend_status suspended_reason)
bool thread_need_clear_trace(cubthread::entry *thread_p)
unsigned long int thread_id_t
bool thread_set_sort_stats_active(cubthread::entry *thread_p, bool new_flag)
int count_private_allocators
std::atomic_bool shutdown
thread_resume_suspend_status resume_status
void thread_wakeup_already_had_mutex(cubthread::entry *p, thread_resume_suspend_status resume_reason)
bool thread_is_on_trace(cubthread::entry *thread_p)
std::thread::id thread_id_t
thread_resume_suspend_status
pthread_mutex_t th_entry_lock
struct log_zip * log_zip_undo
cubbase::alloc_tracker & get_alloc_tracker(void)
void thread_set_trace_format(cubthread::entry *thread_p, int format)
void set_system_tdes(log_system_tdes *sys_tdes)
void thread_check_suspend_reason_and_wakeup(cubthread::entry *thread_p, thread_resume_suspend_status resume_reason, thread_resume_suspend_status suspend_reason)
pthread_mutex_t tran_index_lock
cuberr::context & get_error_context(void)
fi_test_item * fi_test_array
cubsync::critical_section_tracker & get_csect_tracker(void)
cubload::driver * m_loaddb_driver
void thread_set_clear_trace(cubthread::entry *thread_p, bool clear)
cubbase::alloc_tracker & m_alloc_tracker
struct log_zip * log_zip_redo
void thread_lock_entry(cubthread::entry *thread_p)
void return_lock_free_transaction_entries(void)
cubthread::entry THREAD_ENTRY
void thread_trace_on(cubthread::entry *thread_p)
void thread_unlock_entry(cubthread::entry *thread_p)
bool wait_for_latch_promote
log_system_tdes * get_system_tdes(void)
void thread_dec_recursion_depth(cubthread::entry *thread_p)
void thread_clear_recursion_depth(cubthread::entry *thread_p)
pthread_cond_t wakeup_cond
log_system_tdes * m_systdes
const char * thread_resume_status_to_string(thread_resume_suspend_status resume_status)
HL_HEAPID private_heap_id
void thread_wakeup(cubthread::entry *p, thread_resume_suspend_status resume_reason)
const char * thread_status_to_string(cubthread::entry::status status)
cubbase::pgbuf_tracker & m_pgbuf_tracker
void thread_inc_recursion_depth(cubthread::entry *thread_p)
const char * thread_type_to_string(thread_type type)
xasl_unpack_info * xasl_unpack_info_ptr
lockfree::tran::index m_lf_tran_index
cubsync::critical_section_tracker & m_csect_tracker
void clear(cub_regex_object *®ex, char *&pattern)
struct vacuum_worker * vacuum_worker
bool thread_get_sort_stats_active(cubthread::entry *thread_p)