Edgewall Software

Changes between Version 16 and Version 17 of GenericTrac


Ignore:
Timestamp:
Apr 13, 2010, 3:03:30 PM (14 years ago)
Author:
Christian Boos
Comment:

answer to comments from Carsten Klein

Legend:

Unmodified
Added
Removed
Modified
  • GenericTrac

    v16 v17  
    412412
    413413
    414 
    415  - '''Comment''' Why not implement all of the different resource_prop* tables into a single table, where each tupel has multiple attributes, see for example the JBPM datamodel for a working and presumably also fast approach. Here, there exists a process_variable or some similar table that stores all the different value types in single table. And please rename the ''name'' field to ''prop'' so that it matches the one in the resource_schema table.The schema would be like so:
     414'''Comments''' (cklein)
     415 - Why not implement all of the different `resource_prop*` tables into a single table, where each tupel has multiple attributes, see for example the JBPM datamodel for a working and presumably also fast approach. Here, there exists a process_variable or some similar table that stores all the different value types in single table.
     416   - (cboos) not sure how you see that as an advantage; each row will waste all the fields but one; there need to be one index for each type, each index having to deal with lots of NULL values, each update will have to rebuild all indexes, etc.). But it could be worth benchmarking anyway...
     417  The schema would be like so:
    416418{{{
    417419table resource_prop
     
    447449}
    448450}}}
    449 
    450  - '''Comment''' Also I would like to have the resource_schema table extended so that it will support different schemas for, say, different ticket types. That way, users can define their personal ticket type schemas. Of course, derivation would also be nice, but that could be implemented at a later point in time, requiring yet another table. That way we could have both inheritance at the schema level and also multiple different models per realm ;)
    451 
    452 {{{
     451 - And please rename the ''name'' field to ''prop'' so that it matches the one in the resource_schema table.
     452   - (cboos) will do
     453 - Also I would like to have the resource_schema table extended so that it will support different schemas for, say, different ticket types. That way, users can define their personal ticket type schemas. Of course, derivation would also be nice, but that could be implemented at a later point in time, requiring yet another table. That way we could have both inheritance at the schema level and also multiple different models per realm ;)
     454  {{{
    453455table resource_schema
    454456{
     
    459461  type
    460462}
    461 
    462 and the inheritance table for the schemas would then be
    463 
     463  }}}
     464  The inheritance table for the schemas would then be
     465  {{{
    464466table resource_schema_inheritance
    465467{
     
    468470  base -- the urn of the base schema
    469471}
    470 }}}
    471 
     472  }}}
     473   - (cboos) Interesting idea, though for simplicity my initial idea was that one could simply define new realms (bug: vs. enhancement:, both nevertheless managed by the TicketModule)
    472474 - inheritance would then provide for also multiple inheritance
     475   - (cboos) much harder ;-)
    473476
    474477== Possible Implementation Plan ==