fix(sqlite): resolve CodeRabbit PR#189 review issues#191
Conversation
- Add PK tie-breaker columns to ORDER BY in getTableData for stable
cursor pagination when sort column has non-unique values
- Wrap getDatabasesList, getCurrentDatabase, getDatabaseConnectionInfo,
getTablesList, getTableSchema, and getTableColumns in try/catch with
wrapError so connection failures surface as 503 instead of generic errors
- Serialize object/array values in addRecord and bulkInsertRecords to
match the JSON.stringify behavior already applied in updateRecords
- Preserve existing indexes and triggers when rebuilding table in
alterColumn by re-executing their CREATE statements after rename
- Close SQLite handle in closePool/closePoolByDatabase so selective-close
paths don't leave the file handle open
- Fix parameterized numeric type mislabeling in standardizeSqliteDataTypeLabel:
bigint(20), smallint(6), float(8), double(10) etc. now match correctly
before the generic includes("int") fallback
https://claude.ai/code/session_01WzT1NRL9DK1uEjkew7H24q
|
Warning Rate limit exceeded
You’ve run out of usage credits. Purchase more in the billing tab. ⌛ How to resolve this issue?After the wait time has elapsed, 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 have higher rate limits than the trial, open-source and free plans. In all cases, we re-allow further reviews after a brief timeout. Please see our FAQ for further information. ℹ️ Review info⚙️ Run configurationConfiguration used: Path: .coderabbit.yaml Review profile: CHILL Plan: Pro Run ID: 📒 Files selected for processing (3)
✨ 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 |
Bundle Size
File breakdown
File breakdown |
$(cat <<'EOF'
Summary
Addresses all actionable CodeRabbit suggestions from PR #189 (SQLite support), excluding the SQL injection finding per request.
ORDER BYingetTableDataso cursor-based pagination doesn't skip/duplicate rows when the sort column has non-unique valuesgetDatabasesList,getCurrentDatabase,getDatabaseConnectionInfo,getTablesList,getTableSchema, andgetTableColumnsintry/catch { throw this.wrapError(e) }sobetter-sqlite3/ filesystem errors map to 503 instead of surfacing as generic errorsaddRecordandbulkInsertRecordswithJSON.stringify, matching the existing behavior inupdateRecordsalterColumn: ReadCREATE INDEXandCREATE TRIGGERstatements fromsqlite_masterbefore the table rebuild and re-execute them after the rename, so indexes and triggers are not silently droppedcloseSqliteDb()insideclosePool()andclosePoolByDatabase()so selective-close paths don't leave the file handle openstandardizeSqliteDataTypeLabelto matchbigint(20),smallint(6),tinyint(1),mediumint(8),float(8),double(10)before the genericincludes("int")fallbackTest plan
bun run testinpackages/server)https://claude.ai/code/session_01WzT1NRL9DK1uEjkew7H24q
EOF
)
Generated by Claude Code