Closed
Description
Describe the Bug
When adding a join
to a collection, where a relationship has already been created, any GraphQL query to that collection fails with
[22:13:15] ERROR: Cannot set properties of undefined (setting '0')
err: {
"type": "GraphQLError",
"message": "Cannot set properties of undefined (setting '0')",
"stack":
TypeError: Cannot set properties of undefined (setting '0')
at populate (file:///Users/carsten/dev/tarabao/node_modules/.pnpm/payload@3.42.0_graphql@16.11.0_typescript@5.8.3/node_modules/payload/dist/fields/hooks/afterRead/relationshipPopulationPromise.js:61:65)
at rowPromise (file:///Users/carsten/dev/tarabao/node_modules/.pnpm/payload@3.42.0_graphql@16.11.0_typescript@5.8.3/node_modules/payload/dist/fields/hooks/afterRead/relationshipPopulationPromise.js:120:31)
at file:///Users/carsten/dev/tarabao/node_modules/.pnpm/payload@3.42.0_graphql@16.11.0_typescript@5.8.3/node_modules/payload/dist/fields/hooks/afterRead/relationshipPopulationPromise.js:137:34
at Array.forEach (<anonymous>)
at relationshipPopulationPromise (file:///Users/carsten/dev/tarabao/node_modules/.pnpm/payload@3.42.0_graphql@16.11.0_typescript@5.8.3/node_modules/payload/dist/fields/hooks/afterRead/relationshipPopulationPromise.js:117:108)
at promise (file:///Users/carsten/dev/tarabao/node_modules/.pnpm/payload@3.42.0_graphql@16.11.0_typescript@5.8.3/node_modules/payload/dist/fields/hooks/afterRead/promise.js:233:37)
at file:///Users/carsten/dev/tarabao/node_modules/.pnpm/payload@3.42.0_graphql@16.11.0_typescript@5.8.3/node_modules/payload/dist/fields/hooks/afterRead/traverseFields.js:4:28
at Array.forEach (<anonymous>)
at traverseFields (file:///Users/carsten/dev/tarabao/node_modules/.pnpm/payload@3.42.0_graphql@16.11.0_typescript@5.8.3/node_modules/payload/dist/fields/hooks/afterRead/traverseFields.js:3:12)
at promise (file:///Users/carsten/dev/tarabao/node_modules/.pnpm/payload@3.42.0_graphql@16.11.0_typescript@5.8.3/node_modules/payload/dist/fields/hooks/afterRead/promise.js:639:17)
at file:///Users/carsten/dev/tarabao/node_modules/.pnpm/payload@3.42.0_graphql@16.11.0_typescript@5.8.3/node_modules/payload/dist/fields/hooks/afterRead/traverseFields.js:4:28
at Array.forEach (<anonymous>)
at traverseFields (file:///Users/carsten/dev/tarabao/node_modules/.pnpm/payload@3.42.0_graphql@16.11.0_typescript@5.8.3/node_modules/payload/dist/fields/hooks/afterRead/traverseFields.js:3:12)
at promise (file:///Users/carsten/dev/tarabao/node_modules/.pnpm/payload@3.42.0_graphql@16.11.0_typescript@5.8.3/node_modules/payload/dist/fields/hooks/afterRead/promise.js:673:17)
at file:///Users/carsten/dev/tarabao/node_modules/.pnpm/payload@3.42.0_graphql@16.11.0_typescript@5.8.3/node_modules/payload/dist/fields/hooks/afterRead/traverseFields.js:4:28
at Array.forEach (<anonymous>)
at traverseFields (file:///Users/carsten/dev/tarabao/node_modules/.pnpm/payload@3.42.0_graphql@16.11.0_typescript@5.8.3/node_modules/payload/dist/fields/hooks/afterRead/traverseFields.js:3:12)
at afterRead (file:///Users/carsten/dev/tarabao/node_modules/.pnpm/payload@3.42.0_graphql@16.11.0_typescript@5.8.3/node_modules/payload/dist/fields/hooks/afterRead/index.js:21:5)
at file:///Users/carsten/dev/tarabao/node_modules/.pnpm/payload@3.42.0_graphql@16.11.0_typescript@5.8.3/node_modules/payload/dist/collections/operations/find.js:205:70
at Array.map (<anonymous>)
at findOperation (file:///Users/carsten/dev/tarabao/node_modules/.pnpm/payload@3.42.0_graphql@16.11.0_typescript@5.8.3/node_modules/payload/dist/collections/operations/find.js:205:53)
at process.processTicksAndRejections (node:internal/process/task_queues:105:5)
at async resolver (file:///Users/carsten/dev/tarabao/node_modules/.pnpm/@payloadcms+graphql@3.42.0_graphql@16.11.0_payload@3.42.0_graphql@16.11.0_typescript@5.8.3__typescript@5.8.3/node_modules/@payloadcms/graphql/dist/resolvers/collections/find.js:33:25)
at async Promise.all (index 0)
at async handler (webpack-internal:///(rsc)/../../node_modules/.pnpm/graphql-http@1.22.4_graphql@16.11.0/node_modules/graphql-http/lib/handler.mjs:338:22)
at async handleRequest (webpack-internal:///(rsc)/../../node_modules/.pnpm/graphql-http@1.22.4_graphql@16.11.0/node_modules/graphql-http/lib/use/fetch.mjs:102:34)
at async eval (webpack-internal:///(rsc)/../../node_modules/.pnpm/@payloadcms+next@3.42.0_@types+react@19.0.8_graphql@16.11.0_monaco-editor@0.38.0_next@1_38eba045ea89910b8113433f526663bb/node_modules/@payloadcms/next/dist/routes/graphql/handler.js:107:23)
at async AppRouteRouteModule.do (/Users/carsten/dev/tarabao/node_modules/.pnpm/next@15.3.3_@babel+core@7.27.4_@opentelemetry+api@1.9.0_@playwright+test@1.50.1_babel-p_a8fe3bc094ff9acb889a7fb77357310c/node_modules/next/dist/compiled/next-server/app-route.runtime.dev.js:26:34112)
at async AppRouteRouteModule.handle (/Users/carsten/dev/tarabao/node_modules/.pnpm/next@15.3.3_@babel+core@7.27.4_@opentelemetry+api@1.9.0_@playwright+test@1.50.1_babel-p_a8fe3bc094ff9acb889a7fb77357310c/node_modules/next/dist/compiled/next-server/app-route.runtime.dev.js:26:41338)
at async doRender (/Users/carsten/dev/tarabao/node_modules/.pnpm/next@15.3.3_@babel+core@7.27.4_@opentelemetry+api@1.9.0_@playwright+test@1.50.1_babel-p_a8fe3bc094ff9acb889a7fb77357310c/node_modules/next/dist/server/base-server.js:1518:42)
at async DevServer.renderToResponseWithComponentsImpl (/Users/carsten/dev/tarabao/node_modules/.pnpm/next@15.3.3_@babel+core@7.27.4_@opentelemetry+api@1.9.0_@playwright+test@1.50.1_babel-p_a8fe3bc094ff9acb889a7fb77357310c/node_modules/next/dist/server/base-server.js:1920:28)
at async DevServer.renderPageComponent (/Users/carsten/dev/tarabao/node_modules/.pnpm/next@15.3.3_@babel+core@7.27.4_@opentelemetry+api@1.9.0_@playwright+test@1.50.1_babel-p_a8fe3bc094ff9acb889a7fb77357310c/node_modules/next/dist/server/base-server.js:2408:24)
at async DevServer.renderToResponseImpl (/Users/carsten/dev/tarabao/node_modules/.pnpm/next@15.3.3_@babel+core@7.27.4_@opentelemetry+api@1.9.0_@playwright+test@1.50.1_babel-p_a8fe3bc094ff9acb889a7fb77357310c/node_modules/next/dist/server/base-server.js:2445:32)
at async DevServer.pipeImpl (/Users/carsten/dev/tarabao/node_modules/.pnpm/next@15.3.3_@babel+core@7.27.4_@opentelemetry+api@1.9.0_@playwright+test@1.50.1_babel-p_a8fe3bc094ff9acb889a7fb77357310c/node_modules/next/dist/server/base-server.js:1008:25)
at async NextNodeServer.handleCatchallRenderRequest (/Users/carsten/dev/tarabao/node_modules/.pnpm/next@15.3.3_@babel+core@7.27.4_@opentelemetry+api@1.9.0_@playwright+test@1.50.1_babel-p_a8fe3bc094ff9acb889a7fb77357310c/node_modules/next/dist/server/next-server.js:305:17)
at async DevServer.handleRequestImpl (/Users/carsten/dev/tarabao/node_modules/.pnpm/next@15.3.3_@babel+core@7.27.4_@opentelemetry+api@1.9.0_@playwright+test@1.50.1_babel-p_a8fe3bc094ff9acb889a7fb77357310c/node_modules/next/dist/server/base-server.js:900:17)
at async /Users/carsten/dev/tarabao/node_modules/.pnpm/next@15.3.3_@babel+core@7.27.4_@opentelemetry+api@1.9.0_@playwright+test@1.50.1_babel-p_a8fe3bc094ff9acb889a7fb77357310c/node_modules/next/dist/server/dev/next-dev-server.js:371:20
at async Span.traceAsyncFn (/Users/carsten/dev/tarabao/node_modules/.pnpm/next@15.3.3_@babel+core@7.27.4_@opentelemetry+api@1.9.0_@playwright+test@1.50.1_babel-p_a8fe3bc094ff9acb889a7fb77357310c/node_modules/next/dist/trace/trace.js:157:20)
at async DevServer.handleRequest (/Users/carsten/dev/tarabao/node_modules/.pnpm/next@15.3.3_@babel+core@7.27.4_@opentelemetry+api@1.9.0_@playwright+test@1.50.1_babel-p_a8fe3bc094ff9acb889a7fb77357310c/node_modules/next/dist/server/dev/next-dev-server.js:368:24)
at async invokeRender (/Users/carsten/dev/tarabao/node_modules/.pnpm/next@15.3.3_@babel+core@7.27.4_@opentelemetry+api@1.9.0_@playwright+test@1.50.1_babel-p_a8fe3bc094ff9acb889a7fb77357310c/node_modules/next/dist/server/lib/router-server.js:237:21)
at async handleRequest (/Users/carsten/dev/tarabao/node_modules/.pnpm/next@15.3.3_@babel+core@7.27.4_@opentelemetry+api@1.9.0_@playwright+test@1.50.1_babel-p_a8fe3bc094ff9acb889a7fb77357310c/node_modules/next/dist/server/lib/router-server.js:428:24)
at async requestHandlerImpl (/Users/carsten/dev/tarabao/node_modules/.pnpm/next@15.3.3_@babel+core@7.27.4_@opentelemetry+api@1.9.0_@playwright+test@1.50.1_babel-p_a8fe3bc094ff9acb889a7fb77357310c/node_modules/next/dist/server/lib/router-server.js:452:13)
at async Server.requestListener (/Users/carsten/dev/tarabao/node_modules/.pnpm/next@15.3.3_@babel+core@7.27.4_@opentelemetry+api@1.9.0_@playwright+test@1.50.1_babel-p_a8fe3bc094ff9acb889a7fb77357310c/node_modules/next/dist/server/lib/start-server.js:158:13)
"path": [
"Products"
],
"locations": [
{
"line": 2,
"column": 3
}
],
"extensions": {}
}
Link to the code that reproduces this issue
requires data and modifications...
Reproduction Steps
- Create collection A and B. B has a relationship to A.
- Create some document of A and a document of B, that links to A.
- In collection A create a join with B.
- Query A with GraphQL
Which area(s) are affected? (Select all that apply)
db-mongodb
Environment Info
Binaries:
Node: 22.16.0
npm: 10.9.2
Yarn: 1.22.19
pnpm: 10.12.1
Relevant Packages:
payload: 3.42.0
Metadata
Metadata
Assignees
Labels
No labels