منصوبے کے بارے میں

rudb-compat ایک جامع ٹیسٹنگ ہارنس ہے جو rudb ڈیٹا بیس کی DuckDB کے ساتھ مطابقت کی تصدیق کے لیے ڈیزائن کیا گیا ہے۔ یہ مطابقت کے دعوؤں کو قابلِ پیمائش ڈیٹا میں تبدیل کرتا ہے، حقیقی DuckDB بائنری کے خلاف تفریقی عمل درآمد (differential execution) چلا کر۔ یہ سوٹ چار الگ الگ سطحوں پر مطابقت کا جائزہ لیتا ہے: ڈیٹا مطابقت (اسٹوریج فارمیٹ کی وفاداری)، کوئری مطابقت (SQL ڈائلیکٹ کی کوریج)، API مطابقت (C ABI کی پاسداری)، اور ایکو سسٹم مطابقت (ایکسٹینشنز اور وائر پروٹوکول)۔ اہم خصوصیات میں شامل ہیں: - **تفریقی عمل درآمد**: ایک جیسی کوئریز پر rudb اور DuckDB کے نتائج کا موازنہ کرتا ہے تاکہ رویے کی برابری کو یقینی بنایا جا سکے۔ - **وزنی کوریج**: SQL فنکشن اور اسٹیٹمنٹ سپورٹ کا جائزہ لینے کے لیے سادہ کوڈ کوریج کے بجائے استعمال کے لحاظ سے وزنی میٹرکس استعمال کرتا ہے۔ - **خودکار بائیسیکٹنگ**: ناکام ہونے والی کوئریز کو خودکار طور پر کم اور بائیسیکٹ کرتا ہے تاکہ مخصوص آپٹیمائزر پاسز یا منطقی غلطیاں شناخت کی جا سکیں جو تضادات کا سبب بنتی ہیں۔ - **کارپس انٹیگریشن**: DuckDB کے سرکاری `sqllogictest` کارپس، ClickBench بینچ مارکس، اور تیار شدہ/میٹامورفک کوئریز کے خلاف چلتا ہے تاکہ ایج کیسز تلاش کیے جا سکیں۔ - **سخت ورژن کنٹرول**: یقینی بناتا ہے کہ موازنے صرف ورژن اسٹرنگز کے بجائے ایک پن شدہ DuckDB کمٹ ہیش کے خلاف کیے جائیں تاکہ ڈرفٹ سے بچا جا سکے۔ یہ ٹول ان ڈویلپرز کے لیے ہے جو rudb کو برقرار رکھتے ہیں تاکہ مکمل DuckDB مطابقت کی طرف پیش رفت کو ٹریک کیا جا سکے، اور ان صارفین کے لیے جو مائیگریشن کی حفاظت کی تصدیق کرتے ہیں۔ یہ مرکزی امپلیمنٹیشن سے آزادی برقرار رکھنے اور بھروسے کے بغیر تصدیق (trustless verification) کی اجازت دینے کے لیے ایک الگ ریپوزٹری کے طور پر کام کرتا ہے۔