Skip to content
Snippets Groups Projects
Commit 766516ce authored by Vecna's avatar Vecna
Browse files

Track memory usage in simulation

parent a19a8bb3
No related branches found
No related tags found
No related merge requests found
Pipeline #174120 failed
......@@ -131,17 +131,6 @@ version = "6.2.3"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "5d5dde061bd34119e902bbb2d9b90c5692635cf59fb91d582c2b68043f1b8293"
[[package]]
name = "async-trait"
version = "0.1.80"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "c6fa2087f2753a7da8cc1c0dbfcf89579dd57458e36769de5ac750b4671737ca"
dependencies = [
"proc-macro2",
"quote",
"syn 2.0.66",
]
[[package]]
name = "atomic-waker"
version = "1.1.2"
......@@ -178,12 +167,6 @@ dependencies = [
"rustc-demangle",
]
[[package]]
name = "base-x"
version = "0.2.11"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "4cbbc9d0964165b47557570cce6c952866c2678457aca742aafc9fb771d30270"
[[package]]
name = "base64"
version = "0.21.7"
......@@ -223,15 +206,6 @@ version = "2.5.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "cf4b9d6a944f767f8e5e0db018570623c85f3d925ac718db4e06d0187adb21c1"
[[package]]
name = "block-buffer"
version = "0.9.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "4152116fd6e9dadb291ae18fc1ec3575ed6d84c29642d97890f4b4a3417297e4"
dependencies = [
"generic-array",
]
[[package]]
name = "block-buffer"
version = "0.10.4"
......@@ -321,7 +295,7 @@ dependencies = [
"anstream",
"anstyle",
"clap_lex",
"strsim 0.11.1",
"strsim",
]
[[package]]
......@@ -373,12 +347,6 @@ version = "0.9.6"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "c2459377285ad874054d797f3ccebf984978aa39129f6eafde5cdc8315b612f8"
[[package]]
name = "const_fn"
version = "0.4.10"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "373e9fafaa20882876db20562275ff58d50e0caa2590077fe7ce7bef90211d0d"
[[package]]
name = "core-foundation"
version = "0.9.4"
......@@ -465,19 +433,6 @@ dependencies = [
"cipher",
]
[[package]]
name = "curve25519-dalek"
version = "3.2.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "0b9fdf9972b2bd6af2d913799d9ebc165ea4d2e65878e329d9c6b372c4491b61"
dependencies = [
"byteorder",
"digest 0.9.0",
"rand_core 0.5.1",
"subtle",
"zeroize",
]
[[package]]
name = "curve25519-dalek"
version = "4.1.2"
......@@ -487,11 +442,11 @@ dependencies = [
"cfg-if",
"cpufeatures",
"curve25519-dalek-derive",
"digest 0.10.7",
"digest",
"fiat-crypto",
"platforms",
"rand_core 0.6.4",
"rustc_version 0.4.0",
"rustc_version",
"serde",
"subtle",
"zeroize",
......@@ -508,52 +463,14 @@ dependencies = [
"syn 2.0.66",
]
[[package]]
name = "curve25519-dalek-ng"
version = "3.0.3"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "3b8dfd4d479156d9ad3fe6d1562f78ff31a9ba8831d3575126061541c7294e48"
dependencies = [
"byteorder",
"digest 0.9.0",
"rand_core 0.5.1",
"serde",
"subtle-ng",
"zeroize",
]
[[package]]
name = "darling"
version = "0.13.4"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "a01d95850c592940db9b8194bc39f4bc0e89dee5c4265e4b1807c34a9aba453c"
dependencies = [
"darling_core 0.13.4",
"darling_macro 0.13.4",
]
[[package]]
name = "darling"
version = "0.20.9"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "83b2eb4d90d12bdda5ed17de686c2acb4c57914f8f921b8da7e112b5a36f3fe1"
dependencies = [
"darling_core 0.20.9",
"darling_macro 0.20.9",
]
[[package]]
name = "darling_core"
version = "0.13.4"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "859d65a907b6852c9361e3185c862aae7fafd2887876799fa55f5f99dc40d610"
dependencies = [
"fnv",
"ident_case",
"proc-macro2",
"quote",
"strsim 0.10.0",
"syn 1.0.109",
"darling_core",
"darling_macro",
]
[[package]]
......@@ -566,28 +483,17 @@ dependencies = [
"ident_case",
"proc-macro2",
"quote",
"strsim 0.11.1",
"strsim",
"syn 2.0.66",
]
[[package]]
name = "darling_macro"
version = "0.13.4"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "9c972679f83bdf9c42bd905396b6c3588a843a17f0f16dfcfa3e2c5d57441835"
dependencies = [
"darling_core 0.13.4",
"quote",
"syn 1.0.109",
]
[[package]]
name = "darling_macro"
version = "0.20.9"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "733cabb43482b1a1b53eee8583c2b9e8684d592215ea83efd305dd31bc2f0178"
dependencies = [
"darling_core 0.20.9",
"darling_core",
"quote",
"syn 2.0.66",
]
......@@ -612,48 +518,23 @@ dependencies = [
"serde",
]
[[package]]
name = "digest"
version = "0.9.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "d3dd60d1080a57a05ab032377049e0591415d2b31afd7028356dbf3cc6dcb066"
dependencies = [
"generic-array",
]
[[package]]
name = "digest"
version = "0.10.7"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "9ed9a281f7bc9b7576e61468ba615a66a5c8cfdff42420a70aa82701a3b1e292"
dependencies = [
"block-buffer 0.10.4",
"block-buffer",
"crypto-common",
"subtle",
]
[[package]]
name = "discard"
version = "1.0.4"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "212d0f5754cb6769937f4501cc0e67f4f4483c8d2c3e1e922ee9edbe4ab4c7c0"
[[package]]
name = "dtoa"
version = "1.0.9"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "dcbb2bf8e87535c23f7a8a321e364ce21462d0ff10cb6407820e8e96dfff6653"
[[package]]
name = "ed25519"
version = "1.5.3"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "91cff35c70bba8a626e3185d8cd48cc11b5437e1a5bcd15b9b5fa3c64b6dfee7"
dependencies = [
"serde",
"signature 1.6.4",
]
[[package]]
name = "ed25519"
version = "2.2.3"
......@@ -662,22 +543,7 @@ checksum = "115531babc129696a58c64a4fef0a8bf9e9698629fb97e9e40767d235cfbcd53"
dependencies = [
"pkcs8",
"serde",
"signature 2.2.0",
]
[[package]]
name = "ed25519-dalek"
version = "1.0.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "c762bae6dcaf24c4c84667b8579785430908723d5c889f469d76a41d59cc7a9d"
dependencies = [
"curve25519-dalek 3.2.0",
"ed25519 1.5.3",
"rand 0.7.3",
"serde",
"serde_bytes",
"sha2 0.9.9",
"zeroize",
"signature",
]
[[package]]
......@@ -686,11 +552,11 @@ version = "2.1.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "4a3daa8e81a3963a60642bcc1f90a670680bd4a77535faa384e9d1c79d620871"
dependencies = [
"curve25519-dalek 4.1.2",
"ed25519 2.2.3",
"curve25519-dalek",
"ed25519",
"rand_core 0.6.4",
"serde",
"sha2 0.10.8",
"sha2",
"subtle",
"zeroize",
]
......@@ -720,16 +586,6 @@ dependencies = [
"windows-sys 0.52.0",
]
[[package]]
name = "faketime"
version = "0.2.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "fdcfc2bfe63c760bba09679ed6cb3a001d409c5195b4490dced0dc0aa800582b"
dependencies = [
"js-sys",
"tempfile",
]
[[package]]
name = "fastrand"
version = "2.1.0"
......@@ -896,15 +752,6 @@ dependencies = [
"version_check",
]
[[package]]
name = "getopts"
version = "0.2.21"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "14dbbfd5c71d70241ecf9e6f13737f7b5ce823821063188d7e46c41d371eebd5"
dependencies = [
"unicode-width",
]
[[package]]
name = "getrandom"
version = "0.1.16"
......@@ -1036,7 +883,7 @@ version = "0.12.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "6c49c37c09c17a53d937dfbb742eb3a961d65a994e6bcdcf37e7399d0cc8ab5e"
dependencies = [
"digest 0.10.7",
"digest",
]
[[package]]
......@@ -1376,7 +1223,7 @@ dependencies = [
"base64 0.22.1",
"chrono",
"clap",
"curve25519-dalek 4.1.2",
"curve25519-dalek",
"futures",
"hex",
"hex_fmt",
......@@ -1384,8 +1231,8 @@ dependencies = [
"julianday",
"lox-library 0.1.0",
"lox-zkp",
"lox_cli",
"lox_utils 0.1.0",
"lox_utils",
"memory-stats",
"prometheus",
"prometheus-client",
"rand 0.8.5",
......@@ -1393,11 +1240,11 @@ dependencies = [
"reqwest",
"serde",
"serde_json",
"serde_with 3.8.1",
"sha1 0.10.6",
"serde_with",
"sha1",
"sled",
"thiserror",
"time 0.3.36",
"time",
"tokio",
"troll-patrol",
]
......@@ -1410,21 +1257,21 @@ dependencies = [
"base64 0.22.1",
"bincode",
"chrono",
"curve25519-dalek 4.1.2",
"ed25519-dalek 2.1.1",
"curve25519-dalek",
"ed25519-dalek",
"hex_fmt",
"lazy_static",
"lox-zkp",
"prometheus",
"rand 0.8.5",
"serde",
"serde_with 3.8.1",
"sha1 0.10.6",
"sha2 0.10.8",
"serde_with",
"sha1",
"sha2",
"statistical",
"subtle",
"thiserror",
"time 0.3.36",
"time",
]
[[package]]
......@@ -1436,21 +1283,21 @@ dependencies = [
"base64 0.22.1",
"bincode",
"chrono",
"curve25519-dalek 4.1.2",
"ed25519-dalek 2.1.1",
"curve25519-dalek",
"ed25519-dalek",
"hex_fmt",
"lazy_static",
"lox-zkp",
"prometheus",
"rand 0.8.5",
"serde",
"serde_with 3.8.1",
"sha1 0.10.6",
"sha2 0.10.8",
"serde_with",
"sha1",
"sha2",
"statistical",
"subtle",
"thiserror",
"time 0.3.36",
"time",
]
[[package]]
......@@ -1465,10 +1312,10 @@ dependencies = [
"lazy_static",
"lox-library 0.1.0",
"lox-zkp",
"lox_utils 0.1.0",
"lox_utils",
"rand 0.7.3",
"serde_json",
"time 0.3.36",
"time",
"wasm-bindgen",
]
......@@ -1477,7 +1324,7 @@ name = "lox-zkp"
version = "0.8.0"
source = "git+https://gitlab.torproject.org/onyinyang/lox-zkp#4ca074986c8e6ded461c2b127bef8f40ee2b7665"
dependencies = [
"curve25519-dalek 4.1.2",
"curve25519-dalek",
"merlin",
"rand 0.8.5",
"serde",
......@@ -1485,25 +1332,6 @@ dependencies = [
"thiserror",
]
[[package]]
name = "lox_cli"
version = "0.1.0"
dependencies = [
"async-trait",
"bincode",
"curve25519-dalek-ng",
"ed25519-dalek 1.0.1",
"getopts",
"hyper 0.14.28",
"lox-library 0.1.0 (git+https://gitlab.torproject.org/vecna/lox.git)",
"lox_utils 0.1.0 (git+https://gitlab.torproject.org/vecna/lox.git)",
"serde",
"serde_json",
"serde_with 1.14.0",
"time 0.2.27",
"tokio",
]
[[package]]
name = "lox_utils"
version = "0.1.0"
......@@ -1514,21 +1342,7 @@ dependencies = [
"rand 0.8.5",
"serde",
"serde_json",
"serde_with 3.8.1",
]
[[package]]
name = "lox_utils"
version = "0.1.0"
source = "git+https://gitlab.torproject.org/vecna/lox.git#69f8fdc1e49744d97db65ef56b0528f272363088"
dependencies = [
"base64 0.22.1",
"chrono",
"lox-library 0.1.0 (git+https://gitlab.torproject.org/vecna/lox.git)",
"rand 0.8.5",
"serde",
"serde_json",
"serde_with 3.8.1",
"serde_with",
]
[[package]]
......@@ -1547,6 +1361,16 @@ version = "2.7.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "6c8640c5d730cb13ebd907d8d04b52f55ac9a2eec55b440c8892f40d56c76c1d"
[[package]]
name = "memory-stats"
version = "1.1.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "34f79cf9964c5c9545493acda1263f1912f8d2c56c8a2ffee2606cb960acaacc"
dependencies = [
"libc",
"winapi",
]
[[package]]
name = "merlin"
version = "3.0.0"
......@@ -1963,12 +1787,6 @@ version = "0.2.17"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "5b40af805b3121feab8a3c29f04d8ad262fa8e0561883e7653e024ae4479e6de"
[[package]]
name = "proc-macro-hack"
version = "0.5.20+deprecated"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "dc375e1527247fe1a97d8b7156678dfe7c1af2fc075c9a4db3690ecd2a148068"
[[package]]
name = "proc-macro2"
version = "1.0.84"
......@@ -2246,7 +2064,7 @@ dependencies = [
"reqwest",
"serde",
"serde_json",
"sha1 0.10.6",
"sha1",
"tokio",
"tokio-stream",
"tokio-util",
......@@ -2333,22 +2151,13 @@ version = "0.1.24"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "719b953e2095829ee67db738b3bfa9fa368c94900df327b3f07fe6e794d2fe1f"
[[package]]
name = "rustc_version"
version = "0.2.3"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "138e3e0acb6c9fb258b19b67cb8abd63c00679d2851805ea151465464fe9030a"
dependencies = [
"semver 0.9.0",
]
[[package]]
name = "rustc_version"
version = "0.4.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "bfa0f585226d2e68097d4f95d113b15b83a82e819ab25717ec0590d9584ef366"
dependencies = [
"semver 1.0.23",
"semver",
]
[[package]]
......@@ -2480,27 +2289,12 @@ dependencies = [
"libc",
]
[[package]]
name = "semver"
version = "0.9.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "1d7eb9ef2c18661902cc47e535f9bc51b78acd254da71d375c2f6720d9a40403"
dependencies = [
"semver-parser",
]
[[package]]
name = "semver"
version = "1.0.23"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "61697e0a1c7e512e84a621326239844a24d8207b4669b41bc18b32ea5cbf988b"
[[package]]
name = "semver-parser"
version = "0.7.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "388a1df253eca08550bef6c72392cfe7c30914bf41df5269b68cbd6ff8f570a3"
[[package]]
name = "serde"
version = "1.0.203"
......@@ -2510,15 +2304,6 @@ dependencies = [
"serde_derive",
]
[[package]]
name = "serde_bytes"
version = "0.11.14"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "8b8497c313fd43ab992087548117643f6fcd935cbf36f176ffda0aacf9591734"
dependencies = [
"serde",
]
[[package]]
name = "serde_derive"
version = "1.0.203"
......@@ -2553,16 +2338,6 @@ dependencies = [
"serde",
]
[[package]]
name = "serde_with"
version = "1.14.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "678b5a069e50bf00ecd22d0cd8ddf7c236f68581b03db652061ed5eb13a312ff"
dependencies = [
"serde",
"serde_with_macros 1.5.2",
]
[[package]]
name = "serde_with"
version = "3.8.1"
......@@ -2577,20 +2352,8 @@ dependencies = [
"serde",
"serde_derive",
"serde_json",
"serde_with_macros 3.8.1",
"time 0.3.36",
]
[[package]]
name = "serde_with_macros"
version = "1.5.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "e182d6ec6f05393cc0e5ed1bf81ad6db3a8feedf8ee515ecdd369809bcce8082"
dependencies = [
"darling 0.13.4",
"proc-macro2",
"quote",
"syn 1.0.109",
"serde_with_macros",
"time",
]
[[package]]
......@@ -2599,21 +2362,12 @@ version = "3.8.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "65569b702f41443e8bc8bbb1c5779bd0450bbe723b56198980e80ec45780bce2"
dependencies = [
"darling 0.20.9",
"darling",
"proc-macro2",
"quote",
"syn 2.0.66",
]
[[package]]
name = "sha1"
version = "0.6.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "c1da05c97445caa12d05e848c4a4fcbbea29e748ac28f7e80e9b010392063770"
dependencies = [
"sha1_smol",
]
[[package]]
name = "sha1"
version = "0.10.6"
......@@ -2622,26 +2376,7 @@ checksum = "e3bf829a2d51ab4a5ddf1352d8470c140cadc8301b2ae1789db023f01cedd6ba"
dependencies = [
"cfg-if",
"cpufeatures",
"digest 0.10.7",
]
[[package]]
name = "sha1_smol"
version = "1.0.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "ae1a47186c03a32177042e55dbc5fd5aee900b8e0069a8d70fba96a9375cd012"
[[package]]
name = "sha2"
version = "0.9.9"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "4d58a1e1bf39749807d89cf2d98ac2dfa0ff1cb3faa38fbb64dd88ac8013d800"
dependencies = [
"block-buffer 0.9.0",
"cfg-if",
"cpufeatures",
"digest 0.9.0",
"opaque-debug",
"digest",
]
[[package]]
......@@ -2652,7 +2387,7 @@ checksum = "793db75ad2bcafc3ffa7c68b215fee268f537982cd901d132f89c6343f3a3dc8"
dependencies = [
"cfg-if",
"cpufeatures",
"digest 0.10.7",
"digest",
]
[[package]]
......@@ -2661,7 +2396,7 @@ version = "0.10.8"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "75872d278a8f37ef87fa0ddbda7802605cb18344497949862c0d4dcb291eba60"
dependencies = [
"digest 0.10.7",
"digest",
"keccak",
]
......@@ -2674,12 +2409,6 @@ dependencies = [
"libc",
]
[[package]]
name = "signature"
version = "1.6.4"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "74233d3b3b2f6d4b006dc19dee745e73e2a6bfb6f93607cd3b02bd5b00797d7c"
[[package]]
name = "signature"
version = "2.2.0"
......@@ -2759,15 +2488,6 @@ dependencies = [
"der",
]
[[package]]
name = "standback"
version = "0.2.17"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "e113fb6f3de07a243d434a56ec6f186dfd51cb08448239fe7bcae73f87ff28ff"
dependencies = [
"version_check",
]
[[package]]
name = "statistical"
version = "1.0.0"
......@@ -2791,61 +2511,6 @@ dependencies = [
"rand 0.8.5",
]
[[package]]
name = "stdweb"
version = "0.4.20"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "d022496b16281348b52d0e30ae99e01a73d737b2f45d38fed4edf79f9325a1d5"
dependencies = [
"discard",
"rustc_version 0.2.3",
"stdweb-derive",
"stdweb-internal-macros",
"stdweb-internal-runtime",
"wasm-bindgen",
]
[[package]]
name = "stdweb-derive"
version = "0.5.3"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "c87a60a40fccc84bef0652345bbbbbe20a605bf5d0ce81719fc476f5c03b50ef"
dependencies = [
"proc-macro2",
"quote",
"serde",
"serde_derive",
"syn 1.0.109",
]
[[package]]
name = "stdweb-internal-macros"
version = "0.2.9"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "58fa5ff6ad0d98d1ffa8cb115892b6e69d67799f6763e162a1c9db421dc22e11"
dependencies = [
"base-x",
"proc-macro2",
"quote",
"serde",
"serde_derive",
"serde_json",
"sha1 0.6.1",
"syn 1.0.109",
]
[[package]]
name = "stdweb-internal-runtime"
version = "0.1.5"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "213701ba3370744dcd1a12960caa4843b3d68b4d1c0a5d575e0d65b2ee9d16c0"
[[package]]
name = "strsim"
version = "0.10.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "73473c0e59e6d5812c5dfe2a064a6444949f089e20eec9a2e5506596494e4623"
[[package]]
name = "strsim"
version = "0.11.1"
......@@ -2858,12 +2523,6 @@ version = "2.5.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "81cdd64d312baedb58e21336b31bc043b77e01cc99033ce76ef539f78e965ebc"
[[package]]
name = "subtle-ng"
version = "2.5.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "734676eb262c623cec13c3155096e08d1f8f29adce39ba17948b18dad1e54142"
[[package]]
name = "syn"
version = "1.0.109"
......@@ -2945,21 +2604,6 @@ dependencies = [
"syn 2.0.66",
]
[[package]]
name = "time"
version = "0.2.27"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "4752a97f8eebd6854ff91f1c1824cd6160626ac4bd44287f7f4ea2035a02a242"
dependencies = [
"const_fn",
"libc",
"standback",
"stdweb",
"time-macros 0.1.1",
"version_check",
"winapi",
]
[[package]]
name = "time"
version = "0.3.36"
......@@ -2972,7 +2616,7 @@ dependencies = [
"powerfmt",
"serde",
"time-core",
"time-macros 0.2.18",
"time-macros",
]
[[package]]
......@@ -2981,16 +2625,6 @@ version = "0.1.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "ef927ca75afb808a4d64dd374f00a2adf8d0fcff8e7b184af886c3c87ec4a3f3"
[[package]]
name = "time-macros"
version = "0.1.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "957e9c6e26f12cb6d0dd7fc776bb67a706312e7299aed74c8dd5b17ebb27e2f1"
dependencies = [
"proc-macro-hack",
"time-macros-impl",
]
[[package]]
name = "time-macros"
version = "0.2.18"
......@@ -3001,19 +2635,6 @@ dependencies = [
"time-core",
]
[[package]]
name = "time-macros-impl"
version = "0.1.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "fd3c141a1b43194f3f56a1411225df8646c55781d5f26db825b3d98507eb482f"
dependencies = [
"proc-macro-hack",
"proc-macro2",
"quote",
"standback",
"syn 1.0.109",
]
[[package]]
name = "tinyvec"
version = "1.6.0"
......@@ -3178,15 +2799,15 @@ dependencies = [
[[package]]
name = "troll-patrol"
version = "0.1.0"
source = "git+https://git-crysp.uwaterloo.ca/vvecna/troll-patrol#18de3f58b012a6141d7ed119a7c62ac614d0af36"
dependencies = [
"aes-gcm",
"array-bytes",
"bincode",
"chrono",
"clap",
"curve25519-dalek 4.1.2",
"ed25519-dalek 2.1.1",
"faketime",
"curve25519-dalek",
"ed25519-dalek",
"futures",
"hkdf",
"http 1.1.0",
......@@ -3197,17 +2818,16 @@ dependencies = [
"julianday",
"lazy_static",
"lox-library 0.1.0 (git+https://gitlab.torproject.org/vecna/lox.git)",
"lox_cli",
"nalgebra",
"rand 0.8.5",
"serde",
"serde_json",
"serde_with 3.8.1",
"sha1 0.10.6",
"serde_with",
"sha1",
"sha3",
"sled",
"statrs",
"time 0.3.36",
"time",
"tokio",
"tokio-cron",
"x25519-dalek",
......@@ -3246,12 +2866,6 @@ dependencies = [
"tinyvec",
]
[[package]]
name = "unicode-width"
version = "0.1.12"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "68f5e5f3158ecfd4b8ff6fe086db7c8467a2dfdac97fe420f2b7c4aa97af66d6"
[[package]]
name = "universal-hash"
version = "0.5.1"
......@@ -3603,7 +3217,7 @@ version = "2.0.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "c7e468321c81fb07fa7f4c636c3972b9100f0346e5b6a9f2bd0603a52f7ed277"
dependencies = [
"curve25519-dalek 4.1.2",
"curve25519-dalek",
"rand_core 0.6.4",
"serde",
"zeroize",
......
......@@ -42,6 +42,8 @@ troll-patrol = { git = "https://git-crysp.uwaterloo.ca/vvecna/troll-patrol", ver
array-bytes = "6.2.0"
sha1 = "0.10"
memory-stats = "1.0.0"
[dependencies.chrono]
version = "0.4.38"
features = ["serde"]
......
......@@ -45,6 +45,9 @@ use tokio::{
time::{interval, sleep},
};
#[cfg(feature = "simulation")]
use memory_stats::memory_stats;
async fn shutdown_signal() {
tokio::signal::ctrl_c()
.await
......@@ -216,6 +219,9 @@ async fn context_manager(
metrics: Metrics,
mut context_rx: mpsc::Receiver<Command>,
) {
#[cfg(feature = "simulation")]
let (mut max_physical_mem, mut max_virtual_mem) = (0, 0);
let (mut lox_db, context) =
match DB::open_new_or_existing_db(db_config, roll_back_date, metrics) {
Ok((lox_db, context)) => (lox_db, context),
......@@ -225,6 +231,18 @@ async fn context_manager(
};
while let Some(cmd) = context_rx.recv().await {
#[cfg(feature = "simulation")]
if let Some(usage) = memory_stats() {
if usage.physical_mem > max_physical_mem {
max_physical_mem = usage.physical_mem;
}
if usage.virtual_mem > max_virtual_mem {
max_virtual_mem = usage.virtual_mem;
}
} else {
println!("Failed to get the current memory usage");
}
use Command::*;
match cmd {
Rdsys { resources } => {
......@@ -267,6 +285,7 @@ async fn context_manager(
lox_db.write_context(context.clone());
sleep(Duration::from_millis(1)).await;
}
#[cfg(feature = "simulation")]
TestRequest { req, sender } => {
let response = test_handle(context.clone(), req).await;
if let Err(e) = sender.send(response) {
......@@ -288,6 +307,11 @@ async fn context_manager(
println!("Sending Shutdown Signal, all threads should shutdown.");
drop(shutdown_sig);
println!("Shutdown Sent.");
#[cfg(feature = "simulation")]
println!(
"\nMaximum physical memory usage: {}\nMaximum virtual memory usage: {}\n",
max_physical_mem, max_virtual_mem
);
}
}
}
......@@ -303,6 +327,7 @@ enum Command {
req: Request<Body>,
sender: oneshot::Sender<Result<Response<Body>, Infallible>>,
},
#[cfg(feature = "simulation")]
TestRequest {
req: Request<Body>,
sender: oneshot::Sender<Result<Response<Body>, Infallible>>,
......@@ -402,6 +427,7 @@ async fn main() {
async move { Ok::<_, Infallible>(service) }
});
#[cfg(feature = "simulation")]
let test_make_service = make_service_fn(move |_conn: &AddrStream| {
let request_tx = test_request_tx.clone();
let service = service_fn(move |req| {
......@@ -441,23 +467,32 @@ async fn main() {
let server = Server::bind(&pub_addr).serve(make_service);
let graceful = server.with_graceful_shutdown(shutdown_signal());
// Address for test commands
let test_addr = SocketAddr::from(([127, 0, 0, 1], config.test_port));
let test_server = Server::bind(&test_addr).serve(test_make_service);
let test_graceful = test_server.with_graceful_shutdown(shutdown_signal());
#[cfg(feature = "simulation")]
let (test_addr, test_graceful) = {
let test_addr = SocketAddr::from(([127, 0, 0, 1], config.test_port));
let test_server = Server::bind(&test_addr).serve(test_make_service);
let test_graceful = test_server.with_graceful_shutdown(shutdown_signal());
(test_addr, test_graceful)
};
// Address for connections from Troll Patrol
let tp_addr = SocketAddr::from(([127, 0, 0, 1], config.troll_patrol_port));
let tp_server = Server::bind(&tp_addr).serve(tp_make_service);
let tp_graceful = tp_server.with_graceful_shutdown(shutdown_signal());
println!("Listening on {}", pub_addr);
#[cfg(feature = "simulation")]
println!("Listening on {}", test_addr);
println!("Listening on {}", tp_addr);
let (a, b, c) = join!(graceful, test_graceful, tp_graceful);
#[cfg(not(feature = "simulation"))]
let (a, b) = join!(graceful, tp_graceful);
#[cfg(feature = "simulation")]
let (a, b, c) = join!(graceful, tp_graceful, test_graceful);
if a.is_err() {
eprintln!("server error: {}", a.unwrap_err());
}
if b.is_err() {
eprintln!("server error: {}", b.unwrap_err());
}
#[cfg(feature = "simulation")]
if c.is_err() {
eprintln!("server error: {}", c.unwrap_err());
}
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment