Files

48 lines
27 KiB
HTML
Raw Permalink 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="Table and TableEngine requests"><title>table::requests - 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="table" 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 requests</a></h2></rustdoc-topbar><nav class="sidebar"><div class="sidebar-crate"><h2><a href="../../table/index.html">table</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 requests</a></h2><h3><a href="#modules">Module Items</a></h3><ul class="block"><li><a href="#modules" title="Modules">Modules</a></li><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></ul></section><div id="rustdoc-modnav"><h2 class="in-crate"><a href="../index.html">In crate table</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">table</a></div><h1>Module <span>requests</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/table/requests.rs.html#15-1180">Source</a> </span></div><details class="toggle top-doc" open><summary class="hideme"><span>Expand description</span></summary><div class="docblock"><p>Table and TableEngine requests</p>
</div></details><h2 id="modules" class="section-header">Modules<a href="#modules" class="anchor">§</a></h2><dl class="item-table"><dt><a class="mod" href="semantic/index.html" title="mod table::requests::semantic">semantic</a><span title="Restricted Visibility">&nbsp;🔒</span> </dt><dd>Table semantic layer vocabulary.</dd></dl><h2 id="structs" class="section-header">Structs<a href="#structs" class="anchor">§</a></h2><dl class="item-table"><dt><a class="struct" href="struct.AddColumnRequest.html" title="struct table::requests::AddColumnRequest">AddColumn<wbr>Request</a></dt><dd>Add column request</dd><dt><a class="struct" href="struct.AlterTableRequest.html" title="struct table::requests::AlterTableRequest">Alter<wbr>Table<wbr>Request</a></dt><dd>Alter table request</dd><dt><a class="struct" href="struct.AnnotationContext.html" title="struct table::requests::AnnotationContext">Annotation<wbr>Context</a></dt><dd>Table shape an annotation option is validated against.</dd><dt><a class="struct" href="struct.BuildIndexTableRequest.html" title="struct table::requests::BuildIndexTableRequest">Build<wbr>Index<wbr>Table<wbr>Request</a></dt><dt><a class="struct" href="struct.CompactTableRequest.html" title="struct table::requests::CompactTableRequest">Compact<wbr>Table<wbr>Request</a></dt><dt><a class="struct" href="struct.CopyDatabaseRequest.html" title="struct table::requests::CopyDatabaseRequest">Copy<wbr>Database<wbr>Request</a></dt><dt><a class="struct" href="struct.CopyQueryToRequest.html" title="struct table::requests::CopyQueryToRequest">Copy<wbr>Query<wbr>ToRequest</a></dt><dt><a class="struct" href="struct.CopyTableRequest.html" title="struct table::requests::CopyTableRequest">Copy<wbr>Table<wbr>Request</a></dt><dd>Copy table request</dd><dt><a class="struct" href="struct.DeleteRequest.html" title="struct table::requests::DeleteRequest">Delete<wbr>Request</a></dt><dd>Delete (by primary key) request</dd><dt><a class="struct" href="struct.FlushTableRequest.html" title="struct table::requests::FlushTableRequest">Flush<wbr>Table<wbr>Request</a></dt><dt><a class="struct" href="struct.InsertRequest.html" title="struct table::requests::InsertRequest">Insert<wbr>Request</a></dt><dt><a class="struct" href="struct.ModifyColumnTypeRequest.html" title="struct table::requests::ModifyColumnTypeRequest">Modify<wbr>Column<wbr>Type<wbr>Request</a></dt><dd>Change column datatype request</dd><dt><a class="struct" href="struct.SetDefaultRequest.html" title="struct table::requests::SetDefaultRequest">SetDefault<wbr>Request</a></dt><dt><a class="struct" href="struct.SetJsonSettingsRequest.html" title="struct table::requests::SetJsonSettingsRequest">SetJson<wbr>Settings<wbr>Request</a></dt><dd>Set JSON2 settings request.</dd><dt><a class="struct" href="struct.TableOptions.html" title="struct table::requests::TableOptions">Table<wbr>Options</a></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.AlterKind.html" title="enum table::requests::AlterKind">Alter<wbr>Kind</a></dt><dt><a class="enum" href="enum.AnnotationFamily.html" title="enum table::requests::AnnotationFamily">Annotation<wbr>Family</a></dt><dd>A family of annotation table options: pure metadata markers that no region
consumes. Setting or unsetting them only rewrites the table’s
<code>extra_options</code>, so the alter skips region dispatch entirely.</dd><dt><a class="enum" href="enum.AnnotationKeyError.html" title="enum table::requests::AnnotationKeyError">Annotation<wbr>KeyError</a></dt><dd>Why an annotation SET/UNSET key batch was rejected.</dd><dt><a class="enum" href="enum.AnnotationValidationError.html" title="enum table::requests::AnnotationValidationError">Annotation<wbr>Validation<wbr>Error</a></dt><dd>Why an annotation option was rejected. Typed so each DDL entry point maps
rules onto its existing error variants and status codes: ALTER keeps
missing columns as <code>TableColumnNotFound</code> (4002), CREATE keeps its
<code>InvalidArguments</code> family — the rules converge, the contracts do not.</dd><dt><a class="enum" href="enum.CopyDirection.html" title="enum table::requests::CopyDirection">Copy<wbr>Direction</a></dt><dt><a class="enum" href="enum.EntityRole.html" title="enum table::requests::EntityRole">Entity<wbr>Role</a></dt><dd>The role a set of columns plays for an entity: <code>id</code> (identifying
attributes), <code>descriptive</code>, or <code>scope</code>. Columns may be tags or fields; DDL
validation only requires that they exist and render as stable strings
(<a href="fn.has_stable_string_form.html" title="fn table::requests::has_stable_string_form"><code>has_stable_string_form</code></a>).</dd><dt><a class="enum" href="enum.SetIndexOption.html" title="enum table::requests::SetIndexOption">SetIndex<wbr>Option</a></dt><dt><a class="enum" href="enum.UnsetIndexOption.html" title="enum table::requests::UnsetIndexOption">Unset<wbr>Index<wbr>Option</a></dt></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.AUTO_CREATE_TABLE_KEY.html" title="constant table::requests::AUTO_CREATE_TABLE_KEY">AUTO_<wbr>CREATE_<wbr>TABLE_<wbr>KEY</a></dt><dt><a class="constant" href="constant.COMMENT_KEY.html" title="constant table::requests::COMMENT_KEY">COMMENT_<wbr>KEY</a></dt><dt><a class="constant" href="constant.DDL_TIMEOUT.html" title="constant table::requests::DDL_TIMEOUT">DDL_<wbr>TIMEOUT</a></dt><dt><a class="constant" href="constant.DDL_WAIT.html" title="constant table::requests::DDL_WAIT">DDL_<wbr>WAIT</a></dt><dt><a class="constant" href="constant.FILE_TABLE_FORMAT_KEY.html" title="constant table::requests::FILE_TABLE_FORMAT_KEY">FILE_<wbr>TABLE_<wbr>FORMAT_<wbr>KEY</a></dt><dt><a class="constant" href="constant.FILE_TABLE_LOCATION_KEY.html" title="constant table::requests::FILE_TABLE_LOCATION_KEY">FILE_<wbr>TABLE_<wbr>LOCATION_<wbr>KEY</a></dt><dt><a class="constant" href="constant.FILE_TABLE_META_KEY.html" title="constant table::requests::FILE_TABLE_META_KEY">FILE_<wbr>TABLE_<wbr>META_<wbr>KEY</a></dt><dt><a class="constant" href="constant.FILE_TABLE_PATTERN_KEY.html" title="constant table::requests::FILE_TABLE_PATTERN_KEY">FILE_<wbr>TABLE_<wbr>PATTERN_<wbr>KEY</a></dt><dt><a class="constant" href="constant.INGEST_ROWS_RATE_LIMIT_KEY.html" title="constant table::requests::INGEST_ROWS_RATE_LIMIT_KEY">INGEST_<wbr>ROWS_<wbr>RATE_<wbr>LIMIT_<wbr>KEY</a></dt><dd>The key of ingest rows rate limit option (rows per second, cluster-wide) in database options.</dd><dt><a class="constant" href="constant.METADATA_QUALITY_DECLARED.html" title="constant table::requests::METADATA_QUALITY_DECLARED">METADATA_<wbr>QUALITY_<wbr>DECLARED</a></dt><dt><a class="constant" href="constant.METADATA_QUALITY_INFERRED.html" title="constant table::requests::METADATA_QUALITY_INFERRED">METADATA_<wbr>QUALITY_<wbr>INFERRED</a></dt><dt><a class="constant" href="constant.METRIC_TEMPORALITY_CUMULATIVE.html" title="constant table::requests::METRIC_TEMPORALITY_CUMULATIVE">METRIC_<wbr>TEMPORALITY_<wbr>CUMULATIVE</a></dt><dt><a class="constant" href="constant.METRIC_TEMPORALITY_DELTA.html" title="constant table::requests::METRIC_TEMPORALITY_DELTA">METRIC_<wbr>TEMPORALITY_<wbr>DELTA</a></dt><dt><a class="constant" href="constant.OTLP_METRIC_COMPAT_KEY.html" title="constant table::requests::OTLP_METRIC_COMPAT_KEY">OTLP_<wbr>METRIC_<wbr>COMPAT_<wbr>KEY</a></dt><dt><a class="constant" href="constant.OTLP_METRIC_COMPAT_PROM.html" title="constant table::requests::OTLP_METRIC_COMPAT_PROM">OTLP_<wbr>METRIC_<wbr>COMPAT_<wbr>PROM</a></dt><dt><a class="constant" href="constant.REPARTITION_COLUMN_HINT_KEY.html" title="constant table::requests::REPARTITION_COLUMN_HINT_KEY">REPARTITION_<wbr>COLUMN_<wbr>HINT_<wbr>KEY</a></dt><dt><a class="constant" href="constant.REPARTITION_PARTITION_NUM_HINT_KEY.html" title="constant table::requests::REPARTITION_PARTITION_NUM_HINT_KEY">REPARTITION_<wbr>PARTITION_<wbr>NUM_<wbr>HINT_<wbr>KEY</a></dt><dd>Table-level partition count hint consumed by the auto-repartition planner.</dd><dt><a class="constant" href="constant.SEMANTIC_ENTITY_PREFIX.html" title="constant table::requests::SEMANTIC_ENTITY_PREFIX">SEMANTIC_<wbr>ENTITY_<wbr>PREFIX</a></dt><dd>Reserved prefix for the entity-identity sub-namespace:
<code>greptime.semantic.entity.&lt;type&gt;.{id|descriptive|scope}</code>. Unlike the rest of
the vocabulary (a closed whitelist), entity types are open-ended (<code>service</code>,
<code>host</code>, <code>k8s.pod</code>, <code>process</code>, <code>agent</code>, custom, …), so keys here are validated
by prefix + shape rather than membership. See
<code>docs/rfcs/2026-06-25-entity-relationships-and-graph-query.md</code>.</dd><dt><a class="constant" href="constant.SEMANTIC_ENTITY_SERVICE_ID.html" title="constant table::requests::SEMANTIC_ENTITY_SERVICE_ID">SEMANTIC_<wbr>ENTITY_<wbr>SERVICE_<wbr>ID</a></dt><dd>The well-known entity-identity key auto-stamped on OTLP trace tables; its value
is the <code>service_name</code> tag column, declaring the logical <code>service</code> entity.</dd><dt><a class="constant" href="constant.SEMANTIC_METRIC_METADATA_QUALITY.html" title="constant table::requests::SEMANTIC_METRIC_METADATA_QUALITY">SEMANTIC_<wbr>METRIC_<wbr>METADATA_<wbr>QUALITY</a></dt><dd><a href="constant.METADATA_QUALITY_DECLARED.html" title="constant table::requests::METADATA_QUALITY_DECLARED"><code>METADATA_QUALITY_DECLARED</code></a> when the protocol stated the type, or
<a href="constant.METADATA_QUALITY_INFERRED.html" title="constant table::requests::METADATA_QUALITY_INFERRED"><code>METADATA_QUALITY_INFERRED</code></a> when guessed from a name suffix.</dd><dt><a class="constant" href="constant.SEMANTIC_METRIC_ORIGINAL_NAME.html" title="constant table::requests::SEMANTIC_METRIC_ORIGINAL_NAME">SEMANTIC_<wbr>METRIC_<wbr>ORIGINAL_<wbr>NAME</a></dt><dd>Pre-translation OTel name when the table name was Prometheus-ised; the key a
consumer uses to look the metric up in the OTel semantic conventions.</dd><dt><a class="constant" href="constant.SEMANTIC_METRIC_TEMPORALITY.html" title="constant table::requests::SEMANTIC_METRIC_TEMPORALITY">SEMANTIC_<wbr>METRIC_<wbr>TEMPORALITY</a></dt><dd>Catalog-level <code>cumulative</code> / <code>delta</code> / <code>mixed</code> description for OTLP metrics.
Per-series query behavior is determined from stored row identity instead.</dd><dt><a class="constant" href="constant.SEMANTIC_METRIC_TYPE.html" title="constant table::requests::SEMANTIC_METRIC_TYPE">SEMANTIC_<wbr>METRIC_<wbr>TYPE</a></dt><dd>Instrument kind: <code>counter</code> / <code>gauge</code> / <code>histogram</code> / <code>summary</code> /
<code>updown_counter</code> / <code>gauge_histogram</code> / <code>info</code> / <code>stateset</code>.</dd><dt><a class="constant" href="constant.SEMANTIC_METRIC_UNIT.html" title="constant table::requests::SEMANTIC_METRIC_UNIT">SEMANTIC_<wbr>METRIC_<wbr>UNIT</a></dt><dd>UCUM unit, e.g. <code>s</code>, <code>By</code>, <code>{request}</code>. Discarded by the row encoders, so it
is unrecoverable once ingested.</dd><dt><a class="constant" href="constant.SEMANTIC_OPTION_KEYS.html" title="constant table::requests::SEMANTIC_OPTION_KEYS">SEMANTIC_<wbr>OPTION_<wbr>KEYS</a></dt><dd>Every recognised public semantic table-option key. The set is a closed
whitelist: keys under <a href="constant.SEMANTIC_PREFIX.html" title="constant table::requests::SEMANTIC_PREFIX"><code>SEMANTIC_PREFIX</code></a> that are not listed here are rejected,
so an unknown key like <code>greptime.semantic.unknown_key</code> does not silently land
in a table’s options. Adding a key to the vocabulary means adding it here.</dd><dt><a class="constant" href="constant.SEMANTIC_PER_TABLE_INDEX_KEY.html" title="constant table::requests::SEMANTIC_PER_TABLE_INDEX_KEY">SEMANTIC_<wbr>PER_<wbr>TABLE_<wbr>INDEX_<wbr>KEY</a></dt><dd>Internal <code>QueryContext</code> extension key carrying the per-table semantic index
(a <code>{table_name -&gt; {semantic_key: value}}</code> JSON blob) from the ingestion
encode path to the auto-create site. Deliberately OUTSIDE <a href="constant.SEMANTIC_PREFIX.html" title="constant table::requests::SEMANTIC_PREFIX"><code>SEMANTIC_PREFIX</code></a>
so it is not a valid table option and never leaks into a table’s options.</dd><dt><a class="constant" href="constant.SEMANTIC_PIPELINE.html" title="constant table::requests::SEMANTIC_PIPELINE">SEMANTIC_<wbr>PIPELINE</a></dt><dd>Internal ingestion pipeline / data model, e.g. <code>greptime_trace_v1</code>. The
signal-agnostic successor to the engine-specific <code>table_data_model</code> option.</dd><dt><a class="constant" href="constant.SEMANTIC_PREFIX.html" title="constant table::requests::SEMANTIC_PREFIX">SEMANTIC_<wbr>PREFIX</a></dt><dd>Reserved prefix for every public semantic table-option key.</dd><dt><a class="constant" href="constant.SEMANTIC_SIGNAL_TYPE.html" title="constant table::requests::SEMANTIC_SIGNAL_TYPE">SEMANTIC_<wbr>SIGNAL_<wbr>TYPE</a></dt><dd>Signal kind: one of <a href="constant.SIGNAL_TYPE_TRACE.html" title="constant table::requests::SIGNAL_TYPE_TRACE"><code>SIGNAL_TYPE_TRACE</code></a> / <a href="constant.SIGNAL_TYPE_LOG.html" title="constant table::requests::SIGNAL_TYPE_LOG"><code>SIGNAL_TYPE_LOG</code></a> /
<a href="constant.SIGNAL_TYPE_METRIC.html" title="constant table::requests::SIGNAL_TYPE_METRIC"><code>SIGNAL_TYPE_METRIC</code></a> / <a href="constant.SIGNAL_TYPE_EVENT.html" title="constant table::requests::SIGNAL_TYPE_EVENT"><code>SIGNAL_TYPE_EVENT</code></a>.</dd><dt><a class="constant" href="constant.SEMANTIC_SOURCE.html" title="constant table::requests::SEMANTIC_SOURCE">SEMANTIC_<wbr>SOURCE</a></dt><dd>Ingestion ecosystem, e.g. <a href="constant.SOURCE_OPENTELEMETRY.html" title="constant table::requests::SOURCE_OPENTELEMETRY"><code>SOURCE_OPENTELEMETRY</code></a> / <a href="constant.SOURCE_PROMETHEUS.html" title="constant table::requests::SOURCE_PROMETHEUS"><code>SOURCE_PROMETHEUS</code></a>.</dd><dt><a class="constant" href="constant.SEMANTIC_SOURCE_VERSION.html" title="constant table::requests::SEMANTIC_SOURCE_VERSION">SEMANTIC_<wbr>SOURCE_<wbr>VERSION</a></dt><dd>Source protocol version, e.g. Prometheus remote write <code>1.0</code> / <code>2.0</code>.</dd><dt><a class="constant" href="constant.SEMANTIC_TABLE_SCOPE.html" title="constant table::requests::SEMANTIC_TABLE_SCOPE">SEMANTIC_<wbr>TABLE_<wbr>SCOPE</a></dt><dd>Information-schema visibility: <code>catalog</code> for providers that filter rows to
their catalog, or <code>global</code> for catalog-independent data. Only registered
system-table metadata is trusted for authorization.</dd><dt><a class="constant" href="constant.SEMANTIC_TRACE_CONVENTIONS.html" title="constant table::requests::SEMANTIC_TRACE_CONVENTIONS">SEMANTIC_<wbr>TRACE_<wbr>CONVENTIONS</a></dt><dd>Semantic-conventions version the rows conform to (e.g. the OTel schema URL),
or <a href="constant.SEMANTIC_VALUE_UNKNOWN.html" title="constant table::requests::SEMANTIC_VALUE_UNKNOWN"><code>SEMANTIC_VALUE_UNKNOWN</code></a> / <a href="constant.SEMANTIC_VALUE_MIXED.html" title="constant table::requests::SEMANTIC_VALUE_MIXED"><code>SEMANTIC_VALUE_MIXED</code></a> when not single-valued.</dd><dt><a class="constant" href="constant.SEMANTIC_VALUE_MIXED.html" title="constant table::requests::SEMANTIC_VALUE_MIXED">SEMANTIC_<wbr>VALUE_<wbr>MIXED</a></dt><dd>Sentinel for a single-valued key that saw conflicting sources.</dd><dt><a class="constant" href="constant.SEMANTIC_VALUE_UNKNOWN.html" title="constant table::requests::SEMANTIC_VALUE_UNKNOWN">SEMANTIC_<wbr>VALUE_<wbr>UNKNOWN</a></dt><dd>Sentinel for a key that cannot be determined at stamp time.</dd><dt><a class="constant" href="constant.SIGNAL_TYPE_EVENT.html" title="constant table::requests::SIGNAL_TYPE_EVENT">SIGNAL_<wbr>TYPE_<wbr>EVENT</a></dt><dt><a class="constant" href="constant.SIGNAL_TYPE_LOG.html" title="constant table::requests::SIGNAL_TYPE_LOG">SIGNAL_<wbr>TYPE_<wbr>LOG</a></dt><dt><a class="constant" href="constant.SIGNAL_TYPE_METRIC.html" title="constant table::requests::SIGNAL_TYPE_METRIC">SIGNAL_<wbr>TYPE_<wbr>METRIC</a></dt><dt><a class="constant" href="constant.SIGNAL_TYPE_TRACE.html" title="constant table::requests::SIGNAL_TYPE_TRACE">SIGNAL_<wbr>TYPE_<wbr>TRACE</a></dt><dt><a class="constant" href="constant.SKIP_WAL_KEY.html" title="constant table::requests::SKIP_WAL_KEY">SKIP_<wbr>WAL_<wbr>KEY</a></dt><dt><a class="constant" href="constant.SOURCE_ELASTICSEARCH.html" title="constant table::requests::SOURCE_ELASTICSEARCH">SOURCE_<wbr>ELASTICSEARCH</a></dt><dt><a class="constant" href="constant.SOURCE_INFLUXDB.html" title="constant table::requests::SOURCE_INFLUXDB">SOURCE_<wbr>INFLUXDB</a></dt><dt><a class="constant" href="constant.SOURCE_LOKI.html" title="constant table::requests::SOURCE_LOKI">SOURCE_<wbr>LOKI</a></dt><dt><a class="constant" href="constant.SOURCE_OPENTELEMETRY.html" title="constant table::requests::SOURCE_OPENTELEMETRY">SOURCE_<wbr>OPENTELEMETRY</a></dt><dt><a class="constant" href="constant.SOURCE_OPENTSDB.html" title="constant table::requests::SOURCE_OPENTSDB">SOURCE_<wbr>OPENTSDB</a></dt><dt><a class="constant" href="constant.SOURCE_PROMETHEUS.html" title="constant table::requests::SOURCE_PROMETHEUS">SOURCE_<wbr>PROMETHEUS</a></dt><dt><a class="constant" href="constant.STORAGE_KEY.html" title="constant table::requests::STORAGE_KEY">STORAGE_<wbr>KEY</a></dt><dt><a class="constant" href="constant.TABLE_DATA_MODEL.html" title="constant table::requests::TABLE_DATA_MODEL">TABLE_<wbr>DATA_<wbr>MODEL</a></dt><dt><a class="constant" href="constant.TABLE_DATA_MODEL_TRACE_V1.html" title="constant table::requests::TABLE_DATA_MODEL_TRACE_V1">TABLE_<wbr>DATA_<wbr>MODEL_<wbr>TRACE_<wbr>V1</a></dt><dt><a class="constant" href="constant.TABLE_DATA_MODEL_TRACE_V2.html" title="constant table::requests::TABLE_DATA_MODEL_TRACE_V2">TABLE_<wbr>DATA_<wbr>MODEL_<wbr>TRACE_<wbr>V2</a></dt><dd>Table data model used by the JSON2-based OTLP trace pipeline.</dd><dt><a class="constant" href="constant.TRACE_TABLE_PARTITIONS_HINT_KEY.html" title="constant table::requests::TRACE_TABLE_PARTITIONS_HINT_KEY">TRACE_<wbr>TABLE_<wbr>PARTITIONS_<wbr>HINT_<wbr>KEY</a></dt><dt><a class="constant" href="constant.TTL_KEY.html" title="constant table::requests::TTL_KEY">TTL_KEY</a></dt><dt><a class="constant" href="constant.VALID_DDL_OPTION_KEYS.html" title="constant table::requests::VALID_DDL_OPTION_KEYS">VALID_<wbr>DDL_<wbr>OPTION_<wbr>KEYS</a></dt><dt><a class="constant" href="constant.VALID_TABLE_OPTION_KEYS.html" title="constant table::requests::VALID_TABLE_OPTION_KEYS">VALID_<wbr>TABLE_<wbr>OPTION_<wbr>KEYS</a></dt><dt><a class="constant" href="constant.WRITE_BUFFER_SIZE_KEY.html" title="constant table::requests::WRITE_BUFFER_SIZE_KEY">WRITE_<wbr>BUFFER_<wbr>SIZE_<wbr>KEY</a></dt></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.VALID_DB_OPT_KEYS.html" title="static table::requests::VALID_DB_OPT_KEYS">VALID_<wbr>DB_<wbr>OPT_<wbr>KEYS</a><span title="Restricted Visibility">&nbsp;🔒</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.has_stable_string_form.html" title="fn table::requests::has_stable_string_form">has_<wbr>stable_<wbr>string_<wbr>form</a></dt><dd>Returns true if a column of <code>data_type</code> renders as a stable string — the
requirement for entity id/descriptive/scope columns. The read-time
derivation casts them to strings, so a type without a stable string form
would fail only when the graph is scanned; DDL validation rejects it up
front instead.</dd><dt><a class="fn" href="fn.is_entity_option_key.html" title="fn table::requests::is_entity_option_key">is_<wbr>entity_<wbr>option_<wbr>key</a></dt><dd>Returns true if <code>key</code> is a well-formed entity-identity option key.</dd><dt><a class="fn" href="fn.is_semantic_option_key.html" title="fn table::requests::is_semantic_option_key">is_<wbr>semantic_<wbr>option_<wbr>key</a></dt><dd>Returns true if <code>key</code> is a recognised semantic table-option key.</dd><dt><a class="fn" href="fn.is_trace_table.html" title="fn table::requests::is_trace_table">is_<wbr>trace_<wbr>table</a></dt><dd>Returns true for the Trace V1 and V2 data models supported
by semantic graph derivation.</dd><dt><a class="fn" href="fn.parse_entity_columns.html" title="fn table::requests::parse_entity_columns">parse_<wbr>entity_<wbr>columns</a></dt><dd>Tokenizes an entity option’s comma-separated column list (trimmed, empty
tokens dropped). <a href="fn.validate_semantic_option.html" title="fn table::requests::validate_semantic_option"><code>validate_semantic_option</code></a> rejects empty tokens at DDL
time, so readers only ever drop what validation already refused.</dd><dt><a class="fn" href="fn.parse_entity_option_key.html" title="fn table::requests::parse_entity_option_key">parse_<wbr>entity_<wbr>option_<wbr>key</a></dt><dd>Parses a well-formed entity-identity option key of the shape
<code>greptime.semantic.entity.&lt;type&gt;.{id|descriptive|scope}</code> into
<code>(entity_type, role)</code>. The <code>&lt;type&gt;</code> may itself contain dots; the role is the
final dot-separated segment. This is the single parser of the key format —
DDL validation and the read-time derivation both go through it.</dd><dt><a class="fn" href="fn.trace_v2_attribute.html" title="fn table::requests::trace_v2_attribute">trace_<wbr>v2_<wbr>attribute</a></dt><dd>Resolves a Trace V2 entity reference to a JSON2 root and a literal attribute key.
Everything after the first dot belongs to the key, matching Trace V1’s
flattened column names. Existing physical columns take precedence.</dd><dt><a class="fn" href="fn.validate_and_normalize_annotation.html" title="fn table::requests::validate_and_normalize_annotation">validate_<wbr>and_<wbr>normalize_<wbr>annotation</a><span title="Restricted Visibility">&nbsp;🔒</span> </dt><dd>Validates one annotation option and returns the value to store — the
repartition hints are trimmed, semantic values pass
through unchanged.</dd><dt><a class="fn" href="fn.validate_and_normalize_annotation_options.html" title="fn table::requests::validate_and_normalize_annotation_options">validate_<wbr>and_<wbr>normalize_<wbr>annotation_<wbr>options</a></dt><dd>CREATE-side entry: validates every annotation option present in <code>options</code>
and writes normalized values back in place.</dd><dt><a class="fn" href="fn.validate_annotation_keys.html" title="fn table::requests::validate_annotation_keys">validate_<wbr>annotation_<wbr>keys</a></dt><dd>Validates a SET/UNSET batch and returns its annotation family.</dd><dt><a class="fn" href="fn.validate_database_option.html" title="fn table::requests::validate_database_option">validate_<wbr>database_<wbr>option</a></dt><dd>Returns true if the <code>key</code> is a valid key for database.</dd><dt><a class="fn" href="fn.validate_database_option_value.html" title="fn table::requests::validate_database_option_value">validate_<wbr>database_<wbr>option_<wbr>value</a></dt><dd>Validates a database option value, returning the violated constraint on error.</dd><dt><a class="fn" href="fn.validate_semantic_option.html" title="fn table::requests::validate_semantic_option">validate_<wbr>semantic_<wbr>option</a></dt><dd>Validates a <code>greptime.semantic.*</code> option’s <code>value</code> against its allowed domain.</dd><dt><a class="fn" href="fn.validate_table_option.html" title="fn table::requests::validate_table_option">validate_<wbr>table_<wbr>option</a></dt><dd>Returns true if the <code>key</code> is a valid key for any engine or storage.</dd></dl></section></div></main></body></html>