CUBRID Engine  latest
tz_support.h File Reference
#include "dbtype_def.h"
#include "thread_compat.hpp"
#include "timezone_lib_common.h"
Include dependency graph for tz_support.h:

Go to the source code of this file.

Macros

#define db_utime_to_string   db_timestamp_to_string
 
#define db_string_to_utime   db_string_to_timestamp
 
#define db_date_parse_utime   db_date_parse_timestamp
 
#define TZLIB_SYMBOL_NAME_SIZE   64
 
#define MAX_LEN_OFFSET   10
 
#define SHLIB_EXPORT_PREFIX   ""
 
#define LIB_TZ_NAME   "libcubrid_timezones.so"
 
#define IS_LEAP_YEAR(y)   ((((y) & 3) == 0) && ((((y) % 25) != 0) || (((y) & 15) == 0)))
 
#define DAYS_IN_MONTH(m)   (31 - ((m) > 6 ? (m) - 7 : (m)) % 2)
 
#define IS_EMPTY_STR(s)   ((s) == NULL || *(s) == '\0')
 
#define TZ_MAX_YEAR   9999
 
#define TZ_MAX_JULIAN_DATE   5373486
 
#define TZ_ZONE_ID_MAX   0x3ff
 
#define TZ_OFFSET_ID_MAX   0xff
 
#define TZ_DS_ID_MAX   0xff
 
#define DATE_DIFF_MATCH_SAFE_THRESHOLD_DAYS   2
 
#define DATE_DIFF_MATCH_SAFE_THRESHOLD_SEC   172800ll
 
#define TZ_DS_STRING_SIZE   10
 
#define TZR_SIZE   100
 
#define ZONE_MAX   10000
 
#define TZ_IS_ZONE_VALID_DECODE_INFO(tz_info)
 
#define TZ_IS_UTC_TZ_REGION(r)   ((r)->type == TZ_REGION_OFFSET && (r)->offset == 0)
 

Typedefs

typedef DB_BIGINT full_date_t
 

Enumerations

enum  {
  TIME_SPECIFIER = 1, DATE_SPECIFIER = 2, DATETIME_SPECIFIER = 3, REMOVED_TIMETZ_SPECIFIER = 4,
  DATETIMETZ_SPECIFIER = 5
}
 
enum  {
  TZ_MON_JAN = 0, TZ_MON_FEB = 1, TZ_MON_MAR = 2, TZ_MON_APR = 3,
  TZ_MON_MAY = 4, TZ_MON_JUN = 5, TZ_MON_JUL = 6, TZ_MON_AUG = 7,
  TZ_MON_SEP = 8, TZ_MON_OCT = 9, TZ_MON_NOV = 10, TZ_MON_DEC = 11,
  TZ_MON_COUNT = 12
}
 
enum  {
  TZ_WEEK_DAY_SUN = 0, TZ_WEEK_DAY_MON = 1, TZ_WEEK_DAY_TUE = 2, TZ_WEEK_DAY_WED = 3,
  TZ_WEEK_DAY_THU = 4, TZ_WEEK_DAY_FRI = 5, TZ_WEEK_DAY_SAT = 6, TZ_WEEK_DAY_COUNT = 7
}
 

Functions

void db_date_locale_init (void)
 
int tz_load (void)
 
void tz_unload (void)
 
DB_BIGINT tz_timestamp_encode_leap_sec_adj (const int year_century, const int year, const int mon, const int day)
 
void tz_timestamp_decode_sec (int timestamp, int *yearp, int *monthsp, int *dayp, int *hoursp, int *minutesp, int *secondsp)
 
void tz_timestamp_decode_no_leap_sec (int timestamp, int *yearp, int *monthsp, int *dayp, int *hoursp, int *minutesp, int *secondsp)
 
int tz_get_timezone_offset (const char *tz_str, int tz_size, char *result, DB_DATETIME *utc_datetime)
 
