Files
greptimedb/mito2/read/scan_region/fn.exact_sequence_range.html
T

20 lines
5.2 KiB
HTML
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
<!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="Selects the SST files for a scan and, when requested, determines whether the selected files support an exact sequence-range scan."><title>exact_sequence_range in mito2::read::scan_region - Rust</title><script>if(window.location.protocol!=="file:")document.head.insertAdjacentHTML("beforeend","SourceSerif4-Regular-6b053e98.ttf.woff2,FiraSans-Italic-81dc35de.woff2,FiraSans-Regular-0fe48ade.woff2,FiraSans-MediumItalic-ccf7e434.woff2,FiraSans-Medium-e1aa3f0a.woff2,SourceCodePro-Regular-8badfe75.ttf.woff2,SourceCodePro-Semibold-aa29a496.ttf.woff2".split(",").map(f=>`<link rel="preload" as="font" type="font/woff2"href="../../../static.files/${f}">`).join(""))</script><link rel="stylesheet" href="../../../static.files/normalize-9960930a.css"><link rel="stylesheet" href="../../../static.files/rustdoc-1ed95124.css"><meta name="rustdoc-vars" data-root-path="../../../" data-static-root-path="../../../static.files/" data-current-crate="mito2" data-themes="" data-resource-suffix="" data-rustdoc-version="1.98.1 (48a229cea 2026-09-01)" data-channel="1.98.1" data-search-js="search-9944d736.js" data-stringdex-js="stringdex-2da4960a.js" data-settings-js="settings-170eb4bf.js" ><script src="../../../static.files/storage-41dd4d93.js"></script><script defer src="sidebar-items.js"></script><script defer src="../../../static.files/main-417ebf0a.js"></script><noscript><link rel="stylesheet" href="../../../static.files/noscript-f7c3ffd8.css"></noscript><link rel="alternate icon" type="image/png" href="../../../static.files/favicon-32x32-eab170b8.png"><link rel="icon" type="image/svg+xml" href="../../../static.files/favicon-044be391.svg"></head><body class="rustdoc fn"><a class="skip-main-content" href="#main-content">Skip to main content</a><!--[if lte IE 11]><div class="warning">This old browser is unsupported and will most likely display funky things.</div><![endif]--><rustdoc-topbar><h2><a href="#">exact_sequence_range</a></h2></rustdoc-topbar><nav class="sidebar"><div class="sidebar-crate"><h2><a href="../../../mito2/index.html">mito2</a><span class="version">1.4.0-alpha.0</span></h2></div><div class="sidebar-elems"><div id="rustdoc-modnav"><h2><a href="index.html">In mito2::<wbr>read::<wbr>scan_<wbr>region</a></h2></div></div></nav><div class="sidebar-resizer" title="Drag to resize sidebar"></div><main><div class="width-limiter"><section id="main-content" class="content" tabindex="-1"><div class="main-heading"><div class="rustdoc-breadcrumbs"><a href="../../index.html">mito2</a>::<wbr><a href="../index.html">read</a>::<wbr><a href="index.html">scan_region</a></div><h1>Function <span class="fn">exact_<wbr>sequence_<wbr>range</span>&nbsp;<button id="copy-path" title="Copy item path to clipboard">Copy item path</button></h1><rustdoc-toolbar></rustdoc-toolbar><span class="sub-heading"><a class="src" href="../../../src/mito2/read/scan_region.rs.html#1870-1949">Source</a> </span></div><pre class="rust item-decl"><code>pub(crate) fn exact_sequence_range(
request: &amp;ScanRequest,
version: &amp;<a class="struct" href="../../region/version/struct.Version.html" title="struct mito2::region::version::Version">Version</a>,
) -&gt; <a class="type" href="../../error/type.Result.html" title="type mito2::error::Result">Result</a>&lt;(<a class="struct" href="https://doc.rust-lang.org/1.98.1/alloc/vec/struct.Vec.html" title="struct alloc::vec::Vec">Vec</a>&lt;<a class="struct" href="../../sst/file/struct.FileHandle.html" title="struct mito2::sst::file::FileHandle">FileHandle</a>&gt;, <a class="enum" href="https://doc.rust-lang.org/1.98.1/core/option/enum.Option.html" title="enum core::option::Option">Option</a>&lt;SequenceRange&gt;)&gt;</code></pre><details class="toggle top-doc" open><summary class="hideme"><span>Expand description</span></summary><div class="docblock"><p>Selects the SST files for a scan and, when requested, determines whether
the selected files support an exact sequence-range scan.</p>
<p>Files excluded by the request time range are not selected: <code>(C, H]</code> rows are
a subset of the query’s time-range rows, so a time-pruned file cannot
contribute a row to <code>(C, H]</code>.</p>
<p>Unmarked local files use <code>FileMeta.sequence</code> as an admission barrier rather
than a row maximum. Region edits allocate this barrier; compaction inherits
the maximum input bound without assigning a new barrier. <code>C &gt;= barrier</code>
proves Flow has already consumed the entire file, so such a file is excluded
before the capability check. An unknown bound cannot prove this exclusion.</p>
<p>A foreign file is different: the parquet reader virtualizes every row to its
target-local <code>FileMeta.sequence</code>. Consequently, a present sequence is the
only trust requirement for a foreign file; its source marker is irrelevant.
A foreign file without that barrier is retained as a failed-closed error so
it cannot be mistaken for a local sequence domain. This check is performed
even when another exact-range capability condition would return <code>None</code>.</p>
</div></details></section></div></main></body></html>