Commit Graph

670 Commits (718906e477386cda83e4f07a650f6bbb41042650)

Author SHA1 Message Date
YuQing b03963d4f6 add function sorted_array_find and marco sorted_id_name_array_init 2021-11-16 19:47:14 +08:00
YuQing ce2ee0f482 add macros FC_ATOMIC_SET_LARGER/SMALLER 2021-11-10 16:04:42 +08:00
YuQing 9ca9592326 shared_func.[hc]: add function fc_read_lines 2021-10-19 20:29:15 +08:00
YuQing 09e00bcf5e add functions fc_safe_write_file_init/open/close 2021-10-10 14:45:08 +08:00
YuQing a439b8e62d add macro FC_INIT_CHAIN and FC_IS_CHAIN_EMPTY 2021-10-09 20:54:35 +08:00
YuQing 8acd5e031b sched_thread.[hc]: add function sched_make_first_call_time 2021-09-27 15:51:45 +08:00
YuQing 2432e0bc79 add function fc_queue_alloc_chain 2021-09-22 09:25:28 +08:00
YuQing 1b35cbc094 sorted_queue.c: set notify correctly 2021-09-20 10:40:17 +08:00
YuQing 8491c5d155 add comments for sorted_array.h 2021-09-14 10:05:27 +08:00
YuQing 8717f85608 fast_allocator.c: optimize for the region with single allocator 2021-09-14 08:28:03 +08:00
YuQing 55f1e139a9 add file src/tests/test_sorted_array.c 2021-09-13 16:54:09 +08:00
YuQing 2993b34e80 add files: sorted_array.[hc] 2021-09-13 11:18:45 +08:00
YuQing 81950ac246 add function fc_queue_free_chain 2021-09-11 18:40:26 +08:00
YuQing 7614f789c8 add function sorted_queue_pop_to_queue_ex 2021-09-11 11:47:05 +08:00
YuQing f5fa33611f add files: array_allocator.[hc] 2021-09-10 16:36:14 +08:00
YuQing 6957c19992 fast_mblock.[hc]: add function fast_mblock_free_objects 2021-09-09 08:39:51 +08:00
YuQing a66370d0f8 add files: sorted_queue.[hc] 2021-09-02 21:05:09 +08:00
YuQing e1ef38d6a4 add type void_array_t 2021-08-20 11:01:50 +08:00
YuQing 45da326ce2 add types int32_array_t and int64_array_t 2021-08-19 19:28:15 +08:00
YuQing ebe7d87ca4 locked_list.h adds macros: locked_list_empty, locked_list_first_entry etc. 2021-08-17 15:39:01 +08:00
YuQing c6b2c32fe2 add function: fast_allocator_avail_memory 2021-08-17 10:01:42 +08:00
YuQing b7ecd0d4c4 add function init_pthread_rwlock 2021-08-13 21:10:05 +08:00
YuQing 2fafa215fd add function fc_queue_timedpeek 2021-08-11 11:32:23 +08:00
YuQing 44dcf4f821 add functions getFileContentEx1 and getFileContent1 2021-08-08 15:11:29 +08:00
YuQing 47c4eaeb13 fast_allocator.[hc]: correct reclaim_interval logic 2021-08-06 15:18:36 +08:00
YuQing 3e0f1eb1fc fast_mblock_init_ex1: unify obj name 2021-07-20 20:27:48 +08:00
YuQing 75b2aaee97 open for write MUST have the third parameter: mode 2021-07-01 07:41:29 +08:00
YuQing de879c15ee uniq_skiplist.h: add function uniq_skiplist_iterator_at 2021-06-30 15:05:31 +08:00
YuQing 3ad4a89ff5 process_action support action status 2021-06-26 11:00:52 +08:00
YuQing e10bb45605 correct macro MEM_ALIGN 2021-06-11 11:09:48 +08:00
YuQing a5ee277e2d add macros: MEM_ALIGN_FLOOR and MEM_ALIGN_CEIL 2021-06-11 11:03:26 +08:00
YuQing ba1f8eb38f add function fc_check_realloc_iovec_array 2021-06-08 14:15:24 +08:00
YuQing e6be76eb74 remove compile warning (the compiler is too worried) 2021-06-06 16:25:21 +08:00
YuQing 1d1a766c70 process_restart more gracefully 2021-06-04 17:56:02 +08:00
YuQing e068391c87 add function get_path_block_size and get_device_block_size 2021-06-02 11:07:28 +08:00
YuQing 48f108b40d add function fc_queue_pop_to_queue_ex 2021-06-01 17:08:24 +08:00
YuQing 41681a5eb7 process_stop more gracefully (kill -9 on timeout) 2021-06-01 15:34:18 +08:00
YuQing da2077c6b8 add function get_kernel_version 2021-05-27 10:05:52 +08:00
YuQing 8174aed8e3 set errno to result ASAP for safety 2021-05-26 18:05:50 +08:00
YuQing ec181d51cf use macros: IS_URL_RESOURCE and IS_FILE_RESOURCE 2021-05-26 18:01:13 +08:00
YuQing 639d388c6d use libcurl to fetch URL resource 2021-05-26 15:21:55 +08:00
YuQing 768fbb68d4 normalize_path support file resource start with file:// 2021-05-26 09:38:04 +08:00
YuQing 6fddce73c5 add function normalize_path_ex and normalize_uri 2021-05-25 16:48:10 +08:00
YuQing df4fdfcab7 uniq_skiplist.[hc]: init function add parameter: allocator_use_lock 2021-05-20 10:08:01 +08:00
YuQing 797f4e08b8 fast_mblock.[hc]: support batch alloc and batch free 2021-05-18 15:06:59 +08:00
YuQing 4558290e1e add macro fc_fallocate 2021-05-11 09:07:23 +08:00
YuQing 63d57f82c6 set thread name OK 2021-04-28 07:54:57 +08:00
YuQing 082da383ff set thread name as necessary 2021-04-29 21:02:36 +08:00
YuQing 9d9cee76ac add functions fc_server_load_from_ini_context etc. 2021-04-28 20:31:00 +08:00
YuQing f37c3bf013 parse_bytes function more graceful 2021-04-17 21:51:27 +08:00
YuQing 76ef22d380 add function locked_list_count 2021-04-12 15:31:59 +08:00
YuQing 6a3bcd4547 add file locked_list.h 2021-04-09 21:28:22 +08:00
YuQing c1bb9d6532 add functions: fc_queue_push_queue_to_tail etc. 2021-04-07 14:53:29 +08:00
YuQing 097a7db3cb add functions: fc_check_filename_ex 2021-03-28 21:08:20 +08:00
YuQing cc304e5d7a add functions: fc_string_case_compare, fc_string_case_equal etc. 2021-03-21 10:15:29 +08:00
YuQing 07ba689835 add FilenameString type and macro 2021-03-19 09:17:11 +08:00
YuQing 13de41bc05 add functions: fc_mkdirs and str_replace 2021-03-16 09:10:34 +08:00
YuQing 88aa31df07 add uniq_skiplist_pair struct and init function 2021-03-15 20:57:48 +08:00
YuQing 04226e28fc add macros: FC_ABS and FC_NEGATIVE 2021-03-10 14:38:09 +08:00
YuQing 3f15be8d92 correct tests compile error and warning 2021-02-25 15:09:35 +08:00
YuQing 0ed5b405d9 add test_mutex_lock_perf 2021-02-25 15:06:23 +08:00
YuQing 02701c3781 add function fc_queue_timedpop 2021-02-01 10:52:55 +08:00
YuQing 12aab5f94c small changes for logger.c 2021-02-01 09:27:18 +08:00
YuQing 35aa996333 add function common_blocked_queue_timedpop 2021-01-29 17:39:12 +08:00
YuQing 41a4ca78c7 fast_buffer.[hc]: add function fast_buffer_append_binary 2021-01-27 21:10:43 +08:00
YuQing aea8a6562d fc_atomic.h add FC_ATOMIC_GET, FC_ATOMIC_INC etc. 2021-01-15 18:05:39 +08:00
YuQing c822e92b19 fast_mblock.[hc]: support wait with element limit 2021-01-14 15:25:37 +08:00
YuQing 1f126476bc fc_atomic.h: add FC_ATOMIC_SET 2021-01-11 16:22:39 +08:00
YuQing 10c037e32d bugfixed for rpm build 2020-12-31 20:53:57 +08:00
YuQing 7d5a540a2f INI_FIND_ITEM just break instead of return 2020-12-29 16:21:00 +08:00
YuQing 89c68e11db add function get_time_item_from_conf_ex 2020-12-29 15:15:49 +08:00
YuQing 89abbd2ee4 use readdir instead of readdir_r in Linux 2020-12-24 18:34:16 +08:00
YuQing 7190fad3d0 add function uniq_skiplist_find_node_ex 2020-12-24 16:03:53 +08:00
YuQing 3e192fae09 fc_timedwait_ms must call get_current_time_ms() 2020-12-11 11:36:12 +08:00
YuQing 0cd65f088c tcp_quick_ack option for Linux 2020-12-06 16:59:09 +08:00
YuQing ff7109fcd4 add function: get_current_time_ns 2020-12-04 19:33:21 +08:00
YuQing 85354b6ef6 add functions: iniGetByteValueEx and iniGetIntCorrectValueEx 2020-12-02 18:10:45 +08:00
YuQing 5a04c1c656 timer_modify check new_expires 2020-12-02 13:57:28 +08:00
YuQing 0995f447cb bugfixed: cpool_node object pool must use lock 2020-12-01 21:05:45 +08:00
YuQing 3d74837527 add tests/test_data_visible.c 2020-11-30 10:50:29 +08:00
YuQing 93e6cec05d locked_timer: atomic opt for lock_index 2020-11-29 21:52:49 +08:00
YuQing b236808a69 set entry status and index correctly in add_entry 2020-11-26 22:41:29 +08:00
YuQing 1189c97d8e fast_timer.h restore to NO lock version 2020-11-26 17:26:43 +08:00
YuQing 8718818dc0 add locked_timer.[hc]: time wheel timer with lock 2020-11-26 16:18:37 +08:00
YuQing f5028fcbe0 fast_timer.[hc]: support lock for option 2020-11-23 11:45:33 +08:00
YuQing 58e1aea32b add function: fc_queue_empty 2020-11-03 22:09:42 +08:00
YuQing 5f9bfd8bae add function: iniGetPercentValueEx 2020-10-31 14:19:21 +08:00
YuQing 2e85b7ad9d add functions: fc_timedwait_xxx 2020-10-29 21:10:03 +08:00
YuQing 1ac8c8f3c2 fast_task_info add fields: reffer_count and continue_callback 2020-10-28 11:59:37 +08:00
YuQing d54007f79b check poll result for POLLHUP and POLLERR 2020-10-25 20:42:53 +08:00
YuQing bb33b2e09f notify field: add volatile modifier 2020-10-21 09:30:53 +08:00
YuQing 5b6bb3193b fast_task_queue.h: change nio_stage field 2020-10-19 16:35:36 +08:00
YuQing 56a5ac4f92 modify license to LGPLv3 and copyright 2020-10-14 11:03:46 +08:00
YuQing fa8f93b018 add function skiplist_get_proper_level 2020-10-10 11:11:42 +08:00
YuQing 0aab6a0531 correct spell iovent to ioevent :( 2020-09-30 18:57:08 +08:00
YuQing dc40977500 sched_thread.c: sched_add_entries gracefully 2020-09-29 22:18:30 +08:00
YuQing 118f1e2e2e correct printf format for port 2020-09-27 09:24:32 +08:00
YuQing 7d5512682b fixed printf format for port 2020-09-27 08:53:57 +08:00
YuQing 082a322f3d change port type to uint16_t 2020-09-27 08:46:46 +08:00
YuQing 55fc4013b3 add function fc_get_last_lines 2020-09-26 11:15:57 +08:00
YuQing dc43f8254a remove useless logInfo 2020-09-21 22:27:16 +08:00
YuQing 556b7337c4 add file src/fc_atomic.h 2020-09-14 15:05:38 +08:00
YuQing 23d8adf05f ini support retry gloabal section when item not exist 2020-09-13 13:20:41 +08:00
YuQing bc5efd235e add function fc_sleep_ms 2020-09-12 15:41:16 +08:00
YuQing 6a54076cf5 change field nio_stage from char to short 2020-09-09 12:26:43 +08:00
YuQing 488e483d22 schedule waiting_schedule_array use atomic opt 2020-09-08 18:53:08 +08:00
YuQing 130d7fe110 add func conn_pool_compare_ip_and_port 2020-09-08 09:06:26 +08:00
YuQing a749b84ce2 sockopt.[hc]: add function asyncconnectserverbyip 2020-09-06 18:49:15 +08:00
YuQing d9b914ea6e set rlim_max for setrlimit call 2020-09-04 09:09:14 +08:00
YuQing 98b816c625 fast_mblock.[hc]: support alloc elements limit 2020-09-01 21:22:13 +08:00
YuQing 6eb2d1c2e7 shared_func.[hc]: add function fc_path_contains 2020-08-31 16:02:10 +08:00
YuQing 3ff6cd8844 ini_file_reader.h: add struct ini_full_context 2020-08-29 15:44:17 +08:00
YuQing cc80f721f2 add functions: fc_get_first_line and fc_get_last_line 2020-08-24 11:35:31 +08:00
YuQing f776a818f4 correct old_value in the log info 2020-08-22 12:02:23 +08:00
YuQing c2d8faaba7 thread pool enhance 2020-08-05 15:00:37 +08:00
YuQing 4b085fbc09 add functions: get thread counters 2020-07-22 17:54:14 +08:00
YuQing 29586005ba add files: thread_pool.[hc] 2020-07-20 18:03:47 +08:00
YuQing 8e0f5794d9 add files: shared_buffer.[hc] 2020-07-10 21:44:10 +08:00
YuQing 4aad4f78b9 add files: fc_memory.[hc] 2020-07-07 10:32:16 +08:00
YuQing ec22ab681e bugfixed: uniq_addresses use FCAddressPtrArray 2020-06-28 19:26:42 +08:00
YuQing fb03bf23ba add fc_queue.[hc] 2020-06-01 16:38:48 +08:00
YuQing 473b1e7218 add function: fc_get_umask 2020-05-29 14:32:42 +08:00
YuQing 7187840167 add src/tests/test_file_lock.c 2020-05-24 15:11:31 +08:00
YuQing d1f1bf97e1 add function uniq_skiplist_replace_ex 2020-05-21 18:10:28 +08:00
YuQing 85aff01e5e test_crc32.c support offset and size 2020-05-17 15:54:41 +08:00
YuQing b9cae5de7f add macro PTHREAD_MUTEX_LOCK 2020-05-10 20:29:05 +08:00
YuQing 7149a54128 use mutex lock when access dynamic content array 2020-05-07 16:41:21 +08:00
YuQing 54cb8f8415 free_queue support init_callback 2020-05-06 16:04:01 +08:00
YuQing 87d7b1f55d add fc_list_first_entry 2020-05-05 11:13:00 +08:00
YuQing e86767c120 add function fc_list_add_before 2020-05-02 21:12:51 +08:00
YuQing 73dba84e82 uniq_skiplist_grow set prev link correctly 2020-04-27 14:16:00 +08:00
YuQing e4a5cadfe1 connection info support extra data 2020-04-26 20:19:46 +08:00
YuQing c8bf9f24ef connection_pool support validate connection on error 2020-04-26 11:12:52 +08:00
YuQing 4011fcb39e add test_file_write_hole.c 2020-04-24 22:15:41 +08:00
YuQing 688fcf4b74 uniq_skiplist add some macro defines 2020-04-22 20:27:21 +08:00
YuQing 759fd117d8 uniq_skiplist support bidirection 2020-04-21 09:31:04 +08:00
YuQing 4e53bd3e2d skiplist add function find_ge 2020-04-10 10:19:53 +08:00
YuQing 01b1841fda add function fc_get_file_line_count_ex 2020-03-31 10:10:49 +08:00
YuQing 201daee3b6 mblock_manager_stat_print format 2020-03-30 23:20:55 +08:00
YuQing c6ddfb98a1 correct int64_t compare result 2020-03-30 19:00:00 +08:00
YuQing 46da99bbba mblock stat type: int to int64_t 2020-03-30 18:44:34 +08:00
YuQing 0810cb4d21 bugfixed: allocator_array_check_capacity alloc size 2020-03-29 22:03:13 +08:00
YuQing 427818d005 fast_mblock stats refine 2020-03-29 12:30:42 +08:00
YuQing 590aa8d3a0 bugfixed: call fast_mblock_destroy in common_blocked_queue_destroy 2020-03-28 23:12:02 +08:00
YuQing 2df796589c add function common_blocked_queue_push_ex 2020-03-26 19:04:41 +08:00
YuQing d3b0c5dfb0 add function fast_buffer_set_capacity 2020-03-26 15:51:31 +08:00
YuQing c2837fde5f add functions getIpAndPort and getPeerIpAndPort 2020-03-26 11:36:44 +08:00
YuQing da4c9a2581 common_blocked_queue_return_nodes 2020-03-23 21:54:31 +08:00
YuQing 6d88bb980d bugfixed: must use lock when free_all_nodes 2020-03-22 13:21:20 +08:00
YuQing edb8b2c4dd sched_add_entries use temp ScheduleArray for rare case 2020-03-21 09:50:03 +08:00