int tz_get_first_weekday_around_date (const int year, const int month, const int weekday, const int after_day, const bool before)
 
const TZ_DATAtz_get_data (void)
 
void tz_set_data (const TZ_DATA *data)
 
const TZ_DATAtz_get_new_timezone_data (void)
 
void tz_set_new_timezone_data (const TZ_DATA *data)
 
const char * tz_get_system_timezone (void)
 
const char * tz_get_session_local_timezone (void)
 
void tz_get_system_tz_region (TZ_REGION *tz_region)
 
void tz_get_session_tz_region (TZ_REGION *tz_region)
 
void tz_id_to_region (const TZ_ID *tz_id, TZ_REGION *tz_region)
 
const TZ_IDtz_get_utc_tz_id (void)
 
const TZ_REGIONtz_get_utc_tz_region (void)
 
int tz_create_session_tzid_for_datetime (const DB_DATETIME *src_dt, bool src_is_utc, TZ_ID *tz_id)
 
int tz_create_session_tzid_for_timestamp (const DB_UTIME *src_ts, TZ_ID *tz_id)
 
int tz_str_to_region (const char *tz_str, const int tz_str_size, TZ_REGION *tz_region)
 
int tz_create_session_tzid_for_time (const DB_TIME *src_time, bool src_is_utc, TZ_ID *tz_id)
 
int tz_str_read_number (const char *str, const char *str_end, const bool strict, const bool read_sign, int *val, const char **str_next)
 
int tz_str_read_time (const char *str, const char *str_end, bool need_minutes, bool allow_sec60, int *hour, int *min, int *sec, const char **str_next)
 
int tz_str_to_seconds (const char *str, const char *str_end, int *sec, const char **str_next, const bool is_offset)
 
int tz_get_ds_change_julian_date_diff (const int src_julian_date, const TZ_DS_RULE *ds_rule, const int year, int *ds_rule_julian_date, full_date_t *date_diff)
 
int tz_create_datetimetz (const DB_DATETIME *dt, const char *tz_str, const int tz_size, const TZ_REGION *default_tz_region, DB_DATETIMETZ *dt_tz, const char **end_tz_str)
 
int tz_create_timestamptz (const DB_DATE *date, const DB_TIME *time, const char *tz_str, const int tz_size, const TZ_REGION *default_tz_region, DB_TIMESTAMPTZ *ts_tz, const char **end_tz_str)
 
int tz_create_datetimetz_from_ses (const DB_DATETIME *dt, DB_DATETIMETZ *dt_tz)
 
int tz_utc_datetimetz_to_local (const DB_DATETIME *dt_utc, const TZ_ID *tz_id, DB_DATETIME *dt_local)
 
int tz_datetimeltz_to_local (const DB_DATETIME *dt_ltz, DB_DATETIME *dt_local)
 
int tz_id_to_str (const TZ_ID *tz_id, char *tz_str, const int tz_str_size)
 
int tz_datetimetz_fix_zone (const DB_DATETIMETZ *src_dt_tz, DB_DATETIMETZ *dest_dt_tz)
 
int tz_timestamptz_fix_zone (const DB_TIMESTAMPTZ *src_ts_tz, DB_TIMESTAMPTZ *dest_ts_tz)
 
int tz_conv_tz_datetime_w_region (const DB_DATETIME *src_dt, const TZ_REGION *src_tz_region, const TZ_REGION *dest_tz_region, DB_DATETIME *dest_dt, TZ_ID *src_tz_id_out, TZ_ID *dest_tz_id_out)
 
int tz_conv_tz_datetime_w_zone_name (const DB_DATETIME *src_dt, const char *source_zone, int len_source, const char *dest_zone, int len_dest, DB_DATETIME *dest_dt)
 
int tz_conv_tz_time_w_zone_name (const DB_TIME *time_source, const char *source_zone, int len_source, const char *dest_zone, int len_dest, DB_TIME *time_dest)
 
