20260410 完成五个rir 基于cir的三方回放,raw by hash 独立db,发现内存占用大,连续大rir 录制发生oom
This commit is contained in:
@@ -196,7 +196,9 @@ fn rsync_parent_uri(ta_rsync_uri: &str) -> Result<String, String> {
|
||||
.ok_or_else(|| format!("missing path in rsync URI: {ta_rsync_uri}"))?
|
||||
.collect::<Vec<_>>();
|
||||
if segments.is_empty() || segments.last().copied().unwrap_or_default().is_empty() {
|
||||
return Err(format!("rsync URI must reference a file object: {ta_rsync_uri}"));
|
||||
return Err(format!(
|
||||
"rsync URI must reference a file object: {ta_rsync_uri}"
|
||||
));
|
||||
}
|
||||
let parent_segments = &segments[..segments.len() - 1];
|
||||
let mut parent = format!("rsync://{host}/");
|
||||
@@ -248,29 +250,32 @@ mod tests {
|
||||
.clone();
|
||||
|
||||
let td = tempfile::tempdir().unwrap();
|
||||
let mirror_root = td.path().join(rsync_uri.host_str().unwrap()).join("repository");
|
||||
let mirror_root = td
|
||||
.path()
|
||||
.join(rsync_uri.host_str().unwrap())
|
||||
.join("repository");
|
||||
std::fs::create_dir_all(&mirror_root).unwrap();
|
||||
std::fs::write(
|
||||
mirror_root.join("apnic-rpki-root-iana-origin.cer"),
|
||||
ta_der,
|
||||
)
|
||||
.unwrap();
|
||||
std::fs::write(mirror_root.join("apnic-rpki-root-iana-origin.cer"), ta_der).unwrap();
|
||||
|
||||
let http = crate::fetch::http::BlockingHttpFetcher::new(
|
||||
crate::fetch::http::HttpFetcherConfig::default(),
|
||||
)
|
||||
.unwrap();
|
||||
let rsync = LocalDirRsyncFetcher::new(
|
||||
td.path().join(rsync_uri.host_str().unwrap()).join("repository"),
|
||||
td.path()
|
||||
.join(rsync_uri.host_str().unwrap())
|
||||
.join("repository"),
|
||||
);
|
||||
let discovery = discover_root_ca_instance_from_tal_with_fetchers(&http, &rsync, tal, None)
|
||||
.expect("discover via rsync TA");
|
||||
assert!(discovery
|
||||
.trust_anchor
|
||||
.resolved_ta_uri
|
||||
.unwrap()
|
||||
.as_str()
|
||||
.starts_with("rsync://"));
|
||||
assert!(
|
||||
discovery
|
||||
.trust_anchor
|
||||
.resolved_ta_uri
|
||||
.unwrap()
|
||||
.as_str()
|
||||
.starts_with("rsync://")
|
||||
);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user