mumkinmi yoki yoÿqligini tekshirish orqali ularni qoÿlda tekshiramiz. Qaysi
noto'g'ri kiritish-chiqarish operatsiyalari tsikl qadamlariga ta'sir qilishini
aniqlash uchun birinchi navbatda DScope tahlil natijalarini tekshiramiz. Keyin
biz nosozliklarni (masalan, buzilgan ma'lumotlar tarkibi, buzilgan
konfiguratsiyalar, diskning tugashi) mos keladigan kiritish-chiqarish
operatsiyalariga kiritamiz. Agar dasturiy ta'minot osib qo'yilsa, biz xatoni
haqiqiy ijobiy deb belgilaymiz. Aks holda, biz buni noto'g'ri ijobiy deb
hisoblaymiz. Barcha haqiqiy ijobiy tomonlar uchun biz ular allaqachon xabar
qilingan yoki yo'qligini bilish uchun xatolar omborini (ya'ni, JIRA [5]) qidiramiz.
Agar shunday bo'lsa, biz ularni mavjud ma'lumotlar korruptsiyasi xatosi
sifatida belgilaymiz. Aks holda, biz ularni xatoliklar omborida xabar qilamiz va ularni yangi topilgan maÿlumotlar korruptsiyasi bilan bogÿliq xatolar deb belgilaymiz.
Findbugs HDFS-5892 xatosini aniqlaydi, chunki u getFina lizedDir() sikl
tanasida "null" bo'lishi mumkinligini aniqlaydi. Bu xatolik buzilgan ma'lumotlar
tarkibi bilvosita aylanish jarayoniga ta'sir qilganda sodir bo'ladi (ya'ni
getFinalizedDir ().uzunligi 0 ga aylanadi). Haqiqatan ham, getFinal izedDir()
funksiyasi sikl bajarilishi paytida chaqiriladi, ammo bu ma'lumotlarning
buzilishining asosiy sababi emas. Findbugs Yarn-163 xatosini aniqlaydi,
chunki u InputStre amReader o'quvchini FileReader bilan kodlash o'quvchini
buzishi mumkinligini aniqlaydi .
4.1 Baholash metodologiyasi DScope Soot
v2.5.0 [8], Java bayt-kodlarini tahlil qilish infratuzilmasi, eng so'nggi Co
kutubxonasi [43] bilan, Java tilida taxminan 18 000 qator kod bilan yozilgan.
Bizning eksperimental baholashimiz 3-jadvalda keltirilgan mashhur bulutli
Do'stlaringiz bilan baham: |