int tz_explain_tz_id (const TZ_ID *tz_id, char *tzr, const int tzr_size, char *tzdst, const int tzdst_size, int *tzh, int *tzm)
 
int tz_create_datetimetz_from_offset (const DB_DATETIME *dt, const int tzh, const int tzm, DB_DATETIMETZ *dt_tz)
 
int tz_create_timestamptz_from_offset (const DB_DATE *date, const DB_TIME *time, const int tzh, const int tzm, DB_TIMESTAMPTZ *timestamp_tz)
 
int tz_get_best_match_zone (const char *name, int *size)
 
int tz_create_datetimetz_from_zoneid_and_tzd (const DB_DATETIME *dt, TZ_REGION *default_tz_region, const int zone_id, const char *tzd, const int tzd_len, bool is_time_tz, DB_DATETIMETZ *dt_tz)
 
int tz_create_timestamptz_from_zoneid_and_tzd (const DB_DATE *date, const DB_TIME *time, TZ_REGION *default_tz_region, const int zone_id, const char *tzd, const int tzd_len, DB_TIMESTAMPTZ *timestamp_tz)
 
int tz_resolve_os_timezone (char *timezone, int buf_size)
 
void tz_set_tz_region_system (const TZ_REGION *tz_region)
 
TZ_REGIONtz_get_client_tz_region_session (void)
 
int tz_timezones_start_scan (THREAD_ENTRY *thread_p, int show_type, DB_VALUE **arg_values, int arg_cnt, void **ptr)
 
int tz_full_timezones_start_scan (THREAD_ENTRY *thread_p, int show_type, DB_VALUE **arg_values, int arg_cnt, void **ptr)
 
int tz_load_with_library_path (TZ_DATA *tzd, const char *timezone_library_path)
 
int tz_check_geographic_tz (const TZ_ID *tz_id)
 
int tz_check_session_has_geographic_tz (void)
 
int put_timezone_checksum (char *checksum)
 
int check_timezone_compat (const char *client_checksum, const char *server_checksum, const char *client_text, const char *server_text)
 
void tz_tzid_convert_region_to_offset (TZ_ID *tz_id)
 
int tz_create_datetimetz_from_utc (const DB_DATETIME *src_dt, const TZ_REGION *dest_region, DB_DATETIMETZ *dest_dt_tz)
 
int tz_create_datetimetz_from_parts (const int m, const int d, const int y, const int h, const int mi, const int s, const int ms, const TZ_ID *tz_id, DB_DATETIMETZ *dt_tz)
 
int conv_tz (void *, const void *, DB_TYPE)
 
int tz_get_offset_in_mins ()
 

Macro Definition Documentation

#define DATE_DIFF_MATCH_SAFE_THRESHOLD_DAYS   2

Definition at line 82 of file tz_support.h.

Referenced by tz_datetime_utc_conv().

#define DATE_DIFF_MATCH_SAFE_THRESHOLD_SEC   172800ll

Definition at line 83 of file tz_support.h.

Referenced by tz_datetime_utc_conv(), and tz_fast_find_ds_rule().

#define DAYS_IN_MONTH (   m)    (31 - ((m) > 6 ? (m) - 7 : (m)) % 2)
#define db_date_parse_utime   db_date_parse_timestamp

Definition at line 31 of file tz_support.h.

Referenced by tp_atoutime().

#define db_string_to_utime   db_string_to_timestamp

Definition at line 30 of file tz_support.h.

Referenced by pt_db_value_initialize().

#define db_utime_to_string   db_timestamp_to_string
#define LIB_TZ_NAME   "libcubrid_timezones.so"

Definition at line 59 of file tz_support.h.

Referenced by init_tz_name(), and tz_load().

#define MAX_LEN_OFFSET   10

Definition at line 45 of file tz_support.h.

Referenced by db_tz_offset(), and tz_full_timezones_start_scan().

#define SHLIB_EXPORT_PREFIX   ""

Definition at line 58 of file tz_support.h.

Referenced by tzc_export_timezone_dot_c().

