Commit Graph

15 Commits

Author SHA1 Message Date
Joe Thornber
61de3f9287 [thin_metadata_pack/unpack] Replace C++ implementation with a Rust one.
The Rust implementation is multithreaded, performs better in general and
does custom compression of btree nodes to achieve much better compression
ratios.  unpack also checksums expanded metadata to validate it.

Format version has jumped to 3, no backwards compatibility, but I think
that's ok since we never made a release that contained the C++ version
of these tools.

Benchmarks
==========

On an 8 core, 16 hyperthread machine.

metadata 1G, full:

      Pack size    pack time     unpack time
------------------------------------------------------
C++      193M        50.3s          6.9s (no verify)
Rust      70M         1.4s          1.8s (verify)

metadata 16G, sparse:

       Pack size    pack time     unpack time
------------------------------------------------------
C++      21M          68s           1s   (no verify)
Rust      4M           8.6s         0.5s (verify)
2020-06-09 09:15:00 +01:00
Joe Thornber
3e5de399a7 [functional tests] Remove dependency on the ThunderChez library.
I've just moved the relevant code into the functional-tests dir.
2020-04-30 12:07:42 +01:00
Joe Thornber
e03b878df3 [functional tests] Move test output from /tmp to .
tmpfs has trouble with O_DIRECT.
2018-12-12 13:13:11 +00:00
Todd Gill
6046ebd4c4 Add autoconf step to Building instructions (#92)
The configure script doesn't exist until autoconf is run.

Signed-off-by: Todd Gill <tgill@redhat.com>
2018-04-17 10:09:15 +01:00
Robert Northard
0eab1d5676 Correct type readme for thin_restore command (#91) 2018-04-17 10:04:20 +01:00
Joe Thornber
8d303858db fix typo 2017-08-30 16:14:45 +01:00
Joe Thornber
38a9b8c3a9 Update README 2017-08-30 15:56:26 +01:00
Thanos Makatos
f162d59bf6 no need to supply held root, thin_dump -m will look it up 2016-03-04 18:30:02 +03:00
Thanos Makatos
eac05c1b5d document how to extract thin pool metadata 2016-03-04 18:18:29 +03:00
Joe Thornber
efe597f097 [README] Add dep for libaio 2014-08-06 16:29:50 +01:00
Joe Thornber
9716a2cdbd whitespace 2013-06-27 12:44:07 +01:00
Joe Thornber
c0b84f39d6 update README 2013-06-27 11:57:57 +01:00
Joe Thornber
9217334935 Update README 2013-06-27 11:57:10 +01:00
Joe Thornber
396055b31a Change how code blocks are quoted in the README 2013-06-27 11:55:57 +01:00
Joe Thornber
3df1d70ba5 Rename the README so github uses markdown when showing it. 2013-06-27 11:50:29 +01:00