Edgewall Software

Changes between Version 2 and Version 3 of Data Storage


Ignore:
Timestamp:
Sep 19, 2005, 8:12:53 PM (19 years ago)
Author:
cmlenz
Comment:

Removed BDB XML stuff

Legend:

Unmodified
Added
Removed
Modified
  • Data Storage

    v2 v3  
    1111 * Time it took to execute the test
    1212
    13 Other data such as compilation errors and warnings would only consist of the message of the error or warning. Code coverage would annotate each line in the code base with the number of times that line has been executed, and in addition accumulate coverage statistics on a per-file or per-class basis.
     13Code coverage, on the other hand, might look like this:
    1414
    15 == XML Database Backend ==
     15 * Name of the unit (module, class, etc)
     16 * Total lines of code in the unit
     17 * Percentage of lines executed
     18 * Number of times every lin was executed
    1619
    17 Semi-structured data such as this is not a good candidate for storage in a relational database. Instead, native XML databases are rather well suited for storing semi-structured data. Bitten therefore uses [http://www.sleepycat.com/products/xml.shtml Berkeley DB XML] to store reports generated by builds. BDB XML supports the [http://www.w3.org/TR/xquery/ XQuery] standard and thereby enables efficient and powerful analysis and aggregation of the collected software metrics.
     20Other data such as compilation errors/warnings or style checks would consist of the message of the error or warning.
    1821
    19   ''Note that Bitten allows an alternative XQuery capable data store being used instead of BDB XML.''
     22== Database Layout ==
    2023
    21 Every report is stored as a self-contained document in the XML DB. It is associated with a specific build step using metadata:
     24As Bitten should support the storage of arbritray metrics, the tables for storing this data need to be fairly generic. Versions of Bitten prior to [milestone:0.5] used a Berkeley DB XML backend to store reports, but for various reasons the report data is now mapped to tables in the relational database already provided by the Trac environment.
    2225
    23  `config`:: The name of the build configuration the report belongs to
    24  `build`:: The unique ID of the associated build
    25  `step`:: The name of the build step
    26 
    27 The reports themselves are stored verbatim as received from the build slave, for example:
     26A report is received in XML format from the build slave, for example:
    2827
    2928{{{