Drill-XXXX: Refactor User Interface by cgivre · Pull Request #3037 · apache/drill · GitHub
Skip to content

Drill-XXXX: Refactor User Interface - #3037

Draft
cgivre wants to merge 2 commits into
apache:masterfrom
cgivre:feature/sqllab-react-ui
Draft

cgivre wants to merge 2 commits into
apache:masterfrom
cgivre:feature/sqllab-react-ui

Conversation

@cgivre

@cgivre cgivre commented Feb 6, 2026 •

Copy link
Copy Markdown
Contributor

DRILL-XXXX: Refactor User Interface

Description

This PR refactors Drill's UI and refactors the Query view, adds visualizations and dashboards and in general makes Drill much more user friendly.

Screenshot 2026-02-06 at 10 36 16 Screenshot 2026-02-06 at 10 36 23 Screenshot 2026-02-06 at 10 36 30 Screenshot 2026-02-06 at 10 36 40

Documentation

(Please describe user-visible changes similar to what should appear in the Drill documentation.)

Testing

(Please describe how this PR has been tested.)

@cgivre cgivre self-assigned this Feb 6, 2026
@cgivre cgivre changed the title User Interface Improvements Drill-XXXX: Refactor User Interface Feb 6, 2026
@cgivre cgivre added enhancement PRs that add a new functionality to Drill doc-impacting PRs that affect the documentation ui PRs relating to the User Interface major-update labels Feb 6, 2026
@cgivre
cgivre force-pushed the feature/sqllab-react-ui branch from 080ba0b to 36af30f Compare March 9, 2026 13:45
Comment thread exec/java-exec/src/main/resources/webapp/src/hooks/usePyodide.ts Fixed
Comment thread exec/java-exec/src/main/resources/webapp/src/hooks/usePyodide.ts Fixed
Comment thread exec/java-exec/src/main/resources/webapp/src/hooks/usePyodide.ts Fixed
Comment thread exec/java-exec/src/main/resources/webapp/src/hooks/usePyodide.ts Fixed
Comment thread exec/java-exec/src/main/resources/webapp/src/hooks/usePyodide.ts Fixed
Comment thread exec/java-exec/src/main/resources/webapp/src/hooks/usePyodide.ts Fixed
Comment thread exec/java-exec/src/main/resources/webapp/src/hooks/usePyodide.ts Fixed
Comment thread exec/java-exec/src/main/resources/webapp/src/hooks/usePyodide.ts Fixed
@cgivre
cgivre force-pushed the feature/sqllab-react-ui branch 2 times, most recently from 33fb68e to 34bfc23 Compare March 25, 2026 13:50
@cgivre
cgivre force-pushed the feature/sqllab-react-ui branch from 1b68007 to bc4e985 Compare June 16, 2026 14:20
@cgivre
cgivre force-pushed the feature/sqllab-react-ui branch 2 times, most recently from ff3d719 to dc96869 Compare June 25, 2026 17:38
Comment thread exec/java-exec/src/main/java/org/apache/drill/exec/server/rest/StatusResources.java Dismissed
@cgivre
cgivre force-pushed the feature/sqllab-react-ui branch from dfde1d3 to 5d16fd0 Compare July 30, 2026 18:12
@cgivre
cgivre force-pushed the feature/sqllab-react-ui branch from 1cdcb53 to 09690cf Compare August 10, 2026 20:26
@cgivre
cgivre force-pushed the feature/sqllab-react-ui branch from 3aac985 to 65f6b74 Compare August 20, 2026 11:00
@cgivre
cgivre force-pushed the feature/sqllab-react-ui branch from 1ffabfe to fbcc239 Compare August 27, 2026 16:24
@cgivre
cgivre force-pushed the feature/sqllab-react-ui branch from dd37032 to 2d6a668 Compare September 8, 2026 18:06
@cgivre
cgivre force-pushed the feature/sqllab-react-ui branch from 0a7bb89 to d329264 Compare October 1, 2026 15:57
@cgivre
cgivre force-pushed the feature/sqllab-react-ui branch from 4a37135 to d3be116 Compare October 7, 2026 16:01
Add a protocol decoder framework to the PCAP and PCAP-NG format plugins
and a set of decoders built on it. Packet decoders parse a single
packet's payload; session decoders work on reassembled TCP streams.
Decoded fields appear in the parsed_protocol, parsed_data and
decode_error columns, and a decoder failure never fails the query.

Packet decoders: DNS, HTTP, ICMP and ICMPv6, ARP, NTP, syslog, SSDP,
SIP, DHCP, DHCPv6, TFTP, NetBIOS Name Service, RADIUS, SNMP, Kerberos,
STUN, TLS hello (with JA4 client fingerprints) and QUIC Initial (with
ClientHello and JA4).

Session decoders: HTTP (requests paired with their final responses),
DNS over TCP, FTP, SSH, SMTP, POP3, IMAP, LDAP, MQTT, RDP, Telnet,
SMB2/SMB3 with a shared NTLMSSP parser, and TLS sessions with
certificate details.

Reader changes: TCP stream reassembly for session decoders, bounded
length fields, malformed packet headers recorded instead of failing,
reliable reading of compressed and damaged captures, an
exposeCredentials format option, and the PCAP-NG timestamp column
renamed to packet_timestamp.

Scan framework fixes needed by nested decoder output: keep map arrays
nested in maps intact, count projected array dimensions per column, and
let harvest grow vectors past the batch size limit.

Documented in docs/dev/PcapProtocolDecoders.md.
…lows

Replace the Freemarker SQL Lab with a React single-page app (React 18,
Ant Design 5, TanStack Query) under exec/java-exec/src/main/resources/
webapp, backed by new REST resources. Developer documentation is under
docs/dev, with a per-page UI reference in docs/dev/ui.

SQL Lab: multi-tab Monaco editor with server-side tab persistence,
schema explorer with schema sampling for dynamic-schema tables,
server-side pagination of large results, a backend result cache, query
profiles, saved queries, and saving a query as a view or materialized
view. Includes a SQL dialect transpiler (sqlglot on GraalPy).

Visualizations and dashboards: chart, metric and choropleth map
visualizations (US states, counties and ZIP codes with lazy-loaded
GeoJSON), dashboards with images and AI Q&A, and a geospatial filter
builder that turns drawn shapes into ST_ predicates.

Projects: datasets, saved queries, visualizations, dashboards and a wiki
grouped by project, with sharing, a per-project schema cache, and PDF
export of wiki pages.

Prospector AI assistant: chat over OpenAI, Anthropic, Ollama and
enterprise providers (proxy, TLS, custom headers), with project context,
schema and function metadata, credential redaction, a sendDataToAi
control, generated reports saved to the project wiki, and an AI
analytics dashboard built on a JSONL event log queried with Drill SQL.

Workflows: replace the query scheduler with workflows, a saved query on
a schedule followed by a pipeline of conditional actions (record alert,
save to table, email). Includes a condition language and builder,
templates, dry runs, cluster-safe scheduling, crash recovery, run-as-
owner permissions, a run log queried with Drill SQL, migration of
existing schedules, and a user and admin guide.

Admin: data source and credential management, storage plugin logos,
cluster, metrics, options, logs and threads pages.
@cgivre
cgivre force-pushed the feature/sqllab-react-ui branch from d3be116 to c26aece Compare October 21, 2026 13:41

This branch has not been deployed

No deployments
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

doc-impacting PRs that affect the documentation enhancement PRs that add a new functionality to Drill major-update ui PRs relating to the User Interface

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants