Skip to content

chore(loads): document table write locking and retry behavior - #229

Merged
hotdata-automation[bot] merged 1 commit into
mainfrom
openapi-update-41428854750
Nov 2, 2026
Merged

hotdata-automation[bot] merged 1 commit into
mainfrom
openapi-update-41428854750

Conversation

@hotdata-automation

Copy link
Copy Markdown
Contributor

Auto-generated from the updated HotData OpenAPI spec.
Source: https://github.com/hotdata-dev/www/pull/496

@hotdata-automation
hotdata-automation Bot requested a review from a team as a code owner November 2, 2026 10:27
@hotdata-automation
hotdata-automation Bot enabled auto-merge (squash) November 2, 2026 10:27
@hotdata-automation
hotdata-automation Bot requested review from anoop-narang and removed request for a team November 2, 2026 10:27
connection: StrictStr
constant_per_key: List[StrictStr] = Field(description="Columns the table declares constant for a given key: for every row, any other row sharing its key holds the same value of these columns. Declaring this lets a keyed mutation narrow its search for prior versions to the values the upload carries. Empty when none is declared, which is the unrestricted search. Unlike `partition_by` and `sorted_by` this is NOT fixed at creation — it changes only which files a mutation opens, never how rows are written — so read it here rather than assuming a declaration took effect.")
last_sync: Optional[StrictStr] = None
layout: TableLayout = Field(description="The table's storage layout: `analytical`, or `point_lookup`, whose small data pages make fetching its rows by id cheap. Fixed at creation.")

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

nit: Confirm that every server version returns layout on every TableInfo, including tables from external connections (not blocking).

TableInfo.layout is required. If a response omits layout, TableInfo.from_dict raises a pydantic ValidationError. The whole information_schema call then fails. The partition_by description states "always present" for external tables. The layout description does not. Fix this in the upstream spec only if the server can omit the field: mark layout optional there and regenerate.

Comment thread CHANGELOG.md

### Changed

- chore(loads): document table write locking and retry behavior

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

nit: Add an entry under ### Added for the new TableLayout enum and the layout field (not blocking).

The current entry only describes load locking documentation. The PR also adds public API: hotdata.TableLayout and layout on AddManagedTableDecl, AddManagedTableRequest, DatabaseDefaultTableDecl, and TableInfo. Keep a Changelog lists new features under Added. Users who read the changelog do not learn about the new field.

@hotdata-automation
hotdata-automation Bot merged commit 9118edf into main Nov 2, 2026
4 of 5 checks passed
@hotdata-automation
hotdata-automation Bot deleted the openapi-update-41428854750 branch November 2, 2026 10:28
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

0 participants