Mercurial > p > roundup > code
annotate doc/gadfly.txt @ 1409:8dc60d87ab42
Fixed a backlog of bug reports, and worked on python 2.3 compatibility:
- fixed templating filter function arguments [SF#678911]
- fixed multiselect in searching [SF#676874]
- fixed parsing of content-disposition filenames [SF#675116]
- added 'h' to roundup-server optarg list [SF#674070]
- fixed doc for db.history in anydbm and rdbms_common [SF#679221]
- fixed timelog example so it handles new issues [SF#678908]
- handle missing os.fork() [SF#681046]
- fixed roundup-reminder [SF#681042]
- fixed int assumptions about Number values [SF#677762]
- added warning filter for "FutureWarning: hex/oct constants > sys.maxint will
return positive values..." (literal 0xffff0000 in portalocker.py)
- fixed ZPT code generating SyntaxWarning for assignment to None
| author | Richard Jones <richard@users.sourceforge.net> |
|---|---|
| date | Thu, 06 Feb 2003 05:43:49 +0000 |
| parents | b59b60306914 |
| children |
| rev | line source |
|---|---|
|
995
b59b60306914
gadfly backend docco
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
1 ============== |
|
b59b60306914
gadfly backend docco
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
2 Gadfly Backend |
|
b59b60306914
gadfly backend docco
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
3 ============== |
|
b59b60306914
gadfly backend docco
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
4 |
|
b59b60306914
gadfly backend docco
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
5 This document outlines the design and implementation of the Gadfly (relational |
|
b59b60306914
gadfly backend docco
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
6 database) backend. |
|
b59b60306914
gadfly backend docco
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
7 |
|
b59b60306914
gadfly backend docco
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
8 |
|
b59b60306914
gadfly backend docco
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
9 About Gadfly |
|
b59b60306914
gadfly backend docco
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
10 ============ |
|
b59b60306914
gadfly backend docco
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
11 |
|
b59b60306914
gadfly backend docco
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
12 Gadfly is a collection of python modules that provides relational |
|
b59b60306914
gadfly backend docco
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
13 database functionality entirely implemented in Python. It supports a |
|
b59b60306914
gadfly backend docco
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
14 subset of the intergalactic standard RDBMS Structured Query Language |
|
b59b60306914
gadfly backend docco
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
15 SQL. |
|
b59b60306914
gadfly backend docco
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
16 |
|
b59b60306914
gadfly backend docco
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
17 |
|
b59b60306914
gadfly backend docco
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
18 Basic Structure |
|
b59b60306914
gadfly backend docco
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
19 =============== |
|
b59b60306914
gadfly backend docco
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
20 |
|
b59b60306914
gadfly backend docco
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
21 Roundup supports a dynamic schema, something which doesn't map very well to a |
|
b59b60306914
gadfly backend docco
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
22 relational database table schema (or at least, it's frowned upon :) |
|
b59b60306914
gadfly backend docco
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
23 |
|
b59b60306914
gadfly backend docco
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
24 Approaches: |
|
b59b60306914
gadfly backend docco
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
25 |
|
b59b60306914
gadfly backend docco
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
26 1. Map roundup classes to relational tables. Automatically detect schema |
|
b59b60306914
gadfly backend docco
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
27 changes and modify the gadfly table schemas appropriately. Multilinks |
|
b59b60306914
gadfly backend docco
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
28 (which represent a many-to-many relationship) are handled through |
|
b59b60306914
gadfly backend docco
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
29 intermediate tables. |
|
b59b60306914
gadfly backend docco
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
30 Journals are stored adjunct to the per-class tables. |
|
b59b60306914
gadfly backend docco
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
31 2. Map roundup classes to relational tables. Automatically detect schema |
|
b59b60306914
gadfly backend docco
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
32 changes and modify the gadfly table schemas appropriately. Multilinks |
|
b59b60306914
gadfly backend docco
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
33 are handled with string representations of the id lists. |
|
b59b60306914
gadfly backend docco
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
34 Journals are stored adjunct to the per-class tables. |
|
b59b60306914
gadfly backend docco
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
35 3. Four tables: |
|
b59b60306914
gadfly backend docco
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
36 |
|
b59b60306914
gadfly backend docco
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
37 - classes: class id, name |
|
b59b60306914
gadfly backend docco
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
38 - properties: class id, property id, name, type, options |
|
b59b60306914
gadfly backend docco
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
39 - nodes: class id, node id, property id, value (one row per multilink value) |
|
b59b60306914
gadfly backend docco
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
40 - journals: class id, node id, event, description |
|
b59b60306914
gadfly backend docco
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
41 |
|
b59b60306914
gadfly backend docco
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
42 The classes and properties tables will need to be kept in sync with the |
|
b59b60306914
gadfly backend docco
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
43 roundup schema. |
|
b59b60306914
gadfly backend docco
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
44 4. Two less efficient tables: |
|
b59b60306914
gadfly backend docco
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
45 |
|
b59b60306914
gadfly backend docco
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
46 - nodes: class, property, node id, value (one row per multilink value) |
|
b59b60306914
gadfly backend docco
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
47 - journals: class, node id, event, description |
|
b59b60306914
gadfly backend docco
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
48 |
|
b59b60306914
gadfly backend docco
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
49 The classes and properties tables will need to be kept in sync with the |
|
b59b60306914
gadfly backend docco
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
50 roundup schema. |
|
b59b60306914
gadfly backend docco
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
51 |