#define TZ_DS_STRING_SIZE   10

Definition at line 85 of file tz_support.h.

Referenced by date_to_char(), db_date_format(), and db_time_format().

#define TZ_IS_UTC_TZ_REGION (   r)    ((r)->type == TZ_REGION_OFFSET && (r)->offset == 0)

Definition at line 122 of file tz_support.h.

Referenced by db_timestamp_decode_w_reg(), and db_timestamp_encode_w_reg().

#define TZ_IS_ZONE_VALID_DECODE_INFO (   tz_info)
Value:
((tz_info)->type == TZ_REGION_OFFSET \
|| (tz_info)->zone.zone_id != TZ_ZONE_ID_MAX)
#define TZ_ZONE_ID_MAX
Definition: tz_support.h:76

Definition at line 118 of file tz_support.h.

Referenced by tz_conv_tz_datetime_w_zone_info().

#define TZ_MAX_JULIAN_DATE   5373486

Definition at line 74 of file tz_support.h.

Referenced by tz_datetime_utc_conv().

#define TZ_ZONE_ID_MAX   0x3ff

Definition at line 76 of file tz_support.h.

Referenced by tz_decode_tz_id(), tz_encode_tz_id(), and tz_encode_tz_region().

#define TZLIB_SYMBOL_NAME_SIZE   64

Definition at line 44 of file tz_support.h.

Referenced by tz_load_data_from_lib().

#define TZR_SIZE   100

Definition at line 86 of file tz_support.h.

Referenced by date_to_char(), db_date_format(), and db_time_format().

#define ZONE_MAX   10000

Definition at line 87 of file tz_support.h.

Referenced by init_tz_name().

Typedef Documentation

Definition at line 125 of file tz_support.h.

Enumeration Type Documentation

anonymous enum
Enumerator
TIME_SPECIFIER 
DATE_SPECIFIER 
DATETIME_SPECIFIER 
REMOVED_TIMETZ_SPECIFIER 
DATETIMETZ_SPECIFIER 

Definition at line 33 of file tz_support.h.

anonymous enum
Enumerator
TZ_MON_JAN 
TZ_MON_FEB 
TZ_MON_MAR 
TZ_MON_APR 
TZ_MON_MAY 
TZ_MON_JUN 
TZ_MON_JUL 
TZ_MON_AUG 
TZ_MON_SEP 
TZ_MON_OCT 
TZ_MON_NOV 
TZ_MON_DEC 
TZ_MON_COUNT 

Definition at line 89 of file tz_support.h.

anonymous enum
Enumerator
TZ_WEEK_DAY_SUN 
TZ_WEEK_DAY_MON 
TZ_WEEK_DAY_TUE 
TZ_WEEK_DAY_WED 
TZ_WEEK_DAY_THU 
TZ_WEEK_DAY_FRI 
TZ_WEEK_DAY_SAT 
TZ_WEEK_DAY_COUNT 

Definition at line 106 of file tz_support.h.

Function Documentation

int check_timezone_compat ( const char *  client_checksum,
const char *  server_checksum,
const char *  client_text,
const char *  server_text 
)

Definition at line 5043 of file tz_support.c.

References ARG_FILE_LINE, assert, ER_ERROR_SEVERITY, er_set(), ER_TZ_INCOMPATIBLE_TIMEZONE_LIBRARIES, NO_ERROR, and NULL.

Referenced by boot_restart_server(), and boot_set_server_session_key().

Here is the caller graph for this function:

void db_date_locale_init ( void  )

Definition at line 1531 of file db_date.c.

References fill_local_ampm_str(), local_am_str, local_am_strlen, local_pm_str, local_pm_strlen, and strlen.

Referenced by set_current_locale().

Here is the caller graph for this function:

int put_timezone_checksum ( char *  checksum)

Definition at line 5017 of file tz_support.c.

References AU_DISABLE, AU_ENABLE, Au_root, db_make_string(), db_put_internal(), and NO_ERROR.

