Commit Graph

704 Commits (c9083ae0cfd278519318305ab5ba3bbf119d5f03)

Author SHA1 Message Date
YuQing 80b751980b add function fc_format_path 2022-03-14 17:10:43 +08:00
YuQing 3fd3b167a8 small changes for logger.[hc] 2022-03-09 09:53:36 +08:00
YuQing 08f74db732 add function fc_check_rename_ex 2022-03-09 08:21:07 +08:00
YuQing 1cb1847b29 add function locked_list_destroy 2022-03-01 15:03:22 +08:00
YuQing 7b9c257652 rename trim to fc_trim 2022-02-25 09:44:15 +08:00
YuQing 9f1d1b6d48 rename hash_xxx to fc_hash_xxx 2022-02-09 22:35:40 +08:00
YuQing 3331b927b3 add function log_try_init2 2022-02-14 09:41:21 +08:00
YuQing e9d186ce99 make.sh: generate macros for dirent fields 2022-02-10 22:18:53 +08:00
YuQing 29cc5af134 add function fc_iov_get_bytes 2022-02-02 20:37:13 +08:00
YuQing 3f20211a52 add const modifier for unification 2022-02-01 21:30:47 +08:00
YuQing a19a0071db sockopt.[hc] support tcpwritev and tcpreadv 2022-01-31 17:03:42 +08:00
YuQing 787eb3a7d6 NULL from parameter for getcwd 2022-01-29 17:18:13 +08:00
YuQing 4b9e2d6517 add function fc_gettid 2022-01-29 15:56:41 +08:00
YuQing 505893dc4c change include <sys/poll.h> to #include <poll.h> 2022-01-28 18:16:28 +08:00
YuQing 34f8c3abb9 correct pthread_rwlockattr getkind_np to setkind_np 2022-01-28 18:05:27 +08:00
YuQing a39005253b check pthread_rwlockattr_getkind_np for porting 2022-01-28 12:44:21 +08:00
YuQing 0410c7fedd add function sched_delay_free_ptr 2022-01-12 11:03:50 +08:00
YuQing 0381982ac2 function fast_mblock_batch_alloc changed 2022-01-09 15:26:27 +08:00
YuQing af68bf5d6a add macros: fc_queue_notify and fc_queue_notify_all 2022-01-06 20:32:05 +08:00
YuQing 7fbdb0cece add macros: ptr_array_allocator_xxx 2022-01-03 10:24:28 +08:00
YuQing 89e1a99129 fastcommon php extension adapt to php 8 2021-12-31 03:15:38 +08:00
YuQing 59acf16fae php7_ext_wrapper.h adapt to php 8 2021-12-31 01:51:50 +08:00
YuQing d9097001b5 mblock stat output support order by used ratio 2021-12-24 17:16:39 +08:00
YuQing d5d317f912 fix cmp_mblock_info for fast_mblock_manager_stat 2021-12-24 11:40:52 +08:00
YuQing 750c2c5e8a normalize_path removes prefix one ./ and multi ../ 2021-12-23 10:04:48 +08:00
YuQing fdb6bfb233 fix test_uniq_skiplist.c compile error 2021-12-16 09:44:16 +08:00
YuQing f6c5256264 fast path for sorted_array_insert 2021-12-14 21:18:30 +08:00
YuQing 0c437d3799 array_allocator.[hc] add parameter: need_lock 2021-12-14 21:15:30 +08:00
YuQing 64ae0757d7 pthread_rwlock_init: use NULL attr for non-Linux 2021-12-12 20:43:20 +08:00
YuQing 720c4a686d mblock add macro FAST_MBLOCK_MAGIC_CHECK for debug 2021-12-12 10:16:06 +08:00
YuQing 87377981ec sorted_queue.h: remove useless field: next_ptr_offset 2021-12-10 10:34:47 +08:00
YuQing 740272e303 typedef TaskContinueCallback function pointer 2021-11-28 10:34:01 +08:00
YuQing 4f29fd71eb sorted_array.[hc]: add function sorted_array_delete_by_index 2021-11-17 20:37:18 +08:00
YuQing 976872192a add macros id_name_array_allocator_xxx 2021-11-17 11:41:53 +08:00
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