Giter Site home page Giter Site logo

Comments (6)

franky47 avatar franky47 commented on September 28, 2024 1

You may want to re-evaluate your logic for the first if statement, as it is it won't enable encryption in production (which I believe is the point of using this middleware).

from prisma-field-encryption.

franky47 avatar franky47 commented on September 28, 2024

It sounds like you're encrypting ciphertext, which would explain both your observations.

Could you detail your setup more about the "hot reload" part?

If all else fails, enabling debugging may provide more insights.

from prisma-field-encryption.

matheins avatar matheins commented on September 28, 2024

That absolutely would make sense!

Im using the standard "next dev" command wich hot reloads the project every time you change sth.

from prisma-field-encryption.

matheins avatar matheins commented on September 28, 2024

I activated debugging and spotted that one single write into db results in dozens of encryption activities.
Any clue what could cause this? Im using the standard create() method from prisma.

Logs
web:dev: 2023-04-20T13:31:33.851Z prisma-field-encryption:encryption Clear-text input: {
web:dev:   args: { where: { clientId: 'clg2cy09h0002sb6e172qpr34' } },
web:dev:   dataPath: [],
web:dev:   runInTransaction: false,
web:dev:   action: 'count',
web:dev:   model: 'Message'
web:dev: }
web:dev: 2023-04-20T13:31:33.851Z prisma-field-encryption:encryption Encrypted input: {
web:dev:   args: { where: { clientId: 'clg2cy09h0002sb6e172qpr34' } },
web:dev:   dataPath: [],
web:dev:   runInTransaction: false,
web:dev:   action: 'count',
web:dev:   model: 'Message'
web:dev: }
web:dev: 2023-04-20T13:31:33.851Z prisma-field-encryption:encryption Clear-text input: {
web:dev:   args: { where: { clientId: 'clg2cy09h0002sb6e172qpr34' } },
web:dev:   dataPath: [],
web:dev:   runInTransaction: false,
web:dev:   action: 'count',
web:dev:   model: 'Message'
web:dev: }
web:dev: 2023-04-20T13:31:33.851Z prisma-field-encryption:encryption Encrypted input: {
web:dev:   args: { where: { clientId: 'clg2cy09h0002sb6e172qpr34' } },
web:dev:   dataPath: [],
web:dev:   runInTransaction: false,
web:dev:   action: 'count',
web:dev:   model: 'Message'
web:dev: }
web:dev: 2023-04-20T13:31:33.851Z prisma-field-encryption:encryption Clear-text input: {
web:dev:   args: { where: { clientId: 'clg2cy09h0002sb6e172qpr34' } },
web:dev:   dataPath: [],
web:dev:   runInTransaction: false,
web:dev:   action: 'count',
web:dev:   model: 'Message'
web:dev: }
web:dev: 2023-04-20T13:31:33.851Z prisma-field-encryption:encryption Encrypted input: {
web:dev:   args: { where: { clientId: 'clg2cy09h0002sb6e172qpr34' } },
web:dev:   dataPath: [],
web:dev:   runInTransaction: false,
web:dev:   action: 'count',
web:dev:   model: 'Message'
web:dev: }
web:dev: 2023-04-20T13:31:33.851Z prisma-field-encryption:encryption Clear-text input: {
web:dev:   args: { where: { clientId: 'clg2cy09h0002sb6e172qpr34' } },
web:dev:   dataPath: [],
web:dev:   runInTransaction: false,
web:dev:   action: 'count',
web:dev:   model: 'Message'
web:dev: }
web:dev: 2023-04-20T13:31:33.851Z prisma-field-encryption:encryption Encrypted input: {
web:dev:   args: { where: { clientId: 'clg2cy09h0002sb6e172qpr34' } },
web:dev:   dataPath: [],
web:dev:   runInTransaction: false,
web:dev:   action: 'count',
web:dev:   model: 'Message'
web:dev: }
web:dev: 2023-04-20T13:31:33.851Z prisma-field-encryption:encryption Clear-text input: {
web:dev:   args: { where: { clientId: 'clg2cy09h0002sb6e172qpr34' } },
web:dev:   dataPath: [],
web:dev:   runInTransaction: false,
web:dev:   action: 'count',
web:dev:   model: 'Message'
web:dev: }
web:dev: 2023-04-20T13:31:33.852Z prisma-field-encryption:encryption Encrypted input: {
web:dev:   args: { where: { clientId: 'clg2cy09h0002sb6e172qpr34' } },
web:dev:   dataPath: [],
web:dev:   runInTransaction: false,
web:dev:   action: 'count',
web:dev:   model: 'Message'
web:dev: }
web:dev: 2023-04-20T13:31:33.852Z prisma-field-encryption:encryption Clear-text input: {
web:dev:   args: { where: { clientId: 'clg2cy09h0002sb6e172qpr34' } },
web:dev:   dataPath: [],
web:dev:   runInTransaction: false,
web:dev:   action: 'count',
web:dev:   model: 'Message'
web:dev: }
web:dev: 2023-04-20T13:31:33.852Z prisma-field-encryption:encryption Encrypted input: {
web:dev:   args: { where: { clientId: 'clg2cy09h0002sb6e172qpr34' } },
web:dev:   dataPath: [],
web:dev:   runInTransaction: false,
web:dev:   action: 'count',
web:dev:   model: 'Message'
web:dev: }
web:dev: 2023-04-20T13:31:33.852Z prisma-field-encryption:encryption Clear-text input: {
web:dev:   args: { where: { clientId: 'clg2cy09h0002sb6e172qpr34' } },
web:dev:   dataPath: [],
web:dev:   runInTransaction: false,
web:dev:   action: 'count',
web:dev:   model: 'Message'
web:dev: }
web:dev: 2023-04-20T13:31:33.852Z prisma-field-encryption:encryption Encrypted input: {
web:dev:   args: { where: { clientId: 'clg2cy09h0002sb6e172qpr34' } },
web:dev:   dataPath: [],
web:dev:   runInTransaction: false,
web:dev:   action: 'count',
web:dev:   model: 'Message'
web:dev: }
web:dev: 2023-04-20T13:31:33.852Z prisma-field-encryption:encryption Clear-text input: {
web:dev:   args: { where: { clientId: 'clg2cy09h0002sb6e172qpr34' } },
web:dev:   dataPath: [],
web:dev:   runInTransaction: false,
web:dev:   action: 'count',
web:dev:   model: 'Message'
web:dev: }
web:dev: 2023-04-20T13:31:33.852Z prisma-field-encryption:encryption Encrypted input: {
web:dev:   args: { where: { clientId: 'clg2cy09h0002sb6e172qpr34' } },
web:dev:   dataPath: [],
web:dev:   runInTransaction: false,
web:dev:   action: 'count',
web:dev:   model: 'Message'
web:dev: }
web:dev: 2023-04-20T13:31:33.852Z prisma-field-encryption:encryption Clear-text input: {
web:dev:   args: { where: { clientId: 'clg2cy09h0002sb6e172qpr34' } },
web:dev:   dataPath: [],
web:dev:   runInTransaction: false,
web:dev:   action: 'count',
web:dev:   model: 'Message'
web:dev: }
web:dev: 2023-04-20T13:31:33.852Z prisma-field-encryption:encryption Encrypted input: {
web:dev:   args: { where: { clientId: 'clg2cy09h0002sb6e172qpr34' } },
web:dev:   dataPath: [],
web:dev:   runInTransaction: false,
web:dev:   action: 'count',
web:dev:   model: 'Message'
web:dev: }
web:dev: 2023-04-20T13:31:33.852Z prisma-field-encryption:encryption Clear-text input: {
web:dev:   args: { where: { clientId: 'clg2cy09h0002sb6e172qpr34' } },
web:dev:   dataPath: [],
web:dev:   runInTransaction: false,
web:dev:   action: 'count',
web:dev:   model: 'Message'
web:dev: }
web:dev: 2023-04-20T13:31:33.852Z prisma-field-encryption:encryption Encrypted input: {
web:dev:   args: { where: { clientId: 'clg2cy09h0002sb6e172qpr34' } },
web:dev:   dataPath: [],
web:dev:   runInTransaction: false,
web:dev:   action: 'count',
web:dev:   model: 'Message'
web:dev: }
web:dev: 2023-04-20T13:31:33.852Z prisma-field-encryption:encryption Clear-text input: {
web:dev:   args: { where: { clientId: 'clg2cy09h0002sb6e172qpr34' } },
web:dev:   dataPath: [],
web:dev:   runInTransaction: false,
web:dev:   action: 'count',
web:dev:   model: 'Message'
web:dev: }
web:dev: 2023-04-20T13:31:33.852Z prisma-field-encryption:encryption Encrypted input: {
web:dev:   args: { where: { clientId: 'clg2cy09h0002sb6e172qpr34' } },
web:dev:   dataPath: [],
web:dev:   runInTransaction: false,
web:dev:   action: 'count',
web:dev:   model: 'Message'
web:dev: }
web:dev: 2023-04-20T13:31:33.852Z prisma-field-encryption:encryption Clear-text input: {
web:dev:   args: { where: { clientId: 'clg2cy09h0002sb6e172qpr34' } },
web:dev:   dataPath: [],
web:dev:   runInTransaction: false,
web:dev:   action: 'count',
web:dev:   model: 'Message'
web:dev: }
web:dev: 2023-04-20T13:31:33.852Z prisma-field-encryption:encryption Encrypted input: {
web:dev:   args: { where: { clientId: 'clg2cy09h0002sb6e172qpr34' } },
web:dev:   dataPath: [],
web:dev:   runInTransaction: false,
web:dev:   action: 'count',
web:dev:   model: 'Message'
web:dev: }
web:dev: 2023-04-20T13:31:33.852Z prisma-field-encryption:encryption Clear-text input: {
web:dev:   args: { where: { clientId: 'clg2cy09h0002sb6e172qpr34' } },
web:dev:   dataPath: [],
web:dev:   runInTransaction: false,
web:dev:   action: 'count',
web:dev:   model: 'Message'
web:dev: }
web:dev: 2023-04-20T13:31:33.852Z prisma-field-encryption:encryption Encrypted input: {
web:dev:   args: { where: { clientId: 'clg2cy09h0002sb6e172qpr34' } },
web:dev:   dataPath: [],
web:dev:   runInTransaction: false,
web:dev:   action: 'count',
web:dev:   model: 'Message'
web:dev: }
web:dev: 2023-04-20T13:31:33.852Z prisma-field-encryption:encryption Clear-text input: {
web:dev:   args: { where: { clientId: 'clg2cy09h0002sb6e172qpr34' } },
web:dev:   dataPath: [],
web:dev:   runInTransaction: false,
web:dev:   action: 'count',
web:dev:   model: 'Message'
web:dev: }
web:dev: 2023-04-20T13:31:33.852Z prisma-field-encryption:encryption Encrypted input: {
web:dev:   args: { where: { clientId: 'clg2cy09h0002sb6e172qpr34' } },
web:dev:   dataPath: [],
web:dev:   runInTransaction: false,
web:dev:   action: 'count',
web:dev:   model: 'Message'
web:dev: }
web:dev: 2023-04-20T13:31:33.852Z prisma-field-encryption:encryption Clear-text input: {
web:dev:   args: { where: { clientId: 'clg2cy09h0002sb6e172qpr34' } },
web:dev:   dataPath: [],
web:dev:   runInTransaction: false,
web:dev:   action: 'count',
web:dev:   model: 'Message'
web:dev: }
web:dev: 2023-04-20T13:31:33.852Z prisma-field-encryption:encryption Encrypted input: {
web:dev:   args: { where: { clientId: 'clg2cy09h0002sb6e172qpr34' } },
web:dev:   dataPath: [],
web:dev:   runInTransaction: false,
web:dev:   action: 'count',
web:dev:   model: 'Message'
web:dev: }
web:dev: 2023-04-20T13:31:33.852Z prisma-field-encryption:encryption Clear-text input: {
web:dev:   args: { where: { clientId: 'clg2cy09h0002sb6e172qpr34' } },
web:dev:   dataPath: [],
web:dev:   runInTransaction: false,
web:dev:   action: 'count',
web:dev:   model: 'Message'
web:dev: }
web:dev: 2023-04-20T13:31:33.852Z prisma-field-encryption:encryption Encrypted input: {
web:dev:   args: { where: { clientId: 'clg2cy09h0002sb6e172qpr34' } },
web:dev:   dataPath: [],
web:dev:   runInTransaction: false,
web:dev:   action: 'count',
web:dev:   model: 'Message'
web:dev: }
web:dev: 2023-04-20T13:31:33.852Z prisma-field-encryption:encryption Clear-text input: {
web:dev:   args: { where: { clientId: 'clg2cy09h0002sb6e172qpr34' } },
web:dev:   dataPath: [],
web:dev:   runInTransaction: false,
web:dev:   action: 'count',
web:dev:   model: 'Message'
web:dev: }
web:dev: 2023-04-20T13:31:33.852Z prisma-field-encryption:encryption Encrypted input: {
web:dev:   args: { where: { clientId: 'clg2cy09h0002sb6e172qpr34' } },
web:dev:   dataPath: [],
web:dev:   runInTransaction: false,
web:dev:   action: 'count',
web:dev:   model: 'Message'
web:dev: }
web:dev: 2023-04-20T13:31:33.852Z prisma-field-encryption:encryption Clear-text input: {
web:dev:   args: { where: { clientId: 'clg2cy09h0002sb6e172qpr34' } },
web:dev:   dataPath: [],
web:dev:   runInTransaction: false,
web:dev:   action: 'count',
web:dev:   model: 'Message'
web:dev: }
web:dev: 2023-04-20T13:31:33.852Z prisma-field-encryption:encryption Encrypted input: {
web:dev:   args: { where: { clientId: 'clg2cy09h0002sb6e172qpr34' } },
web:dev:   dataPath: [],
web:dev:   runInTransaction: false,
web:dev:   action: 'count',
web:dev:   model: 'Message'
web:dev: }
web:dev: 2023-04-20T13:31:33.852Z prisma-field-encryption:encryption Clear-text input: {
web:dev:   args: { where: { clientId: 'clg2cy09h0002sb6e172qpr34' } },
web:dev:   dataPath: [],
web:dev:   runInTransaction: false,
web:dev:   action: 'count',
web:dev:   model: 'Message'
web:dev: }
web:dev: 2023-04-20T13:31:33.853Z prisma-field-encryption:encryption Encrypted input: {
web:dev:   args: { where: { clientId: 'clg2cy09h0002sb6e172qpr34' } },
web:dev:   dataPath: [],
web:dev:   runInTransaction: false,
web:dev:   action: 'count',
web:dev:   model: 'Message'
web:dev: }
web:dev: 2023-04-20T13:31:33.853Z prisma-field-encryption:encryption Clear-text input: {
web:dev:   args: { where: { clientId: 'clg2cy09h0002sb6e172qpr34' } },
web:dev:   dataPath: [],
web:dev:   runInTransaction: false,
web:dev:   action: 'count',
web:dev:   model: 'Message'
web:dev: }
web:dev: 2023-04-20T13:31:33.853Z prisma-field-encryption:encryption Encrypted input: {
web:dev:   args: { where: { clientId: 'clg2cy09h0002sb6e172qpr34' } },
web:dev:   dataPath: [],
web:dev:   runInTransaction: false,
web:dev:   action: 'count',
web:dev:   model: 'Message'
web:dev: }
web:dev: 2023-04-20T13:31:33.853Z prisma-field-encryption:encryption Clear-text input: {
web:dev:   args: { where: { clientId: 'clg2cy09h0002sb6e172qpr34' } },
web:dev:   dataPath: [],
web:dev:   runInTransaction: false,
web:dev:   action: 'count',
web:dev:   model: 'Message'
web:dev: }
web:dev: 2023-04-20T13:31:33.853Z prisma-field-encryption:encryption Encrypted input: {
web:dev:   args: { where: { clientId: 'clg2cy09h0002sb6e172qpr34' } },
web:dev:   dataPath: [],
web:dev:   runInTransaction: false,
web:dev:   action: 'count',
web:dev:   model: 'Message'
web:dev: }
web:dev: 2023-04-20T13:31:33.853Z prisma-field-encryption:encryption Clear-text input: {
web:dev:   args: { where: { clientId: 'clg2cy09h0002sb6e172qpr34' } },
web:dev:   dataPath: [],
web:dev:   runInTransaction: false,
web:dev:   action: 'count',
web:dev:   model: 'Message'
web:dev: }
web:dev: 2023-04-20T13:31:33.853Z prisma-field-encryption:encryption Encrypted input: {
web:dev:   args: { where: { clientId: 'clg2cy09h0002sb6e172qpr34' } },
web:dev:   dataPath: [],
web:dev:   runInTransaction: false,
web:dev:   action: 'count',
web:dev:   model: 'Message'
web:dev: }
web:dev: 2023-04-20T13:31:33.853Z prisma-field-encryption:encryption Clear-text input: {
web:dev:   args: { where: { clientId: 'clg2cy09h0002sb6e172qpr34' } },
web:dev:   dataPath: [],
web:dev:   runInTransaction: false,
web:dev:   action: 'count',
web:dev:   model: 'Message'
web:dev: }
web:dev: 2023-04-20T13:31:33.853Z prisma-field-encryption:encryption Encrypted input: {
web:dev:   args: { where: { clientId: 'clg2cy09h0002sb6e172qpr34' } },
web:dev:   dataPath: [],
web:dev:   runInTransaction: false,
web:dev:   action: 'count',
web:dev:   model: 'Message'
web:dev: }
web:dev: 2023-04-20T13:31:33.853Z prisma-field-encryption:encryption Clear-text input: {
web:dev:   args: { where: { clientId: 'clg2cy09h0002sb6e172qpr34' } },
web:dev:   dataPath: [],
web:dev:   runInTransaction: false,
web:dev:   action: 'count',
web:dev:   model: 'Message'
web:dev: }
web:dev: 2023-04-20T13:31:33.853Z prisma-field-encryption:encryption Encrypted input: {
web:dev:   args: { where: { clientId: 'clg2cy09h0002sb6e172qpr34' } },
web:dev:   dataPath: [],
web:dev:   runInTransaction: false,
web:dev:   action: 'count',
web:dev:   model: 'Message'
web:dev: }
web:dev: 2023-04-20T13:31:33.853Z prisma-field-encryption:encryption Clear-text input: {
web:dev:   args: { where: { clientId: 'clg2cy09h0002sb6e172qpr34' } },
web:dev:   dataPath: [],
web:dev:   runInTransaction: false,
web:dev:   action: 'count',
web:dev:   model: 'Message'
web:dev: }
web:dev: 2023-04-20T13:31:33.853Z prisma-field-encryption:encryption Encrypted input: {
web:dev:   args: { where: { clientId: 'clg2cy09h0002sb6e172qpr34' } },
web:dev:   dataPath: [],
web:dev:   runInTransaction: false,
web:dev:   action: 'count',
web:dev:   model: 'Message'
web:dev: }
web:dev: 2023-04-20T13:31:33.853Z prisma-field-encryption:encryption Clear-text input: {
web:dev:   args: { where: { clientId: 'clg2cy09h0002sb6e172qpr34' } },
web:dev:   dataPath: [],
web:dev:   runInTransaction: false,
web:dev:   action: 'count',
web:dev:   model: 'Message'
web:dev: }
web:dev: 2023-04-20T13:31:33.853Z prisma-field-encryption:encryption Encrypted input: {
web:dev:   args: { where: { clientId: 'clg2cy09h0002sb6e172qpr34' } },
web:dev:   dataPath: [],
web:dev:   runInTransaction: false,
web:dev:   action: 'count',
web:dev:   model: 'Message'
web:dev: }
web:dev: 2023-04-20T13:31:33.853Z prisma-field-encryption:encryption Clear-text input: {
web:dev:   args: { where: { clientId: 'clg2cy09h0002sb6e172qpr34' } },
web:dev:   dataPath: [],
web:dev:   runInTransaction: false,
web:dev:   action: 'count',
web:dev:   model: 'Message'
web:dev: }
web:dev: 2023-04-20T13:31:33.853Z prisma-field-encryption:encryption Encrypted input: {
web:dev:   args: { where: { clientId: 'clg2cy09h0002sb6e172qpr34' } },
web:dev:   dataPath: [],
web:dev:   runInTransaction: false,
web:dev:   action: 'count',
web:dev:   model: 'Message'
web:dev: }
web:dev: 2023-04-20T13:31:33.853Z prisma-field-encryption:encryption Clear-text input: {
web:dev:   args: { where: { clientId: 'clg2cy09h0002sb6e172qpr34' } },
web:dev:   dataPath: [],
web:dev:   runInTransaction: false,
web:dev:   action: 'count',
web:dev:   model: 'Message'
web:dev: }
web:dev: 2023-04-20T13:31:33.853Z prisma-field-encryption:encryption Encrypted input: {
web:dev:   args: { where: { clientId: 'clg2cy09h0002sb6e172qpr34' } },
web:dev:   dataPath: [],
web:dev:   runInTransaction: false,
web:dev:   action: 'count',
web:dev:   model: 'Message'
web:dev: }
web:dev: 2023-04-20T13:31:33.853Z prisma-field-encryption:encryption Clear-text input: {
web:dev:   args: { where: { clientId: 'clg2cy09h0002sb6e172qpr34' } },
web:dev:   dataPath: [],
web:dev:   runInTransaction: false,
web:dev:   action: 'count',
web:dev:   model: 'Message'
web:dev: }
web:dev: 2023-04-20T13:31:33.853Z prisma-field-encryption:encryption Encrypted input: {
web:dev:   args: { where: { clientId: 'clg2cy09h0002sb6e172qpr34' } },
web:dev:   dataPath: [],
web:dev:   runInTransaction: false,
web:dev:   action: 'count',
web:dev:   model: 'Message'
web:dev: }
web:dev: 2023-04-20T13:31:33.853Z prisma-field-encryption:encryption Clear-text input: {
web:dev:   args: { where: { clientId: 'clg2cy09h0002sb6e172qpr34' } },
web:dev:   dataPath: [],
web:dev:   runInTransaction: false,
web:dev:   action: 'count',
web:dev:   model: 'Message'
web:dev: }
web:dev: 2023-04-20T13:31:33.853Z prisma-field-encryption:encryption Encrypted input: {
web:dev:   args: { where: { clientId: 'clg2cy09h0002sb6e172qpr34' } },
web:dev:   dataPath: [],
web:dev:   runInTransaction: false,
web:dev:   action: 'count',
web:dev:   model: 'Message'
web:dev: }
web:dev: 2023-04-20T13:31:33.853Z prisma-field-encryption:encryption Clear-text input: {
web:dev:   args: { where: { clientId: 'clg2cy09h0002sb6e172qpr34' } },
web:dev:   dataPath: [],
web:dev:   runInTransaction: false,
web:dev:   action: 'count',
web:dev:   model: 'Message'
web:dev: }
web:dev: 2023-04-20T13:31:33.854Z prisma-field-encryption:encryption Encrypted input: {
web:dev:   args: { where: { clientId: 'clg2cy09h0002sb6e172qpr34' } },
web:dev:   dataPath: [],
web:dev:   runInTransaction: false,
web:dev:   action: 'count',
web:dev:   model: 'Message'
web:dev: }
web:dev: 2023-04-20T13:31:33.854Z prisma-field-encryption:encryption Clear-text input: {
web:dev:   args: { where: { clientId: 'clg2cy09h0002sb6e172qpr34' } },
web:dev:   dataPath: [],
web:dev:   runInTransaction: false,
web:dev:   action: 'count',
web:dev:   model: 'Message'
web:dev: }
web:dev: 2023-04-20T13:31:33.854Z prisma-field-encryption:encryption Encrypted input: {
web:dev:   args: { where: { clientId: 'clg2cy09h0002sb6e172qpr34' } },
web:dev:   dataPath: [],
web:dev:   runInTransaction: false,
web:dev:   action: 'count',
web:dev:   model: 'Message'
web:dev: }
web:dev: 2023-04-20T13:31:33.854Z prisma-field-encryption:encryption Clear-text input: {
web:dev:   args: { where: { clientId: 'clg2cy09h0002sb6e172qpr34' } },
web:dev:   dataPath: [],
web:dev:   runInTransaction: false,
web:dev:   action: 'count',
web:dev:   model: 'Message'
web:dev: }
web:dev: 2023-04-20T13:31:33.854Z prisma-field-encryption:encryption Encrypted input: {
web:dev:   args: { where: { clientId: 'clg2cy09h0002sb6e172qpr34' } },
web:dev:   dataPath: [],
web:dev:   runInTransaction: false,
web:dev:   action: 'count',
web:dev:   model: 'Message'
web:dev: }
web:dev: 2023-04-20T13:31:33.854Z prisma-field-encryption:encryption Clear-text input: {
web:dev:   args: { where: { clientId: 'clg2cy09h0002sb6e172qpr34' } },
web:dev:   dataPath: [],
web:dev:   runInTransaction: false,
web:dev:   action: 'count',
web:dev:   model: 'Message'
web:dev: }
web:dev: 2023-04-20T13:31:33.854Z prisma-field-encryption:encryption Encrypted input: {
web:dev:   args: { where: { clientId: 'clg2cy09h0002sb6e172qpr34' } },
web:dev:   dataPath: [],
web:dev:   runInTransaction: false,
web:dev:   action: 'count',
web:dev:   model: 'Message'
web:dev: }
web:dev: 2023-04-20T13:31:33.854Z prisma-field-encryption:encryption Clear-text input: {
web:dev:   args: { where: { clientId: 'clg2cy09h0002sb6e172qpr34' } },
web:dev:   dataPath: [],
web:dev:   runInTransaction: false,
web:dev:   action: 'count',
web:dev:   model: 'Message'
web:dev: }
web:dev: 2023-04-20T13:31:33.854Z prisma-field-encryption:encryption Encrypted input: {
web:dev:   args: { where: { clientId: 'clg2cy09h0002sb6e172qpr34' } },
web:dev:   dataPath: [],
web:dev:   runInTransaction: false,
web:dev:   action: 'count',
web:dev:   model: 'Message'
web:dev: }
web:dev: 2023-04-20T13:31:33.854Z prisma-field-encryption:encryption Clear-text input: {
web:dev:   args: { where: { clientId: 'clg2cy09h0002sb6e172qpr34' } },
web:dev:   dataPath: [],
web:dev:   runInTransaction: false,
web:dev:   action: 'count',
web:dev:   model: 'Message'
web:dev: }
web:dev: 2023-04-20T13:31:33.854Z prisma-field-encryption:encryption Encrypted input: {
web:dev:   args: { where: { clientId: 'clg2cy09h0002sb6e172qpr34' } },
web:dev:   dataPath: [],
web:dev:   runInTransaction: false,
web:dev:   action: 'count',
web:dev:   model: 'Message'
web:dev: }
web:dev: 2023-04-20T13:31:33.854Z prisma-field-encryption:encryption Clear-text input: {
web:dev:   args: { where: { clientId: 'clg2cy09h0002sb6e172qpr34' } },
web:dev:   dataPath: [],
web:dev:   runInTransaction: false,
web:dev:   action: 'count',
web:dev:   model: 'Message'
web:dev: }
web:dev: 2023-04-20T13:31:33.854Z prisma-field-encryption:encryption Encrypted input: {
web:dev:   args: { where: { clientId: 'clg2cy09h0002sb6e172qpr34' } },
web:dev:   dataPath: [],
web:dev:   runInTransaction: false,
web:dev:   action: 'count',
web:dev:   model: 'Message'
web:dev: }
web:dev: 2023-04-20T13:31:33.854Z prisma-field-encryption:encryption Clear-text input: {
web:dev:   args: { where: { clientId: 'clg2cy09h0002sb6e172qpr34' } },
web:dev:   dataPath: [],
web:dev:   runInTransaction: false,
web:dev:   action: 'count',
web:dev:   model: 'Message'
web:dev: }
web:dev: 2023-04-20T13:31:33.854Z prisma-field-encryption:encryption Encrypted input: {
web:dev:   args: { where: { clientId: 'clg2cy09h0002sb6e172qpr34' } },
web:dev:   dataPath: [],
web:dev:   runInTransaction: false,
web:dev:   action: 'count',
web:dev:   model: 'Message'
web:dev: }
web:dev: 2023-04-20T13:31:33.854Z prisma-field-encryption:encryption Clear-text input: {
web:dev:   args: { where: { clientId: 'clg2cy09h0002sb6e172qpr34' } },
web:dev:   dataPath: [],
web:dev:   runInTransaction: false,
web:dev:   action: 'count',
web:dev:   model: 'Message'
web:dev: }
web:dev: 2023-04-20T13:31:33.854Z prisma-field-encryption:encryption Encrypted input: {
web:dev:   args: { where: { clientId: 'clg2cy09h0002sb6e172qpr34' } },
web:dev:   dataPath: [],
web:dev:   runInTransaction: false,
web:dev:   action: 'count',
web:dev:   model: 'Message'
web:dev: }
web:dev: 2023-04-20T13:31:33.854Z prisma-field-encryption:encryption Clear-text input: {
web:dev:   args: { where: { clientId: 'clg2cy09h0002sb6e172qpr34' } },
web:dev:   dataPath: [],
web:dev:   runInTransaction: false,
web:dev:   action: 'count',
web:dev:   model: 'Message'
web:dev: }
web:dev: 2023-04-20T13:31:33.854Z prisma-field-encryption:encryption Encrypted input: {
web:dev:   args: { where: { clientId: 'clg2cy09h0002sb6e172qpr34' } },
web:dev:   dataPath: [],
web:dev:   runInTransaction: false,
web:dev:   action: 'count',
web:dev:   model: 'Message'
web:dev: }
web:dev: 2023-04-20T13:31:33.858Z prisma-field-encryption:decryption Raw result from database: 3
web:dev: 2023-04-20T13:31:33.858Z prisma-field-encryption:decryption Decrypted result: 3
web:dev: 2023-04-20T13:31:33.858Z prisma-field-encryption:decryption Raw result from database: 3
web:dev: 2023-04-20T13:31:33.858Z prisma-field-encryption:decryption Decrypted result: 3
web:dev: 2023-04-20T13:31:33.858Z prisma-field-encryption:decryption Raw result from database: 3
web:dev: 2023-04-20T13:31:33.858Z prisma-field-encryption:decryption Decrypted result: 3
web:dev: 2023-04-20T13:31:33.858Z prisma-field-encryption:decryption Raw result from database: 3
web:dev: 2023-04-20T13:31:33.858Z prisma-field-encryption:decryption Decrypted result: 3
web:dev: 2023-04-20T13:31:33.858Z prisma-field-encryption:decryption Raw result from database: 3
web:dev: 2023-04-20T13:31:33.858Z prisma-field-encryption:decryption Decrypted result: 3
web:dev: 2023-04-20T13:31:33.858Z prisma-field-encryption:decryption Raw result from database: 3
web:dev: 2023-04-20T13:31:33.858Z prisma-field-encryption:decryption Decrypted result: 3
web:dev: 2023-04-20T13:31:33.858Z prisma-field-encryption:decryption Raw result from database: 3
web:dev: 2023-04-20T13:31:33.858Z prisma-field-encryption:decryption Decrypted result: 3
web:dev: 2023-04-20T13:31:33.858Z prisma-field-encryption:decryption Raw result from database: 3
web:dev: 2023-04-20T13:31:33.858Z prisma-field-encryption:decryption Decrypted result: 3
web:dev: 2023-04-20T13:31:33.858Z prisma-field-encryption:decryption Raw result from database: 3
web:dev: 2023-04-20T13:31:33.858Z prisma-field-encryption:decryption Decrypted result: 3
web:dev: 2023-04-20T13:31:33.858Z prisma-field-encryption:decryption Raw result from database: 3
web:dev: 2023-04-20T13:31:33.858Z prisma-field-encryption:decryption Decrypted result: 3
web:dev: 2023-04-20T13:31:33.858Z prisma-field-encryption:decryption Raw result from database: 3
web:dev: 2023-04-20T13:31:33.858Z prisma-field-encryption:decryption Decrypted result: 3
web:dev: 2023-04-20T13:31:33.858Z prisma-field-encryption:decryption Raw result from database: 3
web:dev: 2023-04-20T13:31:33.858Z prisma-field-encryption:decryption Decrypted result: 3
web:dev: 2023-04-20T13:31:33.858Z prisma-field-encryption:decryption Raw result from database: 3
web:dev: 2023-04-20T13:31:33.858Z prisma-field-encryption:decryption Decrypted result: 3
web:dev: 2023-04-20T13:31:33.858Z prisma-field-encryption:decryption Raw result from database: 3
web:dev: 2023-04-20T13:31:33.858Z prisma-field-encryption:decryption Decrypted result: 3
web:dev: 2023-04-20T13:31:33.858Z prisma-field-encryption:decryption Raw result from database: 3
web:dev: 2023-04-20T13:31:33.858Z prisma-field-encryption:decryption Decrypted result: 3
web:dev: 2023-04-20T13:31:33.858Z prisma-field-encryption:decryption Raw result from database: 3
web:dev: 2023-04-20T13:31:33.858Z prisma-field-encryption:decryption Decrypted result: 3
web:dev: 2023-04-20T13:31:33.858Z prisma-field-encryption:decryption Raw result from database: 3
web:dev: 2023-04-20T13:31:33.858Z prisma-field-encryption:decryption Decrypted result: 3
web:dev: 2023-04-20T13:31:33.858Z prisma-field-encryption:decryption Raw result from database: 3
web:dev: 2023-04-20T13:31:33.858Z prisma-field-encryption:decryption Decrypted result: 3
web:dev: 2023-04-20T13:31:33.858Z prisma-field-encryption:decryption Raw result from database: 3
web:dev: 2023-04-20T13:31:33.858Z prisma-field-encryption:decryption Decrypted result: 3
web:dev: 2023-04-20T13:31:33.858Z prisma-field-encryption:decryption Raw result from database: 3
web:dev: 2023-04-20T13:31:33.858Z prisma-field-encryption:decryption Decrypted result: 3
web:dev: 2023-04-20T13:31:33.858Z prisma-field-encryption:decryption Raw result from database: 3
web:dev: 2023-04-20T13:31:33.858Z prisma-field-encryption:decryption Decrypted result: 3
web:dev: 2023-04-20T13:31:33.858Z prisma-field-encryption:decryption Raw result from database: 3
web:dev: 2023-04-20T13:31:33.858Z prisma-field-encryption:decryption Decrypted result: 3
web:dev: 2023-04-20T13:31:33.858Z prisma-field-encryption:decryption Raw result from database: 3
web:dev: 2023-04-20T13:31:33.858Z prisma-field-encryption:decryption Decrypted result: 3
web:dev: 2023-04-20T13:31:33.858Z prisma-field-encryption:decryption Raw result from database: 3
web:dev: 2023-04-20T13:31:33.858Z prisma-field-encryption:decryption Decrypted result: 3
web:dev: 2023-04-20T13:31:33.858Z prisma-field-encryption:decryption Raw result from database: 3
web:dev: 2023-04-20T13:31:33.858Z prisma-field-encryption:decryption Decrypted result: 3
web:dev: 2023-04-20T13:31:33.858Z prisma-field-encryption:decryption Raw result from database: 3
web:dev: 2023-04-20T13:31:33.858Z prisma-field-encryption:decryption Decrypted result: 3
web:dev: 2023-04-20T13:31:33.858Z prisma-field-encryption:decryption Raw result from database: 3
web:dev: 2023-04-20T13:31:33.858Z prisma-field-encryption:decryption Decrypted result: 3
web:dev: 2023-04-20T13:31:33.858Z prisma-field-encryption:decryption Raw result from database: 3
web:dev: 2023-04-20T13:31:33.858Z prisma-field-encryption:decryption Decrypted result: 3
web:dev: 2023-04-20T13:31:33.859Z prisma-field-encryption:decryption Raw result from database: 3
web:dev: 2023-04-20T13:31:33.859Z prisma-field-encryption:decryption Decrypted result: 3
web:dev: 2023-04-20T13:31:33.859Z prisma-field-encryption:decryption Raw result from database: 3
web:dev: 2023-04-20T13:31:33.859Z prisma-field-encryption:decryption Decrypted result: 3
web:dev: 2023-04-20T13:31:33.859Z prisma-field-encryption:decryption Raw result from database: 3
web:dev: 2023-04-20T13:31:33.859Z prisma-field-encryption:decryption Decrypted result: 3
web:dev: 2023-04-20T13:31:33.859Z prisma-field-encryption:decryption Raw result from database: 3
web:dev: 2023-04-20T13:31:33.859Z prisma-field-encryption:decryption Decrypted result: 3
web:dev: 2023-04-20T13:31:33.859Z prisma-field-encryption:decryption Raw result from database: 3
web:dev: 2023-04-20T13:31:33.859Z prisma-field-encryption:decryption Decrypted result: 3
web:dev: 2023-04-20T13:31:33.859Z prisma-field-encryption:decryption Raw result from database: 3
web:dev: 2023-04-20T13:31:33.859Z prisma-field-encryption:decryption Decrypted result: 3
web:dev: 2023-04-20T13:31:33.859Z prisma-field-encryption:decryption Raw result from database: 3
web:dev: 2023-04-20T13:31:33.859Z prisma-field-encryption:decryption Decrypted result: 3
web:dev: 2023-04-20T13:31:33.859Z prisma-field-encryption:decryption Raw result from database: 3
web:dev: 2023-04-20T13:31:33.859Z prisma-field-encryption:decryption Decrypted result: 3
web:dev: 2023-04-20T13:31:33.859Z prisma-field-encryption:decryption Raw result from database: 3
web:dev: 2023-04-20T13:31:33.859Z prisma-field-encryption:decryption Decrypted result: 3
web:dev: 2023-04-20T13:31:33.859Z prisma-field-encryption:decryption Raw result from database: 3
web:dev: 2023-04-20T13:31:33.859Z prisma-field-encryption:decryption Decrypted result: 3
web:dev: 2023-04-20T13:31:33.859Z prisma-field-encryption:decryption Raw result from database: 3
web:dev: 2023-04-20T13:31:33.859Z prisma-field-encryption:decryption Decrypted result: 3
web:dev: 2023-04-20T13:31:33.859Z prisma-field-encryption:decryption Raw result from database: 3
web:dev: 2023-04-20T13:31:33.859Z prisma-field-encryption:decryption Decrypted result: 3

from prisma-field-encryption.

franky47 avatar franky47 commented on September 28, 2024

Could it be possible that the hot-reload mechanism somehow re-registers the middleware to the same Prisma client instance?

That would certainly explain all the observed behaviour.

There used to be tricks to use Prisma properly with Next.js (especially due to serverless environments like Vercel), how do you create your client and pass it to your app?

from prisma-field-encryption.

matheins avatar matheins commented on September 28, 2024

Awseome hint! I found a similar issue with the prisma middleware.

Fix

Add a check to make sure you are not in production and the is no prisma client initiated already:

import { PrismaClient } from "@prisma/client";
import { fieldEncryptionMiddleware } from "prisma-field-encryption";

export * from "@prisma/client";

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

export const prisma: PrismaClient =
  globalForPrisma.prisma ||
  new PrismaClient({
    log:
      process.env.NODE_ENV === "development"
        ? ["query", "error", "warn"]
        : ["error"],
  });

// FIX of ISSUE #55
// makes sure that the middleware is only added once (in development)
if (process.env.NODE_ENV !== "production" && !globalForPrisma.prisma) {
  prisma.$use(fieldEncryptionMiddleware());
}

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

from prisma-field-encryption.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.