give rewards its own db connection pool

This commit is contained in:
keyan 2023-12-21 17:48:16 -06:00
parent f3ac63050e
commit 628f755afd
1 changed files with 4 additions and 1 deletions

View File

@ -2,17 +2,20 @@ import serialize from '../api/resolvers/serial.js'
import { sendUserNotification } from '../api/webPush/index.js' import { sendUserNotification } from '../api/webPush/index.js'
import { ANON_USER_ID, SN_USER_IDS } from '../lib/constants.js' import { ANON_USER_ID, SN_USER_IDS } from '../lib/constants.js'
import { msatsToSats, numWithUnits } from '../lib/format.js' import { msatsToSats, numWithUnits } from '../lib/format.js'
import { PrismaClient } from '@prisma/client'
const ITEM_EACH_REWARD = 4.0 const ITEM_EACH_REWARD = 4.0
const UPVOTE_EACH_REWARD = 4.0 const UPVOTE_EACH_REWARD = 4.0
const TOP_PERCENTILE = 33 const TOP_PERCENTILE = 33
const TOTAL_UPPER_BOUND_MSATS = 1000000000 const TOTAL_UPPER_BOUND_MSATS = 1000000000
export async function earn ({ name, models }) { export async function earn ({ name }) {
// rewards are calculated sitewide still // rewards are calculated sitewide still
// however for user gen subs currently only 50% of their fees go to rewards // however for user gen subs currently only 50% of their fees go to rewards
// the other 50% goes to the founder of the sub // the other 50% goes to the founder of the sub
const models = new PrismaClient()
// compute how much sn earned today // compute how much sn earned today
const [{ sum: sumDecimal }] = await models.$queryRaw` const [{ sum: sumDecimal }] = await models.$queryRaw`
SELECT coalesce(sum(msats), 0) as sum SELECT coalesce(sum(msats), 0) as sum