192
by Brian Aker
Updating FAQ |
1 |
Hi! |
183
by Brian Aker
Partial FAQ (questions to answert). Removed two dead variables. Need chai... |
2 |
|
1
by brian
clean slate |
3 |
* So why? |
4 |
||
5 |
I've been wondering for a long time now about all of the changes post 4.1. |
|
6 |
I believe there is a large market of users who never wanted them, and never |
|
7 |
cared for them. I also wanted to question the foundations of what we built. |
|
8 |
Do uses want wrong data? How often is the query cache really valuable? If |
|
9 |
everyone just has a root user with all privs, why carry the baggage of the |
|
10 |
ACL code. Etc. |
|
11 |
||
192
by Brian Aker
Updating FAQ |
12 |
* What is the goal? |
1
by brian
clean slate |
13 |
|
14 |
A micro-kernel that we then extend to add what we need (all additions come |
|
15 |
through interfaces that can be compiled/loaded in as needed). |
|
16 |
||
17 |
* So the differences? |
|
18 |
||
192
by Brian Aker
Updating FAQ |
19 |
No modes, views, triggers, stored procedures, query cache, data conversion inserts, |
1
by brian
clean slate |
20 |
ACL. Less engines, less code. Assume the primary engine is transactional. |
21 |
||
22 |
* Why now? |
|
23 |
||
24 |
Why not now :) |
|
25 |
||
26 |
* "This is awesome, but I need you to add back..." |
|
27 |
||
28 |
Forget it. Nothing is going back in at this time. As for the future? Maybe, |
|
192
by Brian Aker
Updating FAQ |
29 |
but at the moment this is not the target. If you want more features, go |
1
by brian
clean slate |
30 |
use MySQL. |
31 |
||
32 |
* What platforms? |
|
33 |
||
34 |
I compile on OSX, Linux (Fedora), and Solaris Express. Windows is not |
|
35 |
supported and will stay that way unless it gets a working posix layer + |
|
36 |
autoconf system (aka becomes a platform that is reasonable to support). |
|
37 |
||
192
by Brian Aker
Updating FAQ |
38 |
Really, get a working GNU chain going on Windows and you can get Drizzle |
39 |
working on it. |
|
1
by brian
clean slate |
40 |
|
192
by Brian Aker
Updating FAQ |
41 |
Drizzle relies on a C99 compliant compiler. Please do not ask us to support |
42 |
older hardware, compilers, or OS'es. |
|
1
by brian
clean slate |
43 |
|
44 |
* What is the future? |
|
45 |
||
46 |
Less code, more modularity, and more active involvement. A few things that |
|
47 |
still need to be done: |
|
48 |
- Switch to stdint |
|
49 |
- Walk through all of the replication code |
|
50 |
- Re-implement information schema |
|
51 |
- Modular logging system |
|
192
by Brian Aker
Updating FAQ |
52 |
- ... |
1
by brian
clean slate |
53 |
|
54 |
* "This is not a SQL compliant relational..." |
|
55 |
||
56 |
Very true, and we do not aim to be that. |
|
57 |
||
58 |
* What is left to be cut out? |
|
59 |
||
192
by Brian Aker
Updating FAQ |
60 |
Please ask on the mailing list or on IRC. |
61 |
||
62 |
* Can I get involved? |
|
63 |
||
64 |
Most certainly. There is plenty to do from refactoring code, design of intereface, |
|
65 |
to documentation, etc... The best way to get involved it to join the mailing |
|
66 |
list at: |
|
67 |
https://launchpad.net/~drizzle-discuss/ |
|
68 |
||
69 |
If you wish to suggest a refactoring project or an interface please email |
|
70 |
the mailing list and keep an open mind. Do not expect anyone will work on |
|
71 |
your idea though, you may influence someone to do that, but more then likely |
|
72 |
you will need to rollup your sleaves and write some code. For very simple |
|
73 |
bits you are welcome to ask others on #drizzle on Freenode, but please be |
|
74 |
aware that you may be asked to email the mailing list. |
|
75 |
||
76 |
Showing up with a big block of code is probably the worst way of getting |
|
77 |
your work accepted. This is unlikely to work. |
|
78 |
||
79 |
Right now we use a simple captain system for commits. Anyone can send in a |
|
80 |
proprosal for merge via launchpad but your changes may be flowed first |
|
81 |
through someone who has been around long enough to understand code |
|
82 |
requirements to review your code. This system is based entirely on trust, |
|
83 |
and individuals who have shown that they can provide three good patches gain |
|
84 |
credibility. Starting small is fine, patches that are just comments or are |
|
85 |
event two or three line cleanups are welcome and encouraged. I would really |
|
86 |
recommend anyone who wants to work on something start with something of this |
|
87 |
size. Patches like these are valuable and they teach you how to work with |
|
88 |
the system. |
|
89 |
||
90 |
The general rule is no new code in the core of the server, and any changes |
|
91 |
to interfaces need to be code line neutral. AKA if you want to add an |
|
92 |
interface you need to be able to remove at least the number of lines of code |
|
93 |
you added. This is a rule of thumb, and does not apply to code cleanup. |
|
94 |
||
95 |
It should be pointed out that we are more focused on code style, |
|
96 |
performance, and over all maintenance then we are features. |
|
97 |
||
98 |
* What is the coding style? |
|
99 |
||
100 |
Please look here: |
|
101 |
https://blueprints.launchpad.net/drizzle/+spec/style-cleanup |
|
102 |
||
103 |
If you have a question on this, please email the mailing list so that we can |
|
104 |
clarifying the document. And when you get the answer? Please update the code |
|
105 |
style document :) |
|
106 |
||
107 |
* Should I email the mailing list with patches? |
|
108 |
||
109 |
Please god no, we live in the age of the Internet :) |
|
110 |
||
111 |
Create an account on launchpad.net. Create your own tree and let one of us |
|
112 |
pull from it. |
|
113 |
||
114 |
* What is the target? |
|
115 |
||
116 |
Deliver a microkernel that we can use to build a database that meets the |
|
117 |
needs of a web/cloud infrastructure. To this end we are exploring http |
|
118 |
interfaces, sharding enhancements, etc... do not expect an Oracle, MySQL, |
|
119 |
Postgres, or DB2. There is no GA date at the moment. |
|
120 |
||
121 |
We are focusing on multi-core architecture. This is not designed to run on a |
|
122 |
wrist watch (hint, go use SQLite). We support both 32bit and 64bit but the |
|
123 |
class of machine we are targetting is 64bit. We are making design decisions |
|
124 |
which assume very large amounts of RAM will be made available to the DB. |
|
125 |
||
126 |
* Can I run a website with this? |
|
127 |
||
128 |
No. We are stil making incompatible changes, and I certainly do not believe |
|
129 |
the code is production quality. Right now we are defaulting many configure |
|
130 |
operations to generate debugging code for us so our binaries are not |
|
131 |
optimum, so do not got out and benchmark this and expect it to be one way or |
|
132 |
the other. We are currently only doing benchmarks where it makes sense for |
|
133 |
us to determine where bottlenecks are. |
|
1
by brian
clean slate |
134 |
|
194
by Brian Aker
Documentation cleanup |
135 |
* And what is the license? |
136 |
||
137 |
Drizzle inherits its license from MySQL's GPL. Any libraries not connected |
|
138 |
to this are licensed under their own distribution license. All source files |
|
139 |
are clearly idenified. |
|
140 |
||
1
by brian
clean slate |
141 |
* Why drizzle? |
142 |
||
192
by Brian Aker
Updating FAQ |
143 |
I am from Seattle. Drizzle is our normal form of "rain" but it is not "rain", |
144 |
it is drizzle. This was a bit of a rainy day project that finally found a |
|
145 |
spot in my schedule :) |
|
1
by brian
clean slate |
146 |
|
147 |
-Brian |
|
148 |
Seattle, USA |
|
192
by Brian Aker
Updating FAQ |
149 |
Sun, Microsystems |