Referenced by createdb(), and gen_tz().

Here is the caller graph for this function:

int tz_check_geographic_tz ( const TZ_ID tz_id)
int tz_check_session_has_geographic_tz ( void  )
int tz_conv_tz_datetime_w_region ( const DB_DATETIME src_dt,
const TZ_REGION src_tz_region,
const TZ_REGION dest_tz_region,
DB_DATETIME dest_dt,
TZ_ID src_tz_id_out,
TZ_ID dest_tz_id_out 
)
int tz_conv_tz_datetime_w_zone_name ( const DB_DATETIME src_dt,
const char *  source_zone,
int  len_source,
const char *  dest_zone,
int  len_dest,
DB_DATETIME dest_dt 
)

Definition at line 3858 of file tz_support.c.

References NO_ERROR, NULL, tz_conv_tz_datetime_w_region(), and tz_str_to_region().

Referenced by db_new_time().

Here is the caller graph for this function:

int tz_conv_tz_time_w_zone_name ( const DB_TIME time_source,
const char *  source_zone,
int  len_source,
const char *  dest_zone,
int  len_dest,
DB_TIME time_dest 
)
int tz_create_datetimetz ( const DB_DATETIME dt,
const char *  tz_str,
const int  tz_size,
const TZ_REGION default_tz_region,
DB_DATETIMETZ dt_tz,
const char **  end_tz_str 
)
int tz_create_datetimetz_from_offset ( const DB_DATETIME dt,
const int  tzh,
const int  tzm,
DB_DATETIMETZ dt_tz 
)
int tz_create_datetimetz_from_parts ( const int  m,
const int  d,
const int  y,
const int  h,
const int  mi,
const int  s,
const int  ms,
const TZ_ID tz_id,
DB_DATETIMETZ dt_tz 
)
int tz_create_datetimetz_from_utc ( const DB_DATETIME src_dt,
const TZ_REGION dest_region,
DB_DATETIMETZ dest_dt_tz 
)

Definition at line 5104 of file tz_support.c.

References db_datetimetz::datetime, NO_ERROR, tz_datetime_utc_conv(), tz_decode_tz_region(), tz_encode_tz_id(), and db_datetimetz::tz_id.

Referenced by tz_create_datetimetz_from_parts().

Here is the caller graph for this function:

int tz_create_datetimetz_from_zoneid_and_tzd ( const DB_DATETIME dt,
TZ_REGION default_tz_region,
const int  zone_id,
const char *  tzd,
const int  tzd_len,
bool  is_time_tz,
DB_DATETIMETZ dt_tz 
)
int tz_create_session_tzid_for_time ( const DB_TIME src_time,
bool  src_is_utc,
TZ_ID tz_id 
)

Definition at line 1091 of file tz_support.c.

References db_datetime::date, db_datetime::time, tz_create_session_tzid_for_datetime(), and tz_get_current_date().

Referenced by date_to_char(), and db_time_format().

Here is the caller graph for this function:

int tz_create_timestamptz ( const DB_DATE date,
const DB_TIME time,
const char *  tz_str,
const int  tz_size,
const TZ_REGION default_tz_region,
DB_TIMESTAMPTZ ts_tz,
const char **  end_tz_str 
)
int tz_create_timestamptz_from_offset ( const DB_DATE date,
const DB_TIME time,
const int  tzh,
const int  tzm,
DB_TIMESTAMPTZ timestamp_tz 
)
int tz_create_timestamptz_from_zoneid_and_tzd ( const DB_DATE date,
const DB_TIME time,
TZ_REGION default_tz_region,
const int  zone_id,
const char *  tzd,
const int  tzd_len,
DB_TIMESTAMPTZ timestamp_tz 
)
int tz_get_best_match_zone ( const char *  name,
int *  size 
)

Definition at line 4157 of file tz_support.c.

References assert, tz_name::name, tz_data::name_count, tz_data::names, NULL, starts_with(), strlen, and tz_get_data().

