#288: Create prototype for legacy database schema proxy
---------------------------+-----------------------------------
Reporter: jure | Owner: jure
Type: enhancement | Status: assigned
Priority: major | Milestone:
Component: multiproduct | Version:
Resolution: | Keywords: bep-0003 multiproduct
---------------------------+-----------------------------------
Comment (by jure):
As described in ticket description, attached patch
(ticket288_r1418224_MultiproductSQLProxy.diff) is an initial
implementation of SQL proxy with the fore-mentioned functionality. It
monkey-patches trac to install BloodhoundIterableCursor and
BloodhoundEnvironment to capture all SQLs targeted at the database and
provides product aware/scope selection.
The patch does the following:
- introduces modified database schema by extending enum, component,
milestone, version and wiki tables with additional column named product
- database upgrade
- migrates existing enums, components, milestones, versions to a default
product and, in addition to that, multiplies the configuration for each
defined product
- tickets w/o product are migrated to default product
- in runtime, the BloodhoundIterableCursor translates SQLs targeted at the
tables mentioned above to the scope of the product defined in
bloodhound.py (DEFAULT_PRODUCT). This effectively scopes all SQLs targeted
to translated tables to that product
- currently, as there is no obvious UI way of chaning product scope,
currently selected product scope can be changed by modifying the
bloodhound.py file and chaning the DEFAULT_PRODUCT...
--
Ticket URL: <https://issues.apache.org/bloodhound/ticket/288#comment:4>
Apache Bloodhound <https://issues.apache.org/bloodhound/>
The Apache Bloodhound (incubating) issue tracker