This file is indexed.

/usr/src/openvswitch-1.4.0/tests/ovsdb-schema.at is in openvswitch-datapath-dkms 1.4.0-1ubuntu1.

This file is owned by root:root, with mode 0o644.

The actual contents of the file can be viewed below.

  1
  2
  3
  4
  5
  6
  7
  8
  9
 10
 11
 12
 13
 14
 15
 16
 17
 18
 19
 20
 21
 22
 23
 24
 25
 26
 27
 28
 29
 30
 31
 32
 33
 34
 35
 36
 37
 38
 39
 40
 41
 42
 43
 44
 45
 46
 47
 48
 49
 50
 51
 52
 53
 54
 55
 56
 57
 58
 59
 60
 61
 62
 63
 64
 65
 66
 67
 68
 69
 70
 71
 72
 73
 74
 75
 76
 77
 78
 79
 80
 81
 82
 83
 84
 85
 86
 87
 88
 89
 90
 91
 92
 93
 94
 95
 96
 97
 98
 99
100
101
102
103
AT_BANNER([OVSDB -- schemas])

OVSDB_CHECK_POSITIVE_CPY([schema with valid refTables],
  [[parse-schema \
      '{"name": "mydb",
        "version": "4.2.1",
        "tables": {
          "a": {
            "columns": {
              "map": {
                "type": {
                  "key": {
                    "type": "uuid",
                    "refTable": "b"},
                  "value": {
                    "type": "uuid",
                    "refTable": "a"}}}}},
          "b": {
            "columns": {
              "aRef": {
                "type": {
                  "key": {
                    "type": "uuid",
                    "refTable": "a"}}}}}}}']],
  [[{"name":"mydb","tables":{"a":{"columns":{"map":{"type":{"key":{"refTable":"b","type":"uuid"},"value":{"refTable":"a","type":"uuid"}}}}},"b":{"columns":{"aRef":{"type":{"key":{"refTable":"a","type":"uuid"}}}}}},"version":"4.2.1"}]])

dnl Ephemeral strong references to root set tables are OK.
dnl Ephemeral strong references to non-root set tables are forced to be
dnl persistent.
OVSDB_CHECK_POSITIVE_CPY([schema with ephemeral strong references],
  [[parse-schema \
      '{"name": "mydb",
        "version": "4.2.1",
        "tables": {
          "a": {
            "columns": {
              "x": {
                "type": {
                  "key": {
                    "type": "uuid",
                    "refTable": "b"}},
                "ephemeral": true},
              "y": {
                "type": {
                  "key": {
                    "type": "uuid",
                    "refTable": "a"}},
                "ephemeral": true}}},
          "b": {
            "columns": {
              "aRef": {
                "type": {
                  "key": {
                    "type": "uuid",
                    "refTable": "a"}}}},
              "isRoot": true}}}']],
  [[{"name":"mydb","tables":{"a":{"columns":{"x":{"ephemeral":true,"type":{"key":{"refTable":"b","type":"uuid"}}},"y":{"type":{"key":{"refTable":"a","type":"uuid"}}}}},"b":{"columns":{"aRef":{"type":{"key":{"refTable":"a","type":"uuid"}}}},"isRoot":true}},"version":"4.2.1"}]])
     
dnl Schemas without version numbers are accepted for backward
dnl compatibility, but this is a deprecated feature.
OVSDB_CHECK_POSITIVE_CPY([schema without version number],
  [[parse-schema \
      '{"name": "mydb",
        "tables": {
          "x": {
            "columns": {
              "y": {
                "type": "integer"}}}}}']],
  [{"name":"mydb","tables":{"x":{"columns":{"y":{"type":"integer"}}}}}])
     
OVSDB_CHECK_NEGATIVE_CPY([schema with invalid refTables],
  [[parse-schema \
      '{"name": "mydb",
        "tables": {
          "a": {
            "columns": {
              "map": {
                "type": {
                  "key": {
                    "type": "uuid",
                    "refTable": "c"},
                  "value": {
                    "type": "uuid",
                    "refTable": "a"}}}}},
          "b": {
            "columns": {
              "aRef": {
                "type": {
                  "key": {
                    "type": "uuid",
                    "refTable": "a"}}}}}}}']],
  [[syntax error: column map key refers to undefined table c]])
     
OVSDB_CHECK_NEGATIVE_CPY([schema with invalid version number],
  [[parse-schema \
      '{"name": "mydb",
        "tables": {
          "x": {
            "columns": {
              "y": {
                "type": "integer"}}}},
        "version": "xxx"}']],
  [[schema version "xxx" not in format x.y.z]])