Commit Graph
100 Commits
Author SHA1 Message Date
Patrick Pelissier 8b3a4a802c Happy new year! 2019-01-02 18:12:07 +01:00
Patrick Pelissier 8b9f605ffa Add exponential backoff structure & functions 2019-01-02 18:09:16 +01:00
Patrick Pelissier 3c56f24db2 Update analysis 2018-12-29 00:16:50 +01:00
Patrick Pelissier 82dbf60a4c Use of the standard naming for User Defined macro that can customize the code generation. Rename macros WORKER_DISABLE. 2018-12-23 23:49:19 +01:00
Patrick Pelissier b596e81e88 Regenerate depend 2018-12-14 21:48:21 +01:00
Patrick Pelissier b7bbe15547 Fix missing header in install 2018-12-14 21:46:38 +01:00
Patrick Pelissier cb5f8c20c8 Update analysis 2018-12-11 23:23:09 +01:00
Patrick Pelissier 61a1e15103 Update analysis 2018-12-11 23:19:33 +01:00
Patrick Pelissier 2416c2e466 Fix bug of overflow of 'alloc-num' if alloc < num (case where the service is called with a big number to insert 2018-12-05 17:52:02 +01:00
Patrick Pelissier b898ce3c56 update analysis 2018-11-29 23:24:11 +01:00
Patrick Pelissier 061e83b9e1 Add basic test for CONCURRENT_RP_DEF 2018-11-29 22:18:44 +01:00
Patrick Pelissier 0a8f727908 Remove CONCURRENT_RP2_DEF (Insuficient performance) 2018-11-27 07:47:06 +01:00
Patrick Pelissier ba584ab096 Use M_THREAD_ATTR 2018-11-26 23:26:42 +01:00
Patrick Pelissier 1fb1fa2e0a Add M_THREAD_ATTR 2018-11-26 23:26:08 +01:00
Patrick Pelissier 8cf780a60f Update comment 2018-11-25 22:43:37 +01:00
Patrick Pelissier ae171115bc Export method _size in concurrent if operator GET_SIZE defined. 2018-11-25 18:03:25 +01:00
Patrick Pelissier a8620c3aff Export method _size for operator GET_SIZE 2018-11-25 18:00:47 +01:00
Patrick Pelissier c154cdf46c Add operator GET_SIZE 2018-11-25 17:52:24 +01:00
Patrick Pelissier 77c59e2b85 Fix const issue. 2018-11-25 17:49:36 +01:00
Patrick Pelissier f07656757f Add another candidate for concurrent with parallel reader. 2018-11-25 11:44:28 +01:00
Patrick Pelissier a1c22fb679 Add first alpha version of Concurrent Container with support concurrent reading. 2018-11-24 19:31:31 +01:00
Patrick Pelissier 3640041c47 Port internal functions of concurrent to use the local lock interface. 2018-11-24 12:20:37 +01:00
Patrick Pelissier d3934dccb9 Add missing const in prototypes. 2018-11-24 11:46:28 +01:00
Patrick Pelissier 10cf2f2270 Prepare concurent for using different lock strategy 2018-11-24 11:37:09 +01:00
Patrick Pelissier c180b2b96d Update analysisd 2018-11-22 07:49:15 +01:00
Patrick Pelissier 5d5c2380ed Update release notes due to valgrind being unable to launch the test suite and scan-build producing too many false positives. 2018-11-16 22:54:04 +01:00
Patrick Pelissier a8b5c3ff4e Improve assertions 2018-11-10 17:54:13 +01:00
Patrick Pelissier 16587aeb93 Update doc 2018-11-08 20:55:28 +01:00
Patrick Pelissier 629a3a3dc1 Update depend 2018-11-08 20:54:42 +01:00
Patrick Pelissier ea46379d24 Update long term issue. 2018-11-07 19:54:07 +01:00
Patrick Pelissier ee0c77edc8 Replace SET+CLEAR by MOVE. 2018-11-04 20:28:56 +01:00
Patrick Pelissier c0610b2d60 Update doc 2018-11-04 20:15:15 +01:00
Patrick Pelissier 13ab545246 Update example for concurrent 2018-11-03 19:05:57 +01:00
Patrick Pelissier d85d6bcb13 Update doc 2018-11-01 17:21:11 +01:00
Patrick Pelissier 138662d6a0 Update checkall 2018-11-01 16:29:55 +01:00
Patrick Pelissier e45437e19f Add missing const 2018-11-01 16:11:42 +01:00
Patrick Pelissier 725846e155 Add missing type 2018-11-01 16:11:27 +01:00
Patrick Pelissier 74aa514903 Add missing const 2018-11-01 16:11:12 +01:00
Patrick Pelissier 7f7230be90 Fix doc 2018-10-31 17:38:04 +01:00
Patrick Pelissier d4a6e8c47a Add doc for m-concurrent 2018-10-31 17:37:17 +01:00
Patrick Pelissier 9c19ed4471 Add more encapsulation tests. 2018-10-31 11:33:58 +01:00
Patrick Pelissier 357c37c69d Add missing const qualifier 2018-10-31 11:33:41 +01:00
Patrick Pelissier 7c2d9c8643 Add missing const 2018-10-31 11:31:48 +01:00
Patrick Pelissier 69d699b80e Add contract 2018-10-31 11:26:00 +01:00
Patrick Pelissier 40832dd727 Add assertions 2018-10-31 08:24:06 +01:00
Patrick Pelissier 31c3baa42b Update comment 2018-10-30 20:10:15 +01:00
Patrick Pelissier 0ed03224c2 Update test 2018-10-30 20:04:01 +01:00
Patrick Pelissier f8d82ae74a Fix oplist definition. 2018-10-30 20:00:50 +01:00
Patrick Pelissier 16234bde82 Add const 2018-10-30 17:23:59 +01:00
Patrick Pelissier 31a5d7ee3b Add oplist 2018-10-30 10:56:02 +01:00
Patrick Pelissier f908c7e04d Update 2018-10-30 10:27:29 +01:00
Patrick Pelissier eb20f66bd9 Update 2018-10-30 10:25:22 +01:00
Patrick Pelissier 3b3e853cf8 Add first test cases 2018-10-29 23:07:34 +01:00
Patrick Pelissier 998ae05a5b Update dict_set to be like a B+TREE (API breakage). _ref returns pointer to the data 2018-10-29 22:59:31 +01:00
Patrick Pelissier 155d01b8c3 Fix blocking=false for _pop & _get 2018-10-29 18:10:07 +01:00
Patrick Pelissier 1a4cce7efd Add concurrent benchmark 2018-10-29 17:17:14 +01:00
Patrick Pelissier 3a0dd2ffe7 Fix errors 2018-10-29 17:15:20 +01:00
Patrick Pelissier 68b705b16a Proper export of additional methods for DICT_SET 2018-10-29 17:02:58 +01:00
Patrick Pelissier fe245e76cf Fix DICT_SET_DEF macro 2018-10-29 16:51:33 +01:00
Patrick Pelissier 618e37b07c Remove pop operator as there is no method for it. 2018-10-29 16:51:17 +01:00
Patrick Pelissier 3dde8d45c1 Add _empty_p & _pop_move_blocking 2018-10-29 13:26:16 +01:00
Patrick Pelissier 4691f95b73 Add blocking methods for concurrent container. 2018-10-29 11:18:20 +01:00
Patrick Pelissier 02d4bf0e09 Export method _empty_p for operator TEST_EMPTY for all containers. 2018-10-29 11:06:54 +01:00
Patrick Pelissier 5ecf4f37c0 Change deprecated functions. 2018-10-29 11:06:29 +01:00
Patrick Pelissier 15f6484dd2 Fix comment 2018-10-29 11:02:55 +01:00
Patrick Pelissier 2ead3905e5 Rename m-protect to m-concurrent 2018-10-28 22:17:33 +01:00
Patrick Pelissier 99d883253c Add TEST_EMPTY operator 2018-10-28 22:13:48 +01:00
Patrick Pelissier ed4d4f9f23 Fix formatting 2018-10-28 17:53:41 +01:00
Patrick Pelissier d76f9565b2 Add new primitives. 2018-10-28 17:53:16 +01:00
Patrick Pelissier 1c637f1182 Proper export of KEY_OPLIST & VALUE_OPLIST 2018-10-28 11:17:05 +01:00
Patrick Pelissier 4dbe5de79c Fix in progress 2018-10-28 11:16:46 +01:00
Patrick Pelissier afcb88d04c Add PROTECT module that automaticaly add a lock on container access. 2018-10-28 10:41:10 +01:00
Patrick Pelissier 1ea1deef94 Update doc with last changes. 2018-10-28 10:40:18 +01:00
Patrick Pelissier 08d2af22db Add KEY_OPLIST & VALUE_OPLIST operators 2018-10-28 10:38:41 +01:00
Patrick Pelissier 70179bb1d7 Add VALUE_TYPE operator 2018-10-28 10:33:25 +01:00
Patrick Pelissier 83226c5ce8 Add KEY_TYPE operator 2018-10-28 10:03:47 +01:00
Patrick Pelissier 3d6b737c46 Export *KEY operators in OPLIST for array, dict, B+tree 2018-10-27 23:37:06 +02:00
Patrick Pelissier fff511101c Add _erase for array 2018-10-27 23:30:38 +02:00
Patrick Pelissier 6672becdd5 Add _erase for array 2018-10-27 23:30:21 +02:00
Patrick Pelissier bd315c7e43 Add method ERASE_KEY 2018-10-27 23:04:56 +02:00
Patrick Pelissier fbfe28c087 Port the test suite to use _erase instead of _remove. 2018-10-27 22:59:33 +02:00
Patrick Pelissier adbafc0b02 Fix usage of pop_at after later change. 2018-10-27 22:59:19 +02:00
Patrick Pelissier 4e6dad939a API Compatibility change: rename _remove for DICT & B+TREE into _erase for API uniformization. 2018-10-27 22:56:00 +02:00
Patrick Pelissier 12bf9c0f59 ERASE method returns bool (like dictionnary) 2018-10-27 22:43:06 +02:00
Patrick Pelissier f7f7d7bc38 Add asertion 2018-10-27 22:34:53 +02:00
Patrick Pelissier c169c05bba Clarify name of old methods SET_KEY, GET_KEY, GET_SET_KEY 2018-10-27 22:34:34 +02:00
Patrick Pelissier 19d48740cd Modify prototype of buffer _init_set & _set to allow const argument for src. Not proud of the solution. 2018-10-27 16:13:02 +02:00
Patrick Pelissier 7a067a4b90 Add M_PTR_OPLIST 2018-10-27 11:13:09 +02:00
Patrick Pelissier 13f3dab23a Update with more examples. 2018-10-27 11:12:55 +02:00
Patrick Pelissier fd9d308b28 Allow tuple initilization in M_LET 2018-10-27 09:28:17 +02:00
Patrick Pelissier 1047d842d0 Add OPLIST for buffer & an example. Still a WIP for the constness of the BUFFER source. 2018-10-26 23:30:04 +02:00
Patrick Pelissier 77385e53f7 Add _init1 for buffer (internal use) 2018-10-26 22:23:44 +02:00
Patrick Pelissier f7b3de2750 Add test cases for _init_set & _set for buffers 2018-10-26 22:05:14 +02:00
Patrick Pelissier a65e6de66b Add more cases. 2018-10-26 21:44:25 +02:00
Patrick Pelissier 41cf523dfc Adding _set & _init_set for buffer (to test) 2018-10-26 21:21:29 +02:00
Patrick Pelissier 3774f8fd11 Fix M_POD_OPLIST in C11 mode 2018-10-26 20:18:32 +02:00
Patrick Pelissier b9e26b1c2c Add test with musl-gcc to test C11 library thread.h 2018-10-26 20:09:32 +02:00
Patrick Pelissier 609175713b Fix C11 backend. 2018-10-26 19:40:51 +02:00
Patrick Pelissier d56b794177 Fix bug in _get method of deque container. 2018-10-21 22:41:29 +02:00
Patrick Pelissier 608a929fcb Added another test case for _get method for DEQUE container. 2018-10-21 22:40:56 +02:00