- Oct 02, 2019
-
-
Szymon Romik authored
Add concurrent_hash_map usage example for doxygen
-
Szymon Romik authored
Increase timeout for valgrind tests on travis
-
Szymon Romik authored
test_package and test_findLIBPMEMOBJ_cmake runs use libpmemobj 1.4
-
Szymon Romik authored
-
Igor Chorazewicz authored
So that concurrent_hash_map_drd tests will not fail.
-
Szymon Romik authored
Remove unnecessary #include <libpmemobj.h>
-
Szymon Romik authored
Node std layout
-
Igor Chorążewicz authored
remove TTB info from README
-
Igor Chorazewicz authored
-
Igor Chorążewicz authored
Update appveyor to use PMDK v1.7
-
- Oct 01, 2019
-
-
Lukasz Dorau authored
-
Szymon Romik authored
concurrent_hash_map: introduce internal scoped_lock_traits
-
Szymon Romik authored
it is outdated and redundant
-
Pawel Karczewski authored
-
Pawel Karczewski authored
To achieve that classes node and hash_map_node_base was merged into one class hash_map_node.
-
Igor Chorazewicz authored
to generically implement upgrade/downgrade operations. If scoped_lock_type implements upgrade_to_writer and downgrade_to_reader then traits class will just call those methods, otherwise it will provide default implementation.
-
Szymon Romik authored
Fix persistent_pool_ptr swap() method signature
-
Szymon Romik authored
Do not allow concurrent_hash_map concurrent methods in a transaction
-
Igor Chorazewicz authored
to make sure it is consistent in singlethreaded methods like clear() and assignment operators in case of transaction abort.
-
Igor Chorazewicz authored
-
Igor Chorazewicz authored
-
Igor Chorazewicz authored
All methods that take locks on bucket/elements MUST NOT be called in a transaction. If this was allowed, transaction could abort after releasing locks and values would be modified without holding a lock.
-
Szymon Romik authored
Hashmap code cleanup
-
Szymon Romik authored
concurrent_hash_map: introduce version field and add reserved space
-
- Sep 30, 2019
-
-
Szymon Romik authored
Fix array move assignment operator
-
Igor Chorążewicz authored
conditional_add_to_tx can throw an exception which means swap() should not be noexcept.
-
Igor Chorazewicz authored
to make sure that data was create using the same (or compatible) version of concurrent_hash_map.
-
Igor Chorazewicz authored
-
Igor Chorazewicz authored
Also change order of some members so that embedded_segment (which size is dependent on size of the mutexes used is at the end). This allows to have segment_enable_mutex aligned to cacheline.
-
Igor Chorazewicz authored
* Expect bucket bucket to be already locked inside get_node(). * Move logic for restarting search after mask race to internal_find/insert.
-
Igor Chorążewicz authored
explaining that it does not add moved-from array to the transaction. Also add test for move ctor.
-
Igor Chorążewicz authored
Until now, move assignment for array performed copy instead of move. Fix this issue and add test for move assignemt.
-
Igor Chorążewicz authored
Update doxygen files
-
- Sep 26, 2019
-
-
Łukasz Stolarczuk authored
-
Łukasz Stolarczuk authored
-
Igor Chorazewicz authored
This function should only be called after modification (only in internal_insert).
-
- Sep 25, 2019
-
-
Igor Chorążewicz authored
concurrent_hash_map: pass reference to bucket instead of pointer in get_node
-
Igor Chorazewicz authored
Copied from pmem/pmdk.
-
Igor Chorazewicz authored
Using uint64_t removes padding.
-
Igor Chorazewicz authored
get_node() expects pointer to bucket_accessor to always be set, so it's safer to use reference.
-