fix: fix neon-http sync issue by updating balances#6
Conversation
|
The latest updates on your projects. Learn more about Vercel for GitHub.
|
|
Warning Review limit reached
More reviews will be available in 22 minutes and 19 seconds. Learn how PR review limits work. Your organization has run out of usage credits. Purchase more in the billing tab. ⌛ How to resolve this issue?After more reviews become available, a review can be triggered using the We recommend that you space out your commits to avoid hitting the rate limit. 🚦 How do rate limits work?CodeRabbit enforces hourly rate limits for each developer per organization. Our paid plans include higher PR review limits than trial, open-source, and free plans. In all cases, reviews become available again over time. During sustained high-volume PR review activity, CodeRabbit may temporarily slow when the next review becomes available. Please see our Fair Usage Limits Policy for further information. ℹ️ Review info⚙️ Run configurationConfiguration used: defaults Review profile: CHILL Plan: Pro Run ID: 📒 Files selected for processing (1)
✨ Finishing Touches🧪 Generate unit tests (beta)
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
There was a problem hiding this comment.
Pull request overview
Fixes a sync failure on the Neon HTTP Drizzle driver (which doesn't support transaction()) by pre-generating the snapshot UUID client-side and using db.batch() when available, falling back to a transaction for the node-postgres driver used in local development.
Changes:
- Generate
snapshotIdviacrypto.randomUUID()so assets can reference it without depending on.returning(). - Use
db.batch([...])when the driver supports it (Neon HTTP); otherwise wrap inserts indb.transaction(). - Refactor snapshot/asset payloads into shared local variables.
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
This pull request refactors the way treasury balance snapshots and their associated assets are inserted into the database. The main improvement is the introduction of batch insertion when supported, making the snapshot creation process more efficient and reliable.
Database insertion improvements:
snapshotIdusingcrypto.randomUUID()and uses it to associate assets with their snapshot, instead of relying on a returned value from the database.These changes improve performance and consistency in how snapshot data is stored.