MagicStack / MagicStack/asyncpg

[Feature Request]Adding compatibility support for KingbaseES

Đang mở
#1,318 0 bình luận 0 reaction 0 người được giao Xem trên GitHub

Chưa có ai nhận issue này.

Ngôn ngữ chính
Python
Star
8.1k
Fork
468
Chỉ số merge pull request
Không có pull request nào được merge trong 30 ngày

Mô tả

Hi asyncpg maintainers,

  I am writing to propose adding support for KingbaseES, a widely used database in China that is highly compatible with the PostgreSQL wire protocol. I plan to contribute and maintain this adaptation over the next 2 months.

 To ensure the performance and stability of asyncpg remain unaffected, I will follow these principles:
 1.Non-Invasive Implementation: I will not modify the Cython-based protocol parser (asyncpg/protocol/). The changes will be isolated to Authentication tweaks and Type Introspection SQL adjustments (handling minor pg_catalog differences).
 2.Strict Testing: I will run the full asyncpg test suite against KingbaseES and add dedicated integration tests for any variant-specific edge cases.
 3.Maintenance Commitment: I fully understand the burden of supporting variants. I commit to taking long-term ownership of Kingbase-related issues to keep the driver up-to-date.

 I have already verified basic connections locally. Would the community be open to accepting a Pull Request for this? Also, do you prefer handling such variants via automatic detection (server version) or explicit connection flags?
 Thank you for your incredible work on this high-performance driver!

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

Bắt đầu từ đâu

  1. Đọc hết issue, rồi đọc hướng dẫn đóng góp của dự án.
  2. Bình luận trên issue rằng bạn sẽ nhận — tránh hai người làm cùng một việc.
  3. Fork repository và làm thay đổi trên một nhánh.
  4. Mở pull request có tham chiếu số hiệu của issue.

Hướng nghiên cứu

Bắt đầu bằng cách xem xét asyncpg/protocol/ và các đường dẫn SQL hiện có của Authentication và Type Introspection để xác định các giả định PostgreSQL liên quan đến KingbaseES. So sánh các đường dẫn đó với những khác biệt đã được báo cáo trong pg_catalog và quyết định xem việc phát hiện phiên bản máy chủ hay một cờ kết nối tường minh là phù hợp. Được xem là hoàn tất khi các kết nối cơ bản hoạt động, các bài kiểm thử tích hợp dành riêng cho biến thể đều đạt và toàn bộ bộ kiểm thử asyncpg vẫn ổn định với KingbaseES.

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, python
Lĩnh vực
databases
Loại issue
Tính năng
Độ khó
5/5
Thời gian dự kiến
Hơn một tuần
Mức độ hoạt động
Ít trao đổi
Độ rõ ràng
Khá rõ ràng
Mức phù hợp với người mới
35/100

Nhận issue mới trong hộp thư của bạn

Bản tóm tắt ngắn những issue GitHub phù hợp với người mới.