Commit Graph

164 Commits

Author SHA1 Message Date
Joe Thornber
a7c96c0e1e [everything] Fix circular shared pointer references.
We had a cycle from transaction_manager <-> space_map, and also from
the ref_counters back up to the tm.

This prevented objects being destroyed when various programs exited.

From now on we'll try and only use a shared ptr if ownership is
implied.  Otherwise a reference will be used (eg, for up pointers).
2014-08-26 11:14:49 +01:00
Joe Thornber
3724f78a13 [block_t] Fix a validator test 2014-08-21 11:51:04 +01:00
Joe Thornber
f06a2673c5 wip 2014-07-29 11:34:26 +01:00
Joe Thornber
d517684c95 Initial code drop for merging block_cache 2014-07-22 16:41:39 +01:00
Joe Thornber
8c24419238 Knock out the era_superblock_t for now.
It's still got some bloom stuff in it.  Will tidy up after release.
2014-03-27 12:23:00 +00:00
Joe Thornber
8531a2befa [era] switch from bloom filters to writesets 2014-01-29 21:37:25 +00:00
Joe Thornber
bfb540cc5b [era] era_superblock_t and era_check 2014-01-09 22:40:34 +00:00
Joe Thornber
4df679174c correct a couple of #includes that were pointing to the old location of endian_utils.h 2014-01-08 11:04:56 +00:00
Joe Thornber
be5fa59f90 Merge branch 'era' of github.com:jthornber/thin-provisioning-tools into era 2014-01-08 10:50:26 +00:00
Joe Thornber
8049d369a9 stuff 2013-12-11 17:28:14 +00:00
Joe Thornber
927f611aad remove btree_checker, and add btree_counter 2013-12-11 17:00:57 +00:00
Joe Thornber
7a2d43268d [array] damage reported if the array is smaller than claimed in the ctr 2013-12-03 15:04:16 +00:00
Joe Thornber
180f7e6187 persistent-data/data-structures/bloom_filter 2013-11-18 13:08:07 +00:00
Joe Thornber
12a50cb568 Some experiments with bloom filters for dm-era 2013-11-15 13:59:12 +00:00
Joe Thornber
664aacd435 Merge branch 'master' of github.com:jthornber/thin-provisioning-tools 2013-10-30 12:45:23 +00:00
Joe Thornber
dd65089b68 sort out some #includes 2013-10-23 11:39:31 +01:00
Joe Thornber
20bf22e662 [caching] handle VARIABLE_HINT_SIZE incompat flag 2013-10-17 11:45:20 +01:00
Joe Thornber
900172ef79 [unit-tests, cache_superblock_t] update tests to reflect superblock_flags changes 2013-10-15 20:55:04 +01:00
Joe Thornber
a29b5c8d07 [base] bse64 encoder
Really slow implementation.  Speed up on a rainy day.
2013-10-10 10:18:46 +01:00
Joe Thornber
42fd6b928b [cache_check] A whole bunch of superblock checks 2013-10-07 15:21:45 +01:00
Joe Thornber
0029962f20 Give up with --std=c++11
There are too many distros that use old versions of g++ that don't support it adequately.
2013-08-08 10:49:59 +01:00
Robin H. Johnson
e38c3f9ede Improve build: LDFLAGS.
Linker must be passed LDFLAGS for some distributions, as CXXFLAGS should
not normally contain any linker flags (may fail if passed to
compile-only invocations).

Signed-off-by: Robin H. Johnson <robbat2@gentoo.org>
2013-07-14 21:10:44 +00:00
Joe Thornber
311034f771 [subtracting_span_iterator] recode using run_set 2013-07-09 11:25:09 +01:00
Joe Thornber
2709629313 [run_set] add another unit test 2013-07-09 11:24:19 +01:00
Joe Thornber
8523314a7f [run_set] improve run merging 2013-07-09 10:36:30 +01:00
Joe Thornber
31686fbb17 run_set.negate() 2013-07-08 23:21:48 +01:00
Joe Thornber
3be8376256 run_set 2013-07-08 21:44:09 +01:00
Joe Thornber
90190912ff [build] Fix bug introduced today in the deps 2013-06-27 12:42:52 +01:00
Joe Thornber
759263d388 [build] DEPs build quietly now and aren't generated when making clean. 2013-06-27 10:17:38 +01:00
Joe Thornber
0e074306a9 Document unit test issue with g++ 4.8.1 2013-06-26 11:28:36 +01:00
Joe Thornber
730f3b9f9a Get unit-tests building with g++ 4.8.1 2013-06-25 14:18:38 +01:00
Joe Thornber
eb8d4c6f0b Get tools building with g++ 4.8.1 2013-06-25 13:48:02 +01:00
Joe Thornber
bcdb373b9a [unit-tests] remove a bit of debug output 2013-06-25 10:55:50 +01:00
Joe Thornber
65cf07597e [btree_t] remove some debug output 2013-06-20 14:37:14 +01:00
Joe Thornber
83a09e1a2a [btree] use a block_ref_counter for internal nodes 2013-06-20 14:29:48 +01:00
Joe Thornber
76bbfcb891 [btree_t] add failing clone test 2013-06-19 17:17:45 +01:00
Joe Thornber
6706493304 Remove some global 'using namespace's 2013-05-28 13:48:10 +01:00
Joe Thornber
3066487814 [btree_damage_visitor_t] pass a couple of params by const reference rather than value. 2013-05-28 13:04:00 +01:00
Joe Thornber
e64dda95f6 rename range<> -> run<> 2013-05-28 12:20:05 +01:00
Joe Thornber
82324d1d27 [thin_rmap] rmap_visitor now sorts the rmap into ascending data_block order. 2013-05-24 14:01:03 +01:00
Joe Thornber
41204dceaa [thin_rmap] rmap_visitor 2013-05-24 13:30:17 +01:00
Joe Thornber
dda85e9751 [unit-tests] remove thin_metadata_t (wasn't testing much, and is now broken) 2013-05-23 14:43:53 +01:00
Joe Thornber
12d6b8a2a7 [btree_damage_visitor] Make sure the path for a value includes it's key. 2013-05-23 14:37:24 +01:00
Joe Thornber
fcb617f858 device_tree 2013-05-20 16:09:13 +01:00
Joe Thornber
d7c1eabfc0 [btree_damage_tracker] track the paths 2013-05-20 12:31:47 +01:00
Joe Thornber
e60c84392d [btree_damage_vistor_t] add some missing tree_complete()s 2013-05-17 17:44:05 +01:00
Joe Thornber
6b5a5f265d [btree_damage_visitor_t] pass a path to expect_damage. 2013-05-17 17:03:57 +01:00
Joe Thornber
50de448f2a [btree_damage_visitor_t] node_info << operator 2013-05-17 16:51:38 +01:00
Joe Thornber
d3fa4102c2 [btree_damage_visitor] pass the btree_path to both the damage and value visitors. 2013-05-17 12:05:13 +01:00
Joe Thornber
30c9e0a005 [btree_damage_visitor_t] Store the btree path in the node_info rather than the level. 2013-05-17 11:53:16 +01:00