Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Disable prerendering /500 when _error has getServerSideProps #23586

Merged
merged 4 commits into from
Jun 11, 2021

Conversation

ijjk
Copy link
Member

@ijjk ijjk commented Mar 31, 2021

This prevents unexpected errors occurring from users leveraging getServerSideProps in _error with the new /500 prerendering as we are currently only checking for a custom getInitialProps in _error since it opts out of the static optimization although getServerSideProps also opts out of the optimization.

Fixes: #23541
Fixes: #23128
Fixes: #23541
Fixes: #24206

Bug

  • Related issues linked using fixes #number
  • Integration tests added

@ijjk

This comment has been minimized.

@dcodrin
Copy link

dcodrin commented Apr 23, 2021

@ijjk Thank you for opening this pr! I see it's still in Draft, do you need help with it?

@ijjk
Copy link
Member Author

ijjk commented Apr 23, 2021

This behavior is still being discussed internally

@OlehDutchenko

This comment has been minimized.

@mariegodon
Copy link

Hi, this is something we are really looking forward to having, since it is critical for our project. Is there any news or updates on this? Thanks.

@ijjk ijjk added create-next-app Related to our CLI tool for quickly starting a new Next.js application. type: documentation examples Issue/PR related to examples labels Jun 10, 2021
@ijjk ijjk force-pushed the static-500-getserversideprops branch from 6ad29c2 to 9f7374b Compare June 10, 2021 18:46
@ijjk

This comment has been minimized.

@ijjk ijjk marked this pull request as ready for review June 10, 2021 19:17
@ijjk
Copy link
Member Author

ijjk commented Jun 11, 2021

Stats from current PR

Default Server Mode (Decrease detected ✓)
General Overall increase ⚠️
vercel/next.js canary ijjk/next.js static-500-getserversideprops Change
buildDuration 11.2s 11.4s ⚠️ +178ms
buildDurationCached 2.8s 2.8s -11ms
nodeModulesSize 46.5 MB 46.5 MB ⚠️ +1.9 kB
Page Load Tests Overall decrease ⚠️
vercel/next.js canary ijjk/next.js static-500-getserversideprops Change
/ failed reqs 0 0
/ total time (seconds) 2.23 2.309 ⚠️ +0.08
/ avg req/sec 1120.89 1082.57 ⚠️ -38.32
/error-in-render failed reqs 0 0
/error-in-render total time (seconds) 1.129 1.165 ⚠️ +0.04
/error-in-render avg req/sec 2214.79 2145.59 ⚠️ -69.2
Client Bundles (main, webpack, commons)
vercel/next.js canary ijjk/next.js static-500-getserversideprops Change
framework-HASH.js gzip 39.3 kB 39.3 kB
main-HASH.js gzip 20.2 kB 20.2 kB
webpack-HASH.js gzip 804 B 804 B
Overall change 60.3 kB 60.3 kB
Legacy Client Bundles (polyfills)
vercel/next.js canary ijjk/next.js static-500-getserversideprops Change
polyfills-HASH.js gzip 31.1 kB 31.1 kB
Overall change 31.1 kB 31.1 kB
Client Pages
vercel/next.js canary ijjk/next.js static-500-getserversideprops Change
_app-HASH.js gzip 801 B 801 B
_error-HASH.js gzip 3.07 kB 3.07 kB
amp-HASH.js gzip 527 B 527 B
css-HASH.js gzip 334 B 334 B
hooks-HASH.js gzip 890 B 890 B
index-HASH.js gzip 263 B 263 B
link-HASH.js gzip 1.64 kB 1.64 kB
routerDirect..HASH.js gzip 333 B 333 B
withRouter-HASH.js gzip 330 B 330 B
bb14e60e810b..30f.css gzip 125 B 125 B
Overall change 8.31 kB 8.31 kB
Client Build Manifests
vercel/next.js canary ijjk/next.js static-500-getserversideprops Change
_buildManifest.js gzip 392 B 392 B
Overall change 392 B 392 B
Rendered Page Sizes
vercel/next.js canary ijjk/next.js static-500-getserversideprops Change
index.html gzip 574 B 574 B
link.html gzip 581 B 581 B
withRouter.html gzip 569 B 569 B
Overall change 1.72 kB 1.72 kB

