Skip to main content

Module path

Module path 

Source
Expand description

Table paths that carry attributes. Table paths that carry attributes.

A YTsaurus path is not only a string: it is a YSON value, and attributes on it change what a command does with it. <append=%true>//tmp/log and //tmp/log name the same table and mean opposite things — one adds rows, the other replaces them. <columns=[host];ranges=[{lower_limit={row_index=0}; upper_limit={row_index=100}}]>//tmp/log names a hundred rows of one column of it, which is the difference between a read worth doing over a laptop link and one that is not.

This crate sent bare strings until now, so every write replaced the table and append was unreachable. TablePath is the type that makes the attributes expressible, and From<&str> is what keeps client.write_table ("//tmp/out", …) reading exactly as it did.

The attribute spellings are the rich YPath reference: columns is a list of names, ranges a list of maps with lower_limit, upper_limit and exact, and inside a limit sit row_index, key and key_bound. The Go SDK’s ypath.Rich renders the same shapes (yt/go/ypath/rich.go: Ranges []Range \yson:“ranges,attr”`, ReadLimit{Key []any; RowIndex *int64}`).

Structs§

Key
A key tuple: the value of one row’s key columns, or a prefix of them.
RowRange
One entry of a path’s ranges attribute: which rows to read.
TablePath
A table to read from or write to, and which part of it.