Added test for TLS connection

This commit is contained in:
Kelvin Clement Mwinuka
2024-05-29 15:08:41 +08:00
parent 06ce6bfeaf
commit ae5a675929
2 changed files with 467 additions and 360 deletions

View File

@@ -54,47 +54,6 @@ 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: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: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/log/store.go:197.41,201.2 3 1
github.com/echovault/echovault/internal/config/config.go:64.34,70.24 3 0
github.com/echovault/echovault/internal/config/config.go:70.24,72.35 2 0
github.com/echovault/echovault/internal/config/config.go:72.35,74.5 1 0
github.com/echovault/echovault/internal/config/config.go:75.4,75.22 1 0
github.com/echovault/echovault/internal/config/config.go:75.22,77.5 1 0
github.com/echovault/echovault/internal/config/config.go:78.4,79.14 2 0
github.com/echovault/echovault/internal/config/config.go:82.2,82.115 1 0
github.com/echovault/echovault/internal/config/config.go:82.115,85.3 2 0
github.com/echovault/echovault/internal/config/config.go:87.2,90.29 2 0
github.com/echovault/echovault/internal/config/config.go:90.29,91.86 1 0
github.com/echovault/echovault/internal/config/config.go:91.86,93.5 1 0
github.com/echovault/echovault/internal/config/config.go:93.7,95.5 1 0
github.com/echovault/echovault/internal/config/config.go:96.4,97.14 2 0
github.com/echovault/echovault/internal/config/config.go:100.2,103.59 2 0
github.com/echovault/echovault/internal/config/config.go:103.59,105.17 2 0
github.com/echovault/echovault/internal/config/config.go:105.17,107.4 1 0
github.com/echovault/echovault/internal/config/config.go:108.3,109.13 2 0
github.com/echovault/echovault/internal/config/config.go:112.2,121.88 2 0
github.com/echovault/echovault/internal/config/config.go:121.88,128.23 3 0
github.com/echovault/echovault/internal/config/config.go:128.23,130.5 1 0
github.com/echovault/echovault/internal/config/config.go:131.4,132.14 2 0
github.com/echovault/echovault/internal/config/config.go:135.2,139.24 2 0
github.com/echovault/echovault/internal/config/config.go:139.24,140.36 1 0
github.com/echovault/echovault/internal/config/config.go:140.36,142.5 1 0
github.com/echovault/echovault/internal/config/config.go:143.4,144.14 2 0
github.com/echovault/echovault/internal/config/config.go:147.2,219.22 25 0
github.com/echovault/echovault/internal/config/config.go:219.22,221.45 1 0
github.com/echovault/echovault/internal/config/config.go:221.45,222.14 1 0
github.com/echovault/echovault/internal/config/config.go:223.9,224.17 1 0
github.com/echovault/echovault/internal/config/config.go:224.17,225.36 1 0
github.com/echovault/echovault/internal/config/config.go:225.36,227.6 1 0
github.com/echovault/echovault/internal/config/config.go:230.4,232.22 2 0
github.com/echovault/echovault/internal/config/config.go:232.22,233.59 1 0
github.com/echovault/echovault/internal/config/config.go:233.59,235.6 1 0
github.com/echovault/echovault/internal/config/config.go:238.4,238.39 1 0
github.com/echovault/echovault/internal/config/config.go:238.39,239.59 1 0
github.com/echovault/echovault/internal/config/config.go:239.59,241.6 1 0
github.com/echovault/echovault/internal/config/config.go:247.2,249.45 2 0
github.com/echovault/echovault/internal/config/config.go:249.45,251.3 1 0
github.com/echovault/echovault/internal/config/config.go:253.2,253.18 1 0
github.com/echovault/echovault/internal/config/default.go:8.29,38.2 1 0
github.com/echovault/echovault/internal/aof/preamble/store.go:45.62,46.36 1 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:46.36,48.3 1 1
github.com/echovault/echovault/internal/aof/preamble/store.go:51.71,52.36 1 0 github.com/echovault/echovault/internal/aof/preamble/store.go:51.71,52.36 1 0
@@ -150,40 +109,6 @@ 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.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: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/preamble/store.go:192.2,192.14 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
github.com/echovault/echovault/internal/eviction/lfu.go:50.54,52.3 1 1
github.com/echovault/echovault/internal/eviction/lfu.go:54.2,54.56 1 1
github.com/echovault/echovault/internal/eviction/lfu.go:57.39,61.2 3 1
github.com/echovault/echovault/internal/eviction/lfu.go:63.38,72.2 3 1
github.com/echovault/echovault/internal/eviction/lfu.go:74.34,83.2 8 1
github.com/echovault/echovault/internal/eviction/lfu.go:85.43,87.26 1 1
github.com/echovault/echovault/internal/eviction/lfu.go:87.26,90.3 2 1
github.com/echovault/echovault/internal/eviction/lfu.go:92.2,92.69 1 1
github.com/echovault/echovault/internal/eviction/lfu.go:92.69,94.3 1 1
github.com/echovault/echovault/internal/eviction/lfu.go:95.2,97.27 3 1
github.com/echovault/echovault/internal/eviction/lfu.go:100.43,101.73 1 0
github.com/echovault/echovault/internal/eviction/lfu.go:101.73,103.3 1 0
github.com/echovault/echovault/internal/eviction/lfu.go:104.2,104.19 1 0
github.com/echovault/echovault/internal/eviction/lfu.go:104.19,106.3 1 0
github.com/echovault/echovault/internal/eviction/lfu.go:109.50,112.2 2 1
github.com/echovault/echovault/internal/eviction/lru.go:34.29,41.2 3 1
github.com/echovault/echovault/internal/eviction/lru.go:43.34,45.2 1 1
github.com/echovault/echovault/internal/eviction/lru.go:47.44,49.2 1 1
github.com/echovault/echovault/internal/eviction/lru.go:51.39,55.2 3 1
github.com/echovault/echovault/internal/eviction/lru.go:57.38,64.2 2 1
github.com/echovault/echovault/internal/eviction/lru.go:66.34,75.2 8 1
github.com/echovault/echovault/internal/eviction/lru.go:77.43,79.26 1 1
github.com/echovault/echovault/internal/eviction/lru.go:79.26,81.3 1 1
github.com/echovault/echovault/internal/eviction/lru.go:83.2,83.69 1 1
github.com/echovault/echovault/internal/eviction/lru.go:83.69,85.3 1 1
github.com/echovault/echovault/internal/eviction/lru.go:86.2,88.27 3 1
github.com/echovault/echovault/internal/eviction/lru.go:91.43,92.73 1 0
github.com/echovault/echovault/internal/eviction/lru.go:92.73,94.3 1 0
github.com/echovault/echovault/internal/eviction/lru.go:95.2,95.19 1 0
github.com/echovault/echovault/internal/eviction/lru.go:95.19,97.3 1 0
github.com/echovault/echovault/internal/eviction/lru.go:100.50,103.2 2 1
github.com/echovault/echovault/internal/aof/engine.go:50.56,51.30 1 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: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:56.57,57.30 1 1
@@ -232,6 +157,81 @@ 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.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: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/engine.go:202.2,202.12 1 1
github.com/echovault/echovault/internal/config/config.go:64.34,70.24 3 0
github.com/echovault/echovault/internal/config/config.go:70.24,72.35 2 0
github.com/echovault/echovault/internal/config/config.go:72.35,74.5 1 0
github.com/echovault/echovault/internal/config/config.go:75.4,75.22 1 0
github.com/echovault/echovault/internal/config/config.go:75.22,77.5 1 0
github.com/echovault/echovault/internal/config/config.go:78.4,79.14 2 0
github.com/echovault/echovault/internal/config/config.go:82.2,82.115 1 0
github.com/echovault/echovault/internal/config/config.go:82.115,85.3 2 0
github.com/echovault/echovault/internal/config/config.go:87.2,90.29 2 0
github.com/echovault/echovault/internal/config/config.go:90.29,91.86 1 0
github.com/echovault/echovault/internal/config/config.go:91.86,93.5 1 0
github.com/echovault/echovault/internal/config/config.go:93.7,95.5 1 0
github.com/echovault/echovault/internal/config/config.go:96.4,97.14 2 0
github.com/echovault/echovault/internal/config/config.go:100.2,103.59 2 0
github.com/echovault/echovault/internal/config/config.go:103.59,105.17 2 0
github.com/echovault/echovault/internal/config/config.go:105.17,107.4 1 0
github.com/echovault/echovault/internal/config/config.go:108.3,109.13 2 0
github.com/echovault/echovault/internal/config/config.go:112.2,121.88 2 0
github.com/echovault/echovault/internal/config/config.go:121.88,128.23 3 0
github.com/echovault/echovault/internal/config/config.go:128.23,130.5 1 0
github.com/echovault/echovault/internal/config/config.go:131.4,132.14 2 0
github.com/echovault/echovault/internal/config/config.go:135.2,139.24 2 0
github.com/echovault/echovault/internal/config/config.go:139.24,140.36 1 0
github.com/echovault/echovault/internal/config/config.go:140.36,142.5 1 0
github.com/echovault/echovault/internal/config/config.go:143.4,144.14 2 0
github.com/echovault/echovault/internal/config/config.go:147.2,219.22 25 0
github.com/echovault/echovault/internal/config/config.go:219.22,221.45 1 0
github.com/echovault/echovault/internal/config/config.go:221.45,222.14 1 0
github.com/echovault/echovault/internal/config/config.go:223.9,224.17 1 0
github.com/echovault/echovault/internal/config/config.go:224.17,225.36 1 0
github.com/echovault/echovault/internal/config/config.go:225.36,227.6 1 0
github.com/echovault/echovault/internal/config/config.go:230.4,232.22 2 0
github.com/echovault/echovault/internal/config/config.go:232.22,233.59 1 0
github.com/echovault/echovault/internal/config/config.go:233.59,235.6 1 0
github.com/echovault/echovault/internal/config/config.go:238.4,238.39 1 0
github.com/echovault/echovault/internal/config/config.go:238.39,239.59 1 0
github.com/echovault/echovault/internal/config/config.go:239.59,241.6 1 0
github.com/echovault/echovault/internal/config/config.go:247.2,249.45 2 0
github.com/echovault/echovault/internal/config/config.go:249.45,251.3 1 0
github.com/echovault/echovault/internal/config/config.go:253.2,253.18 1 0
github.com/echovault/echovault/internal/config/default.go:8.29,38.2 1 0
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
github.com/echovault/echovault/internal/eviction/lfu.go:50.54,52.3 1 1
github.com/echovault/echovault/internal/eviction/lfu.go:54.2,54.56 1 1
github.com/echovault/echovault/internal/eviction/lfu.go:57.39,61.2 3 1
github.com/echovault/echovault/internal/eviction/lfu.go:63.38,72.2 3 1
github.com/echovault/echovault/internal/eviction/lfu.go:74.34,83.2 8 1
github.com/echovault/echovault/internal/eviction/lfu.go:85.43,87.26 1 1
github.com/echovault/echovault/internal/eviction/lfu.go:87.26,90.3 2 1
github.com/echovault/echovault/internal/eviction/lfu.go:92.2,92.69 1 1
github.com/echovault/echovault/internal/eviction/lfu.go:92.69,94.3 1 1
github.com/echovault/echovault/internal/eviction/lfu.go:95.2,97.27 3 1
github.com/echovault/echovault/internal/eviction/lfu.go:100.43,101.73 1 0
github.com/echovault/echovault/internal/eviction/lfu.go:101.73,103.3 1 0
github.com/echovault/echovault/internal/eviction/lfu.go:104.2,104.19 1 0
github.com/echovault/echovault/internal/eviction/lfu.go:104.19,106.3 1 0
github.com/echovault/echovault/internal/eviction/lfu.go:109.50,112.2 2 1
github.com/echovault/echovault/internal/eviction/lru.go:34.29,41.2 3 1
github.com/echovault/echovault/internal/eviction/lru.go:43.34,45.2 1 1
github.com/echovault/echovault/internal/eviction/lru.go:47.44,49.2 1 1
github.com/echovault/echovault/internal/eviction/lru.go:51.39,55.2 3 1
github.com/echovault/echovault/internal/eviction/lru.go:57.38,64.2 2 1
github.com/echovault/echovault/internal/eviction/lru.go:66.34,75.2 8 1
github.com/echovault/echovault/internal/eviction/lru.go:77.43,79.26 1 1
github.com/echovault/echovault/internal/eviction/lru.go:79.26,81.3 1 1
github.com/echovault/echovault/internal/eviction/lru.go:83.2,83.69 1 1
github.com/echovault/echovault/internal/eviction/lru.go:83.69,85.3 1 1
github.com/echovault/echovault/internal/eviction/lru.go:86.2,88.27 3 1
github.com/echovault/echovault/internal/eviction/lru.go:91.43,92.73 1 0
github.com/echovault/echovault/internal/eviction/lru.go:92.73,94.3 1 0
github.com/echovault/echovault/internal/eviction/lru.go:95.2,95.19 1 0
github.com/echovault/echovault/internal/eviction/lru.go:95.19,97.3 1 0
github.com/echovault/echovault/internal/eviction/lru.go:100.50,103.2 2 1
github.com/echovault/echovault/internal/modules/acl/acl.go:52.40,57.24 3 1 github.com/echovault/echovault/internal/modules/acl/acl.go:52.40,57.24 3 1
github.com/echovault/echovault/internal/modules/acl/acl.go:57.24,65.3 2 1 github.com/echovault/echovault/internal/modules/acl/acl.go:57.24,65.3 2 1
github.com/echovault/echovault/internal/modules/acl/acl.go:68.2,68.28 1 1 github.com/echovault/echovault/internal/modules/acl/acl.go:68.2,68.28 1 1
@@ -675,6 +675,99 @@ github.com/echovault/echovault/internal/modules/connection/commands.go:28.9,29.3
github.com/echovault/echovault/internal/modules/connection/commands.go:30.9,31.94 1 1 github.com/echovault/echovault/internal/modules/connection/commands.go:30.9,31.94 1 1
github.com/echovault/echovault/internal/modules/connection/commands.go:35.36,45.84 1 1 github.com/echovault/echovault/internal/modules/connection/commands.go:35.36,45.84 1 1
github.com/echovault/echovault/internal/modules/connection/commands.go:45.84,51.5 1 0 github.com/echovault/echovault/internal/modules/connection/commands.go:45.84,51.5 1 0
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/generic/commands.go:33.67,35.16 2 1 github.com/echovault/echovault/internal/modules/generic/commands.go:33.67,35.16 2 1
github.com/echovault/echovault/internal/modules/generic/commands.go:35.16,37.3 1 0 github.com/echovault/echovault/internal/modules/generic/commands.go:35.16,37.3 1 0
github.com/echovault/echovault/internal/modules/generic/commands.go:39.2,46.16 7 1 github.com/echovault/echovault/internal/modules/generic/commands.go:39.2,46.16 7 1
@@ -1468,99 +1561,6 @@ 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: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: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/pubsub/pubsub.go:275.2,275.17 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: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: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:32.2,37.16 4 1
@@ -3146,56 +3146,54 @@ 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: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: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_list.go:316.2,316.41 1 0
github.com/echovault/echovault/echovault/api_pubsub.go:50.86,52.24 1 1 github.com/echovault/echovault/echovault/api_pubsub.go:42.69,46.41 3 1
github.com/echovault/echovault/echovault/api_pubsub.go:52.24,54.3 1 1 github.com/echovault/echovault/echovault/api_pubsub.go:46.41,55.3 4 1
github.com/echovault/echovault/echovault/api_pubsub.go:56.2,58.36 3 1 github.com/echovault/echovault/echovault/api_pubsub.go:55.8,58.10 2 1
github.com/echovault/echovault/echovault/api_pubsub.go:58.36,65.3 2 1 github.com/echovault/echovault/echovault/api_pubsub.go:58.10,60.4 1 0
github.com/echovault/echovault/echovault/api_pubsub.go:65.8,69.3 2 1 github.com/echovault/echovault/echovault/api_pubsub.go:61.3,62.33 2 1
github.com/echovault/echovault/echovault/api_pubsub.go:72.2,73.12 2 1 github.com/echovault/echovault/echovault/api_pubsub.go:65.2,65.33 1 1
github.com/echovault/echovault/echovault/api_pubsub.go:73.12,75.3 1 1 github.com/echovault/echovault/echovault/api_pubsub.go:78.95,80.16 2 1
github.com/echovault/echovault/echovault/api_pubsub.go:77.2,77.25 1 1 github.com/echovault/echovault/echovault/api_pubsub.go:80.16,81.26 1 0
github.com/echovault/echovault/echovault/api_pubsub.go:77.25,82.33 4 1 github.com/echovault/echovault/echovault/api_pubsub.go:81.26,83.4 1 0
github.com/echovault/echovault/echovault/api_pubsub.go:82.33,84.4 1 1 github.com/echovault/echovault/echovault/api_pubsub.go:87.2,88.12 2 1
github.com/echovault/echovault/echovault/api_pubsub.go:86.3,86.13 1 1 github.com/echovault/echovault/echovault/api_pubsub.go:88.12,90.3 1 1
github.com/echovault/echovault/echovault/api_pubsub.go:97.70,98.24 1 1 github.com/echovault/echovault/echovault/api_pubsub.go:92.2,92.25 1 1
github.com/echovault/echovault/echovault/api_pubsub.go:98.24,100.3 1 0 github.com/echovault/echovault/echovault/api_pubsub.go:92.25,97.33 4 1
github.com/echovault/echovault/echovault/api_pubsub.go:102.2,102.36 1 1 github.com/echovault/echovault/echovault/api_pubsub.go:97.33,99.4 1 1
github.com/echovault/echovault/echovault/api_pubsub.go:102.36,104.3 1 0 github.com/echovault/echovault/echovault/api_pubsub.go:101.3,101.13 1 1
github.com/echovault/echovault/echovault/api_pubsub.go:106.2,107.115 2 1 github.com/echovault/echovault/echovault/api_pubsub.go:112.70,114.9 2 1
github.com/echovault/echovault/echovault/api_pubsub.go:120.87,122.24 1 1 github.com/echovault/echovault/echovault/api_pubsub.go:114.9,116.3 1 0
github.com/echovault/echovault/echovault/api_pubsub.go:122.24,124.3 1 0 github.com/echovault/echovault/echovault/api_pubsub.go:117.2,118.107 2 1
github.com/echovault/echovault/echovault/api_pubsub.go:126.2,128.36 3 1 github.com/echovault/echovault/echovault/api_pubsub.go:131.96,133.16 2 1
github.com/echovault/echovault/echovault/api_pubsub.go:128.36,135.3 2 1 github.com/echovault/echovault/echovault/api_pubsub.go:133.16,134.26 1 0
github.com/echovault/echovault/echovault/api_pubsub.go:135.8,139.3 2 1 github.com/echovault/echovault/echovault/api_pubsub.go:134.26,136.4 1 0
github.com/echovault/echovault/echovault/api_pubsub.go:142.2,143.12 2 1 github.com/echovault/echovault/echovault/api_pubsub.go:140.2,141.12 2 1
github.com/echovault/echovault/echovault/api_pubsub.go:143.12,145.3 1 1 github.com/echovault/echovault/echovault/api_pubsub.go:141.12,143.3 1 1
github.com/echovault/echovault/echovault/api_pubsub.go:147.2,147.25 1 1 github.com/echovault/echovault/echovault/api_pubsub.go:145.2,145.25 1 1
github.com/echovault/echovault/echovault/api_pubsub.go:147.25,152.33 4 1 github.com/echovault/echovault/echovault/api_pubsub.go:145.25,150.33 4 1
github.com/echovault/echovault/echovault/api_pubsub.go:152.33,154.4 1 1 github.com/echovault/echovault/echovault/api_pubsub.go:150.33,152.4 1 1
github.com/echovault/echovault/echovault/api_pubsub.go:156.3,156.13 1 1 github.com/echovault/echovault/echovault/api_pubsub.go:154.3,154.13 1 1
github.com/echovault/echovault/echovault/api_pubsub.go:167.71,168.24 1 1 github.com/echovault/echovault/echovault/api_pubsub.go:165.71,167.9 2 1
github.com/echovault/echovault/echovault/api_pubsub.go:168.24,170.3 1 0 github.com/echovault/echovault/echovault/api_pubsub.go:167.9,169.3 1 0
github.com/echovault/echovault/echovault/api_pubsub.go:172.2,172.36 1 1 github.com/echovault/echovault/echovault/api_pubsub.go:170.2,171.107 2 1
github.com/echovault/echovault/echovault/api_pubsub.go:172.36,174.3 1 0 github.com/echovault/echovault/echovault/api_pubsub.go:184.73,186.16 2 1
github.com/echovault/echovault/echovault/api_pubsub.go:176.2,177.115 2 1 github.com/echovault/echovault/echovault/api_pubsub.go:186.16,188.3 1 0
github.com/echovault/echovault/echovault/api_pubsub.go:190.73,192.16 2 1 github.com/echovault/echovault/echovault/api_pubsub.go:189.2,190.40 2 1
github.com/echovault/echovault/echovault/api_pubsub.go:192.16,194.3 1 0 github.com/echovault/echovault/echovault/api_pubsub.go:200.75,202.19 2 1
github.com/echovault/echovault/echovault/api_pubsub.go:195.2,196.40 2 1 github.com/echovault/echovault/echovault/api_pubsub.go:202.19,204.3 1 1
github.com/echovault/echovault/echovault/api_pubsub.go:206.75,208.19 2 1 github.com/echovault/echovault/echovault/api_pubsub.go:205.2,206.16 2 1
github.com/echovault/echovault/echovault/api_pubsub.go:208.19,210.3 1 1 github.com/echovault/echovault/echovault/api_pubsub.go:206.16,208.3 1 0
github.com/echovault/echovault/echovault/api_pubsub.go:211.2,212.16 2 1 github.com/echovault/echovault/echovault/api_pubsub.go:209.2,209.45 1 1
github.com/echovault/echovault/echovault/api_pubsub.go:212.16,214.3 1 0 github.com/echovault/echovault/echovault/api_pubsub.go:215.54,217.16 2 1
github.com/echovault/echovault/echovault/api_pubsub.go:215.2,215.45 1 1 github.com/echovault/echovault/echovault/api_pubsub.go:217.16,219.3 1 0
github.com/echovault/echovault/echovault/api_pubsub.go:221.54,223.16 2 1 github.com/echovault/echovault/echovault/api_pubsub.go:220.2,220.41 1 1
github.com/echovault/echovault/echovault/api_pubsub.go:223.16,225.3 1 0 github.com/echovault/echovault/echovault/api_pubsub.go:230.83,234.16 3 1
github.com/echovault/echovault/echovault/api_pubsub.go:226.2,226.41 1 1 github.com/echovault/echovault/echovault/api_pubsub.go:234.16,236.3 1 0
github.com/echovault/echovault/echovault/api_pubsub.go:236.83,240.16 3 1 github.com/echovault/echovault/echovault/api_pubsub.go:238.2,240.16 3 1
github.com/echovault/echovault/echovault/api_pubsub.go:240.16,242.3 1 0 github.com/echovault/echovault/echovault/api_pubsub.go:240.16,242.3 1 0
github.com/echovault/echovault/echovault/api_pubsub.go:244.2,246.16 3 1 github.com/echovault/echovault/echovault/api_pubsub.go:244.2,247.28 3 1
github.com/echovault/echovault/echovault/api_pubsub.go:246.16,248.3 1 0 github.com/echovault/echovault/echovault/api_pubsub.go:247.28,250.3 2 1
github.com/echovault/echovault/echovault/api_pubsub.go:250.2,253.28 3 1 github.com/echovault/echovault/echovault/api_pubsub.go:252.2,252.20 1 1
github.com/echovault/echovault/echovault/api_pubsub.go:253.28,256.3 2 1
github.com/echovault/echovault/echovault/api_pubsub.go:258.2,258.20 1 1
github.com/echovault/echovault/echovault/api_set.go:36.75,39.16 3 1 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: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:42.2,42.41 1 1
@@ -3577,7 +3575,7 @@ 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.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: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:437.3,439.43 2 1
github.com/echovault/echovault/echovault/echovault.go:439.43,440.9 1 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.3,443.17 1 1
github.com/echovault/echovault/echovault/echovault.go:443.17,444.87 1 0 github.com/echovault/echovault/echovault/echovault.go:443.17,444.87 1 0
github.com/echovault/echovault/echovault/echovault.go:444.87,446.5 1 0 github.com/echovault/echovault/echovault/echovault.go:444.87,446.5 1 0
@@ -3594,7 +3592,7 @@ 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: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: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:477.4,477.27 1 0
github.com/echovault/echovault/echovault/echovault.go:481.2,481.37 1 1 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: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:491.34,493.2 1 1
github.com/echovault/echovault/echovault/echovault.go:496.47,497.38 1 1 github.com/echovault/echovault/echovault/echovault.go:496.47,497.38 1 1
@@ -3628,144 +3626,144 @@ 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: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: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:55.2,55.23 1 1
github.com/echovault/echovault/echovault/keyspace.go:58.95,66.27 5 1 github.com/echovault/echovault/echovault/keyspace.go:58.95,64.27 4 1
github.com/echovault/echovault/echovault/keyspace.go:66.27,68.10 2 1 github.com/echovault/echovault/echovault/keyspace.go:64.27,66.10 2 1
github.com/echovault/echovault/echovault/keyspace.go:68.10,70.12 2 1 github.com/echovault/echovault/echovault/keyspace.go:66.10,68.12 2 1
github.com/echovault/echovault/echovault/keyspace.go:73.3,73.83 1 1 github.com/echovault/echovault/echovault/keyspace.go:71.3,71.83 1 1
github.com/echovault/echovault/echovault/keyspace.go:73.83,74.29 1 0 github.com/echovault/echovault/echovault/keyspace.go:71.83,72.29 1 0
github.com/echovault/echovault/echovault/keyspace.go:74.29,77.19 2 0 github.com/echovault/echovault/echovault/keyspace.go:72.29,75.19 2 0
github.com/echovault/echovault/echovault/keyspace.go:77.19,79.6 1 0 github.com/echovault/echovault/echovault/keyspace.go:75.19,77.6 1 0
github.com/echovault/echovault/echovault/keyspace.go:80.10,80.65 1 0 github.com/echovault/echovault/echovault/keyspace.go:78.10,78.65 1 0
github.com/echovault/echovault/echovault/keyspace.go:80.65,83.19 2 0 github.com/echovault/echovault/echovault/keyspace.go:78.65,81.19 2 0
github.com/echovault/echovault/echovault/keyspace.go:83.19,85.6 1 0 github.com/echovault/echovault/echovault/keyspace.go:81.19,83.6 1 0
github.com/echovault/echovault/echovault/keyspace.go:86.10,86.66 1 0 github.com/echovault/echovault/echovault/keyspace.go:84.10,84.66 1 0
github.com/echovault/echovault/echovault/keyspace.go:86.66,91.5 1 0 github.com/echovault/echovault/echovault/keyspace.go:84.66,89.5 1 0
github.com/echovault/echovault/echovault/keyspace.go:92.4,93.12 2 0 github.com/echovault/echovault/echovault/keyspace.go:90.4,91.12 2 0
github.com/echovault/echovault/echovault/keyspace.go:96.3,96.28 1 1 github.com/echovault/echovault/echovault/keyspace.go:94.3,94.28 1 1
github.com/echovault/echovault/echovault/keyspace.go:100.2,100.46 1 1 github.com/echovault/echovault/echovault/keyspace.go:98.2,98.46 1 1
github.com/echovault/echovault/echovault/keyspace.go:100.46,101.61 1 1 github.com/echovault/echovault/echovault/keyspace.go:98.46,99.61 1 1
github.com/echovault/echovault/echovault/keyspace.go:101.61,103.4 1 0 github.com/echovault/echovault/echovault/keyspace.go:99.61,101.4 1 0
github.com/echovault/echovault/echovault/keyspace.go:106.2,106.15 1 1 github.com/echovault/echovault/echovault/keyspace.go:104.2,104.15 1 1
github.com/echovault/echovault/echovault/keyspace.go:109.95,113.115 3 1 github.com/echovault/echovault/echovault/keyspace.go:107.95,111.115 3 1
github.com/echovault/echovault/echovault/keyspace.go:113.115,115.3 1 0 github.com/echovault/echovault/echovault/keyspace.go:111.115,113.3 1 0
github.com/echovault/echovault/echovault/keyspace.go:117.2,117.34 1 1 github.com/echovault/echovault/echovault/keyspace.go:115.2,115.34 1 1
github.com/echovault/echovault/echovault/keyspace.go:117.34,119.37 2 1 github.com/echovault/echovault/echovault/keyspace.go:115.34,117.37 2 1
github.com/echovault/echovault/echovault/keyspace.go:119.37,121.4 1 1 github.com/echovault/echovault/echovault/keyspace.go:117.37,119.4 1 1
github.com/echovault/echovault/echovault/keyspace.go:122.3,126.28 2 1 github.com/echovault/echovault/echovault/keyspace.go:120.3,124.28 2 1
github.com/echovault/echovault/echovault/keyspace.go:126.28,128.4 1 1 github.com/echovault/echovault/echovault/keyspace.go:124.28,126.4 1 1
github.com/echovault/echovault/echovault/keyspace.go:132.2,132.63 1 1 github.com/echovault/echovault/echovault/keyspace.go:130.2,130.63 1 1
github.com/echovault/echovault/echovault/keyspace.go:132.63,133.31 1 1 github.com/echovault/echovault/echovault/keyspace.go:130.63,131.31 1 1
github.com/echovault/echovault/echovault/keyspace.go:133.31,135.18 2 1 github.com/echovault/echovault/echovault/keyspace.go:131.31,133.18 2 1
github.com/echovault/echovault/echovault/keyspace.go:135.18,137.5 1 0 github.com/echovault/echovault/echovault/keyspace.go:133.18,135.5 1 0
github.com/echovault/echovault/echovault/keyspace.go:141.2,141.12 1 1 github.com/echovault/echovault/echovault/keyspace.go:139.2,139.12 1 1
github.com/echovault/echovault/echovault/keyspace.go:144.101,155.55 5 1 github.com/echovault/echovault/echovault/keyspace.go:142.101,153.55 5 1
github.com/echovault/echovault/echovault/keyspace.go:155.55,157.3 1 1 github.com/echovault/echovault/echovault/keyspace.go:153.55,155.3 1 1
github.com/echovault/echovault/echovault/keyspace.go:158.2,161.11 2 1 github.com/echovault/echovault/echovault/keyspace.go:156.2,159.11 2 1
github.com/echovault/echovault/echovault/keyspace.go:161.11,162.44 1 1 github.com/echovault/echovault/echovault/keyspace.go:159.11,160.44 1 1
github.com/echovault/echovault/echovault/keyspace.go:162.44,164.18 2 1 github.com/echovault/echovault/echovault/keyspace.go:160.44,162.18 2 1
github.com/echovault/echovault/echovault/keyspace.go:164.18,166.5 1 0 github.com/echovault/echovault/echovault/keyspace.go:162.18,164.5 1 0
github.com/echovault/echovault/echovault/keyspace.go:171.54,178.97 4 1 github.com/echovault/echovault/echovault/keyspace.go:169.54,176.97 4 1
github.com/echovault/echovault/echovault/keyspace.go:178.97,180.3 1 1 github.com/echovault/echovault/echovault/keyspace.go:176.97,178.3 1 1
github.com/echovault/echovault/echovault/keyspace.go:183.2,183.9 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:184.108,185.36 1 0
github.com/echovault/echovault/echovault/keyspace.go:186.108,187.36 1 0 github.com/echovault/echovault/echovault/keyspace.go:188.2,190.12 2 1
github.com/echovault/echovault/echovault/keyspace.go:190.2,192.12 2 1 github.com/echovault/echovault/echovault/keyspace.go:193.60,195.6 1 1
github.com/echovault/echovault/echovault/keyspace.go:195.60,197.6 1 1 github.com/echovault/echovault/echovault/keyspace.go:195.6,196.83 1 1
github.com/echovault/echovault/echovault/keyspace.go:197.6,198.83 1 1 github.com/echovault/echovault/echovault/keyspace.go:196.83,198.9 2 1
github.com/echovault/echovault/echovault/keyspace.go:198.83,200.9 2 1 github.com/echovault/echovault/echovault/keyspace.go:201.2,202.33 2 1
github.com/echovault/echovault/echovault/keyspace.go:203.2,204.33 2 1 github.com/echovault/echovault/echovault/keyspace.go:202.33,204.3 1 0
github.com/echovault/echovault/echovault/keyspace.go:204.33,206.3 1 0 github.com/echovault/echovault/echovault/keyspace.go:205.2,206.13 2 1
github.com/echovault/echovault/echovault/keyspace.go:207.2,208.13 2 1 github.com/echovault/echovault/echovault/keyspace.go:211.86,212.27 1 1
github.com/echovault/echovault/echovault/keyspace.go:213.86,214.27 1 1 github.com/echovault/echovault/echovault/keyspace.go:212.27,214.84 1 1
github.com/echovault/echovault/echovault/keyspace.go:214.27,216.84 1 1 github.com/echovault/echovault/echovault/keyspace.go:214.84,216.4 1 1
github.com/echovault/echovault/echovault/keyspace.go:216.84,218.4 1 1 github.com/echovault/echovault/echovault/keyspace.go:218.3,218.35 1 1
github.com/echovault/echovault/echovault/keyspace.go:220.3,220.35 1 1 github.com/echovault/echovault/echovault/keyspace.go:218.35,220.4 1 1
github.com/echovault/echovault/echovault/keyspace.go:220.35,222.4 1 1 github.com/echovault/echovault/echovault/keyspace.go:221.3,221.56 1 0
github.com/echovault/echovault/echovault/keyspace.go:223.3,223.56 1 0 github.com/echovault/echovault/echovault/keyspace.go:222.29,225.34 3 0
github.com/echovault/echovault/echovault/keyspace.go:224.29,227.34 3 0 github.com/echovault/echovault/echovault/keyspace.go:226.29,229.34 3 0
github.com/echovault/echovault/echovault/keyspace.go:228.29,231.34 3 0 github.com/echovault/echovault/echovault/keyspace.go:230.30,232.51 2 0
github.com/echovault/echovault/echovault/keyspace.go:232.30,234.51 2 0 github.com/echovault/echovault/echovault/keyspace.go:232.51,234.5 1 0
github.com/echovault/echovault/echovault/keyspace.go:234.51,236.5 1 0 github.com/echovault/echovault/echovault/keyspace.go:235.4,235.34 1 0
github.com/echovault/echovault/echovault/keyspace.go:237.4,237.34 1 0 github.com/echovault/echovault/echovault/keyspace.go:236.30,238.51 2 0
github.com/echovault/echovault/echovault/keyspace.go:238.30,240.51 2 0 github.com/echovault/echovault/echovault/keyspace.go:238.51,240.5 1 0
github.com/echovault/echovault/echovault/keyspace.go:240.51,242.5 1 0 github.com/echovault/echovault/echovault/keyspace.go:241.4,241.34 1 0
github.com/echovault/echovault/echovault/keyspace.go:243.4,243.34 1 0 github.com/echovault/echovault/echovault/keyspace.go:243.3,243.55 1 0
github.com/echovault/echovault/echovault/keyspace.go:245.3,245.55 1 0 github.com/echovault/echovault/echovault/keyspace.go:243.55,245.4 1 0
github.com/echovault/echovault/echovault/keyspace.go:245.55,247.4 1 0 github.com/echovault/echovault/echovault/keyspace.go:247.2,247.12 1 0
github.com/echovault/echovault/echovault/keyspace.go:249.2,249.12 1 0 github.com/echovault/echovault/echovault/keyspace.go:251.71,253.34 1 0
github.com/echovault/echovault/echovault/keyspace.go:253.71,255.34 1 0 github.com/echovault/echovault/echovault/keyspace.go:253.34,255.3 1 0
github.com/echovault/echovault/echovault/keyspace.go:255.34,257.3 1 0 github.com/echovault/echovault/echovault/keyspace.go:258.2,261.50 3 0
github.com/echovault/echovault/echovault/keyspace.go:260.2,263.50 3 0 github.com/echovault/echovault/echovault/keyspace.go:261.50,263.3 1 0
github.com/echovault/echovault/echovault/keyspace.go:263.50,265.3 1 0 github.com/echovault/echovault/echovault/keyspace.go:265.2,267.50 3 0
github.com/echovault/echovault/echovault/keyspace.go:267.2,269.50 3 0 github.com/echovault/echovault/echovault/keyspace.go:267.50,269.3 1 0
github.com/echovault/echovault/echovault/keyspace.go:269.50,271.3 1 0 github.com/echovault/echovault/echovault/keyspace.go:273.2,275.9 3 0
github.com/echovault/echovault/echovault/keyspace.go:275.2,277.9 3 0 github.com/echovault/echovault/echovault/keyspace.go:276.125,281.7 3 0
github.com/echovault/echovault/echovault/keyspace.go:278.125,283.7 3 0 github.com/echovault/echovault/echovault/keyspace.go:281.7,283.40 1 0
github.com/echovault/echovault/echovault/keyspace.go:283.7,285.40 1 0 github.com/echovault/echovault/echovault/keyspace.go:283.40,285.5 1 0
github.com/echovault/echovault/echovault/keyspace.go:285.40,287.5 1 0 github.com/echovault/echovault/echovault/keyspace.go:287.4,288.29 2 0
github.com/echovault/echovault/echovault/keyspace.go:289.4,290.29 2 0 github.com/echovault/echovault/echovault/keyspace.go:288.29,290.49 1 0
github.com/echovault/echovault/echovault/keyspace.go:290.29,292.49 1 0 github.com/echovault/echovault/echovault/keyspace.go:290.49,292.6 1 0
github.com/echovault/echovault/echovault/keyspace.go:292.49,294.6 1 0 github.com/echovault/echovault/echovault/keyspace.go:293.10,293.65 1 0
github.com/echovault/echovault/echovault/keyspace.go:295.10,295.65 1 0 github.com/echovault/echovault/echovault/keyspace.go:293.65,295.63 1 0
github.com/echovault/echovault/echovault/keyspace.go:295.65,297.63 1 0 github.com/echovault/echovault/echovault/keyspace.go:295.63,297.6 1 0
github.com/echovault/echovault/echovault/keyspace.go:297.63,299.6 1 0 github.com/echovault/echovault/echovault/keyspace.go:301.4,304.52 3 0
github.com/echovault/echovault/echovault/keyspace.go:303.4,306.52 3 0 github.com/echovault/echovault/echovault/keyspace.go:304.52,306.5 1 0
github.com/echovault/echovault/echovault/keyspace.go:306.52,308.5 1 0 github.com/echovault/echovault/echovault/keyspace.go:308.125,313.7 3 0
github.com/echovault/echovault/echovault/keyspace.go:310.125,315.7 3 0 github.com/echovault/echovault/echovault/keyspace.go:313.7,315.40 1 0
github.com/echovault/echovault/echovault/keyspace.go:315.7,317.40 1 0 github.com/echovault/echovault/echovault/keyspace.go:315.40,317.5 1 0
github.com/echovault/echovault/echovault/keyspace.go:317.40,319.5 1 0 github.com/echovault/echovault/echovault/keyspace.go:319.4,320.29 2 0
github.com/echovault/echovault/echovault/keyspace.go:321.4,322.29 2 0 github.com/echovault/echovault/echovault/keyspace.go:320.29,322.49 1 0
github.com/echovault/echovault/echovault/keyspace.go:322.29,324.49 1 0 github.com/echovault/echovault/echovault/keyspace.go:322.49,324.6 1 0
github.com/echovault/echovault/echovault/keyspace.go:324.49,326.6 1 0 github.com/echovault/echovault/echovault/keyspace.go:325.10,325.65 1 0
github.com/echovault/echovault/echovault/keyspace.go:327.10,327.65 1 0 github.com/echovault/echovault/echovault/keyspace.go:325.65,328.63 1 0
github.com/echovault/echovault/echovault/keyspace.go:327.65,330.63 1 0 github.com/echovault/echovault/echovault/keyspace.go:328.63,330.6 1 0
github.com/echovault/echovault/echovault/keyspace.go:330.63,332.6 1 0 github.com/echovault/echovault/echovault/keyspace.go:334.4,337.52 3 0
github.com/echovault/echovault/echovault/keyspace.go:336.4,339.52 3 0 github.com/echovault/echovault/echovault/keyspace.go:337.52,339.5 1 0
github.com/echovault/echovault/echovault/keyspace.go:339.52,341.5 1 0 github.com/echovault/echovault/echovault/keyspace.go:341.105,344.7 1 0
github.com/echovault/echovault/echovault/keyspace.go:343.105,346.7 1 0 github.com/echovault/echovault/echovault/keyspace.go:344.7,347.30 2 0
github.com/echovault/echovault/echovault/keyspace.go:346.7,349.30 2 0 github.com/echovault/echovault/echovault/keyspace.go:347.30,351.5 3 0
github.com/echovault/echovault/echovault/keyspace.go:349.30,353.5 3 0 github.com/echovault/echovault/echovault/keyspace.go:353.4,354.37 2 0
github.com/echovault/echovault/echovault/keyspace.go:355.4,356.37 2 0 github.com/echovault/echovault/echovault/keyspace.go:354.37,355.17 1 0
github.com/echovault/echovault/echovault/keyspace.go:356.37,357.17 1 0 github.com/echovault/echovault/echovault/keyspace.go:355.17,356.31 1 0
github.com/echovault/echovault/echovault/keyspace.go:357.17,358.31 1 0 github.com/echovault/echovault/echovault/keyspace.go:356.31,358.51 1 0
github.com/echovault/echovault/echovault/keyspace.go:358.31,360.51 1 0 github.com/echovault/echovault/echovault/keyspace.go:358.51,360.8 1 0
github.com/echovault/echovault/echovault/keyspace.go:360.51,362.8 1 0 github.com/echovault/echovault/echovault/keyspace.go:361.12,361.67 1 0
github.com/echovault/echovault/echovault/keyspace.go:363.12,363.67 1 0 github.com/echovault/echovault/echovault/keyspace.go:361.67,362.65 1 0
github.com/echovault/echovault/echovault/keyspace.go:363.67,364.65 1 0 github.com/echovault/echovault/echovault/keyspace.go:362.65,364.8 1 0
github.com/echovault/echovault/echovault/keyspace.go:364.65,366.8 1 0 github.com/echovault/echovault/echovault/keyspace.go:367.6,370.54 3 0
github.com/echovault/echovault/echovault/keyspace.go:369.6,372.54 3 0 github.com/echovault/echovault/echovault/keyspace.go:370.54,372.7 1 0
github.com/echovault/echovault/echovault/keyspace.go:372.54,374.7 1 0 github.com/echovault/echovault/echovault/keyspace.go:374.5,374.10 1 0
github.com/echovault/echovault/echovault/keyspace.go:376.5,376.10 1 0 github.com/echovault/echovault/echovault/keyspace.go:377.106,380.7 1 0
github.com/echovault/echovault/echovault/keyspace.go:379.106,382.7 1 0 github.com/echovault/echovault/echovault/keyspace.go:380.7,387.29 5 0
github.com/echovault/echovault/echovault/keyspace.go:382.7,389.29 5 0 github.com/echovault/echovault/echovault/keyspace.go:387.29,389.49 1 0
github.com/echovault/echovault/echovault/keyspace.go:389.29,391.49 1 0 github.com/echovault/echovault/echovault/keyspace.go:389.49,391.6 1 0
github.com/echovault/echovault/echovault/keyspace.go:391.49,393.6 1 0 github.com/echovault/echovault/echovault/keyspace.go:392.10,392.65 1 0
github.com/echovault/echovault/echovault/keyspace.go:394.10,394.65 1 0 github.com/echovault/echovault/echovault/keyspace.go:392.65,393.63 1 0
github.com/echovault/echovault/echovault/keyspace.go:394.65,395.63 1 0 github.com/echovault/echovault/echovault/keyspace.go:393.63,395.6 1 0
github.com/echovault/echovault/echovault/keyspace.go:395.63,397.6 1 0 github.com/echovault/echovault/echovault/keyspace.go:399.4,402.52 3 0
github.com/echovault/echovault/echovault/keyspace.go:401.4,404.52 3 0 github.com/echovault/echovault/echovault/keyspace.go:402.52,404.5 1 0
github.com/echovault/echovault/echovault/keyspace.go:404.52,406.5 1 0 github.com/echovault/echovault/echovault/keyspace.go:406.10,407.13 1 0
github.com/echovault/echovault/echovault/keyspace.go:408.10,409.13 1 0 github.com/echovault/echovault/echovault/keyspace.go:416.77,418.57 1 1
github.com/echovault/echovault/echovault/keyspace.go:418.77,420.57 1 1 github.com/echovault/echovault/echovault/keyspace.go:418.57,420.3 1 0
github.com/echovault/echovault/echovault/keyspace.go:420.57,422.3 1 0 github.com/echovault/echovault/echovault/keyspace.go:422.2,427.50 3 1
github.com/echovault/echovault/echovault/keyspace.go:424.2,429.50 3 1 github.com/echovault/echovault/echovault/keyspace.go:427.50,429.3 1 0
github.com/echovault/echovault/echovault/keyspace.go:429.50,431.3 1 0 github.com/echovault/echovault/echovault/keyspace.go:430.2,437.33 6 1
github.com/echovault/echovault/echovault/keyspace.go:432.2,439.33 6 1 github.com/echovault/echovault/echovault/keyspace.go:437.33,438.7 1 0
github.com/echovault/echovault/echovault/keyspace.go:439.33,440.7 1 0 github.com/echovault/echovault/echovault/keyspace.go:438.7,442.35 3 0
github.com/echovault/echovault/echovault/keyspace.go:440.7,444.35 3 0 github.com/echovault/echovault/echovault/keyspace.go:442.35,444.10 2 0
github.com/echovault/echovault/echovault/keyspace.go:444.35,446.10 2 0 github.com/echovault/echovault/echovault/keyspace.go:448.2,453.25 4 1
github.com/echovault/echovault/echovault/keyspace.go:450.2,455.25 4 1 github.com/echovault/echovault/echovault/keyspace.go:453.25,456.28 2 0
github.com/echovault/echovault/echovault/keyspace.go:455.25,458.28 2 0 github.com/echovault/echovault/echovault/keyspace.go:456.28,457.46 1 0
github.com/echovault/echovault/echovault/keyspace.go:458.28,459.46 1 0 github.com/echovault/echovault/echovault/keyspace.go:457.46,459.5 1 0
github.com/echovault/echovault/echovault/keyspace.go:459.46,461.5 1 0 github.com/echovault/echovault/echovault/keyspace.go:460.9,460.64 1 0
github.com/echovault/echovault/echovault/keyspace.go:462.9,462.64 1 0 github.com/echovault/echovault/echovault/keyspace.go:460.64,461.60 1 0
github.com/echovault/echovault/echovault/keyspace.go:462.64,463.60 1 0 github.com/echovault/echovault/echovault/keyspace.go:461.60,463.5 1 0
github.com/echovault/echovault/echovault/keyspace.go:463.60,465.5 1 0 github.com/echovault/echovault/echovault/keyspace.go:468.2,468.21 1 1
github.com/echovault/echovault/echovault/keyspace.go:470.2,470.21 1 1 github.com/echovault/echovault/echovault/keyspace.go:468.21,470.3 1 1
github.com/echovault/echovault/echovault/keyspace.go:470.21,472.3 1 1 github.com/echovault/echovault/echovault/keyspace.go:472.2,475.58 2 0
github.com/echovault/echovault/echovault/keyspace.go:474.2,477.58 2 0 github.com/echovault/echovault/echovault/keyspace.go:475.58,479.3 2 0
github.com/echovault/echovault/echovault/keyspace.go:477.58,481.3 2 0 github.com/echovault/echovault/echovault/keyspace.go:481.2,481.12 1 0
github.com/echovault/echovault/echovault/keyspace.go:483.2,483.12 1 0
github.com/echovault/echovault/echovault/modules.go:27.75,30.42 3 1 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: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:31.46,33.4 1 1
@@ -3773,7 +3771,7 @@ 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: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: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:66.137,68.16 2 1
github.com/echovault/echovault/echovault/modules.go:68.16,70.3 1 1 github.com/echovault/echovault/echovault/modules.go:68.16,70.3 1 0
github.com/echovault/echovault/echovault/modules.go:72.2,72.19 1 1 github.com/echovault/echovault/echovault/modules.go:72.2,72.19 1 1
github.com/echovault/echovault/echovault/modules.go:72.19,74.3 1 0 github.com/echovault/echovault/echovault/modules.go:72.19,74.3 1 0
github.com/echovault/echovault/echovault/modules.go:76.2,77.16 2 1 github.com/echovault/echovault/echovault/modules.go:76.2,77.16 2 1