Serverless Mode
General Overall increase ⚠️
vercel/next.js canary ijjk/next.js static-500-getserversideprops Change
buildDuration 13s 12.8s -278ms
buildDurationCached 3.7s 3.7s -6ms
nodeModulesSize 46.5 MB 46.5 MB ⚠️ +1.9 kB
Client Bundles (main, webpack, commons)
vercel/next.js canary ijjk/next.js static-500-getserversideprops Change
framework-HASH.js gzip 39.3 kB 39.3 kB
main-HASH.js gzip 20.2 kB 20.2 kB
webpack-HASH.js gzip 804 B 804 B
Overall change 60.3 kB 60.3 kB
Legacy Client Bundles (polyfills)
vercel/next.js canary ijjk/next.js static-500-getserversideprops Change
polyfills-HASH.js gzip 31.1 kB 31.1 kB
Overall change 31.1 kB 31.1 kB
Client Pages
vercel/next.js canary ijjk/next.js static-500-getserversideprops Change
_app-HASH.js gzip 801 B 801 B
_error-HASH.js gzip 3.07 kB 3.07 kB
amp-HASH.js gzip 527 B 527 B
css-HASH.js gzip 334 B 334 B
hooks-HASH.js gzip 890 B 890 B
index-HASH.js gzip 263 B 263 B
link-HASH.js gzip 1.64 kB 1.64 kB
routerDirect..HASH.js gzip 333 B 333 B
withRouter-HASH.js gzip 330 B 330 B
bb14e60e810b..30f.css gzip 125 B 125 B
Overall change 8.31 kB 8.31 kB
Client Build Manifests
vercel/next.js canary ijjk/next.js static-500-getserversideprops Change
_buildManifest.js gzip 392 B 392 B
Overall change 392 B 392 B
Serverless bundles
vercel/next.js canary ijjk/next.js static-500-getserversideprops Change
_error.js 16.9 kB 16.9 kB -2 B
404.html 2.44 kB 2.44 kB
500.html 2.43 kB 2.43 kB
amp.amp.html 10.8 kB 10.8 kB
amp.html 1.63 kB 1.63 kB
css.html 1.81 kB 1.81 kB
hooks.html 1.69 kB 1.69 kB
index.js 17.2 kB 17.2 kB
link.js 17.4 kB 17.4 kB
routerDirect.js 17.4 kB 17.4 kB
withRouter.js 17.4 kB 17.4 kB ⚠️ +2 B
Overall change 107 kB 107 kB

Webpack 4 Mode (Increase detected ⚠️)
General Overall increase ⚠️
vercel/next.js canary ijjk/next.js static-500-getserversideprops Change
buildDuration 10.1s 10s -160ms
buildDurationCached 4.1s 4s -167ms
nodeModulesSize 46.5 MB 46.5 MB ⚠️ +1.9 kB
Page Load Tests Overall increase ✓
vercel/next.js canary ijjk/next.js static-500-getserversideprops Change
/ failed reqs 0 0
/ total time (seconds) 2.326 2.311 -0.02
/ avg req/sec 1074.9 1081.78 +6.88
/error-in-render failed reqs 0 0
/error-in-render total time (seconds) 1.206 1.154 -0.05
/error-in-render avg req/sec 2073.22 2165.55 +92.33
Client Bundles (main, webpack, commons)
vercel/next.js canary ijjk/next.js static-500-getserversideprops Change
677f882d2ed8..HASH.js gzip 13.4 kB 13.4 kB
framework.HASH.js gzip 39 kB 39 kB
main-HASH.js gzip 7.99 kB 7.99 kB
webpack-HASH.js gzip 751 B 751 B
Overall change 61.1 kB 61.1 kB
Legacy Client Bundles (polyfills)
vercel/next.js canary ijjk/next.js static-500-getserversideprops Change
polyfills-HASH.js gzip 31.3 kB 31.3 kB
Overall change 31.3 kB 31.3 kB
Client Pages
vercel/next.js canary ijjk/next.js static-500-getserversideprops Change
_app-HASH.js gzip 1.07 kB 1.07 kB
_error-HASH.js gzip 3.74 kB 3.74 kB
amp-HASH.js gzip 536 B 536 B
css-HASH.js gzip 339 B 339 B
hooks-HASH.js gzip 887 B 887 B
index-HASH.js gzip 227 B 227 B
link-HASH.js gzip 1.63 kB 1.63 kB
routerDirect..HASH.js gzip 303 B 303 B
withRouter-HASH.js gzip 302 B 302 B
e025d2764813..52f.css gzip 125 B 125 B
Overall change 9.17 kB 9.17 kB
Client Build Manifests
vercel/next.js canary ijjk/next.js static-500-getserversideprops Change
_buildManifest.js gzip 420 B 420 B
Overall change 420 B 420 B
Rendered Page Sizes
vercel/next.js canary ijjk/next.js static-500-getserversideprops Change
index.html gzip 627 B 627 B
link.html gzip 633 B 633 B
withRouter.html gzip 619 B 619 B
Overall change 1.88 kB 1.88 kB
Commit: f1f7efc

@kodiakhq kodiakhq bot merged commit 0402fc4 into vercel:canary Jun 11, 2021
@ijjk ijjk deleted the static-500-getserversideprops branch June 11, 2021 13:04
janicklas-ralph pushed a commit to janicklas-ralph/next.js that referenced this pull request Jun 11, 2021
…23586)

This prevents unexpected errors occurring from users leveraging `getServerSideProps` in `_error` with the new `/500` prerendering as we are currently only checking for a custom `getInitialProps` in `_error` since it opts out of the static optimization although `getServerSideProps` also opts out of the optimization. 

Fixes: vercel#23541
Fixes: vercel#23128
Fixes: vercel#23541
Fixes: vercel#24206

## Bug

- [x] Related issues linked using `fixes #number`
- [x] Integration tests added
flybayer pushed a commit to blitz-js/next.js that referenced this pull request Jun 16, 2021
…23586)

This prevents unexpected errors occurring from users leveraging `getServerSideProps` in `_error` with the new `/500` prerendering as we are currently only checking for a custom `getInitialProps` in `_error` since it opts out of the static optimization although `getServerSideProps` also opts out of the optimization. 

Fixes: vercel#23541
Fixes: vercel#23128
Fixes: vercel#23541
Fixes: vercel#24206

## Bug

- [x] Related issues linked using `fixes #number`
- [x] Integration tests added
@vercel vercel locked as resolved and limited conversation to collaborators Jan 28, 2022
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
create-next-app Related to our CLI tool for quickly starting a new Next.js application. examples Issue/PR related to examples type: next
Projects
None yet
5 participants