Closed elsueno closed 3 months ago
@elsueno I installed your repo locally and it ran fine for me. Do the error logs in the terminal give any hints? I'm not sure what the default logging level Blitz sets, but perhaps overriding it in blitz-server.ts: BlitzLogger({ minLevel: 1 })
may yield more information.
I can confirm the error based on the demo app https://github.com/elsueno/blitz-209-bug
The error is only visible in the browser, not the terminal.
<User>
client component https://github.com/elsueno/blitz-209-bug/blob/main/src/app/layout.tsx@elsueno I installed your repo locally and it ran fine for me. Do the error logs in the terminal give any hints? I'm not sure what the default logging level Blitz sets, but perhaps overriding it in blitz-server.ts:
BlitzLogger({ minLevel: 1 })
may yield more information.
The error is logged in the browser console. I've updated the ticket to make this more clear.
@siddhsuresh we noticed today that Meta's social sharing debugger seems to think our page returns a error 500 which we thing should be due to this error.
Do you have an idea what is going on? (There is a test case for this at https://github.com/elsueno/blitz-209-bug)
And looking at this, testing with httpie also shows the error 500:
% http https://staging.radverkehrsatlas.de/
HTTP/1.1 500 Internal Server Error
Cache-Control: private, no-cache, no-store, max-age=0, must-revalidate
Content-Encoding: gzip
Content-Type: text/html; charset=utf-8
Date: Tue, 06 Aug 2024 13:31:39 GMT
Transfer-Encoding: chunked
Vary: RSC, Next-Router-State-Tree, Next-Router-Prefetch, Accept-Encoding
X-Powered-By: Next.js
<!DOCTYPE html><html id="__next_error__"><head><meta…
The page does, however, load like expected and it seems not to be slower.
@tordans yeah I think I can replicate this. Will get a fix in as soon as I figure out the reason.
The page initially loads with the next_error and soon hydrates with the working html. I am assuming this a suspense or hydration error we have missed handling.
hey @tordans after a discussion, it was concluded that this is expected behaviour in order to get suspense working server side in next.js, so you can just ignore this as expected.
… so you can just ignore this as expected.
@siddhsuresh thanks for the update. I would happily ignore it, but the fact that Social Sharing does not seem to work with this I consider it a real issue.
Do you have hints into what we need to change in our app in order to work around this issue?
@tordans imo the easiest way to work around this, would be to turn of suspense
of blitz-rpc and handle the loading and error states imperatively.
does that work for you?
@tordans I managed to fix this issue by wrapping the client components from the layout inside a suspense after <BlitzProvider>
What is the problem?
When I use a client component in root layout the server returns a 500 error but everything seems to be working properly. So just the response status seems to be wrong.
Paste all your error logs here:
GET http://127.0.0.1:3000/ 500 (Internal Server Error)
Paste all relevant code snippets here:
See below
What are detailed steps to reproduce this?
Checkout repo that demonstrates the bug and start server
Now open http://localhost:3000 in your browser - everything seems to be working properly but this error is logged in the browser console
GET http://127.0.0.1:3000/ 500 (Internal Server Error)
Run
blitz -v
and paste the output here:Output of "npx blitz@2.0.9 -v"
Please include below any other applicable logs and screenshots that show your problem:
No response