From 93a616c5c1d82cad965f02dd000dc58c1b057ed2 Mon Sep 17 00:00:00 2001 From: Kelvin Clement Mwinuka Date: Sun, 26 May 2024 15:49:51 +0800 Subject: [PATCH] Updated RAFT layer to use new keyspace methods. Fixed API methods for HSET and SINTERCARD to match new key overwriting behaviour. --- coverage/coverage.out | 1715 +++++++++++++++++++----- echovault/api_hash_test.go | 6 +- echovault/api_set_test.go | 5 +- echovault/echovault.go | 63 +- internal/modules/hash/commands_test.go | 2 +- internal/raft/fsm.go | 14 +- internal/raft/raft.go | 10 +- 7 files changed, 1408 insertions(+), 407 deletions(-) diff --git a/coverage/coverage.out b/coverage/coverage.out index a1e3713e..37f8c87e 100644 --- a/coverage/coverage.out +++ b/coverage/coverage.out @@ -1,52 +1,59 @@ mode: set -github.com/echovault/echovault/internal/aof/engine.go:50.56,51.30 1 1 -github.com/echovault/echovault/internal/aof/engine.go:51.30,53.3 1 1 -github.com/echovault/echovault/internal/aof/engine.go:56.57,57.30 1 1 -github.com/echovault/echovault/internal/aof/engine.go:57.30,59.3 1 1 -github.com/echovault/echovault/internal/aof/engine.go:62.59,63.30 1 1 -github.com/echovault/echovault/internal/aof/engine.go:63.30,65.3 1 1 -github.com/echovault/echovault/internal/aof/engine.go:68.58,69.30 1 1 -github.com/echovault/echovault/internal/aof/engine.go:69.30,71.3 1 1 -github.com/echovault/echovault/internal/aof/engine.go:74.59,75.30 1 1 -github.com/echovault/echovault/internal/aof/engine.go:75.30,77.3 1 1 -github.com/echovault/echovault/internal/aof/engine.go:80.82,81.30 1 1 -github.com/echovault/echovault/internal/aof/engine.go:81.30,83.3 1 1 -github.com/echovault/echovault/internal/aof/engine.go:86.89,87.30 1 1 -github.com/echovault/echovault/internal/aof/engine.go:87.30,89.3 1 1 -github.com/echovault/echovault/internal/aof/engine.go:92.73,93.30 1 1 -github.com/echovault/echovault/internal/aof/engine.go:93.30,95.3 1 1 -github.com/echovault/echovault/internal/aof/engine.go:98.82,99.30 1 1 -github.com/echovault/echovault/internal/aof/engine.go:99.30,101.3 1 1 -github.com/echovault/echovault/internal/aof/engine.go:104.78,105.30 1 1 -github.com/echovault/echovault/internal/aof/engine.go:105.30,107.3 1 1 -github.com/echovault/echovault/internal/aof/engine.go:110.69,118.29 1 1 -github.com/echovault/echovault/internal/aof/engine.go:118.30,118.31 0 0 -github.com/echovault/echovault/internal/aof/engine.go:119.30,119.31 0 0 -github.com/echovault/echovault/internal/aof/engine.go:120.57,120.71 1 0 -github.com/echovault/echovault/internal/aof/engine.go:121.63,121.64 0 0 -github.com/echovault/echovault/internal/aof/engine.go:122.44,122.45 0 0 -github.com/echovault/echovault/internal/aof/engine.go:127.2,127.33 1 1 -github.com/echovault/echovault/internal/aof/engine.go:127.33,129.3 1 1 -github.com/echovault/echovault/internal/aof/engine.go:132.2,139.16 2 1 -github.com/echovault/echovault/internal/aof/engine.go:139.16,141.3 1 0 -github.com/echovault/echovault/internal/aof/engine.go:142.2,152.16 3 1 -github.com/echovault/echovault/internal/aof/engine.go:152.16,154.3 1 0 -github.com/echovault/echovault/internal/aof/engine.go:155.2,159.12 2 1 -github.com/echovault/echovault/internal/aof/engine.go:159.12,160.7 1 1 -github.com/echovault/echovault/internal/aof/engine.go:160.7,162.54 2 1 -github.com/echovault/echovault/internal/aof/engine.go:162.54,164.5 1 0 -github.com/echovault/echovault/internal/aof/engine.go:168.2,168.20 1 1 -github.com/echovault/echovault/internal/aof/engine.go:171.52,173.2 1 1 -github.com/echovault/echovault/internal/aof/engine.go:175.42,183.62 5 1 -github.com/echovault/echovault/internal/aof/engine.go:183.62,185.3 1 0 -github.com/echovault/echovault/internal/aof/engine.go:188.2,188.54 1 1 -github.com/echovault/echovault/internal/aof/engine.go:188.54,190.3 1 0 -github.com/echovault/echovault/internal/aof/engine.go:192.2,192.12 1 1 -github.com/echovault/echovault/internal/aof/engine.go:195.39,196.55 1 1 -github.com/echovault/echovault/internal/aof/engine.go:196.55,198.3 1 0 -github.com/echovault/echovault/internal/aof/engine.go:199.2,199.53 1 1 -github.com/echovault/echovault/internal/aof/engine.go:199.53,201.3 1 0 -github.com/echovault/echovault/internal/aof/engine.go:202.2,202.12 1 1 +github.com/echovault/echovault/internal/aof/log/store.go:46.60,47.34 1 1 +github.com/echovault/echovault/internal/aof/log/store.go:47.34,49.3 1 1 +github.com/echovault/echovault/internal/aof/log/store.go:52.61,53.34 1 1 +github.com/echovault/echovault/internal/aof/log/store.go:53.34,55.3 1 1 +github.com/echovault/echovault/internal/aof/log/store.go:58.67,59.34 1 1 +github.com/echovault/echovault/internal/aof/log/store.go:59.34,61.3 1 1 +github.com/echovault/echovault/internal/aof/log/store.go:64.63,65.34 1 1 +github.com/echovault/echovault/internal/aof/log/store.go:65.34,67.3 1 1 +github.com/echovault/echovault/internal/aof/log/store.go:70.77,71.34 1 1 +github.com/echovault/echovault/internal/aof/log/store.go:71.34,73.3 1 1 +github.com/echovault/echovault/internal/aof/log/store.go:76.80,83.39 1 1 +github.com/echovault/echovault/internal/aof/log/store.go:83.40,83.41 0 0 +github.com/echovault/echovault/internal/aof/log/store.go:86.2,86.33 1 1 +github.com/echovault/echovault/internal/aof/log/store.go:86.33,88.3 1 1 +github.com/echovault/echovault/internal/aof/log/store.go:91.2,91.46 1 1 +github.com/echovault/echovault/internal/aof/log/store.go:91.46,94.17 2 1 +github.com/echovault/echovault/internal/aof/log/store.go:94.17,96.4 1 0 +github.com/echovault/echovault/internal/aof/log/store.go:97.3,98.17 2 1 +github.com/echovault/echovault/internal/aof/log/store.go:98.17,100.4 1 0 +github.com/echovault/echovault/internal/aof/log/store.go:101.3,101.15 1 1 +github.com/echovault/echovault/internal/aof/log/store.go:106.2,106.51 1 1 +github.com/echovault/echovault/internal/aof/log/store.go:106.51,107.13 1 1 +github.com/echovault/echovault/internal/aof/log/store.go:107.13,108.8 1 1 +github.com/echovault/echovault/internal/aof/log/store.go:108.8,110.40 2 1 +github.com/echovault/echovault/internal/aof/log/store.go:110.40,113.11 3 0 +github.com/echovault/echovault/internal/aof/log/store.go:115.5,116.41 2 0 +github.com/echovault/echovault/internal/aof/log/store.go:121.2,121.19 1 1 +github.com/echovault/echovault/internal/aof/log/store.go:124.55,126.21 1 1 +github.com/echovault/echovault/internal/aof/log/store.go:126.21,128.3 1 0 +github.com/echovault/echovault/internal/aof/log/store.go:130.2,135.47 4 1 +github.com/echovault/echovault/internal/aof/log/store.go:135.47,137.3 1 0 +github.com/echovault/echovault/internal/aof/log/store.go:139.2,139.49 1 1 +github.com/echovault/echovault/internal/aof/log/store.go:139.49,140.38 1 1 +github.com/echovault/echovault/internal/aof/log/store.go:140.38,142.4 1 0 +github.com/echovault/echovault/internal/aof/log/store.go:145.2,145.12 1 1 +github.com/echovault/echovault/internal/aof/log/store.go:148.40,149.21 1 1 +github.com/echovault/echovault/internal/aof/log/store.go:149.21,151.3 1 1 +github.com/echovault/echovault/internal/aof/log/store.go:152.2,152.12 1 0 +github.com/echovault/echovault/internal/aof/log/store.go:155.43,160.47 3 1 +github.com/echovault/echovault/internal/aof/log/store.go:160.47,162.3 1 0 +github.com/echovault/echovault/internal/aof/log/store.go:164.2,165.6 2 1 +github.com/echovault/echovault/internal/aof/log/store.go:165.6,167.34 2 1 +github.com/echovault/echovault/internal/aof/log/store.go:167.34,169.4 1 0 +github.com/echovault/echovault/internal/aof/log/store.go:170.3,170.13 1 1 +github.com/echovault/echovault/internal/aof/log/store.go:170.13,172.9 1 1 +github.com/echovault/echovault/internal/aof/log/store.go:174.3,175.17 2 1 +github.com/echovault/echovault/internal/aof/log/store.go:175.17,177.4 1 0 +github.com/echovault/echovault/internal/aof/log/store.go:178.3,178.31 1 1 +github.com/echovault/echovault/internal/aof/log/store.go:181.2,181.12 1 1 +github.com/echovault/echovault/internal/aof/log/store.go:184.44,187.45 3 0 +github.com/echovault/echovault/internal/aof/log/store.go:187.45,189.3 1 0 +github.com/echovault/echovault/internal/aof/log/store.go:191.2,191.47 1 0 +github.com/echovault/echovault/internal/aof/log/store.go:191.47,193.3 1 0 +github.com/echovault/echovault/internal/aof/log/store.go:194.2,194.12 1 0 +github.com/echovault/echovault/internal/aof/log/store.go:197.41,201.2 3 1 github.com/echovault/echovault/internal/aof/preamble/store.go:45.62,46.36 1 1 github.com/echovault/echovault/internal/aof/preamble/store.go:46.36,48.3 1 1 github.com/echovault/echovault/internal/aof/preamble/store.go:51.71,52.36 1 0 @@ -102,61 +109,54 @@ github.com/echovault/echovault/internal/aof/preamble/store.go:185.43,187.4 1 1 github.com/echovault/echovault/internal/aof/preamble/store.go:189.2,189.35 1 1 github.com/echovault/echovault/internal/aof/preamble/store.go:189.35,191.3 1 1 github.com/echovault/echovault/internal/aof/preamble/store.go:192.2,192.14 1 1 -github.com/echovault/echovault/internal/aof/log/store.go:46.60,47.34 1 1 -github.com/echovault/echovault/internal/aof/log/store.go:47.34,49.3 1 1 -github.com/echovault/echovault/internal/aof/log/store.go:52.61,53.34 1 1 -github.com/echovault/echovault/internal/aof/log/store.go:53.34,55.3 1 1 -github.com/echovault/echovault/internal/aof/log/store.go:58.67,59.34 1 1 -github.com/echovault/echovault/internal/aof/log/store.go:59.34,61.3 1 1 -github.com/echovault/echovault/internal/aof/log/store.go:64.63,65.34 1 1 -github.com/echovault/echovault/internal/aof/log/store.go:65.34,67.3 1 1 -github.com/echovault/echovault/internal/aof/log/store.go:70.77,71.34 1 1 -github.com/echovault/echovault/internal/aof/log/store.go:71.34,73.3 1 1 -github.com/echovault/echovault/internal/aof/log/store.go:76.80,83.39 1 1 -github.com/echovault/echovault/internal/aof/log/store.go:83.40,83.41 0 0 -github.com/echovault/echovault/internal/aof/log/store.go:86.2,86.33 1 1 -github.com/echovault/echovault/internal/aof/log/store.go:86.33,88.3 1 1 -github.com/echovault/echovault/internal/aof/log/store.go:91.2,91.46 1 1 -github.com/echovault/echovault/internal/aof/log/store.go:91.46,94.17 2 1 -github.com/echovault/echovault/internal/aof/log/store.go:94.17,96.4 1 0 -github.com/echovault/echovault/internal/aof/log/store.go:97.3,98.17 2 1 -github.com/echovault/echovault/internal/aof/log/store.go:98.17,100.4 1 0 -github.com/echovault/echovault/internal/aof/log/store.go:101.3,101.15 1 1 -github.com/echovault/echovault/internal/aof/log/store.go:106.2,106.51 1 1 -github.com/echovault/echovault/internal/aof/log/store.go:106.51,107.13 1 1 -github.com/echovault/echovault/internal/aof/log/store.go:107.13,108.8 1 1 -github.com/echovault/echovault/internal/aof/log/store.go:108.8,110.40 2 1 -github.com/echovault/echovault/internal/aof/log/store.go:110.40,113.11 3 1 -github.com/echovault/echovault/internal/aof/log/store.go:115.5,116.41 2 0 -github.com/echovault/echovault/internal/aof/log/store.go:121.2,121.19 1 1 -github.com/echovault/echovault/internal/aof/log/store.go:124.55,126.21 1 1 -github.com/echovault/echovault/internal/aof/log/store.go:126.21,128.3 1 0 -github.com/echovault/echovault/internal/aof/log/store.go:130.2,135.47 4 1 -github.com/echovault/echovault/internal/aof/log/store.go:135.47,137.3 1 0 -github.com/echovault/echovault/internal/aof/log/store.go:139.2,139.49 1 1 -github.com/echovault/echovault/internal/aof/log/store.go:139.49,140.38 1 1 -github.com/echovault/echovault/internal/aof/log/store.go:140.38,142.4 1 0 -github.com/echovault/echovault/internal/aof/log/store.go:145.2,145.12 1 1 -github.com/echovault/echovault/internal/aof/log/store.go:148.40,149.21 1 1 -github.com/echovault/echovault/internal/aof/log/store.go:149.21,151.3 1 1 -github.com/echovault/echovault/internal/aof/log/store.go:152.2,152.12 1 0 -github.com/echovault/echovault/internal/aof/log/store.go:155.43,160.47 3 1 -github.com/echovault/echovault/internal/aof/log/store.go:160.47,162.3 1 0 -github.com/echovault/echovault/internal/aof/log/store.go:164.2,165.6 2 1 -github.com/echovault/echovault/internal/aof/log/store.go:165.6,167.34 2 1 -github.com/echovault/echovault/internal/aof/log/store.go:167.34,169.4 1 0 -github.com/echovault/echovault/internal/aof/log/store.go:170.3,170.13 1 1 -github.com/echovault/echovault/internal/aof/log/store.go:170.13,172.9 1 1 -github.com/echovault/echovault/internal/aof/log/store.go:174.3,175.17 2 1 -github.com/echovault/echovault/internal/aof/log/store.go:175.17,177.4 1 0 -github.com/echovault/echovault/internal/aof/log/store.go:178.3,178.31 1 1 -github.com/echovault/echovault/internal/aof/log/store.go:181.2,181.12 1 1 -github.com/echovault/echovault/internal/aof/log/store.go:184.44,187.45 3 0 -github.com/echovault/echovault/internal/aof/log/store.go:187.45,189.3 1 0 -github.com/echovault/echovault/internal/aof/log/store.go:191.2,191.47 1 0 -github.com/echovault/echovault/internal/aof/log/store.go:191.47,193.3 1 0 -github.com/echovault/echovault/internal/aof/log/store.go:194.2,194.12 1 0 -github.com/echovault/echovault/internal/aof/log/store.go:197.41,201.2 3 1 +github.com/echovault/echovault/internal/aof/engine.go:50.56,51.30 1 1 +github.com/echovault/echovault/internal/aof/engine.go:51.30,53.3 1 1 +github.com/echovault/echovault/internal/aof/engine.go:56.57,57.30 1 1 +github.com/echovault/echovault/internal/aof/engine.go:57.30,59.3 1 1 +github.com/echovault/echovault/internal/aof/engine.go:62.59,63.30 1 1 +github.com/echovault/echovault/internal/aof/engine.go:63.30,65.3 1 1 +github.com/echovault/echovault/internal/aof/engine.go:68.58,69.30 1 1 +github.com/echovault/echovault/internal/aof/engine.go:69.30,71.3 1 1 +github.com/echovault/echovault/internal/aof/engine.go:74.59,75.30 1 1 +github.com/echovault/echovault/internal/aof/engine.go:75.30,77.3 1 1 +github.com/echovault/echovault/internal/aof/engine.go:80.82,81.30 1 1 +github.com/echovault/echovault/internal/aof/engine.go:81.30,83.3 1 1 +github.com/echovault/echovault/internal/aof/engine.go:86.89,87.30 1 1 +github.com/echovault/echovault/internal/aof/engine.go:87.30,89.3 1 1 +github.com/echovault/echovault/internal/aof/engine.go:92.73,93.30 1 1 +github.com/echovault/echovault/internal/aof/engine.go:93.30,95.3 1 1 +github.com/echovault/echovault/internal/aof/engine.go:98.82,99.30 1 1 +github.com/echovault/echovault/internal/aof/engine.go:99.30,101.3 1 1 +github.com/echovault/echovault/internal/aof/engine.go:104.78,105.30 1 1 +github.com/echovault/echovault/internal/aof/engine.go:105.30,107.3 1 1 +github.com/echovault/echovault/internal/aof/engine.go:110.69,118.29 1 1 +github.com/echovault/echovault/internal/aof/engine.go:118.30,118.31 0 0 +github.com/echovault/echovault/internal/aof/engine.go:119.30,119.31 0 0 +github.com/echovault/echovault/internal/aof/engine.go:120.57,120.71 1 0 +github.com/echovault/echovault/internal/aof/engine.go:121.63,121.64 0 0 +github.com/echovault/echovault/internal/aof/engine.go:122.44,122.45 0 0 +github.com/echovault/echovault/internal/aof/engine.go:127.2,127.33 1 1 +github.com/echovault/echovault/internal/aof/engine.go:127.33,129.3 1 1 +github.com/echovault/echovault/internal/aof/engine.go:132.2,139.16 2 1 +github.com/echovault/echovault/internal/aof/engine.go:139.16,141.3 1 0 +github.com/echovault/echovault/internal/aof/engine.go:142.2,152.16 3 1 +github.com/echovault/echovault/internal/aof/engine.go:152.16,154.3 1 0 +github.com/echovault/echovault/internal/aof/engine.go:155.2,159.12 2 1 +github.com/echovault/echovault/internal/aof/engine.go:159.12,160.7 1 1 +github.com/echovault/echovault/internal/aof/engine.go:160.7,162.54 2 1 +github.com/echovault/echovault/internal/aof/engine.go:162.54,164.5 1 0 +github.com/echovault/echovault/internal/aof/engine.go:168.2,168.20 1 1 +github.com/echovault/echovault/internal/aof/engine.go:171.52,173.2 1 1 +github.com/echovault/echovault/internal/aof/engine.go:175.42,183.62 5 1 +github.com/echovault/echovault/internal/aof/engine.go:183.62,185.3 1 0 +github.com/echovault/echovault/internal/aof/engine.go:188.2,188.54 1 1 +github.com/echovault/echovault/internal/aof/engine.go:188.54,190.3 1 0 +github.com/echovault/echovault/internal/aof/engine.go:192.2,192.12 1 1 +github.com/echovault/echovault/internal/aof/engine.go:195.39,196.55 1 1 +github.com/echovault/echovault/internal/aof/engine.go:196.55,198.3 1 0 +github.com/echovault/echovault/internal/aof/engine.go:199.2,199.53 1 1 +github.com/echovault/echovault/internal/aof/engine.go:199.53,201.3 1 0 +github.com/echovault/echovault/internal/aof/engine.go:202.2,202.12 1 1 github.com/echovault/echovault/internal/eviction/lfu.go:35.29,42.2 3 1 github.com/echovault/echovault/internal/eviction/lfu.go:44.34,46.2 1 1 github.com/echovault/echovault/internal/eviction/lfu.go:48.44,50.54 1 1 @@ -957,8 +957,8 @@ github.com/echovault/echovault/internal/modules/hash/commands.go:303.17,304.41 1 github.com/echovault/echovault/internal/modules/hash/commands.go:304.41,306.13 2 1 github.com/echovault/echovault/internal/modules/hash/commands.go:308.4,308.42 1 1 github.com/echovault/echovault/internal/modules/hash/commands.go:308.42,311.13 3 1 -github.com/echovault/echovault/internal/modules/hash/commands.go:313.4,313.38 1 1 -github.com/echovault/echovault/internal/modules/hash/commands.go:313.38,315.13 2 1 +github.com/echovault/echovault/internal/modules/hash/commands.go:313.4,313.38 1 0 +github.com/echovault/echovault/internal/modules/hash/commands.go:313.38,315.13 2 0 github.com/echovault/echovault/internal/modules/hash/commands.go:320.2,320.25 1 1 github.com/echovault/echovault/internal/modules/hash/commands.go:323.68,325.16 2 1 github.com/echovault/echovault/internal/modules/hash/commands.go:325.16,327.3 1 0 @@ -1427,58 +1427,151 @@ github.com/echovault/echovault/internal/modules/pubsub/pubsub.go:263.2,263.20 1 github.com/echovault/echovault/internal/modules/pubsub/pubsub.go:266.47,271.38 4 1 github.com/echovault/echovault/internal/modules/pubsub/pubsub.go:271.38,273.3 1 1 github.com/echovault/echovault/internal/modules/pubsub/pubsub.go:275.2,275.17 1 1 -github.com/echovault/echovault/internal/modules/set/commands.go:26.68,28.16 2 1 -github.com/echovault/echovault/internal/modules/set/commands.go:28.16,30.3 1 0 -github.com/echovault/echovault/internal/modules/set/commands.go:32.2,37.16 4 1 -github.com/echovault/echovault/internal/modules/set/commands.go:37.16,39.91 2 1 -github.com/echovault/echovault/internal/modules/set/commands.go:39.91,41.4 1 0 -github.com/echovault/echovault/internal/modules/set/commands.go:42.3,42.70 1 1 -github.com/echovault/echovault/internal/modules/set/commands.go:45.2,46.9 2 1 -github.com/echovault/echovault/internal/modules/set/commands.go:46.9,48.3 1 1 -github.com/echovault/echovault/internal/modules/set/commands.go:50.2,52.51 2 1 -github.com/echovault/echovault/internal/modules/set/commands.go:55.69,57.16 2 1 -github.com/echovault/echovault/internal/modules/set/commands.go:57.16,59.3 1 0 -github.com/echovault/echovault/internal/modules/set/commands.go:61.2,64.16 3 1 -github.com/echovault/echovault/internal/modules/set/commands.go:64.16,66.3 1 1 -github.com/echovault/echovault/internal/modules/set/commands.go:68.2,69.9 2 1 -github.com/echovault/echovault/internal/modules/set/commands.go:69.9,71.3 1 1 -github.com/echovault/echovault/internal/modules/set/commands.go:73.2,75.57 2 1 -github.com/echovault/echovault/internal/modules/set/commands.go:78.69,80.16 2 1 -github.com/echovault/echovault/internal/modules/set/commands.go:80.16,82.3 1 0 -github.com/echovault/echovault/internal/modules/set/commands.go:84.2,87.34 2 1 -github.com/echovault/echovault/internal/modules/set/commands.go:87.34,89.3 1 1 -github.com/echovault/echovault/internal/modules/set/commands.go:91.2,92.9 2 1 -github.com/echovault/echovault/internal/modules/set/commands.go:92.9,94.3 1 1 -github.com/echovault/echovault/internal/modules/set/commands.go:96.2,97.41 2 1 -github.com/echovault/echovault/internal/modules/set/commands.go:97.41,99.10 2 1 -github.com/echovault/echovault/internal/modules/set/commands.go:99.10,100.12 1 1 -github.com/echovault/echovault/internal/modules/set/commands.go:102.3,102.27 1 1 -github.com/echovault/echovault/internal/modules/set/commands.go:105.2,109.26 4 1 -github.com/echovault/echovault/internal/modules/set/commands.go:109.26,111.24 2 1 -github.com/echovault/echovault/internal/modules/set/commands.go:111.24,113.4 1 1 -github.com/echovault/echovault/internal/modules/set/commands.go:116.2,116.25 1 1 -github.com/echovault/echovault/internal/modules/set/commands.go:119.74,121.16 2 1 -github.com/echovault/echovault/internal/modules/set/commands.go:121.16,123.3 1 0 -github.com/echovault/echovault/internal/modules/set/commands.go:125.2,129.34 3 1 -github.com/echovault/echovault/internal/modules/set/commands.go:129.34,131.3 1 1 -github.com/echovault/echovault/internal/modules/set/commands.go:133.2,134.9 2 1 -github.com/echovault/echovault/internal/modules/set/commands.go:134.9,136.3 1 1 -github.com/echovault/echovault/internal/modules/set/commands.go:138.2,139.40 2 1 -github.com/echovault/echovault/internal/modules/set/commands.go:139.40,141.10 2 1 -github.com/echovault/echovault/internal/modules/set/commands.go:141.10,142.12 1 1 -github.com/echovault/echovault/internal/modules/set/commands.go:144.3,144.27 1 1 -github.com/echovault/echovault/internal/modules/set/commands.go:147.2,152.99 4 1 -github.com/echovault/echovault/internal/modules/set/commands.go:152.99,154.3 1 0 -github.com/echovault/echovault/internal/modules/set/commands.go:156.2,156.25 1 1 -github.com/echovault/echovault/internal/modules/set/commands.go:159.70,161.16 2 1 -github.com/echovault/echovault/internal/modules/set/commands.go:161.16,163.3 1 0 -github.com/echovault/echovault/internal/modules/set/commands.go:165.2,169.37 3 1 -github.com/echovault/echovault/internal/modules/set/commands.go:169.37,170.14 1 1 -github.com/echovault/echovault/internal/modules/set/commands.go:170.14,172.4 1 1 -github.com/echovault/echovault/internal/modules/set/commands.go:173.3,174.10 2 1 -github.com/echovault/echovault/internal/modules/set/commands.go:174.10,177.4 1 1 -github.com/echovault/echovault/internal/modules/set/commands.go:178.3,178.27 1 1 -github.com/echovault/echovault/internal/modules/set/commands.go:181.2,181.20 1 1 +github.com/echovault/echovault/internal/modules/admin/commands.go:27.78,33.29 4 1 +github.com/echovault/echovault/internal/modules/admin/commands.go:33.29,34.54 1 1 +github.com/echovault/echovault/internal/modules/admin/commands.go:34.54,40.42 4 1 +github.com/echovault/echovault/internal/modules/admin/commands.go:40.42,42.5 1 1 +github.com/echovault/echovault/internal/modules/admin/commands.go:44.4,47.12 3 1 +github.com/echovault/echovault/internal/modules/admin/commands.go:50.3,50.36 1 1 +github.com/echovault/echovault/internal/modules/admin/commands.go:50.36,57.43 5 1 +github.com/echovault/echovault/internal/modules/admin/commands.go:57.43,59.5 1 1 +github.com/echovault/echovault/internal/modules/admin/commands.go:61.4,63.21 2 1 +github.com/echovault/echovault/internal/modules/admin/commands.go:67.2,69.25 2 1 +github.com/echovault/echovault/internal/modules/admin/commands.go:72.76,76.35 3 1 +github.com/echovault/echovault/internal/modules/admin/commands.go:76.35,77.65 1 1 +github.com/echovault/echovault/internal/modules/admin/commands.go:77.65,78.41 1 1 +github.com/echovault/echovault/internal/modules/admin/commands.go:78.41,80.5 1 1 +github.com/echovault/echovault/internal/modules/admin/commands.go:81.4,81.12 1 1 +github.com/echovault/echovault/internal/modules/admin/commands.go:83.3,83.13 1 1 +github.com/echovault/echovault/internal/modules/admin/commands.go:86.2,86.51 1 1 +github.com/echovault/echovault/internal/modules/admin/commands.go:89.75,90.29 1 1 +github.com/echovault/echovault/internal/modules/admin/commands.go:91.9,96.36 4 1 +github.com/echovault/echovault/internal/modules/admin/commands.go:96.36,97.66 1 1 +github.com/echovault/echovault/internal/modules/admin/commands.go:97.66,98.52 1 1 +github.com/echovault/echovault/internal/modules/admin/commands.go:98.52,102.6 3 1 +github.com/echovault/echovault/internal/modules/admin/commands.go:103.5,103.13 1 1 +github.com/echovault/echovault/internal/modules/admin/commands.go:105.4,106.14 2 1 +github.com/echovault/echovault/internal/modules/admin/commands.go:108.3,109.26 2 1 +github.com/echovault/echovault/internal/modules/admin/commands.go:111.9,115.56 3 1 +github.com/echovault/echovault/internal/modules/admin/commands.go:115.56,117.4 1 0 +github.com/echovault/echovault/internal/modules/admin/commands.go:118.3,118.53 1 1 +github.com/echovault/echovault/internal/modules/admin/commands.go:118.53,122.37 3 1 +github.com/echovault/echovault/internal/modules/admin/commands.go:122.37,123.67 1 1 +github.com/echovault/echovault/internal/modules/admin/commands.go:123.67,124.53 1 1 +github.com/echovault/echovault/internal/modules/admin/commands.go:124.53,125.59 1 1 +github.com/echovault/echovault/internal/modules/admin/commands.go:125.59,129.8 3 1 +github.com/echovault/echovault/internal/modules/admin/commands.go:131.6,131.14 1 1 +github.com/echovault/echovault/internal/modules/admin/commands.go:133.5,133.54 1 1 +github.com/echovault/echovault/internal/modules/admin/commands.go:133.54,136.6 2 1 +github.com/echovault/echovault/internal/modules/admin/commands.go:138.9,138.61 1 1 +github.com/echovault/echovault/internal/modules/admin/commands.go:138.61,142.37 3 1 +github.com/echovault/echovault/internal/modules/admin/commands.go:142.37,143.67 1 1 +github.com/echovault/echovault/internal/modules/admin/commands.go:143.67,144.53 1 1 +github.com/echovault/echovault/internal/modules/admin/commands.go:144.53,146.24 2 1 +github.com/echovault/echovault/internal/modules/admin/commands.go:146.24,149.8 2 0 +github.com/echovault/echovault/internal/modules/admin/commands.go:151.6,151.14 1 1 +github.com/echovault/echovault/internal/modules/admin/commands.go:153.5,153.33 1 1 +github.com/echovault/echovault/internal/modules/admin/commands.go:153.33,156.6 2 1 +github.com/echovault/echovault/internal/modules/admin/commands.go:158.9,158.60 1 1 +github.com/echovault/echovault/internal/modules/admin/commands.go:158.60,162.37 3 1 +github.com/echovault/echovault/internal/modules/admin/commands.go:162.37,163.67 1 1 +github.com/echovault/echovault/internal/modules/admin/commands.go:163.67,164.53 1 1 +github.com/echovault/echovault/internal/modules/admin/commands.go:164.53,165.55 1 1 +github.com/echovault/echovault/internal/modules/admin/commands.go:165.55,169.8 3 0 +github.com/echovault/echovault/internal/modules/admin/commands.go:171.6,171.14 1 1 +github.com/echovault/echovault/internal/modules/admin/commands.go:173.5,173.50 1 1 +github.com/echovault/echovault/internal/modules/admin/commands.go:173.50,176.6 2 1 +github.com/echovault/echovault/internal/modules/admin/commands.go:178.9,180.4 1 0 +github.com/echovault/echovault/internal/modules/admin/commands.go:181.3,182.26 2 1 +github.com/echovault/echovault/internal/modules/admin/commands.go:183.10,184.54 1 0 +github.com/echovault/echovault/internal/modules/admin/commands.go:188.75,190.2 1 0 +github.com/echovault/echovault/internal/modules/admin/commands.go:192.36,200.84 1 1 +github.com/echovault/echovault/internal/modules/admin/commands.go:200.84,204.5 1 0 +github.com/echovault/echovault/internal/modules/admin/commands.go:213.84,217.5 1 0 +github.com/echovault/echovault/internal/modules/admin/commands.go:225.86,229.7 1 0 +github.com/echovault/echovault/internal/modules/admin/commands.go:238.86,242.7 1 0 +github.com/echovault/echovault/internal/modules/admin/commands.go:252.86,256.7 1 0 +github.com/echovault/echovault/internal/modules/admin/commands.go:267.84,271.5 1 0 +github.com/echovault/echovault/internal/modules/admin/commands.go:272.73,273.49 1 0 +github.com/echovault/echovault/internal/modules/admin/commands.go:273.49,275.6 1 0 +github.com/echovault/echovault/internal/modules/admin/commands.go:276.5,276.45 1 0 +github.com/echovault/echovault/internal/modules/admin/commands.go:285.84,289.5 1 0 +github.com/echovault/echovault/internal/modules/admin/commands.go:290.73,292.18 2 0 +github.com/echovault/echovault/internal/modules/admin/commands.go:292.18,294.6 1 0 +github.com/echovault/echovault/internal/modules/admin/commands.go:295.5,295.53 1 0 +github.com/echovault/echovault/internal/modules/admin/commands.go:304.84,308.5 1 0 +github.com/echovault/echovault/internal/modules/admin/commands.go:309.73,310.47 1 0 +github.com/echovault/echovault/internal/modules/admin/commands.go:310.47,312.6 1 0 +github.com/echovault/echovault/internal/modules/admin/commands.go:313.5,313.45 1 0 +github.com/echovault/echovault/internal/modules/admin/commands.go:321.84,325.5 1 1 +github.com/echovault/echovault/internal/modules/admin/commands.go:335.86,339.7 1 1 +github.com/echovault/echovault/internal/modules/admin/commands.go:340.75,341.34 1 1 +github.com/echovault/echovault/internal/modules/admin/commands.go:341.34,343.8 1 0 +github.com/echovault/echovault/internal/modules/admin/commands.go:344.7,345.34 2 1 +github.com/echovault/echovault/internal/modules/admin/commands.go:345.34,347.8 1 1 +github.com/echovault/echovault/internal/modules/admin/commands.go:348.7,348.75 1 1 +github.com/echovault/echovault/internal/modules/admin/commands.go:348.75,350.8 1 0 +github.com/echovault/echovault/internal/modules/admin/commands.go:351.7,351.47 1 1 +github.com/echovault/echovault/internal/modules/admin/commands.go:361.86,365.7 1 1 +github.com/echovault/echovault/internal/modules/admin/commands.go:366.75,367.35 1 1 +github.com/echovault/echovault/internal/modules/admin/commands.go:367.35,369.8 1 0 +github.com/echovault/echovault/internal/modules/admin/commands.go:370.7,371.47 2 1 +github.com/echovault/echovault/internal/modules/admin/commands.go:380.86,384.7 1 1 +github.com/echovault/echovault/internal/modules/admin/commands.go:385.75,388.38 3 1 +github.com/echovault/echovault/internal/modules/admin/commands.go:388.38,390.8 1 1 +github.com/echovault/echovault/internal/modules/admin/commands.go:391.7,391.30 1 1 +github.com/echovault/echovault/internal/modules/set/commands.go:26.68,28.16 2 1 +github.com/echovault/echovault/internal/modules/set/commands.go:28.16,30.3 1 0 +github.com/echovault/echovault/internal/modules/set/commands.go:32.2,37.16 4 1 +github.com/echovault/echovault/internal/modules/set/commands.go:37.16,39.91 2 1 +github.com/echovault/echovault/internal/modules/set/commands.go:39.91,41.4 1 0 +github.com/echovault/echovault/internal/modules/set/commands.go:42.3,42.70 1 1 +github.com/echovault/echovault/internal/modules/set/commands.go:45.2,46.9 2 1 +github.com/echovault/echovault/internal/modules/set/commands.go:46.9,48.3 1 1 +github.com/echovault/echovault/internal/modules/set/commands.go:50.2,52.51 2 1 +github.com/echovault/echovault/internal/modules/set/commands.go:55.69,57.16 2 1 +github.com/echovault/echovault/internal/modules/set/commands.go:57.16,59.3 1 0 +github.com/echovault/echovault/internal/modules/set/commands.go:61.2,64.16 3 1 +github.com/echovault/echovault/internal/modules/set/commands.go:64.16,66.3 1 1 +github.com/echovault/echovault/internal/modules/set/commands.go:68.2,69.9 2 1 +github.com/echovault/echovault/internal/modules/set/commands.go:69.9,71.3 1 1 +github.com/echovault/echovault/internal/modules/set/commands.go:73.2,75.57 2 1 +github.com/echovault/echovault/internal/modules/set/commands.go:78.69,80.16 2 1 +github.com/echovault/echovault/internal/modules/set/commands.go:80.16,82.3 1 0 +github.com/echovault/echovault/internal/modules/set/commands.go:84.2,87.34 2 1 +github.com/echovault/echovault/internal/modules/set/commands.go:87.34,89.3 1 1 +github.com/echovault/echovault/internal/modules/set/commands.go:91.2,92.9 2 1 +github.com/echovault/echovault/internal/modules/set/commands.go:92.9,94.3 1 1 +github.com/echovault/echovault/internal/modules/set/commands.go:96.2,97.41 2 1 +github.com/echovault/echovault/internal/modules/set/commands.go:97.41,99.10 2 1 +github.com/echovault/echovault/internal/modules/set/commands.go:99.10,100.12 1 1 +github.com/echovault/echovault/internal/modules/set/commands.go:102.3,102.27 1 1 +github.com/echovault/echovault/internal/modules/set/commands.go:105.2,109.26 4 1 +github.com/echovault/echovault/internal/modules/set/commands.go:109.26,111.24 2 1 +github.com/echovault/echovault/internal/modules/set/commands.go:111.24,113.4 1 1 +github.com/echovault/echovault/internal/modules/set/commands.go:116.2,116.25 1 1 +github.com/echovault/echovault/internal/modules/set/commands.go:119.74,121.16 2 1 +github.com/echovault/echovault/internal/modules/set/commands.go:121.16,123.3 1 0 +github.com/echovault/echovault/internal/modules/set/commands.go:125.2,129.34 3 1 +github.com/echovault/echovault/internal/modules/set/commands.go:129.34,131.3 1 1 +github.com/echovault/echovault/internal/modules/set/commands.go:133.2,134.9 2 1 +github.com/echovault/echovault/internal/modules/set/commands.go:134.9,136.3 1 1 +github.com/echovault/echovault/internal/modules/set/commands.go:138.2,139.40 2 1 +github.com/echovault/echovault/internal/modules/set/commands.go:139.40,141.10 2 1 +github.com/echovault/echovault/internal/modules/set/commands.go:141.10,142.12 1 1 +github.com/echovault/echovault/internal/modules/set/commands.go:144.3,144.27 1 1 +github.com/echovault/echovault/internal/modules/set/commands.go:147.2,152.99 4 1 +github.com/echovault/echovault/internal/modules/set/commands.go:152.99,154.3 1 0 +github.com/echovault/echovault/internal/modules/set/commands.go:156.2,156.25 1 1 +github.com/echovault/echovault/internal/modules/set/commands.go:159.70,161.16 2 1 +github.com/echovault/echovault/internal/modules/set/commands.go:161.16,163.3 1 0 +github.com/echovault/echovault/internal/modules/set/commands.go:165.2,169.37 3 1 +github.com/echovault/echovault/internal/modules/set/commands.go:169.37,170.14 1 1 +github.com/echovault/echovault/internal/modules/set/commands.go:170.14,172.4 1 1 +github.com/echovault/echovault/internal/modules/set/commands.go:173.3,174.10 2 1 +github.com/echovault/echovault/internal/modules/set/commands.go:174.10,177.4 1 1 +github.com/echovault/echovault/internal/modules/set/commands.go:178.3,178.27 1 1 +github.com/echovault/echovault/internal/modules/set/commands.go:181.2,181.20 1 1 github.com/echovault/echovault/internal/modules/set/commands.go:181.20,183.3 1 0 github.com/echovault/echovault/internal/modules/set/commands.go:185.2,189.26 4 1 github.com/echovault/echovault/internal/modules/set/commands.go:189.26,191.24 2 1 @@ -1509,7 +1602,7 @@ github.com/echovault/echovault/internal/modules/set/commands.go:251.75,253.16 2 github.com/echovault/echovault/internal/modules/set/commands.go:253.16,255.3 1 0 github.com/echovault/echovault/internal/modules/set/commands.go:257.2,261.37 3 1 github.com/echovault/echovault/internal/modules/set/commands.go:261.37,262.14 1 1 -github.com/echovault/echovault/internal/modules/set/commands.go:262.14,264.4 1 1 +github.com/echovault/echovault/internal/modules/set/commands.go:262.14,264.4 1 0 github.com/echovault/echovault/internal/modules/set/commands.go:265.3,266.10 2 1 github.com/echovault/echovault/internal/modules/set/commands.go:266.10,269.4 1 1 github.com/echovault/echovault/internal/modules/set/commands.go:270.3,270.27 1 1 @@ -1719,201 +1812,6 @@ github.com/echovault/echovault/internal/modules/set/set.go:184.31,185.19 1 1 github.com/echovault/echovault/internal/modules/set/set.go:186.9,187.17 1 1 github.com/echovault/echovault/internal/modules/set/set.go:188.9,191.15 3 1 github.com/echovault/echovault/internal/modules/set/set.go:192.10,195.28 3 1 -github.com/echovault/echovault/internal/modules/admin/commands.go:27.78,33.29 4 1 -github.com/echovault/echovault/internal/modules/admin/commands.go:33.29,34.54 1 1 -github.com/echovault/echovault/internal/modules/admin/commands.go:34.54,40.42 4 1 -github.com/echovault/echovault/internal/modules/admin/commands.go:40.42,42.5 1 1 -github.com/echovault/echovault/internal/modules/admin/commands.go:44.4,47.12 3 1 -github.com/echovault/echovault/internal/modules/admin/commands.go:50.3,50.36 1 1 -github.com/echovault/echovault/internal/modules/admin/commands.go:50.36,57.43 5 1 -github.com/echovault/echovault/internal/modules/admin/commands.go:57.43,59.5 1 1 -github.com/echovault/echovault/internal/modules/admin/commands.go:61.4,63.21 2 1 -github.com/echovault/echovault/internal/modules/admin/commands.go:67.2,69.25 2 1 -github.com/echovault/echovault/internal/modules/admin/commands.go:72.76,76.35 3 1 -github.com/echovault/echovault/internal/modules/admin/commands.go:76.35,77.65 1 1 -github.com/echovault/echovault/internal/modules/admin/commands.go:77.65,78.41 1 1 -github.com/echovault/echovault/internal/modules/admin/commands.go:78.41,80.5 1 1 -github.com/echovault/echovault/internal/modules/admin/commands.go:81.4,81.12 1 1 -github.com/echovault/echovault/internal/modules/admin/commands.go:83.3,83.13 1 1 -github.com/echovault/echovault/internal/modules/admin/commands.go:86.2,86.51 1 1 -github.com/echovault/echovault/internal/modules/admin/commands.go:89.75,90.29 1 1 -github.com/echovault/echovault/internal/modules/admin/commands.go:91.9,96.36 4 1 -github.com/echovault/echovault/internal/modules/admin/commands.go:96.36,97.66 1 1 -github.com/echovault/echovault/internal/modules/admin/commands.go:97.66,98.52 1 1 -github.com/echovault/echovault/internal/modules/admin/commands.go:98.52,102.6 3 1 -github.com/echovault/echovault/internal/modules/admin/commands.go:103.5,103.13 1 1 -github.com/echovault/echovault/internal/modules/admin/commands.go:105.4,106.14 2 1 -github.com/echovault/echovault/internal/modules/admin/commands.go:108.3,109.26 2 1 -github.com/echovault/echovault/internal/modules/admin/commands.go:111.9,115.56 3 1 -github.com/echovault/echovault/internal/modules/admin/commands.go:115.56,117.4 1 0 -github.com/echovault/echovault/internal/modules/admin/commands.go:118.3,118.53 1 1 -github.com/echovault/echovault/internal/modules/admin/commands.go:118.53,122.37 3 1 -github.com/echovault/echovault/internal/modules/admin/commands.go:122.37,123.67 1 1 -github.com/echovault/echovault/internal/modules/admin/commands.go:123.67,124.53 1 1 -github.com/echovault/echovault/internal/modules/admin/commands.go:124.53,125.59 1 1 -github.com/echovault/echovault/internal/modules/admin/commands.go:125.59,129.8 3 1 -github.com/echovault/echovault/internal/modules/admin/commands.go:131.6,131.14 1 1 -github.com/echovault/echovault/internal/modules/admin/commands.go:133.5,133.54 1 1 -github.com/echovault/echovault/internal/modules/admin/commands.go:133.54,136.6 2 1 -github.com/echovault/echovault/internal/modules/admin/commands.go:138.9,138.61 1 1 -github.com/echovault/echovault/internal/modules/admin/commands.go:138.61,142.37 3 1 -github.com/echovault/echovault/internal/modules/admin/commands.go:142.37,143.67 1 1 -github.com/echovault/echovault/internal/modules/admin/commands.go:143.67,144.53 1 1 -github.com/echovault/echovault/internal/modules/admin/commands.go:144.53,146.24 2 1 -github.com/echovault/echovault/internal/modules/admin/commands.go:146.24,149.8 2 0 -github.com/echovault/echovault/internal/modules/admin/commands.go:151.6,151.14 1 1 -github.com/echovault/echovault/internal/modules/admin/commands.go:153.5,153.33 1 1 -github.com/echovault/echovault/internal/modules/admin/commands.go:153.33,156.6 2 1 -github.com/echovault/echovault/internal/modules/admin/commands.go:158.9,158.60 1 1 -github.com/echovault/echovault/internal/modules/admin/commands.go:158.60,162.37 3 1 -github.com/echovault/echovault/internal/modules/admin/commands.go:162.37,163.67 1 1 -github.com/echovault/echovault/internal/modules/admin/commands.go:163.67,164.53 1 1 -github.com/echovault/echovault/internal/modules/admin/commands.go:164.53,165.55 1 1 -github.com/echovault/echovault/internal/modules/admin/commands.go:165.55,169.8 3 0 -github.com/echovault/echovault/internal/modules/admin/commands.go:171.6,171.14 1 1 -github.com/echovault/echovault/internal/modules/admin/commands.go:173.5,173.50 1 1 -github.com/echovault/echovault/internal/modules/admin/commands.go:173.50,176.6 2 1 -github.com/echovault/echovault/internal/modules/admin/commands.go:178.9,180.4 1 0 -github.com/echovault/echovault/internal/modules/admin/commands.go:181.3,182.26 2 1 -github.com/echovault/echovault/internal/modules/admin/commands.go:183.10,184.54 1 0 -github.com/echovault/echovault/internal/modules/admin/commands.go:188.75,190.2 1 0 -github.com/echovault/echovault/internal/modules/admin/commands.go:192.36,200.84 1 1 -github.com/echovault/echovault/internal/modules/admin/commands.go:200.84,204.5 1 0 -github.com/echovault/echovault/internal/modules/admin/commands.go:213.84,217.5 1 0 -github.com/echovault/echovault/internal/modules/admin/commands.go:225.86,229.7 1 0 -github.com/echovault/echovault/internal/modules/admin/commands.go:238.86,242.7 1 0 -github.com/echovault/echovault/internal/modules/admin/commands.go:252.86,256.7 1 0 -github.com/echovault/echovault/internal/modules/admin/commands.go:267.84,271.5 1 0 -github.com/echovault/echovault/internal/modules/admin/commands.go:272.73,273.49 1 0 -github.com/echovault/echovault/internal/modules/admin/commands.go:273.49,275.6 1 0 -github.com/echovault/echovault/internal/modules/admin/commands.go:276.5,276.45 1 0 -github.com/echovault/echovault/internal/modules/admin/commands.go:285.84,289.5 1 0 -github.com/echovault/echovault/internal/modules/admin/commands.go:290.73,292.18 2 0 -github.com/echovault/echovault/internal/modules/admin/commands.go:292.18,294.6 1 0 -github.com/echovault/echovault/internal/modules/admin/commands.go:295.5,295.53 1 0 -github.com/echovault/echovault/internal/modules/admin/commands.go:304.84,308.5 1 0 -github.com/echovault/echovault/internal/modules/admin/commands.go:309.73,310.47 1 0 -github.com/echovault/echovault/internal/modules/admin/commands.go:310.47,312.6 1 0 -github.com/echovault/echovault/internal/modules/admin/commands.go:313.5,313.45 1 0 -github.com/echovault/echovault/internal/modules/admin/commands.go:321.84,325.5 1 1 -github.com/echovault/echovault/internal/modules/admin/commands.go:335.86,339.7 1 1 -github.com/echovault/echovault/internal/modules/admin/commands.go:340.75,341.34 1 1 -github.com/echovault/echovault/internal/modules/admin/commands.go:341.34,343.8 1 0 -github.com/echovault/echovault/internal/modules/admin/commands.go:344.7,345.34 2 1 -github.com/echovault/echovault/internal/modules/admin/commands.go:345.34,347.8 1 1 -github.com/echovault/echovault/internal/modules/admin/commands.go:348.7,348.75 1 1 -github.com/echovault/echovault/internal/modules/admin/commands.go:348.75,350.8 1 0 -github.com/echovault/echovault/internal/modules/admin/commands.go:351.7,351.47 1 1 -github.com/echovault/echovault/internal/modules/admin/commands.go:361.86,365.7 1 1 -github.com/echovault/echovault/internal/modules/admin/commands.go:366.75,367.35 1 1 -github.com/echovault/echovault/internal/modules/admin/commands.go:367.35,369.8 1 0 -github.com/echovault/echovault/internal/modules/admin/commands.go:370.7,371.47 2 1 -github.com/echovault/echovault/internal/modules/admin/commands.go:380.86,384.7 1 1 -github.com/echovault/echovault/internal/modules/admin/commands.go:385.75,388.38 3 1 -github.com/echovault/echovault/internal/modules/admin/commands.go:388.38,390.8 1 1 -github.com/echovault/echovault/internal/modules/admin/commands.go:391.7,391.30 1 1 -github.com/echovault/echovault/internal/snapshot/snapshot.go:55.56,56.30 1 1 -github.com/echovault/echovault/internal/snapshot/snapshot.go:56.30,58.3 1 1 -github.com/echovault/echovault/internal/snapshot/snapshot.go:61.59,62.30 1 1 -github.com/echovault/echovault/internal/snapshot/snapshot.go:62.30,64.3 1 1 -github.com/echovault/echovault/internal/snapshot/snapshot.go:67.64,68.30 1 1 -github.com/echovault/echovault/internal/snapshot/snapshot.go:68.30,70.3 1 1 -github.com/echovault/echovault/internal/snapshot/snapshot.go:73.59,74.30 1 1 -github.com/echovault/echovault/internal/snapshot/snapshot.go:74.30,76.3 1 1 -github.com/echovault/echovault/internal/snapshot/snapshot.go:79.59,80.30 1 1 -github.com/echovault/echovault/internal/snapshot/snapshot.go:80.30,82.3 1 1 -github.com/echovault/echovault/internal/snapshot/snapshot.go:85.60,86.30 1 1 -github.com/echovault/echovault/internal/snapshot/snapshot.go:86.30,88.3 1 1 -github.com/echovault/echovault/internal/snapshot/snapshot.go:91.82,92.30 1 1 -github.com/echovault/echovault/internal/snapshot/snapshot.go:92.30,94.3 1 1 -github.com/echovault/echovault/internal/snapshot/snapshot.go:97.77,98.30 1 1 -github.com/echovault/echovault/internal/snapshot/snapshot.go:98.30,100.3 1 1 -github.com/echovault/echovault/internal/snapshot/snapshot.go:103.73,104.30 1 1 -github.com/echovault/echovault/internal/snapshot/snapshot.go:104.30,106.3 1 1 -github.com/echovault/echovault/internal/snapshot/snapshot.go:109.89,110.30 1 1 -github.com/echovault/echovault/internal/snapshot/snapshot.go:110.30,112.3 1 1 -github.com/echovault/echovault/internal/snapshot/snapshot.go:115.65,122.30 1 1 -github.com/echovault/echovault/internal/snapshot/snapshot.go:122.31,122.32 0 0 -github.com/echovault/echovault/internal/snapshot/snapshot.go:123.31,123.32 0 0 -github.com/echovault/echovault/internal/snapshot/snapshot.go:124.52,126.4 1 0 -github.com/echovault/echovault/internal/snapshot/snapshot.go:127.71,127.72 0 0 -github.com/echovault/echovault/internal/snapshot/snapshot.go:128.48,128.49 0 0 -github.com/echovault/echovault/internal/snapshot/snapshot.go:129.43,131.4 1 0 -github.com/echovault/echovault/internal/snapshot/snapshot.go:134.2,134.33 1 1 -github.com/echovault/echovault/internal/snapshot/snapshot.go:134.33,136.3 1 1 -github.com/echovault/echovault/internal/snapshot/snapshot.go:138.2,138.34 1 1 -github.com/echovault/echovault/internal/snapshot/snapshot.go:138.34,139.13 1 1 -github.com/echovault/echovault/internal/snapshot/snapshot.go:139.13,140.8 1 1 -github.com/echovault/echovault/internal/snapshot/snapshot.go:140.8,142.62 2 1 -github.com/echovault/echovault/internal/snapshot/snapshot.go:142.62,143.50 1 0 -github.com/echovault/echovault/internal/snapshot/snapshot.go:143.50,145.7 1 0 -github.com/echovault/echovault/internal/snapshot/snapshot.go:151.2,151.15 1 1 -github.com/echovault/echovault/internal/snapshot/snapshot.go:154.44,174.58 7 1 -github.com/echovault/echovault/internal/snapshot/snapshot.go:174.58,177.3 2 0 -github.com/echovault/echovault/internal/snapshot/snapshot.go:180.2,182.16 3 1 -github.com/echovault/echovault/internal/snapshot/snapshot.go:182.16,183.37 1 1 -github.com/echovault/echovault/internal/snapshot/snapshot.go:183.37,186.18 2 1 -github.com/echovault/echovault/internal/snapshot/snapshot.go:186.18,189.5 2 0 -github.com/echovault/echovault/internal/snapshot/snapshot.go:190.4,190.24 1 1 -github.com/echovault/echovault/internal/snapshot/snapshot.go:191.9,194.4 2 0 -github.com/echovault/echovault/internal/snapshot/snapshot.go:197.2,198.16 2 1 -github.com/echovault/echovault/internal/snapshot/snapshot.go:198.16,201.3 2 0 -github.com/echovault/echovault/internal/snapshot/snapshot.go:202.2,202.35 1 1 -github.com/echovault/echovault/internal/snapshot/snapshot.go:202.35,205.3 2 0 -github.com/echovault/echovault/internal/snapshot/snapshot.go:207.2,209.20 2 1 -github.com/echovault/echovault/internal/snapshot/snapshot.go:209.20,210.53 1 1 -github.com/echovault/echovault/internal/snapshot/snapshot.go:210.53,213.4 2 0 -github.com/echovault/echovault/internal/snapshot/snapshot.go:217.2,222.16 3 1 -github.com/echovault/echovault/internal/snapshot/snapshot.go:222.16,225.3 2 0 -github.com/echovault/echovault/internal/snapshot/snapshot.go:227.2,228.49 2 1 -github.com/echovault/echovault/internal/snapshot/snapshot.go:228.49,230.3 1 0 -github.com/echovault/echovault/internal/snapshot/snapshot.go:233.2,236.16 3 1 -github.com/echovault/echovault/internal/snapshot/snapshot.go:236.16,239.3 2 0 -github.com/echovault/echovault/internal/snapshot/snapshot.go:242.2,243.16 2 1 -github.com/echovault/echovault/internal/snapshot/snapshot.go:243.16,246.3 2 0 -github.com/echovault/echovault/internal/snapshot/snapshot.go:249.2,254.16 3 1 -github.com/echovault/echovault/internal/snapshot/snapshot.go:254.16,257.3 2 0 -github.com/echovault/echovault/internal/snapshot/snapshot.go:258.2,258.39 1 1 -github.com/echovault/echovault/internal/snapshot/snapshot.go:258.39,261.3 2 0 -github.com/echovault/echovault/internal/snapshot/snapshot.go:262.2,262.33 1 1 -github.com/echovault/echovault/internal/snapshot/snapshot.go:262.33,264.3 1 0 -github.com/echovault/echovault/internal/snapshot/snapshot.go:265.2,265.34 1 1 -github.com/echovault/echovault/internal/snapshot/snapshot.go:265.34,268.3 2 0 -github.com/echovault/echovault/internal/snapshot/snapshot.go:271.2,272.58 2 1 -github.com/echovault/echovault/internal/snapshot/snapshot.go:272.58,274.3 1 0 -github.com/echovault/echovault/internal/snapshot/snapshot.go:277.2,278.16 2 1 -github.com/echovault/echovault/internal/snapshot/snapshot.go:278.16,281.3 2 0 -github.com/echovault/echovault/internal/snapshot/snapshot.go:282.2,282.15 1 1 -github.com/echovault/echovault/internal/snapshot/snapshot.go:282.15,283.35 1 1 -github.com/echovault/echovault/internal/snapshot/snapshot.go:283.35,285.4 1 0 -github.com/echovault/echovault/internal/snapshot/snapshot.go:289.2,289.39 1 1 -github.com/echovault/echovault/internal/snapshot/snapshot.go:289.39,291.3 1 0 -github.com/echovault/echovault/internal/snapshot/snapshot.go:292.2,292.32 1 1 -github.com/echovault/echovault/internal/snapshot/snapshot.go:292.32,294.3 1 0 -github.com/echovault/echovault/internal/snapshot/snapshot.go:297.2,302.12 3 1 -github.com/echovault/echovault/internal/snapshot/snapshot.go:305.39,307.50 2 1 -github.com/echovault/echovault/internal/snapshot/snapshot.go:307.50,309.3 1 0 -github.com/echovault/echovault/internal/snapshot/snapshot.go:310.2,310.16 1 1 -github.com/echovault/echovault/internal/snapshot/snapshot.go:310.16,312.3 1 0 -github.com/echovault/echovault/internal/snapshot/snapshot.go:314.2,317.16 3 1 -github.com/echovault/echovault/internal/snapshot/snapshot.go:317.16,319.3 1 0 -github.com/echovault/echovault/internal/snapshot/snapshot.go:321.2,321.52 1 1 -github.com/echovault/echovault/internal/snapshot/snapshot.go:321.52,323.3 1 0 -github.com/echovault/echovault/internal/snapshot/snapshot.go:325.2,325.46 1 1 -github.com/echovault/echovault/internal/snapshot/snapshot.go:325.46,327.3 1 0 -github.com/echovault/echovault/internal/snapshot/snapshot.go:329.2,334.50 2 1 -github.com/echovault/echovault/internal/snapshot/snapshot.go:334.50,336.3 1 0 -github.com/echovault/echovault/internal/snapshot/snapshot.go:337.2,337.16 1 1 -github.com/echovault/echovault/internal/snapshot/snapshot.go:337.16,339.3 1 0 -github.com/echovault/echovault/internal/snapshot/snapshot.go:341.2,342.16 2 1 -github.com/echovault/echovault/internal/snapshot/snapshot.go:342.16,344.3 1 0 -github.com/echovault/echovault/internal/snapshot/snapshot.go:346.2,348.58 2 1 -github.com/echovault/echovault/internal/snapshot/snapshot.go:348.58,350.3 1 0 -github.com/echovault/echovault/internal/snapshot/snapshot.go:352.2,354.94 2 1 -github.com/echovault/echovault/internal/snapshot/snapshot.go:354.94,356.3 1 1 -github.com/echovault/echovault/internal/snapshot/snapshot.go:358.2,360.12 2 1 -github.com/echovault/echovault/internal/snapshot/snapshot.go:363.46,365.2 1 0 -github.com/echovault/echovault/internal/snapshot/snapshot.go:367.42,369.2 1 1 github.com/echovault/echovault/internal/modules/sorted_set/commands.go:29.68,31.16 2 1 github.com/echovault/echovault/internal/modules/sorted_set/commands.go:31.16,33.3 1 0 github.com/echovault/echovault/internal/modules/sorted_set/commands.go:35.2,45.43 8 1 @@ -2800,3 +2698,1114 @@ github.com/echovault/echovault/internal/modules/string/key_funcs.go:38.2,42.8 1 github.com/echovault/echovault/internal/modules/string/key_funcs.go:45.76,46.19 1 1 github.com/echovault/echovault/internal/modules/string/key_funcs.go:46.19,48.3 1 1 github.com/echovault/echovault/internal/modules/string/key_funcs.go:49.2,53.8 1 1 +github.com/echovault/echovault/internal/snapshot/snapshot.go:55.56,56.30 1 1 +github.com/echovault/echovault/internal/snapshot/snapshot.go:56.30,58.3 1 1 +github.com/echovault/echovault/internal/snapshot/snapshot.go:61.59,62.30 1 1 +github.com/echovault/echovault/internal/snapshot/snapshot.go:62.30,64.3 1 1 +github.com/echovault/echovault/internal/snapshot/snapshot.go:67.64,68.30 1 1 +github.com/echovault/echovault/internal/snapshot/snapshot.go:68.30,70.3 1 1 +github.com/echovault/echovault/internal/snapshot/snapshot.go:73.59,74.30 1 1 +github.com/echovault/echovault/internal/snapshot/snapshot.go:74.30,76.3 1 1 +github.com/echovault/echovault/internal/snapshot/snapshot.go:79.59,80.30 1 1 +github.com/echovault/echovault/internal/snapshot/snapshot.go:80.30,82.3 1 1 +github.com/echovault/echovault/internal/snapshot/snapshot.go:85.60,86.30 1 1 +github.com/echovault/echovault/internal/snapshot/snapshot.go:86.30,88.3 1 1 +github.com/echovault/echovault/internal/snapshot/snapshot.go:91.82,92.30 1 1 +github.com/echovault/echovault/internal/snapshot/snapshot.go:92.30,94.3 1 1 +github.com/echovault/echovault/internal/snapshot/snapshot.go:97.77,98.30 1 1 +github.com/echovault/echovault/internal/snapshot/snapshot.go:98.30,100.3 1 1 +github.com/echovault/echovault/internal/snapshot/snapshot.go:103.73,104.30 1 1 +github.com/echovault/echovault/internal/snapshot/snapshot.go:104.30,106.3 1 1 +github.com/echovault/echovault/internal/snapshot/snapshot.go:109.89,110.30 1 1 +github.com/echovault/echovault/internal/snapshot/snapshot.go:110.30,112.3 1 1 +github.com/echovault/echovault/internal/snapshot/snapshot.go:115.65,122.30 1 1 +github.com/echovault/echovault/internal/snapshot/snapshot.go:122.31,122.32 0 0 +github.com/echovault/echovault/internal/snapshot/snapshot.go:123.31,123.32 0 0 +github.com/echovault/echovault/internal/snapshot/snapshot.go:124.52,126.4 1 0 +github.com/echovault/echovault/internal/snapshot/snapshot.go:127.71,127.72 0 0 +github.com/echovault/echovault/internal/snapshot/snapshot.go:128.48,128.49 0 0 +github.com/echovault/echovault/internal/snapshot/snapshot.go:129.43,131.4 1 0 +github.com/echovault/echovault/internal/snapshot/snapshot.go:134.2,134.33 1 1 +github.com/echovault/echovault/internal/snapshot/snapshot.go:134.33,136.3 1 1 +github.com/echovault/echovault/internal/snapshot/snapshot.go:138.2,138.34 1 1 +github.com/echovault/echovault/internal/snapshot/snapshot.go:138.34,139.13 1 1 +github.com/echovault/echovault/internal/snapshot/snapshot.go:139.13,140.8 1 1 +github.com/echovault/echovault/internal/snapshot/snapshot.go:140.8,142.62 2 1 +github.com/echovault/echovault/internal/snapshot/snapshot.go:142.62,143.50 1 0 +github.com/echovault/echovault/internal/snapshot/snapshot.go:143.50,145.7 1 0 +github.com/echovault/echovault/internal/snapshot/snapshot.go:151.2,151.15 1 1 +github.com/echovault/echovault/internal/snapshot/snapshot.go:154.44,174.58 7 1 +github.com/echovault/echovault/internal/snapshot/snapshot.go:174.58,177.3 2 0 +github.com/echovault/echovault/internal/snapshot/snapshot.go:180.2,182.16 3 1 +github.com/echovault/echovault/internal/snapshot/snapshot.go:182.16,183.37 1 1 +github.com/echovault/echovault/internal/snapshot/snapshot.go:183.37,186.18 2 1 +github.com/echovault/echovault/internal/snapshot/snapshot.go:186.18,189.5 2 0 +github.com/echovault/echovault/internal/snapshot/snapshot.go:190.4,190.24 1 1 +github.com/echovault/echovault/internal/snapshot/snapshot.go:191.9,194.4 2 0 +github.com/echovault/echovault/internal/snapshot/snapshot.go:197.2,198.16 2 1 +github.com/echovault/echovault/internal/snapshot/snapshot.go:198.16,201.3 2 0 +github.com/echovault/echovault/internal/snapshot/snapshot.go:202.2,202.35 1 1 +github.com/echovault/echovault/internal/snapshot/snapshot.go:202.35,205.3 2 0 +github.com/echovault/echovault/internal/snapshot/snapshot.go:207.2,209.20 2 1 +github.com/echovault/echovault/internal/snapshot/snapshot.go:209.20,210.53 1 1 +github.com/echovault/echovault/internal/snapshot/snapshot.go:210.53,213.4 2 0 +github.com/echovault/echovault/internal/snapshot/snapshot.go:217.2,222.16 3 1 +github.com/echovault/echovault/internal/snapshot/snapshot.go:222.16,225.3 2 0 +github.com/echovault/echovault/internal/snapshot/snapshot.go:227.2,228.49 2 1 +github.com/echovault/echovault/internal/snapshot/snapshot.go:228.49,230.3 1 0 +github.com/echovault/echovault/internal/snapshot/snapshot.go:233.2,236.16 3 1 +github.com/echovault/echovault/internal/snapshot/snapshot.go:236.16,239.3 2 0 +github.com/echovault/echovault/internal/snapshot/snapshot.go:242.2,243.16 2 1 +github.com/echovault/echovault/internal/snapshot/snapshot.go:243.16,246.3 2 0 +github.com/echovault/echovault/internal/snapshot/snapshot.go:249.2,254.16 3 1 +github.com/echovault/echovault/internal/snapshot/snapshot.go:254.16,257.3 2 0 +github.com/echovault/echovault/internal/snapshot/snapshot.go:258.2,258.39 1 1 +github.com/echovault/echovault/internal/snapshot/snapshot.go:258.39,261.3 2 0 +github.com/echovault/echovault/internal/snapshot/snapshot.go:262.2,262.33 1 1 +github.com/echovault/echovault/internal/snapshot/snapshot.go:262.33,264.3 1 0 +github.com/echovault/echovault/internal/snapshot/snapshot.go:265.2,265.34 1 1 +github.com/echovault/echovault/internal/snapshot/snapshot.go:265.34,268.3 2 0 +github.com/echovault/echovault/internal/snapshot/snapshot.go:271.2,272.58 2 1 +github.com/echovault/echovault/internal/snapshot/snapshot.go:272.58,274.3 1 0 +github.com/echovault/echovault/internal/snapshot/snapshot.go:277.2,278.16 2 1 +github.com/echovault/echovault/internal/snapshot/snapshot.go:278.16,281.3 2 0 +github.com/echovault/echovault/internal/snapshot/snapshot.go:282.2,282.15 1 1 +github.com/echovault/echovault/internal/snapshot/snapshot.go:282.15,283.35 1 1 +github.com/echovault/echovault/internal/snapshot/snapshot.go:283.35,285.4 1 0 +github.com/echovault/echovault/internal/snapshot/snapshot.go:289.2,289.39 1 1 +github.com/echovault/echovault/internal/snapshot/snapshot.go:289.39,291.3 1 0 +github.com/echovault/echovault/internal/snapshot/snapshot.go:292.2,292.32 1 1 +github.com/echovault/echovault/internal/snapshot/snapshot.go:292.32,294.3 1 0 +github.com/echovault/echovault/internal/snapshot/snapshot.go:297.2,302.12 3 1 +github.com/echovault/echovault/internal/snapshot/snapshot.go:305.39,307.50 2 1 +github.com/echovault/echovault/internal/snapshot/snapshot.go:307.50,309.3 1 0 +github.com/echovault/echovault/internal/snapshot/snapshot.go:310.2,310.16 1 1 +github.com/echovault/echovault/internal/snapshot/snapshot.go:310.16,312.3 1 0 +github.com/echovault/echovault/internal/snapshot/snapshot.go:314.2,317.16 3 1 +github.com/echovault/echovault/internal/snapshot/snapshot.go:317.16,319.3 1 0 +github.com/echovault/echovault/internal/snapshot/snapshot.go:321.2,321.52 1 1 +github.com/echovault/echovault/internal/snapshot/snapshot.go:321.52,323.3 1 0 +github.com/echovault/echovault/internal/snapshot/snapshot.go:325.2,325.46 1 1 +github.com/echovault/echovault/internal/snapshot/snapshot.go:325.46,327.3 1 0 +github.com/echovault/echovault/internal/snapshot/snapshot.go:329.2,334.50 2 1 +github.com/echovault/echovault/internal/snapshot/snapshot.go:334.50,336.3 1 0 +github.com/echovault/echovault/internal/snapshot/snapshot.go:337.2,337.16 1 1 +github.com/echovault/echovault/internal/snapshot/snapshot.go:337.16,339.3 1 0 +github.com/echovault/echovault/internal/snapshot/snapshot.go:341.2,342.16 2 1 +github.com/echovault/echovault/internal/snapshot/snapshot.go:342.16,344.3 1 0 +github.com/echovault/echovault/internal/snapshot/snapshot.go:346.2,348.58 2 1 +github.com/echovault/echovault/internal/snapshot/snapshot.go:348.58,350.3 1 0 +github.com/echovault/echovault/internal/snapshot/snapshot.go:352.2,354.94 2 1 +github.com/echovault/echovault/internal/snapshot/snapshot.go:354.94,356.3 1 1 +github.com/echovault/echovault/internal/snapshot/snapshot.go:358.2,360.12 2 1 +github.com/echovault/echovault/internal/snapshot/snapshot.go:363.46,365.2 1 0 +github.com/echovault/echovault/internal/snapshot/snapshot.go:367.42,369.2 1 1 +github.com/echovault/echovault/echovault/api_acl.go:126.71,128.23 2 0 +github.com/echovault/echovault/echovault/api_acl.go:128.23,130.3 1 0 +github.com/echovault/echovault/echovault/api_acl.go:131.2,132.16 2 0 +github.com/echovault/echovault/echovault/api_acl.go:132.16,134.3 1 0 +github.com/echovault/echovault/echovault/api_acl.go:135.2,135.45 1 0 +github.com/echovault/echovault/echovault/api_acl.go:139.55,141.16 2 0 +github.com/echovault/echovault/echovault/api_acl.go:141.16,143.3 1 0 +github.com/echovault/echovault/echovault/api_acl.go:144.2,144.45 1 0 +github.com/echovault/echovault/echovault/api_acl.go:155.62,158.18 2 0 +github.com/echovault/echovault/echovault/api_acl.go:158.18,160.3 1 0 +github.com/echovault/echovault/echovault/api_acl.go:160.8,162.3 1 0 +github.com/echovault/echovault/echovault/api_acl.go:164.2,164.21 1 0 +github.com/echovault/echovault/echovault/api_acl.go:164.21,166.3 1 0 +github.com/echovault/echovault/echovault/api_acl.go:168.2,168.17 1 0 +github.com/echovault/echovault/echovault/api_acl.go:168.17,170.3 1 0 +github.com/echovault/echovault/echovault/api_acl.go:172.2,172.21 1 0 +github.com/echovault/echovault/echovault/api_acl.go:172.21,174.3 1 0 +github.com/echovault/echovault/echovault/api_acl.go:176.2,176.20 1 0 +github.com/echovault/echovault/echovault/api_acl.go:176.20,178.3 1 0 +github.com/echovault/echovault/echovault/api_acl.go:180.2,180.20 1 0 +github.com/echovault/echovault/echovault/api_acl.go:180.20,182.3 1 0 +github.com/echovault/echovault/echovault/api_acl.go:184.2,184.24 1 0 +github.com/echovault/echovault/echovault/api_acl.go:184.24,186.3 1 0 +github.com/echovault/echovault/echovault/api_acl.go:188.2,188.50 1 0 +github.com/echovault/echovault/echovault/api_acl.go:188.50,190.3 1 0 +github.com/echovault/echovault/echovault/api_acl.go:192.2,192.53 1 0 +github.com/echovault/echovault/echovault/api_acl.go:192.53,194.3 1 0 +github.com/echovault/echovault/echovault/api_acl.go:196.2,196.49 1 0 +github.com/echovault/echovault/echovault/api_acl.go:196.49,198.3 1 0 +github.com/echovault/echovault/echovault/api_acl.go:200.2,200.52 1 0 +github.com/echovault/echovault/echovault/api_acl.go:200.52,202.3 1 0 +github.com/echovault/echovault/echovault/api_acl.go:204.2,204.50 1 0 +github.com/echovault/echovault/echovault/api_acl.go:204.50,206.3 1 0 +github.com/echovault/echovault/echovault/api_acl.go:208.2,208.50 1 0 +github.com/echovault/echovault/echovault/api_acl.go:208.50,210.3 1 0 +github.com/echovault/echovault/echovault/api_acl.go:212.2,212.47 1 0 +github.com/echovault/echovault/echovault/api_acl.go:212.47,214.3 1 0 +github.com/echovault/echovault/echovault/api_acl.go:216.2,216.47 1 0 +github.com/echovault/echovault/echovault/api_acl.go:216.47,218.3 1 0 +github.com/echovault/echovault/echovault/api_acl.go:220.2,220.48 1 0 +github.com/echovault/echovault/echovault/api_acl.go:220.48,222.3 1 0 +github.com/echovault/echovault/echovault/api_acl.go:224.2,224.43 1 0 +github.com/echovault/echovault/echovault/api_acl.go:224.43,226.3 1 0 +github.com/echovault/echovault/echovault/api_acl.go:228.2,228.44 1 0 +github.com/echovault/echovault/echovault/api_acl.go:228.44,230.3 1 0 +github.com/echovault/echovault/echovault/api_acl.go:232.2,232.47 1 0 +github.com/echovault/echovault/echovault/api_acl.go:232.47,234.3 1 0 +github.com/echovault/echovault/echovault/api_acl.go:236.2,236.47 1 0 +github.com/echovault/echovault/echovault/api_acl.go:236.47,238.3 1 0 +github.com/echovault/echovault/echovault/api_acl.go:240.2,241.16 2 0 +github.com/echovault/echovault/echovault/api_acl.go:241.16,243.3 1 0 +github.com/echovault/echovault/echovault/api_acl.go:245.2,246.40 2 0 +github.com/echovault/echovault/echovault/api_acl.go:293.83,295.16 2 0 +github.com/echovault/echovault/echovault/api_acl.go:295.16,297.3 1 0 +github.com/echovault/echovault/echovault/api_acl.go:299.2,301.16 3 0 +github.com/echovault/echovault/echovault/api_acl.go:301.16,303.3 1 0 +github.com/echovault/echovault/echovault/api_acl.go:305.2,308.35 3 0 +github.com/echovault/echovault/echovault/api_acl.go:308.35,314.35 4 0 +github.com/echovault/echovault/echovault/api_acl.go:314.35,316.4 1 0 +github.com/echovault/echovault/echovault/api_acl.go:319.2,319.20 1 0 +github.com/echovault/echovault/echovault/api_acl.go:329.72,332.16 3 0 +github.com/echovault/echovault/echovault/api_acl.go:332.16,334.3 1 0 +github.com/echovault/echovault/echovault/api_acl.go:335.2,336.40 2 0 +github.com/echovault/echovault/echovault/api_acl.go:340.54,342.16 2 0 +github.com/echovault/echovault/echovault/api_acl.go:342.16,344.3 1 0 +github.com/echovault/echovault/echovault/api_acl.go:345.2,345.45 1 0 +github.com/echovault/echovault/echovault/api_acl.go:356.72,358.9 2 0 +github.com/echovault/echovault/echovault/api_acl.go:359.21,360.29 1 0 +github.com/echovault/echovault/echovault/api_acl.go:361.23,362.31 1 0 +github.com/echovault/echovault/echovault/api_acl.go:363.10,364.31 1 0 +github.com/echovault/echovault/echovault/api_acl.go:367.2,368.16 2 0 +github.com/echovault/echovault/echovault/api_acl.go:368.16,370.3 1 0 +github.com/echovault/echovault/echovault/api_acl.go:372.2,373.40 2 0 +github.com/echovault/echovault/echovault/api_acl.go:379.50,381.16 2 0 +github.com/echovault/echovault/echovault/api_acl.go:381.16,383.3 1 0 +github.com/echovault/echovault/echovault/api_acl.go:384.2,385.40 2 0 +github.com/echovault/echovault/echovault/api_admin.go:142.84,145.9 2 0 +github.com/echovault/echovault/echovault/api_admin.go:146.28,147.71 1 0 +github.com/echovault/echovault/echovault/api_admin.go:148.29,149.73 1 0 +github.com/echovault/echovault/echovault/api_admin.go:150.28,151.71 1 0 +github.com/echovault/echovault/echovault/api_admin.go:154.2,155.16 2 0 +github.com/echovault/echovault/echovault/api_admin.go:155.16,157.3 1 0 +github.com/echovault/echovault/echovault/api_admin.go:159.2,159.45 1 0 +github.com/echovault/echovault/echovault/api_admin.go:165.54,167.16 2 0 +github.com/echovault/echovault/echovault/api_admin.go:167.16,169.3 1 0 +github.com/echovault/echovault/echovault/api_admin.go:170.2,170.41 1 0 +github.com/echovault/echovault/echovault/api_admin.go:174.49,176.16 2 0 +github.com/echovault/echovault/echovault/api_admin.go:176.16,178.3 1 0 +github.com/echovault/echovault/echovault/api_admin.go:179.2,179.40 1 0 +github.com/echovault/echovault/echovault/api_admin.go:183.50,185.16 2 0 +github.com/echovault/echovault/echovault/api_admin.go:185.16,187.3 1 0 +github.com/echovault/echovault/echovault/api_admin.go:188.2,188.41 1 0 +github.com/echovault/echovault/echovault/api_admin.go:192.55,194.16 2 0 +github.com/echovault/echovault/echovault/api_admin.go:194.16,196.3 1 0 +github.com/echovault/echovault/echovault/api_admin.go:197.2,197.40 1 0 +github.com/echovault/echovault/echovault/api_admin.go:209.67,213.36 3 1 +github.com/echovault/echovault/echovault/api_admin.go:213.36,214.52 1 1 +github.com/echovault/echovault/echovault/api_admin.go:214.52,216.4 1 0 +github.com/echovault/echovault/echovault/api_admin.go:219.2,219.63 1 1 +github.com/echovault/echovault/echovault/api_admin.go:219.63,224.32 1 1 +github.com/echovault/echovault/echovault/api_admin.go:224.32,227.44 2 1 +github.com/echovault/echovault/echovault/api_admin.go:227.44,229.6 1 0 +github.com/echovault/echovault/echovault/api_admin.go:230.5,230.16 1 1 +github.com/echovault/echovault/echovault/api_admin.go:234.111,236.19 2 0 +github.com/echovault/echovault/echovault/api_admin.go:236.19,238.6 1 0 +github.com/echovault/echovault/echovault/api_admin.go:239.5,243.11 1 0 +github.com/echovault/echovault/echovault/api_admin.go:245.94,253.5 1 1 +github.com/echovault/echovault/echovault/api_admin.go:255.3,255.13 1 1 +github.com/echovault/echovault/echovault/api_admin.go:259.2,262.31 1 1 +github.com/echovault/echovault/echovault/api_admin.go:262.31,265.43 2 1 +github.com/echovault/echovault/echovault/api_admin.go:265.43,267.5 1 0 +github.com/echovault/echovault/echovault/api_admin.go:268.4,268.15 1 1 +github.com/echovault/echovault/echovault/api_admin.go:272.83,274.4 1 0 +github.com/echovault/echovault/echovault/api_admin.go:275.71,275.90 1 0 +github.com/echovault/echovault/echovault/api_admin.go:279.2,279.40 1 1 +github.com/echovault/echovault/echovault/api_admin.go:279.40,281.92 1 1 +github.com/echovault/echovault/echovault/api_admin.go:281.92,283.4 1 1 +github.com/echovault/echovault/echovault/api_admin.go:283.6,284.12 1 0 +github.com/echovault/echovault/echovault/api_admin.go:286.3,289.32 1 1 +github.com/echovault/echovault/echovault/api_admin.go:289.32,292.39 2 1 +github.com/echovault/echovault/echovault/api_admin.go:292.39,294.6 1 0 +github.com/echovault/echovault/echovault/api_admin.go:295.5,295.16 1 1 +github.com/echovault/echovault/echovault/api_admin.go:299.111,301.19 2 0 +github.com/echovault/echovault/echovault/api_admin.go:301.19,303.6 1 0 +github.com/echovault/echovault/echovault/api_admin.go:304.5,308.11 1 0 +github.com/echovault/echovault/echovault/api_admin.go:310.94,318.5 1 1 +github.com/echovault/echovault/echovault/api_admin.go:322.2,324.12 2 1 +github.com/echovault/echovault/echovault/api_admin.go:350.76,352.2 1 1 +github.com/echovault/echovault/echovault/api_admin.go:368.59,372.22 3 1 +github.com/echovault/echovault/echovault/api_admin.go:373.9,375.86 1 1 +github.com/echovault/echovault/echovault/api_admin.go:375.86,377.4 1 1 +github.com/echovault/echovault/echovault/api_admin.go:378.9,380.45 1 1 +github.com/echovault/echovault/echovault/api_admin.go:380.45,381.66 1 1 +github.com/echovault/echovault/echovault/api_admin.go:381.66,382.13 1 1 +github.com/echovault/echovault/echovault/api_admin.go:384.4,384.88 1 1 +github.com/echovault/echovault/echovault/api_admin.go:384.88,385.122 1 1 +github.com/echovault/echovault/echovault/api_admin.go:385.122,387.6 1 1 +github.com/echovault/echovault/echovault/api_generic.go:88.91,91.9 2 1 +github.com/echovault/echovault/echovault/api_generic.go:92.18,93.26 1 1 +github.com/echovault/echovault/echovault/api_generic.go:94.18,95.26 1 1 +github.com/echovault/echovault/echovault/api_generic.go:98.2,98.9 1 1 +github.com/echovault/echovault/echovault/api_generic.go:99.23,100.65 1 1 +github.com/echovault/echovault/echovault/api_generic.go:101.23,102.65 1 1 +github.com/echovault/echovault/echovault/api_generic.go:103.25,104.69 1 1 +github.com/echovault/echovault/echovault/api_generic.go:105.25,106.69 1 1 +github.com/echovault/echovault/echovault/api_generic.go:109.2,109.17 1 1 +github.com/echovault/echovault/echovault/api_generic.go:109.17,111.3 1 1 +github.com/echovault/echovault/echovault/api_generic.go:113.2,114.16 2 1 +github.com/echovault/echovault/echovault/api_generic.go:114.16,116.3 1 1 +github.com/echovault/echovault/echovault/api_generic.go:118.2,119.16 2 1 +github.com/echovault/echovault/echovault/api_generic.go:119.16,121.3 1 0 +github.com/echovault/echovault/echovault/api_generic.go:122.2,122.18 1 1 +github.com/echovault/echovault/echovault/api_generic.go:122.18,124.3 1 1 +github.com/echovault/echovault/echovault/api_generic.go:126.2,126.33 1 1 +github.com/echovault/echovault/echovault/api_generic.go:141.72,144.28 2 1 +github.com/echovault/echovault/echovault/api_generic.go:144.28,146.3 1 1 +github.com/echovault/echovault/echovault/api_generic.go:148.2,149.16 2 1 +github.com/echovault/echovault/echovault/api_generic.go:149.16,151.3 1 0 +github.com/echovault/echovault/echovault/api_generic.go:153.2,154.16 2 1 +github.com/echovault/echovault/echovault/api_generic.go:154.16,156.3 1 0 +github.com/echovault/echovault/echovault/api_generic.go:158.2,158.40 1 1 +github.com/echovault/echovault/echovault/api_generic.go:169.58,171.16 2 1 +github.com/echovault/echovault/echovault/api_generic.go:171.16,173.3 1 0 +github.com/echovault/echovault/echovault/api_generic.go:174.2,174.40 1 1 +github.com/echovault/echovault/echovault/api_generic.go:185.65,187.16 2 1 +github.com/echovault/echovault/echovault/api_generic.go:187.16,189.3 1 0 +github.com/echovault/echovault/echovault/api_generic.go:190.2,190.45 1 1 +github.com/echovault/echovault/echovault/api_generic.go:200.59,202.16 2 1 +github.com/echovault/echovault/echovault/api_generic.go:202.16,204.3 1 0 +github.com/echovault/echovault/echovault/api_generic.go:205.2,205.41 1 1 +github.com/echovault/echovault/echovault/api_generic.go:216.60,218.16 2 1 +github.com/echovault/echovault/echovault/api_generic.go:218.16,220.3 1 0 +github.com/echovault/echovault/echovault/api_generic.go:221.2,221.41 1 1 +github.com/echovault/echovault/echovault/api_generic.go:231.62,233.16 2 1 +github.com/echovault/echovault/echovault/api_generic.go:233.16,235.3 1 0 +github.com/echovault/echovault/echovault/api_generic.go:236.2,236.41 1 1 +github.com/echovault/echovault/echovault/api_generic.go:246.63,248.16 2 1 +github.com/echovault/echovault/echovault/api_generic.go:248.16,250.3 1 0 +github.com/echovault/echovault/echovault/api_generic.go:251.2,251.41 1 1 +github.com/echovault/echovault/echovault/api_generic.go:261.55,263.16 2 1 +github.com/echovault/echovault/echovault/api_generic.go:263.16,265.3 1 0 +github.com/echovault/echovault/echovault/api_generic.go:266.2,266.41 1 1 +github.com/echovault/echovault/echovault/api_generic.go:276.56,278.16 2 1 +github.com/echovault/echovault/echovault/api_generic.go:278.16,280.3 1 0 +github.com/echovault/echovault/echovault/api_generic.go:281.2,281.41 1 1 +github.com/echovault/echovault/echovault/api_generic.go:296.95,299.9 2 1 +github.com/echovault/echovault/echovault/api_generic.go:300.18,301.26 1 1 +github.com/echovault/echovault/echovault/api_generic.go:302.18,303.26 1 1 +github.com/echovault/echovault/echovault/api_generic.go:304.18,305.26 1 1 +github.com/echovault/echovault/echovault/api_generic.go:306.18,307.26 1 1 +github.com/echovault/echovault/echovault/api_generic.go:310.2,311.16 2 1 +github.com/echovault/echovault/echovault/api_generic.go:311.16,313.3 1 0 +github.com/echovault/echovault/echovault/api_generic.go:315.2,315.41 1 1 +github.com/echovault/echovault/echovault/api_generic.go:330.102,333.9 2 1 +github.com/echovault/echovault/echovault/api_generic.go:334.18,335.26 1 0 +github.com/echovault/echovault/echovault/api_generic.go:336.18,337.26 1 0 +github.com/echovault/echovault/echovault/api_generic.go:338.18,339.26 1 0 +github.com/echovault/echovault/echovault/api_generic.go:340.18,341.26 1 0 +github.com/echovault/echovault/echovault/api_generic.go:344.2,345.16 2 1 +github.com/echovault/echovault/echovault/api_generic.go:345.16,347.3 1 0 +github.com/echovault/echovault/echovault/api_generic.go:349.2,349.41 1 1 +github.com/echovault/echovault/echovault/api_generic.go:364.102,367.9 2 1 +github.com/echovault/echovault/echovault/api_generic.go:368.18,369.26 1 1 +github.com/echovault/echovault/echovault/api_generic.go:370.18,371.26 1 1 +github.com/echovault/echovault/echovault/api_generic.go:372.18,373.26 1 1 +github.com/echovault/echovault/echovault/api_generic.go:374.18,375.26 1 1 +github.com/echovault/echovault/echovault/api_generic.go:378.2,379.16 2 1 +github.com/echovault/echovault/echovault/api_generic.go:379.16,381.3 1 0 +github.com/echovault/echovault/echovault/api_generic.go:383.2,383.41 1 1 +github.com/echovault/echovault/echovault/api_generic.go:398.109,401.9 2 1 +github.com/echovault/echovault/echovault/api_generic.go:402.18,403.26 1 0 +github.com/echovault/echovault/echovault/api_generic.go:404.18,405.26 1 0 +github.com/echovault/echovault/echovault/api_generic.go:406.18,407.26 1 0 +github.com/echovault/echovault/echovault/api_generic.go:408.18,409.26 1 0 +github.com/echovault/echovault/echovault/api_generic.go:412.2,413.16 2 1 +github.com/echovault/echovault/echovault/api_generic.go:413.16,415.3 1 0 +github.com/echovault/echovault/echovault/api_generic.go:417.2,417.41 1 1 +github.com/echovault/echovault/echovault/api_hash.go:46.91,49.36 2 1 +github.com/echovault/echovault/echovault/api_hash.go:49.36,51.3 1 1 +github.com/echovault/echovault/echovault/api_hash.go:53.2,54.16 2 1 +github.com/echovault/echovault/echovault/api_hash.go:54.16,56.3 1 0 +github.com/echovault/echovault/echovault/api_hash.go:58.2,58.41 1 1 +github.com/echovault/echovault/echovault/api_hash.go:76.93,79.36 2 1 +github.com/echovault/echovault/echovault/api_hash.go:79.36,81.3 1 1 +github.com/echovault/echovault/echovault/api_hash.go:83.2,84.16 2 1 +github.com/echovault/echovault/echovault/api_hash.go:84.16,86.3 1 0 +github.com/echovault/echovault/echovault/api_hash.go:88.2,88.41 1 1 +github.com/echovault/echovault/echovault/api_hash.go:104.79,112.16 2 0 +github.com/echovault/echovault/echovault/api_hash.go:112.16,114.3 1 0 +github.com/echovault/echovault/echovault/api_hash.go:115.2,115.45 1 0 +github.com/echovault/echovault/echovault/api_hash.go:132.79,136.16 3 1 +github.com/echovault/echovault/echovault/api_hash.go:136.16,138.3 1 1 +github.com/echovault/echovault/echovault/api_hash.go:140.2,140.46 1 1 +github.com/echovault/echovault/echovault/api_hash.go:154.62,156.16 2 1 +github.com/echovault/echovault/echovault/api_hash.go:156.16,158.3 1 1 +github.com/echovault/echovault/echovault/api_hash.go:159.2,159.45 1 1 +github.com/echovault/echovault/echovault/api_hash.go:175.94,178.24 2 1 +github.com/echovault/echovault/echovault/api_hash.go:178.24,180.3 1 1 +github.com/echovault/echovault/echovault/api_hash.go:180.8,182.3 1 1 +github.com/echovault/echovault/echovault/api_hash.go:184.2,184.24 1 1 +github.com/echovault/echovault/echovault/api_hash.go:184.24,186.3 1 1 +github.com/echovault/echovault/echovault/api_hash.go:188.2,189.16 2 1 +github.com/echovault/echovault/echovault/api_hash.go:189.16,191.3 1 1 +github.com/echovault/echovault/echovault/api_hash.go:193.2,193.45 1 1 +github.com/echovault/echovault/echovault/api_hash.go:207.56,209.16 2 1 +github.com/echovault/echovault/echovault/api_hash.go:209.16,211.3 1 1 +github.com/echovault/echovault/echovault/api_hash.go:212.2,212.41 1 1 +github.com/echovault/echovault/echovault/api_hash.go:226.62,228.16 2 1 +github.com/echovault/echovault/echovault/api_hash.go:228.16,230.3 1 1 +github.com/echovault/echovault/echovault/api_hash.go:231.2,231.45 1 1 +github.com/echovault/echovault/echovault/api_hash.go:250.85,252.16 2 1 +github.com/echovault/echovault/echovault/api_hash.go:252.16,254.3 1 1 +github.com/echovault/echovault/echovault/api_hash.go:255.2,255.39 1 1 +github.com/echovault/echovault/echovault/api_hash.go:259.94,261.16 2 1 +github.com/echovault/echovault/echovault/api_hash.go:261.16,263.3 1 0 +github.com/echovault/echovault/echovault/api_hash.go:264.2,264.39 1 1 +github.com/echovault/echovault/echovault/api_hash.go:279.64,281.16 2 1 +github.com/echovault/echovault/echovault/api_hash.go:281.16,283.3 1 1 +github.com/echovault/echovault/echovault/api_hash.go:284.2,284.45 1 1 +github.com/echovault/echovault/echovault/api_hash.go:300.67,302.16 2 1 +github.com/echovault/echovault/echovault/api_hash.go:302.16,304.3 1 1 +github.com/echovault/echovault/echovault/api_hash.go:305.2,305.41 1 1 +github.com/echovault/echovault/echovault/api_hash.go:321.74,324.16 3 1 +github.com/echovault/echovault/echovault/api_hash.go:324.16,326.3 1 1 +github.com/echovault/echovault/echovault/api_hash.go:327.2,327.41 1 1 +github.com/echovault/echovault/echovault/api_list.go:34.56,36.16 2 1 +github.com/echovault/echovault/echovault/api_list.go:36.16,38.3 1 1 +github.com/echovault/echovault/echovault/api_list.go:39.2,39.41 1 1 +github.com/echovault/echovault/echovault/api_list.go:62.79,64.16 2 1 +github.com/echovault/echovault/echovault/api_list.go:64.16,66.3 1 1 +github.com/echovault/echovault/echovault/api_list.go:67.2,67.45 1 1 +github.com/echovault/echovault/echovault/api_list.go:85.73,87.16 2 1 +github.com/echovault/echovault/echovault/api_list.go:87.16,89.3 1 1 +github.com/echovault/echovault/echovault/api_list.go:90.2,90.40 1 1 +github.com/echovault/echovault/echovault/api_list.go:110.82,112.16 2 1 +github.com/echovault/echovault/echovault/api_list.go:112.16,114.3 1 1 +github.com/echovault/echovault/echovault/api_list.go:115.2,116.40 2 1 +github.com/echovault/echovault/echovault/api_list.go:123.78,125.16 2 1 +github.com/echovault/echovault/echovault/api_list.go:125.16,127.3 1 1 +github.com/echovault/echovault/echovault/api_list.go:128.2,129.40 2 1 +github.com/echovault/echovault/echovault/api_list.go:147.82,154.16 2 1 +github.com/echovault/echovault/echovault/api_list.go:154.16,156.3 1 1 +github.com/echovault/echovault/echovault/api_list.go:157.2,158.40 2 1 +github.com/echovault/echovault/echovault/api_list.go:182.94,184.16 2 1 +github.com/echovault/echovault/echovault/api_list.go:184.16,186.3 1 1 +github.com/echovault/echovault/echovault/api_list.go:187.2,188.40 2 1 +github.com/echovault/echovault/echovault/api_list.go:202.59,204.16 2 1 +github.com/echovault/echovault/echovault/api_list.go:204.16,206.3 1 1 +github.com/echovault/echovault/echovault/api_list.go:207.2,207.40 1 1 +github.com/echovault/echovault/echovault/api_list.go:221.59,223.16 2 1 +github.com/echovault/echovault/echovault/api_list.go:223.16,225.3 1 1 +github.com/echovault/echovault/echovault/api_list.go:226.2,226.40 1 1 +github.com/echovault/echovault/echovault/api_list.go:243.75,246.16 3 1 +github.com/echovault/echovault/echovault/api_list.go:246.16,248.3 1 0 +github.com/echovault/echovault/echovault/api_list.go:249.2,249.41 1 1 +github.com/echovault/echovault/echovault/api_list.go:265.76,268.16 3 1 +github.com/echovault/echovault/echovault/api_list.go:268.16,270.3 1 1 +github.com/echovault/echovault/echovault/api_list.go:271.2,271.41 1 1 +github.com/echovault/echovault/echovault/api_list.go:288.75,291.16 3 1 +github.com/echovault/echovault/echovault/api_list.go:291.16,293.3 1 0 +github.com/echovault/echovault/echovault/api_list.go:294.2,294.41 1 1 +github.com/echovault/echovault/echovault/api_list.go:310.76,313.16 3 1 +github.com/echovault/echovault/echovault/api_list.go:313.16,315.3 1 1 +github.com/echovault/echovault/echovault/api_list.go:316.2,316.41 1 0 +github.com/echovault/echovault/echovault/api_pubsub.go:50.86,52.24 1 0 +github.com/echovault/echovault/echovault/api_pubsub.go:52.24,54.3 1 0 +github.com/echovault/echovault/echovault/api_pubsub.go:57.2,59.36 3 0 +github.com/echovault/echovault/echovault/api_pubsub.go:59.36,65.3 2 0 +github.com/echovault/echovault/echovault/api_pubsub.go:68.2,69.12 2 0 +github.com/echovault/echovault/echovault/api_pubsub.go:69.12,71.3 1 0 +github.com/echovault/echovault/echovault/api_pubsub.go:73.2,73.25 1 0 +github.com/echovault/echovault/echovault/api_pubsub.go:73.25,78.33 4 0 +github.com/echovault/echovault/echovault/api_pubsub.go:78.33,80.4 1 0 +github.com/echovault/echovault/echovault/api_pubsub.go:82.3,82.13 1 0 +github.com/echovault/echovault/echovault/api_pubsub.go:93.70,94.24 1 0 +github.com/echovault/echovault/echovault/api_pubsub.go:94.24,96.3 1 0 +github.com/echovault/echovault/echovault/api_pubsub.go:98.2,98.36 1 0 +github.com/echovault/echovault/echovault/api_pubsub.go:98.36,100.3 1 0 +github.com/echovault/echovault/echovault/api_pubsub.go:102.2,103.115 2 0 +github.com/echovault/echovault/echovault/api_pubsub.go:116.87,118.24 1 0 +github.com/echovault/echovault/echovault/api_pubsub.go:118.24,120.3 1 0 +github.com/echovault/echovault/echovault/api_pubsub.go:123.2,125.36 3 0 +github.com/echovault/echovault/echovault/api_pubsub.go:125.36,131.3 2 0 +github.com/echovault/echovault/echovault/api_pubsub.go:134.2,135.12 2 0 +github.com/echovault/echovault/echovault/api_pubsub.go:135.12,137.3 1 0 +github.com/echovault/echovault/echovault/api_pubsub.go:139.2,139.25 1 0 +github.com/echovault/echovault/echovault/api_pubsub.go:139.25,144.33 4 0 +github.com/echovault/echovault/echovault/api_pubsub.go:144.33,146.4 1 0 +github.com/echovault/echovault/echovault/api_pubsub.go:148.3,148.13 1 0 +github.com/echovault/echovault/echovault/api_pubsub.go:159.71,160.24 1 0 +github.com/echovault/echovault/echovault/api_pubsub.go:160.24,162.3 1 0 +github.com/echovault/echovault/echovault/api_pubsub.go:164.2,164.36 1 0 +github.com/echovault/echovault/echovault/api_pubsub.go:164.36,166.3 1 0 +github.com/echovault/echovault/echovault/api_pubsub.go:168.2,169.115 2 0 +github.com/echovault/echovault/echovault/api_pubsub.go:182.73,184.16 2 0 +github.com/echovault/echovault/echovault/api_pubsub.go:184.16,186.3 1 0 +github.com/echovault/echovault/echovault/api_pubsub.go:187.2,188.40 2 0 +github.com/echovault/echovault/echovault/api_pubsub.go:198.75,200.19 2 0 +github.com/echovault/echovault/echovault/api_pubsub.go:200.19,202.3 1 0 +github.com/echovault/echovault/echovault/api_pubsub.go:203.2,204.16 2 0 +github.com/echovault/echovault/echovault/api_pubsub.go:204.16,206.3 1 0 +github.com/echovault/echovault/echovault/api_pubsub.go:207.2,207.45 1 0 +github.com/echovault/echovault/echovault/api_pubsub.go:213.54,215.16 2 0 +github.com/echovault/echovault/echovault/api_pubsub.go:215.16,217.3 1 0 +github.com/echovault/echovault/echovault/api_pubsub.go:218.2,218.41 1 0 +github.com/echovault/echovault/echovault/api_pubsub.go:228.82,232.16 3 0 +github.com/echovault/echovault/echovault/api_pubsub.go:232.16,234.3 1 0 +github.com/echovault/echovault/echovault/api_pubsub.go:236.2,238.16 3 0 +github.com/echovault/echovault/echovault/api_pubsub.go:238.16,240.3 1 0 +github.com/echovault/echovault/echovault/api_pubsub.go:242.2,245.28 3 0 +github.com/echovault/echovault/echovault/api_pubsub.go:245.28,248.3 2 0 +github.com/echovault/echovault/echovault/api_pubsub.go:250.2,250.20 1 0 +github.com/echovault/echovault/echovault/api_set.go:36.75,39.16 3 1 +github.com/echovault/echovault/echovault/api_set.go:39.16,41.3 1 1 +github.com/echovault/echovault/echovault/api_set.go:42.2,42.41 1 1 +github.com/echovault/echovault/echovault/api_set.go:56.57,58.16 2 1 +github.com/echovault/echovault/echovault/api_set.go:58.16,60.3 1 1 +github.com/echovault/echovault/echovault/api_set.go:61.2,61.41 1 1 +github.com/echovault/echovault/echovault/api_set.go:78.66,81.16 3 1 +github.com/echovault/echovault/echovault/api_set.go:81.16,83.3 1 1 +github.com/echovault/echovault/echovault/api_set.go:84.2,84.45 1 1 +github.com/echovault/echovault/echovault/api_set.go:91.86,94.16 3 1 +github.com/echovault/echovault/echovault/api_set.go:94.16,96.3 1 1 +github.com/echovault/echovault/echovault/api_set.go:97.2,97.41 1 1 +github.com/echovault/echovault/echovault/api_set.go:114.67,117.16 3 1 +github.com/echovault/echovault/echovault/api_set.go:117.16,119.3 1 1 +github.com/echovault/echovault/echovault/api_set.go:120.2,120.45 1 1 +github.com/echovault/echovault/echovault/api_set.go:138.77,140.15 2 1 +github.com/echovault/echovault/echovault/api_set.go:140.15,142.3 1 1 +github.com/echovault/echovault/echovault/api_set.go:143.2,144.16 2 1 +github.com/echovault/echovault/echovault/api_set.go:144.16,146.3 1 1 +github.com/echovault/echovault/echovault/api_set.go:147.2,147.41 1 1 +github.com/echovault/echovault/echovault/api_set.go:152.87,155.16 3 1 +github.com/echovault/echovault/echovault/api_set.go:155.16,157.3 1 1 +github.com/echovault/echovault/echovault/api_set.go:158.2,158.41 1 1 +github.com/echovault/echovault/echovault/api_set.go:174.70,176.16 2 1 +github.com/echovault/echovault/echovault/api_set.go:176.16,178.3 1 1 +github.com/echovault/echovault/echovault/api_set.go:179.2,179.41 1 1 +github.com/echovault/echovault/echovault/api_set.go:193.65,195.16 2 1 +github.com/echovault/echovault/echovault/api_set.go:195.16,197.3 1 1 +github.com/echovault/echovault/echovault/api_set.go:198.2,198.45 1 1 +github.com/echovault/echovault/echovault/api_set.go:215.84,218.16 3 1 +github.com/echovault/echovault/echovault/api_set.go:218.16,220.3 1 1 +github.com/echovault/echovault/echovault/api_set.go:221.2,221.46 1 1 +github.com/echovault/echovault/echovault/api_set.go:243.82,245.16 2 1 +github.com/echovault/echovault/echovault/api_set.go:245.16,247.3 1 1 +github.com/echovault/echovault/echovault/api_set.go:248.2,248.41 1 1 +github.com/echovault/echovault/echovault/api_set.go:264.73,266.16 2 1 +github.com/echovault/echovault/echovault/api_set.go:266.16,268.3 1 1 +github.com/echovault/echovault/echovault/api_set.go:269.2,269.45 1 1 +github.com/echovault/echovault/echovault/api_set.go:286.79,288.16 2 1 +github.com/echovault/echovault/echovault/api_set.go:288.16,290.3 1 1 +github.com/echovault/echovault/echovault/api_set.go:291.2,291.45 1 1 +github.com/echovault/echovault/echovault/api_set.go:307.75,310.16 3 1 +github.com/echovault/echovault/echovault/api_set.go:310.16,312.3 1 1 +github.com/echovault/echovault/echovault/api_set.go:313.2,313.41 1 1 +github.com/echovault/echovault/echovault/api_set.go:328.67,331.16 3 1 +github.com/echovault/echovault/echovault/api_set.go:331.16,333.3 1 1 +github.com/echovault/echovault/echovault/api_set.go:334.2,334.45 1 1 +github.com/echovault/echovault/echovault/api_set.go:341.87,344.16 3 1 +github.com/echovault/echovault/echovault/api_set.go:344.16,346.3 1 1 +github.com/echovault/echovault/echovault/api_set.go:347.2,347.41 1 1 +github.com/echovault/echovault/echovault/api_sorted_set.go:105.87,107.28 2 1 +github.com/echovault/echovault/echovault/api_sorted_set.go:107.28,108.17 1 1 +github.com/echovault/echovault/echovault/api_sorted_set.go:108.17,110.18 2 1 +github.com/echovault/echovault/echovault/api_sorted_set.go:110.18,112.5 1 0 +github.com/echovault/echovault/echovault/api_sorted_set.go:113.4,114.12 2 1 +github.com/echovault/echovault/echovault/api_sorted_set.go:116.3,116.23 1 1 +github.com/echovault/echovault/echovault/api_sorted_set.go:118.2,118.20 1 1 +github.com/echovault/echovault/echovault/api_sorted_set.go:121.85,123.28 2 0 +github.com/echovault/echovault/echovault/api_sorted_set.go:123.28,125.17 2 0 +github.com/echovault/echovault/echovault/api_sorted_set.go:125.17,127.4 1 0 +github.com/echovault/echovault/echovault/api_sorted_set.go:128.3,129.17 2 0 +github.com/echovault/echovault/echovault/api_sorted_set.go:129.17,131.18 2 0 +github.com/echovault/echovault/echovault/api_sorted_set.go:131.18,133.5 1 0 +github.com/echovault/echovault/echovault/api_sorted_set.go:134.4,134.24 1 0 +github.com/echovault/echovault/echovault/api_sorted_set.go:137.2,137.20 1 0 +github.com/echovault/echovault/echovault/api_sorted_set.go:161.105,164.9 2 1 +github.com/echovault/echovault/echovault/api_sorted_set.go:165.18,166.26 1 1 +github.com/echovault/echovault/echovault/api_sorted_set.go:167.18,168.26 1 1 +github.com/echovault/echovault/echovault/api_sorted_set.go:171.2,171.9 1 1 +github.com/echovault/echovault/echovault/api_sorted_set.go:172.18,173.26 1 1 +github.com/echovault/echovault/echovault/api_sorted_set.go:174.18,175.26 1 1 +github.com/echovault/echovault/echovault/api_sorted_set.go:178.2,178.16 1 1 +github.com/echovault/echovault/echovault/api_sorted_set.go:178.16,180.3 1 1 +github.com/echovault/echovault/echovault/api_sorted_set.go:182.2,182.18 1 1 +github.com/echovault/echovault/echovault/api_sorted_set.go:182.18,184.3 1 1 +github.com/echovault/echovault/echovault/api_sorted_set.go:186.2,186.37 1 1 +github.com/echovault/echovault/echovault/api_sorted_set.go:186.37,188.3 1 1 +github.com/echovault/echovault/echovault/api_sorted_set.go:190.2,191.16 2 1 +github.com/echovault/echovault/echovault/api_sorted_set.go:191.16,193.3 1 1 +github.com/echovault/echovault/echovault/api_sorted_set.go:195.2,195.41 1 1 +github.com/echovault/echovault/echovault/api_sorted_set.go:209.57,211.16 2 1 +github.com/echovault/echovault/echovault/api_sorted_set.go:211.16,213.3 1 1 +github.com/echovault/echovault/echovault/api_sorted_set.go:214.2,214.41 1 1 +github.com/echovault/echovault/echovault/api_sorted_set.go:232.76,240.16 3 1 +github.com/echovault/echovault/echovault/api_sorted_set.go:240.16,242.3 1 1 +github.com/echovault/echovault/echovault/api_sorted_set.go:243.2,243.41 1 1 +github.com/echovault/echovault/echovault/api_sorted_set.go:261.93,263.16 2 1 +github.com/echovault/echovault/echovault/api_sorted_set.go:263.16,265.3 1 1 +github.com/echovault/echovault/echovault/api_sorted_set.go:266.2,267.16 2 1 +github.com/echovault/echovault/echovault/api_sorted_set.go:267.16,269.3 1 1 +github.com/echovault/echovault/echovault/api_sorted_set.go:271.2,272.16 2 1 +github.com/echovault/echovault/echovault/api_sorted_set.go:272.16,274.3 1 0 +github.com/echovault/echovault/echovault/api_sorted_set.go:276.2,276.45 1 1 +github.com/echovault/echovault/echovault/api_sorted_set.go:293.86,296.16 3 1 +github.com/echovault/echovault/echovault/api_sorted_set.go:296.16,298.3 1 1 +github.com/echovault/echovault/echovault/api_sorted_set.go:299.2,299.41 1 1 +github.com/echovault/echovault/echovault/api_sorted_set.go:316.99,319.30 2 1 +github.com/echovault/echovault/echovault/api_sorted_set.go:319.30,321.45 2 1 +github.com/echovault/echovault/echovault/api_sorted_set.go:321.45,323.4 1 1 +github.com/echovault/echovault/echovault/api_sorted_set.go:326.2,326.29 1 1 +github.com/echovault/echovault/echovault/api_sorted_set.go:326.29,328.3 1 1 +github.com/echovault/echovault/echovault/api_sorted_set.go:330.2,330.24 1 1 +github.com/echovault/echovault/echovault/api_sorted_set.go:330.24,332.3 1 1 +github.com/echovault/echovault/echovault/api_sorted_set.go:334.2,335.16 2 1 +github.com/echovault/echovault/echovault/api_sorted_set.go:335.16,337.3 1 1 +github.com/echovault/echovault/echovault/api_sorted_set.go:339.2,340.16 2 1 +github.com/echovault/echovault/echovault/api_sorted_set.go:340.16,342.3 1 0 +github.com/echovault/echovault/echovault/api_sorted_set.go:344.2,344.53 1 1 +github.com/echovault/echovault/echovault/api_sorted_set.go:363.114,366.30 2 1 +github.com/echovault/echovault/echovault/api_sorted_set.go:366.30,368.42 2 1 +github.com/echovault/echovault/echovault/api_sorted_set.go:368.42,370.4 1 1 +github.com/echovault/echovault/echovault/api_sorted_set.go:373.2,373.29 1 1 +github.com/echovault/echovault/echovault/api_sorted_set.go:373.29,375.3 1 1 +github.com/echovault/echovault/echovault/api_sorted_set.go:377.2,377.24 1 1 +github.com/echovault/echovault/echovault/api_sorted_set.go:377.24,379.3 1 1 +github.com/echovault/echovault/echovault/api_sorted_set.go:381.2,382.16 2 1 +github.com/echovault/echovault/echovault/api_sorted_set.go:382.16,384.3 1 1 +github.com/echovault/echovault/echovault/api_sorted_set.go:386.2,386.41 1 1 +github.com/echovault/echovault/echovault/api_sorted_set.go:403.99,406.30 2 1 +github.com/echovault/echovault/echovault/api_sorted_set.go:406.30,408.42 2 1 +github.com/echovault/echovault/echovault/api_sorted_set.go:408.42,410.4 1 1 +github.com/echovault/echovault/echovault/api_sorted_set.go:413.2,413.29 1 1 +github.com/echovault/echovault/echovault/api_sorted_set.go:413.29,415.3 1 1 +github.com/echovault/echovault/echovault/api_sorted_set.go:417.2,417.24 1 1 +github.com/echovault/echovault/echovault/api_sorted_set.go:417.24,419.3 1 1 +github.com/echovault/echovault/echovault/api_sorted_set.go:421.2,422.16 2 1 +github.com/echovault/echovault/echovault/api_sorted_set.go:422.16,424.3 1 1 +github.com/echovault/echovault/echovault/api_sorted_set.go:426.2,427.16 2 1 +github.com/echovault/echovault/echovault/api_sorted_set.go:427.16,429.3 1 0 +github.com/echovault/echovault/echovault/api_sorted_set.go:431.2,431.53 1 1 +github.com/echovault/echovault/echovault/api_sorted_set.go:450.114,453.30 2 1 +github.com/echovault/echovault/echovault/api_sorted_set.go:453.30,455.42 2 1 +github.com/echovault/echovault/echovault/api_sorted_set.go:455.42,457.4 1 1 +github.com/echovault/echovault/echovault/api_sorted_set.go:460.2,460.29 1 1 +github.com/echovault/echovault/echovault/api_sorted_set.go:460.29,462.3 1 1 +github.com/echovault/echovault/echovault/api_sorted_set.go:464.2,464.24 1 1 +github.com/echovault/echovault/echovault/api_sorted_set.go:464.24,466.3 1 1 +github.com/echovault/echovault/echovault/api_sorted_set.go:468.2,469.16 2 1 +github.com/echovault/echovault/echovault/api_sorted_set.go:469.16,471.3 1 1 +github.com/echovault/echovault/echovault/api_sorted_set.go:473.2,473.41 1 1 +github.com/echovault/echovault/echovault/api_sorted_set.go:492.97,495.16 3 1 +github.com/echovault/echovault/echovault/api_sorted_set.go:495.16,497.3 1 1 +github.com/echovault/echovault/echovault/api_sorted_set.go:498.2,499.16 2 1 +github.com/echovault/echovault/echovault/api_sorted_set.go:499.16,501.3 1 0 +github.com/echovault/echovault/echovault/api_sorted_set.go:502.2,502.15 1 1 +github.com/echovault/echovault/echovault/api_sorted_set.go:519.89,522.9 2 1 +github.com/echovault/echovault/echovault/api_sorted_set.go:523.19,524.27 1 1 +github.com/echovault/echovault/echovault/api_sorted_set.go:525.19,526.27 1 1 +github.com/echovault/echovault/echovault/api_sorted_set.go:527.10,528.27 1 1 +github.com/echovault/echovault/echovault/api_sorted_set.go:531.2,531.9 1 1 +github.com/echovault/echovault/echovault/api_sorted_set.go:532.26,533.76 1 1 +github.com/echovault/echovault/echovault/api_sorted_set.go:534.10,535.59 1 1 +github.com/echovault/echovault/echovault/api_sorted_set.go:538.2,539.16 2 1 +github.com/echovault/echovault/echovault/api_sorted_set.go:539.16,541.3 1 0 +github.com/echovault/echovault/echovault/api_sorted_set.go:543.2,543.51 1 1 +github.com/echovault/echovault/echovault/api_sorted_set.go:561.88,563.33 2 1 +github.com/echovault/echovault/echovault/api_sorted_set.go:563.33,565.3 1 1 +github.com/echovault/echovault/echovault/api_sorted_set.go:567.2,568.16 2 1 +github.com/echovault/echovault/echovault/api_sorted_set.go:568.16,570.3 1 1 +github.com/echovault/echovault/echovault/api_sorted_set.go:572.2,573.16 2 1 +github.com/echovault/echovault/echovault/api_sorted_set.go:573.16,575.3 1 0 +github.com/echovault/echovault/echovault/api_sorted_set.go:577.2,578.24 2 1 +github.com/echovault/echovault/echovault/api_sorted_set.go:578.24,579.14 1 1 +github.com/echovault/echovault/echovault/api_sorted_set.go:579.14,581.12 2 1 +github.com/echovault/echovault/echovault/api_sorted_set.go:583.3,584.17 2 1 +github.com/echovault/echovault/echovault/api_sorted_set.go:584.17,586.4 1 0 +github.com/echovault/echovault/echovault/api_sorted_set.go:587.3,587.20 1 1 +github.com/echovault/echovault/echovault/api_sorted_set.go:590.2,590.20 1 1 +github.com/echovault/echovault/echovault/api_sorted_set.go:610.71,613.16 3 1 +github.com/echovault/echovault/echovault/api_sorted_set.go:613.16,615.3 1 1 +github.com/echovault/echovault/echovault/api_sorted_set.go:616.2,616.41 1 1 +github.com/echovault/echovault/echovault/api_sorted_set.go:635.78,637.16 2 1 +github.com/echovault/echovault/echovault/api_sorted_set.go:637.16,639.3 1 0 +github.com/echovault/echovault/echovault/api_sorted_set.go:640.2,640.51 1 1 +github.com/echovault/echovault/echovault/api_sorted_set.go:659.78,661.16 2 1 +github.com/echovault/echovault/echovault/api_sorted_set.go:661.16,663.3 1 1 +github.com/echovault/echovault/echovault/api_sorted_set.go:664.2,664.51 1 1 +github.com/echovault/echovault/echovault/api_sorted_set.go:688.98,690.16 2 1 +github.com/echovault/echovault/echovault/api_sorted_set.go:690.16,692.3 1 1 +github.com/echovault/echovault/echovault/api_sorted_set.go:693.2,693.16 1 1 +github.com/echovault/echovault/echovault/api_sorted_set.go:693.16,695.3 1 1 +github.com/echovault/echovault/echovault/api_sorted_set.go:697.2,698.16 2 1 +github.com/echovault/echovault/echovault/api_sorted_set.go:698.16,700.3 1 1 +github.com/echovault/echovault/echovault/api_sorted_set.go:702.2,702.51 1 1 +github.com/echovault/echovault/echovault/api_sorted_set.go:723.101,725.16 2 1 +github.com/echovault/echovault/echovault/api_sorted_set.go:725.16,727.3 1 1 +github.com/echovault/echovault/echovault/api_sorted_set.go:729.2,730.16 2 1 +github.com/echovault/echovault/echovault/api_sorted_set.go:730.16,732.3 1 1 +github.com/echovault/echovault/echovault/api_sorted_set.go:734.2,736.19 2 1 +github.com/echovault/echovault/echovault/api_sorted_set.go:736.19,738.3 1 1 +github.com/echovault/echovault/echovault/api_sorted_set.go:740.2,741.16 2 1 +github.com/echovault/echovault/echovault/api_sorted_set.go:741.16,743.3 1 0 +github.com/echovault/echovault/echovault/api_sorted_set.go:745.2,747.16 2 1 +github.com/echovault/echovault/echovault/api_sorted_set.go:747.16,749.17 2 1 +github.com/echovault/echovault/echovault/api_sorted_set.go:749.17,751.4 1 0 +github.com/echovault/echovault/echovault/api_sorted_set.go:752.3,752.13 1 1 +github.com/echovault/echovault/echovault/api_sorted_set.go:755.2,755.17 1 1 +github.com/echovault/echovault/echovault/api_sorted_set.go:760.104,762.16 2 0 +github.com/echovault/echovault/echovault/api_sorted_set.go:762.16,764.3 1 0 +github.com/echovault/echovault/echovault/api_sorted_set.go:766.2,767.16 2 0 +github.com/echovault/echovault/echovault/api_sorted_set.go:767.16,769.3 1 0 +github.com/echovault/echovault/echovault/api_sorted_set.go:771.2,773.46 2 0 +github.com/echovault/echovault/echovault/api_sorted_set.go:790.81,793.16 3 1 +github.com/echovault/echovault/echovault/api_sorted_set.go:793.16,795.3 1 1 +github.com/echovault/echovault/echovault/api_sorted_set.go:797.2,798.16 2 1 +github.com/echovault/echovault/echovault/api_sorted_set.go:798.16,800.3 1 0 +github.com/echovault/echovault/echovault/api_sorted_set.go:802.2,802.11 1 1 +github.com/echovault/echovault/echovault/api_sorted_set.go:802.11,804.3 1 1 +github.com/echovault/echovault/echovault/api_sorted_set.go:806.2,807.16 2 1 +github.com/echovault/echovault/echovault/api_sorted_set.go:807.16,809.3 1 0 +github.com/echovault/echovault/echovault/api_sorted_set.go:811.2,811.19 1 1 +github.com/echovault/echovault/echovault/api_sorted_set.go:827.75,829.33 2 1 +github.com/echovault/echovault/echovault/api_sorted_set.go:829.33,831.3 1 1 +github.com/echovault/echovault/echovault/api_sorted_set.go:832.2,833.16 2 1 +github.com/echovault/echovault/echovault/api_sorted_set.go:833.16,835.3 1 1 +github.com/echovault/echovault/echovault/api_sorted_set.go:836.2,836.41 1 1 +github.com/echovault/echovault/echovault/api_sorted_set.go:854.94,863.16 3 1 +github.com/echovault/echovault/echovault/api_sorted_set.go:863.16,865.3 1 1 +github.com/echovault/echovault/echovault/api_sorted_set.go:867.2,867.41 1 1 +github.com/echovault/echovault/echovault/api_sorted_set.go:885.76,892.16 2 0 +github.com/echovault/echovault/echovault/api_sorted_set.go:892.16,894.3 1 0 +github.com/echovault/echovault/echovault/api_sorted_set.go:895.2,895.41 1 0 +github.com/echovault/echovault/echovault/api_sorted_set.go:913.81,920.16 2 0 +github.com/echovault/echovault/echovault/api_sorted_set.go:920.16,922.3 1 0 +github.com/echovault/echovault/echovault/api_sorted_set.go:923.2,923.41 1 0 +github.com/echovault/echovault/echovault/api_sorted_set.go:943.109,946.9 2 1 +github.com/echovault/echovault/echovault/api_sorted_set.go:947.23,948.31 1 1 +github.com/echovault/echovault/echovault/api_sorted_set.go:949.21,950.29 1 1 +github.com/echovault/echovault/echovault/api_sorted_set.go:951.19,952.27 1 0 +github.com/echovault/echovault/echovault/api_sorted_set.go:953.10,954.31 1 0 +github.com/echovault/echovault/echovault/api_sorted_set.go:957.2,957.24 1 1 +github.com/echovault/echovault/echovault/api_sorted_set.go:957.24,959.3 1 1 +github.com/echovault/echovault/echovault/api_sorted_set.go:961.2,961.47 1 1 +github.com/echovault/echovault/echovault/api_sorted_set.go:961.47,963.3 1 1 +github.com/echovault/echovault/echovault/api_sorted_set.go:965.2,966.16 2 1 +github.com/echovault/echovault/echovault/api_sorted_set.go:966.16,968.3 1 1 +github.com/echovault/echovault/echovault/api_sorted_set.go:970.2,971.16 2 1 +github.com/echovault/echovault/echovault/api_sorted_set.go:971.16,973.3 1 0 +github.com/echovault/echovault/echovault/api_sorted_set.go:975.2,975.53 1 1 +github.com/echovault/echovault/echovault/api_sorted_set.go:997.120,1000.9 2 1 +github.com/echovault/echovault/echovault/api_sorted_set.go:1001.23,1002.31 1 1 +github.com/echovault/echovault/echovault/api_sorted_set.go:1003.21,1004.29 1 1 +github.com/echovault/echovault/echovault/api_sorted_set.go:1005.19,1006.27 1 0 +github.com/echovault/echovault/echovault/api_sorted_set.go:1007.10,1008.31 1 0 +github.com/echovault/echovault/echovault/api_sorted_set.go:1011.2,1011.47 1 1 +github.com/echovault/echovault/echovault/api_sorted_set.go:1011.47,1013.3 1 1 +github.com/echovault/echovault/echovault/api_sorted_set.go:1015.2,1016.16 2 1 +github.com/echovault/echovault/echovault/api_sorted_set.go:1016.16,1018.3 1 1 +github.com/echovault/echovault/echovault/api_sorted_set.go:1020.2,1020.41 1 1 +github.com/echovault/echovault/echovault/api_string.go:30.84,32.16 2 1 +github.com/echovault/echovault/echovault/api_string.go:32.16,34.3 1 0 +github.com/echovault/echovault/echovault/api_string.go:35.2,35.41 1 1 +github.com/echovault/echovault/echovault/api_string.go:45.58,47.16 2 1 +github.com/echovault/echovault/echovault/api_string.go:47.16,49.3 1 0 +github.com/echovault/echovault/echovault/api_string.go:50.2,50.41 1 1 +github.com/echovault/echovault/echovault/api_string.go:63.77,65.16 2 1 +github.com/echovault/echovault/echovault/api_string.go:65.16,67.3 1 0 +github.com/echovault/echovault/echovault/api_string.go:68.2,68.40 1 1 +github.com/echovault/echovault/echovault/api_string.go:72.79,74.16 2 1 +github.com/echovault/echovault/echovault/api_string.go:74.16,76.3 1 0 +github.com/echovault/echovault/echovault/api_string.go:77.2,77.40 1 1 +github.com/echovault/echovault/echovault/cluster.go:25.45,27.2 1 1 +github.com/echovault/echovault/echovault/cluster.go:29.84,40.16 4 0 +github.com/echovault/echovault/echovault/cluster.go:40.16,42.3 1 0 +github.com/echovault/echovault/echovault/cluster.go:44.2,46.43 2 0 +github.com/echovault/echovault/echovault/cluster.go:46.43,48.3 1 0 +github.com/echovault/echovault/echovault/cluster.go:50.2,52.9 2 0 +github.com/echovault/echovault/echovault/cluster.go:52.9,54.3 1 0 +github.com/echovault/echovault/echovault/cluster.go:56.2,56.20 1 0 +github.com/echovault/echovault/echovault/cluster.go:56.20,58.3 1 0 +github.com/echovault/echovault/echovault/cluster.go:60.2,60.12 1 0 +github.com/echovault/echovault/echovault/cluster.go:63.94,75.16 5 0 +github.com/echovault/echovault/echovault/cluster.go:75.16,77.3 1 0 +github.com/echovault/echovault/echovault/cluster.go:79.2,81.43 2 0 +github.com/echovault/echovault/echovault/cluster.go:81.43,83.3 1 0 +github.com/echovault/echovault/echovault/cluster.go:85.2,87.9 2 0 +github.com/echovault/echovault/echovault/cluster.go:87.9,89.3 1 0 +github.com/echovault/echovault/echovault/cluster.go:91.2,91.20 1 0 +github.com/echovault/echovault/echovault/cluster.go:91.20,93.3 1 0 +github.com/echovault/echovault/echovault/cluster.go:95.2,95.24 1 0 +github.com/echovault/echovault/echovault/config.go:23.36,25.2 1 1 +github.com/echovault/echovault/echovault/echovault.go:111.66,112.36 1 0 +github.com/echovault/echovault/echovault/echovault.go:112.36,114.3 1 0 +github.com/echovault/echovault/echovault/echovault.go:120.66,121.36 1 1 +github.com/echovault/echovault/echovault/echovault.go:121.36,123.3 1 1 +github.com/echovault/echovault/echovault/echovault.go:128.78,136.39 1 1 +github.com/echovault/echovault/echovault/echovault.go:136.39,149.4 12 1 +github.com/echovault/echovault/echovault/echovault.go:152.2,152.33 1 1 +github.com/echovault/echovault/echovault/echovault.go:152.33,154.3 1 1 +github.com/echovault/echovault/echovault/echovault.go:156.2,162.48 2 1 +github.com/echovault/echovault/echovault/echovault.go:162.48,163.52 1 0 +github.com/echovault/echovault/echovault/echovault.go:163.52,165.12 2 0 +github.com/echovault/echovault/echovault/echovault.go:167.3,167.41 1 0 +github.com/echovault/echovault/echovault/echovault.go:171.2,171.52 1 1 +github.com/echovault/echovault/echovault/echovault.go:171.52,173.3 1 0 +github.com/echovault/echovault/echovault/echovault.go:176.2,176.42 1 1 +github.com/echovault/echovault/echovault/echovault.go:176.42,178.3 1 1 +github.com/echovault/echovault/echovault/echovault.go:181.2,182.40 2 1 +github.com/echovault/echovault/echovault/echovault.go:182.40,184.3 1 1 +github.com/echovault/echovault/echovault/echovault.go:187.2,188.43 2 1 +github.com/echovault/echovault/echovault/echovault.go:188.43,190.3 1 0 +github.com/echovault/echovault/echovault/echovault.go:192.2,192.29 1 1 +github.com/echovault/echovault/echovault/echovault.go:192.29,202.38 1 1 +github.com/echovault/echovault/echovault/echovault.go:202.38,206.5 3 0 +github.com/echovault/echovault/echovault/echovault.go:207.49,209.44 2 0 +github.com/echovault/echovault/echovault/echovault.go:209.44,210.46 1 0 +github.com/echovault/echovault/echovault/echovault.go:210.46,212.7 1 0 +github.com/echovault/echovault/echovault/echovault.go:214.5,214.17 1 0 +github.com/echovault/echovault/echovault/echovault.go:217.3,225.5 1 1 +github.com/echovault/echovault/echovault/echovault.go:226.8,237.65 1 1 +github.com/echovault/echovault/echovault/echovault.go:237.65,239.44 2 0 +github.com/echovault/echovault/echovault/echovault.go:239.44,240.46 1 0 +github.com/echovault/echovault/echovault/echovault.go:240.46,242.7 1 0 +github.com/echovault/echovault/echovault/echovault.go:244.5,244.17 1 0 +github.com/echovault/echovault/echovault/echovault.go:246.72,248.93 2 0 +github.com/echovault/echovault/echovault/echovault.go:248.93,250.6 1 0 +github.com/echovault/echovault/echovault/echovault.go:251.5,251.56 1 0 +github.com/echovault/echovault/echovault/echovault.go:255.3,261.60 1 1 +github.com/echovault/echovault/echovault/echovault.go:261.60,263.44 2 0 +github.com/echovault/echovault/echovault/echovault.go:263.44,264.46 1 0 +github.com/echovault/echovault/echovault/echovault.go:264.46,266.7 1 0 +github.com/echovault/echovault/echovault/echovault.go:268.5,268.17 1 0 +github.com/echovault/echovault/echovault/echovault.go:270.68,272.94 2 0 +github.com/echovault/echovault/echovault/echovault.go:272.94,274.6 1 0 +github.com/echovault/echovault/echovault/echovault.go:275.5,275.57 1 0 +github.com/echovault/echovault/echovault/echovault.go:277.51,279.19 2 0 +github.com/echovault/echovault/echovault/echovault.go:279.19,281.6 1 0 +github.com/echovault/echovault/echovault/echovault.go:284.3,284.17 1 1 +github.com/echovault/echovault/echovault/echovault.go:284.17,286.4 1 0 +github.com/echovault/echovault/echovault/echovault.go:287.3,287.34 1 1 +github.com/echovault/echovault/echovault/echovault.go:291.2,291.61 1 1 +github.com/echovault/echovault/echovault/echovault.go:291.61,292.13 1 1 +github.com/echovault/echovault/echovault/echovault.go:292.13,293.8 1 1 +github.com/echovault/echovault/echovault/echovault.go:293.8,295.83 2 1 +github.com/echovault/echovault/echovault/echovault.go:295.83,297.6 1 0 +github.com/echovault/echovault/echovault/echovault.go:302.2,302.69 1 1 +github.com/echovault/echovault/echovault/echovault.go:302.69,304.3 1 0 +github.com/echovault/echovault/echovault/echovault.go:306.2,306.29 1 1 +github.com/echovault/echovault/echovault/echovault.go:306.29,310.36 3 1 +github.com/echovault/echovault/echovault/echovault.go:310.36,312.4 1 0 +github.com/echovault/echovault/echovault/echovault.go:315.2,315.30 1 1 +github.com/echovault/echovault/echovault/echovault.go:315.30,318.34 2 1 +github.com/echovault/echovault/echovault/echovault.go:318.34,320.18 2 0 +github.com/echovault/echovault/echovault/echovault.go:320.18,322.5 1 0 +github.com/echovault/echovault/echovault/echovault.go:326.3,326.71 1 1 +github.com/echovault/echovault/echovault/echovault.go:326.71,328.18 2 0 +github.com/echovault/echovault/echovault/echovault.go:328.18,330.5 1 0 +github.com/echovault/echovault/echovault/echovault.go:334.2,334.23 1 1 +github.com/echovault/echovault/echovault/echovault.go:337.37,346.16 4 1 +github.com/echovault/echovault/echovault/echovault.go:346.16,348.3 1 0 +github.com/echovault/echovault/echovault/echovault.go:350.2,350.15 1 1 +github.com/echovault/echovault/echovault/echovault.go:350.15,353.3 1 1 +github.com/echovault/echovault/echovault/echovault.go:355.2,355.27 1 1 +github.com/echovault/echovault/echovault/echovault.go:355.27,357.15 1 0 +github.com/echovault/echovault/echovault/echovault.go:357.15,359.4 1 0 +github.com/echovault/echovault/echovault/echovault.go:359.9,361.4 1 0 +github.com/echovault/echovault/echovault/echovault.go:363.3,364.49 2 0 +github.com/echovault/echovault/echovault/echovault.go:364.49,366.18 2 0 +github.com/echovault/echovault/echovault/echovault.go:366.18,368.5 1 0 +github.com/echovault/echovault/echovault/echovault.go:369.4,369.42 1 0 +github.com/echovault/echovault/echovault/echovault.go:372.3,375.16 3 0 +github.com/echovault/echovault/echovault/echovault.go:375.16,377.37 2 0 +github.com/echovault/echovault/echovault/echovault.go:377.37,379.19 2 0 +github.com/echovault/echovault/echovault/echovault.go:379.19,381.6 1 0 +github.com/echovault/echovault/echovault/echovault.go:382.5,383.19 2 0 +github.com/echovault/echovault/echovault/echovault.go:383.19,385.6 1 0 +github.com/echovault/echovault/echovault/echovault.go:386.5,386.61 1 0 +github.com/echovault/echovault/echovault/echovault.go:386.61,388.6 1 0 +github.com/echovault/echovault/echovault/echovault.go:392.3,396.5 1 0 +github.com/echovault/echovault/echovault/echovault.go:400.2,400.6 1 1 +github.com/echovault/echovault/echovault/echovault.go:400.6,402.17 2 1 +github.com/echovault/echovault/echovault/echovault.go:402.17,404.12 2 0 +github.com/echovault/echovault/echovault/echovault.go:407.3,407.35 1 1 +github.com/echovault/echovault/echovault/echovault.go:411.58,413.23 1 1 +github.com/echovault/echovault/echovault/echovault.go:413.23,415.3 1 1 +github.com/echovault/echovault/echovault/echovault.go:417.2,423.6 4 1 +github.com/echovault/echovault/echovault/echovault.go:423.6,426.43 2 1 +github.com/echovault/echovault/echovault/echovault.go:426.43,429.9 2 0 +github.com/echovault/echovault/echovault/echovault.go:432.3,432.17 1 1 +github.com/echovault/echovault/echovault/echovault.go:432.17,434.9 2 0 +github.com/echovault/echovault/echovault/echovault.go:437.3,439.43 2 1 +github.com/echovault/echovault/echovault/echovault.go:439.43,440.9 1 0 +github.com/echovault/echovault/echovault/echovault.go:443.3,443.17 1 1 +github.com/echovault/echovault/echovault/echovault.go:443.17,444.87 1 1 +github.com/echovault/echovault/echovault/echovault.go:444.87,446.5 1 0 +github.com/echovault/echovault/echovault/echovault.go:447.4,447.12 1 1 +github.com/echovault/echovault/echovault/echovault.go:450.3,453.20 2 1 +github.com/echovault/echovault/echovault/echovault.go:453.20,454.12 1 0 +github.com/echovault/echovault/echovault/echovault.go:457.3,457.28 1 1 +github.com/echovault/echovault/echovault/echovault.go:457.28,459.12 2 1 +github.com/echovault/echovault/echovault/echovault.go:463.3,464.7 2 0 +github.com/echovault/echovault/echovault/echovault.go:464.7,466.41 1 0 +github.com/echovault/echovault/echovault/echovault.go:466.41,468.19 2 0 +github.com/echovault/echovault/echovault/echovault.go:468.19,470.6 1 0 +github.com/echovault/echovault/echovault/echovault.go:471.5,471.10 1 0 +github.com/echovault/echovault/echovault/echovault.go:473.4,474.21 2 0 +github.com/echovault/echovault/echovault/echovault.go:474.21,475.10 1 0 +github.com/echovault/echovault/echovault/echovault.go:477.4,477.27 1 0 +github.com/echovault/echovault/echovault/echovault.go:481.2,481.37 1 0 +github.com/echovault/echovault/echovault/echovault.go:481.37,483.3 1 0 +github.com/echovault/echovault/echovault/echovault.go:491.34,493.2 1 1 +github.com/echovault/echovault/echovault/echovault.go:496.47,497.38 1 0 +github.com/echovault/echovault/echovault/echovault.go:497.38,499.3 1 0 +github.com/echovault/echovault/echovault/echovault.go:501.2,501.12 1 0 +github.com/echovault/echovault/echovault/echovault.go:501.12,502.27 1 0 +github.com/echovault/echovault/echovault/echovault.go:502.27,504.53 1 0 +github.com/echovault/echovault/echovault/echovault.go:504.53,506.5 1 0 +github.com/echovault/echovault/echovault/echovault.go:507.4,507.10 1 0 +github.com/echovault/echovault/echovault/echovault.go:510.3,510.62 1 0 +github.com/echovault/echovault/echovault/echovault.go:510.62,512.4 1 0 +github.com/echovault/echovault/echovault/echovault.go:515.2,515.12 1 0 +github.com/echovault/echovault/echovault/echovault.go:518.42,520.2 1 0 +github.com/echovault/echovault/echovault/echovault.go:522.43,524.2 1 0 +github.com/echovault/echovault/echovault/echovault.go:526.56,528.2 1 0 +github.com/echovault/echovault/echovault/echovault.go:531.56,533.2 1 0 +github.com/echovault/echovault/echovault/echovault.go:535.44,537.2 1 0 +github.com/echovault/echovault/echovault/echovault.go:539.45,541.2 1 0 +github.com/echovault/echovault/echovault/echovault.go:544.45,545.40 1 0 +github.com/echovault/echovault/echovault/echovault.go:545.40,547.3 1 0 +github.com/echovault/echovault/echovault/echovault.go:548.2,548.12 1 0 +github.com/echovault/echovault/echovault/echovault.go:548.12,549.55 1 0 +github.com/echovault/echovault/echovault/echovault.go:549.55,551.4 1 0 +github.com/echovault/echovault/echovault/echovault.go:553.2,553.12 1 0 +github.com/echovault/echovault/echovault/echovault.go:558.37,559.26 1 0 +github.com/echovault/echovault/echovault/echovault.go:559.26,562.3 2 0 +github.com/echovault/echovault/echovault/echovault.go:565.45,582.2 2 1 +github.com/echovault/echovault/echovault/keyspace.go:32.67,38.27 4 1 +github.com/echovault/echovault/echovault/keyspace.go:38.27,41.3 2 1 +github.com/echovault/echovault/echovault/keyspace.go:43.2,43.15 1 1 +github.com/echovault/echovault/echovault/keyspace.go:46.58,51.9 4 1 +github.com/echovault/echovault/echovault/keyspace.go:51.9,53.3 1 0 +github.com/echovault/echovault/echovault/keyspace.go:55.2,55.23 1 1 +github.com/echovault/echovault/echovault/keyspace.go:58.95,64.27 4 1 +github.com/echovault/echovault/echovault/keyspace.go:64.27,66.10 2 1 +github.com/echovault/echovault/echovault/keyspace.go:66.10,68.12 2 1 +github.com/echovault/echovault/echovault/keyspace.go:71.3,71.83 1 1 +github.com/echovault/echovault/echovault/keyspace.go:71.83,72.29 1 0 +github.com/echovault/echovault/echovault/keyspace.go:72.29,75.19 2 0 +github.com/echovault/echovault/echovault/keyspace.go:75.19,77.6 1 0 +github.com/echovault/echovault/echovault/keyspace.go:78.10,78.65 1 0 +github.com/echovault/echovault/echovault/keyspace.go:78.65,81.19 2 0 +github.com/echovault/echovault/echovault/keyspace.go:81.19,83.6 1 0 +github.com/echovault/echovault/echovault/keyspace.go:84.10,84.66 1 0 +github.com/echovault/echovault/echovault/keyspace.go:84.66,89.5 1 0 +github.com/echovault/echovault/echovault/keyspace.go:90.4,91.12 2 0 +github.com/echovault/echovault/echovault/keyspace.go:94.3,94.28 1 1 +github.com/echovault/echovault/echovault/keyspace.go:98.2,98.46 1 1 +github.com/echovault/echovault/echovault/keyspace.go:98.46,99.61 1 1 +github.com/echovault/echovault/echovault/keyspace.go:99.61,101.4 1 0 +github.com/echovault/echovault/echovault/keyspace.go:104.2,104.15 1 1 +github.com/echovault/echovault/echovault/keyspace.go:107.95,111.115 3 1 +github.com/echovault/echovault/echovault/keyspace.go:111.115,113.3 1 0 +github.com/echovault/echovault/echovault/keyspace.go:115.2,115.34 1 1 +github.com/echovault/echovault/echovault/keyspace.go:115.34,117.37 2 1 +github.com/echovault/echovault/echovault/keyspace.go:117.37,119.4 1 1 +github.com/echovault/echovault/echovault/keyspace.go:120.3,124.28 2 1 +github.com/echovault/echovault/echovault/keyspace.go:124.28,126.4 1 1 +github.com/echovault/echovault/echovault/keyspace.go:130.2,130.63 1 1 +github.com/echovault/echovault/echovault/keyspace.go:130.63,131.31 1 1 +github.com/echovault/echovault/echovault/keyspace.go:131.31,133.18 2 1 +github.com/echovault/echovault/echovault/keyspace.go:133.18,135.5 1 0 +github.com/echovault/echovault/echovault/keyspace.go:139.2,139.12 1 1 +github.com/echovault/echovault/echovault/keyspace.go:142.101,153.55 5 1 +github.com/echovault/echovault/echovault/keyspace.go:153.55,155.3 1 1 +github.com/echovault/echovault/echovault/keyspace.go:156.2,159.11 2 1 +github.com/echovault/echovault/echovault/keyspace.go:159.11,160.44 1 1 +github.com/echovault/echovault/echovault/keyspace.go:160.44,162.18 2 1 +github.com/echovault/echovault/echovault/keyspace.go:162.18,164.5 1 0 +github.com/echovault/echovault/echovault/keyspace.go:169.54,176.97 4 1 +github.com/echovault/echovault/echovault/keyspace.go:176.97,178.3 1 1 +github.com/echovault/echovault/echovault/keyspace.go:181.2,181.9 1 1 +github.com/echovault/echovault/echovault/keyspace.go:182.108,183.36 1 0 +github.com/echovault/echovault/echovault/keyspace.go:184.108,185.36 1 0 +github.com/echovault/echovault/echovault/keyspace.go:190.2,190.12 1 1 +github.com/echovault/echovault/echovault/keyspace.go:193.60,195.6 1 0 +github.com/echovault/echovault/echovault/keyspace.go:195.6,196.83 1 0 +github.com/echovault/echovault/echovault/keyspace.go:196.83,198.9 2 0 +github.com/echovault/echovault/echovault/keyspace.go:201.2,202.33 2 0 +github.com/echovault/echovault/echovault/keyspace.go:202.33,204.3 1 0 +github.com/echovault/echovault/echovault/keyspace.go:205.2,206.13 2 0 +github.com/echovault/echovault/echovault/keyspace.go:211.86,212.27 1 1 +github.com/echovault/echovault/echovault/keyspace.go:212.27,214.84 1 1 +github.com/echovault/echovault/echovault/keyspace.go:214.84,216.4 1 0 +github.com/echovault/echovault/echovault/keyspace.go:218.3,218.35 1 1 +github.com/echovault/echovault/echovault/keyspace.go:218.35,220.4 1 1 +github.com/echovault/echovault/echovault/keyspace.go:221.3,221.56 1 0 +github.com/echovault/echovault/echovault/keyspace.go:222.29,225.34 3 0 +github.com/echovault/echovault/echovault/keyspace.go:226.29,229.34 3 0 +github.com/echovault/echovault/echovault/keyspace.go:230.30,232.51 2 0 +github.com/echovault/echovault/echovault/keyspace.go:232.51,234.5 1 0 +github.com/echovault/echovault/echovault/keyspace.go:235.4,235.34 1 0 +github.com/echovault/echovault/echovault/keyspace.go:236.30,238.51 2 0 +github.com/echovault/echovault/echovault/keyspace.go:238.51,240.5 1 0 +github.com/echovault/echovault/echovault/keyspace.go:241.4,241.34 1 0 +github.com/echovault/echovault/echovault/keyspace.go:243.3,243.55 1 0 +github.com/echovault/echovault/echovault/keyspace.go:243.55,245.4 1 0 +github.com/echovault/echovault/echovault/keyspace.go:247.2,247.12 1 0 +github.com/echovault/echovault/echovault/keyspace.go:251.71,253.34 1 0 +github.com/echovault/echovault/echovault/keyspace.go:253.34,255.3 1 0 +github.com/echovault/echovault/echovault/keyspace.go:258.2,261.50 3 0 +github.com/echovault/echovault/echovault/keyspace.go:261.50,263.3 1 0 +github.com/echovault/echovault/echovault/keyspace.go:265.2,267.50 3 0 +github.com/echovault/echovault/echovault/keyspace.go:267.50,269.3 1 0 +github.com/echovault/echovault/echovault/keyspace.go:273.2,275.9 3 0 +github.com/echovault/echovault/echovault/keyspace.go:276.125,281.7 3 0 +github.com/echovault/echovault/echovault/keyspace.go:281.7,283.40 1 0 +github.com/echovault/echovault/echovault/keyspace.go:283.40,285.5 1 0 +github.com/echovault/echovault/echovault/keyspace.go:287.4,288.29 2 0 +github.com/echovault/echovault/echovault/keyspace.go:288.29,290.49 1 0 +github.com/echovault/echovault/echovault/keyspace.go:290.49,292.6 1 0 +github.com/echovault/echovault/echovault/keyspace.go:293.10,293.65 1 0 +github.com/echovault/echovault/echovault/keyspace.go:293.65,295.63 1 0 +github.com/echovault/echovault/echovault/keyspace.go:295.63,297.6 1 0 +github.com/echovault/echovault/echovault/keyspace.go:301.4,304.52 3 0 +github.com/echovault/echovault/echovault/keyspace.go:304.52,306.5 1 0 +github.com/echovault/echovault/echovault/keyspace.go:308.125,313.7 3 0 +github.com/echovault/echovault/echovault/keyspace.go:313.7,315.40 1 0 +github.com/echovault/echovault/echovault/keyspace.go:315.40,317.5 1 0 +github.com/echovault/echovault/echovault/keyspace.go:319.4,320.29 2 0 +github.com/echovault/echovault/echovault/keyspace.go:320.29,322.49 1 0 +github.com/echovault/echovault/echovault/keyspace.go:322.49,324.6 1 0 +github.com/echovault/echovault/echovault/keyspace.go:325.10,325.65 1 0 +github.com/echovault/echovault/echovault/keyspace.go:325.65,328.63 1 0 +github.com/echovault/echovault/echovault/keyspace.go:328.63,330.6 1 0 +github.com/echovault/echovault/echovault/keyspace.go:334.4,337.52 3 0 +github.com/echovault/echovault/echovault/keyspace.go:337.52,339.5 1 0 +github.com/echovault/echovault/echovault/keyspace.go:341.105,344.7 1 0 +github.com/echovault/echovault/echovault/keyspace.go:344.7,347.30 2 0 +github.com/echovault/echovault/echovault/keyspace.go:347.30,351.5 3 0 +github.com/echovault/echovault/echovault/keyspace.go:353.4,354.37 2 0 +github.com/echovault/echovault/echovault/keyspace.go:354.37,355.17 1 0 +github.com/echovault/echovault/echovault/keyspace.go:355.17,356.31 1 0 +github.com/echovault/echovault/echovault/keyspace.go:356.31,358.51 1 0 +github.com/echovault/echovault/echovault/keyspace.go:358.51,360.8 1 0 +github.com/echovault/echovault/echovault/keyspace.go:361.12,361.67 1 0 +github.com/echovault/echovault/echovault/keyspace.go:361.67,362.65 1 0 +github.com/echovault/echovault/echovault/keyspace.go:362.65,364.8 1 0 +github.com/echovault/echovault/echovault/keyspace.go:367.6,370.54 3 0 +github.com/echovault/echovault/echovault/keyspace.go:370.54,372.7 1 0 +github.com/echovault/echovault/echovault/keyspace.go:374.5,374.10 1 0 +github.com/echovault/echovault/echovault/keyspace.go:377.106,380.7 1 0 +github.com/echovault/echovault/echovault/keyspace.go:380.7,387.29 5 0 +github.com/echovault/echovault/echovault/keyspace.go:387.29,389.49 1 0 +github.com/echovault/echovault/echovault/keyspace.go:389.49,391.6 1 0 +github.com/echovault/echovault/echovault/keyspace.go:392.10,392.65 1 0 +github.com/echovault/echovault/echovault/keyspace.go:392.65,393.63 1 0 +github.com/echovault/echovault/echovault/keyspace.go:393.63,395.6 1 0 +github.com/echovault/echovault/echovault/keyspace.go:399.4,402.52 3 0 +github.com/echovault/echovault/echovault/keyspace.go:402.52,404.5 1 0 +github.com/echovault/echovault/echovault/keyspace.go:406.10,407.13 1 0 +github.com/echovault/echovault/echovault/keyspace.go:416.77,418.57 1 1 +github.com/echovault/echovault/echovault/keyspace.go:418.57,420.3 1 0 +github.com/echovault/echovault/echovault/keyspace.go:422.2,427.50 3 1 +github.com/echovault/echovault/echovault/keyspace.go:427.50,429.3 1 0 +github.com/echovault/echovault/echovault/keyspace.go:430.2,437.33 6 1 +github.com/echovault/echovault/echovault/keyspace.go:437.33,438.7 1 0 +github.com/echovault/echovault/echovault/keyspace.go:438.7,442.35 3 0 +github.com/echovault/echovault/echovault/keyspace.go:442.35,444.10 2 0 +github.com/echovault/echovault/echovault/keyspace.go:448.2,453.25 4 1 +github.com/echovault/echovault/echovault/keyspace.go:453.25,456.28 2 0 +github.com/echovault/echovault/echovault/keyspace.go:456.28,457.46 1 0 +github.com/echovault/echovault/echovault/keyspace.go:457.46,459.5 1 0 +github.com/echovault/echovault/echovault/keyspace.go:460.9,460.64 1 0 +github.com/echovault/echovault/echovault/keyspace.go:460.64,461.60 1 0 +github.com/echovault/echovault/echovault/keyspace.go:461.60,463.5 1 0 +github.com/echovault/echovault/echovault/keyspace.go:468.2,468.21 1 1 +github.com/echovault/echovault/echovault/keyspace.go:468.21,471.3 1 1 +github.com/echovault/echovault/echovault/keyspace.go:473.2,476.58 2 0 +github.com/echovault/echovault/echovault/keyspace.go:476.58,480.3 2 0 +github.com/echovault/echovault/echovault/keyspace.go:482.2,482.12 1 0 +github.com/echovault/echovault/echovault/modules.go:27.75,30.42 3 1 +github.com/echovault/echovault/echovault/modules.go:30.42,31.46 1 1 +github.com/echovault/echovault/echovault/modules.go:31.46,33.4 1 1 +github.com/echovault/echovault/echovault/modules.go:35.2,35.72 1 1 +github.com/echovault/echovault/echovault/modules.go:38.125,58.37 1 1 +github.com/echovault/echovault/echovault/modules.go:58.37,62.4 3 1 +github.com/echovault/echovault/echovault/modules.go:66.137,68.16 2 1 +github.com/echovault/echovault/echovault/modules.go:68.16,70.3 1 0 +github.com/echovault/echovault/echovault/modules.go:72.2,73.16 2 1 +github.com/echovault/echovault/echovault/modules.go:73.16,75.3 1 1 +github.com/echovault/echovault/echovault/modules.go:77.2,81.16 4 1 +github.com/echovault/echovault/echovault/modules.go:81.16,83.3 1 1 +github.com/echovault/echovault/echovault/modules.go:84.2,85.8 2 1 +github.com/echovault/echovault/echovault/modules.go:85.8,88.3 2 1 +github.com/echovault/echovault/echovault/modules.go:90.2,90.51 1 1 +github.com/echovault/echovault/echovault/modules.go:90.51,93.87 1 1 +github.com/echovault/echovault/echovault/modules.go:93.87,95.4 1 0 +github.com/echovault/echovault/echovault/modules.go:99.2,99.50 1 1 +github.com/echovault/echovault/echovault/modules.go:99.50,100.7 1 1 +github.com/echovault/echovault/echovault/modules.go:100.7,101.42 1 1 +github.com/echovault/echovault/echovault/modules.go:101.42,103.10 2 1 +github.com/echovault/echovault/echovault/modules.go:108.2,108.43 1 1 +github.com/echovault/echovault/echovault/modules.go:108.43,110.17 2 1 +github.com/echovault/echovault/echovault/modules.go:110.17,112.4 1 1 +github.com/echovault/echovault/echovault/modules.go:114.3,114.62 1 1 +github.com/echovault/echovault/echovault/modules.go:114.62,116.4 1 1 +github.com/echovault/echovault/echovault/modules.go:118.3,120.18 2 1 +github.com/echovault/echovault/echovault/modules.go:124.2,124.32 1 1 +github.com/echovault/echovault/echovault/modules.go:124.32,127.17 3 0 +github.com/echovault/echovault/echovault/modules.go:127.17,129.4 1 0 +github.com/echovault/echovault/echovault/modules.go:130.3,130.18 1 0 +github.com/echovault/echovault/echovault/modules.go:134.2,134.34 1 1 +github.com/echovault/echovault/echovault/modules.go:134.34,137.3 2 0 +github.com/echovault/echovault/echovault/modules.go:139.2,139.72 1 1 +github.com/echovault/echovault/echovault/plugin.go:37.72,41.41 3 1 +github.com/echovault/echovault/echovault/plugin.go:41.41,42.37 1 1 +github.com/echovault/echovault/echovault/plugin.go:42.37,44.4 1 1 +github.com/echovault/echovault/echovault/plugin.go:45.3,45.44 1 0 +github.com/echovault/echovault/echovault/plugin.go:48.2,49.16 2 1 +github.com/echovault/echovault/echovault/plugin.go:49.16,51.3 1 0 +github.com/echovault/echovault/echovault/plugin.go:53.2,54.16 2 1 +github.com/echovault/echovault/echovault/plugin.go:54.16,56.3 1 0 +github.com/echovault/echovault/echovault/plugin.go:57.2,58.9 2 1 +github.com/echovault/echovault/echovault/plugin.go:58.9,60.3 1 0 +github.com/echovault/echovault/echovault/plugin.go:62.2,63.16 2 1 +github.com/echovault/echovault/echovault/plugin.go:63.16,65.3 1 0 +github.com/echovault/echovault/echovault/plugin.go:66.2,67.9 2 1 +github.com/echovault/echovault/echovault/plugin.go:67.9,69.3 1 0 +github.com/echovault/echovault/echovault/plugin.go:71.2,72.16 2 1 +github.com/echovault/echovault/echovault/plugin.go:72.16,74.3 1 0 +github.com/echovault/echovault/echovault/plugin.go:75.2,76.9 2 1 +github.com/echovault/echovault/echovault/plugin.go:76.9,78.3 1 0 +github.com/echovault/echovault/echovault/plugin.go:80.2,81.16 2 1 +github.com/echovault/echovault/echovault/plugin.go:81.16,83.3 1 0 +github.com/echovault/echovault/echovault/plugin.go:84.2,85.9 2 1 +github.com/echovault/echovault/echovault/plugin.go:85.9,87.3 1 0 +github.com/echovault/echovault/echovault/plugin.go:89.2,90.16 2 1 +github.com/echovault/echovault/echovault/plugin.go:90.16,92.3 1 0 +github.com/echovault/echovault/echovault/plugin.go:93.2,94.9 2 1 +github.com/echovault/echovault/echovault/plugin.go:94.9,96.3 1 0 +github.com/echovault/echovault/echovault/plugin.go:98.2,99.16 2 1 +github.com/echovault/echovault/echovault/plugin.go:99.16,101.3 1 0 +github.com/echovault/echovault/echovault/plugin.go:102.2,110.9 2 1 +github.com/echovault/echovault/echovault/plugin.go:110.9,112.3 1 0 +github.com/echovault/echovault/echovault/plugin.go:115.2,115.91 1 1 +github.com/echovault/echovault/echovault/plugin.go:115.91,117.3 1 1 +github.com/echovault/echovault/echovault/plugin.go:120.2,123.31 1 1 +github.com/echovault/echovault/echovault/plugin.go:123.31,126.36 2 1 +github.com/echovault/echovault/echovault/plugin.go:126.36,128.5 1 1 +github.com/echovault/echovault/echovault/plugin.go:129.4,129.15 1 1 +github.com/echovault/echovault/echovault/plugin.go:134.83,136.18 2 0 +github.com/echovault/echovault/echovault/plugin.go:136.18,138.5 1 0 +github.com/echovault/echovault/echovault/plugin.go:139.4,143.10 1 0 +github.com/echovault/echovault/echovault/plugin.go:145.72,154.4 1 1 +github.com/echovault/echovault/echovault/plugin.go:157.2,157.12 1 1 +github.com/echovault/echovault/echovault/plugin.go:165.54,168.91 3 1 +github.com/echovault/echovault/echovault/plugin.go:168.91,170.3 1 1 +github.com/echovault/echovault/echovault/plugin.go:176.49,180.42 4 1 +github.com/echovault/echovault/echovault/plugin.go:180.42,181.61 1 1 +github.com/echovault/echovault/echovault/plugin.go:181.61,183.4 1 1 +github.com/echovault/echovault/echovault/plugin.go:183.6,185.4 1 1 +github.com/echovault/echovault/echovault/plugin.go:187.2,187.16 1 1 +github.com/echovault/echovault/echovault/test_helpers.go:9.35,16.2 2 1 +github.com/echovault/echovault/echovault/test_helpers.go:18.95,19.82 1 1 +github.com/echovault/echovault/echovault/test_helpers.go:19.82,21.3 1 0 +github.com/echovault/echovault/echovault/test_helpers.go:22.2,22.12 1 1 +github.com/echovault/echovault/echovault/test_helpers.go:25.95,28.2 2 1 diff --git a/echovault/api_hash_test.go b/echovault/api_hash_test.go index 10774d77..00f49ad3 100644 --- a/echovault/api_hash_test.go +++ b/echovault/api_hash_test.go @@ -616,13 +616,13 @@ func TestEchoVault_HSET(t *testing.T) { wantErr: false, }, { - name: "HSET returns error when the target key is not a map", + name: "HSET overwrites when the target key is not a map", key: "key6", presetValue: "Default preset value", fieldValuePairs: map[string]string{"field1": "value1"}, hsetFunc: server.HSet, - want: 0, - wantErr: true, + want: 1, + wantErr: false, }, } for _, tt := range tests { diff --git a/echovault/api_set_test.go b/echovault/api_set_test.go index f347f9aa..0ad40c50 100644 --- a/echovault/api_set_test.go +++ b/echovault/api_set_test.go @@ -467,13 +467,12 @@ func TestEchoVault_SINTERCARD(t *testing.T) { wantErr: false, }, { - name: "Return 0 if any of the keys does not exist", + name: "Return error if any of the keys is non-existent", presetValues: map[string]interface{}{ "key11": set.NewSet([]string{"one", "two", "three", "four", "five", "six", "seven", "eight"}), - "key12": "Default value", "key13": set.NewSet([]string{"one"}), }, - keys: []string{"key11", "key12", "key13", "non-existent"}, + keys: []string{"key11", "key12", "key13"}, limit: 0, want: 0, wantErr: false, diff --git a/echovault/echovault.go b/echovault/echovault.go index b4de7c18..1d3b47c5 100644 --- a/echovault/echovault.go +++ b/echovault/echovault.go @@ -190,36 +190,39 @@ func NewEchoVault(options ...func(echovault *EchoVault)) (*EchoVault, error) { } if echovault.isInCluster() { - // TODO: Uncomment this - // echovault.raft = raft.NewRaft(raft.Opts{ - // Config: echovault.config, - // GetCommand: echovault.getCommand, - // SetValue: echovault.SetValue, - // SetExpiry: echovault.SetExpiry, - // DeleteKey: echovault.DeleteKey, - // StartSnapshot: echovault.startSnapshot, - // FinishSnapshot: echovault.finishSnapshot, - // SetLatestSnapshotTime: echovault.setLatestSnapshot, - // GetHandlerFuncParams: echovault.getHandlerFuncParams, - // GetState: func() map[string]internal.KeyData { - // state := make(map[string]internal.KeyData) - // for k, v := range echovault.getState() { - // if data, ok := v.(internal.KeyData); ok { - // state[k] = data - // } - // } - // return state - // }, - // }) - // echovault.memberList = memberlist.NewMemberList(memberlist.Opts{ - // Config: echovault.config, - // HasJoinedCluster: echovault.raft.HasJoinedCluster, - // AddVoter: echovault.raft.AddVoter, - // RemoveRaftServer: echovault.raft.RemoveServer, - // IsRaftLeader: echovault.raft.IsRaftLeader, - // ApplyMutate: echovault.raftApplyCommand, - // ApplyDeleteKey: echovault.raftApplyDeleteKey, - // }) + echovault.raft = raft.NewRaft(raft.Opts{ + Config: echovault.config, + GetCommand: echovault.getCommand, + SetValues: echovault.setValues, + SetExpiry: echovault.setExpiry, + StartSnapshot: echovault.startSnapshot, + FinishSnapshot: echovault.finishSnapshot, + SetLatestSnapshotTime: echovault.setLatestSnapshot, + GetHandlerFuncParams: echovault.getHandlerFuncParams, + DeleteKey: func(key string) error { + echovault.storeLock.Lock() + defer echovault.storeLock.Unlock() + return echovault.deleteKey(key) + }, + GetState: func() map[string]internal.KeyData { + state := make(map[string]internal.KeyData) + for k, v := range echovault.getState() { + if data, ok := v.(internal.KeyData); ok { + state[k] = data + } + } + return state + }, + }) + echovault.memberList = memberlist.NewMemberList(memberlist.Opts{ + Config: echovault.config, + HasJoinedCluster: echovault.raft.HasJoinedCluster, + AddVoter: echovault.raft.AddVoter, + RemoveRaftServer: echovault.raft.RemoveServer, + IsRaftLeader: echovault.raft.IsRaftLeader, + ApplyMutate: echovault.raftApplyCommand, + ApplyDeleteKey: echovault.raftApplyDeleteKey, + }) } else { // Set up standalone snapshot engine echovault.snapshotEngine = snapshot.NewSnapshotEngine( diff --git a/internal/modules/hash/commands_test.go b/internal/modules/hash/commands_test.go index b99b8d65..09ebc707 100644 --- a/internal/modules/hash/commands_test.go +++ b/internal/modules/hash/commands_test.go @@ -116,7 +116,7 @@ func Test_HandleHSET(t *testing.T) { expectedError: nil, }, { - name: "6. HSET returns error when the target key is not a map", + name: "6. HSET overwrites when the target key is not a map", key: "HsetKey6", presetValue: "Default preset value", command: []string{"HSET", "HsetKey6", "field1", "value1"}, diff --git a/internal/raft/fsm.go b/internal/raft/fsm.go index d736a13f..8e9a0cc4 100644 --- a/internal/raft/fsm.go +++ b/internal/raft/fsm.go @@ -32,11 +32,9 @@ type FSMOpts struct { Config config.Config GetState func() map[string]internal.KeyData GetCommand func(command string) (internal.Command, error) - CreateKeyAndLock func(ctx context.Context, key string) (bool, error) - SetValue func(ctx context.Context, key string, value interface{}) error + SetValues func(ctx context.Context, entries map[string]interface{}) error SetExpiry func(ctx context.Context, key string, expire time.Time, touch bool) - KeyUnlock func(ctx context.Context, key string) - DeleteKey func(ctx context.Context, key string) error + DeleteKey func(key string) error StartSnapshot func() FinishSnapshot func() SetLatestSnapshotTime func(msec int64) @@ -79,7 +77,7 @@ func (fsm *FSM) Apply(log *raft.Log) interface{} { } case "delete-key": - if err := fsm.options.DeleteKey(ctx, request.Key); err != nil { + if err := fsm.options.DeleteKey(request.Key); err != nil { return internal.ApplyResponse{ Error: err, Response: nil, @@ -164,14 +162,10 @@ func (fsm *FSM) Restore(snapshot io.ReadCloser) error { // Set state ctx := context.Background() for k, v := range internal.FilterExpiredKeys(time.Now(), data.State) { - if _, err = fsm.options.CreateKeyAndLock(ctx, k); err != nil { - log.Fatal(err) - } - if err = fsm.options.SetValue(ctx, k, v.Value); err != nil { + if err = fsm.options.SetValues(ctx, map[string]interface{}{k: v.Value}); err != nil { log.Fatal(err) } fsm.options.SetExpiry(ctx, k, v.ExpireAt, false) - fsm.options.KeyUnlock(ctx, k) } // Set latest snapshot milliseconds fsm.options.SetLatestSnapshotTime(data.LatestSnapshotMilliseconds) diff --git a/internal/raft/raft.go b/internal/raft/raft.go index 725446f9..796eb301 100644 --- a/internal/raft/raft.go +++ b/internal/raft/raft.go @@ -33,13 +33,11 @@ import ( type Opts struct { Config config.Config - CreateKeyAndLock func(ctx context.Context, key string) (bool, error) - SetValue func(ctx context.Context, key string, value interface{}) error + SetValues func(ctx context.Context, entries map[string]interface{}) error SetExpiry func(ctx context.Context, key string, expire time.Time, touch bool) - KeyUnlock func(ctx context.Context, key string) GetState func() map[string]internal.KeyData GetCommand func(command string) (internal.Command, error) - DeleteKey func(ctx context.Context, key string) error + DeleteKey func(key string) error StartSnapshot func() FinishSnapshot func() SetLatestSnapshotTime func(msec int64) @@ -118,10 +116,8 @@ func (r *Raft) RaftInit(ctx context.Context) { Config: r.options.Config, GetState: r.options.GetState, GetCommand: r.options.GetCommand, - CreateKeyAndLock: r.options.CreateKeyAndLock, - SetValue: r.options.SetValue, + SetValues: r.options.SetValues, SetExpiry: r.options.SetExpiry, - KeyUnlock: r.options.KeyUnlock, DeleteKey: r.options.DeleteKey, StartSnapshot: r.options.StartSnapshot, FinishSnapshot: r.options.FinishSnapshot,