From ad914e94d90aaf052bb237607a6c0a60f708234e Mon Sep 17 00:00:00 2001 From: Joseph Shearer Date: Mon, 22 Jun 2026 20:38:27 -0400 Subject: [PATCH] data preview: fix "Server Error" for collections with more than 25 journals The broker's journal `List` RPC is server-streaming and caps each `ListResponse` frame at 25 journals (gazette/core#466, down from 1000), so a collection split more than 25 ways returns its listing as several newline-delimited frames. `getJournals` parsed the body with a single `response.json()`, which failed on the second frame and surfaced as the generic "Server Error", leaving the preview with no journal to read. * Bump vendored `data-plane-gateway` to a build whose `JournalClient.list()` consumes the stream and merges every frame (estuary/data-plane-gateway#51). * Call `journalClient.list()` directly and remove the now-dead `getJournals` and `isNestedProtocolListResponse` helpers. --- ...ta-plane-gateway-0.0.0-20251201-150928.tgz | Bin 25952 -> 0 bytes ...ta-plane-gateway-0.0.0-20260622-190856.tgz | Bin 0 -> 26535 bytes package-lock.json | 6 +-- package.json | 2 +- src/hooks/journals/useJournalData.ts | 46 ++++++++---------- src/utils/dataPlane-utils.ts | 21 -------- 6 files changed, 25 insertions(+), 50 deletions(-) delete mode 100644 __inline-deps__/data-plane-gateway-0.0.0-20251201-150928.tgz create mode 100644 __inline-deps__/data-plane-gateway-0.0.0-20260622-190856.tgz diff --git a/__inline-deps__/data-plane-gateway-0.0.0-20251201-150928.tgz b/__inline-deps__/data-plane-gateway-0.0.0-20251201-150928.tgz deleted file mode 100644 index f189102423bcbaac8f7e8b5713cb1b4a011c477a..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 25952 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%0A&tlphr>0C(Cfzz7#^URVxytxE6MN& zd3sdjkHD+Nzz5G&(JX*K%e#jbwCU(D^X5W(5>cVMX+9~>?r|flP8kaj(mUb|%Gr8|!=R^K z&$mmB3S&;lpWnDvq8~bC!l7hcsuCP-mPAI0so?I=0`Z;8h;#AKflQ>|DO-!|QlzDY z3fEz43vu9H0Jz!lN`l4KI^ZEf`dUI<3t8Hc}nzArmr zG~7}_`|a6QKkUU@FZ?i$Wi;EO<@z=msf%ggL4PhLQP}m>*kvnVR=`n%;+}-v^a>fC zVxFA=juKh<-g-gu-zexdh=g8F`w|pDZh)}hiG8vCM0nzRBEgS75#Hbb?k>NeuYd9W z1J^!L?Tut~81~gc((oMGH<_*_P*#_E<|M5)njP954J4c%Q1-L|i8=g#YfJp7{0YHV z45ozSh6wI-I}-ou^`_&gFJYeG?$)3LmL?ULBDg0U2>E)AStWa58lKV;he zgWi<>r;Y#IdGH`_|JmK%#D9D>@t>>IF08^4YGMi_ZR zbdEKxYpvA$W3Apch9T!tBLn!J?n6C=)x__V|FgK;uo4RLCQCo@&w_+#c% zV)sWjr^wLIfSG%ysmue${bJmX%cSRKjpvy*(sSatHgZJrwG);nbyK))Ae{DjKo?m< zVp?HWr!nao&!zTEjNFB+oS#f2=B1j219ASe(dl$hXf=1`Phh_@&Ha&!i@Ekc;6tY|M&jmP5#dxga4-x#Fu0IIaRit;~NVk`BLEl$AJnw3FOCVg0u%thCZj{b0LLq_aRdtV3E z-)jZuu}Vf^e^1okoSdE4ZDhlU5NP&NdRU#U2<`LPMAi319RXno3Tq4OL=FKV>V!$+ z{f^()_r$v&l#Em){`$d8!Oc7S#*O`z<|32dicV=0RAGz%u!9;0+X*k5`G^F!E)d^2 z)-aZGEEl(NExLvMoA$6XQQv!86BOG?L{jUxogi;Dk_SDB;Y?M7Rosw zQA%>cZ;2#o#qdiuSA|dfnnF^_qrts1AriEa-Pj0DUC}*)7dl|S;3JSuI=0Q=iD?;< zIuNH>K9==mwF*XryS)QOtuvnT#iQ$RntaI^Z_?M!GJ<37(z%Vq=o(uavL(74F;y!w zgb}e~OBl@=SylJ>$zQzxJaO2d`~^S$k9aD&{A&R_+{rM%)SKVWd$YY$$~VFIkG!kP z5PuqTnmWuTFL53bT2TO&Is7VP&o}NSO$}WNzfGktWG@P1GP2X?-TkqRE53;p-~4QT THb0x66@UJJ_x&7g0K@_SX*HAC diff --git a/__inline-deps__/data-plane-gateway-0.0.0-20260622-190856.tgz b/__inline-deps__/data-plane-gateway-0.0.0-20260622-190856.tgz new file mode 100644 index 0000000000000000000000000000000000000000..3407029309040b41930440f61970446e612e2600 GIT binary patch literal 26535 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 KyL{#V%mM%_Sg82` literal 0 HcmV?d00001 diff --git a/package-lock.json b/package-lock.json index 8a2370e4f1..92365ee5c6 100644 --- a/package-lock.json +++ b/package-lock.json @@ -39,7 +39,7 @@ "@urql/exchange-request-policy": "^2.0.0", "@urql/exchange-retry": "^2.0.0", "ansicolor": "^2.0.1", - "data-plane-gateway": "file:__inline-deps__/data-plane-gateway-0.0.0-20251201-150928.tgz", + "data-plane-gateway": "file:__inline-deps__/data-plane-gateway-0.0.0-20260622-190856.tgz", "date-fns": "^4.1.0", "dayjs": "^1.11.19", "echarts": "^5.4.3", @@ -8518,8 +8518,8 @@ }, "node_modules/data-plane-gateway": { "version": "0.0.0", - "resolved": "file:__inline-deps__/data-plane-gateway-0.0.0-20251201-150928.tgz", - "integrity": "sha512-Jj2jgjMcs2XgcAVzlGLQvLOVafDaJHvJMpUK8YR3rRywZdurnP0lV8W75U6vzM0DrB88JkqstCCy8176+nkmRA==", + "resolved": "file:__inline-deps__/data-plane-gateway-0.0.0-20260622-190856.tgz", + "integrity": "sha512-wO9ewszbaYcjyHZkxoXAqOE48nzBBNJP5ZRjtd3vcSoZCd0ZC26d+5xEfrL/TO0/Ss1fKznxJVD/g5tHFKrgPg==", "license": "MIT" }, "node_modules/data-uri-to-buffer": { diff --git a/package.json b/package.json index d14beb5024..d6e364fc71 100644 --- a/package.json +++ b/package.json @@ -76,7 +76,7 @@ "@urql/exchange-request-policy": "^2.0.0", "@urql/exchange-retry": "^2.0.0", "ansicolor": "^2.0.1", - "data-plane-gateway": "file:__inline-deps__/data-plane-gateway-0.0.0-20251201-150928.tgz", + "data-plane-gateway": "file:__inline-deps__/data-plane-gateway-0.0.0-20260622-190856.tgz", "date-fns": "^4.1.0", "dayjs": "^1.11.19", "echarts": "^5.4.3", diff --git a/src/hooks/journals/useJournalData.ts b/src/hooks/journals/useJournalData.ts index 11c0d01411..7b983955b2 100644 --- a/src/hooks/journals/useJournalData.ts +++ b/src/hooks/journals/useJournalData.ts @@ -5,18 +5,15 @@ import { useCallback, useEffect, useMemo, useRef, useState } from 'react'; import { useShallow } from 'zustand/react/shallow'; import { JournalClient, JournalSelector } from 'data-plane-gateway'; -import { isEmpty } from 'lodash'; import { useCounter } from 'react-use'; import useSWR from 'swr'; import { singleCallSettings } from 'src/context/SWR'; import { useUserStore } from 'src/context/User/useUserContextStore'; import { loadDocuments } from 'src/hooks/journals/shared'; -import { logRocketEvent } from 'src/services/shared'; +import { FETCH_DEFAULT_ERROR, logRocketEvent } from 'src/services/shared'; import useJournalStore from 'src/stores/JournalData/Store'; import { - getJournals, - isNestedProtocolListResponse, MAX_DOCUMENT_SIZE, shouldRefreshToken, } from 'src/utils/dataPlane-utils'; @@ -54,31 +51,30 @@ const useJournalsForCollection = (collectionName: string | undefined) => { brokerAddress && brokerToken ) { - const journalSelector = new JournalSelector().collection( - collectionName - ); + try { + const result = await journalClient.list( + new JournalSelector().collection(collectionName) + ); - const dataPlaneListResponse = await getJournals( - brokerAddress, - brokerToken, - { - include: journalSelector.toLabelSet(), + // Returning the rejected promise (rather than throwing) keeps + // this out of the catch below, so the broker's error message + // reaches SWR's onError for token-refresh handling. + if (result.err()) { + return Promise.reject({ + message: + result.unwrap_err().body.message ?? + FETCH_DEFAULT_ERROR, + }); } - ); - if (isEmpty(dataPlaneListResponse)) { - return Promise.reject(dataPlaneListResponse); + return { + journals: result.unwrap().journals ?? [], + }; + } catch { + // The gateway client throws on transport-level failures it + // cannot parse into a ResponseError, e.g. a network error. + return Promise.reject({ message: FETCH_DEFAULT_ERROR }); } - - const journals = isNestedProtocolListResponse( - dataPlaneListResponse - ) - ? dataPlaneListResponse.result.journals - : dataPlaneListResponse.journals; - - return { - journals: journals ?? [], - }; } else { return null; } diff --git a/src/utils/dataPlane-utils.ts b/src/utils/dataPlane-utils.ts index a86d25a621..b316390ced 100644 --- a/src/utils/dataPlane-utils.ts +++ b/src/utils/dataPlane-utils.ts @@ -1,8 +1,4 @@ import type { Session } from '@supabase/supabase-js'; -import type { - ProtocolLabelSelector, - ProtocolListResponse, -} from 'data-plane-gateway/types/gen/broker/protocol/broker'; import type { Shard } from 'data-plane-gateway/types/shard_client'; import type { ResponseError } from 'data-plane-gateway/types/util'; import type { BaseDataPlaneQuery } from 'src/api/dataPlanes'; @@ -188,23 +184,6 @@ export const authorizeCollection = async ( accessToken ); -// Streaming RPC responses going through grpc-gateway have a `result` vs `error` top-level property added, -// which wraps the actual response. The old data-plane gateway returns unary RPC responses from the /list APIs, -// which don't have a top-level `result` property. -export const isNestedProtocolListResponse = ( - response: { result: ProtocolListResponse } | ProtocolListResponse -): response is { result: ProtocolListResponse } => 'result' in response; - -export const getJournals = async ( - brokerAddress: string, - brokerToken: string, - selector: ProtocolLabelSelector -): Promise<{ result: ProtocolListResponse } | ProtocolListResponse> => - client( - `${brokerAddress}/v1/journals/list`, - { data: { selector } }, - brokerToken - ); /** @deprecated Scope is returned by dataplane gql query */ export const getDataPlaneScope = ( dataPlaneName: string