apache / apache/datafusion-sqlparser-rs
Improve postgres CREATE FUNCTION support
- Ngôn ngữ chính
- Rust
- Star
- 3.5k
- Fork
- 772
- Merge trung bình
- 4 ngày 9 giờ
- Pull request đã merge (30 ngày)
- 17
Mô tả
Hey,
I'm trying to parse `CREATE FUNCTION` statements (PostgreSQL) with the following attributes:
```sql
CREATE OR REPLACE FUNCTION public.accounting_ids()
RETURNS SETOF uuid
LANGUAGE plpgsql
STABLE SECURITY DEFINER
SET search_path TO ''
AS $function$
```
A few features fail to parse:
1. `SETOF [type]` is not supported (Expected: end of statement, found: uuid at Line: 5, Column: 16)
2. `SECURITY DEFINER` is not supported (Expected: end of statement, found: SECURITY at Line: 7, Column: 9)
3. `SET search_path TO ''` is not supported (Expected: end of statement, found: SET at Line: 7, Column: 2)
Using sqlparser 0.50.0
Hướng dẫn đóng góp
Chưa lập chỉ mục được hướng dẫn đóng góp cho kho mã nguồn này
Hướng nghiên cứu
Tái hiện ví dụ PostgreSQL về CREATE FUNCTION với sqlparser 0.50.0 và xác định điểm vào của parser cho CREATE FUNCTION. Theo dõi cách các kiểu trả về và thuộc tính hàm được xử lý, sau đó bổ sung coverage cho SETOF uuid, SECURITY DEFINER và SET search_path TO ''. Hoàn thành khi cả ba cấu trúc đều được phân tích thành công.
Do mô hình lập chỉ mục viết ra từ nội dung của issue.
Đánh giá
- Công nghệ
- postgresql, rust
- Lĩnh vực
- databases
- Loại issue
- Lỗi
- Độ khó
- 3/5
- Thời gian dự kiến
- 1-2 ngày
- Mức độ hoạt động
- Đình trệ
- Độ rõ ràng
- Khá rõ ràng
- Mức phù hợp với người mới
- 45/100