Referenced by db_str_to_date(), db_to_datetime(), db_to_time(), and db_to_timestamp().

Here is the caller graph for this function:

TZ_REGION* tz_get_client_tz_region_session ( void  )
int tz_get_first_weekday_around_date ( const int  year,
const int  month,
const int  weekday,
const int  after_day,
const bool  before 
)
const TZ_DATA* tz_get_new_timezone_data ( void  )

Definition at line 713 of file tz_support.c.

References NULL, tz_data::timezone_count, and tz_New_timezone_data.

Referenced by set_new_zone_id().

Here is the caller graph for this function:

int tz_get_offset_in_mins ( )

Definition at line 5480 of file tz_support.c.

Referenced by db_sys_timezone().

Here is the caller graph for this function:

const char* tz_get_session_local_timezone ( void  )

Definition at line 739 of file tz_support.c.

References prm_get_string_value(), and PRM_ID_TIMEZONE.

Referenced by do_evaluate_default_expr(), fetch_peek_arith(), pt_evaluate_db_value_expr(), and qexec_execute_insert().

Here is the caller graph for this function:

const char* tz_get_system_timezone ( void  )

Definition at line 749 of file tz_support.c.

References prm_get_string_value(), and PRM_ID_SERVER_TIMEZONE.

Referenced by do_evaluate_default_expr(), fetch_peek_arith(), pt_evaluate_db_value_expr(), qexec_execute_insert(), and sysprm_make_default_values().

Here is the caller graph for this function:

void tz_get_system_tz_region ( TZ_REGION tz_region)

Definition at line 758 of file tz_support.c.

References tz_Region_system.

Referenced by db_timestamp_encode_sys(), do_evaluate_default_expr(), fetch_peek_arith(), pt_evaluate_db_value_expr(), and qexec_execute_insert().

Here is the caller graph for this function:

int tz_get_timezone_offset ( const char *  tz_str,
int  tz_size,
char *  result,
DB_DATETIME utc_datetime 
)
const TZ_ID* tz_get_utc_tz_id ( void  )

Definition at line 816 of file tz_support.c.

Referenced by db_timestamp_encode_w_reg(), db_value_domain_default(), db_value_domain_max(), db_value_domain_min(), and tp_value_coerce_strict().

Here is the caller graph for this function:

const TZ_REGION* tz_get_utc_tz_region ( void  )

Definition at line 828 of file tz_support.c.

References TZ_REGION_OFFSET.

Referenced by db_timestamp_decode_w_reg(), and db_timestamp_encode_w_reg().

Here is the caller graph for this function:

void tz_id_to_region ( const TZ_ID tz_id,
TZ_REGION tz_region 
)

Definition at line 803 of file tz_support.c.

References tz_decode_tz_id(), and tz_encode_tz_region().

Referenced by db_date_add_sub_interval_expr().

Here is the caller graph for this function:

int tz_id_to_str ( const TZ_ID tz_id,
char *  tz_str,
const int  tz_str_size 
)

Definition at line 1789 of file tz_support.c.

References tz_decode_tz_id(), and tz_zone_info_to_str().

Referenced by db_datetimetz_to_string(), db_timestamptz_to_string(), and dbval_to_net_buf().

Here is the caller graph for this function:

int tz_load_with_library_path ( TZ_DATA tzd,
const char *  timezone_library_path 
)

Definition at line 4937 of file tz_support.c.

References ARG_FILE_LINE, assert, er_errid(), ER_ERROR_SEVERITY, er_set(), ER_TZ_LOAD_ERROR, NO_ERROR, NULL, tz_Lib_handle, tz_load_data_from_lib(), and tz_load_library().

Referenced by init_tz_name().

Here is the caller graph for this function:

int tz_resolve_os_timezone ( char *  timezone,
int  buf_size 
)

Definition at line 4588 of file tz_support.c.

References NULL, strlen, tz_data::timezone_names, tz_get_data(), and tz_get_zone_id_by_name().

