diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md index ebdda09..cbd5c75 100644 --- a/CONTRIBUTING.md +++ b/CONTRIBUTING.md @@ -1,5 +1,5 @@ # Contributing code -- Run `make precommit` +- Run `make precommit` or `make check` if using nix flakes # Dev Install ## Dev Containers diff --git a/Cargo.lock b/Cargo.lock index d25ac3d..5ff69c7 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -2272,9 +2272,9 @@ checksum = "e3148f5046208a5d56bcfc03053e3ca6334e51da8dfb19b6cdc8b306fae3283e" [[package]] name = "pest" -version = "2.7.12" +version = "2.7.13" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9c73c26c01b8c87956cea613c907c9d6ecffd8d18a2a5908e5de0adfaa185cea" +checksum = "fdbef9d1d47087a895abd220ed25eb4ad973a5e26f6a4367b038c25e28dfc2d9" dependencies = [ "memchr", "thiserror", @@ -4125,9 +4125,9 @@ dependencies = [ [[package]] name = "unicode-script" -version = "0.5.6" +version = "0.5.7" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ad8d71f5726e5f285a935e9fe8edfd53f0491eb6e9a5774097fdabee7cd8c9cd" +checksum = "9fb421b350c9aff471779e262955939f565ec18b86c15364e6bdf0d662ca7c1f" [[package]] name = "unicode-security" @@ -4147,9 +4147,9 @@ checksum = "0336d538f7abc86d282a4189614dfaa90810dfc2c6f6427eaf88e16311dd225d" [[package]] name = "unicode-xid" -version = "0.2.5" +version = "0.2.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "229730647fbc343e3a80e463c1db7f78f3855d3f3739bee0dda773c9a037c90a" +checksum = "ebc1c04c71510c7f702b52b7c350734c9ff1295c464a03335b00bb84fc54f853" [[package]] name = "untrusted" diff --git a/Makefile b/Makefile index 92d229e..9da42b0 100644 --- a/Makefile +++ b/Makefile @@ -20,3 +20,10 @@ precommit: cargo fmt cargo t cargo clippy --fix --allow-dirty + +check: + rustup update + cargo update + nix flake update + nix flake check + cargo clippy --fix --allow-dirty diff --git a/docker-compose-surrealdb.dev.yml b/docker-compose-surrealdb.dev.yml index 9be4763..9c7342e 100644 --- a/docker-compose-surrealdb.dev.yml +++ b/docker-compose-surrealdb.dev.yml @@ -11,7 +11,7 @@ services: - $DB_USER - --pass - $DB_PASSWORD - - file:/data/surrealdb + - surrealkv:data/surrealdb restart: always deploy: resources: diff --git a/docker-compose-surrealdb.yml b/docker-compose-surrealdb.yml index 5d1ffbf..1f621fc 100644 --- a/docker-compose-surrealdb.yml +++ b/docker-compose-surrealdb.yml @@ -11,7 +11,7 @@ services: - $DB_USER - --pass - $DB_PASSWORD - - file:/data/surrealdb + - surrealkv:data/surrealdb restart: always deploy: resources: diff --git a/flake.lock b/flake.lock index 29b6fdb..6b16ef9 100644 --- a/flake.lock +++ b/flake.lock @@ -39,11 +39,11 @@ "rust-analyzer-src": [] }, "locked": { - "lastModified": 1726641202, - "narHash": "sha256-NrSmOWnr0bIudOLwXd7UwspaHCGwVp8F0jed+nleWpI=", + "lastModified": 1726727555, + "narHash": "sha256-WAYoFXry7bU3UXCFklX6tBOfBdZUHi+MeIk1JxUKNEo=", "owner": "nix-community", "repo": "fenix", - "rev": "59e6cc52c6242800bb448c5a2b6427bd949385ad", + "rev": "3b974166133158907839fe20147e11696fade644", "type": "github" }, "original": { diff --git a/src/main.rs b/src/main.rs index 39905ef..e2eee8a 100644 --- a/src/main.rs +++ b/src/main.rs @@ -38,7 +38,7 @@ async fn main() -> Result<(), Error> { None::>, reader, Some(pb.clone()), - 1_000, + 100, 1_000, ) .await?; diff --git a/src/utils.rs b/src/utils.rs index bab9afa..b16ceac 100644 --- a/src/utils.rs +++ b/src/utils.rs @@ -75,6 +75,7 @@ impl CreateVersion { tokio::spawn(async move { let mut retries = 0; + loop { match dbo { Some(ref db) => { @@ -93,11 +94,12 @@ impl CreateVersion { } } - if retries >= 60 * 10 { + // Exponential backoff with cap at 60 seconds + if retries == 30 { panic!("Failed to create entities, too many retries"); } + sleep(Duration::from_millis(250) * 2_u32.pow(retries.min(8))).await; retries += 1; - sleep(Duration::from_millis(250)).await; } }) }