Skip to content

Drill-XXXX: Refactor User Interface - #3037

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

cgivre wants to merge 375 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 added 29 commits October 2, 2026 16:02
# Conflicts:
#	contrib/format-pcapng/src/main/resources/META-INF/services/org.apache.drill.exec.store.pcap.protocol.PacketProtocolDecoder
# Conflicts:
#	contrib/format-pcapng/src/main/resources/META-INF/services/org.apache.drill.exec.store.pcap.protocol.PacketProtocolDecoder
Harvesting a batch fills in values for columns that were not written, and that
fill may need to grow a vector. When the batch was already over its memory
budget, the growth was refused and treated as overflow, which is not possible
during harvest, so the query failed with Unexpected state: FULL_BATCH. Readers
with many sparse columns, such as nested maps that most rows leave empty, hit
this on ordinary files.
Decodes the cleartext TLS handshake of TCP sessions on TLS ports: SNI,
ALPN, offered and selected versions, cipher suite, session resumption and,
for TLS 1.2 and earlier, the server certificate chain (parsed with the JDK
X.509 certificate factory). Records and handshake messages are reassembled
across segments and records, bounded at 64 KB per direction. In TLS 1.3 the
certificate is encrypted and only that fact is recorded.
# Conflicts:
#	contrib/format-pcapng/src/test/resources/fixtures/tls_fixtures.py
FTP control channel (port 21): banner, login, SYST, directories, transfers
with their data addresses, commands and replies; stops at an accepted AUTH TLS.
SSH (ports 22 and 2222): identification strings and the first KEXINIT of each
side with HASSH client and server fingerprints.
DNS over TCP (port 53): every length-prefixed message of a session, including
zone transfers, reusing DnsParser.
# Conflicts:
#	contrib/format-pcapng/src/main/resources/META-INF/services/org.apache.drill.exec.store.pcap.protocol.SessionProtocolDecoder
Session decoders for the mail protocols, sharing header parsing (folded
lines, RFC 2047 UTF-8 encoded-words), SASL credential handling and bounded
lists in protocol/mail. Each records the greeting, commands and replies
with passwords masked unless exposeCredentials is set, STARTTLS/STLS
switches, and the headers and sizes of transferred or retrieved messages.
# Conflicts:
#	contrib/format-pcapng/src/main/resources/META-INF/services/org.apache.drill.exec.store.pcap.protocol.SessionProtocolDecoder
Add an identity-only NTLMSSP parser (protocol.ntlm) and an SMB2/SMB3
session decoder (protocol.smb, TCP 445 and 139). The decoder reports the
negotiated and offered dialects, signing and encryption state, the server
and client GUIDs, and the user, domain and workstation from the NTLMSSP
blob inside the SPNEGO token of SESSION_SETUP. Pure SMB1 sessions report
only dialect SMB1; an SMB3 transform header marks the stream encrypted and
opaque; Kerberos is reported as auth_type kerberos with no identity fields.

The NTLM helper exposes identity metadata only: server challenges, LM/NT
responses and session keys are never read out, regardless of
exposeCredentials.
# Conflicts:
#	contrib/format-pcapng/src/main/resources/META-INF/services/org.apache.drill.exec.store.pcap.protocol.SessionProtocolDecoder
Decodes the cleartext metadata of Kerberos v5 (RFC 4120) AS-REQ, AS-REP,
TGS-REQ, TGS-REP and KRB-ERROR messages over UDP and single-segment TCP
port 88: message type, realm, client and server principal names, offered
encryption types, the ticket enc-part etype (the Kerberoasting signal),
the error code and name, pre-auth presence and the requested till time.
Encrypted parts are never read.

Adds a shared, bounded ASN.1 BER reader (protocol.asn1.Asn1Reader),
modelled on the SNMP decoder's package-private BerReader, with value
accessors for integers, strings, OIDs and GeneralizedTime.
Reassembles LDAP (RFC 4511) messages across TCP segments on port 389 and
reads the bind version, DN and authentication type, whether a password was
sent (and the cleartext password only with exposeCredentials), the bind
result code and name, search base DNs, scopes and RFC 4515 filter strings,
and the DNs of returned entries. Lists are capped at 64 and sessions at
1000 messages. Reuses the shared protocol.asn1.Asn1Reader.
# Conflicts:
#	contrib/format-pcapng/src/main/resources/META-INF/services/org.apache.drill.exec.store.pcap.protocol.PacketProtocolDecoder
#	contrib/format-pcapng/src/main/resources/META-INF/services/org.apache.drill.exec.store.pcap.protocol.SessionProtocolDecoder

private static byte[] aesEcb(byte[] key, byte[] data) {
try {
Cipher cipher = Cipher.getInstance("AES/ECB/NoPadding");

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