From b0b111c3aa627a2f502d99cd8e7218b8d87c06fd Mon Sep 17 00:00:00 2001 From: Le Duane <36524637+le-duane@users.noreply.github.com> Date: Fri, 14 Oct 2022 12:03:07 -0600 Subject: [PATCH] feat(repository): add more split size options: 128K, 256K, 512K (#2496) * new splitter options * tabs * add more options * update all splitters with new sizes * remove un-used splitters * no space Co-authored-by: Thomas Duane --- repo/splitter/splitter.go | 45 ++++++++++++++++++++++++--------------- 1 file changed, 28 insertions(+), 17 deletions(-) diff --git a/repo/splitter/splitter.go b/repo/splitter/splitter.go index d2e33a9f6..1cf23fe83 100644 --- a/repo/splitter/splitter.go +++ b/repo/splitter/splitter.go @@ -7,11 +7,13 @@ import ( const ( splitterSlidingWindowSize = 64 - - splitterSize1MB = 1 << 20 - splitterSize2MB = 2 << 20 - splitterSize4MB = 4 << 20 - splitterSize8MB = 8 << 20 + splitterSize128KB = 128 << 10 + splitterSize256KB = 256 << 10 + splitterSize512KB = 512 << 10 + splitterSize1MB = 1 << 20 + splitterSize2MB = 2 << 20 + splitterSize4MB = 4 << 20 + splitterSize8MB = 8 << 20 ) // Splitter determines when to split a given object. @@ -46,20 +48,29 @@ type Factory func() Splitter // //nolint:gochecknoglobals var splitterFactories = map[string]Factory{ - "FIXED-1M": Fixed(splitterSize1MB), - "FIXED-2M": Fixed(splitterSize2MB), - "FIXED-4M": Fixed(splitterSize4MB), - "FIXED-8M": Fixed(splitterSize8MB), + "FIXED-128K": Fixed(splitterSize128KB), + "FIXED-256K": Fixed(splitterSize256KB), + "FIXED-512K": Fixed(splitterSize512KB), + "FIXED-1M": Fixed(splitterSize1MB), + "FIXED-2M": Fixed(splitterSize2MB), + "FIXED-4M": Fixed(splitterSize4MB), + "FIXED-8M": Fixed(splitterSize8MB), - "DYNAMIC-1M-BUZHASH": newBuzHash32SplitterFactory(splitterSize1MB), - "DYNAMIC-2M-BUZHASH": newBuzHash32SplitterFactory(splitterSize2MB), - "DYNAMIC-4M-BUZHASH": newBuzHash32SplitterFactory(splitterSize4MB), - "DYNAMIC-8M-BUZHASH": newBuzHash32SplitterFactory(splitterSize8MB), + "DYNAMIC-128K-BUZHASH": newBuzHash32SplitterFactory(splitterSize128KB), + "DYNAMIC-256K-BUZHASH": newBuzHash32SplitterFactory(splitterSize256KB), + "DYNAMIC-512K-BUZHASH": newBuzHash32SplitterFactory(splitterSize512KB), + "DYNAMIC-1M-BUZHASH": newBuzHash32SplitterFactory(splitterSize1MB), + "DYNAMIC-2M-BUZHASH": newBuzHash32SplitterFactory(splitterSize2MB), + "DYNAMIC-4M-BUZHASH": newBuzHash32SplitterFactory(splitterSize4MB), + "DYNAMIC-8M-BUZHASH": newBuzHash32SplitterFactory(splitterSize8MB), - "DYNAMIC-1M-RABINKARP": newRabinKarp64SplitterFactory(splitterSize1MB), - "DYNAMIC-2M-RABINKARP": newRabinKarp64SplitterFactory(splitterSize2MB), - "DYNAMIC-4M-RABINKARP": newRabinKarp64SplitterFactory(splitterSize4MB), - "DYNAMIC-8M-RABINKARP": newRabinKarp64SplitterFactory(splitterSize8MB), + "DYNAMIC-128K-RABINKARP": newRabinKarp64SplitterFactory(splitterSize128KB), + "DYNAMIC-256K-RABINKARP": newRabinKarp64SplitterFactory(splitterSize256KB), + "DYNAMIC-512K-RABINKARP": newRabinKarp64SplitterFactory(splitterSize512KB), + "DYNAMIC-1M-RABINKARP": newRabinKarp64SplitterFactory(splitterSize1MB), + "DYNAMIC-2M-RABINKARP": newRabinKarp64SplitterFactory(splitterSize2MB), + "DYNAMIC-4M-RABINKARP": newRabinKarp64SplitterFactory(splitterSize4MB), + "DYNAMIC-8M-RABINKARP": newRabinKarp64SplitterFactory(splitterSize8MB), // handle deprecated legacy names to splitters of arbitrary size "FIXED": Fixed(splitterSize4MB),