View File

@@ -1,11 +1,17 @@
package echovault package echovault
import ( import (
"bufio"
"crypto/tls"
"crypto/x509"
"fmt" "fmt"
"github.com/echovault/echovault/internal" "github.com/echovault/echovault/internal"
"github.com/tidwall/resp" "github.com/tidwall/resp"
"io"
"math" "math"
"net" "net"
"os"
"path"
"strings" "strings"
"sync" "sync"
"testing" "testing"
@@ -58,6 +64,7 @@ func setupServer(
config := DefaultConfig() config := DefaultConfig()
config.DataDir = "./testdata" config.DataDir = "./testdata"
config.ForwardCommand = true
config.BindAddr = bindAddr config.BindAddr = bindAddr
config.JoinAddr = joinAddr config.JoinAddr = joinAddr
config.Port = uint16(port) config.Port = uint16(port)
@@ -69,7 +76,7 @@ func setupServer(
return NewEchoVault(WithConfig(config)) return NewEchoVault(WithConfig(config))
} }
func MakeCluster(size int) ([]ClientServerPair, error) { func makeCluster(size int) ([]ClientServerPair, error) {
pairs := make([]ClientServerPair, size) pairs := make([]ClientServerPair, size)
for i := 0; i < len(pairs); i++ { for i := 0; i < len(pairs); i++ {
@@ -128,7 +135,7 @@ func MakeCluster(size int) ([]ClientServerPair, error) {
return nil, fmt.Errorf("could not open tcp connection: %v", err) return nil, fmt.Errorf("could not open tcp connection: %v", err)
} }
for { for {
// Wait until connection is no longer nil // Wait until connection is no longer nil.
if conn != nil { if conn != nil {
break break
} }
@@ -151,7 +158,7 @@ func MakeCluster(size int) ([]ClientServerPair, error) {
} }
func Test_ClusterReplication(t *testing.T) { func Test_ClusterReplication(t *testing.T) {
nodes, err := MakeCluster(5) nodes, err := makeCluster(5)
if err != nil { if err != nil {
t.Error(err) t.Error(err)
return return
@@ -222,3 +229,105 @@ func Test_ClusterReplication(t *testing.T) {
} }
} }
} }
func Test_TLS(t *testing.T) {
port, err := internal.GetFreePort()
if err != nil {
t.Error(err)
}
conf := DefaultConfig()
conf.DataDir = ""
conf.BindAddr = "localhost"
conf.Port = uint16(port)
conf.TLS = true
conf.CertKeyPairs = [][]string{
{
path.Join("..", "openssl", "server", "server1.crt"),
path.Join("..", "openssl", "server", "server1.key"),
},
{
path.Join("..", "openssl", "server", "server2.crt"),
path.Join("..", "openssl", "server", "server2.key"),
},
}
server, err := NewEchoVault(WithConfig(conf))
if err != nil {
t.Error(err)
}
wg := sync.WaitGroup{}
wg.Add(1)
go func() {
wg.Done()
server.Start()
}()
wg.Wait()
// Dial with ServerCAs
serverCAs := x509.NewCertPool()
f, err := os.Open(path.Join("..", "openssl", "server", "rootCA.crt"))
if err != nil {
t.Error(err)
}
cert, err := io.ReadAll(bufio.NewReader(f))
if err != nil {
t.Error(err)
}
ok := serverCAs.AppendCertsFromPEM(cert)
if !ok {
t.Error("could not load server CA")
}
conn, err := tls.Dial("tcp", fmt.Sprintf("localhost:%d", port), &tls.Config{
RootCAs: serverCAs,
})
if err != nil {
t.Error(err)
}
for {
// Break out when the connection is no longer nil.
if conn != nil {
break
}
}
client := resp.NewConn(conn)
// Test that we can set and get a value from the server.
key := "key1"
value := "value1"
err = client.WriteArray([]resp.Value{
resp.StringValue("SET"), resp.StringValue(key), resp.StringValue(value),
})
if err != nil {
t.Error(err)
}
res, _, err := client.ReadValue()
if err != nil {
t.Error(err)
}
if !strings.EqualFold(res.String(), "ok") {
t.Errorf("expected response OK, got \"%s\"", res.String())
}
err = client.WriteArray([]resp.Value{resp.StringValue("GET"), resp.StringValue(key)})
if err != nil {
t.Error(err)
}
res, _, err = client.ReadValue()
if err != nil {
t.Error(err)
}
if res.String() != value {
t.Errorf("expected response at key \"%s\" to be \"%s\", got \"%s\"", key, value, res.String())
}
}
func Test_MTLS(t *testing.T) {}