ในช่วงปีที่ผ่านมา ขนาดและความต้องการของ monorepo ของเราเพิ่มขึ้นอย่างรวดเร็ว เราได้จำลองสถานการณ์โดยให้ 1,000 clients เลือก branch ที่แตกต่างกันและ push commits เฉพาะ เพื่อวัดระยะเวลาทั้งหมดและ latency ของการ push ไปยัง fetch
ระบบ three-phase commit ที่จำลองขึ้นแสดง write latency ที่สูงกว่าอย่างเห็นได้ชัดเมื่อดิสก์อิ่มตัว ขณะที่ระบบ write-ahead log แสดง read latency ที่สูงกว่าด้วยเหตุผลเดียวกัน คือเซิร์ฟเวอร์ต้องต่อสู้กับการอ่านจาก journal
ด้วยการใช้ packfile URIs และ local caches เรายืนยันว่าการ clone และ fetch บน cloud provider VMs มาตรฐาน สามารถทำให้ลิงก์เครือข่าย 10 Gbps อิ่มตัวได้
เราได้พัฒนา testing harnesses การจำลองเชิงกำหนด เพื่อตรวจสอบ invariants และ properties ของระบบ ทำให้สามารถค้นหาและบรรเทา race conditions และ regressions ที่ละเอียดอ่อนได้ โดยใช้ GPT-6 Astra ช่วยในการสร้างทฤษฎีของ Pando และใช้ในการพิสูจน์คุณสมบัติของระบบ
เรายังได้เพิ่มการติดตามสำหรับ packfile-uri downloads และ byte counts สำหรับ pack generation เพื่อระบุว่าการ fetch ที่ช้าเกิดจากการสร้าง pack หรือการถ่ายโอนข้อมูล
ที่มา: OpenAI