Repository navigation
Releases: TabularisDB/tabularis-cockroachdb-plugin
Releases · TabularisDB/tabularis-cockroachdb-plugin
Release list
v0.1.0-alpha.1
First public alpha. Connecting, browsing, querying and row editing work;
DDL generation and EXPLAIN are not implemented yet (see "Known limitations").
Tested against CockroachDB v24.3 and the latest release.
Added
- Connection and TLS: pooled connections with keepalives and a 10 s connect
timeout; TLS modesdisable,prefer,require,verify-ca(hostname
mismatch tolerated) andverify-full; custom CA and client certificates
(PKCS#8, PKCS#1 and SEC1 keys);cockroachdb://,cockroach://,
postgresql://andpostgres://connection strings, including
options=--cluster=...for CockroachDB Cloud. The server version is read
fromversion(), other servers are refused with a pointer to the PostgreSQL
driver, and common connection errors are explained. - Schema browsing: databases, schemas, tables (comments, row estimates),
views, columns (canonical types, comments, primary keys, hidden columns
excluded), indexes (STORING, expression and hash-sharded columns handled),
composite foreign keys, andSHOW CREATE TABLEDDL. - Result decoding: exact
INT8(a string beyond 2^53),DECIMAL,JSONB,
BYTES, dates, times, intervals, UUID,INET,BIT, arrays, enums, spatial
values,VECTOR,TSVECTORandTSQUERY. - Query execution:
execute_queryandexecute_query_batchwith
pagination that understands comments, strings andLIMIT/OFFSET;
transactions that span several runs of an editor tab (session_id,
release_session); query cancellation; automatic retry of implicit
transactions on40001; the transaction state is read from the server.
Errors carry the SQLSTATE,DETAILandHINT. A host display limit never
changes what a statement writes, and session settings never leak to the next
tab. - Row editing:
insert_record,update_recordanddelete_record, with
type-aware binding, composite andNULLkeys, the hiddenrowidfor tables
without a primary key, andBEGIN READ WRITEso edits work on read-only
default connections. A key that would change more than one row is refused,
an empty key is refused, and editing a vanished row is a conflict. - BLOBs:
fetch_blob_as_data_url,save_blob_to_file, and upload of a
picked file (BLOB_FILE_REF) within the host'smaxBlobSize. - Plugin settings
poolMaxSize,retryMaxAttemptsandapplicationName. .tabulariummanifest with CockroachDB metadata, icon, capabilities, data
types, type mappings and plugin settings.- CI (tests, clippy, rustfmt, manifest validation, markdownlint, cargo-audit,
live CockroachDB tests on the oldest LTS line and the latest release),
release and version-suggestion workflows, and the architecture documents in
docs/architecture.
Known limitations
Tracked in #16:
EXPLAINis not implemented; the explain button returns "Method not found".- DDL helpers (
get_create_table_sql,get_add_column_sql,
get_alter_column_sql,get_create_index_sql,
get_create_foreign_key_sql,drop_index,drop_foreign_key) and view
mutations are not implemented. The manifest advertises them, so the UI
offers them and they fail. Running DDL as SQL in the editor works. - Materialized views, sequences, routines, triggers, multi-region metadata and
the schema snapshot (ER diagram) are not provided yet. - Not exercised against a real CockroachDB Cloud cluster, nor query
cancellation behind a load balancer; a real40001retry of an implicit
statement could not be provoked on the tested releases.