support create-table flag for simplified gh-ost migration

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

Maintainer thường phản hồi trong vòng 10 ngày

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

Đánh giá

Độ khó
4/5
Thời gian dự kiến
3-5 ngày
Mức phù hợp với người mới
35/100
Loại issue
Tính năng
Độ rõ ràng
Khá rõ ràng
Mức độ hoạt động
Đình trệ
Công nghệ
go, mysql
Lĩnh vực
database

Hướng nghiên cứu

Bắt đầu bằng việc xem xét luồng ALTER-statement hiện có của gh-ost và thao tác CreateGhostTable. Xác định cách một cờ create-table cung cấp định nghĩa bảng ở trạng thái đích, giữ nguyên các bước kiểm tra nội bộ đã nêu và xác minh rằng định nghĩa thu được vẫn tương thích với backfilling và cutting over.

Do mô hình lập chỉ mục viết ra từ nội dung của issue.

Mô tả

Enhancement

gh-ost currently only allows providing ALTER statements. It would be helpful if we can directly define the goal-state table rather than the list of ALTER statements needed to achieve it.

This is especially helpful for platform products where there are implementation details that may need to change across the entire platform. Instead of needing to determine the sequence of ALTERs for every change, one can simply provide the new table definition and have gh-ost use it in CreateGhostTable.

It would be the caller's responsibility to ensure that the table definition is compatible with backfilling and cutting over. gh-ost would continue doing simple internal validations similar to the ALTER flow.

Ngôn ngữ chính
Go
Star
13.6k
Fork
1.4k
Merge trung bình
9 ngày 19 giờ
Pull request đã merge (30 ngày)
1

Chuẩn bị môi trường

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.

Issue khác của github/gh-ost

Tất cả issue của github/gh-ost

Issue tương tự

Thêm issue về Go

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.