chrislu
d60c542ecc
feat: Replace pg_query_go with lightweight SQL parser (no CGO required)
- Remove github.com/pganalyze/pg_query_go/v6 dependency to avoid CGO requirement
- Implement lightweight SQL parser for basic SELECT, SHOW, and DDL statements
- Fix operator precedence in WHERE clause parsing (handle AND/OR before comparisons)
- Support INTEGER, FLOAT, and STRING literals in WHERE conditions
- All SQL engine tests passing with new parser
- PostgreSQL integration tests can now build without CGO
The lightweight parser handles the essential SQL features needed for the
SeaweedFS query engine while maintaining compatibility and avoiding CGO
dependencies that caused Docker build issues.
1 month ago
chrislu
88d86374ea
fix: Enable CGO in Docker build for pg_query_go dependency
The pg_query_go library requires CGO to be enabled as it wraps the libpg_query C library.
Added gcc and musl-dev dependencies to the Docker build for proper compilation.
1 month ago
chrislu
4d9de40c5c
fmt
1 month ago
chrislu
42661ac110
fix tests
1 month ago
chrislu
991247facf
fix tests
1 month ago
chrislu
e3e369c264
change to pg_query_go
1 month ago
chrislu
ba4a8b91d5
fmt
1 month ago
chrislu
59d6806146
fix empty spaces and coercion
1 month ago
Chris Lu
f29dd385cc
Merge branch 'master' into add-sql-querying
1 month ago
chrislu
3fa7670557
fix todo
1 month ago
chrislu
687c5d6bfd
fix tests
1 month ago
chrislu
e14a316aeb
use schema instead of inferred result types
1 month ago
chrislu
316d1cdda7
address some comments
1 month ago
chrislu
a7eb178cec
Update engine.go
1 month ago
chrislu
60066a6a4c
read broker, logs, and parquet files
1 month ago
chrislu
59ec4eb68a
address comments
1 month ago
chrislu
d29f54e0be
de-support alter table and drop table
1 month ago
chrislu
8e15fdf2c7
remove sample data
1 month ago
chrislu
f776a49322
avoid sample data
1 month ago
chrislu
ed7102df6e
column name can be on left or right in where conditions
1 month ago
chrislu
900bd94456
address some comments
1 month ago
chrislu
e901abffd3
address comments
1 month ago
chrislu
ac83adc6ce
fix versioning
1 month ago
chrislu
586a795b02
return fast on error
1 month ago
chrislu
1a2225c0f5
rename to "weed db"
1 month ago
chrislu
c9e093194d
setup integration test for postgres
1 month ago
chrislu
8b4914be55
hook up seaweed sql engine
1 month ago
chrislu
5a8c31fcda
Revert "add jdbc"
This reverts commit a6e48b7690
.
1 month ago
chrislu
85306bb2b0
add postgres protocol
1 month ago
chrislu
a6e48b7690
add jdbc
1 month ago
chrislu
6fb88a8edb
buffer start stored as 8 bytes
1 month ago
chrislu
61bacd23b0
parquet file can query messages in broker memory, if log files do not exist
1 month ago
chrislu
618cb89885
the parquet file should also remember the first buffer_start attribute from the sources
1 month ago
chrislu
db75742e37
explain with broker buffer
1 month ago
chrislu
de866bfd09
dedup with buffer start index
1 month ago
chrislu
e3a56d7c30
filter out already flushed messages
1 month ago
chrislu
467034c8c7
process buffer from brokers
1 month ago
chrislu
7ca3b59c44
save source buffer index start for log files
1 month ago
chrislu
f5ed25f755
fix decoding data
1 month ago
chrislu
99bfe95e51
detailed logs during explain. Fix bugs on reading live logs.
1 month ago
chrislu
c7a0b89067
fix after refactoring
1 month ago
chrislu
e385f0ce7d
refactor
1 month ago
chrislu
61ad3c39ac
add tests
1 month ago
chrislu
4214d765cf
use mock for testing
1 month ago
chrislu
a3f6a5da27
skip
1 month ago
chrislu
dfd0897e49
improve tests
1 month ago
chrislu
7d88a81482
add tests
1 month ago
chrislu
eaa7136c92
explain the execution plan
1 month ago
chrislu
93a09f5da4
explain
1 month ago
chrislu
55cad6dc4a
combine parquet results with live logs
1 month ago