Commit Graph

422 Commits (932751d3926f43f54622b19af79b38bc47baa4b2)

Author SHA1 Message Date
YuQing c841d6c1b0 change default values 2021-05-23 21:36:43 +08:00
YuQing 662e2036f6 add function sf_load_cluster_config_by_file 2021-05-22 17:12:27 +08:00
YuQing 4d1ef0ba1a add function sf_parse_cmd_option_bool 2021-05-20 09:55:02 +08:00
YuQing 89cef5e19d sf_usage support print other options 2021-05-19 11:50:09 +08:00
YuQing 808984bf1b sf_parse_daemon_mode_and_action enhancement 2021-05-14 16:57:38 +08:00
YuQing e93f6aa506 set max_pkg_size correctly
output size parameters more gracefully
2021-05-11 12:11:37 +08:00
YuQing e3a37b4e41 Merge branch 'config_simplify' 2021-05-10 20:29:36 +08:00
YuQing 01c2beed8a do NOT set thread name in main thread 2021-04-30 15:04:40 +08:00
YuQing 592fb2b866 sf_binlog_writer: change thread name for unity 2021-04-30 10:13:08 +08:00
YuQing eea7adde7c set thread name as necessary 2021-04-29 21:33:05 +08:00
YuQing 7d5e5d2340 merge cluster.conf and servers.conf 2021-04-28 20:25:55 +08:00
YuQing 03b6d7b20a change output of sf_log_network_error_ex1 2021-04-24 18:11:33 +08:00
YuQing 0d79aaf870 add macro SF_SESSION_ERROR_NOT_EXIST 2021-04-20 10:15:56 +08:00
YuQing 94bcf26518 bugfixed: sf_server_update_prepare_and_check MUST use request->body 2021-04-19 21:43:19 +08:00
YuQing e4d529ab29 define macro SF_CLUSTER_CONFIG_SIGN_LEN 2021-04-19 15:29:28 +08:00
YuQing 1443288d29 add macros SF_PROTO_CLIENT_SET_REQ etc. 2021-04-19 08:58:51 +08:00
YuQing 13a21d5908 add types and macros 2021-04-16 21:44:40 +08:00
YuQing 2792b2f275 sf_load_cluster_config_ex: add param full_cluster_filename 2021-04-12 15:29:46 +08:00
YuQing ee179a16f7 sf_recv_response_header: call SF_PROTO_CHECK_MAGIC 2021-04-12 15:29:01 +08:00
YuQing 68db56790c add function sf_notify_all_threads_ex 2021-04-09 21:26:57 +08:00
YuQing f563bb17ef SFProtoRecvBuffer enhanced (add SFProtoRBufferFixedWrapper) 2021-04-07 14:57:52 +08:00
YuQing b49a3370f5 add sf_cluster_cfg.[hc] 2021-03-31 11:00:03 +08:00
YuQing 9f232770da add sf_recv_vary_response and sf_send_and_recv_vary_response 2021-03-19 18:53:59 +08:00
YuQing a7a8f5af4b change connection_manager extra pointer 2021-03-17 14:32:51 +08:00
YuQing f60fcf0d82 server_expect_body_length etc.: remove useless task parameter 2021-03-16 19:05:50 +08:00
YuQing aa4f66c578 add macro server_expect_body_length etc. 2021-03-11 15:16:43 +08:00
YuQing 86017c46ac add functions sf_proto_init_task_context, sf_proto_deal_task_done etc. 2021-03-10 11:15:09 +08:00
YuQing ae600238bc add ENODATA convert 2021-03-05 11:25:21 +08:00
YuQing 221ae1727d add type SFKeyValueArray 2021-03-03 20:57:00 +08:00
YuQing 3616fde9e0 push_to_detect_queue when two sptr arrays equal 2021-02-22 21:50:49 +08:00
YuQing 89dd6733b6 split to prepare and start due to daemon_init 2021-02-22 21:21:25 +08:00
YuQing f3e24601d2 connection manager: support detect server for alive 2021-02-22 19:37:57 +08:00
YuQing f7ac526284 connection_manager support option: bg_thread_enabled 2021-02-21 21:20:36 +08:00
YuQing 47ed8fb46c faststore use this connection manager 2021-02-20 12:49:11 +08:00
YuQing 4aeec5385a sf_connection_manager impl all interfaces 2021-02-19 21:05:38 +08:00
YuQing 85f76e2f47 sf_connection_manager impl get_connection etc. 2021-02-19 16:47:45 +08:00
YuQing 3dc8efde5c impl proto_get_group_servers client side 2021-02-18 16:36:33 +08:00
YuQing 54b464e0f5 add get_group_servers protocol 2021-02-17 20:40:33 +08:00
YuQing 25dacd361f impl connection_manager init and add 2021-02-17 11:18:56 +08:00
YuQing 42715c9be0 add sf_connection_manager.[hc] 2021-02-15 13:26:51 +08:00
YuQing 67b412fb88 bugfixed: MUST set stage to SF_NIO_STAGE_NONE first for re-entry 2021-02-10 21:38:45 +08:00
YuQing 3a4a7069b9 add type SFBinlogWriterStat 2021-02-10 11:33:48 +08:00
YuQing 11165cbb20 log NULL continue_callback with SF_NIO_STAGE_CONTINUE 2021-02-09 22:25:32 +08:00
YuQing 1b4e0ad870 bugfixed: do NOT check order_by in sf_binlog_writer_change_next_version 2021-02-08 17:30:21 +08:00
YuQing 87b2e19766 add macro SF_CLUSTER_ERROR_LEADER_VERSION_INCONSISTENT 2021-01-25 16:21:18 +08:00
YuQing 3659542eba sf_binlog_writer: change order_by gracefully 2021-01-24 22:34:19 +08:00
YuQing ad8a7c379b log error when idempotency request not finished 2021-01-22 10:13:05 +08:00
YuQing 76f757f2bd bugfixed: add_to_flush_writer_queue MUST before deal function 2021-01-21 10:43:39 +08:00
YuQing 1ece8a3389 binlog writer simplify versioned buffer queue 2021-01-21 10:13:21 +08:00
YuQing 8040af4743 add macro SF_IS_SERVER_RETRIABLE_ERROR 2021-01-19 17:00:50 +08:00
YuQing 6bea6c93a9 add error code SF_ERROR_EOPNOTSUPP 2021-01-19 09:46:28 +08:00
YuQing 223f15fb79 add functions: sf_set_deal_task_func_ex etc. 2021-01-18 11:25:32 +08:00
YuQing 077c29e2b6 convert errno EBUSY 2021-01-12 17:58:19 +08:00
YuQing 20b0cee201 correct RETRIABLE and FORCE_CLOSE errno 2021-01-08 16:06:21 +08:00
YuQing 0014cfa154 add tag for debug 2021-01-07 20:19:13 +08:00
YuQing e459a0c255 should include sf_util.h 2021-01-07 15:44:37 +08:00
YuQing 1f95bdf89b call sf_localize_errno in sf_proto_extract_header 2021-01-07 15:40:23 +08:00
YuQing c0128c0f15 unify errno for crossing platform 2021-01-07 12:20:40 +08:00
YuQing 0825cfc5fe fast_mblock_free_object writer buffer 2021-01-06 18:45:26 +08:00
YuQing f01231bc48 upgrade version to 1.1.2 2021-01-01 08:21:57 +08:00
YuQing 0012c2de92 change function sf_add_slow_log_schedule prototype 2020-12-30 16:23:39 +08:00
YuQing a05e343e9b slow log config and schedule 2020-12-29 21:20:35 +08:00
YuQing fc5480214a unify log relative configs 2020-12-29 16:25:19 +08:00
YuQing b7b6ad46f6 add macro: sf_log_network_error_for_update 2020-12-19 10:10:34 +08:00
YuQing f7e76c0a97 support rebind idempotency channel 2020-12-18 22:27:10 +08:00
YuQing 269ada2688 support key_type one and two 2020-12-10 14:43:49 +08:00
YuQing 56eda633d8 add src/sf_sharding_htable.[hc] 2020-12-10 14:13:40 +08:00
YuQing 1d9add37fb add macro SF_BINLOG_BUFFER_SET_VERSION 2020-12-09 22:23:21 +08:00
YuQing d7309da368 sf_binlog_writer support version range 2020-12-09 11:46:12 +08:00
YuQing a6b9d8d08d TCP_SET_QUICK_ACK for Linux 2020-12-06 17:00:14 +08:00
YuQing 9f7af9b35d use iniGetByteCorrectValueEx to get byte value 2020-12-03 10:30:17 +08:00
YuQing e01048f462 network buff_size support extra size 2020-12-01 21:00:06 +08:00
YuQing acf27b0e4f use newest fast_timer in libfastcommon 2020-11-23 11:46:22 +08:00
YuQing baf9ad7c94 fix compile error: add -Iinclude CFLAGS 2020-11-09 21:02:29 +08:00
YuQing 4a92e31272 sf_nio_notify more graceful 2020-11-09 09:18:25 +08:00
YuQing cce11f56cb use function lcp_timedwait_sec 2020-10-31 14:20:12 +08:00
YuQing 42c8a65a8f logDebug when then nio stage equals to the target 2020-10-28 16:21:09 +08:00
YuQing b9b5dd490d add function sf_strerror 2020-10-28 16:07:22 +08:00
YuQing 719f8b2b32 task use reffer_count for share 2020-10-28 14:16:58 +08:00
YuQing 946bd8fe46 clear nio_stages.notify when task canceled 2020-10-27 08:56:31 +08:00
YuQing b9e22e61fc flush_writers: use chain instead of ptr array 2020-10-26 16:48:48 +08:00
YuQing 99f80b847e sf_load_read_rule_config support default value 2020-10-25 20:40:14 +08:00
YuQing e0bba18a02 use atomic operation to avoid reentrance 2020-10-21 09:32:49 +08:00
YuQing 5c6cff1ea3 check and correct thread_stack_size 2020-10-20 20:40:55 +08:00
YuQing 1854683ddd nio stage change to 2 fields: current and notify 2020-10-19 16:39:43 +08:00
YuQing 52254b522b correct active_test spell 2020-10-19 14:36:46 +08:00
YuQing 38df5d412c add AGPLv3 license and copyright 2020-10-14 10:33:41 +08:00
YuQing 79d367854b add type struct sf_space_stat 2020-10-11 12:53:41 +08:00
YuQing 730ed9db6e add function sf_send_and_recv_response_ex1 2020-10-10 15:06:04 +08:00
YuQing 6ccf936ee5 add function: sf_terminate_myself 2020-09-30 19:30:12 +08:00
YuQing c8a4f5e138 add func: sf_binlog_writer_get_last_lines 2020-09-30 11:46:04 +08:00
YuQing ceedb33e93 set SF_G_CONTINUE_FLAG only once :) 2020-09-29 18:18:38 +08:00
YuQing 58e35f7457 binlog_writer support order mode 2020-09-29 17:24:53 +08:00
YuQing 10f4e77262 binlog_writer support dynamic buffer size 2020-09-29 11:42:17 +08:00
YuQing c0d28ef560 add sf_binlog_writer.[hc] 2020-09-28 17:30:38 +08:00
YuQing 6cecfaa949 fixed printf format for port 2020-09-27 09:09:28 +08:00
YuQing a2b33ecfd8 add macros 2020-09-26 11:17:11 +08:00
YuQing c5ed084d90 use iniGetStrValueEx 2020-09-23 22:28:58 +08:00
YuQing f5ffd013f1 check task length 2020-09-22 22:40:20 +08:00
YuQing ee949f15f1 bugfixed: do NOT return result of sf_send_add_event 2020-09-22 22:25:45 +08:00
YuQing 62a35f03d5 add macro sf_nio_notify_silence 2020-09-22 17:26:46 +08:00
YuQing 0c4b35719c sf_log_network_error support log level 2020-09-22 10:51:58 +08:00
YuQing 1ded3a3844 small change 2020-09-22 09:03:47 +08:00
YuQing ea5b25a56a add function sf_proto_deal_ack 2020-09-21 10:46:37 +08:00
YuQing 4989e9d267 change deal_report_req_receipt parameters type 2020-09-20 21:51:20 +08:00
YuQing db6a189fde add macro defines for idempotency 2020-09-19 22:10:57 +08:00
YuQing 56ddf58a6f UPDATE WRAPPER support NULL connection_params 2020-09-19 17:18:29 +08:00
YuQing 19b863aceb add macro SF_CLIENT_IDEMPOTENCY_QUERY_WRAPPER 2020-09-19 14:28:09 +08:00
YuQing a363235a7e add idempotency/client/rpc_wrapper.h 2020-09-18 23:17:17 +08:00
YuQing 451f6da578 idempotency request: user defined response size 2020-09-17 21:33:43 +08:00
YuQing de20796666 add function: sf_active_test 2020-09-17 11:33:38 +08:00
YuQing 1c31e515e6 add function sf_send_and_recv_response_ex 2020-09-17 10:22:44 +08:00
YuQing 4c0dde69e5 channel buffer_size for receipt report 2020-09-16 21:52:43 +08:00
YuQing 04e2449545 support section for network config 2020-09-16 21:10:16 +08:00
YuQing 4db063335f set last_report_time correctly 2020-09-16 14:38:58 +08:00
YuQing 4d1dfb9cab idempotency channel heartbeat 2020-09-16 10:46:52 +08:00
YuQing 6433e3e8d9 server_handler.h OK 2020-09-15 20:58:37 +08:00
YuQing 6d4af38931 change idempotency/server files 2020-09-15 17:18:57 +08:00
YuQing 70a5822bdc add rpc idempotency 2020-09-15 14:49:34 +08:00
YuQing cf9999b0b1 add macro SF_FORCE_CLOSE_CONNECTION_ERROR 2020-09-15 10:19:27 +08:00
YuQing 02b345deb9 set IOEVENT_READ | IOEVENT_WRITE events for connect status check 2020-09-14 15:14:25 +08:00
YuQing 17d3af8fd5 fixed sf_load_read_rule_config 2020-09-13 21:10:29 +08:00
YuQing 1e6d4da265 retry global section when item not exist 2020-09-13 13:22:51 +08:00
YuQing a57d52be92 extern function: sf_task_detach_thread 2020-09-12 21:32:50 +08:00
YuQing cabb6a897c add macro SF_NET_RETRY_CHECK_AND_SLEEP 2020-09-12 15:42:22 +08:00
YuQing f18626b229 net retry struct adjust 2020-09-11 22:55:27 +08:00
YuQing b02dae19be add func sf_load_read_rule_config 2020-09-10 20:48:01 +08:00
YuQing ae72705785 add sf_configs.[hc] 2020-09-10 20:30:08 +08:00
YuQing b60912bfd6 task nio_stage use atomic opt. 2020-09-09 14:46:58 +08:00
YuQing 9bee7ad62b add SF_NIO_STAGE_HANDSHAKE after connect 2020-09-07 21:46:07 +08:00
YuQing aaeb421e6d support connect for client mode 2020-09-06 18:55:10 +08:00
YuQing 638c5b16a3 sf_parse_daemon_mode_and_action: set default action to start 2020-08-31 10:53:11 +08:00
YuQing 9e0f2dda7b add function: sf_set_sig_quit_handler 2020-08-30 16:44:09 +08:00
YuQing 2d41f58a6a add function sf_load_global_config_ex 2020-08-30 11:12:08 +08:00
YuQing 02adaac3e5 add func: sf_get_random_thread_data_ex 2020-07-15 09:23:22 +08:00
YuQing 8b11d63ac6 add func sf_enable_exit_on_oom 2020-07-11 17:41:00 +08:00
YuQing 43351fc67b use fastcommon/fc_memory.h 2020-07-07 10:33:51 +08:00
YuQing 88ba93d434 task free queue support init_callback 2020-05-06 16:04:52 +08:00
YuQing 86b369e218 check min/max buffer size 2020-04-26 15:17:24 +08:00
YuQing fcfe02896d use getPeerIpAddPort insteed of getPeerIpaddr 2020-03-26 11:37:32 +08:00
YuQing 17c51bce29 add global macros 2020-03-20 21:07:30 +08:00
YuQing 3b4aeff2d0 add realloc_task_buffer options 2020-03-16 13:09:11 +08:00
YuQing 115b1e7750 add function sf_enable_thread_notify_ex 2020-03-11 15:28:59 +08:00
YuQing 46dfd4ad01 bugfixed: task_cleanup_func 2020-03-10 21:11:30 +08:00
YuQing 01d24d4838 add_to_deleted_list instead of cleanup directly 2020-03-09 10:55:13 +08:00
YuQing c0df88aabf correct compile error in Linux 2020-03-08 16:54:43 +08:00
YuQing 965c8277c7 use Linux eventfd for notify 2020-03-08 16:14:41 +08:00
YuQing 0f2b3a8e2c log config for multi instances 2020-03-07 11:30:12 +08:00
YuQing de6def01e4 support multi instance 2020-03-06 22:04:34 +08:00
YuQing e181349daa add function sf_nio_forward_request 2020-03-03 10:21:10 +08:00
YuQing 5825a64e72 add macro SF_CHOWN_RETURN_ON_ERROR 2020-02-25 21:28:49 +08:00
YuQing 01d16a3611 support custom config 2020-02-22 11:24:12 +08:00
YuQing 5d3d0cafa6 support task nio_stage 2020-02-09 17:19:29 +08:00
YuQing 092f253ff2 fix bind_addr logic 2019-09-23 19:49:57 +08:00
YuQing 22cbb30e29 sf_util.h add two logger functions 2018-11-20 19:10:43 +08:00
yuqing 430c92c88f correct vsnprintf for log_plus 2018-08-16 18:24:30 +08:00
yuqing 811ee077f1 remove sf_load_server_info and sf_parse_server_info to libfastcommon 2018-08-14 17:49:23 +08:00
yuqing b622ed6b63 change SFServerInfo to ConnectionInfo 2018-08-14 17:18:47 +08:00
yuqing 1928ae42cc add function sf_client_sock_in_read_stage 2018-07-30 10:56:48 +08:00
yuqing a112039aa4 use sched_generate_next_id 2018-07-27 17:55:35 +08:00
yuqing a64f3ffab4 add function sf_usage and sf_parse_daemon_mode_and_action 2018-07-20 17:16:06 +08:00
yuqing b27ecc4c1e id to index 2018-06-26 10:57:48 +08:00
yuqing 3c06e33be8 use int_to_comma_str to format size 2018-06-11 17:24:52 +08:00
yuqing c8f7a0d2e4 make.sh and Makefile.in changed 2018-05-22 17:39:06 +08:00
yuqing 7cad20223b make.sh and Makefile.in changed 2018-05-22 17:06:43 +08:00
yuqing e759b2d0f8 add sf_startup_schedule and sf_set_current_time 2018-05-15 15:17:41 +08:00
yuqing 5f7e472692 sf_log_config refined 2018-05-14 18:40:20 +08:00
yuqing 27b208c296 log log_level 2018-05-11 18:31:09 +08:00
yuqing bbc7e78e05 add sample.conf 2018-05-10 17:56:40 +08:00
yuqing de94afb9db put global variables into a struct 2018-05-10 15:00:45 +08:00
yuqing fe2d4ff780 fix get thread id in mac OS 2018-05-10 11:24:02 +08:00
yuqing 6b69e90016 add codes 2018-05-10 11:05:08 +08:00