@@ -4245,8 +4245,10 @@ mac_binding_add_to_sb(struct ovsdb_idl_txn *ovnsb_idl_txn,
sbrec_mac_binding_set_ip(b, ip);
sbrec_mac_binding_set_mac(b, mac_string);
sbrec_mac_binding_set_datapath(b, dp);
+ sbrec_mac_binding_set_timestamp(b, time_wall_msec());
} else if (strcmp(b->mac, mac_string)) {
sbrec_mac_binding_set_mac(b, mac_string);
+ sbrec_mac_binding_set_timestamp(b, time_wall_msec());
}
}
@@ -115,7 +115,7 @@ static const char *rbac_port_binding_update[] =
static const char *rbac_mac_binding_auth[] =
{""};
static const char *rbac_mac_binding_update[] =
- {"logical_port", "ip", "mac", "datapath"};
+ {"logical_port", "ip", "mac", "datapath", "timestamp"};
static const char *rbac_svc_monitor_auth[] =
{""};
@@ -1,7 +1,7 @@
{
"name": "OVN_Southbound",
- "version": "20.23.0",
- "cksum": "4045988377 28575",
+ "version": "20.24.0",
+ "cksum": "4165157445 28634",
"tables": {
"SB_Global": {
"columns": {
@@ -260,6 +260,7 @@
"logical_port": {"type": "string"},
"ip": {"type": "string"},
"mac": {"type": "string"},
+ "timestamp": {"type": {"key": "integer"}},
"datapath": {"type": {"key": {"type": "uuid",
"refTable": "Datapath_Binding"}}}},
"indexes": [["logical_port", "ip"]],
@@ -3621,6 +3621,12 @@ tcp.flags = RST;
<column name="mac">
The Ethernet address to which the IP is bound.
</column>
+
+ <column name="timestamp">
+ The timestamp in msec when the MAC binding was added or updated.
+ Records that existed before this column will have 0.
+ </column>
+
<column name="datapath">
The logical datapath to which the logical port belongs.
</column>