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

PANIC: called Option::unwrap() on a None value in query-engine\core\src\interpreter\query_interpreters\nested_read.rs:232:50 #12756

Closed
hemant17 opened this issue Apr 10, 2022 · 2 comments
Labels
bug/1-unconfirmed Bug should have enough information for reproduction, but confirmation has not happened yet. kind/bug A reported bug. team/client Issue for team Client. tech/engines/query engine Issue in the Query Engine topic: findMany() topic: nested read https://www.prisma.io/docs/concepts/components/prisma-client/relation-queries#nested-reads topic: rust panic
Milestone

Comments

@hemant17
Copy link

hemant17 commented Apr 10, 2022

Hi Prisma Team! My Prisma Client just crashed. This is the report:
%23%23 Versions

Name Version
Node v14.15.0
OS windows
Prisma Client 3.11.1
Query Engine 0.1.0
Database mysql

%23%23 Logs

 async handler (webpack-internal:///(api)/./src/pages/api/watchlist/watchlist.js:13:18)
  prisma:client:request_handler     at async Object.apiResolver (W:\laragon\www\papertrading\node_modules\next\dist\server\api-utils.js:101:9)
  prisma:client:request_handler     at async DevServer.runApi (W:\laragon\www\papertrading\node_modules\next\dist\server\next-server.js:320:9)
  prisma:client:request_handler     at async Object.fn (W:\laragon\www\papertrading\node_modules\next\dist\server\base-server.js:486:37)
  prisma:client:request_handler     at async Router.execute (W:\laragon\www\papertrading\node_modules\next\dist\server\router.js:228:32)
  prisma:client:request_handler     at async DevServer.run (W:\laragon\www\papertrading\node_modules\next\dist\server\base-server.js:598:29)   31m
  prisma:tryLoadEnv Environment variables loaded from W:\laragon\www\papertrading\.env   2h
  prisma:client dirname  W:\laragon\www\papertrading\node_modules\.prisma\client   2h
  prisma:client relativePath  ..\..\..\prisma  
  prisma:client cwd  W:\laragon\www\papertrading\prisma  
  prisma:client clientVersion: 3.11.1  
  prisma:client clientEngineType: library  
  prisma:client:libraryEngine internalSetup   39s
  prisma:client:libraryEngine Searching for Query Engine Library in W:\laragon\www\papertrading\node_modules\.prisma\client  
  prisma:client:libraryEngine loadEngine using W:\laragon\www\papertrading\node_modules\.prisma\client\query_engine-windows.dll.node  
  prisma:client:libraryEngine sending request, this.libraryStarted: false  
  prisma:client:libraryEngine library starting  
  prisma:client:libraryEngine library started  
  prisma:client:libraryEngine sending request, this.libraryStarted: true   2s
  prisma:client:libraryEngine sending request, this.libraryStarted: true  
  prisma:client:libraryEngine sending request, this.libraryStarted: true  
  prisma:client:request_handler Error: called `Option::unwrap()` on a `None` value
  prisma:client:request_handler     at prismaGraphQLToJSError (W:\laragon\www\papertrading\node_modules\@prisma\client\runtime\index.js:33924:10)
  prisma:client:request_handler     at Object.request (W:\laragon\www\papertrading\node_modules\@prisma\client\runtime\index.js:35748:17)
  prisma:client:request_handler     at async Object.request (W:\laragon\www\papertrading\node_modules\@prisma\client\runtime\index.js:39788:24)
  prisma:client:request_handler     at async PrismaClient._request (W:\laragon\www\papertrading\node_modules\@prisma\client\runtime\index.js:40649:18)
  prisma:client:request_handler     at async handler (webpack-internal:///(api)/./src/pages/api/watchlist/watchlist.js:13:18)
  prisma:client:request_handler     at async Object.apiResolver (W:\laragon\www\papertrading\node_modules\next\dist\server\api-utils.js:101:9)
  prisma:client:request_handler     at async DevServer.runApi (W:\laragon\www\papertrading\node_modules\next\dist\server\next-server.js:320:9)
  prisma:client:request_handler     at async Object.fn (W:\laragon\www\papertrading\node_modules\next\dist\server\base-server.js:486:37)
  prisma:client:request_handler     at async Router.execute (W:\laragon\www\papertrading\node_modules\next\dist\server\router.js:228:32)
  prisma:client:request_handler     at async DevServer.run (W:\laragon\www\papertrading\node_modules\next\dist\server\base-server.js:598:29)   41s
  prisma:client:libraryEngine sending request, this.libraryStarted: true   13s
  prisma:client:request_handler Error: called `Option::unwrap()` on a `None` value
  prisma:client:request_handler     at prismaGraphQLToJSError (W:\laragon\www\papertrading\node_modules\@prisma\client\runtime\index.js:33924:10)
  prisma:client:request_handler     at Object.request (W:\laragon\www\papertrading\node_modules\@prisma\client\runtime\index.js:35748:17)
  prisma:client:request_handler     at async Object.request (W:\laragon\www\papertrading\node_modules\@prisma\client\runtime\index.js:39788:24)
  prisma:client:request_handler     at async PrismaClient._request (W:\laragon\www\papertrading\node_modules\@prisma\client\runtime\index.js:40649:18)
  prisma:client:request_handler     at async handler (webpack-internal:///(api)/./src/pages/api/watchlist/watchlist.js:13:18)
  prisma:client:request_handler     at async Object.apiResolver (W:\laragon\www\papertrading\node_modules\next\dist\server\api-utils.js:101:9)
  prisma:client:request_handler     at async DevServer.runApi (W:\laragon\www\papertrading\node_modules\next\dist\server\next-server.js:320:9)
  prisma:client:request_handler     at async Object.fn (W:\laragon\www\papertrading\node_modules\next\dist\server\base-server.js:486:37)
  prisma:client:request_handler     at async Router.execute (W:\laragon\www\papertrading\node_modules\next\dist\server\router.js:228:32)
  prisma:client:request_handler     at async DevServer.run (W:\laragon\www\papertrading\node_modules\next\dist\server\base-server.js:598:29)   13s

%23%23 Client Snippet

import { PrismaClient } from '@prisma/client';
import { user } from '@/components/auth/User';

const prisma = new PrismaClient()
const handler = async (req, res) => {
    const User = user(req);
   
    const data = await prisma.watch_lists.findMany({
        where: {
            user_id: User.id,
        },
        include: {
            symbolaliceblue: true,
        },
        take: 16,
    })
    const result = JSON.stringify(data, (key, value) => typeof value === 'bigint' ? value.toString() : value)
    res.status(200).json(result)
}

export default handler;

%23%23 Schema

generator client {
  provider = "prisma-client-js"
}

datasource db {
  provider = "mysql"
  url      = env("DATABASE_URL")
}

/// The underlying table does not contain a valid unique identifier and can therefore currently not be handled by the Prisma Client.
model apicredentials {
  id                    BigInt    @db.UnsignedBigInt
  user_id               Int       @db.UnsignedInt
  api_type              String
  api_name              String?
  api_detail            String?   @db.LongText
  api_key               String?
  api_secret_key        String?
  api_token             String?   @db.Text
  email                 String?
  api_status            Int       @default(0)
  auto_login_status     Boolean   @default(false)
  auto_login_data       String?   @db.LongText
  start_time            DateTime? @db.Time(0)
  end_time              DateTime? @db.Time(0)
  qty                   String?   @db.Text
  api_exchange_value    Int?
  cron_job_id           String?   @db.VarChar(30)
  auto_login_flagged_at BigInt    @default(0)
  otherinfo             String?   @db.LongText
  api_version           Int?
  second_owner          Int?
  token_get_date        DateTime? @db.Timestamp(0)
  created_at            DateTime? @db.Timestamp(0)
  updated_at            DateTime? @db.Timestamp(0)

  @@ignore
}

model exchange_request_log {
  id                  BigInt   @id @default(autoincrement())
  account_id          BigInt?
  request_id          String   @db.VarChar(30)
  sub_request_id      String   @db.VarChar(30)
  request_type        String?  @db.VarChar(40)
  exchange_name       String?  @db.VarChar(30)
  api_type            String?  @db.VarChar(15)
  user_id             Int?
  referral_code       String?  @db.VarChar(50)
  request_to_exchange String?  @db.MediumText
  success_log         String?  @db.LongText
  error_log           String?  @db.LongText
  user_error_log      String?  @db.LongText
  out_time            BigInt?
  in_time             BigInt?
  time_taken          Int?
  created_at          DateTime @default(now()) @db.Timestamp(0)
}

model in_request_log {
  id                 BigInt   @id @default(autoincrement())
  request_id         String   @db.VarChar(30)
  request_data       String?  @db.MediumText
  user_id            Int?
  referral_code      String?  @db.VarChar(50)
  translated_request String?  @db.MediumText
  success_log        String?  @db.LongText
  error_log          String?  @db.LongText
  in_time            BigInt?
  out_time           BigInt?
  time_taken         Int?
  created_at         DateTime @default(now()) @db.Timestamp(0)
  mony_mgmt          Boolean?
  mony_mgmt_ref      BigInt?
}

model nlb_virtual_orders {
  id         BigInt   @id @default(autoincrement())
  account_id BigInt
  user_id    Int
  exchange   String   @db.VarChar(15)
  symbol     String   @db.VarChar(30)
  side       Int      @db.TinyInt
  price      Float    @db.Float
  quantity   Float    @db.Float
  created_at DateTime @default(now()) @db.Timestamp(0)
  updated_at DateTime @default(now()) @db.Timestamp(0)
}

model nlb_virtual_positions {
  id         BigInt   @id @default(autoincrement())
  account_id BigInt
  user_id    Int
  exchange   String   @db.VarChar(15)
  symbol     String   @db.VarChar(30)
  side       Int      @db.TinyInt
  price      Float    @db.Float
  quantity   Float    @db.Float
  created_at DateTime @default(now()) @db.Timestamp(0)
  updated_at DateTime @default(now()) @db.Timestamp(0)
}

model nlb_virtual_square_off {
  id         BigInt   @id @default(autoincrement())
  account_id BigInt
  user_id    Int
  exchange   String   @db.VarChar(15)
  symbol     String   @db.VarChar(30)
  side       Int      @db.TinyInt
  price      Float    @db.Float
  sq_price   Float    @db.Float
  quantity   Float    @db.Float
  amount     Float
  profit     Float
  p_profit   Float    @db.Float
  created_at DateTime @default(now()) @db.Timestamp(0)
  updated_at DateTime @default(now()) @db.Timestamp(0)
}

model symbolaliceblue {
  id                BigInt    @id @default(autoincrement()) @db.UnsignedBigInt
  symbol            String?
  exchange_code     String?
  papertrading_code String?
  exchange          String?
  code              String?
  company           String?
  created_at        DateTime? @db.Timestamp(0)
  updated_at        DateTime? @db.Timestamp(0)
  watch_lists       watch_lists?
}

model users {
  id                Int          @id @db.UnsignedInt
  name              String
  email             String
  phone             String?
  country_code      String       @default("IN") @db.VarChar(11)
  referal_code      String?
  profile_pic       String?      @db.Text
  status            Int          @default(0)
  count_referal     Int          @default(0)
  referal_user      Int          @default(0)
  referral_status   Int          @default(0)
  email_verified_at DateTime?    @db.Timestamp(0)
  otp               Boolean      @default(false)
  password          String
  telegram_id       String?      @db.Text
  isstaff           Boolean      @default(false)
  google_id         String?
  facebook_id       String?
  yahoo_id          String?      @db.Text
  twitter_id        String?      @db.Text
  github_id         String?      @db.Text
  apple_id          String?      @db.Text
  remember_token    String?      @db.VarChar(100)
  last_login_ip     String?      @db.Text
  last_login_time   DateTime?    @db.Timestamp(0)
  created_at        DateTime?    @db.Timestamp(0)
  updated_at        DateTime?    @db.Timestamp(0)
  p_t_fund          Float        @default(0) @db.Float
  watch_lists       watch_lists?
}

model watch_lists {
  id         BigInt   @id @default(autoincrement())
  user       users    @relation(fields: [user_id], references: [id])
  user_id    Int      @unique
  symbolaliceblue symbolaliceblue @relation(fields: [code], references: [code])
  code       String   @db.VarChar(15)
  created_at DateTime @default(now()) @db.Timestamp(0)
  updated_at DateTime @default(now()) @db.Timestamp(0)
}

%23%23 Prisma Engine Query

{"X":{}}
@garrensmith garrensmith added bug/1-unconfirmed Bug should have enough information for reproduction, but confirmation has not happened yet. team/client Issue for team Client. tech/engines/query engine Issue in the Query Engine topic: findMany() kind/bug A reported bug. labels Apr 11, 2022
@Weakky
Copy link
Member

Weakky commented Jun 2, 2022

Hey @hemant17,

I've tried reproducing your panic using your Prisma Schema but wasn't able to. Could you provide some seed data which reproduces the error?

Thank you 🙏

@Weakky
Copy link
Member

Weakky commented Jun 22, 2022

Hey,

This is a duplicate of #13340 and was fixed by prisma/prisma-engines#2973. It'll be available in Prisma 4.x.

Thanks for reporting 🙏

@Weakky Weakky closed this as completed Jun 22, 2022
@janpio janpio added this to the 4.0.0 milestone Jun 22, 2022
@Jolg42 Jolg42 added topic: rust panic topic: nested read https://www.prisma.io/docs/concepts/components/prisma-client/relation-queries#nested-reads labels Jan 17, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug/1-unconfirmed Bug should have enough information for reproduction, but confirmation has not happened yet. kind/bug A reported bug. team/client Issue for team Client. tech/engines/query engine Issue in the Query Engine topic: findMany() topic: nested read https://www.prisma.io/docs/concepts/components/prisma-client/relation-queries#nested-reads topic: rust panic
Projects
None yet
Development

No branches or pull requests

6 participants