mirror of
https://github.com/GreptimeTeam/greptimedb.git
synced 2026-10-13 07:22:32 +00:00
21 lines
13 KiB
HTML
21 lines
13 KiB
HTML
<!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="API documentation for the Rust `insert` mod in crate `operator`."><title>operator::insert - 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="operator" 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 mod"><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="#">Module insert</a></h2></rustdoc-topbar><nav class="sidebar"><div class="sidebar-crate"><h2><a href="../../operator/index.html">operator</a><span class="version">1.4.0-alpha.0</span></h2></div><div class="sidebar-elems"><section id="rustdoc-toc"><h2 class="location"><a href="#">Module insert</a></h2><h3><a href="#structs">Module Items</a></h3><ul class="block"><li><a href="#structs" title="Structs">Structs</a></li><li><a href="#enums" title="Enums">Enums</a></li><li><a href="#constants" title="Constants">Constants</a></li><li><a href="#statics" title="Statics">Statics</a></li><li><a href="#functions" title="Functions">Functions</a></li><li><a href="#types" title="Type Aliases">Type Aliases</a></li></ul></section><div id="rustdoc-modnav"><h2 class="in-crate"><a href="../index.html">In crate operator</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">operator</a></div><h1>Module <span>insert</span> <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/operator/insert.rs.html#15-4176">Source</a> </span></div><h2 id="structs" class="section-header">Structs<a href="#structs" class="anchor">§</a></h2><dl class="item-table"><dt><a class="struct" href="struct.CreateAlterTableResult.html" title="struct operator::insert::CreateAlterTableResult">Create<wbr>Alter<wbr>Table<wbr>Result</a><span title="Restricted Visibility"> 🔒</span> </dt><dd>Result of <code>create_or_alter_tables_on_demand</code>.</dd><dt><a class="struct" href="struct.FlowMirrorTask.html" title="struct operator::insert::FlowMirrorTask">Flow<wbr>Mirror<wbr>Task</a><span title="Restricted Visibility"> 🔒</span> </dt><dt><a class="struct" href="struct.Inserter.html" title="struct operator::insert::Inserter">Inserter</a></dt><dt><a class="struct" href="struct.InstantAndNormalInsertRequests.html" title="struct operator::insert::InstantAndNormalInsertRequests">Instant<wbr>AndNormal<wbr>Insert<wbr>Requests</a></dt><dd>Split insert requests into normal and instant requests.</dd><dt><a class="struct" href="struct.MirrorLog.html" title="struct operator::insert::MirrorLog">Mirror<wbr>Log</a><span title="Restricted Visibility"> 🔒</span> </dt></dl><h2 id="enums" class="section-header">Enums<a href="#enums" class="anchor">§</a></h2><dl class="item-table"><dt><a class="enum" href="enum.AutoCreateTableType.html" title="enum operator::insert::AutoCreateTableType">Auto<wbr>Create<wbr>Table<wbr>Type</a></dt><dd>Hint for the table type to create automatically.</dd></dl><h2 id="constants" class="section-header">Constants<a href="#constants" class="anchor">§</a></h2><dl class="item-table"><dt><a class="constant" href="constant.MAX_MIRROR_PENDING_ROWS.html" title="constant operator::insert::MAX_MIRROR_PENDING_ROWS">MAX_<wbr>MIRROR_<wbr>PENDING_<wbr>ROWS</a><span title="Restricted Visibility"> 🔒</span> </dt><dd>Upper bound of rows buffered by detached flow mirror tasks on this frontend.</dd><dt><a class="constant" href="constant.MIRROR_LOG_INTERVAL.html" title="constant operator::insert::MIRROR_LOG_INTERVAL">MIRROR_<wbr>LOG_<wbr>INTERVAL</a><span title="Restricted Visibility"> 🔒</span> </dt><dd>How often at most each mirror event is reported.</dd><dt><a class="constant" href="constant.MIRROR_LOG_NEVER_REPORTED.html" title="constant operator::insert::MIRROR_LOG_NEVER_REPORTED">MIRROR_<wbr>LOG_<wbr>NEVER_<wbr>REPORTED</a><span title="Restricted Visibility"> 🔒</span> </dt><dt><a class="constant" href="constant.SPLUNK_PK_METADATA_ORDER_KEY.html" title="constant operator::insert::SPLUNK_PK_METADATA_ORDER_KEY">SPLUNK_<wbr>PK_<wbr>METADATA_<wbr>ORDER_<wbr>KEY</a></dt><dd><code>QueryContext</code> extension key the Splunk HEC handler sets (to <code>"true"</code>) on its identity
|
||
path to request metadata-first primary-key ordering at table creation. It is absent for
|
||
user-supplied pipelines, so their primary-key order is left untouched.</dd></dl><h2 id="statics" class="section-header">Statics<a href="#statics" class="anchor">§</a></h2><dl class="item-table"><dt><a class="static" href="static.MIRROR_DROP_LOG.html" title="static operator::insert::MIRROR_DROP_LOG">MIRROR_<wbr>DROP_<wbr>LOG</a><span title="Restricted Visibility"> 🔒</span> </dt><dt><a class="static" href="static.MIRROR_FAILURE_LOG.html" title="static operator::insert::MIRROR_FAILURE_LOG">MIRROR_<wbr>FAILURE_<wbr>LOG</a><span title="Restricted Visibility"> 🔒</span> </dt></dl><h2 id="functions" class="section-header">Functions<a href="#functions" class="anchor">§</a></h2><dl class="item-table"><dt><a class="fn" href="fn.admit_row_insert_batches.html" title="fn operator::insert::admit_row_insert_batches">admit_<wbr>row_<wbr>insert_<wbr>batches</a></dt><dd>Admits all database totals before dispatching any batch of a finite request.
|
||
Each batch keeps its own protocol options and target database.</dd><dt><a class="fn" href="fn.admit_write.html" title="fn operator::insert::admit_write">admit_<wbr>write</a></dt><dd>Admits a finite request before it is split into internal writes.
|
||
The returned context preserves accounting while preventing a second row debit.</dd><dt><a class="fn" href="fn.apply_per_table_semantic_options.html" title="fn operator::insert::apply_per_table_semantic_options">apply_<wbr>per_<wbr>table_<wbr>semantic_<wbr>options</a></dt><dd>Folds the semantic keys of the table being created into <code>table_options</code>.</dd><dt><a class="fn" href="fn.build_create_table_expr.html" title="fn operator::insert::build_create_table_expr">build_<wbr>create_<wbr>table_<wbr>expr</a></dt><dt><a class="fn" href="fn.convert_rows_time_unit.html" title="fn operator::insert::convert_rows_time_unit">convert_<wbr>rows_<wbr>time_<wbr>unit</a><span title="Restricted Visibility"> 🔒</span> </dt><dt><a class="fn" href="fn.convert_timestamp_value_data.html" title="fn operator::insert::convert_timestamp_value_data">convert_<wbr>timestamp_<wbr>value_<wbr>data</a><span title="Restricted Visibility"> 🔒</span> </dt><dt><a class="fn" href="fn.count_insert_rows.html" title="fn operator::insert::count_insert_rows">count_<wbr>insert_<wbr>rows</a><span title="Restricted Visibility"> 🔒</span> </dt><dt><a class="fn" href="fn.fill_table_options_for_create.html" title="fn operator::insert::fill_table_options_for_create">fill_<wbr>table_<wbr>options_<wbr>for_<wbr>create</a></dt><dd>Fill table options for a new table by create type.</dd><dt><a class="fn" href="fn.mirror_drop_log_millis.html" title="fn operator::insert::mirror_drop_log_millis">mirror_<wbr>drop_<wbr>log_<wbr>millis</a><span title="Restricted Visibility"> 🔒</span> </dt><dd>Milliseconds since the first call, so the drop log is rate limited on a
|
||
monotonic clock instead of the wall clock, which can jump.</dd><dt><a class="fn" href="fn.parse_per_table_semantic_index.html" title="fn operator::insert::parse_per_table_semantic_index">parse_<wbr>per_<wbr>table_<wbr>semantic_<wbr>index</a></dt><dd>Parses the per-table semantic index off the context extension. Call once per
|
||
create-planning round: a first write creating N tables would otherwise
|
||
re-parse the whole index N times. <code>None</code> when the request carries no index
|
||
(logs, traces, Prom RW v1) or it fails to parse.</dd><dt><a class="fn" href="fn.region_inserts_rows.html" title="fn operator::insert::region_inserts_rows">region_<wbr>inserts_<wbr>rows</a><span title="Restricted Visibility"> 🔒</span> </dt><dd>Rows of row data carried by <code>inserts</code>. A request without a <code>rows</code> payload
|
||
carries nothing to keep buffered and contributes zero.</dd><dt><a class="fn" href="fn.release_mirror_pending_rows.html" title="fn operator::insert::release_mirror_pending_rows">release_<wbr>mirror_<wbr>pending_<wbr>rows</a><span title="Restricted Visibility"> 🔒</span> </dt><dd>Releases <code>rows</code> of the pending mirror budget.</dd><dt><a class="fn" href="fn.reorder_splunk_primary_keys.html" title="fn operator::insert::reorder_splunk_primary_keys">reorder_<wbr>splunk_<wbr>primary_<wbr>keys</a><span title="Restricted Visibility"> 🔒</span> </dt><dd>Moves Splunk’s metadata tags (<code>host</code>, <code>source</code>, <code>sourcetype</code>) to the front of the
|
||
primary key, keeping the relative order of the remaining tags.</dd><dt><a class="fn" href="fn.request_is_native_histogram.html" title="fn operator::insert::request_is_native_histogram">request_<wbr>is_<wbr>native_<wbr>histogram</a><span title="Restricted Visibility"> 🔒</span> </dt><dt><a class="fn" href="fn.reserve_mirror_pending_rows.html" title="fn operator::insert::reserve_mirror_pending_rows">reserve_<wbr>mirror_<wbr>pending_<wbr>rows</a><span title="Restricted Visibility"> 🔒</span> </dt><dd>Reserves <code>rows</code> of the pending mirror budget and returns the resulting
|
||
pending row count. The caller must <a href="fn.release_mirror_pending_rows.html" title="fn operator::insert::release_mirror_pending_rows"><code>release_mirror_pending_rows</code></a> exactly
|
||
these rows once they are no longer buffered, whether it spawns the batch or
|
||
drops it.</dd><dt><a class="fn" href="fn.table_is_native_histogram.html" title="fn operator::insert::table_is_native_histogram">table_<wbr>is_<wbr>native_<wbr>histogram</a><span title="Restricted Visibility"> 🔒</span> </dt><dt><a class="fn" href="fn.table_time_index_unit.html" title="fn operator::insert::table_time_index_unit">table_<wbr>time_<wbr>index_<wbr>unit</a><span title="Restricted Visibility"> 🔒</span> </dt><dd>Returns the table’s time index unit, if any. A metric table without a
|
||
timestamp column is left alone by the unit alignment: the metric engine
|
||
rejects it anyway.</dd><dt><a class="fn" href="fn.validate_column_count_match.html" title="fn operator::insert::validate_column_count_match">validate_<wbr>column_<wbr>count_<wbr>match</a><span title="Restricted Visibility"> 🔒</span> </dt><dt><a class="fn" href="fn.validate_trace_table_model.html" title="fn operator::insert::validate_trace_table_model">validate_<wbr>trace_<wbr>table_<wbr>model</a></dt><dd>Rejects writes from a different built-in trace model before schema mutation.
|
||
Unstamped, explicitly created tables remain subject to normal schema validation.</dd></dl><h2 id="types" class="section-header">Type Aliases<a href="#types" class="anchor">§</a></h2><dl class="item-table"><dt><a class="type" href="type.InserterRef.html" title="type operator::insert::InserterRef">Inserter<wbr>Ref</a></dt><dt><a class="type" href="type.PerTableSemanticIndex.html" title="type operator::insert::PerTableSemanticIndex">PerTable<wbr>Semantic<wbr>Index</a></dt><dd>The parsed per-table semantic index: <code>{schema -> {table -> {key -> value}}}</code>,
|
||
produced by the OTLP metrics encode path (where one metric can fan out into
|
||
several tables with distinct keys) and the Prometheus remote write v2 path
|
||
(where per-series metadata declares type/unit, and a series may override its
|
||
target schema).</dd></dl></section></div></main></body></html> |