63 Commits

Author SHA1 Message Date
Moises Marangoni
b0a423d2bf Fix Client crash on ARM
Align 64bit atomic fields, see
https://golang.org/pkg/sync/atomic/#pkg-note-BUG

Fixes #16
2019-07-16 20:14:45 +03:00
Aleksandr Razumov
3c40912f48 client: add WithNoConnClose option 2019-04-27 21:48:15 +03:00
Aleksandr Razumov
ce5eeedaab all: reduce newline overuse 2019-03-08 22:12:06 +03:00
Aleksandr Razumov
a9ca8bad51 all: improve linters config and fix some warnings 2019-02-18 23:49:56 +03:00
Aleksandr Razumov
d7d0e9b81c client: fix Start comment 2019-02-09 13:31:45 +03:00
Aleksandr Razumov
45872027dd client: fix transaction timeout calculation 2018-08-18 02:26:52 +03:00
Aleksandr Razumov
e27a816226 client: guard s.callback with s.cond.L in callbackWaitHandler 2018-08-18 00:21:54 +03:00
Aleksandr Razumov
be8619dcdb client: protect clientTransaction.h from being called multiple times 2018-08-16 20:48:29 +03:00
Aleksandr Razumov
6369d2cec7 client: add buffer pool to handleAgentCallback to reduce allocs 2018-08-14 21:03:29 +03:00
Aleksandr Razumov
edb2535d64 client: fix some data races discovered during bench 2018-08-14 20:29:11 +03:00
Aleksandr Razumov
fd3ed9f3d6 client: add "No retransmit" mode.
Fixes #40
2018-08-13 18:51:14 +03:00
Aleksandr Razumov
1300034b0a client: use single mutex for "closed" boolean and transactions 2018-08-13 18:09:07 +03:00
Aleksandr Razumov
3f68426604 client: use ClientOption variadic instead of ClientOptions struct 2018-08-13 14:27:27 +03:00
Aleksandr Razumov
22ad42b8dd client: refactor error names in handleAgentCallback 2018-08-13 11:46:08 +03:00
Aleksandr Razumov
0598f8e141 client: update defaults and comments 2018-08-13 09:26:36 +03:00
Aleksandr Razumov
66fcc03af3 client: don't use concurrency in agent.start 2018-08-11 17:15:25 +03:00
Aleksandr Razumov
4733f5c5e9 client: fix callbackWaitHandler.reset 2018-08-11 17:05:41 +03:00
Aleksandr Razumov
a967403296 client: update docs 2018-08-11 16:34:20 +03:00
Aleksandr Razumov
b5d8b1cc55 client: align ClientOption TimeoutRate comment 2018-08-11 10:36:30 +03:00
Aleksandr Razumov
ab892f7dca client: add RTO to ClientOptions 2018-08-11 10:35:22 +03:00
Aleksandr Razumov
7cbaa7f873 client: group ClientOptions by optional and mandatory fields 2018-08-11 10:32:54 +03:00
Aleksandr Razumov
779e88a818 client: add Clock to options 2018-08-11 10:27:55 +03:00
Aleksandr Razumov
320cb10f37 client: introduce Collector 2018-08-11 10:25:55 +03:00
Aleksandr Razumov
2b2b8aafed agent: use Handler as only argument for NewAgent 2018-08-11 09:48:24 +03:00
Aleksandr Razumov
cb6414e796 client: add Handler option 2018-08-10 21:44:29 +03:00
Aleksandr Razumov
66754a45ad client: update start method 2018-08-09 14:29:27 +03:00
Aleksandr Razumov
45b231856a lint: fix warnings 2018-08-09 03:01:44 +03:00
Aleksandr Razumov
e2fc3e0669 {agent,client}: use single handler in Agent 2018-08-09 02:56:14 +03:00
Aleksandr Razumov
a012456653 lint: fix warnings 2018-08-09 01:42:00 +03:00
Aleksandr Razumov
dbf17d2d66 {agent,client}: implement RTO in Client 2018-08-09 01:29:18 +03:00
Aleksandr Razumov
d29ebc8197 {agent,client}: use function-based handler
This breaks backward compatibility, however, Agent and Client
are unstable and can change now.
2018-08-08 23:30:57 +03:00
Aleksandr Razumov
bcb4fd1148 client: fix aligncheck 2018-04-29 14:33:19 +03:00
Aleksandr Razumov
f539368a80 client: add initialization checks 2018-04-29 14:20:09 +03:00
Aleksandr Razumov
bb835f8153 client: add finalizer (fix #36) 2018-04-29 14:11:43 +03:00
Aleksandr Razumov
2f1a10917a client: improve code coverage, add error return value for NewClient 2017-12-15 21:32:54 +03:00
Aleksandr Razumov
cbb64515aa {client,agent}: don't alloc on client.Do 2017-12-15 15:07:25 +03:00
Aleksandr Razumov
0c5e708c79 client: optimize Do 2017-12-15 09:00:07 +03:00
Aleksandr Razumov
fcee96354c client: pretty-print for StopErr.Error() 2017-10-17 03:11:11 +02:00
Aleksandr Razumov
b720eed08b client: pretty-print for CloseErr.Error() 2017-10-17 02:56:46 +02:00
Aleksandr Razumov
04cd4d0fe9 client: check if closed in Start method 2017-07-19 01:31:01 +02:00
Aleksandr Razumov
54c5653bf1 client: remove debug print 2017-07-19 01:26:52 +02:00
Aleksandr Razumov
635e899324 client: add ClientAgent interface description 2017-07-19 01:21:31 +02:00
Aleksandr Razumov
dcecec9439 client: add Start method, make Do synchronous 2017-07-19 01:16:40 +02:00
Aleksandr Razumov
9ff593ca1d client: add missed comments 2017-07-19 00:08:35 +02:00
Aleksandr Razumov
6ee3c00f52 client: document that Do is async 2017-07-19 00:05:22 +02:00
Aleksandr Razumov
d59300659e client: add Indicate method 2017-07-19 00:03:38 +02:00
Aleksandr Razumov
faf5770ffa client: initial implementation 2017-07-19 00:01:36 +02:00
Aleksandr Razumov
a186c0aabd client: remove legacy implementation 2017-06-26 03:18:59 +02:00
Aleksandr Razumov
b0a75d3cdc agent: error values, tests, comments, gc fix 2017-06-25 12:08:05 +02:00
Aleksandr Razumov
231e54768c Agent: initial implementation 2017-05-28 14:56:37 +03:00