Skip to content

Commit

Permalink
SDK tests use a tempdir as STDB_PATH, rather than ~/.spacetime (#348)
Browse files Browse the repository at this point in the history
We've had continual issues with test isolation when developing breaking changes.
This commit doesn't fully address those, but is a step in the right direction:
the SDK tests now create a tempdir as their `STDB_PATH`,
rather than using `~/.spacetime`.
  • Loading branch information
gefjon authored Oct 2, 2023
1 parent b910b45 commit a379874
Show file tree
Hide file tree
Showing 4 changed files with 19 additions and 12 deletions.
15 changes: 6 additions & 9 deletions Cargo.lock

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

2 changes: 1 addition & 1 deletion Cargo.toml
Original file line number Diff line number Diff line change
Expand Up @@ -157,7 +157,7 @@ syntect = { version = "5.0.0", default-features = false, features = [
] }
tabled = "0.8.0"
tempdir = "0.3.7"
tempfile = "3.3"
tempfile = "3.8"
termcolor = "1.2.0"
thiserror = "1.0.37"
tokio = { version = "1.25.1", features = ["full"] }
Expand Down
1 change: 1 addition & 0 deletions crates/testing/Cargo.toml
Original file line number Diff line number Diff line change
Expand Up @@ -19,6 +19,7 @@ duct.workspace = true
lazy_static.workspace = true
rand.workspace = true
prost.workspace = true
tempfile.workspace = true

[dev-dependencies]
serial_test.workspace = true
13 changes: 11 additions & 2 deletions crates/testing/src/sdk.rs
Original file line number Diff line number Diff line change
Expand Up @@ -7,11 +7,20 @@ use std::{collections::HashSet, fs::create_dir_all, sync::Mutex};
use crate::invoke_cli;
use crate::modules::{module_path, CompiledModule};
use std::path::Path;
use tempfile::TempDir;

pub fn ensure_standalone_process() {
lazy_static! {
static ref JOIN_HANDLE: Mutex<Option<JoinHandle<()>>> =
Mutex::new(Some(std::thread::spawn(|| invoke_cli(&["start"]))));
static ref JOIN_HANDLE: Mutex<Option<JoinHandle<()>>> = {
let stdb_path = TempDir::with_prefix("stdb-sdk-test")
.expect("Failed to create tempdir")
// TODO: This leaks the tempdir.
// We need the tempdir to live for the duration of the process,
// and all the options for post-`main` cleanup seem sketchy.
.into_path();
std::env::set_var("STDB_PATH", stdb_path);
Mutex::new(Some(std::thread::spawn(|| invoke_cli(&["start"]))))
};
}

let mut join_handle = JOIN_HANDLE.lock().unwrap();
Expand Down

1 comment on commit a379874

@github-actions
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Benchmark for a379874

Click to view benchmark
Test Base PR %
serialize/location/bsatn/count=100 3.0±0.01µs 31.4 MElem/sec N/A N/A
serialize/location/json/count=100 4.0±0.03µs 23.9 MElem/sec N/A N/A
serialize/location/product_value/count=100 2.8±0.01µs 34.6 MElem/sec N/A N/A
serialize/person/bsatn/count=100 3.4±0.03µs 27.7 MElem/sec N/A N/A
serialize/person/json/count=100 6.2±0.05µs 15.4 MElem/sec N/A N/A
serialize/person/product_value/count=100 1861.7±11.13ns 51.2 MElem/sec N/A N/A
sqlite/disk/empty 511.2±100.05ns 439.4±8.68ns -14.05%
sqlite/disk/filter/string/indexed/load=1000/count=10 7.3±0.04µs 132.9 KElem/sec N/A N/A
sqlite/disk/filter/string/non_indexed/load=1000/count=10 58.1±0.94µs 16.8 KElem/sec N/A N/A
sqlite/disk/filter/u64/indexed/load=1000/count=10 7.2±0.13µs 135.0 KElem/sec N/A N/A
sqlite/disk/filter/u64/non_indexed/load=1000/count=10 44.7±0.15µs 21.9 KElem/sec N/A N/A
sqlite/disk/find_unique/u32/load=1000 3.8±0.06µs 256.6 KElem/sec N/A N/A
sqlite/disk/insert_1/location/multi_index/load=0 31.4±0.50µs 31.1 KElem/sec N/A N/A
sqlite/disk/insert_1/location/multi_index/load=1000 34.8±0.70µs 28.0 KElem/sec N/A N/A
sqlite/disk/insert_1/location/non_unique/load=0 14.7±0.29µs 66.3 KElem/sec N/A N/A
sqlite/disk/insert_1/location/non_unique/load=1000 14.7±0.28µs 66.4 KElem/sec N/A N/A
sqlite/disk/insert_1/location/unique/load=0 14.6±0.15µs 66.8 KElem/sec N/A N/A
sqlite/disk/insert_1/location/unique/load=1000 14.8±0.42µs 66.1 KElem/sec N/A N/A
sqlite/disk/insert_1/person/multi_index/load=0 30.6±0.22µs 31.9 KElem/sec N/A N/A
sqlite/disk/insert_1/person/multi_index/load=1000 37.3±4.50µs 26.2 KElem/sec N/A N/A
sqlite/disk/insert_1/person/non_unique/load=0 14.7±0.41µs 66.3 KElem/sec N/A N/A
sqlite/disk/insert_1/person/non_unique/load=1000 14.8±0.28µs 65.9 KElem/sec N/A N/A
sqlite/disk/insert_1/person/unique/load=0 14.5±0.15µs 67.2 KElem/sec N/A N/A
sqlite/disk/insert_1/person/unique/load=1000 14.9±0.33µs 65.7 KElem/sec N/A N/A
sqlite/disk/insert_bulk/location/multi_index/load=0/count=100 152.0±2.25µs 138.2±3.31µs -9.08%
sqlite/disk/insert_bulk/location/multi_index/load=1000/count=100 270.3±9.27µs 238.9±3.80µs -11.62%
sqlite/disk/insert_bulk/location/non_unique/load=0/count=100 55.5±0.63µs 17.6 KElem/sec N/A N/A
sqlite/disk/insert_bulk/location/non_unique/load=1000/count=100 60.1±0.64µs 16.3 KElem/sec N/A N/A
sqlite/disk/insert_bulk/location/unique/load=0/count=100 57.6±0.54µs 17.0 KElem/sec N/A N/A
sqlite/disk/insert_bulk/location/unique/load=1000/count=100 64.2±1.17µs 15.2 KElem/sec N/A N/A
sqlite/disk/insert_bulk/person/multi_index/load=0/count=100 137.9±1.25µs 130.4±5.24µs -5.44%
sqlite/disk/insert_bulk/person/multi_index/load=1000/count=100 323.4±29.64µs 291.4±5.40µs -9.89%
sqlite/disk/insert_bulk/person/non_unique/load=0/count=100 54.3±3.39µs 18.0 KElem/sec N/A N/A
sqlite/disk/insert_bulk/person/non_unique/load=1000/count=100 78.3±1.55µs 12.5 KElem/sec N/A N/A
sqlite/disk/insert_bulk/person/unique/load=0/count=100 88.7±33.16µs 11.0 KElem/sec N/A N/A
sqlite/disk/insert_bulk/person/unique/load=1000/count=100 62.8±4.36µs 15.6 KElem/sec N/A N/A
sqlite/disk/iterate/location/unique/count=100 10.3±0.18µs 94.6 KElem/sec N/A N/A
sqlite/disk/iterate/person/unique/count=100 11.0±0.18µs 88.8 KElem/sec N/A N/A
sqlite/mem/empty 428.8±9.04ns 435.0±7.12ns +1.45%
sqlite/mem/filter/string/indexed/load=1000/count=10 4.2±0.06µs 233.5 KElem/sec N/A N/A
sqlite/mem/filter/string/non_indexed/load=1000/count=10 51.6±1.06µs 18.9 KElem/sec N/A N/A
sqlite/mem/filter/u64/indexed/load=1000/count=10 4.1±0.14µs 237.5 KElem/sec N/A N/A
sqlite/mem/filter/u64/non_indexed/load=1000/count=10 39.5±0.92µs 24.7 KElem/sec N/A N/A
sqlite/mem/find_unique/u32/load=1000 1137.6±66.20ns 858.4 KElem/sec N/A N/A
sqlite/mem/insert_1/location/multi_index/load=0 4.4±0.11µs 220.6 KElem/sec N/A N/A
sqlite/mem/insert_1/location/multi_index/load=1000 5.6±0.18µs 174.8 KElem/sec N/A N/A
sqlite/mem/insert_1/location/non_unique/load=0 1803.2±42.81ns 541.6 KElem/sec N/A N/A
sqlite/mem/insert_1/location/non_unique/load=1000 1882.8±86.01ns 518.7 KElem/sec N/A N/A
sqlite/mem/insert_1/location/unique/load=0 1780.0±42.78ns 548.6 KElem/sec N/A N/A
sqlite/mem/insert_1/location/unique/load=1000 1978.9±101.15ns 493.5 KElem/sec N/A N/A
sqlite/mem/insert_1/person/multi_index/load=0 4.2±0.08µs 233.1 KElem/sec N/A N/A
sqlite/mem/insert_1/person/multi_index/load=1000 6.5±0.31µs 151.2 KElem/sec N/A N/A
sqlite/mem/insert_1/person/non_unique/load=0 1836.7±50.77ns 531.7 KElem/sec N/A N/A
sqlite/mem/insert_1/person/non_unique/load=1000 2.0±0.09µs 484.2 KElem/sec N/A N/A
sqlite/mem/insert_1/person/unique/load=0 1790.1±35.40ns 545.5 KElem/sec N/A N/A
sqlite/mem/insert_1/person/unique/load=1000 2.0±0.06µs 484.7 KElem/sec N/A N/A
sqlite/mem/insert_bulk/location/multi_index/load=0/count=100 122.2±3.00µs 113.7±1.98µs -6.96%
sqlite/mem/insert_bulk/location/multi_index/load=1000/count=100 172.2±4.24µs 170.4±3.53µs -1.05%
sqlite/mem/insert_bulk/location/non_unique/load=0/count=100 38.2±0.58µs 25.6 KElem/sec N/A N/A
sqlite/mem/insert_bulk/location/non_unique/load=1000/count=100 42.5±1.20µs 23.0 KElem/sec N/A N/A
sqlite/mem/insert_bulk/location/unique/load=0/count=100 40.2±0.46µs 24.3 KElem/sec N/A N/A
sqlite/mem/insert_bulk/location/unique/load=1000/count=100 44.4±0.59µs 22.0 KElem/sec N/A N/A
sqlite/mem/insert_bulk/person/multi_index/load=0/count=100 103.2±1.63µs 104.4±2.69µs +1.16%
sqlite/mem/insert_bulk/person/multi_index/load=1000/count=100 196.6±3.81µs 195.1±3.47µs -0.76%
sqlite/mem/insert_bulk/person/non_unique/load=0/count=100 36.5±0.69µs 26.8 KElem/sec N/A N/A
sqlite/mem/insert_bulk/person/non_unique/load=1000/count=100 42.3±1.09µs 23.1 KElem/sec N/A N/A
sqlite/mem/insert_bulk/person/unique/load=0/count=100 38.9±0.83µs 25.1 KElem/sec N/A N/A
sqlite/mem/insert_bulk/person/unique/load=1000/count=100 44.0±1.43µs 22.2 KElem/sec N/A N/A
sqlite/mem/iterate/location/unique/count=100 7.4±0.18µs 131.3 KElem/sec N/A N/A
sqlite/mem/iterate/person/unique/count=100 7.5±0.13µs 130.3 KElem/sec N/A N/A
stdb_module/disk/empty 32.4±1.34µs 34.5±2.10µs +6.48%
stdb_module/disk/filter/string/indexed/load=1000/count=10 71.4±8.81µs 13.7 KElem/sec N/A N/A
stdb_module/disk/filter/string/non_indexed/load=1000/count=10 155.0±3.83µs 170.8±22.99µs +10.19%
stdb_module/disk/filter/u64/indexed/load=1000/count=10 57.0±7.22µs 17.1 KElem/sec N/A N/A
stdb_module/disk/filter/u64/non_indexed/load=1000/count=10 129.7±2.34µs 130.5±23.27µs +0.62%
stdb_module/disk/find_unique/u32/load=1000 43.6±2.21µs 22.4 KElem/sec N/A N/A
stdb_module/disk/insert_1/location/multi_index/load=0 65.7±4.60µs 14.9 KElem/sec N/A N/A
stdb_module/disk/insert_1/location/multi_index/load=1000 444.6±20.54µs 415.8±27.57µs -6.48%
stdb_module/disk/insert_1/location/non_unique/load=0 58.3±4.36µs 16.8 KElem/sec N/A N/A
stdb_module/disk/insert_1/location/non_unique/load=1000 417.6±26.27µs 343.8±21.54µs -17.67%
stdb_module/disk/insert_1/location/unique/load=0 63.8±3.98µs 15.3 KElem/sec N/A N/A
stdb_module/disk/insert_1/location/unique/load=1000 421.2±26.26µs 327.2±19.18µs -22.32%
stdb_module/disk/insert_1/person/multi_index/load=0 70.0±3.59µs 13.9 KElem/sec N/A N/A
stdb_module/disk/insert_1/person/multi_index/load=1000 534.0±80.50µs 515.2±39.67µs -3.52%
stdb_module/disk/insert_1/person/non_unique/load=0 59.4±7.11µs 16.4 KElem/sec N/A N/A
stdb_module/disk/insert_1/person/non_unique/load=1000 377.0±25.19µs 425.4±60.64µs +12.84%
stdb_module/disk/insert_1/person/unique/load=0 68.9±8.52µs 14.2 KElem/sec N/A N/A
stdb_module/disk/insert_1/person/unique/load=1000 460.5±28.86µs 445.2±31.11µs -3.32%
stdb_module/disk/insert_bulk/location/multi_index/load=0/count=100 928.9±11.66µs 913.3±12.39µs -1.68%
stdb_module/disk/insert_bulk/location/multi_index/load=1000/count=100 1240.7±35.09µs 1340.7±94.37µs +8.06%
stdb_module/disk/insert_bulk/location/non_unique/load=0/count=100 730.3±48.30µs 651.5±39.03µs -10.79%
stdb_module/disk/insert_bulk/location/non_unique/load=1000/count=100 912.3±29.46µs 914.8±51.43µs +0.27%
stdb_module/disk/insert_bulk/location/unique/load=0/count=100 810.9±56.86µs 760.6±9.32µs -6.20%
stdb_module/disk/insert_bulk/location/unique/load=1000/count=100 1109.4±28.45µs 1102.8±33.59µs -0.59%
stdb_module/disk/insert_bulk/person/multi_index/load=0/count=100 1581.4±65.70µs 1606.2±107.62µs +1.57%
stdb_module/disk/insert_bulk/person/multi_index/load=1000/count=100 1984.6±45.72µs 1940.4±51.30µs -2.23%
stdb_module/disk/insert_bulk/person/non_unique/load=0/count=100 946.4±620.29µs 847.5±11.98µs -10.45%
stdb_module/disk/insert_bulk/person/non_unique/load=1000/count=100 1176.1±98.08µs 1121.7±24.45µs -4.63%
stdb_module/disk/insert_bulk/person/unique/load=0/count=100 1059.6±12.14µs 1085.3±20.91µs +2.43%
stdb_module/disk/insert_bulk/person/unique/load=1000/count=100 1490.4±46.76µs 1518.1±61.78µs +1.86%
stdb_module/disk/iterate/location/unique/count=100 149.0±2.23µs 143.4±1.15µs -3.76%
stdb_module/disk/iterate/person/unique/count=100 231.5±4.64µs 226.8±8.71µs -2.03%
stdb_module/large_arguments/64KiB 119.6±2.19µs 113.9±2.35µs -4.77%
stdb_module/mem/empty 32.6±0.93µs 35.9±1.32µs +10.12%
stdb_module/mem/filter/string/indexed/load=1000/count=10 68.9±9.82µs 14.2 KElem/sec N/A N/A
stdb_module/mem/filter/string/non_indexed/load=1000/count=10 158.7±6.11µs 148.9±4.06µs -6.18%
stdb_module/mem/filter/u64/indexed/load=1000/count=10 63.6±4.68µs 15.4 KElem/sec N/A N/A
stdb_module/mem/filter/u64/non_indexed/load=1000/count=10 123.9±10.03µs 122.0±0.96µs -1.53%
stdb_module/mem/find_unique/u32/load=1000 44.6±2.63µs 21.9 KElem/sec N/A N/A
stdb_module/mem/insert_1/location/multi_index/load=0 54.7±4.05µs 17.8 KElem/sec N/A N/A
stdb_module/mem/insert_1/location/multi_index/load=1000 371.3±22.61µs 332.4±23.56µs -10.48%
stdb_module/mem/insert_1/location/non_unique/load=0 48.7±3.63µs 20.0 KElem/sec N/A N/A
stdb_module/mem/insert_1/location/non_unique/load=1000 260.6±18.23µs 253.9±19.19µs -2.57%
stdb_module/mem/insert_1/location/unique/load=0 56.4±5.36µs 17.3 KElem/sec N/A N/A
stdb_module/mem/insert_1/location/unique/load=1000 334.3±28.24µs 340.3±32.52µs +1.79%
stdb_module/mem/insert_1/person/multi_index/load=0 60.7±3.99µs 16.1 KElem/sec N/A N/A
stdb_module/mem/insert_1/person/multi_index/load=1000 484.2±43.75µs 445.6±34.74µs -7.97%
stdb_module/mem/insert_1/person/non_unique/load=0 53.2±6.26µs 18.4 KElem/sec N/A N/A
stdb_module/mem/insert_1/person/non_unique/load=1000 328.0±28.21µs 289.7±22.30µs -11.68%
stdb_module/mem/insert_1/person/unique/load=0 57.4±5.30µs 17.0 KElem/sec N/A N/A
stdb_module/mem/insert_1/person/unique/load=1000 406.0±32.82µs 362.3±19.23µs -10.76%
stdb_module/mem/insert_bulk/location/multi_index/load=0/count=100 803.5±32.35µs 835.4±49.77µs +3.97%
stdb_module/mem/insert_bulk/location/multi_index/load=1000/count=100 1102.4±33.81µs 1089.3±40.95µs -1.19%
stdb_module/mem/insert_bulk/location/non_unique/load=0/count=100 530.3±9.17µs 521.3±8.51µs -1.70%
stdb_module/mem/insert_bulk/location/non_unique/load=1000/count=100 763.6±31.16µs 760.8±22.36µs -0.37%
stdb_module/mem/insert_bulk/location/unique/load=0/count=100 662.4±8.54µs 649.8±11.78µs -1.90%
stdb_module/mem/insert_bulk/location/unique/load=1000/count=100 1009.7±71.22µs 957.9±29.85µs -5.13%
stdb_module/mem/insert_bulk/person/multi_index/load=0/count=100 1442.7±58.82µs 1419.0±16.54µs -1.64%
stdb_module/mem/insert_bulk/person/multi_index/load=1000/count=100 1835.6±52.40µs 1817.6±50.34µs -0.98%
stdb_module/mem/insert_bulk/person/non_unique/load=0/count=100 742.4±6.30µs 743.2±11.36µs +0.11%
stdb_module/mem/insert_bulk/person/non_unique/load=1000/count=100 1022.6±41.49µs 1048.1±20.63µs +2.49%
stdb_module/mem/insert_bulk/person/unique/load=0/count=100 982.6±11.67µs 979.6±16.88µs -0.31%
stdb_module/mem/insert_bulk/person/unique/load=1000/count=100 1380.5±37.57µs 1328.7±40.39µs -3.75%
stdb_module/mem/iterate/location/unique/count=100 146.0±11.81µs 146.5±2.13µs +0.34%
stdb_module/mem/iterate/person/unique/count=100 246.6±13.51µs 240.5±2.58µs -2.47%
stdb_module/print_bulk/lines=1 47.4±5.91µs 48.6±4.41µs +2.53%
stdb_module/print_bulk/lines=100 436.0±9.29µs 451.1±19.49µs +3.46%
stdb_module/print_bulk/lines=1000 4.1±0.06ms 4.1±0.97ms 0.00%
stdb_raw/disk/empty 116.1±9.01ns 103.9±2.23ns -10.51%
stdb_raw/disk/filter/string/indexed/load=1000/count=10 2.8±0.07µs 345.8 KElem/sec N/A N/A
stdb_raw/disk/filter/string/non_indexed/load=1000/count=10 102.1±2.64µs 100.2±1.61µs -1.86%
stdb_raw/disk/filter/u64/indexed/load=1000/count=10 2.6±0.01µs 372.8 KElem/sec N/A N/A
stdb_raw/disk/filter/u64/non_indexed/load=1000/count=10 83.4±0.20µs 11.7 KElem/sec N/A N/A
stdb_raw/disk/find_unique/u32/load=1000 643.8±14.89ns 1516.8 KElem/sec N/A N/A
stdb_raw/disk/insert_1/location/multi_index/load=0 7.8±0.06µs 124.6 KElem/sec N/A N/A
stdb_raw/disk/insert_1/location/multi_index/load=1000 36.2±0.99µs 27.0 KElem/sec N/A N/A
stdb_raw/disk/insert_1/location/non_unique/load=0 5.3±0.04µs 185.0 KElem/sec N/A N/A
stdb_raw/disk/insert_1/location/non_unique/load=1000 23.3±0.59µs 41.8 KElem/sec N/A N/A
stdb_raw/disk/insert_1/location/unique/load=0 6.6±0.10µs 148.7 KElem/sec N/A N/A
stdb_raw/disk/insert_1/location/unique/load=1000 31.3±15.03µs 31.2 KElem/sec N/A N/A
stdb_raw/disk/insert_1/person/multi_index/load=0 12.2±0.21µs 80.1 KElem/sec N/A N/A
stdb_raw/disk/insert_1/person/multi_index/load=1000 36.3±2.09µs 26.9 KElem/sec N/A N/A
stdb_raw/disk/insert_1/person/non_unique/load=0 6.1±0.10µs 160.7 KElem/sec N/A N/A
stdb_raw/disk/insert_1/person/non_unique/load=1000 19.1±0.63µs 51.2 KElem/sec N/A N/A
stdb_raw/disk/insert_1/person/unique/load=0 8.7±0.11µs 112.7 KElem/sec N/A N/A
stdb_raw/disk/insert_1/person/unique/load=1000 31.0±15.31µs 31.5 KElem/sec N/A N/A
stdb_raw/disk/insert_bulk/location/multi_index/load=0/count=100 402.8±1.18µs 376.4±7.10µs -6.55%
stdb_raw/disk/insert_bulk/location/multi_index/load=1000/count=100 475.6±34.93µs 455.5±39.34µs -4.23%
stdb_raw/disk/insert_bulk/location/non_unique/load=0/count=100 181.5±0.88µs 171.6±3.95µs -5.45%
stdb_raw/disk/insert_bulk/location/non_unique/load=1000/count=100 209.3±13.82µs 202.4±12.56µs -3.30%
stdb_raw/disk/insert_bulk/location/unique/load=0/count=100 287.5±6.11µs 277.5±56.91µs -3.48%
stdb_raw/disk/insert_bulk/location/unique/load=1000/count=100 353.3±10.80µs 322.0±9.74µs -8.86%
stdb_raw/disk/insert_bulk/person/multi_index/load=0/count=100 825.4±78.49µs 757.9±13.95µs -8.18%
stdb_raw/disk/insert_bulk/person/multi_index/load=1000/count=100 892.8±17.30µs 909.7±731.97µs +1.89%
stdb_raw/disk/insert_bulk/person/non_unique/load=0/count=100 253.9±1.61µs 239.4±12.65µs -5.71%
stdb_raw/disk/insert_bulk/person/non_unique/load=1000/count=100 278.4±2.40µs 263.2±9.84µs -5.46%
stdb_raw/disk/insert_bulk/person/unique/load=0/count=100 468.6±28.21µs 436.1±23.82µs -6.94%
stdb_raw/disk/insert_bulk/person/unique/load=1000/count=100 525.3±7.29µs 487.7±26.09µs -7.16%
stdb_raw/disk/iterate/location/unique/count=100 7.6±0.05µs 128.5 KElem/sec N/A N/A
stdb_raw/disk/iterate/person/unique/count=100 8.9±0.05µs 109.7 KElem/sec N/A N/A
stdb_raw/mem/empty 106.3±2.55ns 103.7±2.41ns -2.45%
stdb_raw/mem/filter/string/indexed/load=1000/count=10 2.7±0.07µs 368.0 KElem/sec N/A N/A
stdb_raw/mem/filter/string/non_indexed/load=1000/count=10 94.9±1.58µs 10.3 KElem/sec N/A N/A
stdb_raw/mem/filter/u64/indexed/load=1000/count=10 2.5±0.08µs 389.4 KElem/sec N/A N/A
stdb_raw/mem/filter/u64/non_indexed/load=1000/count=10 78.1±2.95µs 12.5 KElem/sec N/A N/A
stdb_raw/mem/find_unique/u32/load=1000 594.3±6.92ns 1643.2 KElem/sec N/A N/A
stdb_raw/mem/insert_1/location/multi_index/load=0 5.0±0.10µs 193.5 KElem/sec N/A N/A
stdb_raw/mem/insert_1/location/multi_index/load=1000 28.4±1.20µs 34.4 KElem/sec N/A N/A
stdb_raw/mem/insert_1/location/non_unique/load=0 2.7±0.05µs 364.9 KElem/sec N/A N/A
stdb_raw/mem/insert_1/location/non_unique/load=1000 19.1±0.48µs 51.2 KElem/sec N/A N/A
stdb_raw/mem/insert_1/location/unique/load=0 3.8±0.14µs 260.4 KElem/sec N/A N/A
stdb_raw/mem/insert_1/location/unique/load=1000 24.9±0.53µs 39.2 KElem/sec N/A N/A
stdb_raw/mem/insert_1/person/multi_index/load=0 8.9±0.21µs 110.0 KElem/sec N/A N/A
stdb_raw/mem/insert_1/person/multi_index/load=1000 27.6±1.85µs 35.4 KElem/sec N/A N/A
stdb_raw/mem/insert_1/person/non_unique/load=0 3.4±0.09µs 286.4 KElem/sec N/A N/A
stdb_raw/mem/insert_1/person/non_unique/load=1000 14.7±0.69µs 66.6 KElem/sec N/A N/A
stdb_raw/mem/insert_1/person/unique/load=0 5.5±0.17µs 177.7 KElem/sec N/A N/A
stdb_raw/mem/insert_1/person/unique/load=1000 21.8±1.00µs 44.9 KElem/sec N/A N/A
stdb_raw/mem/insert_bulk/location/multi_index/load=0/count=100 394.8±11.41µs 373.5±6.91µs -5.40%
stdb_raw/mem/insert_bulk/location/multi_index/load=1000/count=100 435.2±7.86µs 418.2±5.22µs -3.91%
stdb_raw/mem/insert_bulk/location/non_unique/load=0/count=100 166.5±4.43µs 163.0±2.45µs -2.10%
stdb_raw/mem/insert_bulk/location/non_unique/load=1000/count=100 190.5±5.10µs 185.5±2.95µs -2.62%
stdb_raw/mem/insert_bulk/location/unique/load=0/count=100 268.5±15.25µs 253.4±3.87µs -5.62%
stdb_raw/mem/insert_bulk/location/unique/load=1000/count=100 322.7±5.40µs 308.5±5.56µs -4.40%
stdb_raw/mem/insert_bulk/person/multi_index/load=0/count=100 744.0±16.03µs 755.5±26.46µs +1.55%
stdb_raw/mem/insert_bulk/person/multi_index/load=1000/count=100 817.9±73.78µs 820.6±12.46µs +0.33%
stdb_raw/mem/insert_bulk/person/non_unique/load=0/count=100 231.1±4.47µs 230.7±5.44µs -0.17%
stdb_raw/mem/insert_bulk/person/non_unique/load=1000/count=100 255.2±5.03µs 249.3±6.03µs -2.31%
stdb_raw/mem/insert_bulk/person/unique/load=0/count=100 433.5±11.44µs 419.5±6.38µs -3.23%
stdb_raw/mem/insert_bulk/person/unique/load=1000/count=100 486.4±12.10µs 469.4±6.15µs -3.50%
stdb_raw/mem/iterate/location/unique/count=100 7.2±0.22µs 136.1 KElem/sec N/A N/A
stdb_raw/mem/iterate/person/unique/count=100 8.2±0.12µs 118.8 KElem/sec N/A N/A

Please sign in to comment.