[GH-ISSUE #272] admin plugin user/list-sessions error #8197

Closed
opened 2026-04-13 03:18:08 -05:00 by GiteaMirror · 1 comment
Owner

Originally created by @xantiagoma on GitHub (Oct 20, 2024).
Original GitHub issue: https://github.com/better-auth/better-auth/issues/272

Describe the bug
When admin plugin enabled the authClient.user.listSessions() endpoint /api/auth/user/list-sessions returns 500 Internal Server Error on Next.js

Console shows

 GET /api/auth/user/list-sessions?currentURL=http%3A%2F%2Flocalhost%3A3000%2F 500 in 11ms
(node:13839) [DEP0040] DeprecationWarning: The `punycode` module is deprecated. Please use a userland alternative instead.
(Use `node --trace-deprecation ...` to show where the warning was created)
 ⨯ Error: failed to pipe response
    at pipeToNodeResponse (/Users/santi/denauth/node_modules/next/dist/server/pipe-readable.js:126:15)
    at async sendResponse (/Users/santi/denauth/node_modules/next/dist/server/send-response.js:40:13)
    at async doRender (/Users/santi/denauth/node_modules/next/dist/server/base-server.js:1382:25)
    at async cacheEntry.responseCache.get.routeKind (/Users/santi/denauth/node_modules/next/dist/server/base-server.js:1562:40)
    ... 12 lines matching cause stack trace ...
    at async Server.requestListener (/Users/santi/denauth/node_modules/next/dist/server/lib/start-server.js:141:13) {
  [cause]: TypeError [ERR_INVALID_STATE]: Invalid state: The ReadableStream is locked
      at ReadableStream.pipeTo (node:internal/webstreams/readablestream:429:15)
      at pipeToNodeResponse (/Users/santi/denauth/node_modules/next/dist/server/pipe-readable.js:120:24)
      at sendResponse (/Users/santi/denauth/node_modules/next/dist/server/send-response.js:40:56)
      at doRender (/Users/santi/denauth/node_modules/next/dist/server/base-server.js:1382:62)
      at async cacheEntry.responseCache.get.routeKind (/Users/santi/denauth/node_modules/next/dist/server/base-server.js:1562:40)
      at async DevServer.renderToResponseWithComponentsImpl (/Users/santi/denauth/node_modules/next/dist/server/base-server.js:1482:28)
      at async DevServer.renderPageComponent (/Users/santi/denauth/node_modules/next/dist/server/base-server.js:1908:24)
      at async DevServer.renderToResponseImpl (/Users/santi/denauth/node_modules/next/dist/server/base-server.js:1946:32)
      at async DevServer.pipeImpl (/Users/santi/denauth/node_modules/next/dist/server/base-server.js:921:25)
      at async NextNodeServer.handleCatchallRenderRequest (/Users/santi/denauth/node_modules/next/dist/server/next-server.js:272:17)
      at async DevServer.handleRequestImpl (/Users/santi/denauth/node_modules/next/dist/server/base-server.js:817:17)
      at async /Users/santi/denauth/node_modules/next/dist/server/dev/next-dev-server.js:339:20
      at async Span.traceAsyncFn (/Users/santi/denauth/node_modules/next/dist/trace/trace.js:154:20)
      at async DevServer.handleRequest (/Users/santi/denauth/node_modules/next/dist/server/dev/next-dev-server.js:336:24)
      at async invokeRender (/Users/santi/denauth/node_modules/next/dist/server/lib/router-server.js:173:21)
      at async handleRequest (/Users/santi/denauth/node_modules/next/dist/server/lib/router-server.js:350:24)
      at async requestHandlerImpl (/Users/santi/denauth/node_modules/next/dist/server/lib/router-server.js:374:13)
      at async Server.requestListener (/Users/santi/denauth/node_modules/next/dist/server/lib/start-server.js:141:13) {
    code: 'ERR_INVALID_STATE'
  }
}

To Reproduce
Steps to reproduce the behavior:

  1. Enable admin plugin on Next.js
  2. Call authClient.user.listSessions()
  3. Check the Network tab
  4. See error on the console.

Expected behavior
Keeps working as when admin plugin is disabled.

Desktop (please complete the following information):

  • OS: macOS 14.6.1 23G93 arm64
  • Browser: Arc
  • Version: Version 1.61.2 (54148) - Chromium Engine Version 129.0.6668.71
Originally created by @xantiagoma on GitHub (Oct 20, 2024). Original GitHub issue: https://github.com/better-auth/better-auth/issues/272 **Describe the bug** When admin plugin enabled the `authClient.user.listSessions()` endpoint `/api/auth/user/list-sessions` returns `500 Internal Server Error` on Next.js Console shows ``` GET /api/auth/user/list-sessions?currentURL=http%3A%2F%2Flocalhost%3A3000%2F 500 in 11ms (node:13839) [DEP0040] DeprecationWarning: The `punycode` module is deprecated. Please use a userland alternative instead. (Use `node --trace-deprecation ...` to show where the warning was created) ⨯ Error: failed to pipe response at pipeToNodeResponse (/Users/santi/denauth/node_modules/next/dist/server/pipe-readable.js:126:15) at async sendResponse (/Users/santi/denauth/node_modules/next/dist/server/send-response.js:40:13) at async doRender (/Users/santi/denauth/node_modules/next/dist/server/base-server.js:1382:25) at async cacheEntry.responseCache.get.routeKind (/Users/santi/denauth/node_modules/next/dist/server/base-server.js:1562:40) ... 12 lines matching cause stack trace ... at async Server.requestListener (/Users/santi/denauth/node_modules/next/dist/server/lib/start-server.js:141:13) { [cause]: TypeError [ERR_INVALID_STATE]: Invalid state: The ReadableStream is locked at ReadableStream.pipeTo (node:internal/webstreams/readablestream:429:15) at pipeToNodeResponse (/Users/santi/denauth/node_modules/next/dist/server/pipe-readable.js:120:24) at sendResponse (/Users/santi/denauth/node_modules/next/dist/server/send-response.js:40:56) at doRender (/Users/santi/denauth/node_modules/next/dist/server/base-server.js:1382:62) at async cacheEntry.responseCache.get.routeKind (/Users/santi/denauth/node_modules/next/dist/server/base-server.js:1562:40) at async DevServer.renderToResponseWithComponentsImpl (/Users/santi/denauth/node_modules/next/dist/server/base-server.js:1482:28) at async DevServer.renderPageComponent (/Users/santi/denauth/node_modules/next/dist/server/base-server.js:1908:24) at async DevServer.renderToResponseImpl (/Users/santi/denauth/node_modules/next/dist/server/base-server.js:1946:32) at async DevServer.pipeImpl (/Users/santi/denauth/node_modules/next/dist/server/base-server.js:921:25) at async NextNodeServer.handleCatchallRenderRequest (/Users/santi/denauth/node_modules/next/dist/server/next-server.js:272:17) at async DevServer.handleRequestImpl (/Users/santi/denauth/node_modules/next/dist/server/base-server.js:817:17) at async /Users/santi/denauth/node_modules/next/dist/server/dev/next-dev-server.js:339:20 at async Span.traceAsyncFn (/Users/santi/denauth/node_modules/next/dist/trace/trace.js:154:20) at async DevServer.handleRequest (/Users/santi/denauth/node_modules/next/dist/server/dev/next-dev-server.js:336:24) at async invokeRender (/Users/santi/denauth/node_modules/next/dist/server/lib/router-server.js:173:21) at async handleRequest (/Users/santi/denauth/node_modules/next/dist/server/lib/router-server.js:350:24) at async requestHandlerImpl (/Users/santi/denauth/node_modules/next/dist/server/lib/router-server.js:374:13) at async Server.requestListener (/Users/santi/denauth/node_modules/next/dist/server/lib/start-server.js:141:13) { code: 'ERR_INVALID_STATE' } } ``` **To Reproduce** Steps to reproduce the behavior: 1. Enable admin plugin on Next.js 2. Call `authClient.user.listSessions()` 3. Check the Network tab 4. See error on the console. **Expected behavior** Keeps working as when admin plugin is disabled. **Desktop (please complete the following information):** - OS: macOS 14.6.1 23G93 arm64 - Browser: Arc - Version: Version 1.61.2 (54148) - Chromium Engine Version 129.0.6668.71
GiteaMirror added the locked label 2026-04-13 03:18:08 -05:00
Author
Owner

@Bekacru commented on GitHub (Nov 14, 2024):

this has been fixed on one of the release. feel free to re-open if not.

<!-- gh-comment-id:2476459232 --> @Bekacru commented on GitHub (Nov 14, 2024): this has been fixed on one of the release. feel free to re-open if not.
Sign in to join this conversation.
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: github-starred/better-auth#8197