#Optimize not showing any queries

1 messages · Page 1 of 1 (latest)

rugged crypt
#

For some reason when I click on record it won't show any queries done but the accelerate works. (pnpm dev)

import { PrismaClient } from '@prisma/client/edge'
import { withOptimize } from '@prisma/extension-optimize'
import { withAccelerate } from '@prisma/extension-accelerate'

const prisma = new PrismaClient({ log: ['query', 'info', 'warn', 'error'] })
  .$extends(
    withOptimize({
      apiKey: process.env.OPTIMIZE_API_KEY!,
      enable: true,
    })
  )
  .$extends(withAccelerate())
  .$extends({
    query: {
      $allModels: {
        async $allOperations({ operation, model, args, query }) {
          const start = performance.now()
          const result = await query(args)
          const end = performance.now()
          const duration = end - start
          console.log(`Query ${model}.${operation} took ${duration.toFixed(2)}ms`)
          return result
        },
      },
    },
  })

export default prisma
tidal geyserBOT
#

You chose to debug with a human. They'll tinker with your query soon. If you get curious meanwhile, hop into #ask-ai for a quick spin!

rugged crypt
#
prisma:info Calling accelerate prisma
prisma:info Calling accelerate prisma
prisma:query SELECT 1
prisma:query SELECT "public"."UserInformation"."id" FROM "public"."UserInformation" WHERE ("public"."UserInformation"."username" = $1 OR "public"."UserInformation"."email" = $2) LIMIT $3 OFFSET $4 /* traceparent='00-e74d4b0a22a5a9777b73897dd24f4717-828d876a9e86148e-01' 
*/
prisma:query SELECT "public"."Invite"."id" FROM "public"."Invite" WHERE ("public"."Invite"."inviteCode" = $1 AND "public"."Invite"."claimed" = $2) LIMIT $3 OFFSET $4 /* traceparent='00-e74d4b0a22a5a9777b73897dd24f4717-e6694966486688cb-01' */
prisma:info Calling accelerate prisma
prisma:query BEGIN
prisma:query SELECT "public"."BioInformation"."id" FROM "public"."BioInformation" WHERE ("public"."BioInformation"."bioName" = $1 AND 1=1) OFFSET $2 /* traceparent='00-e74d4b0a22a5a9777b73897dd24f4717-066703b31586edf5-01' */
prisma:query INSERT INTO "public"."BioInformation" ("id","bioName") VALUES ($1,$2) RETURNING "public"."BioInformation"."id" /* traceparent='00-e74d4b0a22a5a9777b73897dd24f4717-066703b31586edf5-01' */
prisma:query SELECT "public"."BioInformation"."id", "public"."BioInformation"."bioName" FROM "public"."BioInformation" WHERE "public"."BioInformation"."id" = $1 LIMIT $2 OFFSET $3 /* traceparent='00-e74d4b0a22a5a9777b73897dd24f4717-066703b31586edf5-01' */
prisma:query INSERT INTO "public"."User" ("id","appwriteId") VALUES ($1,$2) RETURNING "public"."User"."id" /* traceparent='00-e74d4b0a22a5a9777b73897dd24f4717-066703b31586edf5-01' */
prisma:query INSERT INTO "public"."InviteInformation" ("id","userId") VALUES ($1,$2) RETURNING "public"."InviteInformation"."id" /* traceparent='00-e74d4b0a22a5a9777b73897dd24f4717-066703b31586edf5-01' */
prisma:query INSERT INTO "public"."Invite" ("id","inviteCode","expirationDate","claimed","inviteInformationId") VALUES ($1,$2,$3,$4,$5) RETURNING "public"."Invite"."id" /* traceparent='00-e74d4b0a22a5a9777b73897dd24f4717-066703b31586edf5-01' */
prisma:query SELECT "public"."User"."id", "public"."User"."appwriteId" FROM "public"."User" WHERE "public"."User"."id" = $1 LIMIT $2 OFFSET $3 /* traceparent='00-e74d4b0a22a5a9777b73897dd24f4717-066703b31586edf5-01' */
prisma:query SELECT "public"."User"."id" FROM "public"."User" WHERE ("public"."User"."appwriteId" = $1 AND 1=1) OFFSET $2 /* traceparent='00-e74d4b0a22a5a9777b73897dd24f4717-066703b31586edf5-01' */
prisma:query UPDATE "public"."Invite" SET "claimed" = $1, "redeemedAt" = $2 WHERE ("public"."Invite"."inviteCode" = $3 AND 1=1) RETURNING "public"."Invite"."id", "public"."Invite"."inviteCode", "public"."Invite"."expirationDate", "public"."Invite"."redeemedAt", "public"."Invite"."claimed", "public"."Invite"."usedById", "public"."Invite"."inviteInformationId" /* traceparent='00-e74d4b0a22a5a9777b73897dd24f4717-066703b31586edf5-01' */
prisma:query SELECT "public"."Invite"."id", "public"."Invite"."usedById" FROM "public"."Invite" WHERE (1=1 AND "public"."Invite"."usedById" IN ($1)) OFFSET $2 /* traceparent='00-e74d4b0a22a5a9777b73897dd24f4717-066703b31586edf5-01' */
prisma:query UPDATE "public"."Invite" SET "usedById" = $1 WHERE "public"."Invite"."id" = $2 /* traceparent='00-e74d4b0a22a5a9777b73897dd24f4717-066703b31586edf5-01' */
prisma:query SELECT "public"."Invite"."id", "public"."Invite"."inviteCode", "public"."Invite"."expirationDate", "public"."Invite"."redeemedAt", "public"."Invite"."claimed", "public"."Invite"."usedById", "public"."Invite"."inviteInformationId" FROM "public"."Invite" WHERE "public"."Invite"."id" = $1 LIMIT $2 OFFSET $3 /* traceparent='00-e74d4b0a22a5a9777b73897dd24f4717-066703b31586edf5-01' */
prisma:query COMMIT
Query BioInformation.upsert took 520.44ms
Query User.create took 520.54ms
Query Invite.update took 520.61ms```
#

Heres what I am getting on the logs, from what I see accelerate is working perfectly but optimize just doesn't appear to work

#

@prisma fjord any clue?

knotty raft
#

Hey 👋

Are you using latest versions of prisma, Optimize and accelerate extension?
Would it be possible for you to share a minimal reproduction with us so that we can debug?

rugged crypt
#

There's no actual way of reproducing I have no clue it's just that, I showed the queries

#

No errors and the optimize.prisma message shows

rugged crypt
#

Yeah just nothing, I did try with the create optimize template and it showed the queries but not on the next.js app...

generator client {
  provider = "prisma-client-js"
  previewFeatures = ["tracing"]
}

datasource db {
  provider          = "postgresql"
  url               = env("DATABASE_URL")
  directUrl         = env("DIRECT_URL_NON_POLLING")
  shadowDatabaseUrl = env("SHADOW_DATABASE_URL")
}
import { PrismaClient } from '@prisma/client/edge'
import { withOptimize } from '@prisma/extension-optimize'
//import { withAccelerate } from '@prisma/extension-accelerate'

const globalForPrisma = globalThis as unknown as { prisma: PrismaClient }

export const prisma =
  globalForPrisma.prisma ||
  new PrismaClient().$extends(
    withOptimize({
      apiKey: process.env.PRISMA_OPTIMIZE_TOKEN!,
    })
  )

if (process.env.NODE_ENV !== 'production') globalForPrisma.prisma = prisma

export default prisma

Depends:

    "@prisma/client": "^6.4.1",
    "@prisma/extension-accelerate": "^1.2.2",
    "@prisma/extension-optimize": "^1.1.6",
    "@prisma/instrumentation": "^6.4.1",
knotty raft
#

Is your Nextjs app open source?

rugged crypt
knotty raft
#

Let me first try to create a basic nextjs app with Optimize and check if I can reproduce this.

rugged crypt
#

I've seen create T3 app and other prisma setups but they all work..

rugged crypt
#

@knotty raft

knotty raft
#

This is on my radar. Will attempt a reproduction today and share it with you

knotty raft