<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
</head>
<body style="word-wrap: break-word; -webkit-nbsp-mode: space; line-break: after-white-space;" class="">
Hello,
<div class=""><br class="">
</div>
<div class="">I am currently trying bird out in a route collector scenario. We have around 50 devices all sending around 1.2M routes.</div>
<div class=""><br class="">
</div>
<div class="">I initially started with bird 2.0.12, but the CPU it stuck at 100%, and the debug logs has a lot of "channel reload burst split (max_feed=-1) ». </div>
<div class=""><br class="">
</div>
<div class="">So I wanted to try bird 3.0, but I am getting the following logs (using the -d flag), and the router crashes just after starting:</div>
<div class="">
<div class=""><br class="">
</div>
</div>
<blockquote style="margin: 0 0 0 40px; border: none; padding: 0px;" class="">
<div class="">
<div class=""></div>
</div>
</blockquote>
<blockquote type="cite" class="">bird: Started<br class="">
bird: Trying to lock in a bad order<br class="">
<div class="">
<div class="">Aborted</div>
</div>
</blockquote>
<div class=""><br class="">
</div>
<div class=""><br class="">
</div>
<div class="">Any idea what could be the issue there ?</div>
<div class=""><br class="">
</div>
<div class="">Here is my config:</div>
<div class=""><br class="">
</div>
<div class="">
<div class=""></div>
<blockquote type="cite" class="">
<div class="">timeformat base         iso long;</div>
<div class="">timeformat log          iso long;</div>
<div class="">timeformat protocol     iso long;</div>
<div class="">timeformat route        iso long;</div>
<div class=""><br class="">
</div>
<div class="">router id X.X.X.X;</div>
<div class="">hostname "route-collector";</div>
<div class=""><br class="">
</div>
<div class="">attribute int roa_status1;</div>
<div class="">attribute int roa_status2;</div>
<div class="">roa4 table roa4_1;</div>
<div class="">roa4 table roa4_2;</div>
<div class="">roa6 table roa6_1;</div>
<div class="">roa6 table roa6_2;</div>
<div class=""><br class="">
</div>
<div class="">ipv4 table pb4</div>
<div class="">ipv6 table pb6;</div>
<div class=""><br class="">
</div>
<div class="">filter flag_rpki {</div>
<div class="">   if bgp_path.len = 0 || bgp_path.last = 16276 then accept;</div>
<div class=""><br class="">
</div>
<div class="">   if roa_check(roa4_1, net, bgp_path.last) = ROA_INVALID then  roa_status1=1;</div>
<div class="">   if roa_check(roa4_1, net, bgp_path.last) = ROA_UNKNOWN then roa_status1=2;</div>
<div class="">   if roa_check(roa4_1, net, bgp_path.last) = ROA_VALID then roa_status1=3;</div>
<div class=""><br class="">
</div>
<div class="">   if roa_check(roa4_2, net, bgp_path.last) = ROA_INVALID then roa_status2=1;</div>
<div class="">   if roa_check(roa4_2, net, bgp_path.last) = ROA_UNKNOWN then roa_status2=2;</div>
<div class="">   if roa_check(roa4_2, net, bgp_path.last) = ROA_VALID then roa_status2=3;</div>
<div class="">   accept;</div>
<div class="">}</div>
<div class=""><br class="">
</div>
<div class="">protocol bgp PB {</div>
<div class="">  local X.X.X.X as 16276;</div>
<div class="">  neighbor range 0.0.0.0/0 as 16276;</div>
<div class="">  dynamic name "pb";</div>
<div class="">  dynamic name digits 2;</div>
<div class="">  </div>
<div class="">  ipv4 {</div>
<div class="">    export filter {</div>
<div class="">      reject;</div>
<div class="">    };</div>
<div class="">    table pb4;</div>
<div class="">    import filter flag_rpki;</div>
<div class="">    add paths rx;</div>
<div class="">    import table yes;</div>
<div class="">    next hop keep on;</div>
<div class="">    rpki reload on;</div>
<div class="">  };</div>
<div class="">  ipv6 {</div>
<div class="">    export filter {</div>
<div class="">      reject;      </div>
<div class="">    };</div>
<div class="">    table pb6;</div>
<div class="">    import filter flag_rpki;</div>
<div class="">    add paths rx;</div>
<div class="">    import table yes;</div>
<div class="">    next hop keep on;</div>
<div class="">    rpki reload on;</div>
<div class="">  };</div>
<div class="">  strict bind on;</div>
<div class="">}</div>
<div class=""><br class="">
</div>
<div class="">protocol rpki stack1 {</div>
<div class="">  roa4 { table roa4_1; };</div>
<div class="">  roa6 { table roa6_1; };</div>
<div class="">  remote X.X.X.Z port 323;</div>
<div class="">  transport tcp;</div>
<div class="">  refresh 300;</div>
<div class="">  retry 300;</div>
<div class="">  expire 600;</div>
<div class="">}</div>
<div class=""><br class="">
</div>
<div class=""><br class="">
</div>
<div class="">protocol rpki stack2 {</div>
<div class="">  roa4 { table roa4_2; };</div>
<div class="">  roa6 { table roa6_2; };</div>
<div class="">  remote X.X.X.Y port 323;</div>
<div class="">  transport tcp;</div>
<div class="">  refresh 300;</div>
<div class="">  retry 300;</div>
<div class="">  expire 600;</div>
<div class="">}</div>
</blockquote>
</div>
<div class=""><br class="">
</div>
<div class=""><br class="">
</div>
<div class="">Best regards,</div>
<div class="">François</div>
</body>
</html>