this repo has no description
2
fork

Configure Feed

Select the types of activity you want to include in your feed.

Use realistic xks settings outside of sim

garrison e7078bb1 d7ebc217

+37 -10
+13 -3
lib/servers/storage.ex
··· 155 155 @data_partition 1 156 156 defmacro durable_version_key, do: "durable_version" 157 157 158 + defp c_block_size, do: sim_const(1024, 128 * 1024) 159 + defp c_extent_block_count, do: sim_const( 10, 100) 160 + defp c_lsm_subtable_size, do: sim_const(1024, 32 * 1024) 161 + defp c_lsm_memtable_size_limit, do: sim_const(4096, 1024 * 1024) 162 + 158 163 def init(%{cluster: %Cluster{} = cluster, path: path, id: id, storage_team_id: storage_team_id}) do 159 164 # Init new storage server 160 165 assert is_integer(id) ··· 163 168 # TODO: larger outside sim 164 169 xks = XKS.new([ 165 170 path: path, 166 - block_size: 1024, 167 - lsm_subtable_size: 1024, 171 + block_size: c_block_size(), 172 + extent_block_count: c_extent_block_count(), 173 + lsm_subtable_size: c_lsm_subtable_size(), 174 + lsm_memtable_size_limit: c_lsm_memtable_size_limit(), 168 175 ]) 169 176 170 177 state_fields = %{ ··· 186 193 assert path != :memory 187 194 assert is_binary(path) 188 195 189 - xks = XKS.load(path: path, block_size: 1024) 196 + xks = XKS.load([ 197 + path: path, 198 + block_size: c_block_size(), 199 + ]) 190 200 do_init(cluster, xks) 191 201 end 192 202
+16 -7
lib/servers/tlog.ex
··· 145 145 end 146 146 end 147 147 148 + defp c_block_size, do: sim_const(1024, 128 * 1024) 149 + defp c_extent_block_count, do: sim_const( 10, 100) 150 + defp c_lsm_subtable_size, do: sim_const(1024, 32 * 1024) 151 + defp c_lsm_memtable_size_limit, do: sim_const(4096, 1024 * 1024) 152 + 148 153 def init(%{cluster: %Cluster{} = cluster, path: path, id: id, prev_version: prev_version, meta_pairs: meta_pairs}) do 149 154 # Init new TLog 150 155 assert is_binary(path) or path == :memory ··· 153 158 assert is_integer(prev_version) 154 159 assert is_list(meta_pairs) 155 160 156 - extent_block_count = 157 - case Sim.simulated?() do 158 - true -> 10 159 - false -> 100 160 - end 161 - xks = XKS.new(path: path, block_size: 1024, extent_block_count: extent_block_count, lsm_subtable_size: 1024, lsm_memtable_size_limit: 4096) 161 + xks = XKS.new([ 162 + path: path, 163 + block_size: c_block_size(), 164 + extent_block_count: c_extent_block_count(), 165 + lsm_subtable_size: c_lsm_subtable_size(), 166 + lsm_memtable_size_limit: c_lsm_memtable_size_limit(), 167 + ]) 162 168 163 169 # Write first extent and meta pairs 164 170 first_extent = %{ ··· 199 205 assert path != :memory 200 206 assert is_binary(path) 201 207 202 - xks = XKS.load(path: path, block_size: 1024) 208 + xks = XKS.load([ 209 + path: path, 210 + block_size: c_block_size(), 211 + ]) 203 212 204 213 # Load last committed tlog state from XKS 205 214 state_fields = get_tlog_state(xks)
+8
lib/utils.ex
··· 309 309 Trinity.SimSystem.monotonic_time(:microsecond) 310 310 end 311 311 312 + @spec sim_const(sim_value, real_value) :: sim_value | real_value when sim_value: term, real_value: term 313 + def sim_const(sim_value, real_value) do 314 + case Trinity.Sim.simulated?() do 315 + true -> sim_value 316 + false -> real_value 317 + end 318 + end 319 + 312 320 @doc """ 313 321 Times a function and logs how long it takes. 314 322