The Routing config is broken
isif `mpls` config exists
report from [[ https://forum.vyos.io/t/vyos-1-4-unable-to-apply-routing-changes-when-protocols-mpls-interface-xxx-applied | forum ]]
to reproduce
```
set interfaces ethernet eth1 address '192.0.2.1/24'
set protocols mpls interface 'eth1'
set protocols mpls ldp discovery transport-ipv4-address '192.0.2.1'
set protocols mpls ldp export ipv4 explicit-null
set protocols mpls ldp interface 'eth1'
set protocols mpls ldp router-id '192.0.2.1'
commit
set protocols bgp system-as 65001
commit
```
commit
```
[email protected]# set protocols bgp system-as 65001
[edit]
[email protected]# commit
[ protocols bgp ]
load_configuration: Configuration loaded from FRR daemon zebra
load_configuration: loaded 0 !
load_configuration: loaded 1 frr version 8.4.1
load_configuration: loaded 2 frr defaults traditional
load_configuration: loaded 3 hostname r14
load_configuration: loaded 4 log syslog
load_configuration: loaded 5 log facility local7
load_configuration: loaded 6 service integrated-vtysh-config
load_configuration: loaded 7 !
load_configuration: loaded 8 interface eth1
load_configuration: loaded 9 mpls
load_configuration: loaded 10 exit
load_configuration: loaded 11 !
load_configuration: loaded 12 end
modify_section: starting search for '(\\s+)?ip protocol bgp route-map [-a-zA-Z0-9.]+' until '(\\s|!)'
_find_first_block: find start='(\\s+)?ip protocol bgp route-map [-a-zA-Z0-9.]+$' stop='(\\s|!)' start_at=0
_find_first_block: no match 0 "!"
_find_first_block: no match 1 "frr version 8.4.1"
_find_first_block: no match 2 "frr defaults traditional"
_find_first_block: no match 3 "hostname r14"
_find_first_block: no match 4 "log syslog"
_find_first_block: no match 5 "log facility local7"
_find_first_block: no match 6 "service integrated-vtysh-config"
_find_first_block: no match 7 "!"
_find_first_block: no match 8 "interface eth1"
_find_first_block: no match 9 " mpls"
_find_first_block: no match 10 "exit"
_find_first_block: no match 11 "!"
_find_first_block: no match 12 "end"
_find_first_block: exit start={repr(start_pattern)} stop={repr(stop_pattern)} start_at={start_at}
modify_section: No more config sections found, exiting
_find_first_element: find start="(ip prefix-list .*|route-map .*|line vty|end)" start_at=0
_find_first_element: no match 0 "!"
_find_first_element: no match 1 "frr version 8.4.1"
_find_first_element: no match 2 "frr defaults traditional"
_find_first_element: no match 3 "hostname r14"
_find_first_element: no match 4 "log syslog"
_find_first_element: no match 5 "log facility local7"
_find_first_element: no match 6 "service integrated-vtysh-config"
_find_first_element: no match 7 "!"
_find_first_element: no match 8 "interface eth1"
_find_first_element: no match 9 " mpls"
_find_first_element: no match 10 "exit"
_find_first_element: no match 11 "!"
_find_first_element: Found stop 12 "end"
add_before: add 12 !
add_before: add 13 !
commit_configuration: Commiting configuration
commit_configuration: new_config 0 !
commit_configuration: new_config 1 frr version 8.4.1
commit_configuration: new_config 2 frr defaults traditional
commit_configuration: new_config 3 hostname r14
commit_configuration: new_config 4 log syslog
commit_configuration: new_config 5 log facility local7
commit_configuration: new_config 6 service integrated-vtysh-config
commit_configuration: new_config 7 !
commit_configuration: new_config 8 interface eth1
commit_configuration: new_config 9 mpls
commit_configuration: new_config 10 exit
commit_configuration: new_config 11 !
commit_configuration: new_config 12 !
commit_configuration: new_config 13 !
commit_configuration: new_config 14 end
reload_configuration: Reloading config using temporary file: /tmp/tmpvkcx5r9c
reload_configuration: Executing command against frr-reload: "/usr/lib/frr/frr-reload.py --reload --daemon zebra --debug --stdout /tmp/tmpvkcx5r9c"
frr-reload output: 0 2022-11-26 12:17:36,286 INFO: Called via "Namespace(input=None, reload=True, test=False, debug=True, log_level='info', stdout=True, pathspace=None, filename='/tmp/tmpvkcx5r9c', overwrite=False, bindir='/usr/bin', confdir='/etc/frr', rundir='/var/run/frr', vty_socket=None, daemon='zebra', test_reset=False)"
frr-reload output: 1 2022-11-26 12:17:36,287 INFO: Loading Config object from file /tmp/tmpvkcx5r9c
frr-reload output: 2 2022-11-26 12:17:36,317 ERROR: vtysh failed to process new configuration: vtysh (mark file) exited with status 4:
frr-reload output: 3 b'line 10: % Command incomplete: mpls\n\n'
reload_configuration: Reloading config using temporary file: /tmp/tmplqd6gzq6
reload_configuration: Executing command against frr-reload: "/usr/lib/frr/frr-reload.py --reload --daemon zebra --debug --stdout /tmp/tmplqd6gzq6"
frr-reload output: 0 2022-11-26 12:17:36,390 INFO: Called via "Namespace(input=None, reload=True, test=False, debug=True, log_level='info', stdout=True, pathspace=None, filename='/tmp/tmplqd6gzq6', overwrite=False, bindir='/usr/bin', confdir='/etc/frr', rundir='/var/run/frr', vty_socket=None, daemon='zebra', test_reset=False)"
frr-reload output: 1 2022-11-26 12:17:36,391 INFO: Loading Config object from file /tmp/tmplqd6gzq6
frr-reload output: 2 2022-11-26 12:17:36,422 ERROR: vtysh failed to process new configuration: vtysh (mark file) exited with status 4:
frr-reload output: 3 b'line 10: % Command incomplete: mpls\n\n'
reload_configuration: Reloading config using temporary file: /tmp/tmpex2__5ha
reload_configuration: Executing command against frr-reload: "/usr/lib/frr/frr-reload.py --reload --daemon zebra --debug --stdout /tmp/tmpex2__5ha"
frr-reload output: 0 2022-11-26 12:17:36,501 INFO: Called via "Namespace(input=None, reload=True, test=False, debug=True, log_level='info', stdout=True, pathspace=None, filename='/tmp/tmpex2__5ha', overwrite=False, bindir='/usr/bin', confdir='/etc/frr', rundir='/var/run/frr', vty_socket=None, daemon='zebra', test_reset=False)"
frr-reload output: 1 2022-11-26 12:17:36,501 INFO: Loading Config object from file /tmp/tmpex2__5ha
frr-reload output: 2 2022-11-26 12:17:36,530 ERROR: vtysh failed to process new configuration: vtysh (mark file) exited with status 4:
frr-reload output: 3 b'line 10: % Command incomplete: mpls\n\n'
reload_configuration: Reloading config using temporary file: /tmp/tmpik0f9h7p
reload_configuration: Executing command against frr-reload: "/usr/lib/frr/frr-reload.py --reload --daemon zebra --debug --stdout /tmp/tmpik0f9h7p"
frr-reload output: 0 2022-11-26 12:17:36,602 INFO: Called via "Namespace(input=None, reload=True, test=False, debug=True, log_level='info', stdout=True, pathspace=None, filename='/tmp/tmpik0f9h7p', overwrite=False, bindir='/usr/bin', confdir='/etc/frr', rundir='/var/run/frr', vty_socket=None, daemon='zebra', test_reset=False)"
frr-reload output: 1 2022-11-26 12:17:36,602 INFO: Loading Config object from file /tmp/tmpik0f9h7p
frr-reload output: 2 2022-11-26 12:17:36,631 ERROR: vtysh failed to process new configuration: vtysh (mark file) exited with status 4:
frr-reload output: 3 b'line 10: % Command incomplete: mpls\n\n'
reload_configuration: Reloading config using temporary file: /tmp/tmpq3pm0chs
reload_configuration: Executing command against frr-reload: "/usr/lib/frr/frr-reload.py --reload --daemon zebra --debug --stdout /tmp/tmpq3pm0chs"
frr-reload output: 0 2022-11-26 12:17:36,705 INFO: Called via "Namespace(input=None, reload=True, test=False, debug=True, log_level='info', stdout=True, pathspace=None, filename='/tmp/tmpq3pm0chs', overwrite=False, bindir='/usr/bin', confdir='/etc/frr', rundir='/var/run/frr', vty_socket=None, daemon='zebra', test_reset=False)"
frr-reload output: 1 2022-11-26 12:17:36,705 INFO: Loading Config object from file /tmp/tmpq3pm0chs
frr-reload output: 2 2022-11-26 12:17:36,732 ERROR: vtysh failed to process new configuration: vtysh (mark file) exited with status 4:
frr-reload output: 3 b'line 10: % Command incomplete: mpls\n\n'
VyOS had an issue completing a command.
We are sorry that you encountered a problem while using VyOS.
There are a few things you can do to help us (and yourself):
- Contact us using the online help desk if you have a subscription:
https://support.vyos.io/
- Make sure you are running the latest version of VyOS available at:
https://vyos.net/get/
- Consult the community forum to see how to handle this issue:
https://forum.vyos.io
- Join us on Slack where our users exchange help and advice:
https://vyos.slack.com
When reporting problems, please include as much information as possible:
- do not obfuscate any data (feel free to contact us privately if your
business policy requires it)
- and include all the information presented below
Report time: 2022-11-26 12:17:36
Image version: VyOS 1.4-rolling-202211250318
Release train: current
Built by:
[email protected]
Built on: Fri 25 Nov 2022 03:18 UTC
Build UUID: 39c2acd7-6f92-4e5d-bc6a-aac2c2b640ad
Build commit ID: ef7d02b09c49b4
Architecture: x86_64
Boot via: installed image
System type: KVM guest
Hardware vendor: QEMU
Hardware model: Standard PC (Q35 + ICH9, 2009)
Hardware S/N:
Hardware UUID: 4d6f4d29-1ae8-446f-8d2b-3decd9da64c7
Traceback (most recent call last):
File "/usr/libexec/vyos/conf_mode/protocols_bgp.py", line 388, in <module>
apply(c)
File "/usr/libexec/vyos/conf_mode/protocols_bgp.py", line 367, in apply
frr_cfg.commit_configuration(zebra_daemon)
File "/usr/lib/python3/dist-packages/vyos/frr.py", line 480, in commit_configuration
raise ConfigurationNotValid(f'Config commit retry counter ({count_max}) exceeded')
vyos.frr.ConfigurationNotValid: Config commit retry counter (5) exceeded
[[protocols bgp]] failed
Commit failed
[edit]
[email protected]#
```