You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@iceberg.apache.org by gi...@apache.org on 2024/12/14 12:06:02 UTC
(iceberg-rust) branch gh-pages updated: deploy: 748d37c8d552d3d001fe884699307f1522602961
This is an automated email from the ASF dual-hosted git repository.
github-bot pushed a commit to branch gh-pages
in repository https://gitbox.apache.org/repos/asf/iceberg-rust.git
The following commit(s) were added to refs/heads/gh-pages by this push:
new 1040440d deploy: 748d37c8d552d3d001fe884699307f1522602961
1040440d is described below
commit 1040440d95ef245a20afb79146521a06dfa2e53f
Author: liurenjie1024 <li...@users.noreply.github.com>
AuthorDate: Sat Dec 14 12:05:57 2024 +0000
deploy: 748d37c8d552d3d001fe884699307f1522602961
---
api/help.html | 2 +-
api/settings.html | 2 +-
api/src/iceberg/io/object_cache.rs.html | 18 +++++-
api/src/iceberg_catalog_rest/client.rs.html | 98 ++++++++++++++++++++++++++---
4 files changed, 108 insertions(+), 12 deletions(-)
diff --git a/api/help.html b/api/help.html
index b3855f23..886bccc7 100644
--- a/api/help.html
+++ b/api/help.html
@@ -1 +1 @@
-<!DOCTYPE html><html lang="en"><head><meta charset="utf-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><meta name="generator" content="rustdoc"><meta name="description" content="Documentation for Rustdoc"><title>Help</title><script>if(window.location.protocol!=="file:")document.head.insertAdjacentHTML("beforeend","SourceSerif4-Regular-46f98efaafac5295.ttf.woff2,FiraSans-Regular-018c141bf0843ffd.woff2,FiraSans-Medium-8f9a781e4970d388.woff2,SourceCodePro-Regular-5 [...]
\ No newline at end of file
+<!DOCTYPE html><html lang="en"><head><meta charset="utf-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><meta name="generator" content="rustdoc"><meta name="description" content="Documentation for Rustdoc"><title>Help</title><script>if(window.location.protocol!=="file:")document.head.insertAdjacentHTML("beforeend","SourceSerif4-Regular-46f98efaafac5295.ttf.woff2,FiraSans-Regular-018c141bf0843ffd.woff2,FiraSans-Medium-8f9a781e4970d388.woff2,SourceCodePro-Regular-5 [...]
\ No newline at end of file
diff --git a/api/settings.html b/api/settings.html
index 0b4d7eab..430a9162 100644
--- a/api/settings.html
+++ b/api/settings.html
@@ -1 +1 @@
-<!DOCTYPE html><html lang="en"><head><meta charset="utf-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><meta name="generator" content="rustdoc"><meta name="description" content="Settings of Rustdoc"><title>Settings</title><script>if(window.location.protocol!=="file:")document.head.insertAdjacentHTML("beforeend","SourceSerif4-Regular-46f98efaafac5295.ttf.woff2,FiraSans-Regular-018c141bf0843ffd.woff2,FiraSans-Medium-8f9a781e4970d388.woff2,SourceCodePro-Regular-562 [...]
\ No newline at end of file
+<!DOCTYPE html><html lang="en"><head><meta charset="utf-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><meta name="generator" content="rustdoc"><meta name="description" content="Settings of Rustdoc"><title>Settings</title><script>if(window.location.protocol!=="file:")document.head.insertAdjacentHTML("beforeend","SourceSerif4-Regular-46f98efaafac5295.ttf.woff2,FiraSans-Regular-018c141bf0843ffd.woff2,FiraSans-Medium-8f9a781e4970d388.woff2,SourceCodePro-Regular-562 [...]
\ No newline at end of file
diff --git a/api/src/iceberg/io/object_cache.rs.html b/api/src/iceberg/io/object_cache.rs.html
index f3f9014d..09fa6659 100644
--- a/api/src/iceberg/io/object_cache.rs.html
+++ b/api/src/iceberg/io/object_cache.rs.html
@@ -399,6 +399,14 @@
<a href="#399" id="399">399</a>
<a href="#400" id="400">400</a>
<a href="#401" id="401">401</a>
+<a href="#402" id="402">402</a>
+<a href="#403" id="403">403</a>
+<a href="#404" id="404">404</a>
+<a href="#405" id="405">405</a>
+<a href="#406" id="406">406</a>
+<a href="#407" id="407">407</a>
+<a href="#408" id="408">408</a>
+<a href="#409" id="409">409</a>
</pre></div><pre class="rust"><code><span class="comment">// Licensed to the Apache Software Foundation (ASF) under one
// or more contributor license agreements. See the NOTICE file
// distributed with this work for additional information
@@ -542,7 +550,15 @@
.entry_by_ref(<span class="kw-2">&</span>key)
.or_try_insert_with(<span class="self">self</span>.fetch_and_parse_manifest_list(snapshot, table_metadata))
.<span class="kw">await
- </span>.map_err(|err| Error::new(ErrorKind::Unexpected, err.as_ref().message()))<span class="question-mark">?
+ </span>.map_err(|err| {
+ Arc::try_unwrap(err).unwrap_or_else(|err| {
+ Error::new(
+ ErrorKind::Unexpected,
+ <span class="string">"Failed to load manifest list in cache"</span>,
+ )
+ .with_source(err)
+ })
+ })<span class="question-mark">?
</span>.into_value();
<span class="kw">match </span>cache_entry {
diff --git a/api/src/iceberg_catalog_rest/client.rs.html b/api/src/iceberg_catalog_rest/client.rs.html
index cac29afe..998577f3 100644
--- a/api/src/iceberg_catalog_rest/client.rs.html
+++ b/api/src/iceberg_catalog_rest/client.rs.html
@@ -275,6 +275,46 @@
<a href="#275" id="275">275</a>
<a href="#276" id="276">276</a>
<a href="#277" id="277">277</a>
+<a href="#278" id="278">278</a>
+<a href="#279" id="279">279</a>
+<a href="#280" id="280">280</a>
+<a href="#281" id="281">281</a>
+<a href="#282" id="282">282</a>
+<a href="#283" id="283">283</a>
+<a href="#284" id="284">284</a>
+<a href="#285" id="285">285</a>
+<a href="#286" id="286">286</a>
+<a href="#287" id="287">287</a>
+<a href="#288" id="288">288</a>
+<a href="#289" id="289">289</a>
+<a href="#290" id="290">290</a>
+<a href="#291" id="291">291</a>
+<a href="#292" id="292">292</a>
+<a href="#293" id="293">293</a>
+<a href="#294" id="294">294</a>
+<a href="#295" id="295">295</a>
+<a href="#296" id="296">296</a>
+<a href="#297" id="297">297</a>
+<a href="#298" id="298">298</a>
+<a href="#299" id="299">299</a>
+<a href="#300" id="300">300</a>
+<a href="#301" id="301">301</a>
+<a href="#302" id="302">302</a>
+<a href="#303" id="303">303</a>
+<a href="#304" id="304">304</a>
+<a href="#305" id="305">305</a>
+<a href="#306" id="306">306</a>
+<a href="#307" id="307">307</a>
+<a href="#308" id="308">308</a>
+<a href="#309" id="309">309</a>
+<a href="#310" id="310">310</a>
+<a href="#311" id="311">311</a>
+<a href="#312" id="312">312</a>
+<a href="#313" id="313">313</a>
+<a href="#314" id="314">314</a>
+<a href="#315" id="315">315</a>
+<a href="#316" id="316">316</a>
+<a href="#317" id="317">317</a>
</pre></div><pre class="rust"><code><span class="comment">// Licensed to the Apache Software Foundation (ASF) under one
// or more contributor license agreements. See the NOTICE file
// distributed with this work for additional information
@@ -411,28 +451,39 @@
.request(Method::POST, <span class="kw-2">&</span><span class="self">self</span>.token_endpoint)
.form(<span class="kw-2">&</span>params)
.build()<span class="question-mark">?</span>;
+ <span class="kw">let </span>auth_url = auth_req.url().clone();
<span class="kw">let </span>auth_resp = <span class="self">self</span>.client.execute(auth_req).<span class="kw">await</span><span class="question-mark">?</span>;
<span class="kw">let </span>auth_res: TokenResponse = <span class="kw">if </span>auth_resp.status().as_u16() == OK {
- <span class="kw">let </span>text = auth_resp.bytes().<span class="kw">await</span><span class="question-mark">?</span>;
+ <span class="kw">let </span>text = auth_resp
+ .bytes()
+ .<span class="kw">await
+ </span>.map_err(|err| err.with_url(auth_url.clone()))<span class="question-mark">?</span>;
<span class="prelude-val">Ok</span>(serde_json::from_slice(<span class="kw-2">&</span>text).map_err(|e| {
Error::new(
ErrorKind::Unexpected,
<span class="string">"Failed to parse response from rest catalog server!"</span>,
)
+ .with_context(<span class="string">"operation"</span>, <span class="string">"auth"</span>)
+ .with_context(<span class="string">"url"</span>, auth_url.to_string())
.with_context(<span class="string">"json"</span>, String::from_utf8_lossy(<span class="kw-2">&</span>text))
.with_source(e)
})<span class="question-mark">?</span>)
} <span class="kw">else </span>{
<span class="kw">let </span>code = auth_resp.status();
- <span class="kw">let </span>text = auth_resp.bytes().<span class="kw">await</span><span class="question-mark">?</span>;
+ <span class="kw">let </span>text = auth_resp
+ .bytes()
+ .<span class="kw">await
+ </span>.map_err(|err| err.with_url(auth_url.clone()))<span class="question-mark">?</span>;
<span class="kw">let </span>e: ErrorResponse = serde_json::from_slice(<span class="kw-2">&</span>text).map_err(|e| {
Error::new(
ErrorKind::Unexpected,
<span class="string">"Failed to parse response from rest catalog server!"</span>,
)
- .with_context(<span class="string">"json"</span>, String::from_utf8_lossy(<span class="kw-2">&</span>text))
.with_context(<span class="string">"code"</span>, code.to_string())
+ .with_context(<span class="string">"operation"</span>, <span class="string">"auth"</span>)
+ .with_context(<span class="string">"url"</span>, auth_url.to_string())
+ .with_context(<span class="string">"json"</span>, String::from_utf8_lossy(<span class="kw-2">&</span>text))
.with_source(e)
})<span class="question-mark">?</span>;
<span class="prelude-val">Err</span>(Error::from(e))
@@ -470,28 +521,41 @@
) -> <span class="prelude-ty">Result</span><R> {
<span class="self">self</span>.authenticate(<span class="kw-2">&mut </span>request).<span class="kw">await</span><span class="question-mark">?</span>;
+ <span class="kw">let </span>method = request.method().clone();
+ <span class="kw">let </span>url = request.url().clone();
+
<span class="kw">let </span>resp = <span class="self">self</span>.client.execute(request).<span class="kw">await</span><span class="question-mark">?</span>;
<span class="kw">if </span>resp.status().as_u16() == SUCCESS_CODE {
- <span class="kw">let </span>text = resp.bytes().<span class="kw">await</span><span class="question-mark">?</span>;
+ <span class="kw">let </span>text = resp
+ .bytes()
+ .<span class="kw">await
+ </span>.map_err(|err| err.with_url(url.clone()))<span class="question-mark">?</span>;
<span class="prelude-val">Ok</span>(serde_json::from_slice::<R>(<span class="kw-2">&</span>text).map_err(|e| {
Error::new(
ErrorKind::Unexpected,
<span class="string">"Failed to parse response from rest catalog server!"</span>,
)
+ .with_context(<span class="string">"method"</span>, method.to_string())
+ .with_context(<span class="string">"url"</span>, url.to_string())
.with_context(<span class="string">"json"</span>, String::from_utf8_lossy(<span class="kw-2">&</span>text))
.with_source(e)
})<span class="question-mark">?</span>)
} <span class="kw">else </span>{
<span class="kw">let </span>code = resp.status();
- <span class="kw">let </span>text = resp.bytes().<span class="kw">await</span><span class="question-mark">?</span>;
+ <span class="kw">let </span>text = resp
+ .bytes()
+ .<span class="kw">await
+ </span>.map_err(|err| err.with_url(url.clone()))<span class="question-mark">?</span>;
<span class="kw">let </span>e = serde_json::from_slice::<E>(<span class="kw-2">&</span>text).map_err(|e| {
Error::new(
ErrorKind::Unexpected,
<span class="string">"Failed to parse response from rest catalog server!"</span>,
)
- .with_context(<span class="string">"json"</span>, String::from_utf8_lossy(<span class="kw-2">&</span>text))
.with_context(<span class="string">"code"</span>, code.to_string())
+ .with_context(<span class="string">"method"</span>, method.to_string())
+ .with_context(<span class="string">"url"</span>, url.to_string())
+ .with_context(<span class="string">"json"</span>, String::from_utf8_lossy(<span class="kw-2">&</span>text))
.with_source(e)
})<span class="question-mark">?</span>;
<span class="prelude-val">Err</span>(e.into())
@@ -504,20 +568,28 @@
) -> <span class="prelude-ty">Result</span><()> {
<span class="self">self</span>.authenticate(<span class="kw-2">&mut </span>request).<span class="kw">await</span><span class="question-mark">?</span>;
+ <span class="kw">let </span>method = request.method().clone();
+ <span class="kw">let </span>url = request.url().clone();
+
<span class="kw">let </span>resp = <span class="self">self</span>.client.execute(request).<span class="kw">await</span><span class="question-mark">?</span>;
<span class="kw">if </span>resp.status().as_u16() == SUCCESS_CODE {
<span class="prelude-val">Ok</span>(())
} <span class="kw">else </span>{
<span class="kw">let </span>code = resp.status();
- <span class="kw">let </span>text = resp.bytes().<span class="kw">await</span><span class="question-mark">?</span>;
+ <span class="kw">let </span>text = resp
+ .bytes()
+ .<span class="kw">await
+ </span>.map_err(|err| err.with_url(url.clone()))<span class="question-mark">?</span>;
<span class="kw">let </span>e = serde_json::from_slice::<E>(<span class="kw-2">&</span>text).map_err(|e| {
Error::new(
ErrorKind::Unexpected,
<span class="string">"Failed to parse response from rest catalog server!"</span>,
)
- .with_context(<span class="string">"json"</span>, String::from_utf8_lossy(<span class="kw-2">&</span>text))
.with_context(<span class="string">"code"</span>, code.to_string())
+ .with_context(<span class="string">"method"</span>, method.to_string())
+ .with_context(<span class="string">"url"</span>, url.to_string())
+ .with_context(<span class="string">"json"</span>, String::from_utf8_lossy(<span class="kw-2">&</span>text))
.with_source(e)
})<span class="question-mark">?</span>;
<span class="prelude-val">Err</span>(e.into())
@@ -532,19 +604,27 @@
) -> <span class="prelude-ty">Result</span><R> {
<span class="self">self</span>.authenticate(<span class="kw-2">&mut </span>request).<span class="kw">await</span><span class="question-mark">?</span>;
+ <span class="kw">let </span>method = request.method().clone();
+ <span class="kw">let </span>url = request.url().clone();
+
<span class="kw">let </span>resp = <span class="self">self</span>.client.execute(request).<span class="kw">await</span><span class="question-mark">?</span>;
<span class="kw">if let </span><span class="prelude-val">Some</span>(ret) = handler(<span class="kw-2">&</span>resp) {
<span class="prelude-val">Ok</span>(ret)
} <span class="kw">else </span>{
<span class="kw">let </span>code = resp.status();
- <span class="kw">let </span>text = resp.bytes().<span class="kw">await</span><span class="question-mark">?</span>;
+ <span class="kw">let </span>text = resp
+ .bytes()
+ .<span class="kw">await
+ </span>.map_err(|err| err.with_url(url.clone()))<span class="question-mark">?</span>;
<span class="kw">let </span>e = serde_json::from_slice::<E>(<span class="kw-2">&</span>text).map_err(|e| {
Error::new(
ErrorKind::Unexpected,
<span class="string">"Failed to parse response from rest catalog server!"</span>,
)
.with_context(<span class="string">"code"</span>, code.to_string())
+ .with_context(<span class="string">"method"</span>, method.to_string())
+ .with_context(<span class="string">"url"</span>, url.to_string())
.with_context(<span class="string">"json"</span>, String::from_utf8_lossy(<span class="kw-2">&</span>text))
.with_source(e)
})<span class="question-mark">?</span>;