Skip to content

fix: preserve SQL workspace connections and standardize Logback - #415

Merged
hellojuantu merged 2 commits into
mainfrom
fix/workspace_table_connection
Oct 19, 2026
Merged

hellojuantu merged 2 commits into
mainfrom
fix/workspace_table_connection

Conversation

@Pika-Yalei

@Pika-Yalei Pika-Yalei commented Oct 19, 2026 •

Copy link
Copy Markdown
Contributor

Summary

Opening table details could mark a healthy SQL workspace connection as failed, hiding the object list and disabling query actions. Keep the connection in the connected state after a successful metadata response, while preserving failure handling and stale-response guards. Add a reusable browser regression scenario.

Release packages could also fail during Spring Boot logging initialization because DashScope SDK transitively introduced slf4j-simple alongside Logback. Exclude that provider at the SDK dependency, switch the build-time driver bundler to Logback, and configure its root log level as INFO. This removes the competing provider from application runtime dependencies and distributions without requiring a JVM provider override.

Related Issues

None.

Test Plan (Required)

  • Not tested (explain why below)
  • Unit tests
  • Integration tests
  • Frontend lint / build
  • Backend build
  • Manual verification

Details:

  • cd frontend && npm run lint -- --no-fix passed.
  • cd package && ./all_build.sh web passed.
  • An isolated method-level harness reproduced the table-details regression and passed seven checks covering successful metadata reads, API/transport failures, late responses after disconnect/reconnect/tab changes, and recovery from an unblocked failed state.
  • In the built-in browser against a local ClickHouse fixture, single clicks, repeated double-clicks, reconnecting, and refreshing kept the object list visible and query actions enabled. Generated SQL was not executed.
  • cd package && ./package.sh --build passed and generated all three installation archives. Frontend resources were additionally rebuilt with Node.js 22.22.1 and the archives regenerated successfully.
  • Inspected SLF4J service registrations across eight boot/package runtime configurations: each contained only the Logback provider.
  • Scanned the actual alone, console, and sidecar archives: application libraries contained one Logback provider, no slf4j-simple, and no legacy SLF4J binding. A JVM probe using each archive's libraries selected LoggerContext and passed Spring Boot logging initialization without a provider override.
  • A JVM probe of the driver bundler's runtime classpath confirmed Logback and an INFO root log level.
  • Restarted the local IDEA backend and confirmed FULL-mode startup, embedded worker readiness, a successful health check, and SQL workspace loading without browser console errors.
  • Browser-level database outage and delayed-network injection were not performed; those failure and race paths were checked by the isolated harness. The archives were checked with logging initialization probes rather than full isolated server deployments.

Checklist

  • The PR title clearly describes the change.
  • The change follows the repository coding standards.
  • Documentation was updated when behavior or usage changed.
  • Tests were added or updated for behavior changes (reusable browser regression procedure).
  • Generated files, dependency directories, logs, and local build artifacts are not included.

@Pika-Yalei
Pika-Yalei requested a review from a team October 19, 2026 11:03
@Pika-Yalei Pika-Yalei changed the title fix(sql): preserve connection after loading table details fix: preserve SQL workspace connections and standardize Logback Oct 19, 2026

@hellojuantu hellojuantu left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Great!

@hellojuantu
hellojuantu merged commit 9e558fa into main Oct 19, 2026
6 checks passed
@hellojuantu
hellojuantu deleted the fix/workspace_table_connection branch October 19, 2026 11:38
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.

2 participants