Skip to content

Saving a VLANGroup without changes creates a new changelog entry #20471

@pheus

Description

@pheus

NetBox Edition

NetBox Community

NetBox Version

v4.4.2

Python Version

3.12

Steps to Reproduce

  1. Navigate to IPAM → VLAN Groups; create a VLAN group (or open an existing one).
  2. In VLAN ID Ranges, enter a value such as 100-200, 300-300 and click Save.
  3. Reopen the same VLAN group, do not change any fields, and click Save again.
  4. Open the object’s Changelog tab (or Other → Change Log) and filter by this object.

Expected Behavior

No new changelog entry should be created if no fields were changed.

Observed Behavior

A new changelog entry is recorded on each save, even when the form or API payload is identical in meaning. The difference appears isolated to vid_ranges and stems from representation drift:

  • UI/forms (and CSV import) return inclusive ranges (e.g., NumericRange(lo, hi, bounds='[]')).
  • PostgreSQL int4range canonicalizes to half‑open [lo, hi) on round‑trip.
  • Change logging compares serialized pre/post snapshots textually, so these representations don’t match even though the set of VLAN IDs is unchanged.

Metadata

Metadata

Assignees

Labels

severity: lowDoes not significantly disrupt application functionality, or a workaround is availablestatus: acceptedThis issue has been accepted for implementationtype: bugA confirmed report of unexpected behavior in the application

Type

Projects

No projects

Milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions