Project

General

Profile

Bug #5157

Item properties table is not in normal form

Added by Laurent Opprecht almost 7 years ago. Updated almost 7 years ago.

Status:
New
Priority:
Normal
Assignee:
-
Category:
-
Target version:
-
Start date:
10/07/2012
Due date:
% Done:

0%

Estimated time:
Complexity:
Normal
SCRUM pts - complexity:
?

Description

The item property table is denormalized. It stores several types of data whose cardinality is unrelated:

  • to users
  • to groups
  • visibility
  • ...

It would be better to have those in seperate tables:

  • a to table (one row per users/group)
  • a item property table with a one to one relationship with the related object

History

#1

Updated by Yannick Warnier almost 7 years ago

The item_property table is definitely one we want to review in the next version, in particular because it actually serves (in a bad way) two purposes: it stores visibility information about resources and it track the changes on every item. This makes distinguishing both and generating reporting a mess.

#2

Updated by Laurent Opprecht almost 7 years ago

Agreed,
I think it would make sense to have a few different tables for different purposes:

  • log table, for has been modified, has been created etc
  • common properties table
  • etc

On a side note it may be worth, should time allow, to have a "parent" table containing common fields:

  • name
  • description
  • visibility
  • etc

one advantage would be to allow global searching accross different types of data

Also available in: Atom PDF