Skip to main content
هذه الإعدادات متاحة في system.settings، وهي مُنشأة تلقائيًا من الشفرة المصدرية.

ast_fuzzer_any_query

عندما تكون القيمة false (وهي القيمة الافتراضية)، فإن أداة تشويش AST من جهة الخادم (التي يضبطها ast_fuzzer_runs) لا تُشوِّش إلا استعلامات القراءة فقط (SELECT, EXPLAIN, SHOW, DESCRIBE, EXISTS). وعندما تكون القيمة true، يتم تشويش جميع أنواع الاستعلامات، بما في ذلك DDL و INSERT.

ast_fuzzer_oracle

عند تمكينه مع ast_fuzzer_runs، يطبّق مجموعة من تحققات أوراكل الصحة على استعلامات SELECT الخاضعة للتشويش التي نُفِّذت بنجاح: TLP WHERE/DISTINCT/GROUP BY/HAVING/Aggregate، وNoREC، وDQP (بتبديل إعدادات المُحسِّن الفردية)، وIdentity WHERE، وSubquery wrap. يؤدي عدم التطابق إلى إطلاق استثناء AST_FUZZER_ORACLE_MISMATCH.

ast_fuzzer_runs

يُفعّل أداة تشويش AST من جهة الخادم، الذي يُشغّل استعلامات عشوائية بعد كل استعلام عادي مع تجاهل نتائجها.
  • 0: معطّل (الافتراضي).
  • قيمة بين 0 و1 (exclusive): احتمال تشغيل استعلام fuzzed واحد.
  • قيمة >= 1: عدد استعلامات fuzzed التي تُشغَّل لكل استعلام عادي.
يُراكم الـ fuzzer أجزاء AST من جميع الاستعلامات عبر كل الجلسات، مما ينتج عنه تحويرات أكثر إثارة للاهتمام بمرور الوقت. وتُهمَل استعلامات fuzzed التي تفشل بصمت، ولا تُعاد النتائج مطلقًا إلى العميل.
آخر تعديل في ٢٦ سبتمبر ٢٠٢٦