-
Notifications
You must be signed in to change notification settings - Fork 2.9k
Open
Labels
complexity: highExpected to require a large amont of time and effort to implement relative to other tasksExpected to require a large amont of time and effort to implement relative to other tasksnetboxstatus: backlogAwaiting selection for workAwaiting selection for worktype: featureIntroduction of new functionality to the applicationIntroduction of new functionality to the application
Milestone
Description
Proposed Changes
Replace usage of django-mptt in NetBox with one of the alternatives listed below:
django-tree-queries
django-tree-queries employs recursive common table expressions (CTE). It was originally proposed in #6587.
django-treebeard
django-treebeard offers several tree implementations, one of which (nested sets) is roughly analogous to django-mptt's implementation.
PotsgreSQL ltree
PostgreSQL's ltree module offers another potential solution. It is employed by django-ltree, however that library appears to no longer be maintained.
Justification
django-mptt is no longer maintained. Additionally, this presents an opportunity to adopt a recursive nesting solution that may prove to be more performant and/or scalable than MPTT. This idea was originally raised in #11421.
Metadata
Metadata
Assignees
Labels
complexity: highExpected to require a large amont of time and effort to implement relative to other tasksExpected to require a large amont of time and effort to implement relative to other tasksnetboxstatus: backlogAwaiting selection for workAwaiting selection for worktype: featureIntroduction of new functionality to the applicationIntroduction of new functionality to the application