]> git.proxmox.com Git - mirror_frr.git/commit - lib/northbound.h
mgmtd: Add MGMT Transaction Framework
authorYash Ranjan <ranjany@vmware.com>
Thu, 28 Oct 2021 07:07:11 +0000 (00:07 -0700)
committerChristian Hopps <chopps@labn.net>
Wed, 22 Mar 2023 02:08:32 +0000 (22:08 -0400)
commit74335ceb2753cc73afe2854b20640018431acc19
tree0ff2afc2aacd7078131086fd6051321725b5cd94
parent7d65b7b7f441ddb2e730d4274023c0d3d2907c6b
mgmtd: Add MGMT Transaction Framework

This commit introduces the MGMT Transaction framework that takes
management requests from one (or more) frontend client sessions,
translates them into transactions and drives them to completion
in co-oridination with one (or more) backend client daemons
involved in the request.

This commit includes the following functionalities in the changeset:
1. Introduces the actual Transaction module. Commands added related to
   transaction are:
   a. show mgmt transaction all
2. Adds support for commit rollback feature which stores upto the 10
   commit buffers. Each commit has a commit-id which can be used to
   rollback to the exact configuration state.
   Commands supported for this feature are:
   a. show mgmt commit-history
   b. mgmt rollback commit-id COMMIT_ID
3. Add hidden commands to enable record various performance metrics:
   a. mgmt performance-measurement
   b. mgmt reset-statistic

Co-authored-by: Pushpasis Sarkar <pushpasis@gmail.com>
Co-authored-by: Abhinay Ramesh <rabhinay@vmware.com>
Co-authored-by: Ujwal P <ujwalp@vmware.com>
Signed-off-by: Yash Ranjan <ranjany@vmware.com>
21 files changed:
.clang-format
configure.ac
lib/northbound.c
lib/northbound.h
lib/northbound_cli.c
lib/yang.c
mgmtd/mgmt.c
mgmtd/mgmt.h
mgmtd/mgmt_be_adapter.c
mgmtd/mgmt_defines.h
mgmtd/mgmt_ds.c
mgmtd/mgmt_ds.h
mgmtd/mgmt_fe_adapter.c
mgmtd/mgmt_history.c [new file with mode: 0644]
mgmtd/mgmt_history.h [new file with mode: 0644]
mgmtd/mgmt_memory.c
mgmtd/mgmt_memory.h
mgmtd/mgmt_txn.c [new file with mode: 0644]
mgmtd/mgmt_txn.h [new file with mode: 0644]
mgmtd/mgmt_vty.c
mgmtd/subdir.am