Skip to content

Commit 9c49461

Browse files
authored
Merge pull request #2401 from Kobzol/remove-benchmark-index-release
Do not use benchmark request index when inserting release artifacts
2 parents fc92f51 + 572ad78 commit 9c49461

File tree

2 files changed

+21
-17
lines changed

2 files changed

+21
-17
lines changed

site/src/job_queue/mod.rs

Lines changed: 20 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -16,6 +16,7 @@ use database::{
1616
};
1717
use parking_lot::RwLock;
1818
use std::sync::Arc;
19+
use std::time::Instant;
1920
use tokio::time::{self, Duration, MissedTickBehavior};
2021

2122
/// Store the latest master commits or do nothing if all of them are
@@ -66,8 +67,9 @@ async fn create_benchmark_request_master_commits(
6667
/// Returns `true` if at least one benchmark request was inserted.
6768
async fn create_benchmark_request_releases(
6869
conn: &dyn database::pool::Connection,
69-
index: &BenchmarkRequestIndex,
7070
) -> anyhow::Result<()> {
71+
log::info!("Checking released artifacts");
72+
7173
let releases: String = reqwest::get("https://static.rust-lang.org/manifests.txt")
7274
.await?
7375
.text()
@@ -80,23 +82,20 @@ async fn create_benchmark_request_releases(
8082
.take(20);
8183

8284
for (name, commit_date) in releases {
83-
if !index.contains_tag(&name) && conn.artifact_by_name(&name).await.is_none() {
84-
let release_request = BenchmarkRequest::create_release(&name, commit_date);
85-
log::info!("Inserting release benchmark request {release_request:?}");
86-
87-
match conn.insert_benchmark_request(&release_request).await {
88-
Ok(BenchmarkRequestInsertResult::NothingInserted) => {
89-
log::error!(
90-
"Failed to insert release benchmark request, release with tag `{name}` already exists"
91-
);
92-
}
93-
Ok(BenchmarkRequestInsertResult::Inserted) => {}
94-
Err(e) => {
95-
log::error!("Failed to insert release benchmark request: {e}");
96-
}
85+
let release_request = BenchmarkRequest::create_release(&name, commit_date);
86+
match conn.insert_benchmark_request(&release_request).await {
87+
Ok(BenchmarkRequestInsertResult::NothingInserted) => {
88+
// Artifact is already recorded in the DB
89+
}
90+
Ok(BenchmarkRequestInsertResult::Inserted) => {
91+
log::info!("Inserted release benchmark request {release_request:?}");
92+
}
93+
Err(e) => {
94+
log::error!("Failed to insert release benchmark request: {e}");
9795
}
9896
}
9997
}
98+
log::info!("Finished checking released artifacts");
10099
Ok(())
101100
}
102101

@@ -461,17 +460,22 @@ async fn perform_queue_tick(ctxt: &SiteCtxt) -> anyhow::Result<()> {
461460
return Ok(());
462461
}
463462

463+
let start = Instant::now();
464464
let index = conn
465465
.load_benchmark_request_index()
466466
.await
467467
.context("Failed to load benchmark request index")?;
468+
log::info!(
469+
"Loading the benchmark request index took {}s",
470+
start.elapsed().as_secs_f64()
471+
);
468472

469473
// Put the master commits into the `benchmark_requests` queue
470474
if let Err(error) = create_benchmark_request_master_commits(ctxt, &*conn, &index).await {
471475
log::error!("Could not insert master benchmark requests into the database: {error:?}");
472476
}
473477
// Put the releases into the `benchmark_requests` queue
474-
if let Err(error) = create_benchmark_request_releases(&*conn, &index).await {
478+
if let Err(error) = create_benchmark_request_releases(&*conn).await {
475479
log::error!("Could not insert release benchmark requests into the database: {error:?}");
476480
}
477481

site/src/main.rs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,7 @@ static ALLOC: jemallocator::Jemalloc = jemallocator::Jemalloc;
1414

1515
#[tokio::main]
1616
async fn main() {
17-
env_logger::init();
17+
env_logger::builder().format_timestamp_millis().init();
1818

1919
#[cfg(unix)]
2020
let _ = jemalloc_ctl::background_thread::write(true);

0 commit comments

Comments
 (0)