2017-09-18 18:59:59 +08:00
2017-09-27 19:26:08 +08:00
64) 2017.9.27
64.1) workaround: Ϊ<> <CEAA> <EFBFBD> <EFBFBD> ʹ <EFBFBD> <CAB9> valgrind <20> <> <EFBFBD> <EFBFBD> <EFBFBD> ڴ<EFBFBD> <DAB4> <EFBFBD> <EFBFBD> ⣬<EFBFBD> <E2A3AC> <EFBFBD> ڲ<EFBFBD> һ Щ<D2BB> <D0A9> ̬<EFBFBD> <CCAC> ȫ<EFBFBD> ֶ<EFBFBD> ̬
<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ֶ<EFBFBD> <EFBFBD> ͷţ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Ӧ<EFBFBD> ò鿴<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ڴ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
2017-09-23 19:51:03 +08:00
63) 2017.9.23
63.1) feature: hook_io.c ֧<> <D6A7> hook mkdir
2017-09-23 00:27:26 +08:00
62) 2017.9.22
62.1) feature: hook_io.c ֧<> <D6A7> hook stat/fstat/lstat
2017-09-20 17:45:27 +08:00
61) 2017.9.20
61.1) feature: hook_net.c ֧<> <D6A7> epoll_create1 API
2017-09-18 18:59:59 +08:00
60) 2017.9.18
60.1) feature: <20> <> <EFBFBD> <EFBFBD> fiber_trigger <20> <> <EFBFBD> <EFBFBD> <EFBFBD> ڰ<EFBFBD> ʱ<EFBFBD> 䴥<EFBFBD> <E4B4A5> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
2017-09-10 17:16:06 +08:00
59) 2017.9.10
59.1) feature: Э<> ̷<EFBFBD> <CCB7> <EFBFBD> <EFBFBD> <EFBFBD> ģ<EFBFBD> <C4A3> <EFBFBD> <EFBFBD> ִ<EFBFBD> <D6B4> <EFBFBD> <EFBFBD> reload <20> <> <EFBFBD> <EFBFBD> <EFBFBD> Խ<EFBFBD> ִ<EFBFBD> <D6B4> ״̬<D7B4> <CCAC> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> master
2017-07-22 21:32:21 +08:00
2017-08-25 13:34:48 +08:00
58) 2017.8.25
58.1) feature: <20> <> <EFBFBD> <EFBFBD> C++ <20> 汾<EFBFBD> <E6B1BE> Э<EFBFBD> ̶<EFBFBD> ʱ<EFBFBD> <CAB1> <EFBFBD> <EFBFBD> fiber_timer
58.2) feature: acl_fiber_create_timer <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Э<EFBFBD> <D0AD> ջ<EFBFBD> <D5BB> С <EFBFBD> <D0A1> <EFBFBD> <EFBFBD>
2017-08-21 17:39:48 +08:00
57) 2017.8.21
57.1) feature: fiber_server.c <20> <> <EFBFBD> ڶ<EFBFBD> <DAB6> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ʱҲ<CAB1> <D2B2> <EFBFBD> <EFBFBD> ͨ<EFBFBD> <CDA8> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ļ<EFBFBD> ָ<EFBFBD> <D6B8> master_reuseport
ѡ <EFBFBD> <EFBFBD>
2017-07-27 18:16:39 +08:00
56) 2017.7.27
56.1) compile: master_fiber.hpp <20> <> ȥ<EFBFBD> <C8A5> <EFBFBD> ˶<EFBFBD> master_base.hpp <20> İ<EFBFBD> <C4B0> <EFBFBD> <EFBFBD> <EFBFBD> Ҫ<EFBFBD> <D2AA> Ӧ<EFBFBD> <D3A6>
<EFBFBD> <EFBFBD> Ҫ<EFBFBD> <EFBFBD> <EFBFBD> Ȱ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ͷ<EFBFBD> ļ<EFBFBD>
56.2) compile: lib_fiber.h <20> <> ȥ<EFBFBD> <C8A5> <EFBFBD> ˶<EFBFBD> lib_acl.h <20> İ<EFBFBD> <C4B0> <EFBFBD>
2017-07-22 21:32:21 +08:00
55) 2017.7.22
55.1) feature: master_fiber <20> <> <EFBFBD> <EFBFBD> get_conf_path, acl_fiber_server.cpp <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
acl_fiber_server_conf<EFBFBD> <EFBFBD> <EFBFBD> ˶<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ڻ<EFBFBD> <EFBFBD> õ<EFBFBD> ǰ<EFBFBD> ķ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ļ<EFBFBD> ·<EFBFBD> <EFBFBD>
2017-07-07 10:24:38 +08:00
54) 2017.7.7
54.1) feature: master/fiber_server.c <20> н<EFBFBD> fiber_sleep Э<> ̵<EFBFBD> ջ<EFBFBD> <D5BB> С <EFBFBD> <D0A1> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
<EFBFBD> <EFBFBD> <EFBFBD> ƣ<EFBFBD> ͬʱ<EFBFBD> <EFBFBD> <EFBFBD> ڲ<EFBFBD> <EFBFBD> <EFBFBD> STACK_SIZE ȱʡֵ<CAA1> <D6B5> 64 K <20> <> Ϊ 128 K<> <4B> <EFBFBD> <EFBFBD> ֵҲ<D6B5> <D2B2> <EFBFBD> û<EFBFBD> <C3BB> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
Э<EFBFBD> ̵<EFBFBD> ջȱʡ<EFBFBD> <EFBFBD> С
2017-07-02 23:10:17 +08:00
2017-07-04 23:33:28 +08:00
53) 2017.7.4
53.1) feature: fiber_server.c/master_fiber.cpp ֧<> <D6A7> SIGHUP <20> źŻص<C5BB> <D8B5> <EFBFBD> <EFBFBD> <EFBFBD>
53.2) <20> ع<EFBFBD> fiber_server.c/master_fiber.cpp <20> <> <EFBFBD> <EFBFBD>
2017-07-02 23:10:17 +08:00
52) 2017.7.2
52.1) feature: fiber_server.c ֧<> ֶ<EFBFBD> <D6B6> ߳<EFBFBD> <DFB3> <EFBFBD> <EFBFBD> <EFBFBD> ģʽ
2017-06-06 09:26:14 +08:00
51) 2017.6.6
51.1) feature: fiber_server.c <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Э<EFBFBD> ̵<EFBFBD> <CCB5> <EFBFBD> ǰ<EFBFBD> Ĺ<EFBFBD> <C4B9> ̷<EFBFBD> <CCB7> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ߳<EFBFBD> <DFB3> н<EFBFBD> <D0BD> У <EFBFBD> <D0A3> Ӷ<EFBFBD> ʹ
<EFBFBD> öδ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ջ<EFBFBD> <EFBFBD> С <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Э<EFBFBD> <EFBFBD> ջ<EFBFBD> <EFBFBD> С <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
2017-05-16 23:22:07 +08:00
50) 2017.5.16
50.1) feature: fiber_server.c Э<> ̷<EFBFBD> <CCB7> <EFBFBD> <EFBFBD> <EFBFBD> ģ<EFBFBD> <C4A3> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ƽ <EFBFBD> <C6BD> <EFBFBD> ˳<EFBFBD> <CBB3> <EFBFBD> <EFBFBD> <EFBFBD>
2017-05-01 11:51:04 +08:00
49) 2017.5.1
49.1) samples/pgsql: <20> <> <EFBFBD> Ӳ<EFBFBD> <D3B2> <EFBFBD> postgresql <20> Ŀͻ<C4BF> <CDBB> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
2017-04-11 23:14:39 +08:00
2017-04-24 22:49:42 +08:00
48) 2017.4.24
48.1) bugfix: fiber.s <20> <> acl_fiber_set_specific <20> ڵ<EFBFBD> <DAB5> <EFBFBD> realloc <20> <> <EFBFBD> ·<EFBFBD> <C2B7> <EFBFBD> <EFBFBD> ڴ<EFBFBD> <DAB4> <EFBFBD>
ʱӦ<EFBFBD> ý<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> е IJ<EFBFBD> <EFBFBD> <EFBFBD> NULL
2017-04-22 19:39:13 +08:00
------------------------------------------------------------------------------
2017-04-13 21:50:55 +08:00
47) 2017.4.13
47.1) feature: hook_net.c <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> getaddrinfo <20> <> ֧<EFBFBD> <D6A7>
2017-04-11 23:14:39 +08:00
46) 2017.4.10
46.1) feature: Э<> <D0AD> <EFBFBD> ź<EFBFBD> <C5BA> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ߳<EFBFBD> ʹ <EFBFBD> <CAB9> ʱ<EFBFBD> <CAB1> <EFBFBD> <EFBFBD> ֹ<EFBFBD> <D6B9> <EFBFBD> <EFBFBD> ͬһ <CDAC> ź<EFBFBD> <C5BA> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ͬ<EFBFBD> ߳<EFBFBD> ʹ <EFBFBD> <CAB9>
2017-03-31 23:04:16 +08:00
45) 2017.3.29
45.1) bugfix: <20> <> һ <EFBFBD> <D2BB> Э<EFBFBD> ̴<EFBFBD> <CCB4> <EFBFBD> poll wait ״̬ʱ<CCAC> <CAB1> <EFBFBD> <EFBFBD> һ <EFBFBD> <D2BB> Э<EFBFBD> <D0AD> kill <20> <> ʱ<EFBFBD> <CAB1> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ڴ<EFBFBD>
<EFBFBD> Ƿ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ʣ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ʽ <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> event.c <20> ж<EFBFBD> poll list <20> ı <EFBFBD> <C4B1> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ʲ<EFBFBD> <CAB2> <EFBFBD> pop <20> <> ʽ <EFBFBD> <CABD> ͬʱ<CDAC> <CAB1>
hook_net.c <20> е <EFBFBD> poll <20> <> <EFBFBD> <EFBFBD> <EFBFBD> е <EFBFBD> <D0B5> <EFBFBD> kill ʱ<> Զ<EFBFBD> <D4B6> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> 뱾 BUG <20> <> <EFBFBD> ص<EFBFBD> <D8B5> ļ<EFBFBD> <C4BC> <EFBFBD>
fiber.c, hook_net.c, event.c<> <63> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> hook_net.c <20> <> event.c <20> е <EFBFBD> <D0B5> <EFBFBD> <DEB8> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ؼ<EFBFBD> <D8BC> <EFBFBD>
44) 2017.3.28
44.1) feature: fiber.c <20> <> fiber_alloc <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> û<EFBFBD> <C3BB> <EFBFBD> <EFBFBD> <EFBFBD> Э<EFBFBD> <D0AD> <EFBFBD> ڴ<EFBFBD> <DAB4> <EFBFBD> <EFBFBD> <EFBFBD> ʱ<EFBFBD> <CAB1> Ӧ<EFBFBD> <D3A6> <EFBFBD> <EFBFBD>
free->malloc<6F> <63> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ǵ<EFBFBD> <C7B5> <EFBFBD> realloc<6F> <63> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> һ <EFBFBD> <D2BB> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Ա<EFBFBD> <D4B1> <EFBFBD> ʹ <EFBFBD> <CAB9> tcmalloc ʱ<> <CAB1> valgrind
<EFBFBD> <EFBFBD> <EFBFBD> ڴ澯<EFBFBD> 棬<EFBFBD> <EFBFBD> һ <EFBFBD> <EFBFBD> <EFBFBD> 棬<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Ч<EFBFBD> <EFBFBD> ʹ <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
2017-03-12 14:49:48 +08:00
2017-03-25 23:05:44 +08:00
43) 2017.3.23
2017-03-31 23:04:16 +08:00
43.1) feature: fiber.c <20> <> acl_fiber_signal/acl_fiber_kill <20> У <EFBFBD> <D0A3> <EFBFBD> Ҫ<EFBFBD> <D2AA> <EFBFBD> <EFBFBD> errno
Ϊ ECANCELED
2017-03-25 23:05:44 +08:00
2017-03-12 14:49:48 +08:00
42) 2017.3.9
2017-03-31 23:04:16 +08:00
42.1) compile: ?<3F> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> valgrind <20> <> <EFBFBD> <EFBFBD> ѡ <EFBFBD> <D1A1> ʱ<EFBFBD> <CAB1> <EFBFBD> <EFBFBD> һ <EFBFBD> <D2BB> <EFBFBD> <EFBFBD> <EFBFBD> 뾯<EFBFBD> <EBBEAF>
42.2) workaround: master_fiber <20> <> <EFBFBD> е ķ<D0B5> <C4B7> <EFBFBD> run_alone ȥ<> <C8A5> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> һ <EFBFBD> <D2BB> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ԭ<EFBFBD> <D4AD> <EFBFBD> <EFBFBD>
<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ƴ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ɴ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ļ<EFBFBD> <EFBFBD> ж<EFBFBD> ȡ
2017-03-12 14:49:48 +08:00
2017-02-12 21:39:38 +08:00
41) 2017.2.9
2017-03-31 23:04:16 +08:00
41.1) bugfix: fiber.c <20> У <EFBFBD> fiber_init <20> <> <EFBFBD> <EFBFBD> Ӧ<EFBFBD> ñ<EFBFBD> <C3B1> 뱣֤ __sys_errno Ϊ NULL ʱ
<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ã<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> һ Щ<EFBFBD> <EFBFBD> ̬<EFBFBD> <EFBFBD> ʼ <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Ҫ __sys_errno <20> <> ʹ <EFBFBD> <CAB9>
2017-02-12 21:39:38 +08:00
2017-01-23 16:59:58 +08:00
40) 2017.1.23
2017-03-31 23:04:16 +08:00
40.1) workaround: Э<> ̺<EFBFBD> ͳһ <CDB3> ij<EFBFBD> <C4B3> <EFBFBD> <DEB7> <EFBFBD> 32 λ<> <CEBB> <EFBFBD> <EFBFBD>
2017-01-23 16:59:58 +08:00
2017-01-12 20:09:06 +08:00
39) 2017.1.12
2017-03-31 23:04:16 +08:00
39.1) bugfix: Э<> <D0AD> <EFBFBD> <EFBFBD> ˫ͨģʽ <C4A3> £<EFBFBD> <C2A3> <EFBFBD> <EFBFBD> <EFBFBD> дʱ<D0B4> <CAB1> <EFBFBD> <EFBFBD> <EFBFBD> ᵼ<EFBFBD> ¶<EFBFBD> Ҳ<EFBFBD> <D2B2> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Ϊ<EFBFBD> ӳٹر<D9B9>
<EFBFBD> <EFBFBD> <EFBFBD> ¼<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ò<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
2017-01-12 20:09:06 +08:00
2017-01-05 14:31:41 +08:00
38) 2017.1.5
2017-03-31 23:04:16 +08:00
38.1) bugfix: fiber.c <20> к<EFBFBD> <D0BA> <EFBFBD> acl_fiber_killed <20> е <EFBFBD> <D0B5> ж<EFBFBD> <D0B6> <EFBFBD> <EFBFBD> <EFBFBD>
2017-01-05 14:31:41 +08:00
2016-12-31 13:52:34 +08:00
37) 2016.12.31
2017-03-31 23:04:16 +08:00
37.1) feature: <20> <> <EFBFBD> <EFBFBD> acl_fiber_signal <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Э<EFBFBD> ̸<EFBFBD> <CCB8> <EFBFBD> <EFBFBD> <EFBFBD> Э<EFBFBD> ̷<EFBFBD> <CCB7> ͻ<EFBFBD> <CDBB> <EFBFBD> <EFBFBD> ź<EFBFBD>
2016-12-31 13:52:34 +08:00
2016-12-29 23:58:18 +08:00
36) 2016.12.27
2017-03-31 23:04:16 +08:00
36.1) bugfix: fiber.cpp <20> <> kill <20> <> <EFBFBD> <EFBFBD> <EFBFBD> 轫 f_ <20> <> Ա<EFBFBD> <D4B1> NULL<4C> <4C> <EFBFBD> <EFBFBD> ֹǶ<D6B9> <EFBFBD> <D7B7> ʷǷ<CAB7> <C7B7> <EFBFBD> ַ
36.2) feature: fiber.cpp <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ǰ<EFBFBD> <C7B0> <EFBFBD> е <EFBFBD> Э<EFBFBD> <D0AD> <EFBFBD> <EFBFBD> fiber <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> (ֻ<> <D6BB> <EFBFBD> ڹ<EFBFBD> <DAB9> <EFBFBD>
<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> н<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Ϊ true)<29> <> <EFBFBD> Ӷ<EFBFBD> <D3B6> <EFBFBD> <EFBFBD> Է<EFBFBD> <D4B7> <EFBFBD> ʹ <EFBFBD> <CAB9> <EFBFBD> <EFBFBD> fiber <20> е ķ<D0B5> <C4B7> <EFBFBD>
2016-12-29 23:58:18 +08:00
35) 2016.12.19
2017-03-31 23:04:16 +08:00
35.1) feature: fiber.c <20> <> <EFBFBD> й<EFBFBD> Э<EFBFBD> ֲ̾<CCBE> <D6B2> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Ľӿڵ<D3BF> <DAB5> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ʵ<EFBFBD> <CAB5> Ӧ<EFBFBD> ó<EFBFBD> <C3B3> <EFBFBD>
35.2) bugfix: fiber.c <20> е <EFBFBD> Э<EFBFBD> <D0AD> <EFBFBD> ˳<EFBFBD> ʱ<EFBFBD> <CAB1> Э<EFBFBD> ֲ̾<CCBE> <D6B2> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Ķ<EFBFBD> <C4B6> <EFBFBD> δ<EFBFBD> ͷ<EFBFBD> <CDB7> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ڴ<EFBFBD> й¶
35.3) sample: samples/fiber_local<61> <6C> <EFBFBD> <EFBFBD> ʾ <EFBFBD> <CABE> <EFBFBD> <EFBFBD> <EFBFBD> ڲ<EFBFBD> <DAB2> <EFBFBD> Э<EFBFBD> ֲ̾<CCBE> <D6B2> <EFBFBD> <EFBFBD> <EFBFBD>
2016-12-29 23:58:18 +08:00
34) 2016.12.16
2017-03-31 23:04:16 +08:00
34.1) bugfix: hook_net.c, hook_io.c, event_epoll.c <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Ϊ hook <20> ˺ܶ<CBBA> ϵͳ<CFB5> <CDB3>
API<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Ӧ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> main <20> <> <EFBFBD> <EFBFBD> ִ<EFBFBD> <D6B4> ǰ<EFBFBD> <C7B0> Ҫ<EFBFBD> <D2AA> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Щ API ʱ<> <CAB1> <EFBFBD> ܻ<EFBFBD> <DCBB> <EFBFBD> Ϊ hook <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> δ
<EFBFBD> <EFBFBD> <EFBFBD> ж<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ɺ<EFBFBD> <EFBFBD> <EFBFBD> ָ<EFBFBD> <EFBFBD> Ϊ NULL<4C> <4C> <EFBFBD> Ӷ<EFBFBD> <D3B6> <EFBFBD> <EFBFBD> ³<EFBFBD> <C2B3> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
2016-12-08 13:13:30 +08:00
33) 2016.12.8
2017-03-31 23:04:16 +08:00
33.1) bugfix: hook_net.c <20> У <EFBFBD> <D0A3> <EFBFBD> <EFBFBD> <EFBFBD> Э<EFBFBD> <D0AD> ģʽ <C4A3> £<EFBFBD> hook epoll <20> <> <EFBFBD> <EFBFBD> API Ӧ<> ü<EFBFBD> <C3BC> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
2016-12-08 13:13:30 +08:00
2016-12-03 20:09:21 +08:00
32) 2016.12.3
2017-03-31 23:04:16 +08:00
32.1) feature: acl_fiber_kill <20> <> <EFBFBD> <EFBFBD> ֧<EFBFBD> <D6A7> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> acl_fiber_sleep, acl_fiber_sem,
acl_fiber_mutex_lock <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Э<EFBFBD> <D0AD>
2016-12-03 20:09:21 +08:00
31) 2016.11.28
2017-03-31 23:04:16 +08:00
31.1) feature: fiber.cpp <20> У <EFBFBD> fiber <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> kill <20> <> killed <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ɱ<EFBFBD> <C9B1> <EFBFBD> <EFBFBD> Э<EFBFBD> <D0AD>
<EFBFBD> <EFBFBD> <EFBFBD> ж<EFBFBD> ָ<EFBFBD> <EFBFBD> Э<EFBFBD> <EFBFBD> <EFBFBD> Ƿ<EFBFBD> <EFBFBD> Ѿ<EFBFBD> <EFBFBD> ˳<EFBFBD>
2016-10-31 14:04:43 +08:00
2016-11-27 21:03:24 +08:00
30) 2016.11.27
2017-03-31 23:04:16 +08:00
30.1) bugfix: fiber.c <20> к<EFBFBD> <D0BA> <EFBFBD> acl_fiber_create <20> д<EFBFBD> <D0B4> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ʱ<EFBFBD> ڴ<EFBFBD> <DAB4> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ⣬<EFBFBD> <E2A3AC>
__thread_fiber->fibers <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> realloc <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ڴ治<DAB4> <E6B2BB> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Ϊ __thread_fier->size
<EFBFBD> <EFBFBD> <EFBFBD> 㷽<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
2016-11-27 21:03:24 +08:00
29) 2016.11.24
2017-03-31 23:04:16 +08:00
29.1) feature: <20> <> <EFBFBD> <EFBFBD> acl_fiber_kill <20> ӿ<EFBFBD> <D3BF> <EFBFBD> <EFBFBD> <EFBFBD> ָ֪ͨ<D6AA> <D6B8> Э<EFBFBD> <D0AD> <EFBFBD> ˳<EFBFBD>
2016-11-27 21:03:24 +08:00
2016-10-31 14:04:43 +08:00
28) 2016.10.31
2017-03-31 23:04:16 +08:00
28.1) feature: fiber.c <20> <> ʵ<EFBFBD> <CAB5> <EFBFBD> <EFBFBD> __i386__ <20> <> SETJMP<4D> <50> LONGJMP <20> Ļ<EFBFBD> <C4BB> ʽ <E0B7BD> <CABD> <EFBFBD> <EFBFBD>
libdill <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
2016-10-31 14:04:43 +08:00
2016-10-19 15:06:09 +08:00
27) 2016.10.19
2017-03-31 23:04:16 +08:00
27.1) bugfix: fiber_io.c <20> е <EFBFBD> __thread_fiber->loop_fn û<> и<EFBFBD> <D0B8> <EFBFBD> ֵ
2016-10-19 15:06:09 +08:00
2016-09-28 16:05:55 +08:00
26) 2016.9.25
2017-03-31 23:04:16 +08:00
26.1) feature: <20> <> <EFBFBD> <EFBFBD> acl_fiber_post_event <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ÿ<EFBFBD> <C3BF> <EFBFBD> ¼<EFBFBD> ѭ<EFBFBD> <D1AD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> п<EFBFBD> <D0BF> Ե<EFBFBD> <D4B5> <EFBFBD> <EFBFBD> <EFBFBD>
<EFBFBD> ú<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> õĻص<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
2016-09-28 16:05:55 +08:00
2016-09-22 22:50:45 +08:00
25) 2016.9.22
2017-03-31 23:04:16 +08:00
25.1) <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> acl_fiber_stop --> acl_fiber_schedule_stop,
2016-09-22 22:50:45 +08:00
acl::fiber::stop --> acl::fiber::schedule_stop
24) 2016.9.21
2017-03-31 23:04:16 +08:00
24.1) bugfix: hook_io.c <20> е <EFBFBD> writev() <20> <> <EFBFBD> <EFBFBD> Ӧ<EFBFBD> õ<EFBFBD> <C3B5> <EFBFBD> fiber_writev()
2016-09-01 20:00:58 +08:00
23) 2016.9.1
2017-03-31 23:04:16 +08:00
23.1) feature: ֧<> <D6A7> C++11 <20> <> <EFBFBD> ܣ<EFBFBD> ʹ <EFBFBD> <CAB9> lambda <20> <> <EFBFBD> <EFBFBD> ʽ <EFBFBD> <CABD> <EFBFBD> <EFBFBD> Э<EFBFBD> ̸<EFBFBD> <CCB8> ӷ<EFBFBD> <D3B7> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
2016-09-01 20:00:58 +08:00
------------------------------------------------------------------------------
2016-08-27 18:34:02 +08:00
22) 2016.8.25
2017-03-31 23:04:16 +08:00
22.1) feature: hook_io.c <20> <> <EFBFBD> ṩ<EFBFBD> ˵<EFBFBD> <CBB5> <EFBFBD> <EFBFBD> <EFBFBD> fiber_xxx IO <20> ӿ<EFBFBD>
2016-08-17 15:17:07 +08:00
21) 2016.8.17
2017-03-31 23:04:16 +08:00
21.1) performance: fiber.c <20> к<EFBFBD> <D0BA> <EFBFBD> fiber_alloc <20> ڴ<EFBFBD> <DAB4> <EFBFBD> Э<EFBFBD> <D0AD> ջʱʹ <CAB1> <CAB9> malloc <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
ԭ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> calloc<6F> <63> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ڴ<EFBFBD> <DAB4> ύ<EFBFBD> <E1BDBB> <EFBFBD> <EFBFBD> ʹ <EFBFBD> <CAB9> <EFBFBD> <EFBFBD> <EFBFBD> 棬<EFBFBD> Ӷ<EFBFBD> <D3B6> <EFBFBD> Ч<EFBFBD> <D0A7> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Э<EFBFBD> ̵<EFBFBD> ʵ<EFBFBD> <CAB5> ռ <EFBFBD> <D5BC> <EFBFBD> ڴ<EFBFBD> <DAB4> <EFBFBD> С
21.2) bugfix: hook_io.c <20> е <EFBFBD> read <20> ȶ<EFBFBD> <C8B6> <EFBFBD> <EFBFBD> <EFBFBD> ֻ<EFBFBD> е <EFBFBD> <D0B5> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> < 0 ʱ<> <CAB1> <EFBFBD> <EFBFBD> Ҫ<EFBFBD> <D2AA> <EFBFBD> <EFBFBD> errno
21.3) bugfix: fiber_io.c, acl_fiber_delay <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Ҫ<EFBFBD> <D2AA> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ev->timeout ֵ
21.4) performance: hook_net.c <20> <> hook <20> <> ϵͳ accept API <20> Ż<EFBFBD> <C5BB> ˽<EFBFBD> <CBBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ӵ<EFBFBD> ˳<EFBFBD> <CBB3> <EFBFBD> <EFBFBD>
<EFBFBD> Ӷ<EFBFBD> ʹ accept <20> ٶȸ<D9B6> <C8B8> <EFBFBD>
2016-08-17 15:17:07 +08:00
20) 2016.8.16
2017-03-31 23:04:16 +08:00
20.1) portable: fiber.c <20> <> <EFBFBD> <EFBFBD> ǿ<EFBFBD> <C7BF> SETJMP <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ֲ<EFBFBD> <D6B2>
2016-08-17 15:17:07 +08:00
2016-08-11 13:36:20 +08:00
19) 2016.8.10
2017-03-31 23:04:16 +08:00
19.1) performance&feature: <20> <> <EFBFBD> <EFBFBD> ʹ <EFBFBD> <CAB9> setjmp/longjmp <20> <> <EFBFBD> <EFBFBD> ջ<EFBFBD> <D5BB> <EFBFBD> <EFBFBD> ת<EFBFBD> <D7AA> <EFBFBD> <EFBFBD> <EFBFBD> ܸ<EFBFBD> <DCB8> <EFBFBD>
2016-08-11 13:36:20 +08:00
18) 2016.8.7
2017-03-31 23:04:16 +08:00
18.1) feature: fiber.c <20> <> <EFBFBD> <EFBFBD> acl_fiber_schedule <20> <> <EFBFBD> <EFBFBD> ǰ<EFBFBD> Զ<EFBFBD> <D4B6> <EFBFBD> acl_var_hook_sys_api
<EFBFBD> <EFBFBD> 0<> <30> <EFBFBD> Ӷ<EFBFBD> <D3B6> ָ<EFBFBD> ϵͳ API <20> <> <EFBFBD> ù<EFBFBD> <C3B9> <EFBFBD>
2016-07-15 21:04:01 +08:00
2016-08-05 23:21:51 +08:00
17) 2016.8.5
2017-03-31 23:04:16 +08:00
17.1) feature: hook_io.c <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ϵͳ API sleep <20> <> hook <20> <> <EFBFBD> <EFBFBD>
2016-08-05 23:21:51 +08:00
16) 2016.8.4
2017-03-31 23:04:16 +08:00
16.1) bugfix: hook_net.c <20> е <EFBFBD> gethostbyname_r <20> ڽ<EFBFBD> <DABD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ʱ<EFBFBD> ĵ<EFBFBD> ַ<EFBFBD> <D6B7> <EFBFBD> <EFBFBD> <EFBFBD> ֽ<EFBFBD> <D6BD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
--- found by <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
2016-08-05 23:21:51 +08:00
2016-07-29 16:43:46 +08:00
15) 2016.7.28
2017-03-31 23:04:16 +08:00
15.1) bugfix: hook_net.c <20> е <EFBFBD> poll/epoll_wait <20> <> <EFBFBD> ڳ<EFBFBD> ʱ<EFBFBD> ļ<EFBFBD> <C4BC> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ᵼ<F3A3ACBB> ³<EFBFBD> ʱ
ʱ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ǰ
2016-07-29 16:43:46 +08:00
14) 2016.7.26
2017-03-31 23:04:16 +08:00
14.1) feature: hook_net.c <20> е <EFBFBD> connect <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ˳<EFBFBD> <CBB3> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
2016-07-29 16:43:46 +08:00
2016-07-22 16:54:38 +08:00
13) 2016.7.22
2017-03-31 23:04:16 +08:00
13.1) bugfix: poll/epoll_wait API <20> ij<EFBFBD> ʱֵ<CAB1> <D6B5> <EFBFBD> õIJ<C3B5> <C4B2> <EFBFBD>
13.1) performance: fiber.c <20> <> acl_fiber_yield <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ж<EFBFBD> <D0B6> Ƿ<EFBFBD> <C7B7> д<EFBFBD> <D0B4> <EFBFBD> <EFBFBD> <EFBFBD> Э<EFBFBD> ̣<EFBFBD>
Ȼ<EFBFBD> <EFBFBD> <EFBFBD> پ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Ƿ<EFBFBD> <EFBFBD> <EFBFBD> Ҫ<EFBFBD> л<EFBFBD> Э<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ģ<EFBFBD> <EFBFBD> Ӷ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ĵ<EFBFBD> <EFBFBD> л<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
2016-07-22 16:54:38 +08:00
2016-07-15 21:04:01 +08:00
12) 2016.7.14
2017-03-31 23:04:16 +08:00
12.1) feature: hook_net.c <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> epoll <20> <> hook ֧<> <D6A7>
2016-07-15 21:04:01 +08:00
2016-07-09 21:58:21 +08:00
11) 2016.7.9
2017-03-31 23:04:16 +08:00
11.1) feature: fiber_sem.c <20> <> <EFBFBD> <EFBFBD> Э<EFBFBD> <D0AD> <EFBFBD> ź<EFBFBD> <C5BA> <EFBFBD>
2016-06-11 23:18:06 +08:00
2016-06-23 13:34:54 +08:00
10) 2016.6.22
2017-03-31 23:04:16 +08:00
10.1) feature: fiber_server.c <20> <> <EFBFBD> <EFBFBD> ģ<EFBFBD> <C4A3> ֧<EFBFBD> ֿ<EFBFBD> <D6BF> г <EFBFBD> ʱ<EFBFBD> ˳<EFBFBD> <CBB3> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ˳<EFBFBD>
2016-06-23 13:34:54 +08:00
9) 2016.6.21
2017-03-31 23:04:16 +08:00
9.1) feature: <20> <> <EFBFBD> <EFBFBD> socket <20> <> <EFBFBD> ͵<EFBFBD> fd <20> <> <EFBFBD> <EFBFBD> ͬ<EFBFBD> <CDAC> ģʽ
9.2) feature: master_fiber.c ֧<> <D6A7> dispatch <20> <> ʽ <EFBFBD> <CABD> <EFBFBD> ÿͻ<C3BF> <CDBB> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
2016-06-23 13:34:54 +08:00
8) 2016.6.19
2017-03-31 23:04:16 +08:00
8.1) feature: <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> FIBER <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
8.2) feature: <20> <> <EFBFBD> <EFBFBD> fiber_server.c ģ<> 飬<EFBFBD> <E9A3AC> <EFBFBD> <EFBFBD> acl_master <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ܿ<EFBFBD> <DCBF> <EFBFBD>
2016-06-23 13:34:54 +08:00
7) 2016.6.18
2017-03-31 23:04:16 +08:00
7.1) feature: <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> FIBER_CHANNEL <20> <> <EFBFBD> <EFBFBD> Э<EFBFBD> ̼<EFBFBD> <CCBC> Ľ<EFBFBD> <C4BD> <EFBFBD> ͨ<EFBFBD> <CDA8>
2016-06-23 13:34:54 +08:00
6) 2016.6.15
2017-03-31 23:04:16 +08:00
6.1) feature: <20> <> <EFBFBD> Ӷ<EFBFBD> ʱ<EFBFBD> <CAB1> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> -- fiber_create_timer()
2016-06-23 13:34:54 +08:00
5) 2016.6.14
2017-03-31 23:04:16 +08:00
5.1) feature: hook <20> <> errno <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ĺ<EFBFBD> <C4BA> <EFBFBD> __errno_location<6F> <6E> <EFBFBD> Ӷ<EFBFBD> ʹ errno <20> <> <EFBFBD> <EFBFBD>
ÿ<EFBFBD> <EFBFBD> Э<EFBFBD> <EFBFBD> <EFBFBD> ǰ<EFBFBD> ȫ<EFBFBD> <EFBFBD>
2016-06-23 13:34:54 +08:00
2016-06-11 23:18:06 +08:00
4) 2016.6.11
2017-03-31 23:04:16 +08:00
4.1) valgrind: <20> <> <EFBFBD> ӱ<EFBFBD> <D3B1> 뿪<EFBFBD> <EBBFAA> <EFBFBD> Է<EFBFBD> ֹ valgrind <20> <> <EFBFBD> ߶<EFBFBD> swapcontext <20> <> ת<EFBFBD> <D7AA> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
2016-06-11 23:18:06 +08:00
3) 2016.6.9
2017-03-31 23:04:16 +08:00
3.1) performance: fiber_schedule.c<> <63> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> л<EFBFBD> <D0BB> <EFBFBD> Ϊ<EFBFBD> <CEAA> <EFBFBD> <EFBFBD> <EFBFBD> л<EFBFBD> <D0BB> <EFBFBD> <EFBFBD> Ӷ<EFBFBD> <D3B6> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ļ<EFBFBD>
<EFBFBD> л<EFBFBD> <EFBFBD> <EFBFBD> Ч<EFBFBD> <EFBFBD> --- by niukey@qq.com
2016-06-11 23:18:06 +08:00
2) 2016.6.5
2017-03-31 23:04:16 +08:00
2.1) feature: <20> <> fiber_schedule.c, fiber_io.c <20> е <EFBFBD> ȫ<EFBFBD> ־<EFBFBD> ̬<EFBFBD> <CCAC> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Ϊ<EFBFBD> ֲ߳̾<CCBE>
<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Ϊʵ<EFBFBD> ֶ<EFBFBD> <EFBFBD> ̻߳<EFBFBD> Э<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
2016-06-11 23:18:06 +08:00
1) 2016.6.4
2017-03-31 23:04:16 +08:00
1.1) <20> <> ǰ<EFBFBD> <C7B0> Э<EFBFBD> <D0AD> ֧<EFBFBD> <D6A7> hook: read/redv/redv/recvfrom/recvmsg,
2016-06-11 23:18:06 +08:00
write/writev/send/sendto/sendmsg, poll/select/sleep/gethostbyname/gethostbyname_r