PThorpe92
eecf6ae6e6
Wait till we write the page to increment current page in wal checkpoint
2025-06-13 11:11:30 +03:00
PThorpe92
9f966910bc
Add manual wal sync before checkpoint in connection Drop
2025-06-13 11:11:30 +03:00
meteorgan
c0d260fd54
revise some comments
2025-06-13 10:39:36 +03:00
meteorgan
fd09675d8c
clean up
2025-06-13 10:39:36 +03:00
meteorgan
6179d8de23
refactor compound select
2025-06-13 10:39:32 +03:00
Jussi Saurio
efed4bc07d
Merge 'Complete ALTER TABLE implementation' from Levy A.
...
Resolves #895
- [x] `ALTER TABLE _ ADD _`
- [x] `ALTER TABLE _ DROP _`
- [x] `ALTER TABLE _ RENAME _ TO _`
Reviewed-by: Preston Thorpe (@PThorpe92)
Reviewed-by: Jussi Saurio <jussi.saurio@gmail.com >
Closes #1527
2025-06-13 10:23:43 +03:00
Jussi Saurio
04c590f5a6
Add comment about re-entrancy of op_idx_insert()
2025-06-12 12:36:53 +03:00
Jussi Saurio
bdbd021bbb
Fix large inserts to unique indexes hanging
...
We were incorrectly setting `moved_before` as `false` after checking
for unique constraint violation, but the reality is that after the
uniqueness check, we are already correctly positioned -- if no match
was found, the cursor is positioned at either:
a) no row, or
b) at the first entry that is greater than the key we are inserting.
This means we don't have to move anymore and can just insert.
2025-06-12 12:25:17 +03:00
pedrocarlo
8dbf09bb42
betters instrumentation for btree operations
2025-06-11 23:34:32 -03:00
Levy A.
5d60d82499
fix: add default
2025-06-11 14:19:06 -03:00
Levy A.
43db84e6ea
fix: broken rebase
2025-06-11 14:19:06 -03:00
Levy A.
96e3f7bc5c
refactor: remove magic number
2025-06-11 14:19:06 -03:00
Levy A.
8ecc561cd3
refactor: dereference impl Copy
2025-06-11 14:19:06 -03:00
Levy A.
e7ccb0b707
fix: prevent duplicate columns
2025-06-11 14:19:06 -03:00
Levy A.
e3da5a1f09
fix: clippy
2025-06-11 14:19:06 -03:00
Levy A.
3b36c3e771
refactor
2025-06-11 14:19:06 -03:00
Levy A.
01a680b69e
feat(fuzz)+fix: add schema fuzz testing and fix some bugs
2025-06-11 14:19:06 -03:00
Levy A.
54e8e7f097
fix spacing
2025-06-11 14:19:06 -03:00
Levy A.
b88cb99ff0
fix warnings and some refactoring
2025-06-11 14:19:06 -03:00
Levy A.
1881cd04b5
chore: fmt
2025-06-11 14:19:06 -03:00
Levy A.
49a6ddad97
wip
2025-06-11 14:19:04 -03:00
Levy A.
c2f25b6a1d
fix: proper identifier normalization and column constraints
2025-06-11 14:18:41 -03:00
Levy A.
0bb725899d
fix: set is_rowid_alias
2025-06-11 14:18:41 -03:00
Levy A.
d65fe0f978
refactor: simplification and better names
2025-06-11 14:18:41 -03:00
Levy A.
a7761e431b
fix: escape string literals
2025-06-11 14:18:41 -03:00
Levy A.
41cb13aa74
fix: ignore non-constants
2025-06-11 14:18:41 -03:00
Levy A.
15e0cab8d8
refactor+fix: precompute default values from schema
2025-06-11 14:18:39 -03:00
Levy A.
7638b0dab7
fix: use default value on empty columns added via ALTER TABLE
2025-06-11 14:18:19 -03:00
Levy A.
326a8b39db
fix: default values not being converted to SQL
2025-06-11 14:17:36 -03:00
Levy A.
6945c0c09e
fix+refactor: incorrect label placement
...
also added a `cursor_loop` helper on `ProgramBuilder` to avoid making
this mistake in the future. this is zero-cost, and will be optimized to
the same thing (hopefully).
2025-06-11 14:17:36 -03:00
Levy A.
3bc24eb86f
feat: proper column definition parsing
2025-06-11 14:17:36 -03:00
Levy A.
587cf345cc
refactor: merge branches
2025-06-11 14:17:36 -03:00
Levy A.
65b6984c2a
fix: make sure to not modify a index
2025-06-11 14:17:36 -03:00
Levy A.
5f25ed0738
fix UNIQUE constraints
2025-06-11 14:17:36 -03:00
Levy A.
de2ac89ad2
feat: complete ALTER TABLE implementation
2025-06-11 14:17:36 -03:00
Jussi Saurio
e9d1f0823b
Disable index usage in DELETE because it does not work safely
2025-06-11 12:15:20 +03:00
Krishna Vishal
1c6a65ded4
Change seek op match from unit variants to struct variants.
2025-06-11 00:44:07 +05:30
Krishna Vishal
0d5cbc4f1d
Add affinity check as a function as ast::Operator impl
2025-06-11 00:33:48 +05:30
Krishna Vishal
712c94537c
Add affinity flags to IS and IS NOT opeartors
2025-06-11 00:33:48 +05:30
krishvishal
c8da564aeb
smol edit
2025-06-11 00:33:48 +05:30
krishvishal
5a1da026e6
Unify comparison function to reduce code duplication
2025-06-11 00:33:47 +05:30
krishvishal
5837f7329f
clean up
2025-06-11 00:33:47 +05:30
krishvishal
d13abad4b1
Handle Blob type together with Text type in op_seek
2025-06-11 00:33:47 +05:30
krishvishal
6c04c18f87
Add affinity flag to comparison opcodes
2025-06-11 00:33:47 +05:30
krishvishal
f0dda1702f
Fix AFFINITY_MASK value
2025-06-11 00:33:47 +05:30
krishvishal
faa9aedbae
Add affinity based type coercion to comparison ops
2025-06-11 00:33:47 +05:30
krishvishal
7bd1589615
Added affinity inference and conversion for comparison ops.
...
Added affinity helper function for `CmpInsFlags`
2025-06-11 00:33:44 +05:30
krishvishal
9130b25111
Add jump_if_null flag for rowid alias based seeks
2025-06-11 00:33:05 +05:30
krishvishal
3b2980c7c0
Fix op_seek to handle affinity coercion
2025-06-11 00:33:05 +05:30
krishvishal
e68293a1d1
Add affinity conversion to op_gt, op_le, op_lt, op_eq, op_ne
2025-06-11 00:33:05 +05:30