Commit Graph

96 Commits

Author SHA1 Message Date
t8y2 deb4cbfdfe fix(dameng): return rows for explain queries 2026-07-15 14:29:23 +08:00
t8y2 904863a57c fix(kingbase): preserve SQLServer identity metadata 2026-07-15 13:01:18 +08:00
t8y2 f0044d733b fix(kingbase): preserve column comments 2026-07-15 10:38:26 +08:00
miracle 0d57c39a78
perf(zookeeper): optimize connection initialization 2026-07-14 23:16:10 +08:00
Hand Sonic 96f1e8bb9a
fix(kingbase): decode trigger timing flags 2026-07-14 15:31:03 +08:00
zipg 88d05a0a19
feat(oracle): improve multi-schema completion 2026-07-14 12:35:13 +08:00
zipg 2a5e7ac1c7
fix(mongodb): preserve long ids in filters and updates 2026-07-14 11:09:11 +08:00
onenewcode 32b4acee3a
feat(dameng): preserve character length units 2026-07-14 01:28:19 +08:00
zipg 8020fe5886
fix(sqlserver): preserve explicit instance ports 2026-07-14 01:27:40 +08:00
zipg 4475ccb7fc
fix(dameng): serialize metadata queries 2026-07-13 23:57:45 +08:00
zipg 032a8d0f80
fix(sqlserver): restore legacy TLS RSA ciphers 2026-07-13 21:08:17 +08:00
gggaiitx 8a6640e184
fix(ddl): include table comments in generated DDL 2026-07-13 21:06:08 +08:00
t8y2 117b1731f7 fix(zookeeper): handle znodes without data 2026-07-13 19:13:18 +08:00
zipg d1cce3ed1e
fix(kingbase): quote MySQL-compatible identifiers 2026-07-13 18:51:32 +08:00
t8y2 67541232a2 fix(agents): share runtimes across connection sessions 2026-07-13 15:13:48 +08:00
Guoyu Su a99a34b4ab
fix(mongodb): use dedicated count for legacy collections 2026-07-13 13:21:50 +08:00
zipg 9a09bd49cb
fix(mongodb): support array filters in updates 2026-07-12 23:13:36 +08:00
t8y2 72880d2933 feat(h2): add legacy 2.1 driver 2026-07-12 22:14:01 +08:00
t8y2 6368c49c16 fix(kingbase): support PostgreSQL catalog mode 2026-07-12 21:28:46 +08:00
zipg 8d14a056b7
fix(tdengine): support table row editing 2026-07-11 13:01:33 +08:00
t8y2 28ee0ecc8c fix(access): support encrypted database files 2026-07-11 10:44:20 +08:00
zipg 9cf62a1c71
fix(tdengine): group subtables under super tables 2026-07-11 00:12:45 +08:00
t8y2 3e628d2c7b fix(oceanbase): sync Oracle session query timeout 2026-07-10 22:16:46 +08:00
t8y2 eb3d5e4071 fix(gbase8s): load table metadata details 2026-07-10 22:14:26 +08:00
zipg e1d6d1224e
feat(oracle): support explain plans 2026-07-10 17:55:03 +08:00
t8y2 2bfa4c3234 fix(gbase): load object source definitions 2026-07-10 17:08:42 +08:00
zipg 58168472a8
fix(oracle): 保留堡垒机用户名的原始认证语义 (#3113)
Co-authored-by: zipg <4047349+zipg@users.noreply.github.com>
2026-07-10 14:07:52 +08:00
zipg cc72b7a4e7
fix(sqlserver): initialize legacy TLS compatibility earlier 2026-07-10 12:27:44 +08:00
zipg 8a511d2765
fix(zookeeper): optimize node list loading 2026-07-10 00:32:04 +08:00
zipg 67edb94b1d
feat(sqlserver): support legacy TLS compatibility 2026-07-09 22:45:54 +08:00
t8y2 061240390e fix(oracle): render raw values as hex 2026-07-09 21:14:10 +08:00
zipg ce8cb2b509
fix(oracle): preserve DATE time in display and export 2026-07-09 15:04:34 +08:00
t8y2 c6fc5cb909 fix(oracle): quote non-regular usernames 2026-07-09 14:26:17 +08:00
Guoyu Su ca9e11217e
fix(mongodb): support collection drop shell command 2026-07-09 14:16:32 +08:00
zipg 1317301bcd
feat(kafka): improve topic management and Kerberos auth 2026-07-09 11:41:22 +08:00
Guoyu Su 3bc208dbf9
fix(mongodb): support legacy index commands 2026-07-09 00:33:52 +08:00
K 1d64d66184
fix(agents): add url params for cassandra driver 2026-07-09 00:32:52 +08:00
jischeng ee34a17e82
fix(spark,hive): cap Thrift fetch size 2026-07-08 23:44:59 +08:00
Guoyu Su 313ae2d071
fix(zookeeper): show system znodes in root listing 2026-07-08 23:44:41 +08:00
zipg 0329d9088e
feat(dameng): support schema creation 2026-07-08 19:25:20 +08:00
Guoyu Su fd80464cb2
fix(kafka): clamp peek offset to available range 2026-07-08 17:12:14 +08:00
zipg ac6b2f6cb5
fix(oracle): use USER views for current schema objects 2026-07-08 16:09:40 +08:00
zipg 3a35f5b911
fix(oceanbase): update default connection port 2026-07-08 13:31:45 +08:00
t8y2 2929b1c035 feat(hive): add Kerberos connection options 2026-07-08 13:23:21 +08:00
zipg 6cba08fccb
fix(kingbase): 修复连接与元数据查询异常 2026-07-07 22:12:36 +08:00
t8y2 bc37483343 fix(oracle): add GB18030 charset fallback 2026-07-07 17:54:52 +08:00
LRcoding fc01cea80f
fix(oracle): preserve plsql block terminators 2026-07-07 15:29:43 +08:00
jischeng c3893bf314
feat(spark): add Apache Spark database driver with catalog support
* feat(spark): add Apache Spark database driver

Spark Thrift Server speaks the HiveServer2 protocol, so the Spark driver
reuses the hive-jdbc agent runtime. Registers spark (agentKey=spark,
defaultPort=10015) across the manifest, DatabaseType enum, agent catalog,
SQL dialects, connection dialog, and a SparkAgent built on AbstractJdbcAgent.

* feat(spark): add catalog support and official logo

SparkAgent now supports Spark 3.4+ multi-catalog (Paimon, Lance, Iceberg)
via catalog=<name> in url_params, mirroring the StarRocks catalog flow:
- afterConnect switches to the configured catalog via USE <catalog>
- listDatabases returns the catalog name when SHOW DATABASES is empty
  (catalogs like Lance expose tables at the catalog root with no databases)
- listTables uses SHOW TABLES IN <catalog>[.<schema>] uniformly, working
  for both catalog-root tables (Lance) and catalog.schema tables (Paimon)
- setSchemaSQL qualifies USE with the catalog to prevent resetting to
  spark_catalog on schema switches
- buildJdbcUrl omits database from the URL path

Also replaces the placeholder lightning icon with the official Apache Spark
logo (spark-logo.png from spark.apache.org).

* fix(spark): use catalog-qualified DESCRIBE for column retrieval

getColumnsFromDescribe used USE <schema> + DESCRIBE <table>, which
generated USE `catalog`.`catalog` when the sidebar passed the catalog
name as the schema (Lance case where the catalog is the only node).
This failed and fell back to JDBC metadata which also returned nothing,
resulting in an empty DDL (CREATE TABLE ... ()).

Now uses DESCRIBE `catalog`.`table` directly when a catalog is
configured, bypassing USE entirely. Also fixes setSchemaSQL to treat
schema == catalog as catalog-only (no .schema suffix).

* fix(ci): add spark to metadata coverage matrix and BRIDGE_REQUIRED_TYPES

- agents/metadata-constraint-coverage.tsv: register spark as
  intentional-fallback (SHOW TABLES/SHOW DATABASES, like Hive/TDengine)
- packages/node-core/src/diagnostics.ts: add spark to
  BRIDGE_REQUIRED_TYPES (mcpMode=bridge, matches manifest)

* fix(ci): add spark to DBX_CONNECTION_TYPE_DESCRIPTION in mcp-server

The driver-manifest test asserts every manifest dbType appears in the
MCP server's connection type description string.
2026-07-07 14:36:22 +08:00
zipg 668919a7c9
fix(gbase8s): make view source saves safer 2026-07-07 01:50:53 +08:00
zipg f45011977f
fix(dameng): avoid truncating exported DDL 2026-07-07 00:23:07 +08:00