This Go library implements a client for the Open vSwitch Database Management Protocol.
The client can be used for communicating with:
- Open vSwitch database
- OVN Northbound and Southbound databases
- Application services
The following tables describe the implementation state for the protocol's RPC methods and database operations.
RFC Section | Method | Implemented? |
---|---|---|
4.1.1. | List Databases (list_dbs ) |
✅ |
4.1.2. | Get Schema (get_schema ) |
✅ |
4.1.3. | Transact (transact ) |
✅ select operation only |
4.1.4. | Cancel | ◻️ |
4.1.5. | Monitor | ◻️ |
4.1.6. | Update Notification | ◻️ |
4.1.7. | Monitor Cancellation | ◻️ |
4.1.8. | Lock Operations | ◻️ |
4.1.9. | Locked Notification | ◻️ |
4.1.10. | Stolen Notification | ◻️ |
4.1.11. | Echo (echo ) |
✅ |
RFC Section | Operation | Implemented? |
---|---|---|
5.2.1. | Insert | ◻️ |
5.2.2. | Select | ✅ |
5.2.3. | Update | ◻️ |
5.2.4. | Mutate | ◻️ |
5.2.5. | Delete | ◻️ |
5.2.6. | Wait | ◻️ |
5.2.7. | Commit | ◻️ |
5.2.8. | Abort | ◻️ |
5.2.9. | Comment | ◻️ |
5.2.10. | Assert | ◻️ |
Additionally, the library implements the following application calls:
list-commands
cluster/status
coverage/show
The goals of the OWNERS
is:
- implementing all methods and operations described in the RPC
- documenting all the implemented methods and operations
- achieving and maintaining test coverage of 80% or higher, and
- providing ongoing support
There are alternatives to this client library. The following list contains notable libraries written in Go:
Currently, the best example how to use the library is OVN Exporter for Prometheus.