Referenced by sysprm_final().

Here is the caller graph for this function:

void tz_set_data ( const TZ_DATA data)

Definition at line 702 of file tz_support.c.

Referenced by conv_tz(), and set_new_zone_id().

Here is the caller graph for this function:

void tz_set_new_timezone_data ( const TZ_DATA data)

Definition at line 729 of file tz_support.c.

Referenced by tzc_compute_timezone_checksum().

Here is the caller graph for this function:

void tz_set_tz_region_system ( const TZ_REGION tz_region)

Definition at line 4650 of file tz_support.c.

Referenced by prm_load_by_section(), and sysprm_set_value().

Here is the caller graph for this function:

int tz_str_read_number ( const char *  str,
const char *  str_end,
const bool  strict,
const bool  read_sign,
int *  val,
const char **  str_next 
)

Definition at line 2130 of file tz_support.c.

References assert, char_isdigit(), ER_FAILED, IS_EMPTY_STR, and NO_ERROR.

Referenced by str_read_day_var(), str_to_offset_rule_until(), tz_str_read_time(), tzc_add_ds_rule(), tzc_add_offset_rule(), and tzc_load_leap_secs().

Here is the caller graph for this function:

int tz_str_read_time ( const char *  str,
const char *  str_end,
bool  need_minutes,
bool  allow_sec60,
int *  hour,
int *  min,
int *  sec,
const char **  str_next 
)

Definition at line 2186 of file tz_support.c.

References assert, ER_FAILED, IS_EMPTY_STR, NO_ERROR, and tz_str_read_number().

Referenced by str_to_offset_rule_until(), tz_str_to_seconds(), and tzc_load_leap_secs().

Here is the caller graph for this function:

int tz_str_to_seconds ( const char *  str,
const char *  str_end,
int *  sec,
const char **  str_next,
const bool  is_offset 
)
void tz_timestamp_decode_no_leap_sec ( int  timestamp,
int *  yearp,
int *  monthsp,
int *  dayp,
int *  hoursp,
int *  minutesp,
int *  secondsp 
)

Definition at line 601 of file tz_support.c.

References IS_LEAP_YEAR, tz_Days_of_month, tz_Days_up_to_month, TZ_MON_FEB, and TZ_MON_JAN.

Referenced by fetch_peek_arith(), pt_evaluate_db_value_expr(), tz_full_timezones_start_scan(), and tz_timestamp_decode_sec().

Here is the caller graph for this function:

void tz_timestamp_decode_sec ( int  timestamp,
int *  yearp,
int *  monthsp,
int *  dayp,
int *  hoursp,
int *  minutesp,
int *  secondsp 
)

Definition at line 458 of file tz_support.c.

References tz_get_leapsec_support(), tz_timestamp_decode_leap_sec_adj(), and tz_timestamp_decode_no_leap_sec().

Referenced by db_timestamp_decode_utc().

Here is the caller graph for this function:

DB_BIGINT tz_timestamp_encode_leap_sec_adj ( const int  year_century,
const int  year,
const int  mon,
const int  day 
)

Definition at line 415 of file tz_support.c.

References tz_leap_sec::day, tz_data::ds_leap_sec, tz_data::ds_leap_sec_count, tz_leap_sec::month, NULL, tz_get_data(), tz_get_leapsec_support(), and tz_leap_sec::year.

Referenced by db_timestamp_encode_utc().

Here is the caller graph for this function:

int tz_timezones_start_scan ( THREAD_ENTRY thread_p,
int  show_type,
DB_VALUE **  arg_values,
int  arg_cnt,
void **  ptr 
)
void tz_unload ( void  )

Definition at line 381 of file tz_support.c.

References NULL, tz_Initialized, and tz_Lib_handle.

Referenced by boot_client_all_finalize(), boot_initialize_client(), boot_restart_client(), boot_server_all_finalize(), and dump_tz().

Here is the caller graph for this function: