neondatabase / neon

Neon: Serverless Postgres. We separated storage and compute to offer autoscaling, code-like database branching, and scale to zero.
https://neon.tech
Apache License 2.0
15.33k stars 447 forks source link

Epic: add extensive enough Vercel+Prisma tests in our release pipeline #5736

Open kelvich opened 1 year ago

kelvich commented 1 year ago

Motivation

We already had two cases where some breaking changes were delivered to the big amount of users who consume us though Vercel:

With some app that uses Prisma and Vercel storage driver we could detect it earlier. It should load database pretty well to use several pgbouncer connection simultaneously (otherwise prepared statements over pgbouncer would work).

DoD

We have some early warning system that involves Vercel, @vercel/postgres and Neon that is able to detect such breaking changes. Also makes sense to check the whole matrix of possible combinations (e.g. direct and pooled connection, direct use of @vercel/postgres and direct use of @neondatabase/serverless in websockets/http/http_with_connection_cache modes).

Implementation ideas

Could be our app deployed on Vercel. As part of the long running tests during the release (similar to postgres endurance tests by @bayandin) we could send the load to that app using smth like k6 for 15-30 min.

Tasks

Other related tasks and Epics

conradludgate commented 9 months ago

We have testodrome testing serverless driver on staging, no vercel or prisma driver yet.