CORENET-6688: Bump the downstream OVN package to 26.03#3258
Conversation
Walkthrough
ChangesOVN Version Bump
Estimated code review effort🎯 1 (Trivial) | ⏱️ ~2 minutes Poem
🚥 Pre-merge checks | ✅ 4 | ❌ 1❌ Failed checks (1 warning)
✅ Passed checks (4 passed)
✏️ Tip: You can configure your own custom pre-merge checks in the settings. ✨ Finishing Touches🧪 Generate unit tests (beta)
Comment |
|
@tssurya PTAL |
1 similar comment
|
@tssurya PTAL |
There was a problem hiding this comment.
Actionable comments posted: 1
🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.
Inline comments:
In `@go-controller/pkg/sbdb/model.go`:
- Line 1389: The maxInteger constraint value for table_id in the model.go file
is currently set to 33 but should be 23 to match the OVN v26.03.1 schema
specification. Locate the "maxInteger" field definition for table_id and change
the value from 33 to 23. This will ensure proper encoding/decoding compatibility
with the actual OVN Southbound database schema and maintain compatibility with
ovn-controller.
🪄 Autofix (Beta)
Fix all unresolved CodeRabbit comments on this PR:
- Push a commit to this branch (recommended)
- Create a new PR with the fixes
ℹ️ Review info
⚙️ Run configuration
Configuration used: Path: .coderabbit.yml
Review profile: CHILL
Plan: Enterprise
Run ID: 55c027aa-f0da-4745-ac61-3cca50e29244
⛔ Files ignored due to path filters (1)
dist/images/Dockerfile.fedorais excluded by!**/dist/**
📒 Files selected for processing (15)
Dockerfile.basedocs/developer-guide/debugging.mddocs/features/requirements.mdgo-controller/Makefilego-controller/pkg/nbdb/acl.gogo-controller/pkg/nbdb/logical_router_policy.gogo-controller/pkg/nbdb/logical_switch_port.gogo-controller/pkg/nbdb/logical_switch_port_health_check.gogo-controller/pkg/nbdb/model.gogo-controller/pkg/nbdb/network_function.gogo-controller/pkg/nbdb/network_function_group.gogo-controller/pkg/nbdb/network_function_health_check.gogo-controller/pkg/sbdb/advertised_mac_binding.gogo-controller/pkg/sbdb/model.gogo-controller/pkg/sbdb/service_monitor.go
| "type": "integer", | ||
| "minInteger": 0, | ||
| "maxInteger": 32 | ||
| "maxInteger": 33 |
There was a problem hiding this comment.
🧩 Analysis chain
🌐 Web query:
What are the Logical_Flow table_id constraints in OVN v26.03.1 schema?
💡 Result:
In the OVN v26.03.1 schema (and consistent with recent versions), the Logical_Flow table in the OVN_Southbound database does not define explicit "constraints" for the table_id column in the sense of a fixed, limited range or a restrictive schema-level validation [1][2]. Instead, the table_id serves as an integer identifier for the logical pipeline stage [3][4]. While the OVSDB schema type for table_id is an integer, its usage is governed by the OVN architectural logic implemented within ovn-northd [5][3]. Key points regarding the table_id in the Logical_Flow table: 1. Architectural Pipeline: The table_id corresponds to specific stages within the logical ingress and egress pipelines (e.g., Ingress Table 0, Ingress Table 1, etc.) [6]. These stages are defined by the OVN architecture, not by hard-coded constraints in the OVSDB schema [3]. 2. Range: There is no strict schema-level restriction (such as minInteger or maxInteger) defined specifically for the table_id column in the OVN_Southbound schema files [1][2]. The pipeline stages are logically ordered and assigned by ovn-northd [3]. 3. Functional Role: It is used by ovn-controller to determine the processing order of flows [3]. If a packet's processing requires transitioning to the next stage, the logical pipeline uses the next or similar actions to increment or jump to the appropriate table_id [3]. For technical specifications regarding which table_id values correspond to which functional stages in version 26.03.1, you should consult the ovn-logical-flows(7) documentation, which details the ingress and egress pipeline stages [6].
Citations:
- 1: https://github.com/ovn-org/ovn/blob/v26.03.0/ovn-sb.ovsschema
- 2: https://github.com/ovn-org/ovn/blob/57171d2ff3de61ae9c7f8d380c0cb7cb8351e2a4/ovn-sb.ovsschema
- 3: https://man7.org/linux/man-pages/man5/ovn-sb.5.html
- 4: https://manpages.debian.org/trixie/ovn-common/ovn-sb.5.en.html
- 5: https://www.ovn.org/support/dist-docs/ovn-sb.5.pdf
- 6: https://docs.ovn.org/en/latest/ref/ovn-logical-flows.7.html
🏁 Script executed:
cd go-controller && fd -t f "model.go" | head -20Repository: openshift/ovn-kubernetes
Length of output: 433
🏁 Script executed:
cd go-controller && fd -t f "model.go" -exec wc -l {} \;Repository: openshift/ovn-kubernetes
Length of output: 255
🏁 Script executed:
cd go-controller && find . -name "model.go" -type fRepository: openshift/ovn-kubernetes
Length of output: 340
🏁 Script executed:
wc -l ./pkg/sbdb/model.goRepository: openshift/ovn-kubernetes
Length of output: 119
🏁 Script executed:
sed -n '1380,1400p' ./pkg/sbdb/model.goRepository: openshift/ovn-kubernetes
Length of output: 131
🏁 Script executed:
git ls-files | grep "sbdb/model.go"Repository: openshift/ovn-kubernetes
Length of output: 100
🏁 Script executed:
pwd && ls -laRepository: openshift/ovn-kubernetes
Length of output: 2515
🏁 Script executed:
wc -l go-controller/pkg/sbdb/model.goRepository: openshift/ovn-kubernetes
Length of output: 105
🏁 Script executed:
sed -n '1380,1400p' go-controller/pkg/sbdb/model.goRepository: openshift/ovn-kubernetes
Length of output: 508
🏁 Script executed:
sed -n '1370,1410p' go-controller/pkg/sbdb/model.goRepository: openshift/ovn-kubernetes
Length of output: 880
🏁 Script executed:
sed -n '1350,1370p' go-controller/pkg/sbdb/model.goRepository: openshift/ovn-kubernetes
Length of output: 536
🏁 Script executed:
sed -n '1330,1360p' go-controller/pkg/sbdb/model.goRepository: openshift/ovn-kubernetes
Length of output: 732
🏁 Script executed:
git log --oneline -p go-controller/pkg/sbdb/model.go | grep -A 5 -B 5 '"maxInteger": 33' | head -30Repository: openshift/ovn-kubernetes
Length of output: 312
🏁 Script executed:
git log -p go-controller/pkg/sbdb/model.go | grep -B 10 -A 10 'maxInteger.*3[23]' | head -60Repository: openshift/ovn-kubernetes
Length of output: 50
🏁 Script executed:
git log --oneline -n 20 -- go-controller/pkg/sbdb/model.goRepository: openshift/ovn-kubernetes
Length of output: 110
🏁 Script executed:
git show bf52d4b21:go-controller/pkg/sbdb/model.go | sed -n '1385,1395p'Repository: openshift/ovn-kubernetes
Length of output: 300
🏁 Script executed:
git show bf52d4b21~1:go-controller/pkg/sbdb/model.go | sed -n '1385,1395p'Repository: openshift/ovn-kubernetes
Length of output: 110
🏁 Script executed:
git log --oneline -n 5 -- go-controller/pkg/sbdb/model.goRepository: openshift/ovn-kubernetes
Length of output: 110
🏁 Script executed:
git show bf52d4b21 -- go-controller/pkg/sbdb/model.go | grep -B 5 -A 5 "maxInteger.*3[23]"Repository: openshift/ovn-kubernetes
Length of output: 1271
🏁 Script executed:
git log --all --oneline -- go-controller/pkg/sbdb/model.go | head -20Repository: openshift/ovn-kubernetes
Length of output: 1045
🏁 Script executed:
git show bf52d4b21 -- go-controller/pkg/sbdb/model.go | head -100Repository: openshift/ovn-kubernetes
Length of output: 3731
🏁 Script executed:
git show 9b2be2983:go-controller/pkg/sbdb/model.go | grep -A 8 '"table_id"'Repository: openshift/ovn-kubernetes
Length of output: 263
🏁 Script executed:
git diff 9b2be2983..bf52d4b21 -- go-controller/pkg/sbdb/model.go | grep -B 5 -A 5 '"table_id"'Repository: openshift/ovn-kubernetes
Length of output: 50
🏁 Script executed:
web_search
What is the Logical_Flow table_id maxInteger constraint in the OVN 26.03.1 schema file?Repository: openshift/ovn-kubernetes
Length of output: 162
🏁 Script executed:
web_search
OVN 26.03.1 Logical_Flow table_id schema constraint specificationRepository: openshift/ovn-kubernetes
Length of output: 161
🌐 Web query:
OVN 26.03.1 Logical_Flow table_id maxInteger constraint schema
💡 Result:
In OVN version 26.03, the table_id column in the Logical_Flow table of the OVN_Southbound database is defined with a constraint that limits its integer value [1]. Specifically, the OVSDB schema for ovn-sb specifies that table_id must be an integer within the range of 0 to 23 [1]. This constraint ensures that logical flows are categorized into defined stages within the logical pipeline, analogous to OpenFlow table numbers [2][3]. While older versions of OVN may have utilized different ranges (such as 0 to 32 or 33 in previous releases) [2][4][3], the schema for version 26.03.0 explicitly sets the maxInteger constraint for table_id to 23 [1].
Citations:
- 1: https://github.com/ovn-org/ovn/blob/v26.03.0/ovn-sb.ovsschema
- 2: https://www.ovn.org/support/dist-docs/ovn-sb.5.pdf
- 3: https://man7.org/linux/man-pages/man5/ovn-sb.5.html
- 4: https://www.ovn.org/support/dist-docs-branch-21.03/ovn-sb.5.html
Fix maxInteger constraint for table_id to match OVN v26.03.1 schema.
The maxInteger value for table_id should be 23, not 33, according to the OVN v26.03.1 schema specification. The current value of 33 will cause encoding/decoding mismatches with the actual OVN Southbound database schema and may break compatibility with ovn-controller.
🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.
In `@go-controller/pkg/sbdb/model.go` at line 1389, The maxInteger constraint
value for table_id in the model.go file is currently set to 33 but should be 23
to match the OVN v26.03.1 schema specification. Locate the "maxInteger" field
definition for table_id and change the value from 33 to 23. This will ensure
proper encoding/decoding compatibility with the actual OVN Southbound database
schema and maintain compatibility with ovn-controller.
| ######################################## | ||
| FROM quay.io/fedora/fedora:43 AS kojidownloader | ||
| ARG ovnver=ovn-25.09.2-82.fc43 | ||
| ARG ovnver=ovn-26.03.1-50.fc43 |
There was a problem hiding this comment.
Isn't this an upstream file? did we miss it there?
There was a problem hiding this comment.
Isn't this an upstream file? did we miss it there?
The bot has not yet merged PR https://github.com/ovn-kubernetes/ovn-kubernetes/pull/6532 for ovn bump in upstream ovnk
Bump the downstream OVN package to 26.03. The rest of the OVN 26.03 schema, Fedora image, and documentation changes will arrive through the normal downstream sync. Signed-off-by: Miheer Salunke <miheer.salunke@gmail.com>
|
please update the PR description to be a single line that tells we are bumping OVN :D |
done |
|
@miheer: This pull request references CORENET-6688 which is a valid jira issue. Warning: The referenced jira issue has an invalid target version for the target branch this PR targets: expected the story to target the "5.0.0" version, but no target version was set. DetailsIn response to this:
Instructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the openshift-eng/jira-lifecycle-plugin repository. |
|
/retest |
|
/retest |
7 similar comments
|
/retest |
|
/retest |
|
/retest |
|
/retest |
|
/retest |
|
/retest |
|
/retest |
|
[APPROVALNOTIFIER] This PR is APPROVED This pull-request has been approved by: miheer, tssurya The full list of commands accepted by this bot can be found here. The pull request process is described here DetailsNeeds approval from an approver in each of these files:
Approvers can indicate their approval by writing |
|
/retest |
|
@tssurya these tests are failing due to flakes. I will re-run them |
|
@miheer: The following tests failed, say
Full PR test history. Your PR dashboard. DetailsInstructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the kubernetes-sigs/prow repository. I understand the commands that are listed here. |
|
/retest |
Bump the downstream OVN package to 26.03