Skip to content

Commit 84c91d0

Browse files
authored
Merge pull request #708 from IntersectMBO/wenkokke/move-conf-merge-schedule
fix: move confMergeSchedule next to confMergePolicy
2 parents bf280dd + 75d28a7 commit 84c91d0

File tree

155 files changed

+48
-46
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

155 files changed

+48
-46
lines changed

src/Database/LSMTree/Internal/Config.hs

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -58,6 +58,7 @@ newtype LevelNo = LevelNo Int
5858
-- * Size ratio: 4
5959
data TableConfig = TableConfig {
6060
confMergePolicy :: !MergePolicy
61+
, confMergeSchedule :: !MergeSchedule
6162
-- Size ratio between the capacities of adjacent levels.
6263
, confSizeRatio :: !SizeRatio
6364
-- | Total number of bytes that the write buffer can use.
@@ -69,7 +70,6 @@ data TableConfig = TableConfig {
6970
, confFencePointerIndex :: !FencePointerIndexType
7071
-- | The policy for caching key\/value data from disk in memory.
7172
, confDiskCachePolicy :: !DiskCachePolicy
72-
, confMergeSchedule :: !MergeSchedule
7373
}
7474
deriving stock (Show, Eq)
7575

@@ -86,12 +86,12 @@ defaultTableConfig :: TableConfig
8686
defaultTableConfig =
8787
TableConfig
8888
{ confMergePolicy = LazyLevelling
89+
, confMergeSchedule = defaultMergeSchedule
8990
, confSizeRatio = Four
9091
, confWriteBufferAlloc = AllocNumEntries 20_000
9192
, confBloomFilterAlloc = defaultBloomFilterAlloc
9293
, confFencePointerIndex = OrdinaryIndex
9394
, confDiskCachePolicy = DiskCacheAll
94-
, confMergeSchedule = defaultMergeSchedule
9595
}
9696

9797
data RunLevelNo = RegularLevel LevelNo | UnionLevel

src/Database/LSMTree/Internal/Config/Override.hs

Lines changed: 11 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,4 @@
1+
{-# LANGUAGE NamedFieldPuns #-}
12
{-# OPTIONS_HADDOCK not-home #-}
23

34
-- Definitions for override table config options.
@@ -87,12 +88,16 @@ instance Override DiskCachePolicy SnapshotMetaData where
8788
in fmap (override rdc) smt
8889

8990
instance Override DiskCachePolicy TableConfig where
90-
override dcp
91-
(TableConfig (cmp :: MergePolicy) (csz :: SizeRatio)
92-
(cwba :: WriteBufferAlloc) (cbfa :: BloomFilterAlloc)
93-
(cfit :: FencePointerIndexType) (_dcp :: DiskCachePolicy)
94-
(cfs :: MergeSchedule))
95-
= TableConfig cmp csz cwba cbfa cfit dcp cfs
91+
override confDiskCachePolicy' TableConfig {..}
92+
= TableConfig
93+
{ confMergePolicy,
94+
confMergeSchedule,
95+
confSizeRatio,
96+
confWriteBufferAlloc,
97+
confBloomFilterAlloc,
98+
confFencePointerIndex,
99+
confDiskCachePolicy = confDiskCachePolicy'
100+
}
96101

97102
instance Override DiskCachePolicy (SnapLevels SnapshotRun) where
98103
override dcp (SnapLevels (vec :: V.Vector (SnapLevel SnapshotRun))) =

src/Database/LSMTree/Internal/Snapshot/Codec.hs

Lines changed: 27 additions & 23 deletions
Original file line numberDiff line numberDiff line change
@@ -267,33 +267,37 @@ instance DecodeVersioned SnapshotRun where
267267
-- TableConfig
268268

269269
instance Encode TableConfig where
270-
encode config =
271-
encodeListLen 7
272-
<> encode mergePolicy
273-
<> encode sizeRatio
274-
<> encode writeBufferAlloc
275-
<> encode bloomFilterAlloc
276-
<> encode fencePointerIndex
277-
<> encode diskCachePolicy
278-
<> encode mergeSchedule
279-
where
280-
TableConfig
281-
mergePolicy
282-
sizeRatio
283-
writeBufferAlloc
284-
bloomFilterAlloc
285-
fencePointerIndex
286-
diskCachePolicy
287-
mergeSchedule
288-
= config
270+
encode
271+
( TableConfig
272+
{ confMergePolicy = mergePolicy
273+
, confMergeSchedule = mergeSchedule
274+
, confSizeRatio = sizeRatio
275+
, confWriteBufferAlloc = writeBufferAlloc
276+
, confBloomFilterAlloc = bloomFilterAlloc
277+
, confFencePointerIndex = fencePointerIndex
278+
, confDiskCachePolicy = diskCachePolicy
279+
}
280+
) =
281+
encodeListLen 7
282+
<> encode mergePolicy
283+
<> encode mergeSchedule
284+
<> encode sizeRatio
285+
<> encode writeBufferAlloc
286+
<> encode bloomFilterAlloc
287+
<> encode fencePointerIndex
288+
<> encode diskCachePolicy
289289

290290
instance DecodeVersioned TableConfig where
291291
decodeVersioned v@V0 = do
292292
_ <- decodeListLenOf 7
293-
TableConfig
294-
<$> decodeVersioned v <*> decodeVersioned v <*> decodeVersioned v
295-
<*> decodeVersioned v <*> decodeVersioned v <*> decodeVersioned v
296-
<*> decodeVersioned v
293+
confMergePolicy <- decodeVersioned v
294+
confMergeSchedule <- decodeVersioned v
295+
confSizeRatio <- decodeVersioned v
296+
confWriteBufferAlloc <- decodeVersioned v
297+
confBloomFilterAlloc <- decodeVersioned v
298+
confFencePointerIndex <- decodeVersioned v
299+
confDiskCachePolicy <- decodeVersioned v
300+
pure TableConfig {..}
297301

298302
-- MergePolicy
299303

test/Test/Database/LSMTree/Internal/Snapshot/Codec/Golden.hs

Lines changed: 8 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -175,22 +175,15 @@ enumerateSnapshotLabel =
175175
enumerateTableConfig :: [(ComponentAnnotation, TableConfig)]
176176
enumerateTableConfig =
177177
[ ( fuseAnnotations [ "T1", d, e, f, g ]
178-
, TableConfig
179-
policy
180-
ratio
181-
allocs
182-
bloom
183-
fence
184-
cache
185-
merge
178+
, TableConfig {..}
186179
)
187-
| (_, policy) <- [(blank, LazyLevelling)]
188-
, (_, ratio ) <- [(blank, Four)]
189-
, (_, allocs) <- fmap AllocNumEntries <$> [(blank, magicNumber1)]
190-
, (d, bloom ) <- enumerateBloomFilterAlloc
191-
, (e, fence ) <- [("I0", CompactIndex), ("I1", OrdinaryIndex)]
192-
, (f, cache ) <- enumerateDiskCachePolicy
193-
, (g, merge ) <- [("G0", OneShot), ("G1", Incremental)]
180+
| (_, confMergePolicy) <- [(blank, LazyLevelling)]
181+
, (g, confMergeSchedule) <- [("G0", OneShot), ("G1", Incremental)]
182+
, (_, confSizeRatio) <- [(blank, Four)]
183+
, (_, confWriteBufferAlloc) <- fmap AllocNumEntries <$> [(blank, magicNumber1)]
184+
, (d, confBloomFilterAlloc) <- enumerateBloomFilterAlloc
185+
, (e, confFencePointerIndex) <- [("I0", CompactIndex), ("I1", OrdinaryIndex)]
186+
, (f, confDiskCachePolicy) <- enumerateDiskCachePolicy
194187
]
195188

196189
enumerateSnapLevels :: [(ComponentAnnotation, SnapLevels SnapshotRun)]

0 commit comments

Comments
 (0)