From ead7f602b3bf087cf88f8b9e1ad4b5f7528989e9 Mon Sep 17 00:00:00 2001 From: Maciej Bodek Date: Tue, 14 May 2024 12:06:00 +0200 Subject: [PATCH 01/86] Fetch WAL Tables --- .../web-console/src/scenes/Schema/index.tsx | 23 ++++++++++++++++--- packages/web-console/src/utils/questdb.ts | 8 +++++++ 2 files changed, 28 insertions(+), 3 deletions(-) diff --git a/packages/web-console/src/scenes/Schema/index.tsx b/packages/web-console/src/scenes/Schema/index.tsx index ee074766b..db0cc79f1 100644 --- a/packages/web-console/src/scenes/Schema/index.tsx +++ b/packages/web-console/src/scenes/Schema/index.tsx @@ -107,9 +107,9 @@ const Schema = ({ const [loadingError, setLoadingError] = useState(null) const errorRef = useRef(null) const [tables, setTables] = useState() + const [walTables, setWalTables] = useState() const [opened, setOpened] = useState() const [isScrolling, setIsScrolling] = useState(false) - const [searchVisible, setSearchVisible] = useState(false) const { consoleConfig } = useSettings() const dispatch = useDispatch() const [scrollAtTop, setScrollAtTop] = useState(true) @@ -148,6 +148,13 @@ const Schema = ({ ) } + const fetchWalTables = async () => { + const response = await quest.query("wal_tables()") + if (response && response.type === QuestDB.Type.DQL) { + setWalTables(response.data) + } + } + const copySchemasToClipboard = async () => { if (!tables) return const ddls = await Promise.all( @@ -174,9 +181,11 @@ const Schema = ({ useEffect(() => { void fetchTables() + void fetchWalTables() eventBus.subscribe(EventType.MSG_QUERY_SCHEMA, () => { void fetchTables() + void fetchWalTables() }) eventBus.subscribe(EventType.MSG_CONNECTION_ERROR, (error) => { @@ -190,11 +199,19 @@ const Schema = ({ // The connection has been re-established, and we have an error in memory if (errorRef.current !== null) { void fetchTables() + void fetchWalTables() } }) - window.addEventListener("focus", fetchTables) - return () => window.removeEventListener("focus", fetchTables) + window.addEventListener("focus", () => { + void fetchTables() + void fetchWalTables() + }) + + window.removeEventListener("focus", () => { + void fetchTables() + void fetchWalTables() + }) }, []) return ( diff --git a/packages/web-console/src/utils/questdb.ts b/packages/web-console/src/utils/questdb.ts index b76d818af..9309529ac 100644 --- a/packages/web-console/src/utils/questdb.ts +++ b/packages/web-console/src/utils/questdb.ts @@ -110,6 +110,14 @@ export type Table = { dedup: boolean } +export type WalTable = { + name: string + suspended: boolean + writerTxn: number + writerLagTxtCount: number + sequencerTxn: number +} + export type Column = { column: string indexed: boolean From f577cde6ec3c760ebb1e94afc5326b8b9f2cff09 Mon Sep 17 00:00:00 2001 From: Maciej Bodek Date: Tue, 14 May 2024 13:41:44 +0200 Subject: [PATCH 02/86] Filtering --- .../src/scenes/Schema/Table/index.tsx | 1 + .../src/scenes/Schema/Toolbar/toolbar.tsx | 53 +++++++++++++++++++ .../web-console/src/scenes/Schema/index.tsx | 40 +++++++++----- packages/web-console/src/utils/index.ts | 1 + .../src/utils/levenstheinDistance.ts | 33 ++++++++++++ 5 files changed, 114 insertions(+), 14 deletions(-) create mode 100644 packages/web-console/src/scenes/Schema/Toolbar/toolbar.tsx create mode 100644 packages/web-console/src/utils/levenstheinDistance.ts diff --git a/packages/web-console/src/scenes/Schema/Table/index.tsx b/packages/web-console/src/scenes/Schema/Table/index.tsx index 3a6642844..52b187cad 100644 --- a/packages/web-console/src/scenes/Schema/Table/index.tsx +++ b/packages/web-console/src/scenes/Schema/Table/index.tsx @@ -54,6 +54,7 @@ const Wrapper = styled.div` align-items: stretch; flex-direction: column; overflow: hidden; + font-family: ${({ theme }) => theme.fontMonospace}; ${collapseTransition}; ` diff --git a/packages/web-console/src/scenes/Schema/Toolbar/toolbar.tsx b/packages/web-console/src/scenes/Schema/Toolbar/toolbar.tsx new file mode 100644 index 000000000..6aa0f729e --- /dev/null +++ b/packages/web-console/src/scenes/Schema/Toolbar/toolbar.tsx @@ -0,0 +1,53 @@ +import React from "react" +import styled from "styled-components" +import { Box, Input } from "@questdb/react-components" +import { Filter3 } from "@styled-icons/remix-line" + +const Root = styled(Box).attrs({ + justifyContent: "space-between", + gap: "1rem", + alignItems: "center", +})` + width: 100%; + padding: 0 2rem; +` + +const Filter = styled.div` + position: relative; + display: flex; + width: 100%; +` + +const FilterIcon = styled(Filter3)` + position: absolute; + top: 50%; + transform: translateY(-50%); + left: 1rem; +` + +const StyledInput = styled(Input)` + padding-left: 3.5rem; + + &::placeholder { + color: ${({ theme }) => theme.color.foreground}; + } +` + +export const Toolbar = ({ + setFilter, +}: { + setFilter: (filter: string) => void +}) => { + return ( + + + + setFilter(e.target.value)} + /> + + + ) +} diff --git a/packages/web-console/src/scenes/Schema/index.tsx b/packages/web-console/src/scenes/Schema/index.tsx index db0cc79f1..82bdd6e3b 100644 --- a/packages/web-console/src/scenes/Schema/index.tsx +++ b/packages/web-console/src/scenes/Schema/index.tsx @@ -56,6 +56,8 @@ import { QuestContext, useSettings } from "../../providers" import { eventBus } from "../../modules/EventBus" import { EventType } from "../../modules/EventBus/types" import { formatTableSchemaQueryResult } from "./Table/ContextualMenu/services" +import { Toolbar } from "./Toolbar/toolbar" +import { levenshteinDistance } from "../../utils" type Props = Readonly<{ hideMenu?: boolean @@ -76,7 +78,6 @@ const Content = styled(PaneContent)<{ _loading: boolean }>` display: block; - font-family: ${({ theme }) => theme.fontMonospace}; overflow: auto; ${({ _loading }) => _loading && loadingStyles}; ` @@ -115,6 +116,7 @@ const Schema = ({ const [scrollAtTop, setScrollAtTop] = useState(true) const scrollerRef = useRef(null) const [copied, setCopied] = useState(false) + const [filter, setFilter] = useState("") const handleChange = (name: string) => { setOpened(name === opened ? undefined : name) @@ -267,24 +269,34 @@ const Schema = ({ ref={scrollerRef} onScroll={() => setScrollAtTop(scrollerRef?.current?.scrollTop === 0)} > + {loading ? ( ) : loadingError ? ( ) : ( - tables?.map((table) => ( - - )) + tables + ?.filter((table: QuestDB.Table) => { + const normalizedTableName = table.table_name.toLowerCase() + const normalizedFilter = filter.toLowerCase() + return ( + normalizedTableName.includes(normalizedFilter) || + levenshteinDistance(normalizedTableName, normalizedFilter) < 3 + ) + }) + .map((table: QuestDB.Table) => ( +
+ )) )} {!loading && } diff --git a/packages/web-console/src/utils/index.ts b/packages/web-console/src/utils/index.ts index 68000d4c7..3bde64df9 100644 --- a/packages/web-console/src/utils/index.ts +++ b/packages/web-console/src/utils/index.ts @@ -26,6 +26,7 @@ export * from "./copyToClipboard" export * from "./isServerError" export * from "./fetch" export * from "./fromFetch" +export * from "./levenstheinDistance" export * from "./questdb" export * from "./shortenText" export * from "./styled" diff --git a/packages/web-console/src/utils/levenstheinDistance.ts b/packages/web-console/src/utils/levenstheinDistance.ts new file mode 100644 index 000000000..c141868a1 --- /dev/null +++ b/packages/web-console/src/utils/levenstheinDistance.ts @@ -0,0 +1,33 @@ +export const levenshteinDistance = (str1: string, str2: string): number => { + const len1 = str1.length + const len2 = str2.length + + let matrix = Array(len1 + 1) + for (let i = 0; i <= len1; i++) { + matrix[i] = Array(len2 + 1) + } + + for (let i = 0; i <= len1; i++) { + matrix[i][0] = i + } + + for (let j = 0; j <= len2; j++) { + matrix[0][j] = j + } + + for (let i = 1; i <= len1; i++) { + for (let j = 1; j <= len2; j++) { + if (str1[i - 1] === str2[j - 1]) { + matrix[i][j] = matrix[i - 1][j - 1] + } else { + matrix[i][j] = Math.min( + matrix[i - 1][j] + 1, + matrix[i][j - 1] + 1, + matrix[i - 1][j - 1] + 1, + ) + } + } + } + + return matrix[len1][len2] +} From f51109d33d7dbdddee236b92146fbeab07829360 Mon Sep 17 00:00:00 2001 From: Maciej Bodek Date: Tue, 14 May 2024 15:54:58 +0200 Subject: [PATCH 03/86] Suspended table indicator --- .../src/scenes/Schema/Toolbar/toolbar.tsx | 28 ++++++++++- .../web-console/src/scenes/Schema/index.tsx | 47 ++++++++++++------- 2 files changed, 56 insertions(+), 19 deletions(-) diff --git a/packages/web-console/src/scenes/Schema/Toolbar/toolbar.tsx b/packages/web-console/src/scenes/Schema/Toolbar/toolbar.tsx index 6aa0f729e..d1cee7c86 100644 --- a/packages/web-console/src/scenes/Schema/Toolbar/toolbar.tsx +++ b/packages/web-console/src/scenes/Schema/Toolbar/toolbar.tsx @@ -2,6 +2,8 @@ import React from "react" import styled from "styled-components" import { Box, Input } from "@questdb/react-components" import { Filter3 } from "@styled-icons/remix-line" +import { ErrorWarning } from "@styled-icons/remix-fill" +import { IconWithTooltip } from "../../../components" const Root = styled(Box).attrs({ justifyContent: "space-between", @@ -10,6 +12,7 @@ const Root = styled(Box).attrs({ })` width: 100%; padding: 0 2rem; + margin-bottom: 1rem; ` const Filter = styled.div` @@ -33,10 +36,19 @@ const StyledInput = styled(Input)` } ` +const Error = styled(Box).attrs({ gap: "0.5rem" })<{ + suspendedTablesCount: number +}>` + color: ${({ theme, suspendedTablesCount }) => + theme.color[`${suspendedTablesCount > 0 ? "red" : "gray1"}`]}; +` + export const Toolbar = ({ - setFilter, + suspendedTablesCount, + setQuery: setFilter, }: { - setFilter: (filter: string) => void + suspendedTablesCount: number + setQuery: (filter: string) => void }) => { return ( @@ -48,6 +60,18 @@ export const Toolbar = ({ onChange={(e) => setFilter(e.target.value)} /> + + } + tooltip={ + suspendedTablesCount > 0 + ? "Show suspended tables" + : "No suspended tables" + } + placement="bottom" + /> + {suspendedTablesCount > 0 && {suspendedTablesCount}} + ) } diff --git a/packages/web-console/src/scenes/Schema/index.tsx b/packages/web-console/src/scenes/Schema/index.tsx index 82bdd6e3b..91af73a46 100644 --- a/packages/web-console/src/scenes/Schema/index.tsx +++ b/packages/web-console/src/scenes/Schema/index.tsx @@ -116,7 +116,7 @@ const Schema = ({ const [scrollAtTop, setScrollAtTop] = useState(true) const scrollerRef = useRef(null) const [copied, setCopied] = useState(false) - const [filter, setFilter] = useState("") + const [query, setQuery] = useState("") const handleChange = (name: string) => { setOpened(name === opened ? undefined : name) @@ -129,12 +129,27 @@ const Schema = ({ from(quest.showTables()).pipe(startWith(null)), of(true).pipe(delay(1000), startWith(false)), ).subscribe( - ([response]) => { + async ([response]) => { if (response && response.type === QuestDB.Type.DQL) { setLoadingError(null) errorRef.current = null setTables(response.data) dispatch(actions.query.setTables(response.data)) + // Fetch WAL info about the tables + const walTablesResponse = await quest.query( + "wal_tables()", + ) + if ( + walTablesResponse && + walTablesResponse.type === QuestDB.Type.DQL + ) { + // Filter out the system tables + setWalTables( + walTablesResponse.data.filter((wt) => + response.data.map((t) => t.table_name).includes(wt.name), + ), + ) + } } else { setLoading(false) } @@ -183,11 +198,9 @@ const Schema = ({ useEffect(() => { void fetchTables() - void fetchWalTables() eventBus.subscribe(EventType.MSG_QUERY_SCHEMA, () => { void fetchTables() - void fetchWalTables() }) eventBus.subscribe(EventType.MSG_CONNECTION_ERROR, (error) => { @@ -201,19 +214,12 @@ const Schema = ({ // The connection has been re-established, and we have an error in memory if (errorRef.current !== null) { void fetchTables() - void fetchWalTables() } }) - window.addEventListener("focus", () => { - void fetchTables() - void fetchWalTables() - }) + window.addEventListener("focus", fetchTables) - window.removeEventListener("focus", () => { - void fetchTables() - void fetchWalTables() - }) + window.removeEventListener("focus", fetchTables) }, []) return ( @@ -269,7 +275,14 @@ const Schema = ({ ref={scrollerRef} onScroll={() => setScrollAtTop(scrollerRef?.current?.scrollTop === 0)} > - + {tables && tables.length > 0 && ( + t.suspended).length ?? 0 + } + setQuery={setQuery} + /> + )} {loading ? ( ) : loadingError ? ( @@ -278,10 +291,10 @@ const Schema = ({ tables ?.filter((table: QuestDB.Table) => { const normalizedTableName = table.table_name.toLowerCase() - const normalizedFilter = filter.toLowerCase() + const normalizedQuery = query.toLowerCase() return ( - normalizedTableName.includes(normalizedFilter) || - levenshteinDistance(normalizedTableName, normalizedFilter) < 3 + normalizedTableName.includes(normalizedQuery) || + levenshteinDistance(normalizedTableName, normalizedQuery) < 3 ) }) .map((table: QuestDB.Table) => ( From ce785a300e74ad188cad49a0444d7eb4ba4ce86e Mon Sep 17 00:00:00 2001 From: Maciej Bodek Date: Tue, 14 May 2024 16:08:34 +0200 Subject: [PATCH 04/86] Pass WAL data to tables, show suspension --- .../src/scenes/Schema/Row/index.tsx | 38 +++++++++---------- .../src/scenes/Schema/Table/index.tsx | 2 + .../web-console/src/scenes/Schema/index.tsx | 3 ++ 3 files changed, 22 insertions(+), 21 deletions(-) diff --git a/packages/web-console/src/scenes/Schema/Row/index.tsx b/packages/web-console/src/scenes/Schema/Row/index.tsx index b5728bc5d..5fce223bf 100644 --- a/packages/web-console/src/scenes/Schema/Row/index.tsx +++ b/packages/web-console/src/scenes/Schema/Row/index.tsx @@ -33,6 +33,7 @@ import { Information } from "@styled-icons/remix-line" import { Table as TableIcon } from "@styled-icons/remix-line" import { FileList, PieChart } from "@styled-icons/remix-line" import type { TreeNodeKind } from "../../../components/Tree" +import * as QuestDB from "../../../utils/questdb" import { SecondaryButton, @@ -55,6 +56,7 @@ type Props = Readonly<{ onClick?: (event: MouseEvent) => void partitionBy?: string walEnabled?: boolean + walTableData?: QuestDB.WalTable suffix?: ReactNode tooltip?: boolean type?: string @@ -141,11 +143,11 @@ const DotIcon = styled(CheckboxBlankCircle)` margin-right: 1rem; ` -const TitleIcon = styled(TableIcon)` +const TitleIcon = styled(TableIcon)<{ suspended?: boolean }>` min-height: 18px; min-width: 18px; margin-right: 1rem; - color: ${color("cyan")}; + color: ${({ theme, suspended }) => theme.color[suspended ? "red" : "cyan"]}; ` const InfoIconWrapper = styled.div` @@ -181,6 +183,7 @@ const Row = ({ name, partitionBy, walEnabled, + walTableData, onClick, suffix, tooltip, @@ -201,7 +204,9 @@ const Row = ({ return ( - {kind === "table" && } + {kind === "table" && ( + + )} {kind === "column" && indexed && ( )} - {kind === "table" && partitionBy !== "NONE" && ( - - - {partitionBy} - - )} + {!walTableData?.suspended && + kind === "table" && + partitionBy !== "NONE" && ( + + + {partitionBy} + + )} - {kind === "table" && walEnabled && ( + {!walTableData?.suspended && kind === "table" && walEnabled && ( WAL )} - {["column", "table"].includes(kind) && ( - - - Add - - )} - {tooltip && description && ( void + walTableData?: QuestDB.WalTable }> const Wrapper = styled.div` @@ -119,6 +120,7 @@ const Table = ({ partitionBy, expanded = false, walEnabled, + walTableData, onChange, dedup, }: Props) => { diff --git a/packages/web-console/src/scenes/Schema/index.tsx b/packages/web-console/src/scenes/Schema/index.tsx index 91af73a46..76400bc54 100644 --- a/packages/web-console/src/scenes/Schema/index.tsx +++ b/packages/web-console/src/scenes/Schema/index.tsx @@ -307,6 +307,9 @@ const Schema = ({ onChange={handleChange} partitionBy={table.partitionBy} walEnabled={table.walEnabled} + walTableData={walTables?.find( + (wt) => wt.name === table.table_name, + )} dedup={table.dedup} /> )) From e475aa0fbef47b1cccdb8838f13a2c6ef3f1ebc2 Mon Sep 17 00:00:00 2001 From: Maciej Bodek Date: Tue, 14 May 2024 16:41:28 +0200 Subject: [PATCH 05/86] TEMP: Use mocked query for `wal_tables()` --- .../src/scenes/Schema/Row/index.tsx | 6 +-- .../src/scenes/Schema/Table/index.tsx | 1 + .../web-console/src/scenes/Schema/index.tsx | 22 ++++---- .../scenes/Schema/mockSuspendedResponse.ts | 52 +++++++++++++++++++ packages/web-console/src/utils/questdb.ts | 17 ++++-- 5 files changed, 82 insertions(+), 16 deletions(-) create mode 100644 packages/web-console/src/scenes/Schema/mockSuspendedResponse.ts diff --git a/packages/web-console/src/scenes/Schema/Row/index.tsx b/packages/web-console/src/scenes/Schema/Row/index.tsx index 5fce223bf..9ea364e5b 100644 --- a/packages/web-console/src/scenes/Schema/Row/index.tsx +++ b/packages/web-console/src/scenes/Schema/Row/index.tsx @@ -143,11 +143,11 @@ const DotIcon = styled(CheckboxBlankCircle)` margin-right: 1rem; ` -const TitleIcon = styled(TableIcon)<{ suspended?: boolean }>` +const TitleIcon = styled(TableIcon)<{ $suspended?: boolean }>` min-height: 18px; min-width: 18px; margin-right: 1rem; - color: ${({ theme, suspended }) => theme.color[suspended ? "red" : "cyan"]}; + color: ${({ theme, $suspended }) => theme.color[$suspended ? "red" : "cyan"]}; ` const InfoIconWrapper = styled.div` @@ -205,7 +205,7 @@ const Row = ({ {kind === "table" && ( - + )} {kind === "column" && indexed && ( diff --git a/packages/web-console/src/scenes/Schema/Table/index.tsx b/packages/web-console/src/scenes/Schema/Table/index.tsx index db782cfc1..8f6e0bdf5 100644 --- a/packages/web-console/src/scenes/Schema/Table/index.tsx +++ b/packages/web-console/src/scenes/Schema/Table/index.tsx @@ -195,6 +195,7 @@ const Table = ({ }} partitionBy={partitionBy} walEnabled={walEnabled} + walTableData={walTableData} suffix={isLoading && } tooltip={!!description} /> diff --git a/packages/web-console/src/scenes/Schema/index.tsx b/packages/web-console/src/scenes/Schema/index.tsx index 76400bc54..4c349b8b7 100644 --- a/packages/web-console/src/scenes/Schema/index.tsx +++ b/packages/web-console/src/scenes/Schema/index.tsx @@ -59,6 +59,8 @@ import { formatTableSchemaQueryResult } from "./Table/ContextualMenu/services" import { Toolbar } from "./Toolbar/toolbar" import { levenshteinDistance } from "../../utils" +import mockSuspendedResponse from "./mockSuspendedResponse" + type Props = Readonly<{ hideMenu?: boolean style?: CSSProperties @@ -136,9 +138,16 @@ const Schema = ({ setTables(response.data) dispatch(actions.query.setTables(response.data)) // Fetch WAL info about the tables - const walTablesResponse = await quest.query( - "wal_tables()", - ) + // const walTablesResponse = await quest.query( + // "wal_tables()", + // ) + + // TODO: Remove mocked query result + const walTablesResponse = + await quest.mockQueryResult( + mockSuspendedResponse as QuestDB.QueryRawResult, + ) + if ( walTablesResponse && walTablesResponse.type === QuestDB.Type.DQL @@ -165,13 +174,6 @@ const Schema = ({ ) } - const fetchWalTables = async () => { - const response = await quest.query("wal_tables()") - if (response && response.type === QuestDB.Type.DQL) { - setWalTables(response.data) - } - } - const copySchemasToClipboard = async () => { if (!tables) return const ddls = await Promise.all( diff --git a/packages/web-console/src/scenes/Schema/mockSuspendedResponse.ts b/packages/web-console/src/scenes/Schema/mockSuspendedResponse.ts new file mode 100644 index 000000000..529edac49 --- /dev/null +++ b/packages/web-console/src/scenes/Schema/mockSuspendedResponse.ts @@ -0,0 +1,52 @@ +import * as QuestDB from "../../utils/questdb" + +export default { + query: "wal_tables()", + type: QuestDB.Type.DQL, + columns: [ + { + name: "name", + type: "STRING", + }, + { + name: "suspended", + type: "BOOLEAN", + }, + { + name: "writerTxn", + type: "LONG", + }, + { + name: "writerLagTxnCount", + type: "LONG", + }, + { + name: "sequencerTxn", + type: "LONG", + }, + ], + timestamp: -1, + dataset: [ + ["sys.acl_entities", false, "3", "0", "3"], + ["sys.acl_permissions", false, "30", "0", "30"], + ["sys.acl_jwk_tokens", false, "0", "0", "0"], + ["ecommerce_stats", false, "1", "0", "1"], + ["sys.acl_rest_tokens", false, "13", "0", "13"], + ["btc_trades", false, "1", "0", "1"], + ["gitlog", true, "1", "0", "1"], + ["chicago_weather_stations", true, "1", "0", "1"], + ["sys.acl_links", false, "0", "0", "0"], + ["sys.acl_external_groups", false, "1", "0", "1"], + ["sys.acl_passwords", false, "0", "0", "0"], + ], + count: 11, + timings: { + authentication: 25125, + compiler: 0, + execute: 14539625, + count: 0, + }, + explain: { + jitCompiled: false, + }, +} diff --git a/packages/web-console/src/utils/questdb.ts b/packages/web-console/src/utils/questdb.ts index 9309529ac..70d30a4b4 100644 --- a/packages/web-console/src/utils/questdb.ts +++ b/packages/web-console/src/utils/questdb.ts @@ -309,9 +309,9 @@ export class Client { this._controllers = [] } - async query(query: string, options?: Options): Promise> { - const result = await this.queryRaw(query, options) - + static transformQueryRawResult = ( + result: QueryRawResult, + ): QueryResult => { if (result.type === Type.DQL) { const { columns, count, dataset, timings } = result @@ -339,6 +339,17 @@ export class Client { return result } + async query(query: string, options?: Options): Promise> { + const result = await this.queryRaw(query, options) + + return Client.transformQueryRawResult(result) + } + + // TODO: Remove mocked method + async mockQueryResult(result: QueryRawResult): Promise> { + return Client.transformQueryRawResult(result) + } + async queryRaw(query: string, options?: Options): Promise { const controller = new AbortController() const payload = { From 00bd041e9ed3580d3a5e85bc889640116a0c23b5 Mon Sep 17 00:00:00 2001 From: Maciej Bodek Date: Tue, 14 May 2024 17:33:57 +0200 Subject: [PATCH 06/86] Toggle suspended filter --- .../src/scenes/Schema/Row/index.tsx | 13 ------ .../src/scenes/Schema/Toolbar/toolbar.tsx | 41 +++++++++++++------ .../web-console/src/scenes/Schema/index.tsx | 13 +++++- 3 files changed, 40 insertions(+), 27 deletions(-) diff --git a/packages/web-console/src/scenes/Schema/Row/index.tsx b/packages/web-console/src/scenes/Schema/Row/index.tsx index 9ea364e5b..1ecc1d706 100644 --- a/packages/web-console/src/scenes/Schema/Row/index.tsx +++ b/packages/web-console/src/scenes/Schema/Row/index.tsx @@ -28,7 +28,6 @@ import { Rocket } from "@styled-icons/boxicons-regular" import { SortDown } from "@styled-icons/boxicons-regular" import { RightArrow } from "@styled-icons/boxicons-regular" import { CheckboxBlankCircle } from "@styled-icons/remix-line" -import { CodeSSlash } from "@styled-icons/remix-line" import { Information } from "@styled-icons/remix-line" import { Table as TableIcon } from "@styled-icons/remix-line" import { FileList, PieChart } from "@styled-icons/remix-line" @@ -189,18 +188,6 @@ const Row = ({ tooltip, type, }: Props) => { - const { insertTextAtCursor } = useEditor() - - const handlePlusButtonClick = useCallback( - (event: MouseEvent) => { - event.stopPropagation() - insertTextAtCursor( - kind === "table" && !/^[a-z0-9_]+$/i.test(name) ? `"${name}"` : name, - ) - }, - [name, kind], - ) - return ( diff --git a/packages/web-console/src/scenes/Schema/Toolbar/toolbar.tsx b/packages/web-console/src/scenes/Schema/Toolbar/toolbar.tsx index d1cee7c86..dce4bc868 100644 --- a/packages/web-console/src/scenes/Schema/Toolbar/toolbar.tsx +++ b/packages/web-console/src/scenes/Schema/Toolbar/toolbar.tsx @@ -1,6 +1,6 @@ import React from "react" import styled from "styled-components" -import { Box, Input } from "@questdb/react-components" +import { Button, Box, Input } from "@questdb/react-components" import { Filter3 } from "@styled-icons/remix-line" import { ErrorWarning } from "@styled-icons/remix-fill" import { IconWithTooltip } from "../../../components" @@ -39,16 +39,25 @@ const StyledInput = styled(Input)` const Error = styled(Box).attrs({ gap: "0.5rem" })<{ suspendedTablesCount: number }>` - color: ${({ theme, suspendedTablesCount }) => - theme.color[`${suspendedTablesCount > 0 ? "red" : "gray1"}`]}; + &, + button { + color: ${({ theme, suspendedTablesCount }) => + theme.color[`${suspendedTablesCount > 0 ? "red" : "gray1"}`]}; + cursor: ${({ suspendedTablesCount }) => + suspendedTablesCount > 0 ? "pointer" : "default"}; + } ` export const Toolbar = ({ suspendedTablesCount, setQuery: setFilter, + filterSuspendedOnly, + setFilterSuspendedOnly, }: { suspendedTablesCount: number setQuery: (filter: string) => void + filterSuspendedOnly: boolean + setFilterSuspendedOnly: (filter: boolean) => void }) => { return ( @@ -61,16 +70,24 @@ export const Toolbar = ({ /> - } - tooltip={ - suspendedTablesCount > 0 - ? "Show suspended tables" - : "No suspended tables" + ) diff --git a/packages/web-console/src/scenes/Schema/index.tsx b/packages/web-console/src/scenes/Schema/index.tsx index 4c349b8b7..a12d425bf 100644 --- a/packages/web-console/src/scenes/Schema/index.tsx +++ b/packages/web-console/src/scenes/Schema/index.tsx @@ -119,6 +119,7 @@ const Schema = ({ const scrollerRef = useRef(null) const [copied, setCopied] = useState(false) const [query, setQuery] = useState("") + const [filterSuspendedOnly, setFilterSuspendedOnly] = useState(false) const handleChange = (name: string) => { setOpened(name === opened ? undefined : name) @@ -283,6 +284,8 @@ const Schema = ({ walTables?.filter((t) => t.suspended).length ?? 0 } setQuery={setQuery} + filterSuspendedOnly={filterSuspendedOnly} + setFilterSuspendedOnly={setFilterSuspendedOnly} /> )} {loading ? ( @@ -295,8 +298,14 @@ const Schema = ({ const normalizedTableName = table.table_name.toLowerCase() const normalizedQuery = query.toLowerCase() return ( - normalizedTableName.includes(normalizedQuery) || - levenshteinDistance(normalizedTableName, normalizedQuery) < 3 + (normalizedTableName.includes(normalizedQuery) || + levenshteinDistance(normalizedTableName, normalizedQuery) < + 3) && + (filterSuspendedOnly + ? table.walEnabled && + walTables?.find((t) => t.name === table.table_name) + ?.suspended + : true) ) }) .map((table: QuestDB.Table) => ( From 713ac7eb5db3e054018213ed991bd13b8636684d Mon Sep 17 00:00:00 2001 From: Maciej Bodek Date: Tue, 14 May 2024 17:38:47 +0200 Subject: [PATCH 07/86] Suspended counter: adjust tooltip --- .../src/scenes/Schema/Toolbar/toolbar.tsx | 35 ++++++++++--------- 1 file changed, 18 insertions(+), 17 deletions(-) diff --git a/packages/web-console/src/scenes/Schema/Toolbar/toolbar.tsx b/packages/web-console/src/scenes/Schema/Toolbar/toolbar.tsx index dce4bc868..11c180624 100644 --- a/packages/web-console/src/scenes/Schema/Toolbar/toolbar.tsx +++ b/packages/web-console/src/scenes/Schema/Toolbar/toolbar.tsx @@ -3,7 +3,7 @@ import styled from "styled-components" import { Button, Box, Input } from "@questdb/react-components" import { Filter3 } from "@styled-icons/remix-line" import { ErrorWarning } from "@styled-icons/remix-fill" -import { IconWithTooltip } from "../../../components" +import { PopperHover, Tooltip } from "../../../components" const Root = styled(Box).attrs({ justifyContent: "space-between", @@ -70,24 +70,25 @@ export const Toolbar = ({ /> - } > - {suspendedTablesCount > 0 && {suspendedTablesCount}} - + + {suspendedTablesCount > 0 + ? `${filterSuspendedOnly ? "Hide" : "Show"} suspended tables` + : "No suspended tables"} + + ) From a14059acbcc9b068d0421a36387935572f930f15 Mon Sep 17 00:00:00 2001 From: Maciej Bodek Date: Wed, 15 May 2024 00:18:02 +0200 Subject: [PATCH 08/86] Filter column names, refactor `information_schema.columns()` into store --- .../src/scenes/Editor/Monaco/index.tsx | 37 +++++-------------- .../createSchemaCompletionProvider.ts | 4 +- .../questdb-sql/getColumnCompletions.ts | 8 +--- .../scenes/Editor/Monaco/questdb-sql/types.ts | 7 ---- .../src/scenes/Schema/Row/index.tsx | 11 ------ .../src/scenes/Schema/Toolbar/toolbar.tsx | 10 ++++- .../web-console/src/scenes/Schema/index.tsx | 30 +++++++++++++-- .../web-console/src/store/Query/actions.ts | 14 ++++++- .../web-console/src/store/Query/reducers.ts | 8 ++++ .../web-console/src/store/Query/selectors.ts | 10 ++++- packages/web-console/src/store/Query/types.ts | 16 +++++++- packages/web-console/src/utils/questdb.ts | 7 ++++ 12 files changed, 100 insertions(+), 62 deletions(-) diff --git a/packages/web-console/src/scenes/Editor/Monaco/index.tsx b/packages/web-console/src/scenes/Editor/Monaco/index.tsx index b7a20faba..60bbcafd0 100644 --- a/packages/web-console/src/scenes/Editor/Monaco/index.tsx +++ b/packages/web-console/src/scenes/Editor/Monaco/index.tsx @@ -32,7 +32,6 @@ import { createSchemaCompletionProvider } from "./questdb-sql" import { color } from "../../../utils" import { eventBus } from "../../../modules/EventBus" import { EventType } from "../../../modules/EventBus/types" -import { InformationSchemaColumn } from "./questdb-sql/types" loader.config({ paths: { @@ -104,6 +103,7 @@ const MonacoEditor = () => { const dispatch = useDispatch() const running = useSelector(selectors.query.getRunning) const tables = useSelector(selectors.query.getTables) + const columns = useSelector(selectors.query.getColumns) const [schemaCompletionHandle, setSchemaCompletionHandle] = useState() const decorationsRef = useRef() @@ -374,32 +374,13 @@ const MonacoEditor = () => { if (editorReady && monacoRef?.current && editorRef?.current) { schemaCompletionHandle?.dispose() setRefreshingTables(true) - try { - const response = await quest.query( - "information_schema.columns()", - ) - if (response.type === QuestDB.Type.DQL) { - setSchemaCompletionHandle( - monacoRef.current.languages.registerCompletionItemProvider( - QuestDBLanguageName, - createSchemaCompletionProvider( - editorRef.current, - tables, - response.data, - ), - ), - ) - } - } catch (e) { - setSchemaCompletionHandle( - monacoRef.current.languages.registerCompletionItemProvider( - QuestDBLanguageName, - createSchemaCompletionProvider(editorRef.current, tables), - ), - ) - } finally { - setRefreshingTables(false) - } + setSchemaCompletionHandle( + monacoRef.current.languages.registerCompletionItemProvider( + QuestDBLanguageName, + createSchemaCompletionProvider(editorRef.current, tables, columns), + ), + ) + setRefreshingTables(false) } } @@ -407,7 +388,7 @@ const MonacoEditor = () => { if (!refreshingTables) { setCompletionProvider() } - }, [tables, monacoRef, editorReady]) + }, [tables, columns, monacoRef, editorReady]) useEffect(() => { window.addEventListener("focus", setCompletionProvider) diff --git a/packages/web-console/src/scenes/Editor/Monaco/questdb-sql/createSchemaCompletionProvider.ts b/packages/web-console/src/scenes/Editor/Monaco/questdb-sql/createSchemaCompletionProvider.ts index 675334395..6ee0344ce 100644 --- a/packages/web-console/src/scenes/Editor/Monaco/questdb-sql/createSchemaCompletionProvider.ts +++ b/packages/web-console/src/scenes/Editor/Monaco/questdb-sql/createSchemaCompletionProvider.ts @@ -1,6 +1,6 @@ -import { Table, uniq } from "../../../../utils" +import { Table, uniq, InformationSchemaColumn } from "../../../../utils" import * as monaco from "monaco-editor" -import { CompletionItemPriority, InformationSchemaColumn } from "./types" +import { CompletionItemPriority } from "./types" import { findMatches, getQueryFromCursor } from "../utils" import { getTableCompletions } from "./getTableCompletions" import { getColumnCompletions } from "./getColumnCompletions" diff --git a/packages/web-console/src/scenes/Editor/Monaco/questdb-sql/getColumnCompletions.ts b/packages/web-console/src/scenes/Editor/Monaco/questdb-sql/getColumnCompletions.ts index 84b18d89e..2cb39d50f 100644 --- a/packages/web-console/src/scenes/Editor/Monaco/questdb-sql/getColumnCompletions.ts +++ b/packages/web-console/src/scenes/Editor/Monaco/questdb-sql/getColumnCompletions.ts @@ -1,9 +1,5 @@ -import { uniq } from "../../../../utils" -import { - CompletionItemKind, - CompletionItemPriority, - InformationSchemaColumn, -} from "./types" +import { uniq, InformationSchemaColumn } from "../../../../utils" +import { CompletionItemKind, CompletionItemPriority } from "./types" import type { IRange } from "monaco-editor" export const getColumnCompletions = ({ diff --git a/packages/web-console/src/scenes/Editor/Monaco/questdb-sql/types.ts b/packages/web-console/src/scenes/Editor/Monaco/questdb-sql/types.ts index b5bbad50d..c05c2a328 100644 --- a/packages/web-console/src/scenes/Editor/Monaco/questdb-sql/types.ts +++ b/packages/web-console/src/scenes/Editor/Monaco/questdb-sql/types.ts @@ -1,10 +1,3 @@ -export type InformationSchemaColumn = { - table_name: string - ordinal_position: number - column_name: string - data_type: string -} - export enum CompletionItemPriority { High = "1", MediumHigh = "2", diff --git a/packages/web-console/src/scenes/Schema/Row/index.tsx b/packages/web-console/src/scenes/Schema/Row/index.tsx index 1ecc1d706..d4aa48632 100644 --- a/packages/web-console/src/scenes/Schema/Row/index.tsx +++ b/packages/web-console/src/scenes/Schema/Row/index.tsx @@ -87,21 +87,10 @@ const Wrapper = styled.div>` padding-left: 1rem; transition: background ${TransitionDuration.REG}ms; - &:hover - ${/* sc-selector */ PlusButton}, - &:active - ${/* sc-selector */ PlusButton} { - opacity: 1; - } - &:hover, &:active { background: ${color("selection")}; } - - &:hover ${/* sc-selector */ Type} { - opacity: 0; - } ` const FlexRow = styled.div` diff --git a/packages/web-console/src/scenes/Schema/Toolbar/toolbar.tsx b/packages/web-console/src/scenes/Schema/Toolbar/toolbar.tsx index 11c180624..1781a0474 100644 --- a/packages/web-console/src/scenes/Schema/Toolbar/toolbar.tsx +++ b/packages/web-console/src/scenes/Schema/Toolbar/toolbar.tsx @@ -36,6 +36,12 @@ const StyledInput = styled(Input)` } ` +const StyledButton = styled(Button)` + &:disabled { + border: none; + } +` + const Error = styled(Box).attrs({ gap: "0.5rem" })<{ suspendedTablesCount: number }>` @@ -73,14 +79,14 @@ export const Toolbar = ({ setFilterSuspendedOnly(!filterSuspendedOnly)} prefixIcon={} > {suspendedTablesCount > 0 && {suspendedTablesCount}} - + } > diff --git a/packages/web-console/src/scenes/Schema/index.tsx b/packages/web-console/src/scenes/Schema/index.tsx index a12d425bf..8e91b4c63 100644 --- a/packages/web-console/src/scenes/Schema/index.tsx +++ b/packages/web-console/src/scenes/Schema/index.tsx @@ -120,6 +120,7 @@ const Schema = ({ const [copied, setCopied] = useState(false) const [query, setQuery] = useState("") const [filterSuspendedOnly, setFilterSuspendedOnly] = useState(false) + const [columns, setColumns] = useState() const handleChange = (name: string) => { setOpened(name === opened ? undefined : name) @@ -175,6 +176,16 @@ const Schema = ({ ) } + const fetchColumns = async () => { + const response = await quest.query( + "information_schema.columns()", + ) + if (response && response && response.type === QuestDB.Type.DQL) { + setColumns(response.data) + dispatch(actions.query.setColumns(response.data)) + } + } + const copySchemasToClipboard = async () => { if (!tables) return const ddls = await Promise.all( @@ -201,9 +212,11 @@ const Schema = ({ useEffect(() => { void fetchTables() + void fetchColumns() eventBus.subscribe(EventType.MSG_QUERY_SCHEMA, () => { void fetchTables() + void fetchColumns() }) eventBus.subscribe(EventType.MSG_CONNECTION_ERROR, (error) => { @@ -217,12 +230,19 @@ const Schema = ({ // The connection has been re-established, and we have an error in memory if (errorRef.current !== null) { void fetchTables() + void fetchColumns() } }) - window.addEventListener("focus", fetchTables) + window.addEventListener("focus", () => { + void fetchTables() + void fetchColumns() + }) - window.removeEventListener("focus", fetchTables) + window.removeEventListener("focus", () => { + void fetchTables() + void fetchColumns() + }) }, []) return ( @@ -297,10 +317,14 @@ const Schema = ({ ?.filter((table: QuestDB.Table) => { const normalizedTableName = table.table_name.toLowerCase() const normalizedQuery = query.toLowerCase() + const tableColumns = columns + ?.filter((c) => c.table_name === table.table_name) + .map((c) => c.column_name) return ( (normalizedTableName.includes(normalizedQuery) || levenshteinDistance(normalizedTableName, normalizedQuery) < - 3) && + 3 || + tableColumns?.find((c) => c.startsWith(query))) && (filterSuspendedOnly ? table.walEnabled && walTables?.find((t) => t.name === table.table_name) diff --git a/packages/web-console/src/store/Query/actions.ts b/packages/web-console/src/store/Query/actions.ts index 10436e30a..56f8d04a0 100644 --- a/packages/web-console/src/store/Query/actions.ts +++ b/packages/web-console/src/store/Query/actions.ts @@ -24,7 +24,11 @@ import type { ReactNode } from "react" -import type { QueryRawResult, Table } from "utils/questdb" +import type { + QueryRawResult, + Table, + InformationSchemaColumn, +} from "utils/questdb" import { NotificationShape, @@ -40,6 +44,13 @@ const setTables = (payload: Table[]): QueryAction => ({ type: QueryAT.SET_TABLES, }) +const setColumns = (payload: InformationSchemaColumn[]): QueryAction => ({ + payload: { + columns: payload, + }, + type: QueryAT.SET_COLUMNS, +}) + const addNotification = ( payload: Partial & { content: ReactNode }, ): QueryAction => ({ @@ -84,4 +95,5 @@ export default { stopRunning, toggleRunning, setTables, + setColumns, } diff --git a/packages/web-console/src/store/Query/reducers.ts b/packages/web-console/src/store/Query/reducers.ts index adae1e0ed..14edcf793 100644 --- a/packages/web-console/src/store/Query/reducers.ts +++ b/packages/web-console/src/store/Query/reducers.ts @@ -27,6 +27,7 @@ import { QueryAction, QueryAT, QueryStateShape } from "../../types" export const initialState: QueryStateShape = { notifications: [], tables: [], + columns: [], running: { value: false, isRefresh: false, @@ -99,6 +100,13 @@ const query = (state = initialState, action: QueryAction): QueryStateShape => { } } + case QueryAT.SET_COLUMNS: { + return { + ...state, + columns: action.payload.columns, + } + } + default: return state } diff --git a/packages/web-console/src/store/Query/selectors.ts b/packages/web-console/src/store/Query/selectors.ts index 3fdf22aa0..7ec1e4563 100644 --- a/packages/web-console/src/store/Query/selectors.ts +++ b/packages/web-console/src/store/Query/selectors.ts @@ -23,7 +23,11 @@ ******************************************************************************/ import { NotificationShape, RunningShape, StoreShape } from "types" -import type { QueryRawResult, Table } from "utils/questdb" +import type { + QueryRawResult, + Table, + InformationSchemaColumn, +} from "utils/questdb" const getNotifications: (store: StoreShape) => NotificationShape[] = (store) => store.query.notifications @@ -36,9 +40,13 @@ const getRunning: (store: StoreShape) => RunningShape = (store) => const getTables: (store: StoreShape) => Table[] = (store) => store.query.tables +const getColumns: (store: StoreShape) => InformationSchemaColumn[] = (store) => + store.query.columns + export default { getNotifications, getResult, getRunning, getTables, + getColumns, } diff --git a/packages/web-console/src/store/Query/types.ts b/packages/web-console/src/store/Query/types.ts index 23c4ab34c..1553a0836 100644 --- a/packages/web-console/src/store/Query/types.ts +++ b/packages/web-console/src/store/Query/types.ts @@ -24,7 +24,11 @@ import type { ReactNode } from "react" -import type { QueryRawResult, Table } from "utils/questdb" +import type { + QueryRawResult, + Table, + InformationSchemaColumn, +} from "utils/questdb" export enum NotificationType { ERROR = "error", @@ -50,6 +54,7 @@ export type RunningShape = Readonly<{ export type QueryStateShape = Readonly<{ notifications: NotificationShape[] tables: Table[] + columns: InformationSchemaColumn[] result?: QueryRawResult running: RunningShape maxNotifications: number @@ -63,6 +68,7 @@ export enum QueryAT { STOP_RUNNING = "QUERY/STOP_RUNNING", TOGGLE_RUNNING = "QUERY/TOGGLE_RUNNING", SET_TABLES = "QUERY/SET_TABLES", + SET_COLUMNS = "QUERY/SET_COLUMNS", } type AddNotificationAction = Readonly<{ @@ -102,6 +108,13 @@ type SetTablesAction = Readonly<{ }> }> +type SetColumnsActions = Readonly<{ + type: QueryAT.SET_COLUMNS + payload: Readonly<{ + columns: InformationSchemaColumn[] + }> +}> + export type QueryAction = | AddNotificationAction | CleanupNotificationsAction @@ -110,3 +123,4 @@ export type QueryAction = | StopRunningAction | ToggleRunningAction | SetTablesAction + | SetColumnsActions diff --git a/packages/web-console/src/utils/questdb.ts b/packages/web-console/src/utils/questdb.ts index 70d30a4b4..4dee5cacc 100644 --- a/packages/web-console/src/utils/questdb.ts +++ b/packages/web-console/src/utils/questdb.ts @@ -199,6 +199,13 @@ export type SchemaColumn = { upsertKey?: boolean } +export type InformationSchemaColumn = { + table_name: string + ordinal_position: number + column_name: string + data_type: string +} + type UploadOptions = { file: File name: string From 56bc782cc42f15935bc031fec40dca3535e27d97 Mon Sep 17 00:00:00 2001 From: Maciej Bodek Date: Wed, 15 May 2024 10:37:44 +0200 Subject: [PATCH 09/86] Bring back `Add` feature --- .../src/scenes/Schema/Row/index.tsx | 33 +++++++++++++++++++ 1 file changed, 33 insertions(+) diff --git a/packages/web-console/src/scenes/Schema/Row/index.tsx b/packages/web-console/src/scenes/Schema/Row/index.tsx index d4aa48632..7ef42e7fd 100644 --- a/packages/web-console/src/scenes/Schema/Row/index.tsx +++ b/packages/web-console/src/scenes/Schema/Row/index.tsx @@ -28,6 +28,7 @@ import { Rocket } from "@styled-icons/boxicons-regular" import { SortDown } from "@styled-icons/boxicons-regular" import { RightArrow } from "@styled-icons/boxicons-regular" import { CheckboxBlankCircle } from "@styled-icons/remix-line" +import { CodeSSlash } from "@styled-icons/remix-line" import { Information } from "@styled-icons/remix-line" import { Table as TableIcon } from "@styled-icons/remix-line" import { FileList, PieChart } from "@styled-icons/remix-line" @@ -87,10 +88,19 @@ const Wrapper = styled.div>` padding-left: 1rem; transition: background ${TransitionDuration.REG}ms; + &:hover + ${/* sc-selector */ PlusButton}, + &:active + ${/* sc-selector */ PlusButton} { + opacity: 1; + } &:hover, &:active { background: ${color("selection")}; } + &:hover ${/* sc-selector */ Type} { + opacity: 0; + } ` const FlexRow = styled.div` @@ -177,6 +187,18 @@ const Row = ({ tooltip, type, }: Props) => { + const { insertTextAtCursor } = useEditor() + + const handlePlusButtonClick = useCallback( + (event: MouseEvent) => { + event.stopPropagation() + insertTextAtCursor( + kind === "table" && !/^[a-z0-9_]+$/i.test(name) ? `"${name}"` : name, + ) + }, + [name, kind], + ) + return ( @@ -237,6 +259,17 @@ const Row = ({ )} + {["column", "table"].includes(kind) && !walTableData?.suspended && ( + + + Add + + )} + {tooltip && description && ( Date: Wed, 15 May 2024 13:03:38 +0200 Subject: [PATCH 10/86] Suspension details popover component --- .../src/components/Form/FormSubmit/index.tsx | 2 +- .../src/scenes/Schema/Row/index.tsx | 5 + .../scenes/Schema/SuspensionPopover/index.tsx | 114 ++++++++++++++++++ 3 files changed, 120 insertions(+), 1 deletion(-) create mode 100644 packages/web-console/src/scenes/Schema/SuspensionPopover/index.tsx diff --git a/packages/web-console/src/components/Form/FormSubmit/index.tsx b/packages/web-console/src/components/Form/FormSubmit/index.tsx index 19ae24031..a91ea95ca 100644 --- a/packages/web-console/src/components/Form/FormSubmit/index.tsx +++ b/packages/web-console/src/components/Form/FormSubmit/index.tsx @@ -5,7 +5,7 @@ import { Button } from "@questdb/react-components" type Props = { children: React.ReactNode disabled?: boolean - variant?: "error" | "success" | "warning" | "primary" + variant?: "error" | "success" | "warning" | "primary" | "secondary" prefixIcon?: ButtonProps["prefixIcon"] } diff --git a/packages/web-console/src/scenes/Schema/Row/index.tsx b/packages/web-console/src/scenes/Schema/Row/index.tsx index 7ef42e7fd..db7c7347e 100644 --- a/packages/web-console/src/scenes/Schema/Row/index.tsx +++ b/packages/web-console/src/scenes/Schema/Row/index.tsx @@ -44,6 +44,7 @@ import { import type { TextProps } from "../../../components" import { color } from "../../../utils" import { useEditor } from "../../../providers" +import { SuspensionPopover } from "../SuspensionPopover" type Props = Readonly<{ className?: string @@ -270,6 +271,10 @@ const Row = ({ )} + {walTableData?.suspended && kind === "table" && ( + + )} + {tooltip && description && ( theme.color.backgroundDarker}; + border: 1px #723131 solid; + border-radius: 4px; +` + +const ContentBlockBox = styled(Box).attrs({ + align: "flex-start", + flexDirection: "column", +})` + width: 100%; +` + +const StyledTable = styled.table` + width: 100%; + text-align: center; + border-spacing: 0.5rem; + + thead th { + background: #32333f; + font-weight: 600; + padding: 0.5rem 0; + } + + tbody td { + background: #24252e; + padding: 0.5rem 0; + } +` + +const FormWrapper = styled.div` + width: 100%; + display: grid; + grid-template-columns: 100px auto; + gap: 1rem; +` + +const TransactionInput = styled(Form.Input)` + width: 10rem; +` + +export const SuspensionPopover = ({ + walTableData, +}: { + walTableData: QuestDB.WalTable +}) => { + const [active, setActive] = useState(false) + + return ( + Suspended} + active={active} + onToggle={setActive} + > + + + Max open files limit reached in the OS + + Workarounds and documentation: + + + + Transaction stats: + + + + + + + + + + + + + + + Start at: +
{}}> + + + + + } + variant="secondary" + > + Restart transaction + + + +
+ + + + ) +} From 7749b070efe0b012c0943ebb2bf27cfed46ad0a2 Mon Sep 17 00:00:00 2001 From: Maciej Bodek Date: Wed, 15 May 2024 13:13:47 +0200 Subject: [PATCH 11/86] Suspension popover: change types --- .../src/scenes/Schema/SuspensionPopover/index.tsx | 7 +++++-- packages/web-console/src/utils/questdb.ts | 6 +++--- 2 files changed, 8 insertions(+), 5 deletions(-) diff --git a/packages/web-console/src/scenes/Schema/SuspensionPopover/index.tsx b/packages/web-console/src/scenes/Schema/SuspensionPopover/index.tsx index 88868ced3..eef2000bf 100644 --- a/packages/web-console/src/scenes/Schema/SuspensionPopover/index.tsx +++ b/packages/web-console/src/scenes/Schema/SuspensionPopover/index.tsx @@ -13,6 +13,7 @@ const Root = styled.div` background: ${({ theme }) => theme.color.backgroundDarker}; border: 1px #723131 solid; border-radius: 4px; + box-shadow: 0 0 25px 5px rgba(0, 0, 0, 0.2); ` const ContentBlockBox = styled(Box).attrs({ @@ -89,13 +90,15 @@ export const SuspensionPopover = ({ - Start at: + Start txn #:
{}}> Date: Wed, 15 May 2024 13:32:23 +0200 Subject: [PATCH 12/86] Suspension Popover: trigger UI --- .../scenes/Schema/SuspensionPopover/index.tsx | 23 +++++++++++++++++-- 1 file changed, 21 insertions(+), 2 deletions(-) diff --git a/packages/web-console/src/scenes/Schema/SuspensionPopover/index.tsx b/packages/web-console/src/scenes/Schema/SuspensionPopover/index.tsx index eef2000bf..98c3bfcce 100644 --- a/packages/web-console/src/scenes/Schema/SuspensionPopover/index.tsx +++ b/packages/web-console/src/scenes/Schema/SuspensionPopover/index.tsx @@ -3,7 +3,7 @@ import { PopperToggle, Text } from "../../../components" import { Form } from "../../../components/Form" import { Box, Button } from "@questdb/react-components" import styled from "styled-components" -import { ExternalLink, Restart } from "@styled-icons/remix-line" +import { ArrowDownS, ExternalLink, Restart } from "@styled-icons/remix-line" import * as QuestDB from "../../../utils/questdb" const Root = styled.div` @@ -16,6 +16,20 @@ const Root = styled.div` box-shadow: 0 0 25px 5px rgba(0, 0, 0, 0.2); ` +const Trigger = styled.button<{ active: boolean }>` + display: flex; + background: ${({ theme }) => theme.color.backgroundDarker}; + border: 1px #723131 solid; + color: #f47474; + border-radius: 4px; + padding: 5px 10px; + gap: 1rem; + + svg { + transform: rotate(${(props) => (props.active ? "180deg" : "0deg")}); + } +` + const ContentBlockBox = styled(Box).attrs({ align: "flex-start", flexDirection: "column", @@ -61,7 +75,12 @@ export const SuspensionPopover = ({ return ( Suspended} + trigger={ + + Suspended + + + } active={active} onToggle={setActive} > From 15e2cb868d8a9f74182a9460ec9de94c5cd9be6d Mon Sep 17 00:00:00 2001 From: Maciej Bodek Date: Thu, 16 May 2024 09:51:53 +0200 Subject: [PATCH 13/86] Suspension popover: Add resume logic --- .../scenes/Schema/SuspensionPopover/index.tsx | 35 +++++++++++++++++-- 1 file changed, 32 insertions(+), 3 deletions(-) diff --git a/packages/web-console/src/scenes/Schema/SuspensionPopover/index.tsx b/packages/web-console/src/scenes/Schema/SuspensionPopover/index.tsx index 98c3bfcce..cba27451a 100644 --- a/packages/web-console/src/scenes/Schema/SuspensionPopover/index.tsx +++ b/packages/web-console/src/scenes/Schema/SuspensionPopover/index.tsx @@ -1,10 +1,14 @@ -import React, { useState } from "react" +import React, { useState, useContext } from "react" import { PopperToggle, Text } from "../../../components" import { Form } from "../../../components/Form" import { Box, Button } from "@questdb/react-components" import styled from "styled-components" import { ArrowDownS, ExternalLink, Restart } from "@styled-icons/remix-line" import * as QuestDB from "../../../utils/questdb" +import Joi from "joi" +import { QuestContext } from "../../../providers" +import { eventBus } from "../../../modules/EventBus" +import { EventType } from "../../../modules/EventBus/types" const Root = styled.div` display: flex; @@ -65,12 +69,30 @@ const TransactionInput = styled(Form.Input)` width: 10rem; ` +type FormValues = { + resume_transaction_id?: number +} + export const SuspensionPopover = ({ walTableData, }: { walTableData: QuestDB.WalTable }) => { const [active, setActive] = useState(false) + const { quest } = useContext(QuestContext) + + const handleSubmit = async (values: FormValues) => { + const response = await quest.query( + `ALTER TABLE ${walTableData.name} RESUME WAL${ + values.resume_transaction_id + ? ` FROM TRANSACTION ${values.resume_transaction_id}` + : "" + }`, + ) + if (response && response.type === QuestDB.Type.DDL) { + eventBus.publish(EventType.MSG_QUERY_SCHEMA) + } + } return (
- Start txn #: - {}}> + Start at (optional): + + name="resume_transaction_form" + onSubmit={handleSubmit} + defaultValues={{ resume_transaction_id: undefined }} + validationSchema={Joi.object({ + resume_transaction_id: Joi.number().optional().allow(""), + })} + > Date: Thu, 16 May 2024 09:52:15 +0200 Subject: [PATCH 14/86] Add OS-specific error code mapping --- .../web-console/src/utils/errorCodes/index.ts | 3 + .../web-console/src/utils/errorCodes/linux.ts | 522 ++++++++++++++++++ .../web-console/src/utils/errorCodes/macos.ts | 434 +++++++++++++++ .../web-console/src/utils/errorCodes/types.ts | 4 + .../src/utils/errorCodes/windows.ts | 170 ++++++ 5 files changed, 1133 insertions(+) create mode 100644 packages/web-console/src/utils/errorCodes/index.ts create mode 100644 packages/web-console/src/utils/errorCodes/linux.ts create mode 100644 packages/web-console/src/utils/errorCodes/macos.ts create mode 100644 packages/web-console/src/utils/errorCodes/types.ts create mode 100644 packages/web-console/src/utils/errorCodes/windows.ts diff --git a/packages/web-console/src/utils/errorCodes/index.ts b/packages/web-console/src/utils/errorCodes/index.ts new file mode 100644 index 000000000..7e313a9c1 --- /dev/null +++ b/packages/web-console/src/utils/errorCodes/index.ts @@ -0,0 +1,3 @@ +export * from "./linux" +export * from "./macos" +export * from "./windows" diff --git a/packages/web-console/src/utils/errorCodes/linux.ts b/packages/web-console/src/utils/errorCodes/linux.ts new file mode 100644 index 000000000..56f2c63e5 --- /dev/null +++ b/packages/web-console/src/utils/errorCodes/linux.ts @@ -0,0 +1,522 @@ +import type { ErrorCode } from "./types" + +export const linux: { + [key: number]: ErrorCode +} = { + 1: { + errorCode: "EPERM", + description: "Operation not permitted.", + }, + 2: { + errorCode: "ENOENT", + description: "No such file or directory.", + }, + 3: { + errorCode: "ESRCH", + description: "No such process.", + }, + 4: { + errorCode: "EINTR", + description: "Interrupted system call.", + }, + 5: { + errorCode: "EIO", + description: "I/O error.", + }, + 6: { + errorCode: "ENXIO", + description: "No such device or address.", + }, + 7: { + errorCode: "E2BIG", + description: "Argument list too long.", + }, + 8: { + errorCode: "ENOEXEC", + description: "Exec format error.", + }, + 9: { + errorCode: "EBADF", + description: "Bad file number.", + }, + 10: { + errorCode: "ECHILD", + description: "No child processes.", + }, + 11: { + errorCode: "EAGAIN", + description: "Try again.", + }, + 12: { + errorCode: "ENOMEM", + description: "Out of memory.", + }, + 13: { + errorCode: "EACCES", + description: "Permission denied.", + }, + 14: { + errorCode: "EFAULT", + description: "Bad address.", + }, + 15: { + errorCode: "ENOTBLK", + description: "Block device required.", + }, + 16: { + errorCode: "EBUSY", + description: "Device or resource busy.", + }, + 17: { + errorCode: "EEXIST", + description: "File exists.", + }, + 18: { + errorCode: "EXDEV", + description: "Cross-device link.", + }, + 19: { + errorCode: "ENODEV", + description: "No such device.", + }, + 20: { + errorCode: "ENOTDIR", + description: "Not a directory.", + }, + 21: { + errorCode: "EISDIR", + description: "Is a directory.", + }, + 22: { + errorCode: "EINVAL", + description: "Invalid argument.", + }, + 23: { + errorCode: "ENFILE", + description: "File table overflow.", + }, + 24: { + errorCode: "EMFILE", + description: "Too many open files.", + }, + 25: { + errorCode: "ENOTTY", + description: "Not a typewriter.", + }, + 26: { + errorCode: "ETXTBSY", + description: "Text file busy.", + }, + 27: { + errorCode: "EFBIG", + description: "File too large.", + }, + 28: { + errorCode: "ENOSPC", + description: "No space left on device.", + }, + 29: { + errorCode: "ESPIPE", + description: "Illegal seek.", + }, + 30: { + errorCode: "EROFS", + description: "Read-only file system.", + }, + 31: { + errorCode: "EMLINK", + description: "Too many links.", + }, + 32: { + errorCode: "EPIPE", + description: "Broken pipe.", + }, + 33: { + errorCode: "EDOM", + description: "Math argument out of domain of func.", + }, + 34: { + errorCode: "ERANGE", + description: "Math result not representable.", + }, + 35: { + errorCode: "EDEADLK", + description: "Resource deadlock would occur.", + }, + 36: { + errorCode: "ENAMETOOLONG", + description: "File name too long.", + }, + 37: { + errorCode: "ENOLCK", + description: "No record locks available.", + }, + 38: { + errorCode: "ENOSYS", + description: "Function not implemented.", + }, + 39: { + errorCode: "ENOTEMPTY", + description: "Directory not empty.", + }, + 40: { + errorCode: "ELOOP", + description: "Too many symbolic links encountered.", + }, + 42: { + errorCode: "ENOMSG", + description: "No message of desired type.", + }, + 43: { + errorCode: "EIDRM", + description: "Identifier removed.", + }, + 44: { + errorCode: "ECHRNG", + description: "Channel number out of range.", + }, + 45: { + errorCode: "EL2NSYNC", + description: "Level 2 not synchronized.", + }, + 46: { + errorCode: "EL3HLT", + description: "Level 3 halted.", + }, + 47: { + errorCode: "EL3RST", + description: "Level 3 reset.", + }, + 48: { + errorCode: "ELNRNG", + description: "Link number out of range.", + }, + 49: { + errorCode: "EUNATCH", + description: "Protocol driver not attached.", + }, + 50: { + errorCode: "ENOCSI", + description: "No CSI structure available.", + }, + 51: { + errorCode: "EL2HLT", + description: "Level 2 halted.", + }, + 52: { + errorCode: "EBADE", + description: "Invalid exchange.", + }, + 53: { + errorCode: "EBADR", + description: "Invalid request descriptor.", + }, + 54: { + errorCode: "EXFULL", + description: "Exchange full.", + }, + 55: { + errorCode: "ENOANO", + description: "No anode.", + }, + 56: { + errorCode: "EBADRQC", + description: "Invalid request code.", + }, + 57: { + errorCode: "EBADSLT", + description: "Invalid slot.", + }, + 59: { + errorCode: "EBFONT", + description: "Bad font file format.", + }, + 60: { + errorCode: "ENOSTR", + description: "Device not a stream.", + }, + 61: { + errorCode: "ENODATA", + description: "No data available.", + }, + 62: { + errorCode: "ETIME", + description: "Timer expired.", + }, + 63: { + errorCode: "ENOSR", + description: "Out of streams resources.", + }, + 64: { + errorCode: "ENONET", + description: "Machine is not on the network.", + }, + 65: { + errorCode: "ENOPKG", + description: "Package not installed.", + }, + 66: { + errorCode: "EREMOTE", + description: "Object is remote.", + }, + 67: { + errorCode: "ENOLINK", + description: "Link has been severed.", + }, + 68: { + errorCode: "EADV", + description: "Advertise error.", + }, + 69: { + errorCode: "ESRMNT", + description: "Srmount error.", + }, + 70: { + errorCode: "ECOMM", + description: "Communication error on send.", + }, + 71: { + errorCode: "EPROTO", + description: "Protocol error.", + }, + 72: { + errorCode: "EMULTIHOP", + description: "Multihop attempted.", + }, + 73: { + errorCode: "EDOTDOT", + description: "RFS specific error.", + }, + 74: { + errorCode: "EBADMSG", + description: "Not a data message.", + }, + 75: { + errorCode: "EOVERFLOW", + description: "Value too large for defined data type.", + }, + 76: { + errorCode: "ENOTUNIQ", + description: "Name not unique on network.", + }, + 77: { + errorCode: "EBADFD", + description: "File descriptor in bad state.", + }, + 78: { + errorCode: "EREMCHG", + description: "Remote address changed.", + }, + 79: { + errorCode: "ELIBACC", + description: "Can not access a needed shared library.", + }, + 80: { + errorCode: "ELIBBAD", + description: "Accessing a corrupted shared library.", + }, + 81: { + errorCode: "ELIBSCN", + description: ".lib section in a.out corrupted.", + }, + 82: { + errorCode: "ELIBMAX", + description: "Attempting to link in too many shared libraries.", + }, + 83: { + errorCode: "ELIBEXEC", + description: "Cannot exec a shared library directly.", + }, + 84: { + errorCode: "EILSEQ", + description: "Illegal byte sequence.", + }, + 85: { + errorCode: "ERESTART", + description: "Interrupted system call should be restarted.", + }, + 86: { + errorCode: "ESTRPIPE", + description: "Streams pipe error.", + }, + 87: { + errorCode: "EUSERS", + description: "Too many users.", + }, + 88: { + errorCode: "ENOTSOCK", + description: "Socket operation on non-socket.", + }, + 89: { + errorCode: "EDESTADDRREQ", + description: "Destination address required.", + }, + 90: { + errorCode: "EMSGSIZE", + description: "Message too long.", + }, + 91: { + errorCode: "EPROTOTYPE", + description: "Protocol wrong type for socket.", + }, + 92: { + errorCode: "ENOPROTOOPT", + description: "Protocol not available.", + }, + 93: { + errorCode: "EPROTONOSUPPORT", + description: "Protocol not supported.", + }, + 94: { + errorCode: "ESOCKTNOSUPPORT", + description: "Socket type not supported.", + }, + 95: { + errorCode: "EOPNOTSUPP", + description: "Operation not supported on transport endpoint.", + }, + 96: { + errorCode: "EPFNOSUPPORT", + description: "Protocol family not supported.", + }, + 97: { + errorCode: "EAFNOSUPPORT", + description: "Address family not supported by protocol.", + }, + 98: { + errorCode: "EADDRINUSE", + description: "Address already in use.", + }, + 99: { + errorCode: "EADDRNOTAVAIL", + description: "Cannot assign requested address.", + }, + 100: { + errorCode: "ENETDOWN", + description: "Network is down.", + }, + 101: { + errorCode: "ENETUNREACH", + description: "Network is unreachable.", + }, + 102: { + errorCode: "ENETRESET", + description: "Network dropped connection because of reset.", + }, + 103: { + errorCode: "ECONNABORTED", + description: "Software caused connection abort.", + }, + 104: { + errorCode: "ECONNRESET", + description: "Connection reset by peer.", + }, + 105: { + errorCode: "ENOBUFS", + description: "No buffer space available.", + }, + 106: { + errorCode: "EISCONN", + description: "Transport endpoint is already connected.", + }, + 107: { + errorCode: "ENOTCONN", + description: "Transport endpoint is not connected.", + }, + 108: { + errorCode: "ESHUTDOWN", + description: "Cannot send after transport endpoint shutdown.", + }, + 109: { + errorCode: "ETOOMANYREFS", + description: "Too many references: cannot splice.", + }, + 110: { + errorCode: "ETIMEDOUT", + description: "Connection timed out.", + }, + 111: { + errorCode: "ECONNREFUSED", + description: "Connection refused.", + }, + 112: { + errorCode: "EHOSTDOWN", + description: "Host is down.", + }, + 113: { + errorCode: "EHOSTUNREACH", + description: "No route to host.", + }, + 114: { + errorCode: "EALREADY", + description: "Operation already in progress.", + }, + 115: { + errorCode: "EINPROGRESS", + description: "Operation now in progress.", + }, + 116: { + errorCode: "ESTALE", + description: "Stale NFS file handle.", + }, + 117: { + errorCode: "EUCLEAN", + description: "Structure needs cleaning.", + }, + 118: { + errorCode: "ENOTNAM", + description: "Not a XENIX named type file.", + }, + 119: { + errorCode: "ENAVAIL", + description: "No XENIX semaphores available.", + }, + 120: { + errorCode: "EISNAM", + description: "Is a named type file.", + }, + 121: { + errorCode: "EREMOTEIO", + description: "Remote I/O error.", + }, + 122: { + errorCode: "EDQUOT", + description: "Quota exceeded.", + }, + 123: { + errorCode: "ENOMEDIUM", + description: "No medium found.", + }, + 124: { + errorCode: "EMEDIUMTYPE", + description: "Wrong medium type.", + }, + 125: { + errorCode: "ECANCELED", + description: "Operation Canceled.", + }, + 126: { + errorCode: "ENOKEY", + description: "Required key not available.", + }, + 127: { + errorCode: "EKEYEXPIRED", + description: "Key has expired.", + }, + 128: { + errorCode: "EKEYREVOKED", + description: "Key has been revoked.", + }, + 129: { + errorCode: "EKEYREJECTED", + description: "Key was rejected by service.", + }, + 130: { + errorCode: "EOWNERDEAD", + description: "Owner died.", + }, + 131: { + errorCode: "ENOTRECOVERABLE", + description: "State not recoverable.", + }, +} diff --git a/packages/web-console/src/utils/errorCodes/macos.ts b/packages/web-console/src/utils/errorCodes/macos.ts new file mode 100644 index 000000000..79aac445b --- /dev/null +++ b/packages/web-console/src/utils/errorCodes/macos.ts @@ -0,0 +1,434 @@ +import type { ErrorCode } from "./types" + +export const macos: { + [key: number]: ErrorCode +} = { + 0: { + errorCode: "Base", + description: "Undefined error: 0", + }, + 1: { + errorCode: "EPERM", + description: "Operation not permitted", + }, + 2: { + errorCode: "ENOENT", + description: "No such file or directory", + }, + 3: { + errorCode: "ESRCH", + description: "No such process", + }, + 4: { + errorCode: "EINTR", + description: "Interrupted system call", + }, + 5: { + errorCode: "EIO", + description: "Input/output error", + }, + 6: { + errorCode: "ENXIO", + description: "Device not configured", + }, + 7: { + errorCode: "E2BIG", + description: "Argument list too long", + }, + 8: { + errorCode: "ENOEXEC", + description: "Exec format error", + }, + 9: { + errorCode: "EBADF", + description: "Bad file descriptor", + }, + 10: { + errorCode: "ECHILD", + description: "No child processes", + }, + 11: { + errorCode: "EDEADLK", + description: "Resource deadlock avoided", + }, + 12: { + errorCode: "ENOMEM", + description: "Cannot allocate memory", + }, + 13: { + errorCode: "EACCES", + description: "Permission denied", + }, + 14: { + errorCode: "EFAULT", + description: "Bad address", + }, + 15: { + errorCode: "ENOTBLK", + description: "Block device required", + }, + 16: { + errorCode: "EBUSY", + description: "Device busy", + }, + 17: { + errorCode: "EEXIST", + description: "File exists", + }, + 18: { + errorCode: "EXDEV", + description: "Cross-device link", + }, + 19: { + errorCode: "ENODEV", + description: "Operation not supported by device", + }, + 20: { + errorCode: "ENOTDIR", + description: "Not a directory", + }, + 21: { + errorCode: "EISDIR", + description: "Is a directory", + }, + 22: { + errorCode: "EINVAL", + description: "Invalid argument", + }, + 23: { + errorCode: "ENFILE", + description: "Too many open files in system", + }, + 24: { + errorCode: "EMFILE", + description: "Too many open files", + }, + 25: { + errorCode: "ENOTTY", + description: "Inappropriate ioctl for device", + }, + 26: { + errorCode: "ETXTBSY", + description: "Text file busy", + }, + 27: { + errorCode: "EFBIG", + description: "File too large", + }, + 28: { + errorCode: "ENOSPC", + description: "No space left on device", + }, + 29: { + errorCode: "ESPIPE", + description: "Illegal seek", + }, + 30: { + errorCode: "EROFS", + description: "Read-only file system", + }, + 31: { + errorCode: "EMLINK", + description: "Too many links", + }, + 32: { + errorCode: "EPIPE", + description: "Broken pipe", + }, + 33: { + errorCode: "EDOM", + description: "Numerical argument out of domain", + }, + 34: { + errorCode: "ERANGE", + description: "Result too large", + }, + 35: { + errorCode: "EAGAIN", + description: "Resource temporarily unavailable", + }, + 36: { + errorCode: "EINPROGRESS", + description: "Operation now in progress", + }, + 37: { + errorCode: "EALREADY", + description: "Operation already in progress", + }, + 38: { + errorCode: "ENOTSOCK", + description: "Socket operation on non-socket", + }, + 39: { + errorCode: "EDESTADDRREQ", + description: "Destination address required", + }, + 40: { + errorCode: "EMSGSIZE", + description: "Message too long", + }, + 41: { + errorCode: "EPROTOTYPE", + description: "Protocol wrong type for socket", + }, + 42: { + errorCode: "ENOPROTOOPT", + description: "Protocol not available", + }, + 43: { + errorCode: "EPROTONOSUPPORT", + description: "Protocol not supported", + }, + 44: { + errorCode: "ESOCKTNOSUPPORT", + description: "Socket type not supported", + }, + 45: { + errorCode: "ENOTSUP", + description: "Operation not supported", + }, + 46: { + errorCode: "EPFNOSUPPORT", + description: "Protocol family not supported", + }, + 47: { + errorCode: "EAFNOSUPPORT", + description: "Address family not supported by protocol family", + }, + 48: { + errorCode: "EADDRINUSE", + description: "Address already in use", + }, + 49: { + errorCode: "EADDRNOTAVAIL", + description: "Can’t assign requested address", + }, + 50: { + errorCode: "ENETDOWN", + description: "Network is down", + }, + 51: { + errorCode: "ENETUNREACH", + description: "Network is unreachable", + }, + 52: { + errorCode: "ENETRESET", + description: "Network dropped connection on reset", + }, + 53: { + errorCode: "ECONNABORTED", + description: "Software caused connection abort", + }, + 54: { + errorCode: "ECONNRESET", + description: "Connection reset by peer", + }, + 55: { + errorCode: "ENOBUFS", + description: "No buffer space available", + }, + 56: { + errorCode: "EISCONN", + description: "Socket is already connected", + }, + 57: { + errorCode: "ENOTCONN", + description: "Socket is not connected", + }, + 58: { + errorCode: "ESHUTDOWN", + description: "Can’t send after socket shutdown", + }, + 59: { + errorCode: "ETOOMANYREFS", + description: "Too many references: can’t splice", + }, + 60: { + errorCode: "ETIMEDOUT", + description: "Operation timed out", + }, + 61: { + errorCode: "ECONNREFUSED", + description: "Connection refused", + }, + 62: { + errorCode: "ELOOP", + description: "Too many levels of symbolic links", + }, + 63: { + errorCode: "ENAMETOOLONG", + description: "File name too long", + }, + 64: { + errorCode: "EHOSTDOWN", + description: "Host is down", + }, + 65: { + errorCode: "EHOSTUNREACH", + description: "No route to host", + }, + 66: { + errorCode: "ENOTEMPTY", + description: "Directory not empty", + }, + 67: { + errorCode: "EPROCLIM", + description: "Too many processes", + }, + 68: { + errorCode: "EUSERS", + description: "Too many users", + }, + 69: { + errorCode: "EDQUOT", + description: "Disc quota exceeded", + }, + 70: { + errorCode: "ESTALE", + description: "Stale NFS file handle", + }, + 71: { + errorCode: "EREMOTE", + description: "Too many levels of remote in path", + }, + 72: { + errorCode: "EBADRPC", + description: "RPC struct is bad", + }, + 73: { + errorCode: "ERPCMISMATCH", + description: "RPC version wrong", + }, + 74: { + errorCode: "EPROGUNAVAIL", + description: "RPC prog. not avail", + }, + 75: { + errorCode: "EPROGMISMATCH", + description: "Program version wrong", + }, + 76: { + errorCode: "EPROCUNAVAIL", + description: "Bad procedure for program", + }, + 77: { + errorCode: "ENOLCK", + description: "No locks available", + }, + 78: { + errorCode: "ENOSYS", + description: "Function not implemented", + }, + 79: { + errorCode: "EFTYPE", + description: "Inappropriate file type or format", + }, + 80: { + errorCode: "EAUTH", + description: "Authentication error", + }, + 81: { + errorCode: "ENEEDAUTH", + description: "Need authenticator", + }, + 82: { + errorCode: "EPWROFF", + description: "Device power is off", + }, + 83: { + errorCode: "EDEVERR", + description: "Device error", + }, + 84: { + errorCode: "EOVERFLOW", + description: "Value too large to be stored in data type", + }, + 85: { + errorCode: "EBADEXEC", + description: "Bad executable", + }, + 86: { + errorCode: "EBADARCH", + description: "Bad CPU type in executable", + }, + 87: { + errorCode: "ESHLIBVERS", + description: "Shared library version mismatch", + }, + 88: { + errorCode: "EBADMACHO", + description: "Malformed Macho file", + }, + 89: { + errorCode: "ECANCELED", + description: "Operation canceled", + }, + 90: { + errorCode: "EIDRM", + description: "Identifier removed", + }, + 91: { + errorCode: "ENOMSG", + description: "No message of desired type", + }, + 92: { + errorCode: "EILSEQ", + description: "Illegal byte sequence", + }, + 93: { + errorCode: "ENOATTR", + description: "Attribute not found", + }, + 94: { + errorCode: "EBADMSG", + description: "Bad message", + }, + 95: { + errorCode: "EMULTIHOP", + description: "EMULTIHOP (Reserved)", + }, + 96: { + errorCode: "ENODATA", + description: "No message available on STREAM", + }, + 97: { + errorCode: "ENOLINK", + description: "ENOLINK (Reserved)", + }, + 98: { + errorCode: "ENOSR", + description: "No STREAM resources", + }, + 99: { + errorCode: "ENOSTR", + description: "Not a STREAM", + }, + 100: { + errorCode: "EPROTO", + description: "Protocol error", + }, + 101: { + errorCode: "ETIME", + description: "STREAM ioctl timeout", + }, + 102: { + errorCode: "EOPNOTSUPP", + description: "Operation not supported on socket", + }, + 103: { + errorCode: "ENOPOLICY", + description: "Policy not found", + }, + 104: { + errorCode: "ENOTRECOVERABLE", + description: "State not recoverable", + }, + 105: { + errorCode: "EOWNERDEAD", + description: "Previous owner died", + }, + 106: { + errorCode: "EQFULL", + description: "Interface output queue is full", + }, +} diff --git a/packages/web-console/src/utils/errorCodes/types.ts b/packages/web-console/src/utils/errorCodes/types.ts new file mode 100644 index 000000000..0f46a9e2b --- /dev/null +++ b/packages/web-console/src/utils/errorCodes/types.ts @@ -0,0 +1,4 @@ +export type ErrorCode = { + errorCode: string + description: string +} diff --git a/packages/web-console/src/utils/errorCodes/windows.ts b/packages/web-console/src/utils/errorCodes/windows.ts new file mode 100644 index 000000000..d8e50a8db --- /dev/null +++ b/packages/web-console/src/utils/errorCodes/windows.ts @@ -0,0 +1,170 @@ +import type { ErrorCode } from "./types" + +export const windows: { + [key: number]: ErrorCode +} = { + 1: { + errorCode: 'ERROR_INVALID_FUNCTION', + description: 'Incorrect function.' + }, + 2: { + errorCode: 'ERROR_FILE_NOT_FOUND', + description: 'The system cannot find the file specified.' + }, + 3: { + errorCode: 'ERROR_PATH_NOT_FOUND', + description: 'The system cannot find the path specified.' + }, + 4: { + errorCode: 'ERROR_TOO_MANY_OPEN_FILES', + description: 'The system cannot open the file.' + }, + 5: { + errorCode: 'ERROR_ACCESS_DENIED', + description: 'Access is denied.' + }, + 6: { + errorCode: 'ERROR_INVALID_HANDLE', + description: 'The handle is invalid.' + }, + 7: { + errorCode: 'ERROR_ARENA_TRASHED', + description: 'The storage control blocks were destroyed.' + }, + 8: { + errorCode: 'ERROR_NOT_ENOUGH_MEMORY', + description: 'Not enough memory is available to process this command.' + }, + 9: { + errorCode: 'ERROR_INVALID_BLOCK', + description: 'The storage control block address is invalid.' + }, + 10: { + errorCode: 'ERROR_BAD_ENVIRONMENT', + description: 'The environment is incorrect.' + }, + 11: { + errorCode: 'ERROR_BAD_FORMAT', + description: 'An attempt was made to load a program with an incorrect format.' + }, + 12: { + errorCode: 'ERROR_INVALID_ACCESS', + description: 'The access code is invalid.' + }, + 13: { + errorCode: 'ERROR_INVALID_DATA', + description: 'The data is invalid.' + }, + 14: { + errorCode: 'ERROR_OUTOFMEMORY', + description: 'Not enough storage is available to complete this operation.' + }, + 15: { + errorCode: 'ERROR_INVALID_DRIVE', + description: 'The system cannot find the drive specified.' + }, + 16: { + errorCode: 'ERROR_CURRENT_DIRECTORY', + description: 'The directory cannot be removed.' + }, + 17: { + errorCode: 'ERROR_NOT_SAME_DEVICE', + description: 'The system cannot move the file to a different disk drive.' + }, + 18: { + errorCode: 'ERROR_NO_MORE_FILES', + description: 'There are no more files.' + }, + 19: { + errorCode: 'ERROR_WRITE_PROTECT', + description: 'The media is write protected.' + }, + 20: { + errorCode: 'ERROR_BAD_UNIT', + description: 'The system cannot find the device specified.' + }, + 21: { + errorCode: 'ERROR_NOT_READY', + description: 'The device is not ready.' + }, + 22: { + errorCode: 'ERROR_BAD_COMMAND', + description: 'The device does not recognize the command.' + }, + 23: { + errorCode: 'ERROR_CRC', + description: 'Data error (cyclic redundancy check).' + }, + 24: { + errorCode: 'ERROR_BAD_LENGTH', + description: 'The program issued a command but the command length is incorrect.' + }, + 25: { + errorCode: 'ERROR_SEEK', + description: 'The drive cannot locate a specific area or track on the disk.' + }, + 26: { + errorCode: 'ERROR_NOT_DOS_DISK', + description: 'The specified disk or diskette cannot be accessed.' + }, + 27: { + errorCode: 'ERROR_SECTOR_NOT_FOUND', + description: 'The drive cannot find the sector requested.' + }, + 28: { + errorCode: 'ERROR_OUT_OF_PAPER', + description: 'The printer is out of paper.' + }, + 29: { + errorCode: 'ERROR_WRITE_FAULT', + description: 'The system cannot write to the specified device.' + }, + 30: { + errorCode: 'ERROR_READ_FAULT', + description: 'The system cannot read from the specified device.' + }, + 31: { + errorCode: 'ERROR_GEN_FAILURE', + description: 'A device attached to the system is not functioning.' + }, + 32: { + errorCode: 'ERROR_SHARING_VIOLATION', + description: 'The process cannot access the file because it is being used by another process.' + }, + 33: { + errorCode: 'ERROR_LOCK_VIOLATION', + description: 'The process cannot access the file because another process has locked a portion of the file.' + }, + 34: { + errorCode: 'ERROR_WRONG_DISK', + description: 'The wrong diskette is in the drive. Insert %2 (Volume Serial Number: %3) into drive %1.' + }, + 36: { + errorCode: 'ERROR_SHARING_BUFFER_EXCEEDED', + description: 'Too many files opened for sharing.' + }, + 38: { + errorCode: 'ERROR_HANDLE_EOF', + description: 'Reached the end of the file.' + }, + 39: { + errorCode: 'ERROR_HANDLE_DISK_FULL', + description: 'The disk is full.' + }, + 87: { + errorCode: 'ERROR_INVALID_PARAMETER', + description: 'The parameter is incorrect.' + }, + 112: { + errorCode: 'ERROR_DISK_FULL', + description: 'The disk is full.' + }, + 123: { + errorCode: 'ERROR_INVALID_NAME', + description: 'The file name, directory name, or volume label syntax is incorrect.' + }, + 1450: { + errorCode: 'ERROR_NO_SYSTEM_RESOURCES', + description: 'Insufficient system resources exist to complete the requested service + } +} From 19948b4182d6ebcd0a2c66bcfbc40046b27b06fe Mon Sep 17 00:00:00 2001 From: Maciej Bodek Date: Fri, 17 May 2024 11:21:04 +0200 Subject: [PATCH 15/86] Refactor `` to use state based views --- .../web-console/src/scenes/Schema/index.tsx | 240 ++++++++++-------- 1 file changed, 128 insertions(+), 112 deletions(-) diff --git a/packages/web-console/src/scenes/Schema/index.tsx b/packages/web-console/src/scenes/Schema/index.tsx index 8e91b4c63..7725dbcee 100644 --- a/packages/web-console/src/scenes/Schema/index.tsx +++ b/packages/web-console/src/scenes/Schema/index.tsx @@ -30,12 +30,11 @@ import React, { useEffect, useState, useContext, + useReducer, } from "react" import { useDispatch } from "react-redux" -import { from, combineLatest, of } from "rxjs" -import { delay, startWith } from "rxjs/operators" import styled, { css } from "styled-components" -import { FileCopy, Loader3, Refresh, Search } from "@styled-icons/remix-line" +import { FileCopy, Loader3, Refresh } from "@styled-icons/remix-line" import { CheckboxCircle } from "@styled-icons/remix-fill" import { PaneContent, @@ -101,10 +100,25 @@ const StyledCheckboxCircle = styled(CheckboxCircle)` color: ${({ theme }) => theme.color.green}; ` +enum View { + loading, + error, + ready, +} + +type State = { view: View; loadingError?: ErrorResult } + +const initialState: State = { + view: View.loading, +} + +const reducer = (s: State, n: Partial) => ({ ...s, ...n }) + const Schema = ({ innerRef, ...rest }: Props & { innerRef: Ref }) => { + const [state, dispatchState] = useReducer(reducer, initialState) const { quest } = useContext(QuestContext) const [loading, setLoading] = useState(false) const [loadingError, setLoadingError] = useState(null) @@ -126,63 +140,49 @@ const Schema = ({ setOpened(name === opened ? undefined : name) } - const fetchTables = () => { - setLoading(true) - setOpened(undefined) - combineLatest( - from(quest.showTables()).pipe(startWith(null)), - of(true).pipe(delay(1000), startWith(false)), - ).subscribe( - async ([response]) => { - if (response && response.type === QuestDB.Type.DQL) { - setLoadingError(null) - errorRef.current = null - setTables(response.data) - dispatch(actions.query.setTables(response.data)) - // Fetch WAL info about the tables - // const walTablesResponse = await quest.query( - // "wal_tables()", - // ) - - // TODO: Remove mocked query result - const walTablesResponse = - await quest.mockQueryResult( - mockSuspendedResponse as QuestDB.QueryRawResult, - ) - - if ( - walTablesResponse && - walTablesResponse.type === QuestDB.Type.DQL - ) { - // Filter out the system tables - setWalTables( - walTablesResponse.data.filter((wt) => - response.data.map((t) => t.table_name).includes(wt.name), - ), - ) - } - } else { - setLoading(false) - } - }, - (error) => { - if (isServerError(error)) { - setLoadingError(error) + const fetchTables = async () => { + try { + const response = await quest.showTables() + if (response && response.type === QuestDB.Type.DQL) { + errorRef.current = null + setTables(response.data) + dispatch(actions.query.setTables(response.data)) + // Fetch WAL info about the tables + const walTablesResponse = await quest.query( + "wal_tables()", + ) + if (walTablesResponse && walTablesResponse.type === QuestDB.Type.DQL) { + // Filter out the system tables + setWalTables( + walTablesResponse.data.filter((wt) => + response.data.map((t) => t.table_name).includes(wt.name), + ), + ) } - }, - () => { - setLoading(false) - }, - ) + dispatchState({ view: View.ready }) + } else { + dispatchState({ view: View.error }) + } + } catch (error) { + dispatchState({ + view: View.error, + }) + } } const fetchColumns = async () => { - const response = await quest.query( - "information_schema.columns()", - ) - if (response && response && response.type === QuestDB.Type.DQL) { - setColumns(response.data) - dispatch(actions.query.setColumns(response.data)) + try { + const response = await quest.query( + "information_schema.columns()", + ) + if (response && response && response.type === QuestDB.Type.DQL) { + setColumns(response.data) + dispatch(actions.query.setColumns(response.data)) + } + } catch (error) { + dispatchState({ + view: View.error, + }) } } @@ -239,12 +239,79 @@ const Schema = ({ void fetchColumns() }) - window.removeEventListener("focus", () => { - void fetchTables() - void fetchColumns() - }) + return () => + window.removeEventListener("focus", () => { + void fetchTables() + void fetchColumns() + }) }, []) + const views: { [key in View]: () => React.ReactNode } = { + [View.loading]: () => () => { + const [loaderShown, setLoaderShown] = useState(false) + + useEffect(() => { + const timeout = setTimeout(() => setLoaderShown(true), 1000) + return () => clearTimeout(timeout) + }, []) + + return loaderShown ? : null + }, + [View.error]: () => + loadingError ? : , + [View.ready]: () => ( + <> + {tables && tables.length > 0 && ( + t.suspended).length ?? 0 + } + setQuery={setQuery} + filterSuspendedOnly={filterSuspendedOnly} + setFilterSuspendedOnly={setFilterSuspendedOnly} + /> + )} + {tables && + tables + .filter((table: QuestDB.Table) => { + const normalizedTableName = table.table_name.toLowerCase() + const normalizedQuery = query.toLowerCase() + const tableColumns = columns + ?.filter((c) => c.table_name === table.table_name) + .map((c) => c.column_name) + return ( + (normalizedTableName.includes(normalizedQuery) || + levenshteinDistance(normalizedTableName, normalizedQuery) < + 3 || + tableColumns?.find((c) => c.startsWith(query))) && + (filterSuspendedOnly + ? table.walEnabled && + walTables?.find((t) => t.name === table.table_name) + ?.suspended + : true) + ) + }) + .map((table: QuestDB.Table) => ( +
TableWriterSequencer
{walTableData.writerTxn}{walTableData.sequencerTxn}
wt.name === table.table_name, + )} + dedup={table.dedup} + /> + ))} + {!loading && } + + ), + } + return ( setScrollAtTop(scrollerRef?.current?.scrollTop === 0)} > - {tables && tables.length > 0 && ( - t.suspended).length ?? 0 - } - setQuery={setQuery} - filterSuspendedOnly={filterSuspendedOnly} - setFilterSuspendedOnly={setFilterSuspendedOnly} - /> - )} - {loading ? ( - - ) : loadingError ? ( - - ) : ( - tables - ?.filter((table: QuestDB.Table) => { - const normalizedTableName = table.table_name.toLowerCase() - const normalizedQuery = query.toLowerCase() - const tableColumns = columns - ?.filter((c) => c.table_name === table.table_name) - .map((c) => c.column_name) - return ( - (normalizedTableName.includes(normalizedQuery) || - levenshteinDistance(normalizedTableName, normalizedQuery) < - 3 || - tableColumns?.find((c) => c.startsWith(query))) && - (filterSuspendedOnly - ? table.walEnabled && - walTables?.find((t) => t.name === table.table_name) - ?.suspended - : true) - ) - }) - .map((table: QuestDB.Table) => ( -
wt.name === table.table_name, - )} - dedup={table.dedup} - /> - )) - )} - {!loading && } + {views[state.view]()} ) From 981d7827b148ad619e3662cefbcc25c48eb17b11 Mon Sep 17 00:00:00 2001 From: Maciej Bodek Date: Fri, 17 May 2024 11:21:27 +0200 Subject: [PATCH 16/86] Suspension Popover: fix DOM structure --- .../src/scenes/Schema/SuspensionPopover/index.tsx | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/packages/web-console/src/scenes/Schema/SuspensionPopover/index.tsx b/packages/web-console/src/scenes/Schema/SuspensionPopover/index.tsx index cba27451a..386e0d472 100644 --- a/packages/web-console/src/scenes/Schema/SuspensionPopover/index.tsx +++ b/packages/web-console/src/scenes/Schema/SuspensionPopover/index.tsx @@ -119,8 +119,10 @@ export const SuspensionPopover = ({ Transaction stats: - - + + + + From 2bb2f07c5680a43183ed92aac4871bd2ff42156a Mon Sep 17 00:00:00 2001 From: Maciej Bodek Date: Fri, 17 May 2024 18:52:18 +0200 Subject: [PATCH 17/86] Suspension Popover: updates, bring back mocks --- .../src/scenes/Schema/Row/index.tsx | 20 ++++++- .../scenes/Schema/SuspensionPopover/index.tsx | 52 ++++++++++++------- .../web-console/src/scenes/Schema/index.tsx | 12 +++-- packages/web-console/src/utils/questdb.ts | 1 + 4 files changed, 61 insertions(+), 24 deletions(-) diff --git a/packages/web-console/src/scenes/Schema/Row/index.tsx b/packages/web-console/src/scenes/Schema/Row/index.tsx index db7c7347e..a8b750fdc 100644 --- a/packages/web-console/src/scenes/Schema/Row/index.tsx +++ b/packages/web-console/src/scenes/Schema/Row/index.tsx @@ -104,6 +104,19 @@ const Wrapper = styled.div>` } ` +const HitBox = styled.div` + position: absolute; + width: 100%; + height: 100%; + left: 0; + top: 0; +` + +const ElevatedIndex = styled.span` + z-index: 1; + position: relative; +` + const FlexRow = styled.div` display: flex; align-items: center; @@ -201,7 +214,8 @@ const Row = ({ ) return ( - + + {kind === "table" && ( @@ -272,7 +286,9 @@ const Row = ({ )} {walTableData?.suspended && kind === "table" && ( - + + + )} {tooltip && description && ( diff --git a/packages/web-console/src/scenes/Schema/SuspensionPopover/index.tsx b/packages/web-console/src/scenes/Schema/SuspensionPopover/index.tsx index 386e0d472..ca42dd01f 100644 --- a/packages/web-console/src/scenes/Schema/SuspensionPopover/index.tsx +++ b/packages/web-console/src/scenes/Schema/SuspensionPopover/index.tsx @@ -1,4 +1,4 @@ -import React, { useState, useContext } from "react" +import React, { useState, useContext, useEffect } from "react" import { PopperToggle, Text } from "../../../components" import { Form } from "../../../components/Form" import { Box, Button } from "@questdb/react-components" @@ -18,6 +18,7 @@ const Root = styled.div` border: 1px #723131 solid; border-radius: 4px; box-shadow: 0 0 25px 5px rgba(0, 0, 0, 0.2); + margin-top: 0.5rem; ` const Trigger = styled.button<{ active: boolean }>` @@ -80,17 +81,24 @@ export const SuspensionPopover = ({ }) => { const [active, setActive] = useState(false) const { quest } = useContext(QuestContext) + const [isSubmitting, setIsSubmitting] = useState(false) const handleSubmit = async (values: FormValues) => { - const response = await quest.query( - `ALTER TABLE ${walTableData.name} RESUME WAL${ - values.resume_transaction_id - ? ` FROM TRANSACTION ${values.resume_transaction_id}` - : "" - }`, - ) - if (response && response.type === QuestDB.Type.DDL) { - eventBus.publish(EventType.MSG_QUERY_SCHEMA) + setIsSubmitting(true) + try { + const response = await quest.query( + `ALTER TABLE ${walTableData.name} RESUME WAL${ + values.resume_transaction_id + ? ` FROM TRANSACTION ${values.resume_transaction_id}` + : "" + }`, + ) + if (response && response.type === QuestDB.Type.DDL) { + eventBus.publish(EventType.MSG_QUERY_SCHEMA) + } + setIsSubmitting(false) + } catch (e) { + setIsSubmitting(false) } } @@ -108,13 +116,20 @@ export const SuspensionPopover = ({ > - Max open files limit reached in the OS - - Workarounds and documentation: - - + {walTableData.errorCode && ( + <> + Max open files limit reached in the OS + + Workarounds and documentation: + + + + )} Transaction stats: @@ -152,10 +167,11 @@ export const SuspensionPopover = ({ /> } variant="secondary" > - Restart transaction + {isSubmitting ? "Restarting..." : "Restart transaction"} diff --git a/packages/web-console/src/scenes/Schema/index.tsx b/packages/web-console/src/scenes/Schema/index.tsx index 7725dbcee..112a1c5c7 100644 --- a/packages/web-console/src/scenes/Schema/index.tsx +++ b/packages/web-console/src/scenes/Schema/index.tsx @@ -148,8 +148,12 @@ const Schema = ({ setTables(response.data) dispatch(actions.query.setTables(response.data)) // Fetch WAL info about the tables - const walTablesResponse = await quest.query( - "wal_tables()", + // const walTablesResponse = await quest.query( + // "wal_tables()", + // ) + // TODO: Remove mocked query result + const walTablesResponse = await quest.mockQueryResult( + mockSuspendedResponse as QuestDB.QueryRawResult, ) if (walTablesResponse && walTablesResponse.type === QuestDB.Type.DQL) { // Filter out the system tables @@ -249,7 +253,7 @@ const Schema = ({ const views: { [key in View]: () => React.ReactNode } = { [View.loading]: () => () => { const [loaderShown, setLoaderShown] = useState(false) - + // Show the loader only for delayed fetching process useEffect(() => { const timeout = setTimeout(() => setLoaderShown(true), 1000) return () => clearTimeout(timeout) @@ -282,7 +286,7 @@ const Schema = ({ return ( (normalizedTableName.includes(normalizedQuery) || levenshteinDistance(normalizedTableName, normalizedQuery) < - 3 || + 2 || tableColumns?.find((c) => c.startsWith(query))) && (filterSuspendedOnly ? table.walEnabled && diff --git a/packages/web-console/src/utils/questdb.ts b/packages/web-console/src/utils/questdb.ts index 85bbae142..7241d7a01 100644 --- a/packages/web-console/src/utils/questdb.ts +++ b/packages/web-console/src/utils/questdb.ts @@ -132,6 +132,7 @@ export type WalTable = { writerTxn: string writerLagTxtCount: string sequencerTxn: string + errorCode?: string } export type Column = { From bf7f4ba8c9c589b600e071831c25348b059472e2 Mon Sep 17 00:00:00 2001 From: Maciej Bodek Date: Fri, 17 May 2024 19:02:00 +0200 Subject: [PATCH 18/86] Add clear query icon --- .../src/scenes/Schema/Toolbar/toolbar.tsx | 26 ++++++++++++++++--- 1 file changed, 23 insertions(+), 3 deletions(-) diff --git a/packages/web-console/src/scenes/Schema/Toolbar/toolbar.tsx b/packages/web-console/src/scenes/Schema/Toolbar/toolbar.tsx index 1781a0474..4a9e87517 100644 --- a/packages/web-console/src/scenes/Schema/Toolbar/toolbar.tsx +++ b/packages/web-console/src/scenes/Schema/Toolbar/toolbar.tsx @@ -1,7 +1,7 @@ import React from "react" import styled from "styled-components" import { Button, Box, Input } from "@questdb/react-components" -import { Filter3 } from "@styled-icons/remix-line" +import { Close, Filter3 } from "@styled-icons/remix-line" import { ErrorWarning } from "@styled-icons/remix-fill" import { PopperHover, Tooltip } from "../../../components" @@ -28,8 +28,16 @@ const FilterIcon = styled(Filter3)` left: 1rem; ` +const CloseIcon = styled(Close)` + position: absolute; + top: 50%; + transform: translateY(-50%); + right: 0.5rem; +` + const StyledInput = styled(Input)` padding-left: 3.5rem; + padding-right: 3.5rem; &::placeholder { color: ${({ theme }) => theme.color.foreground}; @@ -56,7 +64,7 @@ const Error = styled(Box).attrs({ gap: "0.5rem" })<{ export const Toolbar = ({ suspendedTablesCount, - setQuery: setFilter, + setQuery, filterSuspendedOnly, setFilterSuspendedOnly, }: { @@ -65,14 +73,26 @@ export const Toolbar = ({ filterSuspendedOnly: boolean setFilterSuspendedOnly: (filter: boolean) => void }) => { + const queryRef = React.useRef(null) + return ( + {queryRef.current?.value && ( + { + setQuery("") + queryRef.current?.value && (queryRef.current.value = "") + }} + /> + )} setFilter(e.target.value)} + onChange={(e) => setQuery(e.target.value)} /> From 657a37ac7dd6bbdc78aa1a681c77470120981f78 Mon Sep 17 00:00:00 2001 From: Maciej Bodek Date: Mon, 20 May 2024 16:03:01 +0200 Subject: [PATCH 19/86] Suspension Popover: add submit states --- .../scenes/Schema/SuspensionPopover/index.tsx | 22 +++++++++++++++++++ 1 file changed, 22 insertions(+) diff --git a/packages/web-console/src/scenes/Schema/SuspensionPopover/index.tsx b/packages/web-console/src/scenes/Schema/SuspensionPopover/index.tsx index ca42dd01f..85b1896f8 100644 --- a/packages/web-console/src/scenes/Schema/SuspensionPopover/index.tsx +++ b/packages/web-console/src/scenes/Schema/SuspensionPopover/index.tsx @@ -9,6 +9,7 @@ import Joi from "joi" import { QuestContext } from "../../../providers" import { eventBus } from "../../../modules/EventBus" import { EventType } from "../../../modules/EventBus/types" +import { ErrorResult } from "../../../utils" const Root = styled.div` display: flex; @@ -74,6 +75,8 @@ type FormValues = { resume_transaction_id?: number } +const GENERIC_ERROR_TEXT = "Error restarting transaction" + export const SuspensionPopover = ({ walTableData, }: { @@ -82,9 +85,12 @@ export const SuspensionPopover = ({ const [active, setActive] = useState(false) const { quest } = useContext(QuestContext) const [isSubmitting, setIsSubmitting] = useState(false) + const [isSubmitted, setIsSubmitted] = useState(false) + const [error, setError] = useState() const handleSubmit = async (values: FormValues) => { setIsSubmitting(true) + setError(undefined) try { const response = await quest.query( `ALTER TABLE ${walTableData.name} RESUME WAL${ @@ -95,13 +101,25 @@ export const SuspensionPopover = ({ ) if (response && response.type === QuestDB.Type.DDL) { eventBus.publish(EventType.MSG_QUERY_SCHEMA) + setIsSubmitted(true) + } else { + setError(GENERIC_ERROR_TEXT) } setIsSubmitting(false) } catch (e) { + const error = e as ErrorResult setIsSubmitting(false) + setError(`${GENERIC_ERROR_TEXT}${error.error ? `: ${error.error}` : ""}`) } } + useEffect(() => { + if (active) { + setError(undefined) + setIsSubmitted(false) + } + }, [active]) + return ( + {error && {error}} + {isSubmitted && ( + Transaction restarted successfully + )} {walTableData.errorCode && ( <> Max open files limit reached in the OS From b941e868866b23dc01518faa8d513332a104ddbd Mon Sep 17 00:00:00 2001 From: Maciej Bodek Date: Mon, 20 May 2024 16:09:54 +0200 Subject: [PATCH 20/86] Toolbar: dim filter icon slightly --- packages/web-console/src/scenes/Schema/Toolbar/toolbar.tsx | 1 + 1 file changed, 1 insertion(+) diff --git a/packages/web-console/src/scenes/Schema/Toolbar/toolbar.tsx b/packages/web-console/src/scenes/Schema/Toolbar/toolbar.tsx index 4a9e87517..dc7a33de9 100644 --- a/packages/web-console/src/scenes/Schema/Toolbar/toolbar.tsx +++ b/packages/web-console/src/scenes/Schema/Toolbar/toolbar.tsx @@ -26,6 +26,7 @@ const FilterIcon = styled(Filter3)` top: 50%; transform: translateY(-50%); left: 1rem; + color: ${({ theme }) => theme.color.gray2}; ` const CloseIcon = styled(Close)` From ca0c847b81a72273170ca231368f006992ec0a53 Mon Sep 17 00:00:00 2001 From: Maciej Bodek Date: Mon, 20 May 2024 17:30:33 +0200 Subject: [PATCH 21/86] Add query highlighting --- .pnp.cjs | 55 +++++++++ ...words-npm-0.16.7-e9c0694a2e-503e49f396.zip | Bin 0 -> 3436 bytes ...s-core-npm-1.2.2-b168c62a9a-6a5364ad8c.zip | Bin 0 -> 12921 bytes ...ze-one-npm-4.0.3-6aef1020af-6aee6da4d5.zip | Bin 0 -> 8666 bytes ...words-npm-0.20.0-02e799bf4d-5adf2cfb1f.zip | Bin 0 -> 453012 bytes packages/web-console/package.json | 2 + .../src/scenes/Schema/Row/index.tsx | 23 +++- .../src/scenes/Schema/SchemaContext.tsx | 9 ++ .../src/scenes/Schema/Toolbar/toolbar.tsx | 6 +- .../web-console/src/scenes/Schema/index.tsx | 104 +++++++++--------- packages/web-console/src/utils/index.ts | 1 - .../src/utils/levenstheinDistance.ts | 33 ------ yarn.lock | 40 ++++++- 13 files changed, 177 insertions(+), 96 deletions(-) create mode 100644 .yarn/cache/@types-react-highlight-words-npm-0.16.7-e9c0694a2e-503e49f396.zip create mode 100644 .yarn/cache/highlight-words-core-npm-1.2.2-b168c62a9a-6a5364ad8c.zip create mode 100644 .yarn/cache/memoize-one-npm-4.0.3-6aef1020af-6aee6da4d5.zip create mode 100644 .yarn/cache/react-highlight-words-npm-0.20.0-02e799bf4d-5adf2cfb1f.zip create mode 100644 packages/web-console/src/scenes/Schema/SchemaContext.tsx delete mode 100644 packages/web-console/src/utils/levenstheinDistance.ts diff --git a/.pnp.cjs b/.pnp.cjs index f867b767a..b720d0b7f 100755 --- a/.pnp.cjs +++ b/.pnp.cjs @@ -6578,6 +6578,7 @@ const RAW_RUNTIME_STATE = ["@types/ramda", "npm:0.27.40"],\ ["@types/react", "npm:17.0.2"],\ ["@types/react-dom", "npm:16.9.8"],\ + ["@types/react-highlight-words", "npm:0.16.7"],\ ["@types/react-redux", "npm:7.1.9"],\ ["@types/react-transition-group", "npm:4.4.0"],\ ["@types/styled-components", "npm:5.1.7"],\ @@ -6635,6 +6636,7 @@ const RAW_RUNTIME_STATE = ["react", "npm:17.0.2"],\ ["react-contextmenu", "virtual:b7c775051d99785ec73273707ec685f06b84c737b39cc023ebc60bda25254288f27e86643fb15b7a00bd8a6d76cc119d4628443d858e76eb62af2718d7eb18cf#npm:2.14.0"],\ ["react-dom", "virtual:455cc1315669a6e622038e6093381f8d95ab8bb473af09abaaf7e72fce2d6a9ff2602fe53215abe1948a8259d689b4411a17531ea4acc5522a659c642ee7696d#npm:17.0.2"],\ + ["react-highlight-words", "virtual:b7c775051d99785ec73273707ec685f06b84c737b39cc023ebc60bda25254288f27e86643fb15b7a00bd8a6d76cc119d4628443d858e76eb62af2718d7eb18cf#npm:0.20.0"],\ ["react-hook-form", "virtual:b7c775051d99785ec73273707ec685f06b84c737b39cc023ebc60bda25254288f27e86643fb15b7a00bd8a6d76cc119d4628443d858e76eb62af2718d7eb18cf#npm:7.22.3"],\ ["react-is", "npm:18.2.0"],\ ["react-markdown", "virtual:b7c775051d99785ec73273707ec685f06b84c737b39cc023ebc60bda25254288f27e86643fb15b7a00bd8a6d76cc119d4628443d858e76eb62af2718d7eb18cf#npm:8.0.7"],\ @@ -11041,6 +11043,16 @@ const RAW_RUNTIME_STATE = "linkType": "HARD"\ }]\ ]],\ + ["@types/react-highlight-words", [\ + ["npm:0.16.7", {\ + "packageLocation": "./.yarn/cache/@types-react-highlight-words-npm-0.16.7-e9c0694a2e-503e49f396.zip/node_modules/@types/react-highlight-words/",\ + "packageDependencies": [\ + ["@types/react-highlight-words", "npm:0.16.7"],\ + ["@types/react", "npm:17.0.2"]\ + ],\ + "linkType": "HARD"\ + }]\ + ]],\ ["@types/react-redux", [\ ["npm:7.1.9", {\ "packageLocation": "./.yarn/cache/@types-react-redux-npm-7.1.9-f1ca2ff600-63f5a9dc02.zip/node_modules/@types/react-redux/",\ @@ -18980,6 +18992,15 @@ const RAW_RUNTIME_STATE = "linkType": "HARD"\ }]\ ]],\ + ["highlight-words-core", [\ + ["npm:1.2.2", {\ + "packageLocation": "./.yarn/cache/highlight-words-core-npm-1.2.2-b168c62a9a-6a5364ad8c.zip/node_modules/highlight-words-core/",\ + "packageDependencies": [\ + ["highlight-words-core", "npm:1.2.2"]\ + ],\ + "linkType": "HARD"\ + }]\ + ]],\ ["hoist-non-react-statics", [\ ["npm:3.3.2", {\ "packageLocation": "./.yarn/cache/hoist-non-react-statics-npm-3.3.2-e7b709e6c1-1acbe85f33.zip/node_modules/hoist-non-react-statics/",\ @@ -22250,6 +22271,15 @@ const RAW_RUNTIME_STATE = "linkType": "HARD"\ }]\ ]],\ + ["memoize-one", [\ + ["npm:4.0.3", {\ + "packageLocation": "./.yarn/cache/memoize-one-npm-4.0.3-6aef1020af-6aee6da4d5.zip/node_modules/memoize-one/",\ + "packageDependencies": [\ + ["memoize-one", "npm:4.0.3"]\ + ],\ + "linkType": "HARD"\ + }]\ + ]],\ ["memoizerific", [\ ["npm:1.11.3", {\ "packageLocation": "./.yarn/cache/memoizerific-npm-1.11.3-3cd7adb7ec-72b6b80699.zip/node_modules/memoizerific/",\ @@ -25119,6 +25149,31 @@ const RAW_RUNTIME_STATE = "linkType": "HARD"\ }]\ ]],\ + ["react-highlight-words", [\ + ["npm:0.20.0", {\ + "packageLocation": "./.yarn/cache/react-highlight-words-npm-0.20.0-02e799bf4d-5adf2cfb1f.zip/node_modules/react-highlight-words/",\ + "packageDependencies": [\ + ["react-highlight-words", "npm:0.20.0"]\ + ],\ + "linkType": "SOFT"\ + }],\ + ["virtual:b7c775051d99785ec73273707ec685f06b84c737b39cc023ebc60bda25254288f27e86643fb15b7a00bd8a6d76cc119d4628443d858e76eb62af2718d7eb18cf#npm:0.20.0", {\ + "packageLocation": "./.yarn/__virtual__/react-highlight-words-virtual-982d56fbbb/0/cache/react-highlight-words-npm-0.20.0-02e799bf4d-5adf2cfb1f.zip/node_modules/react-highlight-words/",\ + "packageDependencies": [\ + ["react-highlight-words", "virtual:b7c775051d99785ec73273707ec685f06b84c737b39cc023ebc60bda25254288f27e86643fb15b7a00bd8a6d76cc119d4628443d858e76eb62af2718d7eb18cf#npm:0.20.0"],\ + ["@types/react", "npm:17.0.2"],\ + ["highlight-words-core", "npm:1.2.2"],\ + ["memoize-one", "npm:4.0.3"],\ + ["prop-types", "npm:15.8.1"],\ + ["react", "npm:17.0.2"]\ + ],\ + "packagePeers": [\ + "@types/react",\ + "react"\ + ],\ + "linkType": "HARD"\ + }]\ + ]],\ ["react-hook-form", [\ ["npm:7.22.3", {\ "packageLocation": "./.yarn/cache/react-hook-form-npm-7.22.3-68164760a3-8b3a22b91d.zip/node_modules/react-hook-form/",\ diff --git a/.yarn/cache/@types-react-highlight-words-npm-0.16.7-e9c0694a2e-503e49f396.zip b/.yarn/cache/@types-react-highlight-words-npm-0.16.7-e9c0694a2e-503e49f396.zip new file mode 100644 index 0000000000000000000000000000000000000000..ddf8abdcbbca25e82c559a22c3d605e1ab37e70b GIT binary patch literal 3436 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 literal 0 HcmV?d00001 diff --git a/.yarn/cache/highlight-words-core-npm-1.2.2-b168c62a9a-6a5364ad8c.zip b/.yarn/cache/highlight-words-core-npm-1.2.2-b168c62a9a-6a5364ad8c.zip new file mode 100644 index 0000000000000000000000000000000000000000..c46bfa16cf5186019649f3f280bfe42b8221f73a GIT binary patch literal 12921 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 a9P{#0pdVWT008#m^W{VNenj)@*Z%?HLIX$u literal 0 HcmV?d00001 diff --git a/.yarn/cache/memoize-one-npm-4.0.3-6aef1020af-6aee6da4d5.zip b/.yarn/cache/memoize-one-npm-4.0.3-6aef1020af-6aee6da4d5.zip new file mode 100644 index 0000000000000000000000000000000000000000..c98a59c49d5e7e1e9d02c3a2e6c6ac04e2b97f43 GIT binary patch literal 8666 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 E5BM3_`v3p{ literal 0 HcmV?d00001 diff --git a/.yarn/cache/react-highlight-words-npm-0.20.0-02e799bf4d-5adf2cfb1f.zip b/.yarn/cache/react-highlight-words-npm-0.20.0-02e799bf4d-5adf2cfb1f.zip new file mode 100644 index 0000000000000000000000000000000000000000..6bf1baefab6dc3b082a94fb9892d6553d48689d6 GIT binary patch literal 453012 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%0ATL4j*JJYnHWJ{VIbhDoN%*+4~uN( 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

i?62pJd$+);~fLA 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

!ob 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

  • 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
  • TableWriterSequencer
    TableWriterSequencer
    J&>884@AG^s9C$9!VbwoFc}$jpBDtM7>MxwLe38 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%0Dm6Vb4K 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 cursor: ${({ kind }) => ["folder", "table"].includes(kind) ? "pointer" : "initial"}; + + .highlight { + background-color: #7c804f; + color: ${({ theme }) => theme.color.foreground}; + } ` const PlusButton = styled(SecondaryButton)>` @@ -112,9 +119,10 @@ const HitBox = styled.div` top: 0; ` -const ElevatedIndex = styled.span` +const TableActions = styled.span` z-index: 1; position: relative; + margin-right: 1rem; ` const FlexRow = styled.div` @@ -202,6 +210,7 @@ const Row = ({ type, }: Props) => { const { insertTextAtCursor } = useEditor() + const { query } = useContext(SchemaContext) const handlePlusButtonClick = useCallback( (event: MouseEvent) => { @@ -246,7 +255,11 @@ const Row = ({ )} - {name} + <Highlighter + highlightClassName="highlight" + searchWords={[query ?? ""]} + textToHighlight={name} + /> {suffix} @@ -286,9 +299,9 @@ const Row = ({ )} {walTableData?.suspended && kind === "table" && ( - + - + )} {tooltip && description && ( diff --git a/packages/web-console/src/scenes/Schema/SchemaContext.tsx b/packages/web-console/src/scenes/Schema/SchemaContext.tsx new file mode 100644 index 000000000..819e925f9 --- /dev/null +++ b/packages/web-console/src/scenes/Schema/SchemaContext.tsx @@ -0,0 +1,9 @@ +import { createContext } from "react" + +export const SchemaContext = createContext<{ + query: string + setQuery: (query: string) => void +}>({ + query: "", + setQuery: () => {}, +}) diff --git a/packages/web-console/src/scenes/Schema/Toolbar/toolbar.tsx b/packages/web-console/src/scenes/Schema/Toolbar/toolbar.tsx index dc7a33de9..169501294 100644 --- a/packages/web-console/src/scenes/Schema/Toolbar/toolbar.tsx +++ b/packages/web-console/src/scenes/Schema/Toolbar/toolbar.tsx @@ -1,9 +1,10 @@ -import React from "react" +import React, { useContext } from "react" import styled from "styled-components" import { Button, Box, Input } from "@questdb/react-components" import { Close, Filter3 } from "@styled-icons/remix-line" import { ErrorWarning } from "@styled-icons/remix-fill" import { PopperHover, Tooltip } from "../../../components" +import { SchemaContext } from "../SchemaContext" const Root = styled(Box).attrs({ justifyContent: "space-between", @@ -65,15 +66,14 @@ const Error = styled(Box).attrs({ gap: "0.5rem" })<{ export const Toolbar = ({ suspendedTablesCount, - setQuery, filterSuspendedOnly, setFilterSuspendedOnly, }: { suspendedTablesCount: number - setQuery: (filter: string) => void filterSuspendedOnly: boolean setFilterSuspendedOnly: (filter: boolean) => void }) => { + const { setQuery } = useContext(SchemaContext) const queryRef = React.useRef(null) return ( diff --git a/packages/web-console/src/scenes/Schema/index.tsx b/packages/web-console/src/scenes/Schema/index.tsx index 112a1c5c7..32bceb2f0 100644 --- a/packages/web-console/src/scenes/Schema/index.tsx +++ b/packages/web-console/src/scenes/Schema/index.tsx @@ -56,7 +56,7 @@ import { eventBus } from "../../modules/EventBus" import { EventType } from "../../modules/EventBus/types" import { formatTableSchemaQueryResult } from "./Table/ContextualMenu/services" import { Toolbar } from "./Toolbar/toolbar" -import { levenshteinDistance } from "../../utils" +import { SchemaContext } from "./SchemaContext" import mockSuspendedResponse from "./mockSuspendedResponse" @@ -120,7 +120,6 @@ const Schema = ({ }: Props & { innerRef: Ref }) => { const [state, dispatchState] = useReducer(reducer, initialState) const { quest } = useContext(QuestContext) - const [loading, setLoading] = useState(false) const [loadingError, setLoadingError] = useState(null) const errorRef = useRef(null) const [tables, setTables] = useState() @@ -270,7 +269,6 @@ const Schema = ({ suspendedTablesCount={ walTables?.filter((t) => t.suspended).length ?? 0 } - setQuery={setQuery} filterSuspendedOnly={filterSuspendedOnly} setFilterSuspendedOnly={setFilterSuspendedOnly} /> @@ -285,8 +283,6 @@ const Schema = ({ .map((c) => c.column_name) return ( (normalizedTableName.includes(normalizedQuery) || - levenshteinDistance(normalizedTableName, normalizedQuery) < - 2 || tableColumns?.find((c) => c.startsWith(query))) && (filterSuspendedOnly ? table.walEnabled && @@ -311,67 +307,69 @@ const Schema = ({ dedup={table.dedup} /> ))} - {!loading && } + ), } return ( - - - {consoleConfig.readOnly === false && tables && ( - - {tables.length > 0 && ( + + + + {consoleConfig.readOnly === false && tables && ( + + {tables.length > 0 && ( + + {copied && } + + + } + > + + {copied + ? `Copied ${tables.length} schema${ + tables.length > 1 ? "s" : "" + } to clipboard` + : "Copy schemas to clipboard"} + + + )} - {copied && } - + } > - - {copied - ? `Copied ${tables.length} schema${ - tables.length > 1 ? "s" : "" - } to clipboard` - : "Copy schemas to clipboard"} - + Refresh - )} - - - - } - > - Refresh - - - )} - - } - shadow={!scrollAtTop} - /> - setScrollAtTop(scrollerRef?.current?.scrollTop === 0)} - > - {views[state.view]()} - - + + )} + + } + shadow={!scrollAtTop} + /> + setScrollAtTop(scrollerRef?.current?.scrollTop === 0)} + > + {views[state.view]()} + + + ) } diff --git a/packages/web-console/src/utils/index.ts b/packages/web-console/src/utils/index.ts index 3bde64df9..68000d4c7 100644 --- a/packages/web-console/src/utils/index.ts +++ b/packages/web-console/src/utils/index.ts @@ -26,7 +26,6 @@ export * from "./copyToClipboard" export * from "./isServerError" export * from "./fetch" export * from "./fromFetch" -export * from "./levenstheinDistance" export * from "./questdb" export * from "./shortenText" export * from "./styled" diff --git a/packages/web-console/src/utils/levenstheinDistance.ts b/packages/web-console/src/utils/levenstheinDistance.ts deleted file mode 100644 index c141868a1..000000000 --- a/packages/web-console/src/utils/levenstheinDistance.ts +++ /dev/null @@ -1,33 +0,0 @@ -export const levenshteinDistance = (str1: string, str2: string): number => { - const len1 = str1.length - const len2 = str2.length - - let matrix = Array(len1 + 1) - for (let i = 0; i <= len1; i++) { - matrix[i] = Array(len2 + 1) - } - - for (let i = 0; i <= len1; i++) { - matrix[i][0] = i - } - - for (let j = 0; j <= len2; j++) { - matrix[0][j] = j - } - - for (let i = 1; i <= len1; i++) { - for (let j = 1; j <= len2; j++) { - if (str1[i - 1] === str2[j - 1]) { - matrix[i][j] = matrix[i - 1][j - 1] - } else { - matrix[i][j] = Math.min( - matrix[i - 1][j] + 1, - matrix[i][j - 1] + 1, - matrix[i - 1][j - 1] + 1, - ) - } - } - } - - return matrix[len1][len2] -} diff --git a/yarn.lock b/yarn.lock index 1d695132b..ec4061bed 100644 --- a/yarn.lock +++ b/yarn.lock @@ -3245,6 +3245,7 @@ __metadata: "@types/ramda": "npm:0.27.40" "@types/react": "npm:16.9.35" "@types/react-dom": "npm:16.9.8" + "@types/react-highlight-words": "npm:^0.16.7" "@types/react-redux": "npm:7.1.9" "@types/react-transition-group": "npm:4.4.0" "@types/styled-components": "npm:5.1.7" @@ -3302,6 +3303,7 @@ __metadata: react: "npm:17.0.2" react-contextmenu: "npm:2.14.0" react-dom: "npm:17.0.2" + react-highlight-words: "npm:^0.20.0" react-hook-form: "npm:7.22.3" react-is: "npm:^18.1.0" react-markdown: "npm:^8.0.7" @@ -6112,6 +6114,15 @@ __metadata: languageName: node linkType: hard +"@types/react-highlight-words@npm:^0.16.7": + version: 0.16.7 + resolution: "@types/react-highlight-words@npm:0.16.7" + dependencies: + "@types/react": "npm:*" + checksum: 10/503e49f396cd9b9d08e5f3ca4817095427d51bfdb094e2458752908e1803d379750aa7b421397fe6e6fe8c842fbe91f5b30f87a56586ae7f2b2f0e6816b69113 + languageName: node + linkType: hard + "@types/react-redux@npm:7.1.9": version: 7.1.9 resolution: "@types/react-redux@npm:7.1.9" @@ -12472,6 +12483,13 @@ __metadata: languageName: node linkType: hard +"highlight-words-core@npm:^1.2.0": + version: 1.2.2 + resolution: "highlight-words-core@npm:1.2.2" + checksum: 10/6a5364ad8cce0107a387d3f43374f5814fb586cc155b282196bc2b9ce1c25aa9a8b76e8ab04d0c29428403a48225cad8280e00b8adbb6b02e05e3a6ab7ee2ef3 + languageName: node + linkType: hard + "hoist-non-react-statics@npm:^3.0.0, hoist-non-react-statics@npm:^3.3.0": version: 3.3.2 resolution: "hoist-non-react-statics@npm:3.3.2" @@ -15351,6 +15369,13 @@ __metadata: languageName: node linkType: hard +"memoize-one@npm:^4.0.0": + version: 4.0.3 + resolution: "memoize-one@npm:4.0.3" + checksum: 10/6aee6da4d5305b0876c47166522f417440ad0a11483b5199bfae5896c72f4f5b13a5993b8842178a9f0501e0ab501775b54b6eff09af54cc992fc8f607e72338 + languageName: node + linkType: hard + "memoizerific@npm:^1.11.3": version: 1.11.3 resolution: "memoizerific@npm:1.11.3" @@ -17474,7 +17499,7 @@ __metadata: languageName: node linkType: hard -"prop-types@npm:^15.0.0, prop-types@npm:^15.6.2, prop-types@npm:^15.7.2, prop-types@npm:^15.8.1": +"prop-types@npm:^15.0.0, prop-types@npm:^15.5.8, prop-types@npm:^15.6.2, prop-types@npm:^15.7.2, prop-types@npm:^15.8.1": version: 15.8.1 resolution: "prop-types@npm:15.8.1" dependencies: @@ -17761,6 +17786,19 @@ __metadata: languageName: node linkType: hard +"react-highlight-words@npm:^0.20.0": + version: 0.20.0 + resolution: "react-highlight-words@npm:0.20.0" + dependencies: + highlight-words-core: "npm:^1.2.0" + memoize-one: "npm:^4.0.0" + prop-types: "npm:^15.5.8" + peerDependencies: + react: ^0.14.0 || ^15.0.0 || ^16.0.0-0 || ^17.0.0-0 || ^18.0.0-0 + checksum: 10/5adf2cfb1f325ae51ea4dd2cb7522eb433b25534355868d1a3f4556b2b9f7a774c2a1aaa143abebb63a1b3a5590e70ba3d765942a47ff754a1a513cdc5b2f58b + languageName: node + linkType: hard + "react-hook-form@npm:7.22.3": version: 7.22.3 resolution: "react-hook-form@npm:7.22.3" From 9831302ece554b3ba0d6c35989d39c4b2015ab7d Mon Sep 17 00:00:00 2001 From: Maciej Bodek Date: Mon, 20 May 2024 17:39:48 +0200 Subject: [PATCH 22/86] Remove mocks --- .../web-console/src/scenes/Schema/index.tsx | 10 +--- .../scenes/Schema/mockSuspendedResponse.ts | 52 ------------------- packages/web-console/src/utils/questdb.ts | 1 - 3 files changed, 2 insertions(+), 61 deletions(-) delete mode 100644 packages/web-console/src/scenes/Schema/mockSuspendedResponse.ts diff --git a/packages/web-console/src/scenes/Schema/index.tsx b/packages/web-console/src/scenes/Schema/index.tsx index 32bceb2f0..b197ac829 100644 --- a/packages/web-console/src/scenes/Schema/index.tsx +++ b/packages/web-console/src/scenes/Schema/index.tsx @@ -58,8 +58,6 @@ import { formatTableSchemaQueryResult } from "./Table/ContextualMenu/services" import { Toolbar } from "./Toolbar/toolbar" import { SchemaContext } from "./SchemaContext" -import mockSuspendedResponse from "./mockSuspendedResponse" - type Props = Readonly<{ hideMenu?: boolean style?: CSSProperties @@ -147,12 +145,8 @@ const Schema = ({ setTables(response.data) dispatch(actions.query.setTables(response.data)) // Fetch WAL info about the tables - // const walTablesResponse = await quest.query( - // "wal_tables()", - // ) - // TODO: Remove mocked query result - const walTablesResponse = await quest.mockQueryResult( - mockSuspendedResponse as QuestDB.QueryRawResult, + const walTablesResponse = await quest.query( + "wal_tables()", ) if (walTablesResponse && walTablesResponse.type === QuestDB.Type.DQL) { // Filter out the system tables diff --git a/packages/web-console/src/scenes/Schema/mockSuspendedResponse.ts b/packages/web-console/src/scenes/Schema/mockSuspendedResponse.ts deleted file mode 100644 index 529edac49..000000000 --- a/packages/web-console/src/scenes/Schema/mockSuspendedResponse.ts +++ /dev/null @@ -1,52 +0,0 @@ -import * as QuestDB from "../../utils/questdb" - -export default { - query: "wal_tables()", - type: QuestDB.Type.DQL, - columns: [ - { - name: "name", - type: "STRING", - }, - { - name: "suspended", - type: "BOOLEAN", - }, - { - name: "writerTxn", - type: "LONG", - }, - { - name: "writerLagTxnCount", - type: "LONG", - }, - { - name: "sequencerTxn", - type: "LONG", - }, - ], - timestamp: -1, - dataset: [ - ["sys.acl_entities", false, "3", "0", "3"], - ["sys.acl_permissions", false, "30", "0", "30"], - ["sys.acl_jwk_tokens", false, "0", "0", "0"], - ["ecommerce_stats", false, "1", "0", "1"], - ["sys.acl_rest_tokens", false, "13", "0", "13"], - ["btc_trades", false, "1", "0", "1"], - ["gitlog", true, "1", "0", "1"], - ["chicago_weather_stations", true, "1", "0", "1"], - ["sys.acl_links", false, "0", "0", "0"], - ["sys.acl_external_groups", false, "1", "0", "1"], - ["sys.acl_passwords", false, "0", "0", "0"], - ], - count: 11, - timings: { - authentication: 25125, - compiler: 0, - execute: 14539625, - count: 0, - }, - explain: { - jitCompiled: false, - }, -} diff --git a/packages/web-console/src/utils/questdb.ts b/packages/web-console/src/utils/questdb.ts index 7241d7a01..6b8ef6a88 100644 --- a/packages/web-console/src/utils/questdb.ts +++ b/packages/web-console/src/utils/questdb.ts @@ -369,7 +369,6 @@ export class Client { return Client.transformQueryRawResult(result) } - // TODO: Remove mocked method async mockQueryResult(result: QueryRawResult): Promise> { return Client.transformQueryRawResult(result) } From 11cd8a51779356b6d6c79f8fb5894772da569d7e Mon Sep 17 00:00:00 2001 From: Maciej Bodek Date: Mon, 20 May 2024 18:04:46 +0200 Subject: [PATCH 23/86] Fix: loader state --- .../web-console/src/scenes/Schema/index.tsx | 22 ++++++++++--------- 1 file changed, 12 insertions(+), 10 deletions(-) diff --git a/packages/web-console/src/scenes/Schema/index.tsx b/packages/web-console/src/scenes/Schema/index.tsx index b197ac829..8112a85f8 100644 --- a/packages/web-console/src/scenes/Schema/index.tsx +++ b/packages/web-console/src/scenes/Schema/index.tsx @@ -98,6 +98,17 @@ const StyledCheckboxCircle = styled(CheckboxCircle)` color: ${({ theme }) => theme.color.green}; ` +const Loading = () => { + const [loaderShown, setLoaderShown] = useState(false) + // Show the loader only for delayed fetching process + useEffect(() => { + const timeout = setTimeout(() => setLoaderShown(true), 1000) + return () => clearTimeout(timeout) + }, []) + + return loaderShown ? : null +} + enum View { loading, error, @@ -244,16 +255,7 @@ const Schema = ({ }, []) const views: { [key in View]: () => React.ReactNode } = { - [View.loading]: () => () => { - const [loaderShown, setLoaderShown] = useState(false) - // Show the loader only for delayed fetching process - useEffect(() => { - const timeout = setTimeout(() => setLoaderShown(true), 1000) - return () => clearTimeout(timeout) - }, []) - - return loaderShown ? : null - }, + [View.loading]: () => , [View.error]: () => loadingError ? : , [View.ready]: () => ( From 723eb076aa6e5ac4312a1ffd8e6b33c4cc773fd4 Mon Sep 17 00:00:00 2001 From: Maciej Bodek Date: Wed, 22 May 2024 12:53:49 +0200 Subject: [PATCH 24/86] change `errorCode` to `errorMessage` --- .../web-console/src/scenes/Schema/SuspensionPopover/index.tsx | 4 ++-- packages/web-console/src/utils/questdb.ts | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/packages/web-console/src/scenes/Schema/SuspensionPopover/index.tsx b/packages/web-console/src/scenes/Schema/SuspensionPopover/index.tsx index 85b1896f8..0c6551a7a 100644 --- a/packages/web-console/src/scenes/Schema/SuspensionPopover/index.tsx +++ b/packages/web-console/src/scenes/Schema/SuspensionPopover/index.tsx @@ -138,9 +138,9 @@ export const SuspensionPopover = ({ {isSubmitted && ( Transaction restarted successfully )} - {walTableData.errorCode && ( + {walTableData.errorMessage && ( <> - Max open files limit reached in the OS + {walTableData.errorMessage} Workarounds and documentation: