mirror of
https://github.com/bytedance/g3.git
synced 2026-05-05 23:41:57 +00:00
g3-resolver: bump MSRV to 1.88
This commit is contained in:
parent
8a38dfc08d
commit
afe2316829
4 changed files with 40 additions and 39 deletions
2
Cargo.lock
generated
2
Cargo.lock
generated
|
|
@ -1436,7 +1436,7 @@ dependencies = [
|
|||
|
||||
[[package]]
|
||||
name = "g3-resolver"
|
||||
version = "0.8.0"
|
||||
version = "0.9.0"
|
||||
dependencies = [
|
||||
"ahash",
|
||||
"anyhow",
|
||||
|
|
|
|||
|
|
@ -223,7 +223,7 @@ g3-macros = { version = "0.1", path = "lib/g3-macros" }
|
|||
g3-msgpack = { version = "0.4", path = "lib/g3-msgpack" }
|
||||
g3-openssl = { version = "0.4", path = "lib/g3-openssl" }
|
||||
g3-redis-client = { version = "0.3", path = "lib/g3-redis-client" }
|
||||
g3-resolver = { version = "0.8", path = "lib/g3-resolver" }
|
||||
g3-resolver = { version = "0.9", path = "lib/g3-resolver" }
|
||||
g3-runtime = { version = "0.4", path = "lib/g3-runtime" }
|
||||
g3-slog-types = { version = "0.2", path = "lib/g3-slog-types" }
|
||||
g3-smtp-proto = { version = "0.2", path = "lib/g3-smtp-proto" }
|
||||
|
|
|
|||
|
|
@ -1,8 +1,9 @@
|
|||
[package]
|
||||
name = "g3-resolver"
|
||||
version = "0.8.0"
|
||||
version = "0.9.0"
|
||||
license.workspace = true
|
||||
edition.workspace = true
|
||||
rust-version.workspace = true
|
||||
|
||||
# See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html
|
||||
|
||||
|
|
@ -10,7 +11,7 @@ edition.workspace = true
|
|||
anyhow.workspace = true
|
||||
thiserror.workspace = true
|
||||
tokio = { workspace = true, features = ["rt", "sync", "time", "macros"] }
|
||||
tokio-util = { workspace = true, features = ["time"]}
|
||||
tokio-util = { workspace = true, features = ["time"] }
|
||||
log.workspace = true
|
||||
indexmap.workspace = true
|
||||
ahash.workspace = true
|
||||
|
|
@ -18,7 +19,7 @@ c-ares = { workspace = true, optional = true, features = ["build-cmake"] }
|
|||
c-ares-resolver = { workspace = true, optional = true }
|
||||
c-ares-sys = { workspace = true, optional = true } # for DEP_ version check
|
||||
hickory-client = { workspace = true, optional = true }
|
||||
hickory-proto = { workspace = true, optional = true, features = ["tokio"] }
|
||||
hickory-proto = { workspace = true, optional = true, features = ["tokio"] }
|
||||
rustls = { workspace = true, optional = true }
|
||||
rustls-pki-types = { workspace = true, optional = true }
|
||||
flume = { workspace = true, optional = true, features = ["async"] }
|
||||
|
|
|
|||
|
|
@ -146,13 +146,13 @@ impl ResolverRuntime {
|
|||
self.trash_v4.remove(&record.domain);
|
||||
}
|
||||
let record = Arc::new(record);
|
||||
if let Some(mut vec) = self.doing_v4.remove(&record.domain) {
|
||||
if let Some(sender) = vec.pop() {
|
||||
let _ = sender.send((Arc::clone(&record), ResolvedRecordSource::Query));
|
||||
self.stats.query_a.add_query_cached_n(vec.len());
|
||||
for sender in vec.into_iter() {
|
||||
let _ = sender.send((Arc::clone(&record), ResolvedRecordSource::Cache));
|
||||
}
|
||||
if let Some(mut vec) = self.doing_v4.remove(&record.domain)
|
||||
&& let Some(sender) = vec.pop()
|
||||
{
|
||||
let _ = sender.send((Arc::clone(&record), ResolvedRecordSource::Query));
|
||||
self.stats.query_a.add_query_cached_n(vec.len());
|
||||
for sender in vec.into_iter() {
|
||||
let _ = sender.send((Arc::clone(&record), ResolvedRecordSource::Cache));
|
||||
}
|
||||
}
|
||||
if let Some(expire_at) = record.expire {
|
||||
|
|
@ -175,13 +175,13 @@ impl ResolverRuntime {
|
|||
self.trash_v6.remove(&record.domain);
|
||||
}
|
||||
let record = Arc::new(record);
|
||||
if let Some(mut vec) = self.doing_v6.remove(&record.domain) {
|
||||
if let Some(sender) = vec.pop() {
|
||||
let _ = sender.send((Arc::clone(&record), ResolvedRecordSource::Query));
|
||||
self.stats.query_aaaa.add_query_cached_n(vec.len());
|
||||
for sender in vec.into_iter() {
|
||||
let _ = sender.send((Arc::clone(&record), ResolvedRecordSource::Cache));
|
||||
}
|
||||
if let Some(mut vec) = self.doing_v6.remove(&record.domain)
|
||||
&& let Some(sender) = vec.pop()
|
||||
{
|
||||
let _ = sender.send((Arc::clone(&record), ResolvedRecordSource::Query));
|
||||
self.stats.query_aaaa.add_query_cached_n(vec.len());
|
||||
for sender in vec.into_iter() {
|
||||
let _ = sender.send((Arc::clone(&record), ResolvedRecordSource::Cache));
|
||||
}
|
||||
}
|
||||
if let Some(expire_at) = record.expire {
|
||||
|
|
@ -193,30 +193,30 @@ impl ResolverRuntime {
|
|||
|
||||
fn handle_expired_v4(&mut self, domain: &str) {
|
||||
trace!("clean expired v4 for domain {domain}");
|
||||
if let Some(r) = self.cache_v4.remove(domain) {
|
||||
if let Some(vanish_at) = r.inner.vanish {
|
||||
self.trash_v4.insert(
|
||||
r.inner.domain.clone(),
|
||||
TrashedRecord {
|
||||
inner: r.inner,
|
||||
vanish_at,
|
||||
},
|
||||
);
|
||||
}
|
||||
if let Some(r) = self.cache_v4.remove(domain)
|
||||
&& let Some(vanish_at) = r.inner.vanish
|
||||
{
|
||||
self.trash_v4.insert(
|
||||
r.inner.domain.clone(),
|
||||
TrashedRecord {
|
||||
inner: r.inner,
|
||||
vanish_at,
|
||||
},
|
||||
);
|
||||
}
|
||||
}
|
||||
fn handle_expired_v6(&mut self, domain: &str) {
|
||||
trace!("clean expired v6 for domain {domain}");
|
||||
if let Some(r) = self.cache_v6.remove(domain) {
|
||||
if let Some(vanish_at) = r.inner.vanish {
|
||||
self.trash_v6.insert(
|
||||
r.inner.domain.clone(),
|
||||
TrashedRecord {
|
||||
inner: r.inner,
|
||||
vanish_at,
|
||||
},
|
||||
);
|
||||
}
|
||||
if let Some(r) = self.cache_v6.remove(domain)
|
||||
&& let Some(vanish_at) = r.inner.vanish
|
||||
{
|
||||
self.trash_v6.insert(
|
||||
r.inner.domain.clone(),
|
||||
TrashedRecord {
|
||||
inner: r.inner,
|
||||
vanish_at,
|
||||
},
|
||||
);
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue