記一次drools比較隱晦的問題

2021-08-30 10:54:54 字數 892 閱讀 5543

初次使用drools規則引擎執行如下規則時,看不到任何異常,並且正常返回規則事實證據以及結果,但是發現乙個問題,我明明寫的是證據是命中當前貸款有逾期....,結果確發現拿到了上一條執行的證據,各種排查後發現drools規則中對於null無法判斷,也就是下面第乙個規則不起作用,當執行第二個規則時,由於事實中overdueamt 欄位為null,應該是導致了內部錯誤,但實際專案沒有任何異常資訊,把null重新賦值為0則解決了此問題,還有些drools也是不支援的,如果除法 /  。特此記錄一下:

rule "overdueamt-為null"

when $p:bndata(overdueamt == null)

then $p.setresult("agree_contract");

$p.setevidence("命中當前貸款有逾期金額大於0的拒絕規則["+$p.getoverdueamt()+"];自動通過");

retract($p);

endrule "overdueamt-大於0"

when $p:bndata(overdueamt < 0)

then $p.setresult("agree_contract");

$p.setevidence("命中當前貸款有逾期金額大於0的拒絕規則["+$p.getoverdueamt()+"];自動通過");

retract($p);

endrule "overdueamt-小於0"

when $p:bndatapboc(overdueamt > 0)

then $p.setresult("reject");

$p.setevidence("命中當前貸款有逾期金額大於0的拒絕規則["+$p.getoverdueamt()+"];自動拒絕");

retract($p);

end

記一次noprefixroute引發的問題

ip addr顯示內容 inet 中包含 noprefixroute,看著礙眼想去掉,不知道怎麼弄。最終找到了一台不顯示這項引數的機器,開啟其 etc sysconfig network scripts ifcfg ethx,多方比對發現配置了nm controlled no。該引數預設為yes,竟...

redis配置優化 記一次線上redis問題排查

在通過redis快取進行了一系列的介面效能優化後,大部分介面返回在1ms 200ms間,這都是redis的功勞,但隨著介面redis快取越來越多,新的問題產生了,從redis取資料竟然用了5s 通過觀察日誌,並不是每次取資料都是5s,大部分情況從redis取資料還是很快的不會超過5ms.1 在檢視 ...

記一次IOS提審被拒UIWebView問題

有一段時間沒更新文章了,最近幾天忙著ios sdk接入提審過審工作,此文記錄一次提審被拒的棘手問題,我不以專業的ios開發者,來記錄最有效的解決方案。這幾天提審ipa包,被拒審,內容如下 itms90809 instead,use wkwebview for improved security an...