ovsdb: bond_active_salve column's value should be durable when database restarts
[cascardo/ovs.git] / vswitchd / vswitch.ovsschema
1 {"name": "Open_vSwitch",
2  "version": "7.10.1",
3  "cksum": "2340049037 21461",
4  "tables": {
5    "Open_vSwitch": {
6      "columns": {
7        "bridges": {
8          "type": {"key": {"type": "uuid",
9                           "refTable": "Bridge"},
10                   "min": 0, "max": "unlimited"}},
11        "manager_options": {
12          "type": {"key": {"type": "uuid",
13                           "refTable": "Manager"},
14                   "min": 0, "max": "unlimited"}},
15        "ssl": {
16          "type": {"key": {"type": "uuid",
17                           "refTable": "SSL"},
18                   "min": 0, "max": 1}},
19        "other_config": {
20          "type": {"key": "string", "value": "string", "min": 0, "max": "unlimited"}},
21        "external_ids": {
22          "type": {"key": "string", "value": "string",
23                   "min": 0, "max": "unlimited"}},
24        "next_cfg": {
25          "type": "integer"},
26        "cur_cfg": {
27          "type": "integer"},
28        "statistics": {
29          "type": {"key": "string", "value": "string", "min": 0, "max": "unlimited"},
30          "ephemeral": true},
31        "ovs_version": {
32          "type": {"key": {"type": "string"},
33                   "min": 0, "max": 1}},
34        "db_version": {
35          "type": {"key": {"type": "string"},
36                   "min": 0, "max": 1}},
37        "system_type": {
38          "type": {"key": {"type": "string"},
39                   "min": 0, "max": 1}},
40        "system_version": {
41          "type": {"key": {"type": "string"},
42                   "min": 0, "max": 1}}},
43      "isRoot": true,
44      "maxRows": 1},
45    "Bridge": {
46      "columns": {
47        "name": {
48          "type": "string",
49          "mutable": false},
50        "datapath_type": {
51          "type": "string"},
52        "datapath_id": {
53          "type": {"key": "string", "min": 0, "max": 1},
54          "ephemeral": true},
55        "stp_enable": {
56          "type": "boolean"},
57        "rstp_enable": {
58          "type": "boolean"},
59        "mcast_snooping_enable": {
60          "type": "boolean"},
61        "ports": {
62          "type": {"key": {"type": "uuid",
63                           "refTable": "Port"},
64                   "min": 0, "max": "unlimited"}},
65        "mirrors": {
66          "type": {"key": {"type": "uuid",
67                           "refTable": "Mirror"},
68                   "min": 0, "max": "unlimited"}},
69        "netflow": {
70          "type": {"key": {"type": "uuid",
71                           "refTable": "NetFlow"},
72                   "min": 0, "max": 1}},
73        "sflow": {
74          "type": {"key": {"type": "uuid",
75                           "refTable": "sFlow"},
76                   "min": 0, "max": 1}},
77        "ipfix": {
78          "type": {"key": {"type": "uuid",
79                           "refTable": "IPFIX"},
80                   "min": 0, "max": 1}},
81        "controller": {
82          "type": {"key": {"type": "uuid",
83                           "refTable": "Controller"},
84                   "min": 0, "max": "unlimited"}},
85        "protocols": {
86          "type": {"key": {"type": "string",
87            "enum": ["set", ["OpenFlow10",
88                             "OpenFlow11",
89                             "OpenFlow12",
90                             "OpenFlow13",
91                             "OpenFlow14",
92                             "OpenFlow15"]]},
93            "min": 0, "max": "unlimited"}},
94        "fail_mode": {
95          "type": {"key": {"type": "string",
96                           "enum": ["set", ["standalone", "secure"]]},
97                   "min": 0, "max": 1}},
98        "status": {
99          "type": {"key": "string", "value": "string", "min": 0, "max": "unlimited"},
100          "ephemeral": true},
101        "rstp_status": {
102          "type": {"key": "string", "value": "string", "min": 0, "max": "unlimited"},
103          "ephemeral": true},
104        "other_config": {
105          "type": {"key": "string", "value": "string", "min": 0, "max": "unlimited"}},
106        "external_ids": {
107          "type": {"key": "string", "value": "string", "min": 0, "max": "unlimited"}},
108        "flood_vlans": {
109          "type": {"key": {"type": "integer",
110                           "minInteger": 0,
111                           "maxInteger": 4095},
112                   "min": 0, "max": 4096}},
113        "flow_tables": {
114          "type": {"key": {"type": "integer",
115                           "minInteger": 0,
116                           "maxInteger": 254},
117                   "value": {"type": "uuid",
118                             "refTable": "Flow_Table"},
119                   "min": 0, "max": "unlimited"}}},
120      "indexes": [["name"]]},
121    "Port": {
122      "columns": {
123        "name": {
124          "type": "string",
125          "mutable": false},
126        "interfaces": {
127          "type": {"key": {"type": "uuid",
128                           "refTable": "Interface"},
129                   "min": 1, "max": "unlimited"}},
130        "trunks": {
131          "type": {"key": {"type": "integer",
132                           "minInteger": 0,
133                           "maxInteger": 4095},
134                   "min": 0, "max": 4096}},
135        "tag": {
136          "type": {"key": {"type": "integer",
137                           "minInteger": 0,
138                           "maxInteger": 4095},
139                   "min": 0, "max": 1}},
140        "vlan_mode": {
141          "type": {"key": {"type": "string",
142            "enum": ["set", ["trunk", "access", "native-tagged", "native-untagged"]]},
143          "min": 0, "max": 1}},
144        "qos": {
145          "type": {"key": {"type": "uuid",
146                           "refTable": "QoS"},
147                   "min": 0, "max": 1}},
148        "mac": {
149          "type": {"key": {"type": "string"},
150                   "min": 0, "max": 1}},
151        "bond_mode": {
152          "type": {"key": {"type": "string",
153            "enum": ["set", ["balance-tcp", "balance-slb", "active-backup"]]},
154          "min": 0, "max": 1}},
155        "lacp": {
156          "type": {"key": {"type": "string",
157            "enum": ["set", ["active", "passive", "off"]]},
158          "min": 0, "max": 1}},
159        "bond_updelay": {
160          "type": "integer"},
161        "bond_downdelay": {
162          "type": "integer"},
163        "bond_active_slave": {
164          "type": {"key": {"type": "string"},
165                   "min": 0, "max": 1}},
166        "bond_fake_iface": {
167          "type": "boolean"},
168        "fake_bridge": {
169          "type": "boolean"},
170        "status": {
171          "type": {"key": "string", "value": "string", "min": 0, "max": "unlimited"},
172          "ephemeral": true},
173        "rstp_status": {
174          "type": {"key": "string", "value": "string", "min": 0, "max": "unlimited"},
175          "ephemeral": true},
176        "rstp_statistics": {
177            "type": {"key": "string", "value": "integer", "min": 0, "max": "unlimited"},
178            "ephemeral": true},
179        "statistics": {
180          "type": {"key": "string", "value": "integer", "min": 0, "max": "unlimited"},
181          "ephemeral": true},
182        "other_config": {
183          "type": {"key": "string", "value": "string", "min": 0, "max": "unlimited"}},
184        "external_ids": {
185          "type": {"key": "string", "value": "string", "min": 0, "max": "unlimited"}}},
186      "indexes": [["name"]]},
187    "Interface": {
188      "columns": {
189        "name": {
190          "type": "string",
191          "mutable": false},
192        "type": {
193          "type": "string"},
194        "options": {
195          "type": {"key": "string", "value": "string", "min": 0, "max": "unlimited"}},
196        "ingress_policing_rate": {
197          "type": {"key": {"type": "integer",
198                           "minInteger": 0}}},
199        "ingress_policing_burst": {
200          "type": {"key": {"type": "integer",
201                           "minInteger": 0}}},
202        "mac_in_use": {
203          "type": {"key": {"type": "string"},
204                   "min": 0, "max": 1},
205                   "ephemeral": true},
206        "mac": {
207          "type": {"key": {"type": "string"},
208                   "min": 0, "max": 1}},
209        "ifindex": {
210          "type": {
211            "key": {"type": "integer",
212                    "minInteger": 0,
213                    "maxInteger": 4294967295},
214            "min": 0,
215            "max": 1},
216          "ephemeral": true},
217        "external_ids": {
218          "type": {"key": "string", "value": "string", "min": 0, "max": "unlimited"}},
219        "ofport": {
220          "type": {"key": "integer", "min": 0, "max": 1}},
221        "ofport_request": {
222          "type": {
223            "key": {"type": "integer",
224                    "minInteger": 1,
225                    "maxInteger": 65279},
226            "min": 0,
227            "max": 1}},
228        "bfd": {
229            "type": {"key": "string", "value": "string",
230                "min": 0, "max": "unlimited"}},
231        "bfd_status": {
232            "type": {"key": "string", "value": "string",
233                "min": 0, "max": "unlimited"}},
234        "cfm_mpid": {
235          "type": {
236            "key": {"type": "integer"},
237            "min": 0,
238            "max": 1}},
239        "cfm_remote_mpids": {
240          "type": {
241            "key": {"type": "integer"},
242            "min": 0,
243            "max": "unlimited"},
244          "ephemeral": true},
245        "cfm_flap_count": {
246          "type": {
247            "key": {"type": "integer"},
248            "min": 0,
249            "max": 1}},
250        "cfm_fault": {
251          "type": {
252            "key": { "type": "boolean"},
253            "min": 0,
254            "max": 1},
255          "ephemeral": true},
256        "cfm_fault_status": {
257          "type": {
258            "key": "string", "min": 0, "max": "unlimited"},
259            "ephemeral": true},
260        "cfm_remote_opstate": {
261          "type": {"key": {"type": "string",
262                           "enum": ["set", ["up", "down"]]},
263                   "min": 0, "max": 1},
264          "ephemeral": true},
265        "cfm_health": {
266          "type": {"key": {"type": "integer",
267                           "minInteger": 0,
268                           "maxInteger": 100},
269                   "min": 0, "max": 1},
270            "ephemeral": true},
271        "lacp_current": {
272          "type": {"key": {"type": "boolean"},
273                   "min": 0, "max": 1},
274          "ephemeral": true},
275        "other_config": {
276          "type": {"key": "string", "value": "string", "min": 0, "max": "unlimited"}},
277        "statistics": {
278          "type": {"key": "string", "value": "integer", "min": 0, "max": "unlimited"},
279          "ephemeral": true},
280        "status": {
281          "type": {"key": "string", "value": "string", "min": 0, "max": "unlimited"},
282          "ephemeral": true},
283        "admin_state": {
284          "type": {"key": {"type": "string",
285                           "enum": ["set", ["up", "down"]]},
286                   "min": 0, "max": 1},
287          "ephemeral": true},
288        "link_state": {
289          "type": {"key": {"type": "string",
290                           "enum": ["set", ["up", "down"]]},
291                   "min": 0, "max": 1},
292          "ephemeral": true},
293        "link_resets": {
294          "type": {"key": {"type": "integer"},
295                   "min": 0, "max": 1},
296          "ephemeral": true},
297        "link_speed": {
298          "type": {"key": "integer", "min": 0, "max": 1},
299          "ephemeral": true},
300        "duplex": {
301          "type": {"key": {"type": "string",
302                           "enum": ["set", ["half", "full"]]},
303                   "min": 0, "max": 1},
304          "ephemeral": true},
305        "mtu": {
306          "type": {"key": "integer", "min": 0, "max": 1},
307          "ephemeral": true},
308        "error": {
309          "type": {"key": "string", "min": 0, "max": 1}}},
310      "indexes": [["name"]]},
311    "Flow_Table": {
312      "columns": {
313        "name": {
314          "type": {"key": "string", "min": 0, "max": 1}},
315        "flow_limit": {
316          "type": {"key": {"type": "integer", "minInteger": 0},
317                   "min": 0, "max": 1}},
318        "overflow_policy": {
319          "type": {"key": {"type": "string",
320                           "enum": ["set", ["refuse", "evict"]]},
321                   "min": 0, "max": 1}},
322        "groups": {
323          "type": {"key": "string", "min": 0, "max": "unlimited"}},
324        "prefixes": {
325          "type": {"key": "string", "min": 0, "max": 3}},
326        "external_ids": {
327          "type": {"key": "string", "value": "string",
328                   "min": 0, "max": "unlimited"}}}},
329    "QoS": {
330      "columns": {
331        "type": {
332          "type": "string"},
333        "queues": {
334          "type": {"key": {"type": "integer",
335                           "minInteger": 0,
336                           "maxInteger": 4294967295},
337                   "value": {"type": "uuid",
338                             "refTable": "Queue"},
339                   "min": 0, "max": "unlimited"}},
340        "other_config": {
341          "type": {"key": "string", "value": "string",
342                   "min": 0, "max": "unlimited"}},
343        "external_ids": {
344          "type": {"key": "string", "value": "string",
345                   "min": 0, "max": "unlimited"}}},
346      "isRoot": true},
347    "Queue": {
348      "columns": {
349        "dscp": {
350          "type": {"key": {"type": "integer",
351                           "minInteger": 0,
352                           "maxInteger": 63},
353                   "min": 0, "max": 1}},
354        "other_config": {
355          "type": {"key": "string", "value": "string",
356                   "min": 0, "max": "unlimited"}},
357        "external_ids": {
358          "type": {"key": "string", "value": "string",
359                   "min": 0, "max": "unlimited"}}},
360      "isRoot": true},
361    "Mirror": {
362      "columns": {
363        "name": {
364          "type": "string"},
365        "select_all": {
366          "type": "boolean"},
367        "select_src_port": {
368          "type": {"key": {"type": "uuid",
369                           "refTable": "Port",
370                           "refType": "weak"},
371                    "min": 0, "max": "unlimited"}},
372        "select_dst_port": {
373          "type": {"key": {"type": "uuid",
374                           "refTable": "Port",
375                           "refType": "weak"},
376                    "min": 0, "max": "unlimited"}},
377        "select_vlan": {
378          "type": {"key": {"type": "integer",
379                           "minInteger": 0,
380                           "maxInteger": 4095},
381                   "min": 0, "max": 4096}},
382        "output_port": {
383          "type": {"key": {"type": "uuid",
384                           "refTable": "Port",
385                           "refType": "weak"},
386                   "min": 0, "max": 1}},
387        "output_vlan": {
388          "type": {"key": {"type": "integer",
389                           "minInteger": 1,
390                           "maxInteger": 4095},
391                   "min": 0, "max": 1}},
392        "statistics": {
393          "type": {"key": "string", "value": "integer",
394                   "min": 0, "max": "unlimited"},
395          "ephemeral": true},
396        "external_ids": {
397          "type": {"key": "string", "value": "string",
398                   "min": 0, "max": "unlimited"}}}},
399    "NetFlow": {
400      "columns": {
401        "targets": {
402          "type": {"key": {"type": "string"},
403                   "min": 1, "max": "unlimited"}},
404        "engine_type": {
405          "type": {"key": {"type": "integer",
406                           "minInteger": 0,
407                           "maxInteger": 255},
408                   "min": 0, "max": 1}},
409        "engine_id": {
410          "type": {"key": {"type": "integer",
411                           "minInteger": 0,
412                           "maxInteger": 255},
413                   "min": 0, "max": 1}},
414        "add_id_to_interface": {
415          "type": "boolean"},
416        "active_timeout": {
417          "type": {"key": {"type": "integer",
418                           "minInteger": -1}}},
419        "external_ids": {
420          "type": {"key": "string", "value": "string",
421                   "min": 0, "max": "unlimited"}}}},
422    "sFlow": {
423      "columns": {
424        "targets": {
425          "type": {"key": "string", "min": 1, "max": "unlimited"}},
426        "sampling": {
427          "type": {"key": "integer", "min": 0, "max": 1}},
428        "polling": {
429          "type": {"key": "integer", "min": 0, "max": 1}},
430        "header": {
431          "type": {"key": "integer", "min": 0, "max": 1}},
432        "agent": {
433          "type": {"key": "string", "min": 0, "max": 1}},
434        "external_ids": {
435          "type": {"key": "string", "value": "string",
436                   "min": 0, "max": "unlimited"}}}},
437    "IPFIX": {
438      "columns": {
439        "targets": {
440          "type": {"key": "string", "min": 0, "max": "unlimited"}},
441        "sampling": {
442          "type": {"key": {"type": "integer",
443                           "minInteger": 1,
444                           "maxInteger": 4294967295},
445                   "min": 0, "max": 1}},
446        "obs_domain_id": {
447          "type": {"key": {"type": "integer",
448                           "minInteger": 0,
449                           "maxInteger": 4294967295},
450                   "min": 0, "max": 1}},
451        "obs_point_id": {
452          "type": {"key": {"type": "integer",
453                           "minInteger": 0,
454                           "maxInteger": 4294967295},
455                   "min": 0, "max": 1}},
456        "cache_active_timeout": {
457          "type": {"key": {"type": "integer",
458                           "minInteger": 0,
459                           "maxInteger": 4200},
460                   "min": 0, "max": 1}},
461        "cache_max_flows": {
462          "type": {"key": {"type": "integer",
463                           "minInteger": 0,
464                           "maxInteger": 4294967295},
465                   "min": 0, "max": 1}},
466        "other_config": {
467          "type": {"key": "string", "value": "string",
468                   "min": 0, "max": "unlimited"}},
469        "external_ids": {
470          "type": {"key": "string", "value": "string",
471                   "min": 0, "max": "unlimited"}}}},
472    "Flow_Sample_Collector_Set": {
473      "columns": {
474        "id": {
475          "type": {"key": {"type": "integer",
476                           "minInteger": 0,
477                           "maxInteger": 4294967295},
478                   "min": 1, "max": 1}},
479        "bridge": {
480          "type": {"key": {"type": "uuid",
481                           "refTable": "Bridge"},
482                   "min": 1, "max": 1}},
483        "ipfix": {
484          "type": {"key": {"type": "uuid",
485                           "refTable": "IPFIX"},
486                   "min": 0, "max": 1}},
487        "external_ids": {
488          "type": {"key": "string", "value": "string",
489                   "min": 0, "max": "unlimited"}}},
490      "isRoot": true,
491      "indexes": [["id", "bridge"]]},
492    "Controller": {
493      "columns": {
494        "target": {
495          "type": "string"},
496        "max_backoff": {
497          "type": {"key": {"type": "integer",
498                           "minInteger": 1000},
499                   "min": 0, "max": 1}},
500        "inactivity_probe": {
501          "type": {"key": "integer", "min": 0, "max": 1}},
502        "connection_mode": {
503          "type": {"key": {"type": "string",
504                   "enum": ["set", ["in-band", "out-of-band"]]},
505                   "min": 0, "max": 1}},
506        "local_ip": {
507          "type": {"key": {"type": "string"},
508                   "min": 0, "max": 1}},
509        "local_netmask": {
510          "type": {"key": {"type": "string"},
511                   "min": 0, "max": 1}},
512        "local_gateway": {
513          "type": {"key": {"type": "string"},
514                   "min": 0, "max": 1}},
515        "enable_async_messages": {
516          "type": {"key": {"type": "boolean"},
517                   "min": 0, "max": 1}},
518        "controller_rate_limit": {
519          "type": {"key": {"type": "integer",
520                           "minInteger": 100},
521                   "min": 0, "max": 1}},
522        "controller_burst_limit": {
523          "type": {"key": {"type": "integer",
524                           "minInteger": 25},
525                   "min": 0, "max": 1}},
526        "other_config": {
527          "type": {"key": "string", "value": "string", "min": 0, "max": "unlimited"}},
528        "external_ids": {
529          "type": {"key": "string", "value": "string",
530                   "min": 0, "max": "unlimited"}},
531        "is_connected": {
532          "type": "boolean",
533          "ephemeral": true},
534        "role": {
535          "type": {"key": {"type": "string",
536                           "enum": ["set", ["other", "master", "slave"]]},
537                   "min": 0, "max": 1},
538          "ephemeral": true},
539        "status": {
540          "type": {"key": "string", "value": "string", "min": 0, "max": "unlimited"},
541          "ephemeral": true}}},
542    "Manager": {
543      "columns": {
544        "target": {
545          "type": "string"},
546        "max_backoff": {
547          "type": {"key": {"type": "integer",
548                           "minInteger": 1000},
549                   "min": 0, "max": 1}},
550        "inactivity_probe": {
551          "type": {"key": "integer", "min": 0, "max": 1}},
552        "connection_mode": {
553          "type": {"key": {"type": "string",
554                   "enum": ["set", ["in-band", "out-of-band"]]},
555                   "min": 0, "max": 1}},
556        "other_config": {
557          "type": {"key": "string", "value": "string", "min": 0, "max": "unlimited"}},
558        "external_ids": {
559          "type": {"key": "string", "value": "string",
560                   "min": 0, "max": "unlimited"}},
561        "is_connected": {
562          "type": "boolean",
563          "ephemeral": true},
564        "status": {
565          "type": {"key": "string", "value": "string", "min": 0, "max": "unlimited"},
566          "ephemeral": true}},
567      "indexes": [["target"]]},
568    "SSL": {
569      "columns": {
570        "private_key": {
571          "type": "string"},
572        "certificate": {
573          "type": "string"},
574        "ca_cert": {
575          "type": "string"},
576        "bootstrap_ca_cert": {
577          "type": "boolean"},
578        "external_ids": {
579          "type": {"key": "string", "value": "string",
580                   "min": 0, "max": "unlimited"}}},
581      "maxRows": 1}}}