Merge lp:drizzle/mordred into lp:~drizzle-trunk/drizzle/development
- devel
- Merge into development
Status: | Superseded | ||||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Proposed branch: | lp:drizzle/mordred | ||||||||||||||||||||||||||||||||
Merge into: | lp:~drizzle-trunk/drizzle/development | ||||||||||||||||||||||||||||||||
Diff against target: | None lines | ||||||||||||||||||||||||||||||||
To merge this branch: | bzr merge lp:drizzle/mordred | ||||||||||||||||||||||||||||||||
Related bugs: |
|
Reviewer | Review Type | Date Requested | Status |
---|---|---|---|
Jay Pipes (community) | Needs Fixing | ||
Review via email: mp+11487@code.launchpad.net |
This proposal supersedes a proposal from 2009-09-09.
Commit message
Description of the change
Monty Taylor (mordred) wrote : Posted in a previous version of this proposal | # |
Jay Pipes (jaypipes) wrote : Posted in a previous version of this proposal | # |
Please merge trunk and resolve conflicts :)
Thanks!
Jay
Stewart Smith (stewart) wrote : Posted in a previous version of this proposal | # |
On Wed, Sep 09, 2009 at 06:15:44PM -0000, Monty Taylor wrote:
> Monty Taylor has proposed merging lp:drizzle/mordred into lp:drizzle.
>
> Requested reviews:
> Jay Pipes (jaypipes)
> --
> https:/
> You are subscribed to branch lp:drizzle.
> === modified file '.bzrignore'
> --- .bzrignore 2009-07-29 17:45:51 +0000
> +++ .bzrignore 2009-09-09 00:38:19 +0000
> @@ -274,3 +274,5 @@
> po/POTFILES.in
> drizzled/
> TAGS
> +*replication.pb.*
I don't think this should be such a blanket wildcard, should instead be
specific paths.
> --- client/drizzle.cc 2009-07-20 18:10:47 +0000
> +++ client/drizzle.cc 2009-09-09 00:38:19 +0000
> @@ -34,17 +34,13 @@
> #if defined(
> -#include <curses.h>
> +# include <curses.h>
Oh my, I get to be the style nazi :)
no space before 'include' after # :)
--
Stewart Smith
Monty Taylor (mordred) wrote : | # |
Ok. Works everywhere now. Sigh. Apple.
Monty Taylor (mordred) wrote : Posted in a previous version of this proposal | # |
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1
Stewart Smith wrote:
> On Wed, Sep 09, 2009 at 06:15:44PM -0000, Monty Taylor wrote:
>> Monty Taylor has proposed merging lp:drizzle/mordred into lp:drizzle.
>>
>> Requested reviews:
>> Jay Pipes (jaypipes)
>> --
>> https:/
>> You are subscribed to branch lp:drizzle.
>
>> === modified file '.bzrignore'
>> --- .bzrignore 2009-07-29 17:45:51 +0000
>> +++ .bzrignore 2009-09-09 00:38:19 +0000
>> @@ -274,3 +274,5 @@
>> po/POTFILES.in
>> drizzled/
>> TAGS
>> +*replication.pb.*
>
> I don't think this should be such a blanket wildcard, should instead be
> specific paths.
Agree.
>> --- client/drizzle.cc 2009-07-20 18:10:47 +0000
>> +++ client/drizzle.cc 2009-09-09 00:38:19 +0000
>> @@ -34,17 +34,13 @@
>> #if defined(
>> -#include <curses.h>
>> +# include <curses.h>
>
> Oh my, I get to be the style nazi :)
>
> no space before 'include' after # :)
>
Hrm. I thought we'd decided to do pre-processor indentation like:
#ifdef foo
# include <bar>
#else
# ifdef blah
# #include <sys/types.h>
# endif
#endif
Did we not?
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.9 (GNU/Linux)
Comment: Using GnuPG with Mozilla - http://
iEYEARECAAYFAkq
+p0AoKHfc2vYxMz
=eOoN
-----END PGP SIGNATURE-----
Jay Pipes (jaypipes) wrote : Posted in a previous version of this proposal | # |
Monty Taylor wrote:
> Stewart Smith wrote:
>> On Wed, Sep 09, 2009 at 06:15:44PM -0000, Monty Taylor wrote:
>>> --- client/drizzle.cc 2009-07-20 18:10:47 +0000
>>> +++ client/drizzle.cc 2009-09-09 00:38:19 +0000
>>> @@ -34,17 +34,13 @@
>>> #if defined(
>>> -#include <curses.h>
>>> +# include <curses.h>
>> Oh my, I get to be the style nazi :)
>>
>> no space before 'include' after # :)
>>
>
> Hrm. I thought we'd decided to do pre-processor indentation like:
>
> #ifdef foo
> # include <bar>
> #else
> # ifdef blah
> # #include <sys/types.h>
> # endif
> #endif
>
> Did we not?
We did. That said, you only changed one line of that block and left the
rest of the block with no indentation ;P
-jay
Jay Pipes (jaypipes) wrote : | # |
Hi! Nice (big) patch! :)
Couple little things:
329 -HASH ignore_table;
330 +drizzled:
I assume this is because of a conflict in std::hash_set or std::tr1::hash_set in some places?
915 + VAR *v = var_init(0, name, len, "", 0);
No space before assignment :)
934 + while (*p && !isspace(*p))
956 + if(*p && !isspace(*p))
One space after negation operator
One space after if and before (
995 + if (!isdigit(
1004 + while (*p && !isspace(*p))
1048 + if (!isdigit(*p))
1066 + while (*p && !isspace(*p))
1075 + while (*p && !isspace(*p))
1089 + while (*end && !isspace(*end))
1148 + (!strncmp("while", buf, min((ptrdiff_t)5, p - buf)) ||
1149 + !strncmp("if", buf, min((ptrdiff_t)2, p - buf)))))
1229 + while (*end && !isspace(*end))
1256 + while (*p && !isspace(*p) && *p != '(')
5082 + clean_up(!opt_help && (exit_code));
8287 + if (!ref && !(ref= reinterpret_
19226 + if (!(session= new Session(
28146 + while (!((errno=
One space after negation operator
1157 - else if (my_isspace(
1158 + else if ((c == ' ') || (c == '\t') || (c == '\n'))
why not else if (isspace(c)) ?
1237 - while (*p && (my_isspace(
1238 + while (*p && (isspace(*p) || *p == '#' || *p == '\n'))
why not: while (*p && (isspace(*p) || *p == '#')) ?
1433 + if (tmp == '\b' || static_
The cast can be removed. a char is a number from -128 to 127 (or on some systems 0 to 255, but either way, no cast is required :)
4156 + TableList *table_
6579 + uint64_t save_pos=
6663 + *to++=1;
6734 + error=1; goto err;
6761 + error=1; goto err;
7619 + null_value=1;
7669 + max_length=0;
8367 + size_t max_length=
9941 + tmp=reinterpret
10851 + cache->buff=0;
12531 + new_min=
16158 + error=1;
20081 + return (tab->eq_
20855 + error=1;
20865 + error=1;
26473 + dec->buf[0]=0;
26474 + dec->intg=1;
26475 + dec->frac=0;
26476 + dec->sign=0;
27173 + int file=cache->file;
27529 + uint64_t pos_in_
28146 + while (!((errno=
One space after assignment please
8415 + table->file->errkey = UINT32_MAX;
No space before assignment operator
8729 - { return (my_errno= HA_ERR_
8730 + { return (errno= HA_ERR_
and:
8740 + { return (errno=
8749 + { return (errno=
Danger, Will Robinson! Do you really mean to set errno here?
14328 + handle= new (std::nothrow) plugin:
s/std:://
19715 +typedef struct st_typelib TYPELIB;
19716 +
19717 +typedef struct st_typelib TYPELIB;
I think it's safe to remove one of those ;)
Cheers,
Jay
Monty Taylor (mordred) wrote : | # |
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1
Jay Pipes wrote:
> Review: Needs Fixing
> Hi! Nice (big) patch! :)
>
> Couple little things:
>
> 329 -HASH ignore_table;
> 330 +drizzled:
>
> I assume this is because of a conflict in std::hash_set or std::tr1::hash_set in some places?
Yup. The hash_set/hash_map situation is very complicated. Add to that
that tr1 now actually defines it as unordered_
that there is direct support for hashing strings in some versions of gcc
but not others.
I stole the compatibility code from google protobuf (since they use
hash_map everywhere that we compile) and made a few changes for us.
> 915 + VAR *v = var_init(0, name, len, "", 0);
>
> No space before assignment :)
>
> 934 + while (*p && !isspace(*p))
> 956 + if(*p && !isspace(*p))
>
> One space after negation operator
> One space after if and before (
>
> 995 + if (!isdigit(
> 1004 + while (*p && !isspace(*p))
> 1048 + if (!isdigit(*p))
> 1066 + while (*p && !isspace(*p))
> 1075 + while (*p && !isspace(*p))
> 1089 + while (*end && !isspace(*end))
> 1148 + (!strncmp("while", buf, min((ptrdiff_t)5, p - buf)) ||
> 1149 + !strncmp("if", buf, min((ptrdiff_t)2, p - buf)))))
> 1229 + while (*end && !isspace(*end))
> 1256 + while (*p && !isspace(*p) && *p != '(')
> 5082 + clean_up(!opt_help && (exit_code));
> 8287 + if (!ref && !(ref= reinterpret_
> 19226 + if (!(session= new Session(
> 28146 + while (!((errno=
>
> One space after negation operator
>
> 1157 - else if (my_isspace(
> 1158 + else if ((c == ' ') || (c == '\t') || (c == '\n'))
>
> why not else if (isspace(c)) ?
Whoops. Was tracking down a different problem, didn't remove.
> 1237 - while (*p && (my_isspace(
> 1238 + while (*p && (isspace(*p) || *p == '#' || *p == '\n'))
>
> why not: while (*p && (isspace(*p) || *p == '#')) ?
No good reason.
> 1433 + if (tmp == '\b' || static_
>
> The cast can be removed. a char is a number from -128 to 127 (or on some systems 0 to 255, but either way, no cast is required :)
>
> 4156 + TableList *table_
> 6579 + uint64_t save_pos=
> 6663 + *to++=1;
> 6734 + error=1; goto err;
> 6761 + error=1; goto err;
> 7619 + null_value=1;
> 7669 + max_length=0;
> 8367 + size_t max_length=
> 9941 + tmp=reinterpret
> 10851 + cache->buff=0;
> 12531 + new_min=
> 16158 + error=1;
> 20081 + return (tab->eq_
> 20855 + error=1;
> 20865 + error=1;
> 26473 + dec->buf[0]=0;
> 26474 + dec->intg=1;
> 26475 + dec->frac=0;
> 26476 + dec->sign=0;
> 27173 + int file=cache->file;
> 27529 + uint64_t pos_in_
> 28146 + while (!((errno=
>
> One space after assignment please
>
> 8415 + table->file->errkey = UINT...
- 1127. By Brian Aker <brian@gaz>
-
Merge Jay
- 1128. By Brian Aker <brian@gaz>
-
Merge Jay Alter table + Brian dead code
- 1129. By Brian Aker <brian@gaz>
-
Merge Jay
- 1130. By Brian Aker <brian@gaz>
-
Merge Jay
- 1131. By Brian Aker <brian@gaz>
-
Merge Eric
- 1132. By Brian Aker <brian@gaz>
-
Merge Jay (build only related)
- 1133. By Brian Aker <brian@gaz>
-
Merge of Jay
- 1134. By Brian Aker <brian@gaz>
-
Old message removal by Eric (no actual code has been harmed in the production of
this patch...) - 1135. By Brian Aker <brian@gaz>
-
Merge of Lex -> Statement refactoring
- 1136. By Brian Aker <brian@gaz>
-
Merge for bug fixes.
- 1137. By Brian Aker <brian@gaz>
-
Merge Lee
- 1138. By Brian Aker <brian@gaz>
-
Merge of Joe Daly's work
- 1139. By Brian Aker <brian@gaz>
-
Merge Padraig
- 1140. By Brian Aker <brian@gaz>
-
Merge Monty (fix for distcheck)
- 1141. By Brian Aker <brian@gaz>
-
Merge language bits from Monty.
- 1142. By Brian Aker <brian@gaz>
-
Merge bug fix from Medina
- 1143. By Brian Aker <brian@gaz>
-
Merge Diego.
- 1144. By Brian Aker <brian@gaz>
-
Merge Monty
- 1145. By Brian Aker <brian@gaz>
-
Merge Stewart
- 1146. By Brian Aker <brian@gaz>
-
Merge Jay
- 1147. By Brian Aker <brian@gaz>
-
Update to po files.
- 1148. By Brian Aker <brian@gaz>
-
Update from Jay.
- 1149. By Brian Aker <brian@gaz>
-
Bug fix Diego
- 1150. By Brian Aker <brian@gaz>
-
Merge Eric
- 1151. By Brian Aker <brian@gaz>
-
Merge Stewart.
- 1152. By Brian Aker <brian@gaz>
-
Merge Stewarts cleanup for proto on tinyint
- 1153. By Brian Aker <brian@gaz>
-
Fix for memory leak (go Stewart!)
- 1154. By Brian Aker <brian@gaz>
-
Merging Monty
- 1155. By Brian Aker <brian@gaz>
-
Merge Monty + Brian for plugins.
- 1156. By Brian Aker <brian@gaz>
-
Brian Aker 2009-10-02 [merge] Patrick + leak fix +test fix by Brian
- 1157. By Brian Aker <brian@gaz>
-
Fix for OS-X
- 1158. By Brian Aker <brian@gaz>
-
Merge of Padraig
- 1159. By Brian Aker <brian@gaz>
-
Merge Monty
- 1160. By Brian Aker <brian@gaz>
-
Merge Stewart.
- 1161. By Brian Aker <brian@gaz>
-
NULL commit
- 1162. By Brian Aker <brian@gaz>
-
Merge Stewart
- 1163. By Brian Aker <brian@gaz>
-
Merge Stewart.
- 1164. By Brian Aker <brian@gaz>
-
Small cleanup.
- 1165. By Brian Aker <brian@gaz>
-
SE cleanup interface.
- 1166. By Brian Aker <brian@gaz>
-
Merge Jay
- 1167. By Brian Aker <brian@gaz>
-
Merging Padraig
- 1168. By Brian Aker <brian@gaz>
-
Merge Monty
- 1169. By Brian Aker <brian@gaz>
-
Merge Eric
- 1170. By Brian Aker <brian@gaz>
-
Merge Stewart.
- 1171. By Brian Aker <brian@gaz>
-
Merge Padraig
- 1172. By Brian Aker <brian@gaz>
-
Update to delete table to centralize the replication logic.
- 1173. By Brian Aker <brian@gaz>
-
Merge Monty
- 1174. By Brian Aker <brian@gaz>
-
Merge monty
- 1175. By Brian Aker <brian@gaz>
-
Single line fix for 32bit open solaris
- 1176. By Brian Aker <brian@gaz>
-
Merge 32bit failures
- 1177. By Brian Aker <brian@gaz>
-
Collection of merges from me.
- 1178. By Brian Aker <brian@gaz>
-
Merge Diego
- 1179. By Brian Aker <brian@gaz>
-
Merge Stewart
- 1180. By Brian Aker <brian@gaz>
-
Merge Diego Medina
- 1181. By Brian Aker <brian@gaz>
-
Merge Monty, default class.
- 1182. By Brian Aker <brian@gaz>
-
Minor Merge
- 1183. By Brian Aker <brian@gaz>
-
Merge Monty
- 1184. By Brian Aker <brian@gaz>
-
Merge memory
- 1185. By Brian Aker <brian@gaz>
-
Merge Engine changes.
- 1186. By Brian Aker <brian@gaz>
-
Merge of Monty
- 1187. By Brian Aker <brian@gaz>
-
Merge Jay
- 1188. By Brian Aker <brian@gaz>
-
Merge Stewart
- 1189. By Brian Aker <brian@gaz>
-
Adding in memcached_functions
- 1190. By Brian Aker <brian@gaz>
-
Merge Jay.
- 1191. By Brian Aker <brian@gaz>
-
Adding test cases that came from SergP.
- 1192. By Brian Aker <brian@gaz>
-
Merge Stewart's dead code removal
- 1193. By Brian Aker <brian@gaz>
-
Merge Jay
- 1194. By Brian Aker <brian@gaz>
-
Removed test for ARCH (it only looked at Intel style systems). Left in SELECT for it.
- 1195. By Brian Aker <brian@gaz>
-
Merge Diego
- 1196. By Brian Aker <brian@gaz>
-
Small fixes
- 1197. By Brian Aker <brian@gaz>
-
Remove test for 32bit max on heap tables.
Yeah... set the HEAP table to max on a 32bit machine and watch the Piñata
go. The value shouldn't be max, but should be some number less then MAX...
aka don't let the user blow up. - 1198. By Brian Aker <brian@gaz>
-
Merge Brian
- 1199. By Brian Aker <brian@gaz>
-
Fix comment.
- 1200. By Brian Aker <brian@gaz>
-
Clean up some mispellings
- 1201. By Brian Aker <brian@gaz>
-
Merge Monty
- 1202. By Brian Aker <brian@gaz>
-
Merge Eric
- 1203. By Brian Aker <brian@gaz>
-
Merge Monty
- 1204. By Brian Aker <brian@gaz>
-
Merge Jay.
- 1205. By Brian Aker <brian@gaz>
-
Remove dead function.
- 1206. By Brian Aker <brian@gaz>
-
Merging Jay.
- 1207. By Brian Aker <brian@gaz>
-
Merge of Padraig && Brian
- 1208. By Brian Aker <brian@gaz>
-
Merge Jay
- 1209. By Brian Aker <brian@gaz>
-
Merge Monty
- 1210. By Brian Aker <brian@gaz>
-
Merge new Truncate
- 1211. By Brian Aker <brian@gaz>
-
Reverses old patch which introduced memory leaks. Also found a solution
(worked on Fedora11) to get rid of dlerror() memory leak. - 1212. By Brian Aker <brian@gaz>
-
Rollup of Brian, Padraig, and Stewart patches.
- 1213. By Brian Aker <brian@gaz>
-
Fixes startup failures when temporary tables were left behind in a crash.
- 1214. By Brian Aker <brian@gaz>
-
Fixes leaked memory during a fail proto read.
- 1215. By Brian Aker <brian@gaz>
-
Jay's replication patches
- 1216. By Brian Aker <brian@gaz>
-
Fix for ENUM tests (commented out non-utf-8 tests).
- 1217. By Brian Aker <email address hidden>
-
Removed bits of charset support from the parser.
- 1218. By Brian Aker <brian@gaz>
-
Merge Eric
- 1219. By Brian Aker <brian@gaz>
-
Merge Stewart (test re-enable)
- 1220. By Brian Aker <brian@gaz>
-
Remove open mode/dead bits around dead temp type.
- 1221. By Brian Aker <brian@gaz>
-
Monty + Brian Merge.
- 1222. By Brian Aker <brian@gaz>
-
Merge Brian + Stewart
- 1223. By Brian Aker <brian@gaz>
-
Merge of Padraig
- 1224. By Brian Aker <brian@gaz>
-
Collected Merge.
- 1225. By Brian Aker <brian@gaz>
-
Merge for staging.
- 1226. By Brian Aker <brian@gaz>
-
Merge Monty
- 1227. By Brian Aker <brian@gaz>
-
Bundle Brian + Monty (been through staging, just collecting it as want
overall patch as seen by staging). - 1228. By Brian Aker <brian@gaz>
-
Mege of TableIdentifier gran patch
- 1229. By Brian Aker <brian@gaz>
-
Merge Jay
- 1230. By Brian Aker <brian@gaz>
-
Fix from Trond.
- 1231. By Brian Aker <brian@gaz>
-
Open Table list fix from Monty.
- 1232. By Brian Aker <brian@gaz>
-
Whitespace fix.
- 1233. By Brian Aker <brian@gaz>
-
Small Innodb fix
- 1234. By Brian Aker <brian@gaz>
-
Merge Padraig
- 1235. By Brian Aker <brian@gaz>
-
Merge of Brian + Jay test fixes.
- 1236. By Brian Aker <brian@gaz>
-
Merge Brian + Monty. This has the HEAP -> MEMORY change in it, so some
breakage for wrong table name is expected. - 1237. By Brian Aker <brian@gaz>
-
Merge current set for staging.
- 1238. By Brian Aker <brian@gaz>
-
Merge for staging.
- 1239. By Brian Aker <brian@gaz>
-
Bundle for staging.
- 1240. By Brian Aker <brian@gaz>
-
Merge Monty
- 1241. By Brian Aker <brian@gaz>
-
Merge build
- 1242. By Brian Aker <brian@gaz>
-
A few fixes.
- 1243. By Brian Aker <brian@gaz>
-
Merge of Padraig/Monty/Trond
- 1244. By Brian Aker <brian@gaz>
-
Fixed from Monty.
- 1245. By Brian Aker <brian@gaz>
-
Merge Jay
- 1246. By Brian Aker <brian@gaz>
-
MErge Padraig
- 1247. By Brian Aker <brian@gaz>
-
Merge from Padraig
- 1248. By Brian Aker <brian@gaz>
-
Merge from Dennis Schoen
- 1249. By Brian Aker <brian@gaz>
-
Merge Valgrind.
- 1250. By Brian Aker <brian@gaz>
-
Merge Monty
- 1251. By Brian Aker <brian@gaz>
-
Merging in massif option to test-run.pl
- 1252. By Brian Aker <brian@gaz>
-
Merge Jay
- 1253. By Brian Aker <brian@gaz>
-
Merge Monty
- 1254. By Brian Aker <brian@gaz>
-
Merge
- 1255. By Brian Aker <brian@gaz>
-
Merge Monty
- 1256. By Brian Aker <brian@gaz>
-
Null commit
- 1257. By Brian Aker <brian@gaz>
-
Merge of Diego fix.
- 1258. By Brian Aker <brian@gaz>
-
Merge Monty
- 1259. By Brian Aker <brian@gaz>
-
Merge Monty.
- 1260. By Brian Aker <brian@gaz>
-
Merge Monty.
- 1261. By Brian Aker <brian@gaz>
-
Merge Monty.
- 1262. By Brian Aker <brian@gaz>
-
Merge Monty
- 1263. By Brian Aker <brian@gaz>
-
Merge Monty
- 1264. By Brian Aker <brian@gaz>
-
Added merge-clean rule that I use :)
- 1265. By Brian Aker <brian@gaz>
-
Updated Makefile.am to push client rules to include.am
- 1266. By Brian Aker <brian@gaz>
-
Merge Stewart.
- 1267. By Brian Aker <brian@gaz>
-
Merge Joe
- 1268. By Brian Aker <brian@gaz>
-
Merge Monty
- 1269. By Brian Aker <brian@gaz>
-
Merge Joe Daly
- 1270. By Brian Aker <brian@gaz>
-
Merge Jay
- 1271. By Brian Aker <brian@gaz>
-
Merge Eric
- 1272. By Brian Aker <brian@gaz>
-
Merge Monty
- 1273. By Brian Aker <brian@gaz>
-
Revert db patch.
- 1274. By Brian Aker <brian@gaz>
-
Remove dead code.
- 1275. By Brian Aker <brian@gaz>
-
Merge rot13()
- 1276. By Brian Aker <brian@gaz>
-
Merge Padraig
- 1277. By Brian Aker <brian@gaz>
-
Merged Lee, enabled jp tests by default.
- 1278. By Brian Aker <brian@gaz>
-
Merge Jay
- 1279. By Brian Aker <brian@gaz>
-
Remove show engine status, and show open tables (which no longer applies in
our design). - 1280. By Brian Aker <brian@gaz>
-
Fix for bad build.
- 1281. By Brian Aker <brian@gaz>
-
Rollup of Brian, Jay
- 1282. By Brian Aker <brian@gaz>
-
Merge Lee
- 1283. By Brian Aker <brian@gaz>
-
Merge Monty
- 1284. By Brian Aker <brian@gaz>
-
Merge Monty
- 1285. By Brian Aker <brian@gaz>
-
Remove giant include header to its own file.
- 1286. By Brian Aker <brian@gaz>
-
Merge Monty.
- 1287. By Brian Aker <brian@gaz>
-
Merge Stewart.
- 1288. By Brian Aker <brian@gaz>
-
Adding support for RPM/merge Brian
- 1289. By Brian Aker <brian@gaz>
-
Merge of Brian/Padraig
- 1290. By Brian Aker <brian@gaz>
-
Merge bug fix.
- 1291. By Brian Aker <brian@gaz>
-
Merge Stewart.
- 1292. By Brian Aker <brian@gaz>
-
Merge in security refactor.
- 1293. By Brian Aker <brian@gaz>
-
Merge in Tim's error work.
- 1294. By Brian Aker <brian@gaz>
-
Merge Padraig
- 1295. By Brian Aker <brian@gaz>
-
Disabling support for memcached plugins until we can test for version of
memcached. - 1296. By Brian Aker <brian@gaz>
-
Remove WEIGHT_STRING() from parser (where it does not belong). If someone
wants to they can reimplement this as a straight function. - 1297. By Brian Aker <brian@gaz>
-
Fix style issue.
- 1298. By Brian Aker <brian@gaz>
-
Monty update for Pandora
- 1299. By Brian Aker <brian@gaz>
-
Merge.
- 1300. By Brian Aker <brian@gaz>
-
Merge in data_dictionary.
- 1301. By Brian Aker <brian@gaz>
-
Merge of Brian stuff
- 1302. By Brian Aker <brian@gaz>
-
Merge of dead yacc bits.
- 1303. By Brian Aker <brian@gaz>
-
Many updates. Brian, Monty.
- 1304. By Brian Aker <brian@gaz>
-
Giant merge! Of everything for DD currently.
- 1305. By Brian Aker <brian@gaz>
-
Merge.
- 1306. By Brian Aker <brian@gaz>
-
Merge JDaly, Lint fixes by brian.
- 1307. By Brian Aker <brian@gaz>
-
Merge Padraig.
- 1308. By Brian Aker <brian@gaz>
-
Merge of stewart.
- 1309. By Brian Aker <brian@gaz>
-
Merge of all patches in build.
- 1310. By Brian Aker <brian@gaz>
-
Merge Jay
- 1311. By Brian Aker <brian@gaz>
-
Merge Monty
- 1312. By Brian Aker <brian@gaz>
-
Merge of Brian
- 1313. By Brian Aker <brian@gaz>
-
Merge Brian
- 1314. By Brian Aker <brian@gaz>
-
Merge Padraig.
- 1315. By Brian Aker <brian@gaz>
-
MErge Strewart.
- 1316. By Brian Aker <brian@gaz>
-
Merge up build to staging.
- 1317. By Brian Aker <brian@gaz>
-
Merge.
- 1318. By Brian Aker <brian@gaz>
-
Merge Stewart.
- 1319. By Brian Aker <brian@gaz>
-
Merge.
- 1320. By Brian Aker <brian@gaz>
-
MErge.
- 1321. By Brian Aker <brian@gaz>
-
Merge.
- 1322. By Brian Aker <brian@gaz>
-
Merge Monty/Brian
- 1323. By Brian Aker <brian@gaz>
-
Merge Jay's bugfix.
- 1324. By Brian Aker <brian@gaz>
-
Merge Jay.
- 1325. By Brian Aker <brian@gaz>
-
Merge of Jay
- 1326. By Brian Aker <brian@gaz>
-
Merge Jay
- 1327. By Brian Aker <brian@gaz>
-
Open solaris fix.
- 1328. By Brian Aker <brian@gaz>
-
Bad config.h
- 1329. By Brian Aker <brian@gaz>
-
Merge Eric
- 1330. By Brian Aker <brian@gaz>
-
Merge in show status work.
- 1331. By Brian Aker <brian@gaz>
-
Merge in Padraig changes.
- 1332. By Brian Aker <brian@gaz>
-
Merge Monty
- 1333. By Brian Aker <brian@gaz>
-
Fix naming issue.
- 1334. By Brian Aker <brian@gaz>
-
Merge Lee.
- 1335. By Brian Aker <brian@gaz>
-
Merge Jay
- 1336. By Brian Aker <brian@gaz>
-
Merge Jay
- 1337. By Brian Aker <brian@gaz>
-
Mege Monty
- 1338. By Brian Aker <brian@gaz>
-
Merge in Jay's bug fix.
- 1339. By Brian Aker <brian@gaz>
-
Jay + extended test case.
- 1340. By Brian Aker <brian@gaz>
-
Merge small removal of variables.
- 1341. By Brian Aker <brian@gaz>
-
See if these are now cleaned up.
- 1342. By Brian Aker <brian@gaz>
-
Merge Brian
- 1343. By Brian Aker <brian@gaz>
-
Additional DD.
- 1344. By Brian Aker <brian@gaz>
-
Merge Brian
- 1345. By Brian Aker <brian@gaz>
-
Corrections.
- 1346. By Brian Aker <brian@gaz>
-
Solve non-null termination issue.
- 1347. By Brian Aker <brian@gaz>
-
Update/fix for leak.
- 1348. By Brian Aker <brian@gaz>
-
Merge Monty (really Tim)
- 1349. By Brian Aker <brian@gaz>
-
Merge Padraig
- 1350. By Brian Aker <brian@gaz>
-
Merge Brian
- 1351. By Brian Aker <brian@gaz>
-
Style changes.
- 1352. By Brian Aker <brian@gaz>
-
I'm not entire sure I buy that column default should be varbinary...
- 1353. By Brian Aker <brian@gaz>
-
Merge Stewart, but I dropped the plugin for now.
- 1354. By Brian Aker <brian@gaz>
-
Merge in I_S tables.
- 1355. By Brian Aker <brian@gaz>
-
Make check catch
- 1356. By Brian Aker <brian@gaz>
-
Merge for Brian
- 1357. By Brian Aker <brian@gaz>
-
Merge Eric.
- 1358. By Brian Aker <brian@gaz>
-
Merge Eric.
- 1359. By Brian Aker <brian@gaz>
-
Merge Pandora
- 1360. By Brian Aker <brian@gaz>
-
Merge Brian
- 1361. By Brian Aker <brian@gaz>
-
Merge more cleanup from TableIdentifier.
- 1362. By Brian Aker <brian@gaz>
-
Merge Brian
- 1363. By Brian Aker <brian@gaz>
-
Merge Brian
- 1364. By Brian Aker <brian@gaz>
-
Go at this again.
- 1365. By Brian Aker <brian@gaz>
-
Merge Stefan
- 1366. By Brian Aker <brian@gaz>
-
Merge Stewart.
- 1367. By Brian Aker <brian@gaz>
-
Merge
- 1368. By Brian Aker <brian@gaz>
-
Fix build issues, disabled tests (someone needs to go through them... who is
not me). - 1369. By Brian Aker <brian@gaz>
-
Small interface bits.
- 1370. By Brian Aker <brian@gaz>
-
Remove dead call.
- 1371. By Brian Aker <brian@gaz>
-
Small corrections.
- 1372. By Brian Aker <brian@gaz>
-
Save on an identifier creation.
- 1373. By Brian Aker <brian@gaz>
-
Simple style cleanup.
- 1374. By Brian Aker <brian@gaz>
-
Solaris fix.
- 1375. By Brian Aker <brian@gaz>
-
Merge Brian.
- 1376. By Brian Aker <brian@gaz>
-
Fix for goto that could be removed.
- 1377. By Brian Aker <brian@gaz>
-
Merge DED
- 1378. By Brian Aker <brian@gaz>
-
Fix for a path vs fullname connection.
- 1379. By Brian Aker <brian@gaz>
-
Merge docs.
- 1380. By Brian Aker <brian@gaz>
-
Merge to Trunk.
- 1381. By Brian Aker <brian@gaz>
-
Merge Monty.
- 1382. By Brian Aker <brian@gaz>
-
We were printing out info on charset (which we don't need to do... and don't
technically have the data for). - 1383. By Brian Aker <brian@gaz>
-
Change Set to Enum
- 1384. By Brian Aker <brian@gaz>
-
Merge
- 1385. By Brian Aker <brian@gaz>
-
Merge bug fix.
- 1386. By Brian Aker <brian@gaz>
-
Adding catalog string.
- 1387. By Brian Aker <brian@gaz>
-
Fix for cases where not all files are removed during a deletion of a schema.
I've added a dump of the directory if this happens (I want to see this in
the valgrind reports on lp). - 1388. By Brian Aker <brian@gaz>
-
The temporary engine can handle its own for dictionary calls.
- 1389. By Brian Aker <brian@gaz>
-
Large reord in ALTER TABLE for RENAME.
- 1390. By Brian Aker <brian@gaz>
-
Update interface to use Identifiers directly.
- 1391. By Brian Aker <brian@gaz>
-
Updating interface.
- 1392. By Brian Aker <brian@gaz>
-
new code for show tables.
- 1393. By Brian Aker <brian@gaz>
-
Merge Monty
- 1394. By Brian Aker <brian@gaz>
-
Merge Monty
- 1395. By Brian Aker <brian@gaz>
-
Merge.
- 1396. By Brian Aker <brian@gaz>
-
Simple rename.
- 1397. By Brian Aker <brian@gaz>
-
Merge Monty
- 1398. By Brian Aker <brian@gaz>
-
Merge monty
- 1399. By Brian Aker <brian@gaz>
-
Merge Monty
- 1400. By Brian Aker <brian@gaz>
-
Merge.
- 1401. By Brian Aker <brian@gaz>
-
Merge of ALTER TABLE code.
- 1402. By Brian Aker <brian@gaz>
-
Re-enabling blackhole.
- 1403. By Brian Aker <brian@gaz>
-
Merge Eric
- 1404. By Brian Aker <brian@gaz>
-
Merge.
- 1405. By Brian Aker <brian@gaz>
-
Merge stewart.
- 1406. By Brian Aker <email address hidden>
-
Merge Andrew
- 1407. By Brian Aker <email address hidden>
-
Merge Siddharth, ran formatting across it.
Someone really should take these programs apart and clean them up.
- 1408. By Brian Aker <email address hidden>
-
Merge Monty
- 1409. By Brian Aker <email address hidden>
-
MErge Eric.
- 1410. By Brian Aker <email address hidden>
-
Correct output, preserve indention.
- 1411. By Brian Aker <brian@gaz>
-
Merge (fixes known issues in ALTER TABLE not resetting correctly DFE).
- 1412. By Brian Aker <brian@gaz>
-
Innodb is now in the house (aka... it handls its own DFE).
- 1413. By Brian Aker <brian@gaz>
-
doCreateTable() was still taking a pointer instead of a session reference.
- 1414. By Brian Aker <brian@gaz>
-
Remove dead type.
- 1415. By Brian Aker <brian@gaz>
-
Mass overhaul to use schema_identifier.
- 1416. By Brian Aker <brian@gaz>
-
Merge Lee.
- 1417. By Brian Aker <brian@gaz>
-
Interface for Stewart.
- 1418. By Brian Aker <brian@gaz>
-
Merge Monty's fix.
- 1419. By Brian Aker <brian@gaz>
-
Merge.
- 1420. By Brian Aker <brian@gaz>
-
Updated to use show schemas specific table.
- 1421. By Brian Aker <brian@gaz>
-
Removed dead function.
- 1422. By Brian Aker <brian@gaz>
-
Merge from Monty.
- 1423. By Brian Aker <brian@gaz>
-
Merge linuxjedi
- 1424. By Brian Aker <brian@gaz>
-
Merge Stewart.
- 1425. By Brian Aker <brian@gaz>
-
Merge Siddharth
- 1426. By Brian Aker <brian@gaz>
-
Merge jobin
- 1427. By Brian Aker <brian@gaz>
-
Merge Monty
- 1428. By Brian Aker <brian@gaz>
-
Merge.
- 1429. By Brian Aker <brian@gaz>
-
Merge
- 1430. By Brian Aker <brian@gaz>
-
Merge Zimin
- 1431. By Brian Aker <brian@gaz>
-
Merge Stewart.
- 1432. By Brian Aker <brian@gaz>
-
Merge Siddharth
- 1433. By Brian Aker <brian@gaz>
-
Merge.
- 1434. By Brian Aker <brian@gaz>
-
Rework to move show commands merge/etc.
- 1435. By Brian Aker <brian@gaz>
-
Merge Monty fix.
- 1436. By Brian Aker <brian@gaz>
-
Move toward not having to call current_session (first pass).
- 1437. By Brian Aker <brian@gaz>
-
Merge.
- 1438. By Brian Aker <brian@gaz>
-
Merge
- 1439. By Brian Aker <brian@gaz>
-
Fix for bad header.
- 1440. By Brian Aker <brian@gaz>
-
Merge.
- 1441. By Brian Aker <brian@gaz>
-
Fixing tests to work with PBXT.
- 1442. By Brian Aker <brian@gaz>
-
Merge Jay
- 1443. By Brian Aker <brian@gaz>
-
Merge Jay
- 1444. By Brian Aker <brian@gaz>
-
Merge Stewart.
- 1445. By Brian Aker <brian@gaz>
-
Update for most recent version of libmemcached
- 1446. By Brian Aker <brian@gaz>
-
Merge Jay
- 1447. By Brian Aker <brian@gaz>
-
Test fix
- 1448. By Brian Aker <brian@gaz>
-
Fix for bug on show tables.:w
:x - 1449. By Brian Aker <brian@gaz>
-
Merge Stewart
- 1450. By Brian Aker <brian@gaz>
-
Merge Jay
- 1451. By Brian Aker <brian@gaz>
-
Merge Eric
- 1452. By Brian Aker <brian@gaz>
-
Remove dead code Merge from Tim.
- 1453. By Brian Aker <brian@gaz>
-
Merge Joe
- 1454. By Brian Aker <brian@gaz>
-
Merge Monty
- 1455. By Brian Aker <brian@gaz>
-
Null merge
- 1456. By Brian Aker <brian@gaz>
-
Merge in remove checksum code.
- 1457. By Brian Aker <brian@gaz>
-
Commit.
- 1458. By Brian Aker <brian@gaz>
-
Merge Joe
- 1459. By Brian Aker <brian@gaz>
-
Merge Monty
- 1460. By Brian Aker <brian@gaz>
-
Seeing static effects valgrind output
- 1461. By Brian Aker <brian@gaz>
-
Merge version requirement
- 1462. By Brian Aker <brian@gaz>
-
Merge PBXT
- 1463. By Brian Aker <brian@gaz>
-
Merge change to load by default
- 1464. By Brian Aker <brian@gaz>
-
Merge Jay
- 1465. By Brian Aker <brian@gaz>
-
Merge
- 1466. By Brian Aker <brian@gaz>
-
Merge
- 1467. By Brian Aker <brian@gaz>
-
Merge.
- 1468. By Brian Aker <brian@gaz>
-
Fix
- 1469. By Brian Aker <brian@gaz>
-
Stored.
- 1470. By Brian Aker <brian@gaz>
-
Merge of Monty
- 1471. By Brian Aker <brian@gaz>
-
Merge Monty
- 1472. By Brian Aker <brian@gaz>
-
Testing bug fix
- 1473. By Brian Aker <brian@gaz>
-
Merge docs
- 1474. By Brian Aker <brian@gaz>
-
Merge Jay
- 1475. By Brian Aker <brian@gaz>
-
Merge Stewart.
- 1476. By Brian Aker <brian@gaz>
-
Merge Monty
- 1477. By Brian Aker <brian@gaz>
-
Merge Monty
- 1478. By Brian Aker <brian@gaz>
-
Merge Paul
- 1479. By Brian Aker <brian@gaz>
-
Merge Monty
- 1480. By Brian Aker <brian@gaz>
-
Merge range.
- 1481. By Brian Aker <brian@gaz>
-
Remove dead code.
- 1482. By Brian Aker <brian@gaz>
-
Remove dead index call.
- 1483. By Brian Aker <brian@gaz>
-
Small change to move over call to cursor API.
- 1484. By Brian Aker <brian@gaz>
-
Use typdef for SessionList
- 1485. By Brian Aker <brian@gaz>
-
Updates to confine memroot
- 1486. By Brian Aker <brian@gaz>
-
More encapsulation.
- 1487. By Brian Aker <brian@gaz>
-
More updates for memory::Root
- 1488. By Brian Aker <brian@gaz>
-
Small bug fix for when make_field lacks a mem_root.
- 1489. By Brian Aker <brian@gaz>
-
Fix for bad manual-gdb (merged from Monty)
- 1490. By Brian Aker <brian@gaz>
-
Updates to remove a fe bits of dead code around C support for plugins
written only in C. - 1491. By Brian Aker <brian@gaz>
-
Remove call bits in dead mrr caller.
- 1492. By Brian Aker <brian@gaz>
-
Dead code removal.
- 1493. By Brian Aker <brian@gaz>
-
Remove dead call around "fixing" case where MRR lacked buffer.
- 1494. By Brian Aker <brian@gaz>
-
Remove usage of multi_malloc
- 1495. By Brian Aker <brian@gaz>
-
Updates to remove multi_malloc()
- 1496. By Brian Aker <brian@gaz>
-
Dead code pull
- 1497. By Brian Aker <brian@gaz>
-
Small fixes, remove malloc usage in share creation.
- 1498. By Brian Aker <brian@gaz>
-
Merge Monty
- 1499. By Brian Aker <brian@gaz>
-
Merge up Padraig
- 1500. By Brian Aker <brian@gaz>
-
Fix for PPC
- 1501. By Brian Aker <brian@gaz>
-
Merge Jay
- 1502. By Brian Aker <brian@gaz>
-
Merge in heap != myisam
- 1503. By Brian Aker <brian@gaz>
-
Merge Brian
- 1504. By Brian Aker <brian@gaz>
-
Fixes for "big" suite.
- 1505. By Brian Aker <brian@gaz>
-
Merge Jay
- 1506. By Brian Aker <brian@gaz>
-
encapsulate engine inside of cursor.
- 1507. By Brian Aker <brian@gaz>
-
Small cleanup on handler
- 1508. By Brian Aker <brian@gaz>
-
Fix for PBXT build issue
- 1509. By Brian Aker <brian@gaz>
-
Merge Monty
- 1510. By Brian Aker <brian@gaz>
-
Merge Monty
- 1511. By Brian Aker <brian@gaz>
-
This should be dead code, but I am going to see if that was the case.
- 1512. By Brian Aker <brian@gaz>
-
Merge of Paul. All PBXT related changes.
- 1513. By Brian Aker <brian@gaz>
-
This patch reverts the ROR change which created a memory leak (bzr diff -r 1294..1293)
- 1514. By Brian Aker <brian@gaz>
-
Merge Joe
- 1515. By Brian Aker <brian@gaz>
-
Merge Monty
- 1516. By Brian Aker <brian@gaz>
-
Merge of Sanders (iocache macro to inline).
- 1517. By Brian Aker <brian@gaz>
-
Merge Paul's latest PBXT (includes version 1.1)
- 1518. By Brian Aker <brian@gaz>
-
Merge Monty -> cppcheck changes, plus change to deleteTable
- 1519. By Brian Aker <brian@gaz>
-
Merge Eric. This changed options such that = is now interpreted from last, not first
- 1520. By Brian Aker <brian@gaz>
-
Merge Monty
- 1521. By Brian Aker <brian@gaz>
-
Merge Eric
- 1522. By Brian Aker <brian@gaz>
-
MErge Paul. PBXT only
- 1523. By Brian Aker <brian@gaz>
-
Merge joe.
- 1524. By Brian Aker <brian@gaz>
-
Merge name changes
- 1525. By Brian Aker <brian@gaz>
-
Merge for command line app struct conversion
- 1526. By Brian Aker <brian@gaz>
-
Merge in modifications to make TableShare and actual object.
Crazy.
- 1527. By Brian Aker <brian@gaz>
-
Merge Monty.
- 1528. By Brian Aker <brian@gaz>
-
Merge of TableShare keynames typelib removal.
- 1529. By Brian Aker <brian@gaz>
-
MErge Monty (this includes Innodb fix for Stewart).
- 1530. By Brian Aker <brian@gaz>
-
Merge Stewart, this increases the max size of indexed columns.
- 1531. By Brian Aker <brian@gaz>
-
Rollup merge for typelib/tableshare cleanup.
- 1532. By Brian Aker <brian@gaz>
-
just remove entirely the need for fieldnames.
- 1533. By Brian Aker <brian@gaz>
-
Merge in key/pair for engine.
- 1534. By Brian Aker <brian@gaz>
-
Remove of KeyPartInfo
- 1535. By Brian Aker <brian@gaz>
-
Rename of KEY to KeyInfo
- 1536. By Brian Aker <brian@gaz>
-
Merge Stewart Innodb only.
- 1537. By Brian Aker <brian@gaz>
-
Remove dead options/rename Option and remove the update that we no longer
use. - 1538. By Brian Aker <brian@gaz>
-
Code shuffle on ReadRecord
- 1539. By Brian Aker <brian@gaz>
-
Simplify out Open_tables_state() backup/restore (no longer needed).
- 1540. By Brian Aker <brian@gaz>
-
Merge. Rename of JoinCache, ReadRecords, and a fix for Hades for stewart's
embedded work. - 1541. By Brian Aker <brian@gaz>
-
Merge of overall patch for TableShare new() work.
- 1542. By Brian Aker <brian@gaz>
-
Merge (rename of JOIN to Join)
- 1543. By Brian Aker <brian@gaz>
-
Merge Monty
- 1544. By Brian Aker <brian@gaz>
-
Merge of events
- 1545. By Brian Aker <brian@gaz>
-
Fix for table -> table_share call.
- 1546. By Brian Aker <brian@gaz>
-
Merge of Joe's patch (and I updated the author file to include his name as
well). - 1547. By Brian Aker <brian@gaz>
-
This fixes a bug where we did a full open for a temporary table for CREATE
TABLE LIKE when all we really needed to do was look at the definition.BTW I realized this bug while looking at placeholders and seeing that one
was somehow being reused for a temporary table. We don't have nearly enough
logic in the system to correctly make sure that placeholders do not get
recycled (though they should not be). - 1548. By Brian Aker <brian@gaz>
-
Merge Patrick
- 1549. By Brian Aker <brian@gaz>
-
Fix for misspelling.
- 1550. By Brian Aker <brian@gaz>
-
Remove dead define.
- 1551. By Brian Aker <brian@gaz>
-
This fixes the issue with filesort() possibly crashing on a Function based
table. - 1552. By Brian Aker <brian@gaz>
-
It is somewhat amazing that EXPLAIN works at all (too many myisam assumptions)
- 1553. By Brian Aker <brian@gaz>
-
Merge Brian, includes work to move all TableShare to being newed, introduced
placeholder to be used for placeholders. This also includes a number of bug
fixes. - 1554. By Brian Aker <brian@gaz>
-
Merge for auto increment bug.
- 1555. By Brian Aker <brian@gaz>
-
Merge Joe, stats.
- 1556. By Brian Aker <brian@gaz>
-
Merge Monty
- 1557. By Brian Aker <brian@gaz>
-
Confirmation for bug fix.
- 1558. By Brian Aker <brian@gaz>
-
Merge Paul's work to use TableShare
- 1559. By Brian Aker <brian@gaz>
-
Merge of temp directory change.
- 1560. By Brian Aker <brian@gaz>
-
Merge Monty (pandora).
- 1561. By Brian Aker <brian@gaz>
-
Merge of tmp files cleanup.
- 1562. By Brian Aker <brian@gaz>
-
Merge Joe's scheduler fix
- 1563. By Brian Aker <brian@gaz>
-
Merge Hartmut
- 1564. By Brian Aker <brian@gaz>
-
Merge Translations
- 1565. By Brian Aker <brian@gaz>
-
Merge Patrick
- 1566. By Brian Aker <brian@gaz>
-
This fixes the issue where a tmp file might still exist once Innodb has
finished an alter table. - 1567. By Brian Aker <brian@gaz>
-
Remove restriction on schemas named temporary.
- 1568. By Brian Aker <brian@gaz>
-
Merge of Brian, Paul. PBXT compile issue, and test framework cleanup.
- 1569. By Brian Aker <brian@gaz>
-
Merge of Joe
- 1570. By Brian Aker <brian@gaz>
-
Clean up message for compression failure.
- 1571. By Brian Aker <brian@gaz>
-
Merge Stewart.
- 1572. By Brian Aker <brian@gaz>
-
Merge of Stewart.
- 1573. By Brian Aker <brian@gaz>
-
Merge Monty, just a note for freebsd during configure.
- 1574. By Brian Aker <brian@gaz>
-
Rollup patch for hiding tableshare.
- 1575. By Brian Aker <brian@gir>
-
First part, remove pack flags.
- 1576. By Brian Aker <brian@gir>
-
Remove pack flag from Create.
- 1577. By Brian Aker <brian@gir>
-
Next bit of pack removal (this removes it from where we store it).
- 1578. By Brian Aker <brian@gir>
-
Merge Brian
- 1579. By Monty Taylor
-
Merged in pthread atomics unittests and archive_reader
boost::program_ options, with build fixes for solaris. - 1580. By Brian Aker <brian@gaz>
-
MErge VJ
- 1581. By Monty Taylor
-
Merged in update of drizzleslap build warning suppression.
- 1582. By Brian Aker <brian@gaz>
-
Merge auth_ldap information.
- 1583. By Brian Aker <brian@gaz>
-
Merge in Stewart's Embedded work.
- 1584. By Brian Aker <brian@gaz>
-
Fix for compiler warning.
- 1585. By Brian Aker <brian@gaz>
-
Merge Brian, mostly encapsulation around TableShare.
- 1586. By Monty Taylor
-
Merged in atomic unittest expansion.
- 1587. By Monty Taylor
-
Mereged fix of InnoDB autoincrement behavior.
- 1588. By Monty Taylor
-
Fixed solaris build issue.
- 1589. By Brian Aker <brian@gaz>
-
Merge row.
- 1590. By Brian Aker <brian@gaz>
-
Merge Stewart.
- 1591. By Brian Aker <brian@gaz>
-
Small bits of field abstraction.
- 1592. By Brian Aker <brian@gaz>
-
Merge for getTable() to have its own getField.* type methods.
- 1593. By Brian Aker <brian@gaz>
-
Merge in Barry.
- 1594. By Brian Aker <brian@gaz>
-
Merge Stewart.
- 1595. By Brian Aker <brian@gaz>
-
Merge Stewart.
- 1596. By Brian Aker <brian@gaz>
-
rand() merge from Stewart.
- 1597. By Brian Aker <brian@gaz>
-
Merge Monty
- 1598. By Brian Aker <brian@gaz>
-
NULL Merge.
- 1599. By Brian Aker <brian@gaz>
-
Merge Andrew.
- 1600. By Brian Aker <brian@gaz>
-
Rollup patch. Mainly has current_session removed.
- 1601. By Brian Aker <brian@gaz>
-
Move functions to class methods.
- 1602. By Brian Aker <brian@gaz>
-
Update for current_session removal.
- 1603. By Brian Aker <brian@gaz>
-
Remove current_session from usage in table stats logging.
- 1604. By Brian Aker <brian@gaz>
-
REmove current_session for heap, show temp
- 1605. By Brian Aker <brian@gaz>
-
Remove current_session from myisam.
- 1606. By Brian Aker <brian@gaz>
-
datetime was still allowing an alter table with an invalid date.
- 1607. By Brian Aker <brian@gaz>
-
Cursor now fully handles the update to timestamp for the engine.
- 1608. By Brian Aker <brian@gaz>
-
This encapsulates prev/next.
- 1609. By Brian Aker <brian@gaz>
-
Rollup merge.
- 1610. By Brian Aker <brian@gaz>
-
Merge in some recent changes to tableshare.
- 1611. By Brian Aker <brian@gaz>
-
MErge up CSV.
- 1612. By Brian Aker <brian@gaz>
-
Merge Monty
- 1613. By Brian Aker <brian@gaz>
-
Fix solaris warning.
- 1614. By Brian Aker <brian@gaz>
-
Merge Joe
- 1615. By Brian Aker <brian@gaz>
-
MErge VJ
- 1616. By Brian Aker <brian@gaz>
-
Discovery that create table like was not going through replication path
correctly. - 1617. By Brian Aker <brian@gaz>
-
Merge Joe.
- 1618. By Brian Aker <brian@gaz>
-
This is a rollup set of patches for modifications to TableIdentifier to have
a getKey() which is now used for open_cache and table_share_def cache. This
also includes additional unittests on TableIdentifier, and makes use of some
cleanup, though not perfect, to TableShare for its contructors. - 1619. By Monty Taylor
-
Added include.
- 1620. By Monty Taylor
-
Merged Pawel from lp:~pblokus/drizzle/unittests-plugin-interfaces
- 1621. By Monty Taylor
-
Fixed a missing make distcheck entry.
- 1622. By Monty Taylor
-
Merged Joe Daly from lp:~skinny.moey/drizzle/fix_global_stats
- 1623. By Monty Taylor
-
Fixed a non-initialized issue on OSX.
- 1624. By Monty Taylor
-
Merged Vijay's refactoring of drizzletest from
lp:~vjsamuel/drizzle/refactor-drizzletest - 1625. By Monty Taylor
-
Merged Brian's TableShare key usage from lp:~brianaker/drizzle/tableshare-key
- 1626. By Monty Taylor
-
Merged in BlitzDB.
- 1627. By Monty Taylor
-
Killed a valgrind warning that had snuck in.
- 1628. By Monty Taylor
-
Rollup patch featuring: boost::
program_ options support for plugins, a
valgrind fix, a bugfix for password processing and a few build fixes. - 1629. By Monty Taylor
-
Merged in Brian's const TableIdentifiter work.
- 1630. By Monty Taylor
-
Added sleep call to try to avoid the spurrious socket errors on freebsd.
- 1631. By Monty Taylor
-
Fixed the OSX build. Again.
- 1632. By Monty Taylor
-
Undid attempt at fixing sporadic freebsd issue.
- 1633. By Monty Taylor
-
Merge of Patrick's schema_dictionary test changes, Stewart's HA Status
variable move and more module program_options work. - 1634. By Monty Taylor
-
Merge of the last bits of program_options plugin module integration:
printing help messages. - 1635. By Brian Aker <brian@gaz>
-
Merge up of Brian to trunk. Mainly work on ha_open, and some current_session
work. - 1636. By Brian Aker <brian@gaz>
-
Merge in work for count_cuted_fields
- 1637. By Brian Aker <brian@gaz>
-
Merge in changes to call error on bad data input.
- 1638. By Monty Taylor
-
Fixes from Brian to increase strictness/
correctness, Toru to remove
current_session from blitzdb, a race condition bugfix from Joe Daly,
and moving of when plugins call program_options from Monty. - 1639. By Monty Taylor
-
Merged in staging changes: Mark's syslog patch and vijay's program_options.
Unmerged revisions
Preview Diff
1 | === modified file '.bzrignore' |
2 | --- .bzrignore 2009-07-29 17:45:51 +0000 |
3 | +++ .bzrignore 2009-09-09 00:38:19 +0000 |
4 | @@ -274,3 +274,5 @@ |
5 | po/POTFILES.in |
6 | drizzled/message/command_reader |
7 | TAGS |
8 | +*replication.pb.* |
9 | +drizzled/message/table_raw_reader |
10 | |
11 | === modified file 'Makefile.am' |
12 | --- Makefile.am 2009-08-07 19:45:29 +0000 |
13 | +++ Makefile.am 2009-09-09 00:38:19 +0000 |
14 | @@ -146,7 +146,6 @@ |
15 | mysys/mf_sort.cc \ |
16 | mysys/mf_tempfile.cc \ |
17 | mysys/mf_wcomp.cc \ |
18 | - mysys/mulalloc.cc \ |
19 | mysys/my_access.cc \ |
20 | mysys/my_alloc.cc \ |
21 | mysys/my_bit.cc \ |
22 | @@ -286,23 +285,6 @@ |
23 | mv $@-t $@ ; \ |
24 | fi |
25 | |
26 | -if HAVE_LCOV |
27 | - |
28 | -lcov: lcov-clean test lcov/index.html |
29 | - |
30 | -lcov/drizzle.output: drizzled/drizzled |
31 | - mkdir -p lcov |
32 | - ${LCOV} --directory ${top_srcdir}/lcov --capture --output-file lcov/drizzle.output |
33 | - |
34 | -lcov/index.html: lcov/drizzle.output |
35 | - ${GENHTML} -o lcov lcov/drizzle.output |
36 | - |
37 | -lcov-clean: |
38 | - ln -fs pars/pars0lex.l ${top_srcdir}/storage/innobase/pars0lex.l |
39 | - ln -fs pars/lexyy.c ${top_srcdir}/storage/innobase/lexyy.c |
40 | - ln -fs pars/pars0grm.c ${top_srcdir}/storage/innobase/pars0grm.c |
41 | - ln -fs pars/pars0grm.y ${top_srcdir}/storage/innobase/pars0grm.y |
42 | - |
43 | - ${LCOV} --directory ${top_srcdir} --zerocounters |
44 | - |
45 | -endif |
46 | +clean-local: |
47 | + find . -name '*.gcno' -exec rm -f {} \; |
48 | + |
49 | |
50 | === modified file 'client/client_priv.h' |
51 | --- client/client_priv.h 2009-04-17 21:01:47 +0000 |
52 | +++ client/client_priv.h 2009-09-09 00:38:19 +0000 |
53 | @@ -14,23 +14,25 @@ |
54 | Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA */ |
55 | |
56 | /* Common defines for all clients */ |
57 | - |
58 | -#include <drizzled/global.h> |
59 | +#ifndef CLIENT_CLIENT_PRIV_H |
60 | +#define CLIENT_CLIENT_PRIV_H |
61 | + |
62 | +#include "config.h" |
63 | + |
64 | +#include CSTDINT_H |
65 | +#include CINTTYPES_H |
66 | + |
67 | +#include <cstdio> |
68 | +#include <cassert> |
69 | +#include <ctime> |
70 | + |
71 | +#include <fcntl.h> |
72 | + |
73 | #include <libdrizzle/drizzle_client.h> |
74 | -#include <mysys/my_getopt.h> |
75 | |
76 | +#include "mysys/my_getopt.h" |
77 | #include "client/get_password.h" |
78 | |
79 | -#if TIME_WITH_SYS_TIME |
80 | -# include <sys/time.h> |
81 | -# include <time.h> |
82 | -#else |
83 | -# if HAVE_SYS_TIME_H |
84 | -# include <sys/time.h> |
85 | -# else |
86 | -# include <time.h> |
87 | -# endif |
88 | -#endif |
89 | |
90 | enum options_client |
91 | { |
92 | @@ -93,3 +95,5 @@ |
93 | OPT_MAX_CLIENT_OPTION, |
94 | OPT_SHOW_PROGRESS_SIZE |
95 | }; |
96 | + |
97 | +#endif /* CLIENT_CLIENT_PRIV_H */ |
98 | |
99 | === modified file 'client/drizzle.cc' |
100 | --- client/drizzle.cc 2009-07-20 18:10:47 +0000 |
101 | +++ client/drizzle.cc 2009-09-09 00:38:19 +0000 |
102 | @@ -34,17 +34,13 @@ |
103 | **/ |
104 | |
105 | #include "client_priv.h" |
106 | -#include <string> |
107 | -#include <algorithm> |
108 | -#include <mystrings/m_ctype.h> |
109 | -#include <stdarg.h> |
110 | -#include "client/linebuffer.h" |
111 | -#include <signal.h> |
112 | + |
113 | +#include <cstdarg> |
114 | +#include <csignal> |
115 | #include <sys/ioctl.h> |
116 | -#include <drizzled/configmake.h> |
117 | |
118 | #if defined(HAVE_CURSES_H) && defined(HAVE_TERM_H) |
119 | -#include <curses.h> |
120 | +# include <curses.h> |
121 | #ifdef __sun |
122 | #undef clear |
123 | #undef erase |
124 | @@ -71,6 +67,7 @@ |
125 | #endif |
126 | #endif |
127 | #endif |
128 | +#include <cmath> |
129 | |
130 | #ifdef HAVE_LIBREADLINE |
131 | # if defined(HAVE_READLINE_READLINE_H) |
132 | @@ -99,6 +96,18 @@ |
133 | /* no history */ |
134 | #endif /* HAVE_READLINE_HISTORY */ |
135 | |
136 | +#include <clocale> |
137 | +#include <string> |
138 | +#include <algorithm> |
139 | +#include <iostream> |
140 | +#include <map> |
141 | + |
142 | +#include "mystrings/m_ctype.h" |
143 | +#include "client/linebuffer.h" |
144 | +#include "drizzled/configmake.h" |
145 | +#include "drizzled/gettext.h" |
146 | + |
147 | + |
148 | #define DRIZZLE_DEFAULT_INPUT_LINE 65536 |
149 | |
150 | /** |
151 | @@ -111,25 +120,12 @@ |
152 | completion_matches((char *)str, (CPFunction *)func) |
153 | #endif |
154 | |
155 | -#if defined(HAVE_LOCALE_H) |
156 | -#include <locale.h> |
157 | -#endif |
158 | - |
159 | -#include <drizzled/gettext.h> |
160 | - |
161 | - |
162 | -void* sql_alloc(unsigned size); // Don't use drizzled alloc for these |
163 | -void sql_element_free(void *ptr); |
164 | - |
165 | |
166 | #if !defined(HAVE_VIDATTR) |
167 | #undef vidattr |
168 | #define vidattr(A) {} // Can't get this to work |
169 | #endif |
170 | |
171 | -#include <iostream> |
172 | -#include <map> |
173 | - |
174 | using namespace std; |
175 | |
176 | const string VER("14.14"); |
177 | @@ -1144,8 +1140,6 @@ |
178 | |
179 | int main(int argc,char *argv[]) |
180 | { |
181 | - char buff[80]; |
182 | - |
183 | #if defined(ENABLE_NLS) |
184 | # if defined(HAVE_LOCALE_H) |
185 | setlocale(LC_ALL, ""); |
186 | @@ -1317,10 +1311,9 @@ |
187 | sprintf(histfile_tmp, "%s.TMP", histfile); |
188 | } |
189 | } |
190 | - sprintf(buff, "%s", |
191 | - _("Type 'help;' or '\\h' for help. Type '\\c' to clear the buffer.\n")); |
192 | |
193 | - put_info(buff,INFO_INFO,0,0); |
194 | + put_info(_("Type 'help;' or '\\h' for help. " |
195 | + "Type '\\c' to clear the buffer.\n"),INFO_INFO,0,0); |
196 | status.exit_status= read_and_execute(!status.batch); |
197 | if (opt_outfile) |
198 | end_tee(); |
199 | @@ -1570,12 +1563,12 @@ |
200 | {"select_limit", OPT_SELECT_LIMIT, |
201 | N_("Automatic limit for SELECT when using --safe-updates"), |
202 | (char**) &select_limit, |
203 | - (char**) &select_limit, 0, GET_UINT32, REQUIRED_ARG, 1000L, 1, ULONG_MAX, |
204 | + (char**) &select_limit, 0, GET_UINT32, REQUIRED_ARG, 1000L, 1, UINT32_MAX, |
205 | 0, 1, 0}, |
206 | {"max_join_size", OPT_MAX_JOIN_SIZE, |
207 | N_("Automatic limit for rows in a join when using --safe-updates"), |
208 | (char**) &max_join_size, |
209 | - (char**) &max_join_size, 0, GET_UINT32, REQUIRED_ARG, 1000000L, 1, ULONG_MAX, |
210 | + (char**) &max_join_size, 0, GET_UINT32, REQUIRED_ARG, 1000000L, 1, UINT32_MAX, |
211 | 0, 1, 0}, |
212 | {"secure-auth", OPT_SECURE_AUTH, N_("Refuse client connecting to server if it uses old (pre-4.1.1) protocol"), (char**) &opt_secure_auth, |
213 | (char**) &opt_secure_auth, 0, GET_BOOL, NO_ARG, 0, 0, 0, 0, 0, 0}, |
214 | @@ -1772,7 +1765,8 @@ |
215 | case 'B': |
216 | status.batch= 1; |
217 | status.add_to_history= 0; |
218 | - set_if_bigger(opt_silent,1); // more silent |
219 | + if (opt_silent < 1) |
220 | + opt_silent= 1; |
221 | break; |
222 | case 'V': |
223 | usage(1); |
224 | @@ -1986,7 +1980,7 @@ |
225 | bool *ml_comment) |
226 | { |
227 | unsigned char inchar; |
228 | - char buff[80], *pos, *out; |
229 | + char *pos, *out; |
230 | COMMANDS *com; |
231 | bool need_space= 0; |
232 | bool ss_comment= 0; |
233 | @@ -2076,8 +2070,12 @@ |
234 | } |
235 | else |
236 | { |
237 | - sprintf(buff,_("Unknown command '\\%c'."),inchar); |
238 | - if (put_info(buff,INFO_ERROR,0,0) > 0) |
239 | + string buff(_("Unknown command: ")); |
240 | + buff.push_back('\''); |
241 | + buff.push_back(inchar); |
242 | + buff.push_back('\''); |
243 | + buff.push_back('.'); |
244 | + if (put_info(buff.c_str(),INFO_ERROR,0,0) > 0) |
245 | return(1); |
246 | *out++='\\'; |
247 | *out++=(char) inchar; |
248 | @@ -2544,36 +2542,9 @@ |
249 | completion_iter= completion_map.begin(); |
250 | } |
251 | |
252 | -/* for gnu readline */ |
253 | - |
254 | -#ifndef HAVE_INDEX |
255 | -extern "C" { |
256 | - extern char *index(const char *,int c),*rindex(const char *,int); |
257 | - |
258 | - char *index(const char *s,int c) |
259 | - { |
260 | - for (;;) |
261 | - { |
262 | - if (*s == (char) c) return (char*) s; |
263 | - if (!*s++) return NULL; |
264 | - } |
265 | - } |
266 | - |
267 | - char *rindex(const char *s,int c) |
268 | - { |
269 | - register char *t; |
270 | - |
271 | - t = NULL; |
272 | - do if (*s == (char) c) t = (char*) s; while (*s++); |
273 | - return (char*) t; |
274 | - } |
275 | -} |
276 | -#endif |
277 | - |
278 | |
279 | static int reconnect(void) |
280 | { |
281 | - /* purecov: begin tested */ |
282 | if (opt_reconnect) |
283 | { |
284 | put_info(_("No connection. Trying to reconnect..."),INFO_INFO,0,0); |
285 | @@ -2583,7 +2554,6 @@ |
286 | } |
287 | if (!connected) |
288 | return put_info(_("Can't connect to the server\n"),INFO_ERROR,0,0); |
289 | - /* purecov: end */ |
290 | return 0; |
291 | } |
292 | |
293 | @@ -3624,7 +3594,7 @@ |
294 | else |
295 | { |
296 | /* Quick re-connect */ |
297 | - opt_rehash= 0; /* purecov: tested */ |
298 | + opt_rehash= 0; |
299 | } |
300 | // command used |
301 | assert(buffer!=NULL); |
302 | |
303 | === modified file 'client/drizzledump.cc' |
304 | --- client/drizzledump.cc 2009-07-11 02:27:48 +0000 |
305 | +++ client/drizzledump.cc 2009-09-09 00:38:19 +0000 |
306 | @@ -35,8 +35,8 @@ |
307 | #include <mysys/my_sys.h> |
308 | #include <mystrings/m_string.h> |
309 | #include <mystrings/m_ctype.h> |
310 | -#include <mysys/hash.h> |
311 | -#include <stdarg.h> |
312 | +#include "drizzled/hash.h" |
313 | +#include <cstdarg> |
314 | #include <algorithm> |
315 | |
316 | #include <drizzled/gettext.h> |
317 | @@ -163,16 +163,20 @@ |
318 | (1<<6) | /* MAXDB */\ |
319 | (1<<10) /* ANSI */\ |
320 | ) |
321 | -TYPELIB compatible_mode_typelib= {array_elements(compatible_mode_names) - 1, |
322 | - "", compatible_mode_names, NULL}; |
323 | +TYPELIB compatible_mode_typelib= |
324 | +{ |
325 | + sizeof(compatible_mode_names)/sizeof(compatible_mode_names[0]) -1, |
326 | + "", compatible_mode_names, NULL |
327 | +}; |
328 | |
329 | -HASH ignore_table; |
330 | +drizzled::hash_set<string> ignore_table; |
331 | |
332 | static struct my_option my_long_options[] = |
333 | { |
334 | {"all", 'a', "Deprecated. Use --create-options instead.", |
335 | - (char**) &create_options, (char**) &create_options, 0, GET_BOOL, NO_ARG, 1, |
336 | - 0, 0, 0, 0, 0}, |
337 | + reinterpret_cast<char**>(&create_options), |
338 | + reinterpret_cast<char**>(&create_options), |
339 | + 0, GET_BOOL, NO_ARG, 1, 0, 0, 0, 0, 0}, |
340 | {"all-databases", 'A', |
341 | "Dump all the databases. This will be same as --databases with all databases selected.", |
342 | (char**) &opt_alldbs, (char**) &opt_alldbs, 0, GET_BOOL, NO_ARG, 0, 0, 0, 0, |
343 | @@ -530,19 +534,6 @@ |
344 | } /* write_footer */ |
345 | |
346 | |
347 | -static void free_table_ent(char *key) |
348 | -{ |
349 | - free(key); |
350 | -} |
351 | - |
352 | - |
353 | -static unsigned char* get_table_key(const char *entry, size_t *length, bool) |
354 | -{ |
355 | - *length= strlen(entry); |
356 | - return (unsigned char*) entry; |
357 | -} |
358 | - |
359 | - |
360 | bool get_one_option(int optid, const struct my_option *, char *argument) |
361 | { |
362 | char *endchar= NULL; |
363 | @@ -656,9 +647,8 @@ |
364 | fprintf(stderr, _("Illegal use of option --ignore-table=<database>.<table>\n")); |
365 | exit(1); |
366 | } |
367 | - char * tmpptr= strdup(argument); |
368 | - if (!(tmpptr) || my_hash_insert(&ignore_table, (unsigned char*)tmpptr)) |
369 | - exit(EX_EOM); |
370 | + string tmpptr(argument); |
371 | + ignore_table.insert(tmpptr); |
372 | break; |
373 | } |
374 | case (int) OPT_COMPATIBLE: |
375 | @@ -706,11 +696,6 @@ |
376 | load_defaults("drizzle",load_default_groups,argc,argv); |
377 | defaults_argv= *argv; |
378 | |
379 | - if (hash_init(&ignore_table, charset_info, 16, 0, 0, |
380 | - (hash_get_key) get_table_key, |
381 | - (hash_free_key) free_table_ent, 0)) |
382 | - return(EX_EOM); |
383 | - |
384 | if ((ho_error= handle_options(argc, argv, my_long_options, get_one_option))) |
385 | return(ho_error); |
386 | |
387 | @@ -924,8 +909,6 @@ |
388 | if (md_result_file && md_result_file != stdout) |
389 | fclose(md_result_file); |
390 | free(opt_password); |
391 | - if (hash_inited(&ignore_table)) |
392 | - hash_free(&ignore_table); |
393 | if (defaults_argv) |
394 | free_defaults(defaults_argv); |
395 | my_end(my_end_arg); |
396 | @@ -2382,9 +2365,11 @@ |
397 | |
398 | /* Return 1 if we should copy the table */ |
399 | |
400 | -static bool include_table(const unsigned char *hash_key, size_t len) |
401 | +static bool include_table(const char *hash_key, size_t key_size) |
402 | { |
403 | - return !hash_search(&ignore_table, hash_key, len); |
404 | + string match(hash_key, key_size); |
405 | + drizzled::hash_set<string>::iterator iter= ignore_table.find(match); |
406 | + return (iter == ignore_table.end()); |
407 | } |
408 | |
409 | |
410 | @@ -2396,6 +2381,7 @@ |
411 | drizzle_result_st result; |
412 | drizzle_return_t ret; |
413 | |
414 | + memset(hash_key, 0, DRIZZLE_MAX_DB_SIZE+DRIZZLE_MAX_TABLE_SIZE+2); |
415 | afterdot= strcpy(hash_key, database) + strlen(database); |
416 | *afterdot++= '.'; |
417 | |
418 | @@ -2417,7 +2403,7 @@ |
419 | while ((table= getTableName(0))) |
420 | { |
421 | char *end= strcpy(afterdot, table) + strlen(table); |
422 | - if (include_table((unsigned char*) hash_key, end - hash_key)) |
423 | + if (include_table(hash_key, end - hash_key)) |
424 | { |
425 | dump_table(table,database); |
426 | free(order_by); |
427 | @@ -2861,7 +2847,6 @@ |
428 | drizzle_result_st result; |
429 | |
430 | compatible_mode_normal_str[0]= 0; |
431 | - memset(&ignore_table, 0, sizeof(ignore_table)); |
432 | |
433 | exit_code= get_options(&argc, &argv); |
434 | if (exit_code) |
435 | |
436 | === modified file 'client/drizzleimport.cc' |
437 | --- client/drizzleimport.cc 2009-07-11 02:27:48 +0000 |
438 | +++ client/drizzleimport.cc 2009-09-09 00:38:19 +0000 |
439 | @@ -27,12 +27,14 @@ |
440 | #define IMPORT_VERSION "3.7" |
441 | |
442 | #include "client_priv.h" |
443 | + |
444 | +#include <pthread.h> |
445 | + |
446 | +#include <sstream> |
447 | #include <string> |
448 | |
449 | -#include <pthread.h> |
450 | - |
451 | /* Added this for string translation. */ |
452 | -#include <drizzled/gettext.h> |
453 | +#include "drizzled/gettext.h" |
454 | |
455 | using namespace std; |
456 | |
457 | @@ -604,7 +606,7 @@ |
458 | { |
459 | struct timespec abstime; |
460 | |
461 | - set_timespec(abstime, 3); |
462 | + set_timespec(&abstime, 3); |
463 | pthread_cond_timedwait(&count_threshhold, &counter_mutex, &abstime); |
464 | } |
465 | /* Before exiting the lock we set ourselves up for the next thread */ |
466 | @@ -647,7 +649,7 @@ |
467 | if (!(con= db_connect(current_host,current_db,current_user,opt_password))) |
468 | { |
469 | free_defaults(argv_to_free); |
470 | - return(1); /* purecov: deadcode */ |
471 | + return(1); |
472 | } |
473 | |
474 | if (drizzle_query_str(con, &result, |
475 | |
476 | === modified file 'client/drizzleslap.cc' |
477 | --- client/drizzleslap.cc 2009-07-13 19:24:14 +0000 |
478 | +++ client/drizzleslap.cc 2009-09-09 21:03:12 +0000 |
479 | @@ -70,25 +70,30 @@ |
480 | |
481 | */ |
482 | |
483 | -#define SLAP_VERSION "1.5" |
484 | - |
485 | -#define HUGE_STRING_LENGTH 8196 |
486 | -#define RAND_STRING_SIZE 126 |
487 | -#define DEFAULT_BLOB_SIZE 1024 |
488 | - |
489 | -#include "client_priv.h" |
490 | -#include <signal.h> |
491 | -#include <stdarg.h> |
492 | +#include "client/client_priv.h" |
493 | + |
494 | +#include <cctype> |
495 | +#include <csignal> |
496 | +#include <cstdarg> |
497 | +#include <cmath> |
498 | + |
499 | #include <sys/types.h> |
500 | #include <sys/wait.h> |
501 | -#include <ctype.h> |
502 | +#include <sys/stat.h> |
503 | + |
504 | #include <string> |
505 | |
506 | /* Added this for string translation. */ |
507 | -#include <drizzled/gettext.h> |
508 | +#include "drizzled/gettext.h" |
509 | |
510 | using namespace std; |
511 | |
512 | +#define SLAP_VERSION "1.5" |
513 | + |
514 | +#define HUGE_STRING_LENGTH 8196 |
515 | +#define RAND_STRING_SIZE 126 |
516 | +#define DEFAULT_BLOB_SIZE 1024 |
517 | + |
518 | #ifdef HAVE_SMEM |
519 | static char *shared_memory_base_name=0; |
520 | #endif |
521 | @@ -176,7 +181,7 @@ |
522 | |
523 | const char *default_dbug_option= "d:t:o,/tmp/drizzleslap.trace"; |
524 | const char *opt_csv_str; |
525 | -File csv_file; |
526 | +int csv_file; |
527 | |
528 | static int get_options(int *argc,char ***argv); |
529 | static uint32_t opt_drizzle_port= 0; |
530 | @@ -222,7 +227,7 @@ |
531 | uint32_t users; |
532 | uint32_t real_users; |
533 | uint64_t rows; |
534 | - long int create_timing; |
535 | + long create_timing; |
536 | uint64_t create_count; |
537 | }; |
538 | |
539 | @@ -301,15 +306,23 @@ |
540 | #define ALPHANUMERICS_SIZE (sizeof(ALPHANUMERICS)-1) |
541 | |
542 | |
543 | -static long int timedif(struct timeval a, struct timeval b) |
544 | +static long timedif(const timespec& start, const timespec& end) |
545 | { |
546 | - register int us, s; |
547 | - |
548 | - us = a.tv_usec - b.tv_usec; |
549 | - us /= 1000; |
550 | - s = a.tv_sec - b.tv_sec; |
551 | - s *= 1000; |
552 | - return s + us; |
553 | + timespec temp; |
554 | + if ((end.tv_nsec-start.tv_nsec) < 0) |
555 | + { |
556 | + /* |
557 | + * Elementary school subtraction... borrow a second from the |
558 | + * seconds column and add it to the nsec column so that we don't |
559 | + * end up with a negative nsec. |
560 | + */ |
561 | + temp.tv_sec = end.tv_sec-start.tv_sec-1; |
562 | + temp.tv_nsec = 1000000000+end.tv_nsec-start.tv_nsec; |
563 | + } else { |
564 | + temp.tv_sec = end.tv_sec-start.tv_sec; |
565 | + temp.tv_nsec = end.tv_nsec-start.tv_nsec; |
566 | + } |
567 | + return (temp.tv_sec*1000)+(temp.tv_nsec/1000000); |
568 | } |
569 | |
570 | int main(int argc, char **argv) |
571 | @@ -1541,7 +1554,7 @@ |
572 | { |
573 | if (create_string && !stat(create_string, &sbuf)) |
574 | { |
575 | - File data_file; |
576 | + int data_file; |
577 | if (!S_ISREG(sbuf.st_mode)) |
578 | { |
579 | fprintf(stderr,"%s: Create file was not a regular file\n", |
580 | @@ -1598,7 +1611,7 @@ |
581 | |
582 | if (user_supplied_query && !stat(user_supplied_query, &sbuf)) |
583 | { |
584 | - File data_file; |
585 | + int data_file; |
586 | if (!S_ISREG(sbuf.st_mode)) |
587 | { |
588 | fprintf(stderr,"%s: User query supplied file was not a regular file\n", |
589 | @@ -1645,7 +1658,7 @@ |
590 | if (user_supplied_pre_statements |
591 | && !stat(user_supplied_pre_statements, &sbuf)) |
592 | { |
593 | - File data_file; |
594 | + int data_file; |
595 | if (!S_ISREG(sbuf.st_mode)) |
596 | { |
597 | fprintf(stderr,"%s: User query supplied file was not a regular file\n", |
598 | @@ -1692,7 +1705,7 @@ |
599 | if (user_supplied_post_statements |
600 | && !stat(user_supplied_post_statements, &sbuf)) |
601 | { |
602 | - File data_file; |
603 | + int data_file; |
604 | if (!S_ISREG(sbuf.st_mode)) |
605 | { |
606 | fprintf(stderr,"%s: User query supplied file was not a regular file\n", |
607 | @@ -1887,10 +1900,9 @@ |
608 | statement *after_create; |
609 | int len; |
610 | uint64_t count; |
611 | - struct timeval start_time, end_time; |
612 | - |
613 | - |
614 | - gettimeofday(&start_time, NULL); |
615 | + timespec start_time, end_time; |
616 | + |
617 | + clock_gettime(CLOCK_REALTIME, &start_time); |
618 | |
619 | len= snprintf(query, HUGE_STRING_LENGTH, "CREATE SCHEMA `%s`", db); |
620 | |
621 | @@ -1989,9 +2001,9 @@ |
622 | goto limit_not_met; |
623 | } |
624 | |
625 | - gettimeofday(&end_time, NULL); |
626 | + clock_gettime(CLOCK_REALTIME, &end_time); |
627 | |
628 | - sptr->create_timing= timedif(end_time, start_time); |
629 | + sptr->create_timing= timedif(start_time, end_time); |
630 | |
631 | return(0); |
632 | } |
633 | @@ -2040,7 +2052,7 @@ |
634 | uint32_t x; |
635 | uint32_t y; |
636 | unsigned int real_concurrency; |
637 | - struct timeval start_time, end_time; |
638 | + timespec start_time, end_time; |
639 | option_string *sql_type; |
640 | thread_context *con; |
641 | pthread_t mainthread; /* Thread descriptor */ |
642 | @@ -2123,7 +2135,7 @@ |
643 | pthread_mutex_unlock(&sleeper_mutex); |
644 | pthread_cond_broadcast(&sleep_threshhold); |
645 | |
646 | - gettimeofday(&start_time, NULL); |
647 | + clock_gettime(CLOCK_REALTIME, &start_time); |
648 | |
649 | /* |
650 | We loop until we know that all children have cleaned up. |
651 | @@ -2131,17 +2143,17 @@ |
652 | pthread_mutex_lock(&counter_mutex); |
653 | while (thread_counter) |
654 | { |
655 | - struct timespec abstime; |
656 | + timespec abstime; |
657 | |
658 | - set_timespec(abstime, 3); |
659 | + set_timespec(&abstime, 3); |
660 | pthread_cond_timedwait(&count_threshhold, &counter_mutex, &abstime); |
661 | } |
662 | pthread_mutex_unlock(&counter_mutex); |
663 | |
664 | - gettimeofday(&end_time, NULL); |
665 | - |
666 | - |
667 | - sptr->timing= timedif(end_time, start_time); |
668 | + clock_gettime(CLOCK_REALTIME, &end_time); |
669 | + |
670 | + |
671 | + sptr->timing= timedif(start_time, end_time); |
672 | sptr->users= concur; |
673 | sptr->real_users= real_concurrency; |
674 | sptr->rows= limit; |
675 | @@ -2167,7 +2179,7 @@ |
676 | } |
677 | pthread_mutex_unlock(&sleeper_mutex); |
678 | |
679 | - set_timespec(abstime, *timer_length); |
680 | + set_timespec(&abstime, *timer_length); |
681 | |
682 | pthread_mutex_lock(&timer_alarm_mutex); |
683 | pthread_cond_timedwait(&timer_alarm_threshold, &timer_alarm_mutex, &abstime); |
684 | |
685 | === modified file 'client/drizzletest.cc' |
686 | --- client/drizzletest.cc 2009-08-20 17:40:03 +0000 |
687 | +++ client/drizzletest.cc 2009-09-09 21:03:12 +0000 |
688 | @@ -50,16 +50,19 @@ |
689 | #ifdef HAVE_SYS_WAIT_H |
690 | #include <sys/wait.h> |
691 | #endif |
692 | +#include <sys/types.h> |
693 | +#include <sys/stat.h> |
694 | + |
695 | |
696 | #include PCRE_HEADER |
697 | |
698 | -#include <mysys/hash.h> |
699 | -#include <stdarg.h> |
700 | +#include <cstdarg> |
701 | |
702 | #include "errname.h" |
703 | |
704 | /* Added this for string translation. */ |
705 | -#include <drizzled/gettext.h> |
706 | +#include "drizzled/gettext.h" |
707 | +#include "drizzled/hash.h" |
708 | |
709 | #ifndef DRIZZLE_RETURN_SERVER_GONE |
710 | #define DRIZZLE_RETURN_HANDSHAKE_FAILED DRIZZLE_RETURN_ERROR_CODE |
711 | @@ -94,7 +97,7 @@ |
712 | const char *opt_user= NULL, *opt_host= NULL, *unix_sock= NULL, |
713 | *opt_basedir= "./"; |
714 | const char *opt_logdir= ""; |
715 | -const char *opt_include= NULL, *opt_charsets_dir; |
716 | +const char *opt_include= NULL; |
717 | const char *opt_testdir= NULL; |
718 | static uint32_t opt_port= 0; |
719 | static int opt_max_connect_retries; |
720 | @@ -156,8 +159,6 @@ |
721 | static struct st_test_file* file_stack_end; |
722 | |
723 | |
724 | -static const CHARSET_INFO *charset_info= &my_charset_utf8_general_ci; /* Default charset */ |
725 | - |
726 | static int embedded_server_arg_count=0; |
727 | static char *embedded_server_args[MAX_EMBEDDED_SERVER_ARGS]; |
728 | |
729 | @@ -206,7 +207,8 @@ |
730 | /*Perl/shell-like variable registers */ |
731 | VAR var_reg[10]; |
732 | |
733 | -HASH var_hash; |
734 | + |
735 | +drizzled::hash_map<string, VAR *> var_hash; |
736 | |
737 | struct st_connection |
738 | { |
739 | @@ -391,8 +393,13 @@ |
740 | enum enum_commands type; |
741 | }; |
742 | |
743 | -TYPELIB command_typelib= {array_elements(command_names),"", |
744 | - command_names, 0}; |
745 | +TYPELIB command_typelib= |
746 | +{ |
747 | + sizeof(command_names)/sizeof(command_names[0]), |
748 | + "", |
749 | + command_names, |
750 | + 0 |
751 | +}; |
752 | |
753 | string ds_res, ds_progress, ds_warning_messages; |
754 | |
755 | @@ -412,7 +419,7 @@ |
756 | VAR* var_from_env(const char *, const char *); |
757 | VAR* var_init(VAR* v, const char *name, int name_len, const char *val, |
758 | int val_len); |
759 | -extern "C" void var_free(void* v); |
760 | +void var_free(pair<string, VAR*> v); |
761 | VAR* var_get(const char *var_name, const char** var_name_end, |
762 | bool raw, bool ignore_not_existing); |
763 | void eval_expr(VAR* v, const char *p, const char** p_end); |
764 | @@ -884,9 +891,10 @@ |
765 | |
766 | close_connections(); |
767 | close_files(); |
768 | - hash_free(&var_hash); |
769 | + for_each(var_hash.begin(), var_hash.end(), var_free); |
770 | + var_hash.clear(); |
771 | |
772 | - vector<struct st_command *>::iterator iter; |
773 | + vector<st_command *>::iterator iter; |
774 | for (iter= q_lines.begin() ; iter < q_lines.end() ; iter++) |
775 | { |
776 | struct st_command * q_line= *iter; |
777 | @@ -1329,10 +1337,10 @@ |
778 | |
779 | */ |
780 | |
781 | -static int compare_files2(File fd, const char* filename2) |
782 | +static int compare_files2(int fd, const char* filename2) |
783 | { |
784 | int error= RESULT_OK; |
785 | - File fd2; |
786 | + int fd2; |
787 | uint32_t len, len2; |
788 | char buff[512], buff2[512]; |
789 | const char *fname= filename2; |
790 | @@ -1407,7 +1415,7 @@ |
791 | |
792 | static int compare_files(const char* filename1, const char* filename2) |
793 | { |
794 | - File fd; |
795 | + int fd; |
796 | int error; |
797 | |
798 | if ((fd= my_open(filename1, O_RDONLY, MYF(0))) < 0) |
799 | @@ -1436,7 +1444,7 @@ |
800 | static int string_cmp(string* ds, const char *fname) |
801 | { |
802 | int error; |
803 | - File fd; |
804 | + int fd; |
805 | char temp_file_path[FN_REFLEN]; |
806 | |
807 | if ((fd= create_temp_file(temp_file_path, NULL, |
808 | @@ -1569,7 +1577,7 @@ |
809 | char* ptr= str; |
810 | |
811 | /* Check if the first non space character is c1 */ |
812 | - while(*ptr && my_isspace(charset_info, *ptr)) |
813 | + while(*ptr && isspace(*ptr)) |
814 | ptr++; |
815 | if (*ptr == c1) |
816 | { |
817 | @@ -1578,7 +1586,7 @@ |
818 | |
819 | /* Last non space charecter should be c2 */ |
820 | ptr= strchr(str, '\0')-1; |
821 | - while(*ptr && my_isspace(charset_info, *ptr)) |
822 | + while(*ptr && isspace(*ptr)) |
823 | ptr--; |
824 | if (*ptr == c2) |
825 | { |
826 | @@ -1603,14 +1611,6 @@ |
827 | } |
828 | |
829 | |
830 | -unsigned char *get_var_key(const unsigned char* var, size_t *len, bool) |
831 | -{ |
832 | - register char* key; |
833 | - key = ((VAR*)var)->name; |
834 | - *len = ((VAR*)var)->name_len; |
835 | - return (unsigned char*)key; |
836 | -} |
837 | - |
838 | |
839 | VAR *var_init(VAR *v, const char *name, int name_len, const char *val, |
840 | int val_len) |
841 | @@ -1648,12 +1648,12 @@ |
842 | } |
843 | |
844 | |
845 | -void var_free(void *v) |
846 | +void var_free(pair<string, VAR *> v) |
847 | { |
848 | - free(((VAR*) v)->str_val); |
849 | - free(((VAR*) v)->env_s); |
850 | - if (((VAR*)v)->alloced) |
851 | - free(v); |
852 | + free(v.second->str_val); |
853 | + free(v.second->env_s); |
854 | + if (v.second->alloced) |
855 | + free(v.second); |
856 | } |
857 | |
858 | |
859 | @@ -1665,7 +1665,8 @@ |
860 | tmp = def_val; |
861 | |
862 | v = var_init(0, name, strlen(name), tmp, strlen(tmp)); |
863 | - my_hash_insert(&var_hash, (unsigned char*)v); |
864 | + string var_name(name); |
865 | + var_hash.insert(make_pair(var_name, v)); |
866 | return v; |
867 | } |
868 | |
869 | @@ -1684,7 +1685,7 @@ |
870 | const char *save_var_name = var_name, *end; |
871 | uint32_t length; |
872 | end = (var_name_end) ? *var_name_end : 0; |
873 | - while (my_isvar(charset_info,*var_name) && var_name != end) |
874 | + while ((isalnum(*var_name) || *var_name == '_') && var_name != end) |
875 | var_name++; |
876 | if (var_name == save_var_name) |
877 | { |
878 | @@ -1696,14 +1697,20 @@ |
879 | if (length >= MAX_VAR_NAME_LENGTH) |
880 | die("Too long variable name: %s", save_var_name); |
881 | |
882 | - if (!(v = (VAR*) hash_search(&var_hash, (const unsigned char*) save_var_name, |
883 | - length))) |
884 | + string save_var_name_str(save_var_name, length); |
885 | + drizzled::hash_map<string, VAR*>::iterator iter= |
886 | + var_hash.find(save_var_name_str); |
887 | + if (iter == var_hash.end()) |
888 | { |
889 | char buff[MAX_VAR_NAME_LENGTH+1]; |
890 | strncpy(buff, save_var_name, length); |
891 | buff[length]= '\0'; |
892 | v= var_from_env(buff, ""); |
893 | } |
894 | + else |
895 | + { |
896 | + v= (*iter).second; |
897 | + } |
898 | var_name--; /* Point at last character */ |
899 | } |
900 | else |
901 | @@ -1728,11 +1735,13 @@ |
902 | |
903 | static VAR *var_obtain(const char *name, int len) |
904 | { |
905 | - VAR* v; |
906 | - if ((v = (VAR*)hash_search(&var_hash, (const unsigned char *) name, len))) |
907 | - return v; |
908 | - v = var_init(0, name, len, "", 0); |
909 | - my_hash_insert(&var_hash, (unsigned char*)v); |
910 | + string var_name(name, len); |
911 | + drizzled::hash_map<string, VAR*>::iterator iter= |
912 | + var_hash.find(var_name); |
913 | + if (iter != var_hash.end()) |
914 | + return (*iter).second; |
915 | + VAR *v = var_init(0, name, len, "", 0); |
916 | + var_hash.insert(make_pair(var_name, v)); |
917 | return v; |
918 | } |
919 | |
920 | @@ -2272,7 +2281,7 @@ |
921 | string ds_cmd; |
922 | |
923 | /* Skip leading space */ |
924 | - while (*cmd && my_isspace(charset_info, *cmd)) |
925 | + while (*cmd && isspace(*cmd)) |
926 | cmd++; |
927 | if (!*cmd) |
928 | die("Missing argument in exec"); |
929 | @@ -2895,7 +2904,7 @@ |
930 | if (!*p) |
931 | die("Missing connection name in send_quit"); |
932 | name= p; |
933 | - while (*p && !my_isspace(charset_info,*p)) |
934 | + while (*p && !isspace(*p)) |
935 | p++; |
936 | |
937 | if (*p) |
938 | @@ -2955,7 +2964,7 @@ |
939 | static void do_perl(struct st_command *command) |
940 | { |
941 | int error; |
942 | - File fd; |
943 | + int fd; |
944 | FILE *res_file; |
945 | char buf[FN_REFLEN]; |
946 | char temp_file_path[FN_REFLEN]; |
947 | @@ -3163,10 +3172,10 @@ |
948 | const char *offset_start= p; |
949 | if (*offset_start) |
950 | { |
951 | - for (; my_isdigit(charset_info, *p); p++) |
952 | + for (; isdigit(*p); p++) |
953 | offset = offset * 10 + *p - '0'; |
954 | |
955 | - if(*p && !my_isspace(charset_info, *p)) |
956 | + if(*p && !isspace(*p)) |
957 | die("Invalid integer argument \"%s\"", offset_start); |
958 | command->last_argument= p; |
959 | } |
960 | @@ -3243,19 +3252,19 @@ |
961 | if (!*p) |
962 | die("Missing arguments to let"); |
963 | var_name= p; |
964 | - while (*p && (*p != '=') && !my_isspace(charset_info,*p)) |
965 | + while (*p && (*p != '=') && !isspace(*p)) |
966 | p++; |
967 | var_name_end= p; |
968 | if (var_name == var_name_end || |
969 | (var_name+1 == var_name_end && *var_name == '$')) |
970 | die("Missing variable name in let"); |
971 | - while (my_isspace(charset_info,*p)) |
972 | + while (isspace(*p)) |
973 | p++; |
974 | if (*p++ != '=') |
975 | die("Missing assignment operator in let"); |
976 | |
977 | /* Find start of <var_val> */ |
978 | - while (*p && my_isspace(charset_info,*p)) |
979 | + while (*p && isspace(*p)) |
980 | p++; |
981 | |
982 | do_eval(&let_rhs_expr, p, command->end, false); |
983 | @@ -3297,13 +3306,13 @@ |
984 | char *sleep_start, *sleep_end= command->end; |
985 | double sleep_val; |
986 | |
987 | - while (my_isspace(charset_info, *p)) |
988 | + while (isspace(*p)) |
989 | p++; |
990 | if (!*p) |
991 | die("Missing argument to %.*s", command->first_word_len, command->query); |
992 | sleep_start= p; |
993 | /* Check that arg starts with a digit, not handled by my_strtod */ |
994 | - if (!my_isdigit(charset_info, *sleep_start)) |
995 | + if (!isdigit(*sleep_start)) |
996 | die("Invalid argument to %.*s \"%s\"", command->first_word_len, |
997 | command->query,command->first_argument); |
998 | string buff_str(sleep_start, sleep_end-sleep_start); |
999 | @@ -3331,7 +3340,7 @@ |
1000 | if (!*p) |
1001 | die("Missing file name argument"); |
1002 | name= p; |
1003 | - while (*p && !my_isspace(charset_info,*p)) |
1004 | + while (*p && !isspace(*p)) |
1005 | p++; |
1006 | if (*p) |
1007 | *p++= 0; |
1008 | @@ -3340,25 +3349,6 @@ |
1009 | } |
1010 | |
1011 | |
1012 | -static void do_set_charset(struct st_command *command) |
1013 | -{ |
1014 | - char *charset_name= command->first_argument; |
1015 | - char *p; |
1016 | - |
1017 | - if (!charset_name || !*charset_name) |
1018 | - die("Missing charset name in 'character_set'"); |
1019 | - /* Remove end space */ |
1020 | - p= charset_name; |
1021 | - while (*p && !my_isspace(charset_info,*p)) |
1022 | - p++; |
1023 | - if(*p) |
1024 | - *p++= 0; |
1025 | - command->last_argument= p; |
1026 | - charset_info= get_charset_by_csname(charset_name, MY_CS_PRIMARY); |
1027 | - if (!charset_info) |
1028 | - abort_not_supported_test("Test requires charset '%s'", charset_name); |
1029 | -} |
1030 | - |
1031 | static uint32_t get_errcode_from_name(char *error_name, char *error_end) |
1032 | { |
1033 | size_t err_name_len= error_end - error_name; |
1034 | @@ -3412,7 +3402,7 @@ |
1035 | /* Check sqlstate string validity */ |
1036 | while (*p && p < end) |
1037 | { |
1038 | - if (my_isdigit(charset_info, *p) || my_isupper(charset_info, *p)) |
1039 | + if (isdigit(*p) || isupper(*p)) |
1040 | *to_ptr++= *p++; |
1041 | else |
1042 | die("The sqlstate may only consist of digits[0-9] " \ |
1043 | @@ -3444,7 +3434,7 @@ |
1044 | /* Check that the string passed to str2int only contain digits */ |
1045 | while (*p && p != end) |
1046 | { |
1047 | - if (!my_isdigit(charset_info, *p)) |
1048 | + if (!isdigit(*p)) |
1049 | die("Invalid argument to error: '%s' - " \ |
1050 | "the errno may only consist of digits[0-9]", |
1051 | command->first_argument); |
1052 | @@ -3544,7 +3534,7 @@ |
1053 | if (*from != ' ' && *from) |
1054 | die("Wrong string argument in %s", command->query); |
1055 | |
1056 | - while (my_isspace(charset_info,*from)) /* Point to next string */ |
1057 | + while (isspace(*from)) /* Point to next string */ |
1058 | from++; |
1059 | |
1060 | *to =0; /* End of string marker */ |
1061 | @@ -3596,7 +3586,7 @@ |
1062 | if (!*p) |
1063 | die("Missing connection name in connect"); |
1064 | name= p; |
1065 | - while (*p && !my_isspace(charset_info,*p)) |
1066 | + while (*p && !isspace(*p)) |
1067 | p++; |
1068 | if (*p) |
1069 | *p++= 0; |
1070 | @@ -3613,7 +3603,7 @@ |
1071 | if (!*p) |
1072 | die("Missing connection name in disconnect"); |
1073 | name= p; |
1074 | - while (*p && !my_isspace(charset_info,*p)) |
1075 | + while (*p && !isspace(*p)) |
1076 | p++; |
1077 | |
1078 | if (*p) |
1079 | @@ -3878,11 +3868,11 @@ |
1080 | { |
1081 | const char* end; |
1082 | /* Step past any spaces in beginning of option*/ |
1083 | - while (*con_options && my_isspace(charset_info, *con_options)) |
1084 | + while (*con_options && isspace(*con_options)) |
1085 | con_options++; |
1086 | /* Find end of this option */ |
1087 | end= con_options; |
1088 | - while (*end && !my_isspace(charset_info, *end)) |
1089 | + while (*end && !isspace(*end)) |
1090 | end++; |
1091 | if (!strncmp(con_options, "SSL", 3)) |
1092 | con_ssl= 1; |
1093 | @@ -4037,7 +4027,7 @@ |
1094 | die("missing ')' in %s", cmd_name); |
1095 | p= (char*)expr_end+1; |
1096 | |
1097 | - while (*p && my_isspace(charset_info, *p)) |
1098 | + while (*p && isspace(*p)) |
1099 | p++; |
1100 | if (*p && *p != '{') |
1101 | die("Missing '{' after %s. Found \"%s\"", cmd_name, p); |
1102 | @@ -4064,7 +4054,7 @@ |
1103 | { |
1104 | char* p= command->first_argument; |
1105 | |
1106 | - while (*p && my_isspace(charset_info, *p)) |
1107 | + while (*p && isspace(*p)) |
1108 | p++; |
1109 | |
1110 | if (!(*p)) |
1111 | @@ -4136,7 +4126,7 @@ |
1112 | { |
1113 | char c, last_quote= 0; |
1114 | char *p= buf, *buf_end= buf + size - 1; |
1115 | - int skip_char= 0; |
1116 | + bool skip_char= false; |
1117 | enum {R_NORMAL, R_Q, R_SLASH_IN_Q, |
1118 | R_COMMENT, R_LINE_START} state= R_LINE_START; |
1119 | |
1120 | @@ -4144,17 +4134,16 @@ |
1121 | start_lineno= cur_file->lineno; |
1122 | for (; p < buf_end ;) |
1123 | { |
1124 | - skip_char= 0; |
1125 | + skip_char= false; |
1126 | c= my_getc(cur_file->file); |
1127 | if (feof(cur_file->file)) |
1128 | { |
1129 | - found_eof: |
1130 | if (cur_file->file != stdin) |
1131 | { |
1132 | fclose(cur_file->file); |
1133 | cur_file->file= 0; |
1134 | } |
1135 | - free((unsigned char*) cur_file->file_name); |
1136 | + free(const_cast<char *>(cur_file->file_name)); |
1137 | cur_file->file_name= 0; |
1138 | if (cur_file == file_stack) |
1139 | { |
1140 | @@ -4190,10 +4179,8 @@ |
1141 | return(0); |
1142 | } |
1143 | else if ((c == '{' && |
1144 | - (!my_strnncoll_simple(charset_info, (const unsigned char*) "while", 5, |
1145 | - (unsigned char*) buf, min((ptrdiff_t)5, p - buf), 0) || |
1146 | - !my_strnncoll_simple(charset_info, (const unsigned char*) "if", 2, |
1147 | - (unsigned char*) buf, min((ptrdiff_t)2, p - buf), 0)))) |
1148 | + (!strncmp("while", buf, min((ptrdiff_t)5, p - buf)) || |
1149 | + !strncmp("if", buf, min((ptrdiff_t)2, p - buf))))) |
1150 | { |
1151 | /* Only if and while commands can be terminated by { */ |
1152 | *p++= c; |
1153 | @@ -4222,7 +4209,7 @@ |
1154 | /* A # or - in the first position of the line - this is a comment */ |
1155 | state = R_COMMENT; |
1156 | } |
1157 | - else if (my_isspace(charset_info, c)) |
1158 | + else if ((c == ' ') || (c == '\t') || (c == '\n')) |
1159 | { |
1160 | /* Skip all space at begining of line */ |
1161 | if (c == '\n') |
1162 | @@ -4230,7 +4217,7 @@ |
1163 | /* Query hasn't started yet */ |
1164 | start_lineno= cur_file->lineno; |
1165 | } |
1166 | - skip_char= 1; |
1167 | + skip_char= true; |
1168 | } |
1169 | else if (end_of_query(c)) |
1170 | { |
1171 | @@ -4267,37 +4254,7 @@ |
1172 | } |
1173 | |
1174 | if (!skip_char) |
1175 | - { |
1176 | - /* Could be a multibyte character */ |
1177 | - /* This code is based on the code in "sql_load.cc" */ |
1178 | - int charlen = my_mbcharlen(charset_info, c); |
1179 | - /* We give up if multibyte character is started but not */ |
1180 | - /* completed before we pass buf_end */ |
1181 | - if ((charlen > 1) && (p + charlen) <= buf_end) |
1182 | - { |
1183 | - int i; |
1184 | - char* mb_start = p; |
1185 | - |
1186 | - *p++ = c; |
1187 | - |
1188 | - for (i= 1; i < charlen; i++) |
1189 | - { |
1190 | - if (feof(cur_file->file)) |
1191 | - goto found_eof; |
1192 | - c= my_getc(cur_file->file); |
1193 | - *p++ = c; |
1194 | - } |
1195 | - if (! my_ismbchar(charset_info, mb_start, p)) |
1196 | - { |
1197 | - /* It was not a multiline char, push back the characters */ |
1198 | - /* We leave first 'c', i.e. pretend it was a normal char */ |
1199 | - while (p > mb_start) |
1200 | - my_ungetc(*--p); |
1201 | - } |
1202 | - } |
1203 | - else |
1204 | - *p++= c; |
1205 | - } |
1206 | + *p++= c; |
1207 | } |
1208 | die("The input buffer is too small for this query.x\n" \ |
1209 | "check your query or increase MAX_QUERY and recompile"); |
1210 | @@ -4330,7 +4287,7 @@ |
1211 | *to++ = *p++; /* Save the newline */ |
1212 | |
1213 | /* Skip any spaces on next line */ |
1214 | - while (*p && my_isspace(charset_info, *p)) |
1215 | + while (*p && isspace(*p)) |
1216 | p++; |
1217 | |
1218 | last_c_was_quote= 0; |
1219 | @@ -4382,11 +4339,11 @@ |
1220 | char save; |
1221 | char *end, *start= (char*)ptr+3; |
1222 | /* Skip leading spaces */ |
1223 | - while (*start && my_isspace(charset_info, *start)) |
1224 | + while (*start && isspace(*start)) |
1225 | start++; |
1226 | end= start; |
1227 | /* Find end of command(next space) */ |
1228 | - while (*end && !my_isspace(charset_info, *end)) |
1229 | + while (*end && !isspace(*end)) |
1230 | end++; |
1231 | save= *end; |
1232 | *end= 0; |
1233 | @@ -4432,7 +4389,7 @@ |
1234 | const char *p= eol; |
1235 | |
1236 | /* Skip past all spacing chars and comments */ |
1237 | - while (*p && (my_isspace(charset_info, *p) || *p == '#' || *p == '\n')) |
1238 | + while (*p && (isspace(*p) || *p == '#' || *p == '\n')) |
1239 | { |
1240 | /* Skip past comments started with # and ended with newline */ |
1241 | if (*p && *p == '#') |
1242 | @@ -4515,7 +4472,7 @@ |
1243 | } |
1244 | |
1245 | /* Skip leading spaces */ |
1246 | - while (*p && my_isspace(charset_info, *p)) |
1247 | + while (*p && isspace(*p)) |
1248 | p++; |
1249 | |
1250 | if (!(command->query_buf= command->query= strdup(p))) |
1251 | @@ -4523,12 +4480,12 @@ |
1252 | |
1253 | /* Calculate first word length(the command), terminated by space or ( */ |
1254 | p= command->query; |
1255 | - while (*p && !my_isspace(charset_info, *p) && *p != '(') |
1256 | + while (*p && !isspace(*p) && *p != '(') |
1257 | p++; |
1258 | command->first_word_len= (uint32_t) (p - command->query); |
1259 | |
1260 | /* Skip spaces between command and first argument */ |
1261 | - while (*p && my_isspace(charset_info, *p)) |
1262 | + while (*p && isspace(*p)) |
1263 | p++; |
1264 | command->first_argument= p; |
1265 | |
1266 | @@ -4545,9 +4502,6 @@ |
1267 | 0, 0, 0, 0, 0, 0}, |
1268 | {"basedir", 'b', "Basedir for tests.", (char**) &opt_basedir, |
1269 | (char**) &opt_basedir, 0, GET_STR, REQUIRED_ARG, 0, 0, 0, 0, 0, 0}, |
1270 | - {"character-sets-dir", OPT_CHARSETS_DIR, |
1271 | - "Directory where character sets are.", (char**) &opt_charsets_dir, |
1272 | - (char**) &opt_charsets_dir, 0, GET_STR, REQUIRED_ARG, 0, 0, 0, 0, 0, 0}, |
1273 | {"compress", 'C', "Use the compressed server/client protocol.", |
1274 | (char**) &opt_compress, (char**) &opt_compress, 0, GET_BOOL, NO_ARG, 0, 0, 0, |
1275 | 0, 0, 0}, |
1276 | @@ -5626,10 +5580,6 @@ |
1277 | cur_block->ok= true; /* Outer block should always be executed */ |
1278 | cur_block->cmd= cmd_none; |
1279 | |
1280 | - if (hash_init(&var_hash, charset_info, |
1281 | - 1024, 0, 0, get_var_key, var_free, MYF(0))) |
1282 | - die("Variable hash initialization failed"); |
1283 | - |
1284 | var_set_string("$DRIZZLE_SERVER_VERSION", drizzle_version()); |
1285 | |
1286 | memset(&master_pos, 0, sizeof(master_pos)); |
1287 | @@ -5886,7 +5836,7 @@ |
1288 | timer_output(); |
1289 | break; |
1290 | case Q_CHARACTER_SET: |
1291 | - do_set_charset(command); |
1292 | + die("Drizzle does not support multiple character sets"); |
1293 | break; |
1294 | case Q_DISABLE_RECONNECT: |
1295 | set_reconnect(&cur_con->con, 0); |
1296 | @@ -6078,7 +6028,7 @@ |
1297 | |
1298 | uint64_t timer_now(void) |
1299 | { |
1300 | - return my_micro_time() / 1000; |
1301 | + return my_get_usec_since_epoch() / 1000; |
1302 | } |
1303 | |
1304 | |
1305 | @@ -6117,7 +6067,8 @@ |
1306 | replace_column[column_number-1]= strdup(to); |
1307 | if (replace_column[column_number-1] == NULL) |
1308 | die("Out of memory"); |
1309 | - set_if_bigger(max_replace_column, column_number); |
1310 | + if (max_replace_column < column_number) |
1311 | + max_replace_column= column_number; |
1312 | } |
1313 | free(start); |
1314 | command->last_argument= command->end; |
1315 | @@ -6199,7 +6150,7 @@ |
1316 | insert_pointer_name(&to_array,to); |
1317 | } |
1318 | for (i= 1,pos= word_end_chars ; i < 256 ; i++) |
1319 | - if (my_isspace(charset_info,i)) |
1320 | + if (isspace(i)) |
1321 | *pos++= i; |
1322 | *pos=0; /* End pointer */ |
1323 | if (!(glob_replace= init_replace((char**) from_array.typelib.type_names, |
1324 | @@ -7170,10 +7121,11 @@ |
1325 | return(1); |
1326 | if (new_pos != pa->str) |
1327 | { |
1328 | - my_ptrdiff_t diff=PTR_BYTE_DIFF(new_pos,pa->str); |
1329 | + ptrdiff_t diff= static_cast<ptrdiff_t>( |
1330 | + reinterpret_cast<unsigned char*>(new_pos) |
1331 | + - reinterpret_cast<unsigned char*>(pa->str)); |
1332 | for (i=0 ; i < pa->typelib.count ; i++) |
1333 | - pa->typelib.type_names[i]= ADD_TO_PTR(pa->typelib.type_names[i],diff, |
1334 | - char*); |
1335 | + pa->typelib.type_names[i]= reinterpret_cast<const char *>(reinterpret_cast<const unsigned char *>(pa->typelib.type_names[i])+diff); |
1336 | pa->str=new_pos; |
1337 | } |
1338 | pa->max_length+=PS_MALLOC; |
1339 | |
1340 | === modified file 'client/errname.cc' |
1341 | --- client/errname.cc 2009-08-05 22:50:03 +0000 |
1342 | +++ client/errname.cc 2009-09-09 00:38:19 +0000 |
1343 | @@ -18,9 +18,9 @@ |
1344 | * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA |
1345 | */ |
1346 | |
1347 | -#include <drizzled/global.h> |
1348 | +#include "config.h" |
1349 | |
1350 | -#include <client/errname.h> |
1351 | +#include "client/errname.h" |
1352 | |
1353 | using namespace std; |
1354 | |
1355 | @@ -615,7 +615,7 @@ |
1356 | { "ER_UNSUPORTED_LOG_ENGINE",1579 }, |
1357 | { "ER_BAD_LOG_STATEMENT",1580 }, |
1358 | { "ER_CANT_RENAME_LOG_TABLE",1581 }, |
1359 | - { "ER_WRONG_PARAMCOUNT_TO_NATIVE_FCT",1582 }, |
1360 | + { "ER_WRONG_PARAMCOUNT_TO_FUNCTION",1582 }, |
1361 | { "ER_WRONG_PARAMETERS_TO_NATIVE_FCT",1583 }, |
1362 | { "ER_WRONG_PARAMETERS_TO_STORED_FCT",1584 }, |
1363 | { "ER_NATIVE_FCT_NAME_COLLISION",1585 }, |
1364 | |
1365 | === modified file 'client/errname.h' |
1366 | --- client/errname.h 2009-08-11 20:20:52 +0000 |
1367 | +++ client/errname.h 2009-09-09 00:38:19 +0000 |
1368 | @@ -18,11 +18,13 @@ |
1369 | * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA |
1370 | */ |
1371 | |
1372 | -#ifndef _CLIENT_ERRNAME_H |
1373 | -#define _CLIENT_ERRNAME_H |
1374 | +#ifndef CLIENT_ERRNAME_H |
1375 | +#define CLIENT_ERRNAME_H |
1376 | |
1377 | /* List of error names to error codes, available from 5.0 */ |
1378 | |
1379 | +#include CSTDINT_H |
1380 | + |
1381 | #include <string> |
1382 | #include <map> |
1383 | |
1384 | @@ -36,4 +38,4 @@ |
1385 | std::map<std::string, uint32_t> error_code_map; |
1386 | }; |
1387 | |
1388 | -#endif /* _CLIENT_ERRNAME_H */ |
1389 | +#endif /* CLIENT_ERRNAME_H */ |
1390 | |
1391 | === modified file 'client/get_password.cc' |
1392 | --- client/get_password.cc 2009-04-17 21:01:47 +0000 |
1393 | +++ client/get_password.cc 2009-09-09 00:38:19 +0000 |
1394 | @@ -22,13 +22,15 @@ |
1395 | ** This is an own file to avoid conflicts with curses |
1396 | */ |
1397 | |
1398 | -#include <drizzled/global.h> |
1399 | -#include "client/get_password.h" |
1400 | - |
1401 | -#include <string.h> |
1402 | -#include <stdio.h> |
1403 | -#include <stdlib.h> |
1404 | -#include <ctype.h> |
1405 | +#include "config.h" |
1406 | + |
1407 | +#include CSTDINT_H |
1408 | + |
1409 | +#include <cstring> |
1410 | +#include <cstdio> |
1411 | +#include <cstdlib> |
1412 | +#include <cctype> |
1413 | + |
1414 | #include <unistd.h> |
1415 | |
1416 | #include <sys/ioctl.h> |
1417 | @@ -45,6 +47,10 @@ |
1418 | # endif |
1419 | #endif |
1420 | |
1421 | +#include "client/get_password.h" |
1422 | + |
1423 | +using namespace std; |
1424 | + |
1425 | /* |
1426 | Can't use fgets, because readline will get confused |
1427 | length is max number of chars in to, not counting \0 |
1428 | @@ -60,7 +66,7 @@ |
1429 | char tmp; |
1430 | if (read(fd,&tmp,1) != 1) |
1431 | break; |
1432 | - if (tmp == '\b' || (int) tmp == 127) |
1433 | + if (tmp == '\b' || static_cast<int>(tmp) == 127) |
1434 | { |
1435 | if (pos != to) |
1436 | { |
1437 | |
1438 | === modified file 'client/linebuffer.cc' |
1439 | --- client/linebuffer.cc 2009-07-20 00:22:07 +0000 |
1440 | +++ client/linebuffer.cc 2009-09-09 00:38:19 +0000 |
1441 | @@ -15,11 +15,13 @@ |
1442 | |
1443 | /* readline for batch mode */ |
1444 | |
1445 | -#include <drizzled/global.h> |
1446 | -#include <mysys/my_sys.h> |
1447 | +#include "config.h" |
1448 | + |
1449 | +#include <vector> |
1450 | + |
1451 | +#include "mysys/my_sys.h" |
1452 | #include "client/linebuffer.h" |
1453 | |
1454 | -#include <vector> |
1455 | |
1456 | using namespace std; |
1457 | |
1458 | |
1459 | === modified file 'client/linebuffer.h' |
1460 | --- client/linebuffer.h 2009-07-20 00:15:20 +0000 |
1461 | +++ client/linebuffer.h 2009-09-09 00:38:19 +0000 |
1462 | @@ -17,6 +17,8 @@ |
1463 | #define CLIENT_LINEBUFFER_H |
1464 | |
1465 | #include <vector> |
1466 | +#include <sstream> |
1467 | +#include CSTDINT_H |
1468 | |
1469 | class LineBuffer |
1470 | { |
1471 | |
1472 | === modified file 'config/uncrustify.cfg' |
1473 | --- config/uncrustify.cfg 2009-07-15 21:16:34 +0000 |
1474 | +++ config/uncrustify.cfg 2009-09-09 00:38:19 +0000 |
1475 | @@ -1,145 +1,1112 @@ |
1476 | -indent_align_string=true |
1477 | -indent_braces=false |
1478 | -indent_braces_no_func=false |
1479 | -indent_brace_parent=false |
1480 | -indent_namespace=false |
1481 | -indent_extern=false |
1482 | -indent_class=true |
1483 | -indent_class_colon=false |
1484 | -indent_else_if=false |
1485 | -indent_func_call_param=false |
1486 | -indent_func_def_param=false |
1487 | -indent_func_proto_param=false |
1488 | -indent_func_class_param=false |
1489 | -indent_func_ctor_var_param=false |
1490 | -indent_template_param=false |
1491 | -indent_func_param_double=false |
1492 | -indent_relative_single_line_comments=false |
1493 | -indent_col1_comment=false |
1494 | -indent_access_spec_body=false |
1495 | -indent_paren_nl=false |
1496 | -indent_comma_paren=false |
1497 | -indent_bool_paren=false |
1498 | -indent_square_nl=false |
1499 | -indent_preserve_sql=false |
1500 | -sp_balance_nested_parens=false |
1501 | -align_keep_tabs=false |
1502 | -align_with_tabs=false |
1503 | -align_on_tabstop=false |
1504 | -align_number_left=false |
1505 | -align_func_params=false |
1506 | -align_same_func_call_params=false |
1507 | -align_var_def_colon=false |
1508 | -align_var_def_inline=false |
1509 | -align_right_cmt_mix=false |
1510 | -align_mix_var_proto=false |
1511 | -align_single_line_func=false |
1512 | -align_single_line_brace=false |
1513 | -align_nl_cont=false |
1514 | -align_left_shift=true |
1515 | -nl_collapse_empty_body=true |
1516 | -nl_assign_leave_one_liners=true |
1517 | -nl_class_leave_one_liners=false |
1518 | -nl_enum_leave_one_liners=false |
1519 | -nl_getset_leave_one_liners=true |
1520 | -nl_func_leave_one_liners=true |
1521 | -nl_if_leave_one_liners=false |
1522 | -nl_multi_line_cond=false |
1523 | -nl_multi_line_define=false |
1524 | -nl_before_case=false |
1525 | -nl_after_case=false |
1526 | -nl_after_return=true |
1527 | -nl_after_semicolon=true |
1528 | -nl_after_brace_open=true |
1529 | -nl_after_brace_open_cmt=false |
1530 | -nl_after_vbrace_open=false |
1531 | -nl_define_macro=false |
1532 | -nl_squeeze_ifdef=false |
1533 | -nl_ds_struct_enum_cmt=false |
1534 | -nl_ds_struct_enum_close_brace=false |
1535 | -nl_create_if_one_liner=false |
1536 | -nl_create_for_one_liner=false |
1537 | -nl_create_while_one_liner=false |
1538 | -ls_for_split_full=false |
1539 | -ls_func_split_full=false |
1540 | -nl_after_multiline_comment=true |
1541 | -eat_blanks_after_open_brace=true |
1542 | -eat_blanks_before_close_brace=true |
1543 | -mod_pawn_semicolon=false |
1544 | -mod_full_paren_if_bool=false |
1545 | -mod_remove_extra_semicolon=true |
1546 | -mod_sort_import=false |
1547 | -mod_sort_using=true |
1548 | -mod_sort_include=false |
1549 | -mod_move_case_break=true |
1550 | -cmt_indent_multi=true |
1551 | -cmt_c_group=false |
1552 | -cmt_c_nl_start=false |
1553 | -cmt_c_nl_end=false |
1554 | -cmt_cpp_group=false |
1555 | -cmt_cpp_nl_start=false |
1556 | -cmt_cpp_nl_end=false |
1557 | -cmt_cpp_to_c=false |
1558 | -cmt_star_cont=true |
1559 | -cmt_multi_check_last=true |
1560 | -pp_indent_at_level=false |
1561 | -pp_region_indent_code=false |
1562 | -pp_if_indent_code=false |
1563 | -pp_define_at_level=false |
1564 | -indent_columns=2 |
1565 | -nl_func_var_def_blk=1 |
1566 | -code_width=76 |
1567 | -nl_max=2 |
1568 | -nl_after_func_proto_group=3 |
1569 | -nl_after_func_body=2 |
1570 | -nl_before_block_comment=2 |
1571 | -nl_before_c_comment=2 |
1572 | -nl_before_cpp_comment=0 |
1573 | -mod_add_long_function_closebrace_comment=15 |
1574 | -mod_add_long_switch_closebrace_comment=15 |
1575 | -cmt_sp_after_star_cont=1 |
1576 | -indent_with_tabs=0 |
1577 | -sp_before_assign=remove |
1578 | -sp_enum_before_assign=remove |
1579 | -sp_after_assign=add |
1580 | -sp_enum_after_assign=add |
1581 | -sp_after_operator=add |
1582 | -sp_after_cast=remove |
1583 | -sp_cpp_cast_paren=remove |
1584 | -nl_start_of_file=remove |
1585 | -nl_assign_brace=add |
1586 | -nl_fcall_brace=add |
1587 | -nl_enum_brace=add |
1588 | -nl_struct_brace=add |
1589 | -nl_union_brace=add |
1590 | -nl_if_brace=add |
1591 | -nl_brace_else=add |
1592 | -nl_elseif_brace=add |
1593 | -nl_else_brace=add |
1594 | -nl_else_if=remove |
1595 | -nl_brace_finally=add |
1596 | -nl_finally_brace=add |
1597 | -nl_try_brace=add |
1598 | -nl_getset_brace=add |
1599 | -nl_for_brace=add |
1600 | -nl_catch_brace=add |
1601 | -nl_brace_catch=add |
1602 | -nl_while_brace=add |
1603 | -nl_do_brace=add |
1604 | -nl_brace_while=add |
1605 | -nl_switch_brace=add |
1606 | -nl_namespace_brace=add |
1607 | -nl_template_class=add |
1608 | -nl_class_brace=add |
1609 | -nl_class_init_args=add |
1610 | -nl_func_type_name=remove |
1611 | -nl_func_proto_type_name=remove |
1612 | -nl_func_paren=remove |
1613 | -nl_func_decl_start=remove |
1614 | -nl_func_decl_args=remove |
1615 | -nl_func_decl_end=remove |
1616 | -nl_fdef_brace=add |
1617 | -mod_full_brace_do=add |
1618 | -mod_full_brace_function=add |
1619 | -mod_paren_on_return=remove |
1620 | -pp_space=add |
1621 | +# |
1622 | +# Uncrustify optoins (with comments) for Drizzle |
1623 | +# |
1624 | + |
1625 | +nl_after_brace_close = TRUE |
1626 | + |
1627 | +# The type of line endings |
1628 | +newlines = lf # auto/lf/crlf/cr |
1629 | + |
1630 | +# The original size of tabs in the input |
1631 | +input_tab_size = 8 # number |
1632 | + |
1633 | +# The size of tabs in the output (only used if align_with_tabs=true) |
1634 | +output_tab_size = 3 # number |
1635 | + |
1636 | +# The ascii value of the string escape char, usually 92 (\) or 94 (^). (Pawn) |
1637 | +string_escape_char = 92 # number |
1638 | + |
1639 | +# Alternate string escape char for Pawn. Only works right before the quote char. |
1640 | +string_escape_char2 = 0 # number |
1641 | + |
1642 | +# |
1643 | +# Indenting |
1644 | +# |
1645 | + |
1646 | +# The number of columns to indent per level. |
1647 | +# Usually 2, 3, 4, or 8. |
1648 | +indent_columns = 2 # number |
1649 | + |
1650 | +# How to use tabs when indenting code |
1651 | +# 0=spaces only |
1652 | +# 1=indent with tabs, align with spaces |
1653 | +# 2=indent and align with tabs |
1654 | +indent_with_tabs = 0 # number |
1655 | + |
1656 | +# Whether to indent strings broken by '\' so that they line up |
1657 | +indent_align_string = true # false/true |
1658 | + |
1659 | +# The number of spaces to indent multi-line XML strings. |
1660 | +# Requires indent_align_string=True |
1661 | +indent_xml_string = 0 # number |
1662 | + |
1663 | +# Spaces to indent '{' from level |
1664 | +indent_brace = 0 # number |
1665 | + |
1666 | +# Whether braces are indented to the body level |
1667 | +indent_braces = false # false/true |
1668 | + |
1669 | +# Disabled indenting function braces if indent_braces is true |
1670 | +indent_braces_no_func = false # false/true |
1671 | + |
1672 | +# Indent based on the size of the brace parent, ie 'if' => 3 spaces, 'for' => 4 spaces, etc. |
1673 | +indent_brace_parent = false # false/true |
1674 | + |
1675 | +# Whether the 'namespace' body is indented |
1676 | +indent_namespace = false # false/true |
1677 | + |
1678 | +# Whether the 'extern "C"' body is indented |
1679 | +indent_extern = false # false/true |
1680 | + |
1681 | +# Whether the 'class' body is indented |
1682 | +indent_class = true # false/true |
1683 | + |
1684 | +# Whether to indent the stuff after a leading class colon |
1685 | +indent_class_colon = true # false/true |
1686 | + |
1687 | +# False=treat 'else\nif' as 'else if' for indenting purposes |
1688 | +# True=indent the 'if' one level |
1689 | +indent_else_if = false # false/true |
1690 | + |
1691 | +# True: indent continued function call parameters one indent level |
1692 | +# False: align parameters under the open paren |
1693 | +indent_func_call_param = false # false/true |
1694 | + |
1695 | +# Same as indent_func_call_param, but for function defs |
1696 | +indent_func_def_param = false # false/true |
1697 | + |
1698 | +# Same as indent_func_call_param, but for function protos |
1699 | +indent_func_proto_param = false # false/true |
1700 | + |
1701 | +# Same as indent_func_call_param, but for class declarations |
1702 | +indent_func_class_param = false # false/true |
1703 | + |
1704 | +# Same as indent_func_call_param, but for class variable constructors |
1705 | +indent_func_ctor_var_param = false # false/true |
1706 | + |
1707 | +# Same as indent_func_call_param, but for templates |
1708 | +indent_template_param = false # false/true |
1709 | + |
1710 | +# Double the indent for indent_func_xxx_param options |
1711 | +indent_func_param_double = false # false/true |
1712 | + |
1713 | +# Indentation column for standalone 'const' function decl/proto qualifier |
1714 | +indent_func_const = 0 # number |
1715 | + |
1716 | +# Indentation column for standalone 'throw' function decl/proto qualifier |
1717 | +indent_func_throw = 0 # number |
1718 | + |
1719 | +# The number of spaces to indent a continued '->' or '.' |
1720 | +# Usually set to 0, 1, or indent_columns. |
1721 | +indent_member = 3 # number |
1722 | + |
1723 | +# Spaces to indent single line ('//') comments on lines before code |
1724 | +indent_sing_line_comments = 0 # number |
1725 | + |
1726 | +# If set, will indent trailing single line ('//') comments relative |
1727 | +# to the code instead of trying to keep the same absolute column |
1728 | +indent_relative_single_line_comments = false # false/true |
1729 | + |
1730 | +# Spaces to indent 'case' from 'switch' |
1731 | +# Usually 0 or indent_columns. |
1732 | +indent_switch_case = 0 # number |
1733 | + |
1734 | +# Spaces to shift the 'case' line, without affecting any other lines |
1735 | +# Usually 0. |
1736 | +indent_case_shift = 0 # number |
1737 | + |
1738 | +# Spaces to indent '{' from 'case'. |
1739 | +# By default, the brace will appear under the 'c' in case. |
1740 | +# Usually set to 0 or indent_columns. |
1741 | +indent_case_brace = 0 # number |
1742 | + |
1743 | +# Whether to indent comments found in first column |
1744 | +indent_col1_comment = false # false/true |
1745 | + |
1746 | +# How to indent goto labels |
1747 | +# >0 : absolute column where 1 is the leftmost column |
1748 | +# <=0 : subtract from brace indent |
1749 | +indent_label = 1 # number |
1750 | + |
1751 | +# Same as indent_label, but for access specifiers that are followed by a colon |
1752 | +indent_access_spec = 1 # number |
1753 | + |
1754 | +# Indent the code after an access specifier by one level. |
1755 | +# If set, this option forces 'indent_access_spec=0' |
1756 | +indent_access_spec_body = false # false/true |
1757 | + |
1758 | +# If an open paren is followed by a newline, indent the next line so that it lines up after the open paren (not recommended) |
1759 | +indent_paren_nl = false # false/true |
1760 | + |
1761 | +# Controls the indent of a close paren after a newline. |
1762 | +# 0: Indent to body level |
1763 | +# 1: Align under the open paren |
1764 | +# 2: Indent to the brace level |
1765 | +indent_paren_close = 0 # number |
1766 | + |
1767 | +# Controls the indent of a comma when inside a paren.If TRUE, aligns under the open paren |
1768 | +indent_comma_paren = false # false/true |
1769 | + |
1770 | +# Controls the indent of a BOOL operator when inside a paren.If TRUE, aligns under the open paren |
1771 | +indent_bool_paren = false # false/true |
1772 | + |
1773 | +# If an open square is followed by a newline, indent the next line so that it lines up after the open square (not recommended) |
1774 | +indent_square_nl = false # false/true |
1775 | + |
1776 | +# Don't change the relative indent of ESQL/C 'EXEC SQL' bodies |
1777 | +indent_preserve_sql = false # false/true |
1778 | + |
1779 | +# |
1780 | +# Spacing options |
1781 | +# |
1782 | + |
1783 | +# Add or remove space around arithmetic operator '+', '-', '/', '*', etc |
1784 | +sp_arith = force # ignore/add/remove/force |
1785 | + |
1786 | +# Add or remove space before assignment operator '=', '+=', etc |
1787 | +sp_before_assign = remove # ignore/add/remove/force |
1788 | + |
1789 | +# Add or remove space after assignment operator '=', '+=', etc |
1790 | +sp_after_assign = force # ignore/add/remove/force |
1791 | + |
1792 | +# Add or remove space around assignment '=' in enum |
1793 | +sp_enum_assign = ignore # ignore/add/remove/force |
1794 | + |
1795 | +# Add or remove space around boolean operators '&&' and '||' |
1796 | +sp_bool = force # ignore/add/remove/force |
1797 | + |
1798 | +# Add or remove space around compare operator '<', '>', '==', etc |
1799 | +sp_compare = force # ignore/add/remove/force |
1800 | + |
1801 | +# Add or remove space inside '(' and ')' |
1802 | +sp_inside_paren = remove # ignore/add/remove/force |
1803 | + |
1804 | +# Add or remove space between nested parens |
1805 | +sp_paren_paren = remove # ignore/add/remove/force |
1806 | + |
1807 | +# Whether to balance spaces inside nested parens |
1808 | +sp_balance_nested_parens = false # false/true |
1809 | + |
1810 | +# Add or remove space between ')' and '{' |
1811 | +sp_paren_brace = ignore # ignore/add/remove/force |
1812 | + |
1813 | +# Add or remove space before pointer star '*' |
1814 | +sp_before_ptr_star = force # ignore/add/remove/force |
1815 | + |
1816 | +# Add or remove space before pointer star '*' that isn't followed by a variable name |
1817 | +# If set to 'ignore', sp_before_ptr_star is used instead. |
1818 | +sp_before_unnamed_ptr_star = ignore # ignore/add/remove/force |
1819 | + |
1820 | +# Add or remove space between pointer stars '*' |
1821 | +sp_between_ptr_star = remove # ignore/add/remove/force |
1822 | + |
1823 | +# Add or remove space after pointer star '*', if followed by a word. |
1824 | +sp_after_ptr_star = remove # ignore/add/remove/force |
1825 | + |
1826 | +# Add or remove space after a pointer star '*', if followed by a func proto/def. |
1827 | +sp_after_ptr_star_func = ignore # ignore/add/remove/force |
1828 | + |
1829 | +# Add or remove space before a pointer star '*', if followed by a func proto/def. |
1830 | +sp_before_ptr_star_func = ignore # ignore/add/remove/force |
1831 | + |
1832 | +# Add or remove space before a reference sign '&' |
1833 | +sp_before_byref = remove # ignore/add/remove/force |
1834 | + |
1835 | +# Add or remove space before a reference sign '&' that isn't followed by a variable name |
1836 | +# If set to 'ignore', sp_before_byref is used instead. |
1837 | +sp_before_unnamed_byref = ignore # ignore/add/remove/force |
1838 | + |
1839 | +# Add or remove space after reference sign '&', if followed by a word. |
1840 | +sp_after_byref = force # ignore/add/remove/force |
1841 | + |
1842 | +# Add or remove space after a reference sign '&', if followed by a func proto/def. |
1843 | +sp_after_byref_func = ignore # ignore/add/remove/force |
1844 | + |
1845 | +# Add or remove space before a reference sign '&', if followed by a func proto/def. |
1846 | +sp_before_byref_func = ignore # ignore/add/remove/force |
1847 | + |
1848 | +# Add or remove space between type and word |
1849 | +sp_after_type = force # ignore/add/remove/force |
1850 | + |
1851 | +# Add or remove space in 'template <' vs 'template<'. |
1852 | +# If set to ignore, sp_before_angle is used. |
1853 | +sp_template_angle = ignore # ignore/add/remove/force |
1854 | + |
1855 | +# Add or remove space before '<>' |
1856 | +sp_before_angle = remove # ignore/add/remove/force |
1857 | + |
1858 | +# Add or remove space inside '<' and '>' |
1859 | +sp_inside_angle = remove # ignore/add/remove/force |
1860 | + |
1861 | +# Add or remove space after '<>' |
1862 | +sp_after_angle = force # ignore/add/remove/force |
1863 | + |
1864 | +# Add or remove space between '<>' and '(' as found in 'new List<byte>();' |
1865 | +sp_angle_paren = ignore # ignore/add/remove/force |
1866 | + |
1867 | +# Add or remove space between '<>' and a word as in 'List<byte> m;' |
1868 | +sp_angle_word = ignore # ignore/add/remove/force |
1869 | + |
1870 | +# Add or remove space before '(' of 'if', 'for', 'switch', and 'while' |
1871 | +sp_before_sparen = force # ignore/add/remove/force |
1872 | + |
1873 | +# Add or remove space inside if-condition '(' and ')' |
1874 | +sp_inside_sparen = remove # ignore/add/remove/force |
1875 | + |
1876 | +# Add or remove space after ')' of 'if', 'for', 'switch', and 'while' |
1877 | +sp_after_sparen = force # ignore/add/remove/force |
1878 | + |
1879 | +# Add or remove space between ')' and '{' of 'if', 'for', 'switch', and 'while' |
1880 | +sp_sparen_brace = add # ignore/add/remove/force |
1881 | + |
1882 | +# Add or remove space before empty statement ';' on 'if', 'for' and 'while' |
1883 | +sp_special_semi = ignore # ignore/add/remove/force |
1884 | + |
1885 | +# Add or remove space before ';' |
1886 | +sp_before_semi = remove # ignore/add/remove/force |
1887 | + |
1888 | +# Add or remove space before ';' in non-empty 'for' statements |
1889 | +sp_before_semi_for = ignore # ignore/add/remove/force |
1890 | + |
1891 | +# Add or remove space before a semicolon of an empty part of a for statment. |
1892 | +sp_before_semi_for_empty = force # ignore/add/remove/force |
1893 | + |
1894 | +# Add or remove space after the final semicolon of an empty part of a for statment: for ( ; ; <here> ). |
1895 | +sp_after_semi_for_empty = ignore # ignore/add/remove/force |
1896 | + |
1897 | +# Add or remove space before '[' (except '[]') |
1898 | +sp_before_square = ignore # ignore/add/remove/force |
1899 | + |
1900 | +# Add or remove space before '[]' |
1901 | +sp_before_squares = ignore # ignore/add/remove/force |
1902 | + |
1903 | +# Add or remove space inside '[' and ']' |
1904 | +sp_inside_square = remove # ignore/add/remove/force |
1905 | + |
1906 | +# Add or remove space after ',' |
1907 | +sp_after_comma = force # ignore/add/remove/force |
1908 | + |
1909 | +# Add or remove space before ',' |
1910 | +sp_before_comma = remove # ignore/add/remove/force |
1911 | + |
1912 | +# Add or remove space after class ':' |
1913 | +sp_after_class_colon = ignore # ignore/add/remove/force |
1914 | + |
1915 | +# Add or remove space before class ':' |
1916 | +sp_before_class_colon = ignore # ignore/add/remove/force |
1917 | + |
1918 | +# Add or remove space between 'operator' and operator sign |
1919 | +sp_after_operator = ignore # ignore/add/remove/force |
1920 | + |
1921 | +# Add or remove space between the operator symbol and the open paren, as in 'operator ++(' |
1922 | +sp_after_operator_sym = ignore # ignore/add/remove/force |
1923 | + |
1924 | +# Add or remove space after C/D cast, ie 'cast(int)a' vs 'cast(int) a' or '(int)a' vs '(int) a' |
1925 | +sp_after_cast = remove # ignore/add/remove/force |
1926 | + |
1927 | +# Add or remove spaces inside cast parens |
1928 | +sp_inside_paren_cast = remove # ignore/add/remove/force |
1929 | + |
1930 | +# Add or remove space between the type and open paren in a C++ cast, ie 'int(exp)' vs 'int (exp)' |
1931 | +sp_cpp_cast_paren = remove # ignore/add/remove/force |
1932 | + |
1933 | +# Add or remove space between 'sizeof' and '(' |
1934 | +sp_sizeof_paren = remove # ignore/add/remove/force |
1935 | + |
1936 | +# Add or remove space after the tag keyword (Pawn) |
1937 | +sp_after_tag = ignore # ignore/add/remove/force |
1938 | + |
1939 | +# Add or remove space inside enum '{' and '}' |
1940 | +sp_inside_braces_enum = force # ignore/add/remove/force |
1941 | + |
1942 | +# Add or remove space inside struct/union '{' and '}' |
1943 | +sp_inside_braces_struct = force # ignore/add/remove/force |
1944 | + |
1945 | +# Add or remove space inside '{' and '}' |
1946 | +sp_inside_braces = force # ignore/add/remove/force |
1947 | + |
1948 | +# Add or remove space inside '{}' |
1949 | +sp_inside_braces_empty = ignore # ignore/add/remove/force |
1950 | + |
1951 | +# Add or remove space between return type and function name |
1952 | +# A minimum of 1 is forced except for pointer return types. |
1953 | +sp_type_func = force # ignore/add/remove/force |
1954 | + |
1955 | +# Add or remove space between function name and '(' on function declaration |
1956 | +sp_func_proto_paren = remove # ignore/add/remove/force |
1957 | + |
1958 | +# Add or remove space between function name and '(' on function definition |
1959 | +sp_func_def_paren = remove # ignore/add/remove/force |
1960 | + |
1961 | +# Add or remove space inside empty function '()' |
1962 | +sp_inside_fparens = ignore # ignore/add/remove/force |
1963 | + |
1964 | +# Add or remove space inside function '(' and ')' |
1965 | +sp_inside_fparen = remove # ignore/add/remove/force |
1966 | + |
1967 | +# Add or remove space between ']' and '(' when part of a function call. |
1968 | +sp_square_fparen = ignore # ignore/add/remove/force |
1969 | + |
1970 | +# Add or remove space between ')' and '{' of function |
1971 | +sp_fparen_brace = add # ignore/add/remove/force |
1972 | + |
1973 | +# Add or remove space between function name and '(' on function calls |
1974 | +sp_func_call_paren = remove # ignore/add/remove/force |
1975 | + |
1976 | +# Add or remove space between the user function name and '(' on function calls |
1977 | +# You need to set a keyword to be a user function, like this: 'set func_call_user _' in the config file. |
1978 | +sp_func_call_user_paren = ignore # ignore/add/remove/force |
1979 | + |
1980 | +# Add or remove space between a constructor/destructor and the open paren |
1981 | +sp_func_class_paren = remove # ignore/add/remove/force |
1982 | + |
1983 | +# Add or remove space between 'return' and '(' |
1984 | +sp_return_paren = remove # ignore/add/remove/force |
1985 | + |
1986 | +# Add or remove space between '__attribute__' and '(' |
1987 | +sp_attribute_paren = remove # ignore/add/remove/force |
1988 | + |
1989 | +# Add or remove space between 'defined' and '(' in '#if defined (FOO)' |
1990 | +sp_defined_paren = remove # ignore/add/remove/force |
1991 | + |
1992 | +# Add or remove space between 'throw' and '(' in 'throw (something)' |
1993 | +sp_throw_paren = ignore # ignore/add/remove/force |
1994 | + |
1995 | +# Add or remove space between macro and value |
1996 | +sp_macro = ignore # ignore/add/remove/force |
1997 | + |
1998 | +# Add or remove space between macro function ')' and value |
1999 | +sp_macro_func = ignore # ignore/add/remove/force |
2000 | + |
2001 | +# Add or remove space between 'else' and '{' if on the same line |
2002 | +sp_else_brace = ignore # ignore/add/remove/force |
2003 | + |
2004 | +# Add or remove space between '}' and 'else' if on the same line |
2005 | +sp_brace_else = ignore # ignore/add/remove/force |
2006 | + |
2007 | +# Add or remove space between '}' and the name of a typedef on the same line |
2008 | +sp_brace_typedef = force # ignore/add/remove/force |
2009 | + |
2010 | +# Add or remove space between 'catch' and '{' if on the same line |
2011 | +sp_catch_brace = ignore # ignore/add/remove/force |
2012 | + |
2013 | +# Add or remove space between '}' and 'catch' if on the same line |
2014 | +sp_brace_catch = ignore # ignore/add/remove/force |
2015 | + |
2016 | +# Add or remove space between 'finally' and '{' if on the same line |
2017 | +sp_finally_brace = ignore # ignore/add/remove/force |
2018 | + |
2019 | +# Add or remove space between '}' and 'finally' if on the same line |
2020 | +sp_brace_finally = ignore # ignore/add/remove/force |
2021 | + |
2022 | +# Add or remove space between 'try' and '{' if on the same line |
2023 | +sp_try_brace = ignore # ignore/add/remove/force |
2024 | + |
2025 | +# Add or remove space between get/set and '{' if on the same line |
2026 | +sp_getset_brace = ignore # ignore/add/remove/force |
2027 | + |
2028 | +# Add or remove space before the '::' operator |
2029 | +sp_before_dc = remove # ignore/add/remove/force |
2030 | + |
2031 | +# Add or remove space after the '::' operator |
2032 | +sp_after_dc = remove # ignore/add/remove/force |
2033 | + |
2034 | +# Add or remove around the D named array initializer ':' operator |
2035 | +sp_d_array_colon = ignore # ignore/add/remove/force |
2036 | + |
2037 | +# Add or remove space after the '!' (not) operator. |
2038 | +sp_not = force # ignore/add/remove/force |
2039 | + |
2040 | +# Add or remove space after the '~' (invert) operator. |
2041 | +sp_inv = remove # ignore/add/remove/force |
2042 | + |
2043 | +# Add or remove space after the '&' (address-of) operator. |
2044 | +# This does not affect the spacing after a '&' that is part of a type. |
2045 | +sp_addr = remove # ignore/add/remove/force |
2046 | + |
2047 | +# Add or remove space around the '.' or '->' operators |
2048 | +sp_member = remove # ignore/add/remove/force |
2049 | + |
2050 | +# Add or remove space after the '*' (dereference) operator. |
2051 | +# This does not affect the spacing after a '*' that is part of a type. |
2052 | +sp_deref = remove # ignore/add/remove/force |
2053 | + |
2054 | +# Add or remove space after '+' or '-', as in 'x = -5' or 'y = +7' |
2055 | +sp_sign = remove # ignore/add/remove/force |
2056 | + |
2057 | +# Add or remove space before or after '++' and '--', as in '(--x)' or 'y++;' |
2058 | +sp_incdec = remove # ignore/add/remove/force |
2059 | + |
2060 | +# Add or remove space before a backslash-newline at the end of a line |
2061 | +sp_before_nl_cont = add # ignore/add/remove/force |
2062 | + |
2063 | +# Add or remove space after the scope '+' or '-', as in '-(void) foo;' or '+(int) bar;' |
2064 | +sp_after_oc_scope = ignore # ignore/add/remove/force |
2065 | + |
2066 | +# Add or remove space after the colon in message specs |
2067 | +# '-(int) f:(int) x;' vs '-(int) f: (int) x;' |
2068 | +sp_after_oc_colon = ignore # ignore/add/remove/force |
2069 | + |
2070 | +# Add or remove space before the colon in message specs |
2071 | +# '-(int) f: (int) x;' vs '-(int) f : (int) x;' |
2072 | +sp_before_oc_colon = ignore # ignore/add/remove/force |
2073 | + |
2074 | +# Add or remove space after the colon in message specs |
2075 | +# '[object setValue:1];' vs '[object setValue: 1];' |
2076 | +sp_after_send_oc_colon = ignore # ignore/add/remove/force |
2077 | + |
2078 | +# Add or remove space before the colon in message specs |
2079 | +# '[object setValue:1];' vs '[object setValue :1];' |
2080 | +sp_before_send_oc_colon = ignore # ignore/add/remove/force |
2081 | + |
2082 | +# Add or remove space after the (type) in message specs |
2083 | +# '-(int) f: (int) x;' vs '-(int) f: (int)x;' |
2084 | +sp_after_oc_type = ignore # ignore/add/remove/force |
2085 | + |
2086 | +# Add or remove space around the ':' in 'b ? t : f' |
2087 | +sp_cond_colon = ignore # ignore/add/remove/force |
2088 | + |
2089 | +# Add or remove space around the '?' in 'b ? t : f' |
2090 | +sp_cond_question = ignore # ignore/add/remove/force |
2091 | + |
2092 | +# Fix the spacing between 'case' and the label. Only 'ignore' and 'force' make sense here. |
2093 | +sp_case_label = remove # ignore/add/remove/force |
2094 | + |
2095 | +# |
2096 | +# Code alignment (not left column spaces/tabs) |
2097 | +# |
2098 | + |
2099 | +# Whether to keep non-indenting tabs |
2100 | +align_keep_tabs = false # false/true |
2101 | + |
2102 | +# Whether to use tabs for alinging |
2103 | +align_with_tabs = false # false/true |
2104 | + |
2105 | +# Whether to bump out to the next tab when aligning |
2106 | +align_on_tabstop = false # false/true |
2107 | + |
2108 | +# Whether to left-align numbers |
2109 | +align_number_left = false # false/true |
2110 | + |
2111 | +# Align variable definitions in prototypes and functions |
2112 | +align_func_params = false # false/true |
2113 | + |
2114 | +# Align parameters in single-line functions that have the same name. |
2115 | +# The function names must already be aligned with each other. |
2116 | +align_same_func_call_params = false # false/true |
2117 | + |
2118 | +# The span for aligning variable definitions (0=don't align) |
2119 | +align_var_def_span = 1 # number |
2120 | + |
2121 | +# How to align the star in variable definitions. |
2122 | +# 0=Part of the type 'void * foo;' |
2123 | +# 1=Part of the variable 'void *foo;' |
2124 | +# 2=Dangling 'void *foo;' |
2125 | +align_var_def_star_style = 1 # number |
2126 | + |
2127 | +# How to align the '&' in variable definitions. |
2128 | +# 0=Part of the type |
2129 | +# 1=Part of the variable |
2130 | +# 2=Dangling |
2131 | +align_var_def_amp_style = 0 # number |
2132 | + |
2133 | +# The threshold for aligning variable definitions (0=no limit) |
2134 | +align_var_def_thresh = 1 # number |
2135 | + |
2136 | +# The gap for aligning variable definitions |
2137 | +align_var_def_gap = 0 # number |
2138 | + |
2139 | +# Whether to align the colon in struct bit fields |
2140 | +align_var_def_colon = false # false/true |
2141 | + |
2142 | +# Whether to align inline struct/enum/union variable definitions |
2143 | +align_var_def_inline = false # false/true |
2144 | + |
2145 | +# The span for aligning on '=' in assignments (0=don't align) |
2146 | +align_assign_span = 0 # number |
2147 | + |
2148 | +# The threshold for aligning on '=' in assignments (0=no limit) |
2149 | +align_assign_thresh = 12 # number |
2150 | + |
2151 | +# The span for aligning on '=' in enums (0=don't align) |
2152 | +align_enum_equ_span = 0 # number |
2153 | + |
2154 | +# The threshold for aligning on '=' in enums (0=no limit) |
2155 | +align_enum_equ_thresh = 0 # number |
2156 | + |
2157 | +# The span for aligning struct/union (0=don't align) |
2158 | +align_var_struct_span = 0 # number |
2159 | + |
2160 | +# The threshold for aligning struct/union member definitions (0=no limit) |
2161 | +align_var_struct_thresh = 0 # number |
2162 | + |
2163 | +# The gap for aligning struct/union member definitions |
2164 | +align_var_struct_gap = 0 # number |
2165 | + |
2166 | +# The span for aligning struct initializer values (0=don't align) |
2167 | +align_struct_init_span = 3 # number |
2168 | + |
2169 | +# The minimum space between the type and the synonym of a typedef |
2170 | +align_typedef_gap = 3 # number |
2171 | + |
2172 | +# The span for aligning single-line typedefs (0=don't align) |
2173 | +align_typedef_span = 5 # number |
2174 | + |
2175 | +# How to align typedef'd functions with other typedefs |
2176 | +# 0: Don't mix them at all |
2177 | +# 1: align the open paren with the types |
2178 | +# 2: align the function type name with the other type names |
2179 | +align_typedef_func = 0 # number |
2180 | + |
2181 | +# Controls the positioning of the '*' in typedefs. Just try it. |
2182 | +# 0: Align on typdef type, ignore '*' |
2183 | +# 1: The '*' is part of type name: typedef int *pint; |
2184 | +# 2: The '*' is part of the type, but dangling: typedef int *pint; |
2185 | +align_typedef_star_style = 0 # number |
2186 | + |
2187 | +# Controls the positioning of the '&' in typedefs. Just try it. |
2188 | +# 0: Align on typdef type, ignore '&' |
2189 | +# 1: The '&' is part of type name: typedef int &pint; |
2190 | +# 2: The '&' is part of the type, but dangling: typedef int &pint; |
2191 | +align_typedef_amp_style = 0 # number |
2192 | + |
2193 | +# The span for aligning comments that end lines (0=don't align) |
2194 | +align_right_cmt_span = 3 # number |
2195 | + |
2196 | +# If aligning comments, mix with comments after '}' and #endif with less than 3 spaces before the comment |
2197 | +align_right_cmt_mix = false # false/true |
2198 | + |
2199 | +# If a trailing comment is more than this number of columns away from the text it follows, |
2200 | +# it will qualify for being aligned. |
2201 | +align_right_cmt_gap = 0 # number |
2202 | + |
2203 | +# The span for aligning function prototypes (0=don't align) |
2204 | +align_func_proto_span = 0 # number |
2205 | + |
2206 | +# Minimum gap between the return type and the function name. |
2207 | +align_func_proto_gap = 0 # number |
2208 | + |
2209 | +# Whether to mix aligning prototype and variable declarations. |
2210 | +# If true, align_var_def_XXX options are used instead of align_func_proto_XXX options. |
2211 | +align_mix_var_proto = false # false/true |
2212 | + |
2213 | +# Align single-line functions with function prototypes, uses align_func_proto_span |
2214 | +align_single_line_func = false # false/true |
2215 | + |
2216 | +# Aligning the open brace of single-line functions. |
2217 | +# Requires align_single_line_func=true, uses align_func_proto_span |
2218 | +align_single_line_brace = false # false/true |
2219 | + |
2220 | +# Gap for align_single_line_brace. |
2221 | +align_single_line_brace_gap = 0 # number |
2222 | + |
2223 | +# The span for aligning ObjC msg spec (0=don't align) |
2224 | +align_oc_msg_spec_span = 0 # number |
2225 | + |
2226 | +# Whether to align macros wrapped with a backslash and a newline. |
2227 | +# This will not work right if the macro contains a multi-line comment. |
2228 | +align_nl_cont = true # false/true |
2229 | + |
2230 | +# The minimum space between label and value of a preprocessor define |
2231 | +align_pp_define_gap = 4 # number |
2232 | + |
2233 | +# The span for aligning on '#define' bodies (0=don't align) |
2234 | +align_pp_define_span = 3 # number |
2235 | + |
2236 | +# Align lines that start with '<<' with previous '<<'. Default=true |
2237 | +align_left_shift = true # false/true |
2238 | + |
2239 | +# |
2240 | +# Newline adding and removing options |
2241 | +# |
2242 | + |
2243 | +# Whether to collapse empty blocks between '{' and '}' |
2244 | +nl_collapse_empty_body = true # false/true |
2245 | + |
2246 | +# Don't split one-line braced assignments - 'foo_t f = { 1, 2 };' |
2247 | +nl_assign_leave_one_liners = false # false/true |
2248 | + |
2249 | +# Don't split one-line braced statements inside a class xx { } body |
2250 | +nl_class_leave_one_liners = false # false/true |
2251 | + |
2252 | +# Don't split one-line enums: 'enum foo { BAR = 15 };' |
2253 | +nl_enum_leave_one_liners = false # false/true |
2254 | + |
2255 | +# Don't split one-line get or set functions |
2256 | +nl_getset_leave_one_liners = false # false/true |
2257 | + |
2258 | +# Don't split one-line function definitions - 'int foo() { return 0; }' |
2259 | +nl_func_leave_one_liners = false # false/true |
2260 | + |
2261 | +# Don't split one-line if/else statements - 'if(a) b++;' |
2262 | +nl_if_leave_one_liners = false # false/true |
2263 | + |
2264 | +# Add or remove newlines at the start of the file |
2265 | +nl_start_of_file = remove # ignore/add/remove/force |
2266 | + |
2267 | +# The number of newlines at the start of the file (only used if nl_start_of_file is 'add' or 'force' |
2268 | +nl_start_of_file_min = 0 # number |
2269 | + |
2270 | +# Add or remove newline at the end of the file |
2271 | +nl_end_of_file = force # ignore/add/remove/force |
2272 | + |
2273 | +# The number of newlines at the end of the file (only used if nl_end_of_file is 'add' or 'force') |
2274 | +nl_end_of_file_min = 1 # number |
2275 | + |
2276 | +# Add or remove newline between '=' and '{' |
2277 | +nl_assign_brace = force # ignore/add/remove/force |
2278 | + |
2279 | +# Add or remove newline between '=' and '[' (D only) |
2280 | +nl_assign_square = force # ignore/add/remove/force |
2281 | + |
2282 | +# Add or remove newline after '= [' (D only). Will also affect the newline before the ']' |
2283 | +nl_after_square_assign = force # ignore/add/remove/force |
2284 | + |
2285 | +# The number of newlines after a block of variable definitions |
2286 | +nl_func_var_def_blk = 1 # number |
2287 | + |
2288 | +# Add or remove newline between a function call's ')' and '{', as in: |
2289 | +# list_for_each(item, &list) { } |
2290 | +nl_fcall_brace = force # ignore/add/remove/force |
2291 | + |
2292 | +# Add or remove newline between 'enum' and '{' |
2293 | +nl_enum_brace = force # ignore/add/remove/force |
2294 | + |
2295 | +# Add or remove newline between 'struct and '{' |
2296 | +nl_struct_brace = force # ignore/add/remove/force |
2297 | + |
2298 | +# Add or remove newline between 'union' and '{' |
2299 | +nl_union_brace = force # ignore/add/remove/force |
2300 | + |
2301 | +# Add or remove newline between 'if' and '{' |
2302 | +nl_if_brace = force # ignore/add/remove/force |
2303 | + |
2304 | +# Add or remove newline between '}' and 'else' |
2305 | +nl_brace_else = force # ignore/add/remove/force |
2306 | + |
2307 | +# Add or remove newline between 'else if' and '{' |
2308 | +# If set to ignore, nl_if_brace is used instead |
2309 | +nl_elseif_brace = force # ignore/add/remove/force |
2310 | + |
2311 | +# Add or remove newline between 'else' and '{' |
2312 | +nl_else_brace = force # ignore/add/remove/force |
2313 | + |
2314 | +# Add or remove newline between 'else' and 'if' |
2315 | +nl_else_if = remove # ignore/add/remove/force |
2316 | + |
2317 | +# Add or remove newline between '}' and 'finally' |
2318 | +nl_brace_finally = force # ignore/add/remove/force |
2319 | + |
2320 | +# Add or remove newline between 'finally' and '{' |
2321 | +nl_finally_brace = force # ignore/add/remove/force |
2322 | + |
2323 | +# Add or remove newline between 'try' and '{' |
2324 | +nl_try_brace = force # ignore/add/remove/force |
2325 | + |
2326 | +# Add or remove newline between get/set and '{' |
2327 | +nl_getset_brace = force # ignore/add/remove/force |
2328 | + |
2329 | +# Add or remove newline between 'for' and '{' |
2330 | +nl_for_brace = force # ignore/add/remove/force |
2331 | + |
2332 | +# Add or remove newline between 'catch' and '{' |
2333 | +nl_catch_brace = force # ignore/add/remove/force |
2334 | + |
2335 | +# Add or remove newline between '}' and 'catch' |
2336 | +nl_brace_catch = force # ignore/add/remove/force |
2337 | + |
2338 | +# Add or remove newline between 'while' and '{' |
2339 | +nl_while_brace = force # ignore/add/remove/force |
2340 | + |
2341 | +# Add or remove newline between 'do' and '{' |
2342 | +nl_do_brace = force # ignore/add/remove/force |
2343 | + |
2344 | +# Add or remove newline between '}' and 'while' of 'do' statement |
2345 | +nl_brace_while = force # ignore/add/remove/force |
2346 | + |
2347 | +# Add or remove newline between 'switch' and '{' |
2348 | +nl_switch_brace = force # ignore/add/remove/force |
2349 | + |
2350 | +# Add or remove newline when condition spans two or more lines |
2351 | +nl_multi_line_cond = false # false/true |
2352 | + |
2353 | +# Force a newline in a define after the macro name for multi-line defines. |
2354 | +nl_multi_line_define = true # false/true |
2355 | + |
2356 | +# Whether to put a newline before 'case' statement |
2357 | +nl_before_case = true # false/true |
2358 | + |
2359 | +# Add or remove newline between ')' and 'throw' |
2360 | +nl_before_throw = ignore # ignore/add/remove/force |
2361 | + |
2362 | +# Whether to put a newline after 'case' statement |
2363 | +nl_after_case = true # false/true |
2364 | + |
2365 | +# Newline between namespace and { |
2366 | +nl_namespace_brace = add # ignore/add/remove/force |
2367 | + |
2368 | +# Add or remove newline between 'template<>' and whatever follows. |
2369 | +nl_template_class = add # ignore/add/remove/force |
2370 | + |
2371 | +# Add or remove newline between 'class' and '{' |
2372 | +nl_class_brace = add # ignore/add/remove/force |
2373 | + |
2374 | +# Add or remove newline after each ',' in the constructor member initialization |
2375 | +nl_class_init_args = force # ignore/add/remove/force |
2376 | + |
2377 | +# Add or remove newline between return type and function name in definition |
2378 | +nl_func_type_name = ignore # ignore/add/remove/force |
2379 | + |
2380 | +# Add or remove newline between return type and function name in a prototype |
2381 | +nl_func_proto_type_name = remove # ignore/add/remove/force |
2382 | + |
2383 | +# Add or remove newline between a function name and the opening '(' |
2384 | +nl_func_paren = remove # ignore/add/remove/force |
2385 | + |
2386 | +# Add or remove newline after '(' in a function declaration |
2387 | +nl_func_decl_start = remove # ignore/add/remove/force |
2388 | + |
2389 | +# Add or remove newline after each ',' in a function declaration |
2390 | +nl_func_decl_args = remove # ignore/add/remove/force |
2391 | + |
2392 | +# Add or remove newline before the ')' in a function declaration |
2393 | +nl_func_decl_end = remove # ignore/add/remove/force |
2394 | + |
2395 | +# Add or remove newline between function signature and '{' |
2396 | +nl_fdef_brace = add # ignore/add/remove/force |
2397 | + |
2398 | +# Whether to put a newline after 'return' statement |
2399 | +nl_after_return = true # false/true |
2400 | + |
2401 | +# Add or remove a newline between the return keyword and return expression. |
2402 | +nl_return_expr = remove # ignore/add/remove/force |
2403 | + |
2404 | +# Whether to put a newline after semicolons, except in 'for' statements |
2405 | +nl_after_semicolon = true # false/true |
2406 | + |
2407 | +# Whether to put a newline after brace open. |
2408 | +# This also adds a newline before the matching brace close. |
2409 | +nl_after_brace_open = true # false/true |
2410 | + |
2411 | +# If nl_after_brace_open and nl_after_brace_open_cmt are true, a newline is |
2412 | +# placed between the open brace and a trailing single-line comment. |
2413 | +nl_after_brace_open_cmt = false # false/true |
2414 | + |
2415 | +# Whether to put a newline after a virtual brace open. |
2416 | +# These occur in un-braced if/while/do/for statement bodies. |
2417 | +nl_after_vbrace_open = true # false/true |
2418 | + |
2419 | +# Whether to alter newlines in '#define' macros |
2420 | +nl_define_macro = true # false/true |
2421 | + |
2422 | +# Whether to not put blanks after '#ifxx', '#elxx', or before '#endif' |
2423 | +nl_squeeze_ifdef = false # false/true |
2424 | + |
2425 | +# Add or remove newline before 'if' |
2426 | +nl_before_if = ignore # ignore/add/remove/force |
2427 | + |
2428 | +# Add or remove newline after 'if' |
2429 | +nl_after_if = ignore # ignore/add/remove/force |
2430 | + |
2431 | +# Add or remove newline before 'for' |
2432 | +nl_before_for = ignore # ignore/add/remove/force |
2433 | + |
2434 | +# Add or remove newline after 'for' |
2435 | +nl_after_for = ignore # ignore/add/remove/force |
2436 | + |
2437 | +# Add or remove newline before 'while' |
2438 | +nl_before_while = ignore # ignore/add/remove/force |
2439 | + |
2440 | +# Add or remove newline after 'while' |
2441 | +nl_after_while = ignore # ignore/add/remove/force |
2442 | + |
2443 | +# Add or remove newline before 'switch' |
2444 | +nl_before_switch = force # ignore/add/remove/force |
2445 | + |
2446 | +# Add or remove newline after 'switch' |
2447 | +nl_after_switch = force # ignore/add/remove/force |
2448 | + |
2449 | +# Add or remove newline before 'do' |
2450 | +nl_before_do = ignore # ignore/add/remove/force |
2451 | + |
2452 | +# Add or remove newline after 'do' |
2453 | +nl_after_do = ignore # ignore/add/remove/force |
2454 | + |
2455 | +# Whether to double-space commented-entries in struct/enum |
2456 | +nl_ds_struct_enum_cmt = false # false/true |
2457 | + |
2458 | +# Whether to double-space before the close brace of a struct/union/enum |
2459 | +nl_ds_struct_enum_close_brace = false # false/true |
2460 | + |
2461 | +# Add or remove a newline around a class colon. |
2462 | +# Related to pos_class_colon, nl_class_init_args, and pos_comma. |
2463 | +nl_class_colon = ignore # ignore/add/remove/force |
2464 | + |
2465 | +# Change simple unbraced if statements into a one-liner |
2466 | +# 'if(b)\n i++;' => 'if(b) i++;' |
2467 | +nl_create_if_one_liner = false # false/true |
2468 | + |
2469 | +# Change simple unbraced for statements into a one-liner |
2470 | +# 'for (i=0;i<5;i++)\n foo(i);' => 'for (i=0;i<5;i++) foo(i);' |
2471 | +nl_create_for_one_liner = false # false/true |
2472 | + |
2473 | +# Change simple unbraced while statements into a one-liner |
2474 | +# 'while (i<5)\n foo(i++);' => 'while (i<5) foo(i++);' |
2475 | +nl_create_while_one_liner = false # false/true |
2476 | + |
2477 | +# |
2478 | +# Positioning options |
2479 | +# |
2480 | + |
2481 | +# The position of arithmetic operators in wrapped expressions |
2482 | +pos_arith = lead # ignore/lead/trail |
2483 | + |
2484 | +# The position of assignment in wrapped expressions |
2485 | +pos_assign = trail # ignore/lead/trail |
2486 | + |
2487 | +# The position of boolean operators in wrapped expressions |
2488 | +pos_bool = lead # ignore/lead/trail |
2489 | + |
2490 | +# The position of the comma in wrapped expressions |
2491 | +pos_comma = trail # ignore/lead/trail |
2492 | + |
2493 | +# The position of the comma in the constructor initialization list |
2494 | +pos_class_comma = trail # ignore/lead/trail |
2495 | + |
2496 | +# The position of colons between constructor and member initialization |
2497 | +pos_class_colon = lead # ignore/lead/trail |
2498 | + |
2499 | +# |
2500 | +# Line Splitting options |
2501 | +# |
2502 | + |
2503 | +# Try to limit code width to N number of columns |
2504 | +code_width = 76 # number |
2505 | + |
2506 | +# Whether to fully split long 'for' statements at semi-colons |
2507 | +ls_for_split_full = true # false/true |
2508 | + |
2509 | +# Whether to fully split long function protos/calls at commas |
2510 | +ls_func_split_full = true # false/true |
2511 | + |
2512 | +# |
2513 | +# Blank line options |
2514 | +# |
2515 | + |
2516 | +# The maximum consecutive newlines |
2517 | +nl_max = 4 # number |
2518 | + |
2519 | +# The number of newlines after a function prototype, if followed by another function prototype |
2520 | +nl_after_func_proto = 0 # number |
2521 | + |
2522 | +# The number of newlines after a function prototype, if not followed by another function prototype |
2523 | +nl_after_func_proto_group = 3 # number |
2524 | + |
2525 | +# The number of newlines after '}' of a multi-line function body |
2526 | +nl_after_func_body = 3 # number |
2527 | + |
2528 | +# The number of newlines after '}' of a single line function body |
2529 | +nl_after_func_body_one_liner = 1 # number |
2530 | + |
2531 | +# The minimum number of newlines before a multi-line comment. |
2532 | +# Doesn't apply if after a brace open or another multi-line comment. |
2533 | +nl_before_block_comment = 2 # number |
2534 | + |
2535 | +# The minimum number of newlines before a single-line C comment. |
2536 | +# Doesn't apply if after a brace open or other single-line C comments. |
2537 | +nl_before_c_comment = 1 # number |
2538 | + |
2539 | +# The minimum number of newlines before a CPP comment. |
2540 | +# Doesn't apply if after a brace open or other CPP comments. |
2541 | +nl_before_cpp_comment = 0 # number |
2542 | + |
2543 | +# Whether to force a newline after a mulit-line comment. |
2544 | +nl_after_multiline_comment = false # false/true |
2545 | + |
2546 | +# The number of newlines before a 'private:', 'public:', 'protected:', 'signals:', or 'slots:' label. |
2547 | +# Will not change the newline count if after a brace open. |
2548 | +# 0 = No change. |
2549 | +nl_before_access_spec = 1 # number |
2550 | + |
2551 | +# The number of newlines after a 'private:', 'public:', 'protected:', 'signals:', or 'slots:' label. |
2552 | +# 0 = No change. |
2553 | +nl_after_access_spec = 1 # number |
2554 | + |
2555 | +# The number of newlines between a function def and the function comment. |
2556 | +# 0 = No change. |
2557 | +nl_comment_func_def = 0 # number |
2558 | + |
2559 | +# Whether to remove blank lines after '{' |
2560 | +eat_blanks_after_open_brace = true # false/true |
2561 | + |
2562 | +# Whether to remove blank lines before '}' |
2563 | +eat_blanks_before_close_brace = true # false/true |
2564 | + |
2565 | +# |
2566 | +# Code modifying options (non-whitespace) |
2567 | +# |
2568 | + |
2569 | +# Add or remove braces on single-line 'do' statement |
2570 | +mod_full_brace_do = add # ignore/add/remove/force |
2571 | + |
2572 | +# Add or remove braces on single-line 'for' statement |
2573 | +mod_full_brace_for = add # ignore/add/remove/force |
2574 | + |
2575 | +# Add or remove braces on single-line function defintions. (Pawn) |
2576 | +mod_full_brace_function = ignore # ignore/add/remove/force |
2577 | + |
2578 | +# Add or remove braces on single-line 'if' statement. Will not remove the braces if they contain an 'else'. |
2579 | +mod_full_brace_if = ignore # ignore/add/remove/force |
2580 | + |
2581 | +# Don't remove braces around statements that span N newlines |
2582 | +mod_full_brace_nl = 0 # number |
2583 | + |
2584 | +# Add or remove braces on single-line 'while' statement |
2585 | +mod_full_brace_while = add # ignore/add/remove/force |
2586 | + |
2587 | +# Add or remove unnecessary paren on 'return' statement |
2588 | +mod_paren_on_return = remove # ignore/add/remove/force |
2589 | + |
2590 | +# Whether to change optional semicolons to real semicolons |
2591 | +mod_pawn_semicolon = false # false/true |
2592 | + |
2593 | +# Add parens on 'while' and 'if' statement around bools |
2594 | +mod_full_paren_if_bool = true # false/true |
2595 | + |
2596 | +# Whether to remove superfluous semicolons |
2597 | +mod_remove_extra_semicolon = true # false/true |
2598 | + |
2599 | +# If a function body exceeds the specified number of newlines and doesn't have a comment after |
2600 | +# the close brace, a comment will be added. |
2601 | +mod_add_long_function_closebrace_comment = 5 # number |
2602 | + |
2603 | +# If a switch body exceeds the specified number of newlines and doesn't have a comment after |
2604 | +# the close brace, a comment will be added. |
2605 | +mod_add_long_switch_closebrace_comment = 5 # number |
2606 | + |
2607 | +# If TRUE, will sort consecutive single-line 'import' statements [Java, D] |
2608 | +mod_sort_import = false # false/true |
2609 | + |
2610 | +# If TRUE, will sort consecutive single-line 'using' statements [C#] |
2611 | +mod_sort_using = false # false/true |
2612 | + |
2613 | +# If TRUE, will sort consecutive single-line '#include' statements [C/C++] and '#import' statements [Obj-C] |
2614 | +# This is generally a bad idea, as it may break your code. |
2615 | +mod_sort_include = false # false/true |
2616 | + |
2617 | +# If TRUE, it will move a 'break' that appears after a fully braced 'case' before the close brace. |
2618 | +mod_move_case_break = false # false/true |
2619 | + |
2620 | +# If TRUE, it will remove a void 'return;' that appears as the last statement in a function. |
2621 | +mod_remove_empty_return = true # false/true |
2622 | + |
2623 | +# |
2624 | +# Comment modifications |
2625 | +# |
2626 | + |
2627 | +# Try to wrap comments at cmt_width columns |
2628 | +cmt_width = 0 # number |
2629 | + |
2630 | +# If false, disable all multi-line comment changes, including cmt_width and leading chars. |
2631 | +# Default is true. |
2632 | +cmt_indent_multi = true # false/true |
2633 | + |
2634 | +# Whether to group c-comments that look like they are in a block |
2635 | +cmt_c_group = false # false/true |
2636 | + |
2637 | +# Whether to put an empty '/*' on the first line of the combined c-comment |
2638 | +cmt_c_nl_start = false # false/true |
2639 | + |
2640 | +# Whether to put a newline before the closing '*/' of the combined c-comment |
2641 | +cmt_c_nl_end = false # false/true |
2642 | + |
2643 | +# Whether to group cpp-comments that look like they are in a block |
2644 | +cmt_cpp_group = false # false/true |
2645 | + |
2646 | +# Whether to put an empty '/*' on the first line of the combined cpp-comment |
2647 | +cmt_cpp_nl_start = false # false/true |
2648 | + |
2649 | +# Whether to put a newline before the closing '*/' of the combined cpp-comment |
2650 | +cmt_cpp_nl_end = false # false/true |
2651 | + |
2652 | +# Whether to change cpp-comments into c-comments |
2653 | +cmt_cpp_to_c = false # false/true |
2654 | + |
2655 | +# Whether to put a star on subsequent comment lines |
2656 | +cmt_star_cont = true # false/true |
2657 | + |
2658 | +# The number of spaces to insert at the start of subsequent comment lines |
2659 | +cmt_sp_before_star_cont = 0 # number |
2660 | + |
2661 | +# The number of spaces to insert after the star on subsequent comment lines |
2662 | +cmt_sp_after_star_cont = 1 # number |
2663 | + |
2664 | +# For multi-line comments with a '*' lead, remove leading spaces if the first and last lines of |
2665 | +# the comment are the same length. Default=True |
2666 | +cmt_multi_check_last = true # false/true |
2667 | + |
2668 | +# The filename that contains text to insert at the head of a file if the file doesn't start with a C/C++ comment. |
2669 | +# Will substitue $(filename) with the current file's name. |
2670 | +cmt_insert_file_header = "" # string |
2671 | + |
2672 | +# The filename that contains text to insert before a function implementation if the function isn't preceeded with a C/C++ comment. |
2673 | +# Will substitue $(function) with the function name and $(javaparam) with the javadoc @param and @return stuff. |
2674 | +# Will also substitute $(fclass) with the class name: void CFoo::Bar() { ... } |
2675 | +cmt_insert_func_header = "" # string |
2676 | + |
2677 | +# The filename that contains text to insert before a class if the class isn't preceeded with a C/C++ comment. |
2678 | +# Will substitue $(class) with the class name. |
2679 | +cmt_insert_class_header = "" # string |
2680 | + |
2681 | +# If a preprocessor is encountered when stepping backwards from a function name, then |
2682 | +# this option decides whether the comment should be inserted. |
2683 | +# Affects cmt_insert_func_header and cmt_insert_class_header. |
2684 | +cmt_insert_before_preproc = false # false/true |
2685 | + |
2686 | +# |
2687 | +# Preprocessor options |
2688 | +# |
2689 | + |
2690 | +# Control indent of preprocessors inside #if blocks at brace level 0 |
2691 | +pp_indent = remove # ignore/add/remove/force |
2692 | + |
2693 | +# Whether to indent #if/#else/#endif at the brace level (true) or from column 1 (false) |
2694 | +pp_indent_at_level = false # false/true |
2695 | + |
2696 | +# If pp_indent_at_level=false, specifies the number of columns to indent per level. Default=1. |
2697 | +pp_indent_count = 1 # number |
2698 | + |
2699 | +# Add or remove space after # based on pp_level of #if blocks |
2700 | +pp_space = add # ignore/add/remove/force |
2701 | + |
2702 | +# Sets the number of spaces added with pp_space |
2703 | +pp_space_count = 1 # number |
2704 | + |
2705 | +# The indent for #region and #endregion in C# and '#pragma region' in C/C++ |
2706 | +pp_indent_region = 0 # number |
2707 | + |
2708 | +# Whether to indent the code between #region and #endregion |
2709 | +pp_region_indent_code = false # false/true |
2710 | + |
2711 | +# If pp_indent_at_level=true, sets the indent for #if, #else, and #endif when not at file-level |
2712 | +pp_indent_if = 0 # number |
2713 | + |
2714 | +# Control whether to indent the code between #if, #else and #endif when not at file-level |
2715 | +pp_if_indent_code = false # false/true |
2716 | + |
2717 | +# Whether to indent '#define' at the brace level (true) or from column 1 (false) |
2718 | +pp_define_at_level = false # false/true |
2719 | + |
2720 | +# You can force a token to be a type with the 'type' option. |
2721 | +# Example: |
2722 | +# type myfoo1 myfoo2 |
2723 | +# |
2724 | +# You can create custom macro-based indentation using macro-open, |
2725 | +# macro-else and macro-close. |
2726 | +# Example: |
2727 | +# macro-open BEGIN_TEMPLATE_MESSAGE_MAP |
2728 | +# macro-open BEGIN_MESSAGE_MAP |
2729 | +# macro-close END_MESSAGE_MAP |
2730 | +# |
2731 | +# You can assign any keyword to any type with the set option. |
2732 | +# set func_call_user _ N_ |
2733 | |
2734 | === modified file 'configure.ac' |
2735 | --- configure.ac 2009-08-20 16:14:47 +0000 |
2736 | +++ configure.ac 2009-09-09 21:03:12 +0000 |
2737 | @@ -30,8 +30,6 @@ |
2738 | AC_DEFINE([DRIZZLE_VERSION_ID],RELEASE_ID, |
2739 | [Version ID that can be easily used for numeric comparison]) |
2740 | |
2741 | -AC_DEFINE([_BACKWARD_BACKWARD_WARNING_H],[1],[Hack to disable deprecation warning in gcc]) |
2742 | - |
2743 | # The port that was assigned by IANA. |
2744 | DRIZZLE_TCP_PORT_DEFAULT=4427 |
2745 | |
2746 | @@ -43,11 +41,6 @@ |
2747 | AS_IF([test "x$GPERF" = "x"], |
2748 | AC_MSG_ERROR("Drizzle requires gperf to build.")) |
2749 | |
2750 | -AC_PATH_PROG(LCOV, lcov) |
2751 | -AC_PATH_PROG(GENHTML, genhtml) |
2752 | - |
2753 | -AM_CONDITIONAL(HAVE_LCOV,[test "x$LCOV" != "x"]) |
2754 | - |
2755 | AC_CHECK_PROGS(YACC, ['bison -y']) |
2756 | AS_IF([test "x$YACC" = "x" -a "$building_from_bzr" = "yes"],[ |
2757 | AC_MSG_ERROR(["bison is required for Drizzle to build from a bzr branch"]) |
2758 | @@ -64,7 +57,12 @@ |
2759 | AM_CONDITIONAL([BUILD_GETTEXT],[test "x$MSGMERGE" != "x" -a "x$MSGMERGE" != "x:"]) |
2760 | |
2761 | |
2762 | +dnl We need to turn on our CXXFLAGS to make sure it shows up correctly |
2763 | +save_CXXFLAGS="${CXXFLAGS}" |
2764 | +CXXFLAGS="${CXXFLAGS} ${AM_CXXFLAGS}" |
2765 | AC_CXX_STL_HASH |
2766 | +CXXFLAGS="${save_CXXFLAGS}" |
2767 | + |
2768 | AC_CXX_CSTDINT |
2769 | AC_CXX_CINTTYPES |
2770 | |
2771 | @@ -269,21 +267,35 @@ |
2772 | #-------------------------------------------------------------------- |
2773 | |
2774 | AC_HEADER_DIRENT |
2775 | -AC_HEADER_STDC |
2776 | AC_HEADER_SYS_WAIT |
2777 | AC_HEADER_STDBOOL |
2778 | +dnl Checks for header files. |
2779 | +dnl mysys/my_lib.cc |
2780 | +AC_CHECK_HEADERS(dirent.h ndir.h sys/dir.h sys/ndir.h) |
2781 | +dnl drizzled/drizzled.cc |
2782 | +AC_CHECK_HEADERS(select.h sys/select.h sys/mman.h) |
2783 | +dnl mysys/mf_tempfile.cc |
2784 | +AC_CHECK_HEADERS(paths.h) |
2785 | + |
2786 | +dnl unverified for now |
2787 | +AC_CHECK_HEADERS(termcap.h asm/termbits.h grp.h) |
2788 | AC_CHECK_HEADERS(fcntl.h float.h fpu_control.h ieeefp.h) |
2789 | -AC_CHECK_HEADERS(limits.h pwd.h select.h linux/config.h) |
2790 | +AC_CHECK_HEADERS(pwd.h) |
2791 | AC_CHECK_HEADERS(sys/fpu.h utime.h sys/utime.h ) |
2792 | AC_CHECK_HEADERS(synch.h sys/mman.h sys/socket.h) |
2793 | +AC_CHECK_HEADERS(sched.h) |
2794 | +AC_CHECK_HEADERS(sys/prctl.h ieeefp.h) |
2795 | +AC_CHECK_HEADERS(execinfo.h) |
2796 | + |
2797 | AC_CHECK_HEADERS([curses.h term.h],[],[], |
2798 | [[#ifdef HAVE_CURSES_H |
2799 | # include <curses.h> |
2800 | #endif |
2801 | ]]) |
2802 | -AC_CHECK_HEADERS(termio.h termios.h sched.h alloca.h) |
2803 | -AC_CHECK_HEADERS(sys/prctl.h ieeefp.h) |
2804 | -AC_CHECK_HEADERS(execinfo.h) |
2805 | +AC_CHECK_HEADERS(termio.h termios.h) |
2806 | +AS_IF([test "$ac_cv_header_termio_h" = "no" -a "$ac_cv_header_termios_h" = "no"],[ |
2807 | + AC_CHECK_FUNC(gtty, [], [AC_CHECK_LIB(compat, gtty)]) |
2808 | +]) |
2809 | |
2810 | #-------------------------------------------------------------------- |
2811 | # Check for system libraries. Adds the library to $LIBS |
2812 | @@ -291,88 +303,57 @@ |
2813 | #-------------------------------------------------------------------- |
2814 | |
2815 | AC_CHECK_LIB(m, floor, [], AC_CHECK_LIB(m, __infinity)) |
2816 | - |
2817 | +AC_CHECK_LIB(rt, clock_gettime) |
2818 | AC_CHECK_FUNC(setsockopt, [], [AC_CHECK_LIB(socket, setsockopt)]) |
2819 | -AC_CHECK_FUNC(yp_get_default_domain, [], |
2820 | - [AC_CHECK_LIB(nsl, yp_get_default_domain)]) |
2821 | -AC_CHECK_FUNC(p2open, [], [AC_CHECK_LIB(gen, p2open)]) |
2822 | # This may get things to compile even if bind-8 is installed |
2823 | AC_CHECK_FUNC(bind, [], [AC_CHECK_LIB(bind, bind)]) |
2824 | -# Check if crypt() exists in libc or libcrypt, sets LIBS if needed |
2825 | -AC_SEARCH_LIBS(crypt, crypt, AC_DEFINE(HAVE_CRYPT, 1, [crypt])) |
2826 | - |
2827 | -# Check rt for aio_read |
2828 | -AC_CHECK_LIB(rt, aio_read) |
2829 | |
2830 | # For the sched_yield() function on Solaris |
2831 | AC_CHECK_FUNC(sched_yield, [], |
2832 | [AC_CHECK_LIB(posix4, [sched_yield], |
2833 | [AC_DEFINE(HAVE_SCHED_YIELD, 1, [Have sched_yield function]) LIBS="$LIBS -lposix4"])]) |
2834 | |
2835 | -if test "$ac_cv_header_termio_h" = "no" -a "$ac_cv_header_termios_h" = "no" |
2836 | -then |
2837 | - AC_CHECK_FUNC(gtty, [], [AC_CHECK_LIB(compat, gtty)]) |
2838 | -fi |
2839 | |
2840 | AC_CHECK_TYPES([fp_except], [], [], [ |
2841 | #include <sys/types.h> |
2842 | #include <ieeefp.h> |
2843 | ]) |
2844 | |
2845 | -my_save_LIBS="$LIBS" |
2846 | +save_LIBS="$LIBS" |
2847 | LIBS="" |
2848 | AC_CHECK_LIB(dl,dlopen) |
2849 | AC_CHECK_FUNCS(dlopen) |
2850 | -if test "$ac_cv_func_dlopen" != "yes" |
2851 | -then |
2852 | +AS_IF([test "$ac_cv_func_dlopen" != "yes"],[ |
2853 | AC_MSG_ERROR([Drizzle requires dlopen]) |
2854 | -fi |
2855 | +]) |
2856 | LIBDL_LIBS="$LIBS" |
2857 | -LIBS="$my_save_LIBS" |
2858 | +LIBS="$save_LIBS" |
2859 | AC_SUBST(LIBDL_LIBS) |
2860 | |
2861 | |
2862 | -AC_ARG_WITH([atomic-ops], |
2863 | - [AS_HELP_STRING([--with-atomic-ops=rwlocks|smp|up], |
2864 | - [Implement atomic operations using pthread rwlocks or atomic CPU |
2865 | - instructions for multi-processor or uniprocessor |
2866 | - configuration. By default gcc built-in sync functions are used, |
2867 | - if available and 'smp' configuration otherwise.])], |
2868 | - [with_atomic_ops="$withval"], |
2869 | - [with_atomic_ops=smp]) |
2870 | - |
2871 | -case "$with_atomic_ops" in |
2872 | - "up") AC_DEFINE([MY_ATOMIC_MODE_DUMMY], [1], |
2873 | - [Assume single-CPU mode, no concurrency]) ;; |
2874 | - "rwlocks") AC_DEFINE([MY_ATOMIC_MODE_RWLOCKS], [1], |
2875 | - [Use pthread rwlocks for atomic ops]) ;; |
2876 | - "smp") |
2877 | - AC_CACHE_CHECK( |
2878 | - [whether the compiler provides atomic builtins], |
2879 | - [ac_cv_gcc_atomic_builtins], |
2880 | - [AC_RUN_IFELSE( |
2881 | - [AC_LANG_PROGRAM([],[[ |
2882 | - int foo= -10; int bar= 10; |
2883 | - if (!__sync_fetch_and_add(&foo, bar) || foo) |
2884 | - return -1; |
2885 | - bar= __sync_lock_test_and_set(&foo, bar); |
2886 | - if (bar || foo != 10) |
2887 | - return -1; |
2888 | - bar= __sync_val_compare_and_swap(&bar, foo, 15); |
2889 | - if (bar) |
2890 | - return -1; |
2891 | - return 0; |
2892 | - ]])], |
2893 | - [ac_cv_gcc_atomic_builtins=yes], |
2894 | - [ac_cv_gcc_atomic_builtins=no])]) |
2895 | - |
2896 | - if test "x$ac_cv_gcc_atomic_builtins" = "xyes"; then |
2897 | - AC_DEFINE(HAVE_GCC_ATOMIC_BUILTINS, 1, |
2898 | - [Define to 1 if compiler provides atomic builtins.]) |
2899 | - fi |
2900 | - ;; |
2901 | - *) AC_MSG_ERROR(["$with_atomic_ops" is not a valid value for --with-atomic-ops]) ;; |
2902 | -esac |
2903 | +AC_CACHE_CHECK( |
2904 | + [whether the compiler provides atomic builtins], |
2905 | + [drizzle_cv_gcc_atomic_builtins], |
2906 | + [AC_RUN_IFELSE( |
2907 | + [AC_LANG_PROGRAM([],[[ |
2908 | + int foo= -10; int bar= 10; |
2909 | + if (!__sync_fetch_and_add(&foo, bar) || foo) |
2910 | + return -1; |
2911 | + bar= __sync_lock_test_and_set(&foo, bar); |
2912 | + if (bar || foo != 10) |
2913 | + return -1; |
2914 | + bar= __sync_val_compare_and_swap(&bar, foo, 15); |
2915 | + if (bar) |
2916 | + return -1; |
2917 | + return 0; |
2918 | + ]])], |
2919 | + [drizzle_cv_gcc_atomic_builtins=yes], |
2920 | + [drizzle_cv_gcc_atomic_builtins=no])]) |
2921 | + |
2922 | +AS_IF([test "x$ac_cv_gcc_atomic_builtins" = "xyes"],[ |
2923 | + AC_DEFINE(HAVE_GCC_ATOMIC_BUILTINS, 1, |
2924 | + [Does the compiler provide atomic builtins.]) |
2925 | +]) |
2926 | |
2927 | |
2928 | AC_ARG_WITH([comment], |
2929 | @@ -391,7 +372,6 @@ |
2930 | |
2931 | dnl Checks for typedefs, structures, and compiler characteristics. |
2932 | |
2933 | -AC_STRUCT_TM |
2934 | # off_t is not a builtin type |
2935 | AC_CHECK_SIZEOF(off_t, 4) |
2936 | if test "$ac_cv_sizeof_off_t" -eq 0 |
2937 | @@ -399,9 +379,11 @@ |
2938 | AC_MSG_ERROR("Drizzle needs a off_t type.") |
2939 | fi |
2940 | AC_CHECK_SIZEOF(size_t) |
2941 | -AC_DEFINE_UNQUOTED([SIZEOF_SIZE_T],[$ac_cv_sizeof_size_t],[Size of size_t as computed by sizeof()]) |
2942 | +AC_DEFINE_UNQUOTED([SIZEOF_SIZE_T],[$ac_cv_sizeof_size_t], |
2943 | + [Size of size_t as computed by sizeof()]) |
2944 | AC_CHECK_SIZEOF(long long) |
2945 | -AC_DEFINE_UNQUOTED(SIZEOF_LONG_LONG,[$ac_cv_sizeof_long_long],[Size of long long as computed by sizeof()]) |
2946 | +AC_DEFINE_UNQUOTED(SIZEOF_LONG_LONG,[$ac_cv_sizeof_long_long], |
2947 | + [Size of long long as computed by sizeof()]) |
2948 | |
2949 | dnl |
2950 | dnl check if time_t is unsigned |
2951 | @@ -414,27 +396,11 @@ |
2952 | AC_CHECK_TYPES([sigset_t, off_t], [], [], [#include <sys/types.h>]) |
2953 | AC_CHECK_TYPES([uint, ulong]) |
2954 | |
2955 | -DRIZZLE_PTHREAD_YIELD |
2956 | - |
2957 | - |
2958 | -dnl Checks for header files. |
2959 | -AC_CHECK_HEADERS(malloc.h) |
2960 | |
2961 | dnl Checks for library functions. |
2962 | AC_FUNC_ALLOCA |
2963 | |
2964 | -AC_CHECK_FUNCS(issetugid) |
2965 | - |
2966 | -# Already-done: stdlib.h string.h unistd.h termios.h |
2967 | -AC_CHECK_HEADERS(stdarg.h dirent.h locale.h ndir.h sys/dir.h \ |
2968 | - sys/ndir.h sys/select.h \ |
2969 | - sys/mman.h termcap.h termio.h asm/termbits.h grp.h \ |
2970 | - paths.h) |
2971 | - |
2972 | -# Already-done: strcasecmp |
2973 | -AC_CHECK_FUNCS(lstat select) |
2974 | - |
2975 | -AC_HEADER_STAT |
2976 | + |
2977 | DRIZZLE_HAVE_TIOCGWINSZ |
2978 | DRIZZLE_HAVE_TIOCSTAT |
2979 | |
2980 | @@ -442,34 +408,55 @@ |
2981 | |
2982 | dnl Checks for library functions. |
2983 | |
2984 | -AC_FUNC_UTIME_NULL |
2985 | -AC_FUNC_VPRINTF |
2986 | - |
2987 | AC_CHECK_FUNCS(fcntl) |
2988 | -if test "x$ac_cv_func_fcntl" != "xyes" |
2989 | -then |
2990 | +AS_IF([test "x$ac_cv_func_fcntl" != "xyes"],[ |
2991 | AC_MSG_ERROR("Drizzle requires fcntl.") |
2992 | -fi |
2993 | - |
2994 | -AC_CONFIG_LIBOBJ_DIR([gnulib]) |
2995 | +]) |
2996 | + |
2997 | +AC_CACHE_CHECK([working fdatasync],[ac_cv_func_fdatasync],[ |
2998 | + AC_LANG_PUSH(C++) |
2999 | + AC_RUN_IFELSE([AC_LANG_PROGRAM([[ |
3000 | +#include <unistd.h> |
3001 | + ]],[[ |
3002 | +fdatasync(4); |
3003 | + ]])], |
3004 | + [ac_cv_func_fdatasync=yes], |
3005 | + [ac_cv_func_fdatasync=no]) |
3006 | + AC_LANG_POP() |
3007 | +]) |
3008 | +AS_IF([test "x${ac_cv_func_fdatasync}" = "xyes"], |
3009 | + [AC_DEFINE([HAVE_FDATASYNC],[1],[If the system has a working fdatasync])]) |
3010 | + |
3011 | +AC_CACHE_CHECK([working clock_gettime],[ac_cv_func_clock_gettime],[ |
3012 | + AC_LANG_PUSH(C++) |
3013 | + AC_RUN_IFELSE([AC_LANG_PROGRAM([[ |
3014 | +#include <ctime> |
3015 | + ]],[[ |
3016 | +timespec tp; |
3017 | +clock_gettime(CLOCK_REALTIME, &tp); |
3018 | + ]])], |
3019 | + [ac_cv_func_clock_gettime=yes], |
3020 | + [ac_cv_func_clock_gettime=no]) |
3021 | + AC_LANG_POP() |
3022 | +]) |
3023 | +AS_IF([test "x${ac_cv_func_clock_gettime}" = "xyes"], |
3024 | + [AC_DEFINE([HAVE_CLOCK_GETTIME],[1], |
3025 | + [Do we have the POSIX function clock_gettime])]) |
3026 | |
3027 | AC_CHECK_FUNCS( \ |
3028 | cuserid fchmod \ |
3029 | - fdatasync fpresetsticky fpsetmask fsync \ |
3030 | - getpassphrase getpwnam \ |
3031 | - getpwuid getrlimit getrusage index initgroups isnan \ |
3032 | - localtime_r log log2 gethrtime gmtime_r \ |
3033 | + fsync \ |
3034 | + getpwnam \ |
3035 | + getpwuid getrlimit getrusage initgroups isnan \ |
3036 | + localtime_r log2 gethrtime \ |
3037 | madvise \ |
3038 | - mkstemp mlockall poll pread pthread_attr_create mmap mmap64 \ |
3039 | - pthread_attr_getstacksize pthread_attr_setprio pthread_attr_setschedparam \ |
3040 | - pthread_attr_setstacksize pthread_condattr_create pthread_getsequence_np \ |
3041 | - pthread_key_delete pthread_rwlock_rdlock pthread_setprio \ |
3042 | - pthread_setprio_np pthread_setschedparam pthread_sigmask readlink \ |
3043 | - realpath rename rwlock_init setupterm \ |
3044 | + mkstemp mlockall poll pread mmap mmap64 \ |
3045 | + readlink \ |
3046 | + rename setupterm \ |
3047 | sigaction \ |
3048 | sigthreadmask \ |
3049 | - snprintf strpbrk \ |
3050 | - tell tempnam \ |
3051 | + snprintf \ |
3052 | + tempnam \ |
3053 | backtrace backtrace_symbols backtrace_symbols_fd) |
3054 | |
3055 | AC_LANG_PUSH(C++) |
3056 | @@ -483,156 +470,23 @@ |
3057 | ]]) |
3058 | AC_LANG_POP() |
3059 | |
3060 | - |
3061 | -AM_CONDITIONAL(BUILD_THR_RWLOCK,[test "$ac_cv_func_rwlock_init" -a "$ac_cv_funn_pthread_rwlock_rdlock"]) |
3062 | - |
3063 | - |
3064 | -# Sanity check: We chould not have any fseeko symbol unless |
3065 | -# large_file_support=yes |
3066 | -AC_CHECK_FUNC(fseeko, |
3067 | -[if test "$large_file_support" = no -a "x$TARGET_LINUX" = "xtrue"; |
3068 | -then |
3069 | - AC_MSG_ERROR("Found fseeko symbol but large_file_support is not enabled!") |
3070 | -fi] |
3071 | -) |
3072 | - |
3073 | -# Check definition of pthread_getspecific |
3074 | -AC_CACHE_CHECK([args to pthread_getspecific], [mysql_cv_getspecific_args], |
3075 | - [AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[ |
3076 | -#if !defined(_REENTRANT) |
3077 | -#define _REENTRANT |
3078 | -#endif |
3079 | -#ifndef _POSIX_PTHREAD_SEMANTICS |
3080 | -#define _POSIX_PTHREAD_SEMANTICS |
3081 | -#endif |
3082 | -#include <pthread.h> |
3083 | - ]], [[ |
3084 | -void *pthread_getspecific(pthread_key_t key); |
3085 | -pthread_getspecific((pthread_key_t) NULL); |
3086 | - ]])], |
3087 | - [mysql_cv_getspecific_args=POSIX], |
3088 | - [mysql_cv_getspecific_args=other])]) |
3089 | - if test "$mysql_cv_getspecific_args" = "other" |
3090 | - then |
3091 | - AC_DEFINE([HAVE_NONPOSIX_PTHREAD_GETSPECIFIC], [1], |
3092 | - [For some non posix threads]) |
3093 | - fi |
3094 | - |
3095 | - # Check definition of pthread_mutex_init |
3096 | - AC_CACHE_CHECK([args to pthread_mutex_init], [mysql_cv_mutex_init_args], |
3097 | - [AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[ |
3098 | -#ifndef _REENTRANT |
3099 | -#define _REENTRANT |
3100 | -#endif |
3101 | -#ifndef _POSIX_PTHREAD_SEMANTICS |
3102 | -#define _POSIX_PTHREAD_SEMANTICS |
3103 | -#endif |
3104 | -#include <pthread.h> ]], [[ |
3105 | - pthread_mutexattr_t attr; |
3106 | - pthread_mutex_t mp; |
3107 | - pthread_mutex_init(&mp,&attr); ]])], |
3108 | - [mysql_cv_mutex_init_args=POSIX], |
3109 | - [mysql_cv_mutex_init_args=other])]) |
3110 | - if test "$mysql_cv_mutex_init_args" = "other" |
3111 | - then |
3112 | - AC_DEFINE([HAVE_NONPOSIX_PTHREAD_MUTEX_INIT], [1], |
3113 | - [For some non posix threads]) |
3114 | - fi |
3115 | -#---END: |
3116 | - |
3117 | -#---START: Used in for client configure |
3118 | # Check definition of readdir_r |
3119 | -AC_CACHE_CHECK([args to readdir_r], [mysql_cv_readdir_r], |
3120 | - [AC_LINK_IFELSE([AC_LANG_PROGRAM([[ |
3121 | -#ifndef _REENTRANT |
3122 | -#define _REENTRANT |
3123 | -#endif |
3124 | -#ifndef _POSIX_PTHREAD_SEMANTICS |
3125 | -#define _POSIX_PTHREAD_SEMANTICS |
3126 | -#endif |
3127 | -#include <pthread.h> |
3128 | -#include <dirent.h>]], [[ int readdir_r(DIR *dirp, struct dirent *entry, struct dirent **result); |
3129 | -readdir_r((DIR *) NULL, (struct dirent *) NULL, (struct dirent **) NULL); ]])], |
3130 | - [mysql_cv_readdir_r=POSIX], |
3131 | - [mysql_cv_readdir_r=other])]) |
3132 | -if test "$mysql_cv_readdir_r" = "POSIX" |
3133 | -then |
3134 | - AC_DEFINE([HAVE_READDIR_R], [1], [POSIX readdir_r]) |
3135 | -fi |
3136 | - |
3137 | -# Check definition of posix sigwait() |
3138 | -AC_CACHE_CHECK([style of sigwait], [mysql_cv_sigwait], |
3139 | - [AC_LINK_IFELSE([AC_LANG_PROGRAM([[ |
3140 | -#ifndef _REENTRANT |
3141 | -#define _REENTRANT |
3142 | -#endif |
3143 | -#ifndef _POSIX_PTHREAD_SEMANTICS |
3144 | -#define _POSIX_PTHREAD_SEMANTICS |
3145 | -#endif |
3146 | -#include <pthread.h> |
3147 | -#include <signal.h> |
3148 | - ]], [[ |
3149 | -#ifndef _AIX |
3150 | -sigset_t set; |
3151 | -int sig; |
3152 | -sigwait(&set,&sig); |
3153 | -#endif |
3154 | - ]])], |
3155 | - [mysql_cv_sigwait=POSIX], |
3156 | - [mysql_cv_sigwait=other])]) |
3157 | -if test "$mysql_cv_sigwait" = "POSIX" |
3158 | -then |
3159 | - AC_DEFINE([HAVE_SIGWAIT], [1], [POSIX sigwait]) |
3160 | -fi |
3161 | - |
3162 | -if test "$mysql_cv_sigwait" != "POSIX" |
3163 | -then |
3164 | -unset mysql_cv_sigwait |
3165 | -# Check definition of posix sigwait() |
3166 | -AC_CACHE_CHECK([style of sigwait], [mysql_cv_sigwait], |
3167 | - [AC_LINK_IFELSE([AC_LANG_PROGRAM([[ |
3168 | -#ifndef _REENTRANT |
3169 | -#define _REENTRANT |
3170 | -#endif |
3171 | -#ifndef _POSIX_PTHREAD_SEMANTICS |
3172 | -#define _POSIX_PTHREAD_SEMANTICS |
3173 | -#endif |
3174 | -#include <pthread.h> |
3175 | -#include <signal.h> |
3176 | - ]], [[ |
3177 | -sigset_t set; |
3178 | -int sig; |
3179 | -sigwait(&set); |
3180 | - ]])], |
3181 | - [mysql_cv_sigwait=NONPOSIX], |
3182 | - [mysql_cv_sigwait=other])]) |
3183 | -if test "$mysql_cv_sigwait" = "NONPOSIX" |
3184 | -then |
3185 | - AC_DEFINE([HAVE_NONPOSIX_SIGWAIT], [1], [sigwait with one argument]) |
3186 | -fi |
3187 | -fi |
3188 | -#---END: |
3189 | - |
3190 | -# Check if pthread_attr_setscope() exists |
3191 | -AC_CACHE_CHECK([for pthread_attr_setscope], [mysql_cv_pthread_attr_setscope], |
3192 | - [AC_LINK_IFELSE([AC_LANG_PROGRAM([[ |
3193 | -#ifndef _REENTRANT |
3194 | -#define _REENTRANT |
3195 | -#endif |
3196 | -#ifndef _POSIX_PTHREAD_SEMANTICS |
3197 | -#define _POSIX_PTHREAD_SEMANTICS |
3198 | -#endif |
3199 | -#include <pthread.h> |
3200 | - ]], [[ |
3201 | -pthread_attr_t thr_attr; |
3202 | -pthread_attr_setscope(&thr_attr,0); |
3203 | - ]])], |
3204 | - [mysql_cv_pthread_attr_setscope=yes], |
3205 | - [mysql_cv_pthread_attr_setscope=no])]) |
3206 | -if test "$mysql_cv_pthread_attr_setscope" = "yes" |
3207 | -then |
3208 | - AC_DEFINE([HAVE_PTHREAD_ATTR_SETSCOPE], [1], [pthread_attr_setscope]) |
3209 | -fi |
3210 | +AC_LANG_PUSH([C++]) |
3211 | +AC_CACHE_CHECK([for POSIX readdir_r], |
3212 | + [drizzle_cv_readdir_r], |
3213 | + [AC_LINK_IFELSE([AC_LANG_PROGRAM([[ |
3214 | +#include <stdlib.h> |
3215 | +#include <dirent.h> |
3216 | + ]], [[ |
3217 | +readdir_r((DIR *) NULL, (struct dirent *) NULL, (struct dirent **) NULL); |
3218 | +]])], |
3219 | + [drizzle_cv_readdir_r=yes], |
3220 | + [drizzle_cv_readdir_r=no])]) |
3221 | +AC_LANG_POP() |
3222 | +AS_IF([test "$drizzle_cv_readdir_r" = "no"],[ |
3223 | + AC_MSG_ERROR([POSIX readdir_r is required]) |
3224 | +]) |
3225 | + |
3226 | |
3227 | AC_LANG_PUSH([C++]) |
3228 | AC_CHECK_HEADERS(cxxabi.h) |
3229 | @@ -656,7 +510,7 @@ |
3230 | |
3231 | dnl Has to be done late, as the plugin may need to check for existence of |
3232 | dnl functions tested above |
3233 | -PANDORA_PLUGINS |
3234 | +PANDORA_PLUGINS([drizzled/plugin/config.h]) |
3235 | |
3236 | dnl GCC Precompiled Header Support |
3237 | dnl re-enable later |
3238 | |
3239 | === modified file 'drizzled/Makefile.am' |
3240 | --- drizzled/Makefile.am 2009-08-27 00:39:15 +0000 |
3241 | +++ drizzled/Makefile.am 2009-09-09 18:03:41 +0000 |
3242 | @@ -31,53 +31,10 @@ |
3243 | atomic/pthread_traits.h \ |
3244 | atomic/sun_studio.h \ |
3245 | atomics.h \ |
3246 | - authentication.h \ |
3247 | base.h \ |
3248 | cached_item.h \ |
3249 | calendar.h \ |
3250 | check_stack_overrun.h \ |
3251 | - statement.h \ |
3252 | - statement/alter_schema.h \ |
3253 | - statement/alter_table.h \ |
3254 | - statement/analyze.h \ |
3255 | - statement/change_schema.h \ |
3256 | - statement/check.h \ |
3257 | - statement/checksum.h \ |
3258 | - statement/commit.h \ |
3259 | - statement/create_index.h \ |
3260 | - statement/create_schema.h \ |
3261 | - statement/create_table.h \ |
3262 | - statement/delete.h \ |
3263 | - statement/drop_index.h \ |
3264 | - statement/drop_schema.h \ |
3265 | - statement/drop_table.h \ |
3266 | - statement/empty_query.h \ |
3267 | - statement/flush.h \ |
3268 | - statement/insert.h \ |
3269 | - statement/insert_select.h \ |
3270 | - statement/kill.h \ |
3271 | - statement/load.h \ |
3272 | - statement/optimize.h \ |
3273 | - statement/release_savepoint.h \ |
3274 | - statement/rename_table.h \ |
3275 | - statement/replace.h \ |
3276 | - statement/replace_select.h \ |
3277 | - statement/rollback.h \ |
3278 | - statement/rollback_to_savepoint.h \ |
3279 | - statement/savepoint.h \ |
3280 | - statement/select.h \ |
3281 | - statement/set_option.h \ |
3282 | - statement/show_create.h \ |
3283 | - statement/show_create_schema.h \ |
3284 | - statement/show_engine_status.h \ |
3285 | - statement/show_errors.h \ |
3286 | - statement/show_processlist.h \ |
3287 | - statement/show_status.h \ |
3288 | - statement/show_warnings.h \ |
3289 | - statement/start_transaction.h \ |
3290 | - statement/truncate.h \ |
3291 | - statement/unlock_tables.h \ |
3292 | - statement/update.h \ |
3293 | common.h \ |
3294 | comp_creator.h \ |
3295 | cost_vect.h \ |
3296 | @@ -88,10 +45,10 @@ |
3297 | definitions.h \ |
3298 | diagnostics_area.h \ |
3299 | discrete_interval.h \ |
3300 | + discrete_intervals_list.h \ |
3301 | dtcollation.h \ |
3302 | enum.h \ |
3303 | enum_nested_loop_state.h \ |
3304 | - errmsg.h \ |
3305 | errmsg_print.h \ |
3306 | error.h \ |
3307 | error_injection.h \ |
3308 | @@ -234,7 +191,6 @@ |
3309 | hybrid_type_traits_decimal.h \ |
3310 | hybrid_type_traits_integer.h \ |
3311 | index_hint.h \ |
3312 | - info_schema.h \ |
3313 | internal_error_handler.h \ |
3314 | item.h \ |
3315 | item/basic_constant.h \ |
3316 | @@ -287,8 +243,8 @@ |
3317 | lex_string.h \ |
3318 | lex_symbol.h \ |
3319 | lock.h \ |
3320 | - logging.h \ |
3321 | lookup_symbol.h \ |
3322 | + memory/multi_malloc.h \ |
3323 | my_decimal.h\ |
3324 | my_var.h \ |
3325 | name_resolution_context.h \ |
3326 | @@ -296,33 +252,35 @@ |
3327 | natural_join_column.h \ |
3328 | nested_join.h \ |
3329 | open_tables_state.h \ |
3330 | + opt_range.h \ |
3331 | optimizer/key_field.h \ |
3332 | optimizer/position.h \ |
3333 | optimizer/sargable_param.h \ |
3334 | - opt_range.h \ |
3335 | order.h \ |
3336 | plugin.h \ |
3337 | - plugin/applier.h \ |
3338 | plugin/authentication.h \ |
3339 | - plugin/error_message_handler.h \ |
3340 | + plugin/client.h \ |
3341 | + plugin/command_applier.h \ |
3342 | + plugin/command_reader.h \ |
3343 | + plugin/command_replicator.h \ |
3344 | + plugin/error_message.h \ |
3345 | plugin/function.h \ |
3346 | plugin/handle.h \ |
3347 | + plugin/info_schema.h \ |
3348 | plugin/library.h \ |
3349 | plugin/listen.h \ |
3350 | - plugin/logging_handler.h \ |
3351 | + plugin/listen_tcp.h \ |
3352 | + plugin/logging.h \ |
3353 | plugin/manifest.h \ |
3354 | - plugin/protocol.h \ |
3355 | - plugin/qcache.h \ |
3356 | + plugin/null_client.h \ |
3357 | + plugin/query_cache.h \ |
3358 | plugin/registry.h \ |
3359 | - plugin/replicator.h \ |
3360 | plugin/scheduler.h \ |
3361 | plugin/storage_engine.h \ |
3362 | probes.h \ |
3363 | - qcache.h \ |
3364 | query_id.h \ |
3365 | registry.h \ |
3366 | replication_services.h \ |
3367 | - scheduling.h \ |
3368 | security_context.h \ |
3369 | select_create.h \ |
3370 | select_dump.h \ |
3371 | @@ -341,8 +299,16 @@ |
3372 | session.h \ |
3373 | set_var.h \ |
3374 | show.h \ |
3375 | + slot/authentication.h \ |
3376 | + slot/command_replicator.h \ |
3377 | + slot/command_applier.h \ |
3378 | + slot/error_message.h \ |
3379 | slot/function.h \ |
3380 | + slot/info_schema.h \ |
3381 | slot/listen.h \ |
3382 | + slot/logging.h \ |
3383 | + slot/query_cache.h \ |
3384 | + slot/scheduler.h \ |
3385 | sql_alloc.h \ |
3386 | sql_array.h \ |
3387 | sql_base.h \ |
3388 | @@ -353,7 +319,6 @@ |
3389 | sql_load.h \ |
3390 | sql_locale.h \ |
3391 | sql_parse.h \ |
3392 | - sql_plugin.h \ |
3393 | sql_select.h \ |
3394 | sql_sort.h \ |
3395 | sql_state.h \ |
3396 | @@ -361,6 +326,48 @@ |
3397 | sql_table.h \ |
3398 | sql_union.h \ |
3399 | stacktrace.h \ |
3400 | + statement.h \ |
3401 | + statement/alter_schema.h \ |
3402 | + statement/alter_table.h \ |
3403 | + statement/analyze.h \ |
3404 | + statement/change_schema.h \ |
3405 | + statement/check.h \ |
3406 | + statement/checksum.h \ |
3407 | + statement/commit.h \ |
3408 | + statement/create_index.h \ |
3409 | + statement/create_schema.h \ |
3410 | + statement/create_table.h \ |
3411 | + statement/delete.h \ |
3412 | + statement/drop_index.h \ |
3413 | + statement/drop_schema.h \ |
3414 | + statement/drop_table.h \ |
3415 | + statement/empty_query.h \ |
3416 | + statement/flush.h \ |
3417 | + statement/insert.h \ |
3418 | + statement/insert_select.h \ |
3419 | + statement/kill.h \ |
3420 | + statement/load.h \ |
3421 | + statement/optimize.h \ |
3422 | + statement/release_savepoint.h \ |
3423 | + statement/rename_table.h \ |
3424 | + statement/replace.h \ |
3425 | + statement/replace_select.h \ |
3426 | + statement/rollback.h \ |
3427 | + statement/rollback_to_savepoint.h \ |
3428 | + statement/savepoint.h \ |
3429 | + statement/select.h \ |
3430 | + statement/set_option.h \ |
3431 | + statement/show_create.h \ |
3432 | + statement/show_create_schema.h \ |
3433 | + statement/show_engine_status.h \ |
3434 | + statement/show_errors.h \ |
3435 | + statement/show_processlist.h \ |
3436 | + statement/show_status.h \ |
3437 | + statement/show_warnings.h \ |
3438 | + statement/start_transaction.h \ |
3439 | + statement/truncate.h \ |
3440 | + statement/unlock_tables.h \ |
3441 | + statement/update.h \ |
3442 | stored_key.h \ |
3443 | structs.h \ |
3444 | symbol_hash.h \ |
3445 | @@ -368,8 +375,8 @@ |
3446 | table_ident.h \ |
3447 | table_list.h \ |
3448 | table_map_iterator.h \ |
3449 | + table_proto.h \ |
3450 | table_reference.h \ |
3451 | - table_proto.h \ |
3452 | table_share.h \ |
3453 | temporal.h \ |
3454 | temporal_format.h \ |
3455 | @@ -379,11 +386,11 @@ |
3456 | tztime.h \ |
3457 | unique.h \ |
3458 | unireg.h \ |
3459 | + user_var_entry.h \ |
3460 | utf8.h \ |
3461 | utf8/checked.h \ |
3462 | utf8/core.h \ |
3463 | utf8/unchecked.h \ |
3464 | - user_var_entry.h \ |
3465 | xid.h |
3466 | |
3467 | noinst_LTLIBRARIES = \ |
3468 | @@ -406,6 +413,7 @@ |
3469 | |
3470 | |
3471 | noinst_HEADERS = \ |
3472 | + hash.h \ |
3473 | gettext.h \ |
3474 | global.h \ |
3475 | server_includes.h \ |
3476 | @@ -413,66 +421,26 @@ |
3477 | util/test.h |
3478 | |
3479 | drizzled_SOURCES = \ |
3480 | - authentication.cc \ |
3481 | cached_item.cc \ |
3482 | calendar.cc \ |
3483 | check_stack_overrun.cc \ |
3484 | - statement/alter_schema.cc \ |
3485 | - statement/alter_table.cc \ |
3486 | - statement/analyze.cc \ |
3487 | - statement/change_schema.cc \ |
3488 | - statement/check.cc \ |
3489 | - statement/checksum.cc \ |
3490 | - statement/commit.cc \ |
3491 | - statement/create_index.cc \ |
3492 | - statement/create_schema.cc \ |
3493 | - statement/create_table.cc \ |
3494 | - statement/delete.cc \ |
3495 | - statement/drop_index.cc \ |
3496 | - statement/drop_schema.cc \ |
3497 | - statement/drop_table.cc \ |
3498 | - statement/empty_query.cc \ |
3499 | - statement/flush.cc \ |
3500 | - statement/insert.cc \ |
3501 | - statement/insert_select.cc \ |
3502 | - statement/kill.cc \ |
3503 | - statement/load.cc \ |
3504 | - statement/optimize.cc \ |
3505 | - statement/release_savepoint.cc \ |
3506 | - statement/rename_table.cc \ |
3507 | - statement/replace.cc \ |
3508 | - statement/replace_select.cc \ |
3509 | - statement/rollback.cc \ |
3510 | - statement/rollback_to_savepoint.cc \ |
3511 | - statement/savepoint.cc \ |
3512 | - statement/select.cc \ |
3513 | - statement/set_option.cc \ |
3514 | - statement/show_create.cc \ |
3515 | - statement/show_create_schema.cc \ |
3516 | - statement/show_engine_status.cc \ |
3517 | - statement/show_errors.cc \ |
3518 | - statement/show_processlist.cc \ |
3519 | - statement/show_status.cc \ |
3520 | - statement/show_warnings.cc \ |
3521 | - statement/start_transaction.cc \ |
3522 | - statement/truncate.cc \ |
3523 | - statement/unlock_tables.cc \ |
3524 | - statement/update.cc \ |
3525 | comp_creator.cc \ |
3526 | create_field.cc \ |
3527 | current_session.cc \ |
3528 | diagnostics_area.cc \ |
3529 | + discrete_interval.cc \ |
3530 | + discrete_intervals_list.cc \ |
3531 | drizzled.cc \ |
3532 | dtcollation.cc \ |
3533 | - errmsg.cc \ |
3534 | + errmsg_print.cc \ |
3535 | error.cc \ |
3536 | - errmsg_print.cc \ |
3537 | + field.cc \ |
3538 | field/blob.cc \ |
3539 | field/date.cc \ |
3540 | field/datetime.cc \ |
3541 | - field/enum.cc \ |
3542 | field/decimal.cc \ |
3543 | field/double.cc \ |
3544 | + field/enum.cc \ |
3545 | field/int64_t.cc \ |
3546 | field/long.cc \ |
3547 | field/null.cc \ |
3548 | @@ -481,7 +449,6 @@ |
3549 | field/str.cc \ |
3550 | field/timestamp.cc \ |
3551 | field/varstring.cc \ |
3552 | - field.cc \ |
3553 | field_conv.cc \ |
3554 | field_iterator.cc \ |
3555 | filesort.cc \ |
3556 | @@ -497,17 +464,6 @@ |
3557 | function/get_user_var.cc \ |
3558 | function/last_insert.cc \ |
3559 | function/locate.cc \ |
3560 | - function/min_max.cc \ |
3561 | - function/num1.cc \ |
3562 | - function/numhybrid.cc \ |
3563 | - function/num_op.cc \ |
3564 | - function/row_count.cc \ |
3565 | - function/set_user_var.cc \ |
3566 | - function/sign.cc \ |
3567 | - function/signed.cc \ |
3568 | - function/units.cc \ |
3569 | - function/unsigned.cc \ |
3570 | - function/user_var_as_out_param.cc \ |
3571 | function/math/abs.cc \ |
3572 | function/math/acos.cc \ |
3573 | function/math/asin.cc \ |
3574 | @@ -518,10 +474,10 @@ |
3575 | function/math/divide.cc \ |
3576 | function/math/exp.cc \ |
3577 | function/math/floor.cc \ |
3578 | + function/math/int.cc \ |
3579 | function/math/int_divide.cc \ |
3580 | + function/math/int_val.cc \ |
3581 | function/math/integer.cc \ |
3582 | - function/math/int.cc \ |
3583 | - function/math/int_val.cc \ |
3584 | function/math/ln.cc \ |
3585 | function/math/log.cc \ |
3586 | function/math/minus.cc \ |
3587 | @@ -537,6 +493,14 @@ |
3588 | function/math/sin.cc \ |
3589 | function/math/sqrt.cc \ |
3590 | function/math/tan.cc \ |
3591 | + function/min_max.cc \ |
3592 | + function/num1.cc \ |
3593 | + function/num_op.cc \ |
3594 | + function/numhybrid.cc \ |
3595 | + function/row_count.cc \ |
3596 | + function/set_user_var.cc \ |
3597 | + function/sign.cc \ |
3598 | + function/signed.cc \ |
3599 | function/str/alloc_buffer.cc \ |
3600 | function/str/binary.cc \ |
3601 | function/str/char.cc \ |
3602 | @@ -573,8 +537,8 @@ |
3603 | function/time/date_format.cc \ |
3604 | function/time/dayname.cc \ |
3605 | function/time/dayofmonth.cc \ |
3606 | + function/time/dayofyear.cc \ |
3607 | function/time/extract.cc \ |
3608 | - function/time/dayofyear.cc \ |
3609 | function/time/from_days.cc \ |
3610 | function/time/from_unixtime.cc \ |
3611 | function/time/hour.cc \ |
3612 | @@ -584,9 +548,9 @@ |
3613 | function/time/minute.cc \ |
3614 | function/time/month.cc \ |
3615 | function/time/now.cc \ |
3616 | - function/time/quarter.cc \ |
3617 | function/time/period_add.cc \ |
3618 | function/time/period_diff.cc \ |
3619 | + function/time/quarter.cc \ |
3620 | function/time/second.cc \ |
3621 | function/time/sysdate_local.cc \ |
3622 | function/time/timestamp_diff.cc \ |
3623 | @@ -595,11 +559,15 @@ |
3624 | function/time/unix_timestamp.cc \ |
3625 | function/time/weekday.cc \ |
3626 | function/time/year.cc \ |
3627 | + function/units.cc \ |
3628 | + function/unsigned.cc \ |
3629 | + function/user_var_as_out_param.cc \ |
3630 | ha_trx_info.cc \ |
3631 | hybrid_type_traits.cc \ |
3632 | hybrid_type_traits_decimal.cc \ |
3633 | hybrid_type_traits_integer.cc \ |
3634 | index_hint.cc \ |
3635 | + item.cc \ |
3636 | item/bin_string.cc \ |
3637 | item/cache.cc \ |
3638 | item/cache_decimal.cc \ |
3639 | @@ -617,10 +585,10 @@ |
3640 | item/field.cc \ |
3641 | item/float.cc \ |
3642 | item/hex_string.cc \ |
3643 | + item/ident.cc \ |
3644 | item/insert_value.cc \ |
3645 | + item/int.cc \ |
3646 | item/int_with_ref.cc \ |
3647 | - item/ident.cc \ |
3648 | - item/int.cc \ |
3649 | item/null.cc \ |
3650 | item/num.cc \ |
3651 | item/outer_ref.cc \ |
3652 | @@ -633,31 +601,42 @@ |
3653 | item/sum.cc \ |
3654 | item/type_holder.cc \ |
3655 | item/uint.cc \ |
3656 | - item.cc \ |
3657 | join.cc \ |
3658 | join_cache.cc \ |
3659 | join_table.cc \ |
3660 | key.cc \ |
3661 | key_map.cc \ |
3662 | lock.cc \ |
3663 | - logging.cc \ |
3664 | lookup_symbol.cc \ |
3665 | + memory/multi_malloc.cc \ |
3666 | my_decimal.cc \ |
3667 | + name_resolution_context.cc \ |
3668 | name_resolution_context_state.cc \ |
3669 | natural_join_column.cc \ |
3670 | - optimizer/key_field.cc \ |
3671 | opt_range.cc \ |
3672 | opt_sum.cc \ |
3673 | + optimizer/key_field.cc \ |
3674 | + plugin/library.cc \ |
3675 | + plugin/listen_tcp.cc \ |
3676 | plugin/registry.cc \ |
3677 | - qcache.cc \ |
3678 | + plugin/loader.cc \ |
3679 | query_id.cc \ |
3680 | records.cc \ |
3681 | - scheduling.cc \ |
3682 | + replication_services.cc \ |
3683 | session.cc \ |
3684 | set_var.cc \ |
3685 | show.cc \ |
3686 | + slot/authentication.cc \ |
3687 | + slot/command_replicator.cc \ |
3688 | + slot/command_applier.cc \ |
3689 | + slot/error_message.cc \ |
3690 | slot/function.cc \ |
3691 | + slot/info_schema.cc \ |
3692 | slot/listen.cc \ |
3693 | + slot/logging.cc \ |
3694 | + slot/query_cache.cc \ |
3695 | + slot/scheduler.cc \ |
3696 | + sql_alloc.cc \ |
3697 | sql_base.cc \ |
3698 | sql_delete.cc \ |
3699 | sql_derived.cc \ |
3700 | @@ -668,7 +647,6 @@ |
3701 | sql_load.cc \ |
3702 | sql_locale.cc \ |
3703 | sql_parse.cc \ |
3704 | - sql_plugin.cc \ |
3705 | sql_select.cc \ |
3706 | sql_state.cc \ |
3707 | sql_string.cc \ |
3708 | @@ -677,17 +655,56 @@ |
3709 | sql_update.cc \ |
3710 | sql_yacc.yy \ |
3711 | stacktrace.cc \ |
3712 | + statement/alter_schema.cc \ |
3713 | + statement/alter_table.cc \ |
3714 | + statement/analyze.cc \ |
3715 | + statement/change_schema.cc \ |
3716 | + statement/check.cc \ |
3717 | + statement/checksum.cc \ |
3718 | + statement/commit.cc \ |
3719 | + statement/create_index.cc \ |
3720 | + statement/create_schema.cc \ |
3721 | + statement/create_table.cc \ |
3722 | + statement/delete.cc \ |
3723 | + statement/drop_index.cc \ |
3724 | + statement/drop_schema.cc \ |
3725 | + statement/drop_table.cc \ |
3726 | + statement/empty_query.cc \ |
3727 | + statement/flush.cc \ |
3728 | + statement/insert.cc \ |
3729 | + statement/insert_select.cc \ |
3730 | + statement/kill.cc \ |
3731 | + statement/load.cc \ |
3732 | + statement/optimize.cc \ |
3733 | + statement/release_savepoint.cc \ |
3734 | + statement/rename_table.cc \ |
3735 | + statement/replace.cc \ |
3736 | + statement/replace_select.cc \ |
3737 | + statement/rollback.cc \ |
3738 | + statement/rollback_to_savepoint.cc \ |
3739 | + statement/savepoint.cc \ |
3740 | + statement/select.cc \ |
3741 | + statement/set_option.cc \ |
3742 | + statement/show_create.cc \ |
3743 | + statement/show_create_schema.cc \ |
3744 | + statement/show_engine_status.cc \ |
3745 | + statement/show_errors.cc \ |
3746 | + statement/show_processlist.cc \ |
3747 | + statement/show_status.cc \ |
3748 | + statement/show_warnings.cc \ |
3749 | + statement/start_transaction.cc \ |
3750 | + statement/truncate.cc \ |
3751 | + statement/unlock_tables.cc \ |
3752 | + statement/update.cc \ |
3753 | strfunc.cc \ |
3754 | table.cc \ |
3755 | table_list.cc \ |
3756 | - table_map_iterator.cc \ |
3757 | + table_map_iterator.cc \ |
3758 | table_share.cc \ |
3759 | temporal.cc \ |
3760 | temporal_format.cc \ |
3761 | temporal_interval.cc \ |
3762 | - thr_malloc.cc \ |
3763 | time.cc \ |
3764 | - replication_services.cc \ |
3765 | tztime.cc \ |
3766 | uniques.cc \ |
3767 | user_var_entry.cc \ |
3768 | @@ -712,7 +729,6 @@ |
3769 | plugin/storage_engine.h.gch \ |
3770 | sql_base.h.gch \ |
3771 | sql_parse.h.gch \ |
3772 | - sql_plugin.h.gch \ |
3773 | util/convert.h.gch \ |
3774 | util/test.h.gch |
3775 | else |
3776 | @@ -728,6 +744,7 @@ |
3777 | $(PCHHEADERS) |
3778 | |
3779 | EXTRA_DIST = \ |
3780 | + plugin/config.h.in \ |
3781 | $(BUILT_MAINT_SRC) \ |
3782 | symbol_hash.gperf \ |
3783 | function_hash.gperf \ |
3784 | |
3785 | === modified file 'drizzled/atomic/sun_studio.h' |
3786 | --- drizzled/atomic/sun_studio.h 2009-07-02 03:41:45 +0000 |
3787 | +++ drizzled/atomic/sun_studio.h 2009-09-09 00:38:19 +0000 |
3788 | @@ -175,4 +175,4 @@ |
3789 | } |
3790 | #endif /* defined(_KERNEL) || defined(_INT64_TYPE) */ |
3791 | |
3792 | -#endif /* DRIZZLED_ATOMIC_SOLARIS_H */ |
3793 | +#endif /* DRIZZLED_ATOMIC_SUN_STUDIO_H */ |
3794 | |
3795 | === modified file 'drizzled/atomics.h' |
3796 | --- drizzled/atomics.h 2009-07-30 06:49:08 +0000 |
3797 | +++ drizzled/atomics.h 2009-09-09 00:38:19 +0000 |
3798 | @@ -136,12 +136,14 @@ |
3799 | struct atomic { |
3800 | }; |
3801 | |
3802 | +/* *INDENT-OFF* */ |
3803 | #define __DRIZZLE_DECL_ATOMIC(T) \ |
3804 | template<> struct atomic<T> \ |
3805 | : internal::atomic_impl<T,T,ATOMIC_TRAITS<T,T> > { \ |
3806 | atomic<T>() : internal::atomic_impl<T,T,ATOMIC_TRAITS<T,T> >() {} \ |
3807 | T operator=( T rhs ) { return store_with_release(rhs); } \ |
3808 | }; |
3809 | +/* *INDENT-ON* */ |
3810 | |
3811 | |
3812 | __DRIZZLE_DECL_ATOMIC(long) |
3813 | @@ -158,6 +160,7 @@ |
3814 | /* 32-bit platforms don't have a GCC atomic operation for 64-bit types, |
3815 | * so we'll use pthread locks to handler 64-bit types on that platforms |
3816 | */ |
3817 | +/* *INDENT-OFF* */ |
3818 | # if SIZEOF_SIZE_T >= SIZEOF_LONG_LONG |
3819 | __DRIZZLE_DECL_ATOMIC(long long) |
3820 | __DRIZZLE_DECL_ATOMIC(unsigned long long) |
3821 | @@ -172,7 +175,8 @@ |
3822 | __DRIZZLE_DECL_ATOMIC64(long long) |
3823 | __DRIZZLE_DECL_ATOMIC64(unsigned long long) |
3824 | # endif |
3825 | +/* *INDENT-ON* */ |
3826 | |
3827 | } |
3828 | |
3829 | -#endif /* DRIZZLED_ATOMIC_H */ |
3830 | +#endif /* DRIZZLED_ATOMICS_H */ |
3831 | |
3832 | === modified file 'drizzled/base.h' |
3833 | --- drizzled/base.h 2009-08-17 22:19:53 +0000 |
3834 | +++ drizzled/base.h 2009-09-09 00:38:19 +0000 |
3835 | @@ -26,8 +26,8 @@ |
3836 | * @TODO Convert HA_XXX defines into enums and/or bitmaps |
3837 | */ |
3838 | |
3839 | -#ifndef DRIZZLE_SERVER_BASE_H |
3840 | -#define DRIZZLE_SERVER_BASE_H |
3841 | +#ifndef DRIZZLED_BASE_H |
3842 | +#define DRIZZLED_BASE_H |
3843 | |
3844 | #define CHSIZE_USED |
3845 | |
3846 | @@ -240,7 +240,7 @@ |
3847 | #define HA_VAR_LENGTH_KEY 8 |
3848 | #define HA_NULL_PART_KEY 64 |
3849 | #define HA_USES_COMMENT 4096 |
3850 | -#define HA_USES_BLOCK_SIZE ((uint32_t) 32768) |
3851 | +#define HA_USES_BLOCK_SIZE (static_cast<uint32_t>(32768)) |
3852 | #define HA_SORT_ALLOWS_SAME 512 /* Intern bit when sorting records */ |
3853 | |
3854 | /* These flags can be added to key-seg-flag */ |
3855 | @@ -269,8 +269,8 @@ |
3856 | #define HA_OPTION_CREATE_FROM_ENGINE 256 |
3857 | #define HA_OPTION_NULL_FIELDS 1024 |
3858 | #define HA_OPTION_PAGE_CHECKSUM 2048 |
3859 | -#define HA_OPTION_TEMP_COMPRESS_RECORD ((uint32_t) 16384) /* set by isamchk */ |
3860 | -#define HA_OPTION_READ_ONLY_DATA ((uint32_t) 32768) /* Set by isamchk */ |
3861 | +static const uint32_t HA_OPTION_TEMP_COMPRESS_RECORD= 16384;/* set by isamchk */ |
3862 | +static const uint32_t HA_OPTION_READ_ONLY_DATA= 32768; /* Set by isamchk */ |
3863 | |
3864 | /* Bits in flag to create() */ |
3865 | |
3866 | @@ -413,7 +413,7 @@ |
3867 | #define HA_NAMELEN 64 /* Max length of saved filename */ |
3868 | #define NO_SUCH_KEY (~(uint32_t)0) /* used as a key no. */ |
3869 | |
3870 | -typedef ulong key_part_map; |
3871 | +typedef unsigned long key_part_map; |
3872 | #define HA_WHOLE_KEY (~(key_part_map)0) |
3873 | |
3874 | /* Intern constants in databases */ |
3875 | @@ -526,8 +526,8 @@ |
3876 | typedef uint64_t ha_rows; |
3877 | #define rows2double(A) uint64_t2double(A) |
3878 | |
3879 | -#define HA_POS_ERROR (~ (ha_rows) 0) |
3880 | -#define HA_OFFSET_ERROR (~ (my_off_t) 0) |
3881 | +#define HA_POS_ERROR (~ static_cast<ha_rows>(0)) |
3882 | +#define HA_OFFSET_ERROR (~ static_cast<uint64_t>(0)) |
3883 | |
3884 | #if SIZEOF_OFF_T == 4 |
3885 | #define MAX_FILE_SIZE INT32_MAX |
3886 | @@ -537,4 +537,4 @@ |
3887 | |
3888 | #define HA_VARCHAR_PACKLENGTH(field_length) ((field_length) < 256 ? 1 :2) |
3889 | |
3890 | -#endif /* DRIZZLE_SERVER_BASE_H */ |
3891 | +#endif /* DRIZZLED_BASE_H */ |
3892 | |
3893 | === modified file 'drizzled/cached_item.cc' |
3894 | --- drizzled/cached_item.cc 2009-06-23 21:20:32 +0000 |
3895 | +++ drizzled/cached_item.cc 2009-09-09 00:38:19 +0000 |
3896 | @@ -40,18 +40,18 @@ |
3897 | bool use_result_field) |
3898 | { |
3899 | if (item->real_item()->type() == Item::FIELD_ITEM && |
3900 | - !(((Item_field *) (item->real_item()))->field->flags & BLOB_FLAG)) |
3901 | + !((static_cast<Item_field *>(item->real_item()))->field->flags & BLOB_FLAG)) |
3902 | { |
3903 | - Item_field *real_item= (Item_field *) item->real_item(); |
3904 | + Item_field *real_item= static_cast<Item_field *>(item->real_item()); |
3905 | Field *cached_field= use_result_field ? real_item->result_field : |
3906 | real_item->field; |
3907 | return new Cached_item_field(cached_field); |
3908 | } |
3909 | switch (item->result_type()) { |
3910 | case STRING_RESULT: |
3911 | - return new Cached_item_str(session, (Item_field *) item); |
3912 | + return new Cached_item_str(session, static_cast<Item_field *>(item)); |
3913 | case INT_RESULT: |
3914 | - return new Cached_item_int((Item_field *) item); |
3915 | + return new Cached_item_int(static_cast<Item_field *>(item)); |
3916 | case REAL_RESULT: |
3917 | return new Cached_item_real(item); |
3918 | case DECIMAL_RESULT: |
3919 | @@ -73,8 +73,8 @@ |
3920 | */ |
3921 | |
3922 | Cached_item_str::Cached_item_str(Session *session, Item *arg) |
3923 | - :item(arg), value(min(arg->max_length, |
3924 | - (uint32_t)session->variables.max_sort_length)) |
3925 | + :item(arg), value(min(static_cast<size_t>(arg->max_length), |
3926 | + session->variables.max_sort_length)) |
3927 | {} |
3928 | |
3929 | bool Cached_item_str::cmp(void) |
3930 | |
3931 | === modified file 'drizzled/cached_item.h' |
3932 | --- drizzled/cached_item.h 2008-11-16 23:47:43 +0000 |
3933 | +++ drizzled/cached_item.h 2009-09-09 00:38:19 +0000 |
3934 | @@ -85,7 +85,7 @@ |
3935 | { |
3936 | field= arg_field; |
3937 | /* TODO: take the memory allocation below out of the constructor. */ |
3938 | - buff= (unsigned char*) sql_calloc(length=field->pack_length()); |
3939 | + buff= reinterpret_cast<unsigned char*>(sql_calloc(length=field->pack_length())); |
3940 | } |
3941 | bool cmp(void); |
3942 | }; |
3943 | |
3944 | === modified file 'drizzled/common.h' |
3945 | --- drizzled/common.h 2009-08-04 06:52:55 +0000 |
3946 | +++ drizzled/common.h 2009-09-09 00:38:19 +0000 |
3947 | @@ -21,12 +21,10 @@ |
3948 | ** Common definition between mysql server & client |
3949 | */ |
3950 | |
3951 | -#ifndef DRIZZLED_DRIZZLE_COMMON_H |
3952 | -#define DRIZZLED_DRIZZLE_COMMON_H |
3953 | +#ifndef DRIZZLED_COMMON_H |
3954 | +#define DRIZZLED_COMMON_H |
3955 | |
3956 | -#include <unistd.h> |
3957 | -#include <stdint.h> |
3958 | -#include <drizzled/korr.h> |
3959 | +#include "drizzled/korr.h" |
3960 | |
3961 | /* |
3962 | This is included in the server and in the client. |
3963 | @@ -114,9 +112,9 @@ |
3964 | /* |
3965 | Maximum length of comments |
3966 | */ |
3967 | -#define TABLE_COMMENT_MAXLEN 2048 |
3968 | -#define COLUMN_COMMENT_MAXLEN 1024 |
3969 | -#define INDEX_COMMENT_MAXLEN 1024 |
3970 | +static const uint32_t TABLE_COMMENT_MAXLEN= 2048; |
3971 | +static const uint32_t COLUMN_COMMENT_MAXLEN= 1024; |
3972 | +static const uint32_t INDEX_COMMENT_MAXLEN= 1024; |
3973 | |
3974 | /* |
3975 | USER_HOST_BUFF_SIZE -- length of string buffer, that is enough to contain |
3976 | @@ -126,8 +124,7 @@ |
3977 | */ |
3978 | #define USER_HOST_BUFF_SIZE HOSTNAME_LENGTH + USERNAME_LENGTH + 2 |
3979 | |
3980 | -#define LOCAL_HOST "localhost" |
3981 | -#define LOCAL_HOST_NAMEDPIPE "." |
3982 | +static const char * const LOCAL_HOST= "localhost"; |
3983 | |
3984 | /* |
3985 | You should add new commands to the end of this list, otherwise old |
3986 | @@ -303,4 +300,4 @@ |
3987 | #define NET_HEADER_SIZE 4 /* standard header size */ |
3988 | #define COMP_HEADER_SIZE 3 /* compression header extra size */ |
3989 | |
3990 | -#endif |
3991 | +#endif /* DRIZZLED_COMMON_H */ |
3992 | |
3993 | === modified file 'drizzled/comp_creator.h' |
3994 | --- drizzled/comp_creator.h 2008-11-18 22:12:56 +0000 |
3995 | +++ drizzled/comp_creator.h 2009-09-09 00:38:19 +0000 |
3996 | @@ -20,9 +20,9 @@ |
3997 | #ifndef DRIZZLED_COMP_CREATOR_H |
3998 | #define DRIZZLED_COMP_CREATOR_H |
3999 | |
4000 | +class Item; |
4001 | class Item_bool_func2; |
4002 | |
4003 | - |
4004 | class Comp_creator |
4005 | { |
4006 | public: |
4007 | @@ -43,6 +43,4 @@ |
4008 | Comp_creator *comp_lt_creator(bool invert); |
4009 | Comp_creator *comp_ne_creator(bool invert); |
4010 | |
4011 | - |
4012 | - |
4013 | #endif /* DRIZZLED_COMP_CREATOR_H */ |
4014 | |
4015 | === modified file 'drizzled/create_field.cc' |
4016 | --- drizzled/create_field.cc 2009-07-31 23:47:15 +0000 |
4017 | +++ drizzled/create_field.cc 2009-09-09 00:38:19 +0000 |
4018 | @@ -22,7 +22,7 @@ |
4019 | */ |
4020 | |
4021 | #include "drizzled/server_includes.h" |
4022 | -#include <errno.h> |
4023 | +#include <cerrno> |
4024 | #include "drizzled/sql_select.h" |
4025 | #include "drizzled/error.h" |
4026 | #include "drizzled/field.h" |
4027 | @@ -219,7 +219,7 @@ |
4028 | flags|= NO_DEFAULT_VALUE_FLAG; |
4029 | |
4030 | if (fld_length && !(length= (uint32_t) atoi(fld_length))) |
4031 | - fld_length= 0; /* purecov: inspected */ |
4032 | + fld_length= 0; |
4033 | sign_len= fld_type_modifier & UNSIGNED_FLAG ? 0 : 1; |
4034 | |
4035 | switch (fld_type) |
4036 | @@ -374,7 +374,7 @@ |
4037 | { |
4038 | my_error((fld_type == DRIZZLE_TYPE_VARCHAR) ? ER_TOO_BIG_FIELDLENGTH : ER_TOO_BIG_DISPLAYWIDTH, |
4039 | MYF(0), |
4040 | - fld_name, max_field_charlength); /* purecov: inspected */ |
4041 | + fld_name, max_field_charlength); |
4042 | return true; |
4043 | } |
4044 | fld_type_modifier&= AUTO_INCREMENT_FLAG; |
4045 | |
4046 | === modified file 'drizzled/create_field.h' |
4047 | --- drizzled/create_field.h 2009-08-05 08:52:52 +0000 |
4048 | +++ drizzled/create_field.h 2009-09-09 00:38:19 +0000 |
4049 | @@ -70,7 +70,7 @@ |
4050 | |
4051 | inline enum column_format_type column_format() const |
4052 | { |
4053 | - return (enum column_format_type) |
4054 | + return static_cast<enum column_format_type> |
4055 | ((flags >> COLUMN_FORMAT_FLAGS) & COLUMN_FORMAT_MASK); |
4056 | } |
4057 | |
4058 | |
4059 | === modified file 'drizzled/db.cc' |
4060 | --- drizzled/db.cc 2009-08-19 23:35:29 +0000 |
4061 | +++ drizzled/db.cc 2009-09-09 00:38:19 +0000 |
4062 | @@ -38,8 +38,6 @@ |
4063 | |
4064 | using namespace drizzled; |
4065 | |
4066 | -extern drizzled::ReplicationServices replication_services; |
4067 | - |
4068 | #define MY_DB_OPT_FILE "db.opt" |
4069 | #define MAX_DROP_TABLE_Q_LEN 1024 |
4070 | |
4071 | @@ -190,6 +188,7 @@ |
4072 | |
4073 | bool mysql_create_db(Session *session, const char *db, HA_CREATE_INFO *create_info) |
4074 | { |
4075 | + ReplicationServices &replication_services= ReplicationServices::singleton(); |
4076 | char path[FN_REFLEN+16]; |
4077 | long result= 1; |
4078 | int error_erno; |
4079 | @@ -277,6 +276,7 @@ |
4080 | |
4081 | bool mysql_alter_db(Session *session, const char *db, HA_CREATE_INFO *create_info) |
4082 | { |
4083 | + ReplicationServices &replication_services= ReplicationServices::singleton(); |
4084 | long result=1; |
4085 | int error= 0; |
4086 | char path[FN_REFLEN+16]; |
4087 | @@ -340,7 +340,7 @@ |
4088 | |
4089 | bool mysql_rm_db(Session *session,char *db,bool if_exists) |
4090 | { |
4091 | - long deleted=0; |
4092 | + long deleted= 0; |
4093 | int error= false; |
4094 | char path[FN_REFLEN+16]; |
4095 | MY_DIR *dirp; |
4096 | @@ -420,10 +420,11 @@ |
4097 | query= session->query; |
4098 | query_length= session->query_length; |
4099 | } |
4100 | + ReplicationServices &replication_services= ReplicationServices::singleton(); |
4101 | replication_services.rawStatement(session, session->getQueryString(), session->getQueryLength()); |
4102 | session->clear_error(); |
4103 | session->server_status|= SERVER_STATUS_DB_DROPPED; |
4104 | - session->my_ok((uint32_t) deleted); |
4105 | + session->my_ok(deleted); |
4106 | session->server_status&= ~SERVER_STATUS_DB_DROPPED; |
4107 | } |
4108 | else |
4109 | @@ -432,12 +433,13 @@ |
4110 | TableList *tbl; |
4111 | uint32_t db_len; |
4112 | |
4113 | - if (!(query= (char*) session->alloc(MAX_DROP_TABLE_Q_LEN))) |
4114 | + if (!(query= reinterpret_cast<char*>(session->alloc(MAX_DROP_TABLE_Q_LEN)))) |
4115 | goto exit; /* not much else we can do */ |
4116 | query_pos= query_data_start= strcpy(query,"drop table ")+11; |
4117 | query_end= query + MAX_DROP_TABLE_Q_LEN; |
4118 | db_len= strlen(db); |
4119 | |
4120 | + ReplicationServices &replication_services= ReplicationServices::singleton(); |
4121 | for (tbl= dropped_tables; tbl; tbl= tbl->next_local) |
4122 | { |
4123 | uint32_t tbl_name_len; |
4124 | @@ -447,7 +449,7 @@ |
4125 | if (query_pos + tbl_name_len + 1 >= query_end) |
4126 | { |
4127 | /* These DDL methods and logging protected with LOCK_create_db */ |
4128 | - replication_services.rawStatement(session, query, (size_t) (query_pos -1 - query)); |
4129 | + replication_services.rawStatement(session, query, query_pos -1 - query); |
4130 | query_pos= query_data_start; |
4131 | } |
4132 | |
4133 | @@ -460,7 +462,7 @@ |
4134 | if (query_pos != query_data_start) |
4135 | { |
4136 | /* These DDL methods and logging protected with LOCK_create_db */ |
4137 | - replication_services.rawStatement(session, query, (size_t) (query_pos -1 - query)); |
4138 | + replication_services.rawStatement(session, query, query_pos -1 - query); |
4139 | } |
4140 | } |
4141 | |
4142 | @@ -495,7 +497,7 @@ |
4143 | tot_list_next= &tot_list; |
4144 | |
4145 | for (uint32_t idx= 0; |
4146 | - idx < (uint32_t) dirp->number_off_files && !session->killed ; |
4147 | + idx < static_cast<uint32_t>(dirp->number_off_files) && !session->killed ; |
4148 | idx++) |
4149 | { |
4150 | FILEINFO *file=dirp->dir_entry+idx; |
4151 | @@ -532,14 +534,14 @@ |
4152 | |
4153 | /* Drop the table nicely */ |
4154 | *extension= 0; // Remove extension |
4155 | - TableList *table_list=(TableList*) |
4156 | + TableList *table_list=reinterpret_cast<TableList*>( |
4157 | session->calloc(sizeof(*table_list) + |
4158 | - db_len + 1 + |
4159 | - strlen(file->name) + 1); |
4160 | + db_len + 1 + |
4161 | + strlen(file->name) + 1)); |
4162 | |
4163 | if (!table_list) |
4164 | goto err; |
4165 | - table_list->db= (char*) (table_list+1); |
4166 | + table_list->db= reinterpret_cast<char*>(table_list+1); |
4167 | table_list->table_name= strcpy(table_list->db, db) + db_len + 1; |
4168 | filename_to_tablename(file->name, table_list->table_name, |
4169 | strlen(file->name) + 1); |
4170 | @@ -745,7 +747,7 @@ |
4171 | */ |
4172 | |
4173 | new_db_file_name.length= new_db_name->length; |
4174 | - new_db_file_name.str= (char *)malloc(new_db_name->length + 1); |
4175 | + new_db_file_name.str= reinterpret_cast<char *>(malloc(new_db_name->length + 1)); |
4176 | if (new_db_file_name.str == NULL) |
4177 | return true; /* the error is set */ |
4178 | memcpy(new_db_file_name.str, new_db_name->str, new_db_name->length); |
4179 | |
4180 | === modified file 'drizzled/db.h' |
4181 | --- drizzled/db.h 2009-07-09 01:35:10 +0000 |
4182 | +++ drizzled/db.h 2009-09-09 00:38:19 +0000 |
4183 | @@ -18,8 +18,8 @@ |
4184 | */ |
4185 | |
4186 | |
4187 | -#ifndef DRIZZLE_SERVER_DB_H |
4188 | -#define DRIZZLE_SERVER_DB_H |
4189 | +#ifndef DRIZZLED_DB_H |
4190 | +#define DRIZZLED_DB_H |
4191 | |
4192 | namespace drizzled { namespace message { class Schema; } } |
4193 | |
4194 | @@ -37,4 +37,4 @@ |
4195 | extern int creating_database; // How many database locks are made |
4196 | extern int creating_table; // How many mysql_create_table() are running |
4197 | |
4198 | -#endif |
4199 | +#endif /* DRIZZLED_DB_H */ |
4200 | |
4201 | === modified file 'drizzled/definitions.h' |
4202 | --- drizzled/definitions.h 2009-08-22 02:06:02 +0000 |
4203 | +++ drizzled/definitions.h 2009-09-09 00:38:19 +0000 |
4204 | @@ -26,10 +26,10 @@ |
4205 | #ifndef DRIZZLE_SERVER_DEFINITIONS_H |
4206 | #define DRIZZLE_SERVER_DEFINITIONS_H |
4207 | |
4208 | -#include <drizzled/enum.h> |
4209 | - |
4210 | #include <stdint.h> |
4211 | |
4212 | +#include "drizzled/enum.h" |
4213 | + |
4214 | /* These paths are converted to other systems (WIN95) before use */ |
4215 | |
4216 | #define LANGUAGE "english/" |
4217 | @@ -39,15 +39,113 @@ |
4218 | |
4219 | #define ER(X) error_message((X)) |
4220 | |
4221 | +#if !defined(FLT_MIN) |
4222 | +#define FLT_MIN ((float)1.40129846432481707e-45) |
4223 | +#endif |
4224 | +#if !defined(FLT_MAX) |
4225 | +#define FLT_MAX ((float)3.40282346638528860e+38) |
4226 | +#endif |
4227 | + |
4228 | +/* From limits.h instead */ |
4229 | +#ifndef DBL_MIN |
4230 | +#define DBL_MIN 4.94065645841246544e-324 |
4231 | +#endif |
4232 | +#ifndef DBL_MAX |
4233 | +#define DBL_MAX 1.79769313486231470e+308 |
4234 | +#endif |
4235 | +#ifndef SIZE_T_MAX |
4236 | +#define SIZE_T_MAX ~((size_t) 0) |
4237 | +#endif |
4238 | + |
4239 | + |
4240 | +/* Define missing math constants. */ |
4241 | +#ifndef M_PI |
4242 | +#define M_PI 3.14159265358979323846 |
4243 | +#endif |
4244 | +#ifndef M_E |
4245 | +#define M_E 2.7182818284590452354 |
4246 | +#endif |
4247 | +#ifndef M_LN2 |
4248 | +#define M_LN2 0.69314718055994530942 |
4249 | +#endif |
4250 | + |
4251 | +#ifndef FN_LIBCHAR |
4252 | +#define FN_LIBCHAR '/' |
4253 | +#define FN_ROOTDIR "/" |
4254 | +#endif |
4255 | +#define MY_NFILE 64 /* This is only used to save filenames */ |
4256 | +#ifndef OS_FILE_LIMIT |
4257 | +#define OS_FILE_LIMIT 65535 |
4258 | +#endif |
4259 | + |
4260 | +/* |
4261 | + How much overhead does malloc have. The code often allocates |
4262 | + something like 1024-MALLOC_OVERHEAD bytes |
4263 | +*/ |
4264 | +#define MALLOC_OVERHEAD 8 |
4265 | + |
4266 | +/* get memory in huncs */ |
4267 | +static const uint32_t ONCE_ALLOC_INIT= 4096; |
4268 | +/* Typical record cash */ |
4269 | +static const uint32_t RECORD_CACHE_SIZE= 64*1024; |
4270 | +/* Typical key cash */ |
4271 | +static const uint32_t KEY_CACHE_SIZE= 8*1024*1024; |
4272 | + |
4273 | +/* Default size of a key cache block */ |
4274 | +static const uint32_t KEY_CACHE_BLOCK_SIZE= 1024; |
4275 | + |
4276 | +#define MY_FILEPOS_ERROR -1 |
4277 | + |
4278 | +/* Defines for time function */ |
4279 | +#define SCALE_SEC 100 |
4280 | +#define SCALE_USEC 10000 |
4281 | +#define MY_HOW_OFTEN_TO_ALARM 2 /* How often we want info on screen */ |
4282 | +#define MY_HOW_OFTEN_TO_WRITE 1000 /* How often we want info on screen */ |
4283 | + |
4284 | +/* Length of decimal number represented by INT32. */ |
4285 | +#define MY_INT32_NUM_DECIMAL_DIGITS 11 |
4286 | + |
4287 | +/* Length of decimal number represented by INT64. */ |
4288 | +#define MY_INT64_NUM_DECIMAL_DIGITS 21 |
4289 | + |
4290 | +/* |
4291 | + Io buffer size; Must be a power of 2 and |
4292 | + a multiple of 512. May be |
4293 | + smaller what the disk page size. This influences the speed of the |
4294 | + isam btree library. eg to big to slow. |
4295 | +*/ |
4296 | +#define IO_SIZE 4096 |
4297 | +/* Max file name len */ |
4298 | +#define FN_LEN 256 |
4299 | +/* Max length of extension (part of FN_LEN) */ |
4300 | +#define FN_EXTLEN 20 |
4301 | +/* Max length of full path-name */ |
4302 | +#define FN_REFLEN 512 |
4303 | +/* File extension character */ |
4304 | +#define FN_EXTCHAR '.' |
4305 | +/* ~ is used as abbrev for home dir */ |
4306 | +#define FN_HOMELIB '~' |
4307 | +/* ./ is used as abbrev for current dir */ |
4308 | +#define FN_CURLIB '.' |
4309 | +/* Parent directory; Must be a string */ |
4310 | +#define FN_PARENTDIR ".." |
4311 | + |
4312 | +/* Quote argument (before cpp) */ |
4313 | +#ifndef QUOTE_ARG |
4314 | +# define QUOTE_ARG(x) #x |
4315 | +#endif |
4316 | +/* Quote argument, (after cpp) */ |
4317 | +#ifndef STRINGIFY_ARG |
4318 | +# define STRINGIFY_ARG(x) QUOTE_ARG(x) |
4319 | +#endif |
4320 | #define LIBLEN FN_REFLEN-FN_LEN /* Max l{ngd p} dev */ |
4321 | /* extra 4+4 bytes for slave tmp tables */ |
4322 | #define MAX_DBKEY_LENGTH (NAME_LEN*2+1+1+4+4) |
4323 | #define MAX_ALIAS_NAME 256 |
4324 | #define MAX_FIELD_NAME 34 /* Max colum name length +2 */ |
4325 | #define MAX_SYS_VAR_LENGTH 32 |
4326 | -#define MAX_KEY MAX_INDEXES /* Max used keys */ |
4327 | -#define MAX_REF_PARTS 16 /* Max parts used as ref */ |
4328 | -#define MAX_KEY_LENGTH 4096 /* max possible key */ |
4329 | +static const uint32_t MAX_REF_PARTS= 16; /* Max parts used as ref */ |
4330 | +static const uint32_t MAX_KEY_LENGTH= 4096; /* max possible key */ |
4331 | #define MAX_KEY_LENGTH_DECIMAL_WIDTH 4 /* strlen("4096") */ |
4332 | #if SIZEOF_OFF_T > 4 |
4333 | #define MAX_REFLENGTH 8 /* Max length for record ref */ |
4334 | @@ -67,9 +165,9 @@ |
4335 | #define MAX_DATETIME_COMPRESSED_WIDTH 14 /* YYYYMMDDHHMMSS */ |
4336 | |
4337 | #define MAX_TABLES (sizeof(table_map)*8-3) /* Max tables in join */ |
4338 | -#define PARAM_TABLE_BIT (((table_map) 1) << (sizeof(table_map)*8-3)) |
4339 | -#define OUTER_REF_TABLE_BIT (((table_map) 1) << (sizeof(table_map)*8-2)) |
4340 | -#define RAND_TABLE_BIT (((table_map) 1) << (sizeof(table_map)*8-1)) |
4341 | +#define PARAM_TABLE_BIT ((static_cast<table_map>(1)) << (sizeof(table_map)*8-3)) |
4342 | +#define OUTER_REF_TABLE_BIT ((static_cast<table_map>(1)) << (sizeof(table_map)*8-2)) |
4343 | +#define RAND_TABLE_BIT ((static_cast<table_map>(1)) << (sizeof(table_map)*8-1)) |
4344 | #define PSEUDO_TABLE_BITS (PARAM_TABLE_BIT | OUTER_REF_TABLE_BIT | \ |
4345 | RAND_TABLE_BIT) |
4346 | #define MAX_FIELDS 4096 /* Limit in the .frm file */ |
4347 | @@ -103,11 +201,12 @@ |
4348 | |
4349 | /* Defines for use with openfrm, openprt and openfrd */ |
4350 | |
4351 | -#define READ_ALL 1 /* openfrm: Read all parameters */ |
4352 | -#define CHANGE_FRM 2 /* openfrm: open .frm as O_RDWR */ |
4353 | -#define EXTRA_RECORD 8 /* Reservera plats f|r extra record */ |
4354 | -#define DONT_GIVE_ERROR 256 /* Don't do frm_error on openfrm */ |
4355 | -#define DELAYED_OPEN 4096 /* Open table later */ |
4356 | +static const uint32_t READ_ALL= 1; /* openfrm: Read all parameters */ |
4357 | +static const uint32_t CHANGE_FRM= 2; /* openfrm: open .frm as O_RDWR */ |
4358 | +static const uint32_t EXTRA_RECORD= 8; /* Reservera plats f|r extra record */ |
4359 | +static const uint32_t DONT_GIVE_ERROR= 256; /* Don't do frm_error on openfrm */ |
4360 | +static const uint32_t DELAYED_OPEN= 4096; /* Open table later */ |
4361 | + |
4362 | /** |
4363 | This flag is used in function get_all_tables() which fills |
4364 | I_S tables with data which are retrieved from frm files and storage engine |
4365 | @@ -216,11 +315,11 @@ |
4366 | The cost of average seek |
4367 | DISK_SEEK_BASE_COST + DISK_SEEK_PROP_COST*BLOCKS_IN_AVG_SEEK =1.0. |
4368 | */ |
4369 | -#define DISK_SEEK_BASE_COST ((double)0.9) |
4370 | +#define DISK_SEEK_BASE_COST (static_cast<double>(0.9)) |
4371 | |
4372 | #define BLOCKS_IN_AVG_SEEK 128 |
4373 | |
4374 | -#define DISK_SEEK_PROP_COST ((double)0.1/BLOCKS_IN_AVG_SEEK) |
4375 | +#define DISK_SEEK_PROP_COST (static_cast<double>(0.1)/BLOCKS_IN_AVG_SEEK) |
4376 | |
4377 | |
4378 | /** |
4379 | @@ -470,7 +569,7 @@ |
4380 | #define HA_LEX_CREATE_IF_NOT_EXISTS 2 |
4381 | #define HA_LEX_CREATE_TABLE_LIKE 4 |
4382 | #define HA_OPTION_NO_CHECKSUM (1L << 17) |
4383 | -#define HA_MAX_REC_LENGTH 65535 |
4384 | +static const uint32_t HA_MAX_REC_LENGTH= 65535; |
4385 | |
4386 | /* Options of START TRANSACTION statement (and later of SET TRANSACTION stmt) */ |
4387 | #define DRIZZLE_START_TRANS_OPT_WITH_CONS_SNAPSHOT 1 |
4388 | @@ -540,7 +639,7 @@ |
4389 | #define HA_MRR_NO_NULL_ENDPOINTS 128 |
4390 | |
4391 | typedef int myf; |
4392 | -#define MYF(v) (myf) (v) |
4393 | +#define MYF(v) static_cast<myf>(v) |
4394 | |
4395 | #define MY_I_S_MAYBE_NULL 1 |
4396 | #define MY_I_S_UNSIGNED 2 |
4397 | |
4398 | === added file 'drizzled/discrete_interval.cc' |
4399 | --- drizzled/discrete_interval.cc 1970-01-01 00:00:00 +0000 |
4400 | +++ drizzled/discrete_interval.cc 2009-09-09 00:38:19 +0000 |
4401 | @@ -0,0 +1,65 @@ |
4402 | +/* -*- mode: c++; c-basic-offset: 2; indent-tabs-mode: nil; -*- |
4403 | + * vim:expandtab:shiftwidth=2:tabstop=2:smarttab: |
4404 | + * |
4405 | + * Copyright (C) 2008 Sun Microsystems |
4406 | + * |
4407 | + * This program is free software; you can redistribute it and/or modify |
4408 | + * it under the terms of the GNU General Public License as published by |
4409 | + * the Free Software Foundation; version 2 of the License. |
4410 | + * |
4411 | + * This program is distributed in the hope that it will be useful, |
4412 | + * but WITHOUT ANY WARRANTY; without even the implied warranty of |
4413 | + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
4414 | + * GNU General Public License for more details. |
4415 | + * |
4416 | + * You should have received a copy of the GNU General Public License |
4417 | + * along with this program; if not, write to the Free Software |
4418 | + * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA |
4419 | + */ |
4420 | + |
4421 | +#include "drizzled/global.h" |
4422 | + |
4423 | +#include "drizzled/discrete_interval.h" |
4424 | + |
4425 | +Discrete_interval::Discrete_interval(uint64_t start, |
4426 | + uint64_t val, |
4427 | + uint64_t incr) |
4428 | + : interval_min(start), interval_values(val), |
4429 | + interval_max((val == UINT64_MAX) ? val : start + val * incr), |
4430 | + next(NULL) |
4431 | +{ } |
4432 | + |
4433 | + |
4434 | +Discrete_interval::Discrete_interval() |
4435 | + : interval_min(0), interval_values(0), |
4436 | + interval_max(0), next(NULL) |
4437 | +{ } |
4438 | + |
4439 | + |
4440 | +void Discrete_interval::replace(uint64_t start, uint64_t val, uint64_t incr) |
4441 | +{ |
4442 | + interval_min= start; |
4443 | + interval_values= val; |
4444 | + interval_max= (val == UINT64_MAX) ? val : start + val * incr; |
4445 | +} |
4446 | + |
4447 | + |
4448 | +bool Discrete_interval::merge_if_contiguous(uint64_t start, |
4449 | + uint64_t val, |
4450 | + uint64_t incr) |
4451 | +{ |
4452 | + if (interval_max == start) |
4453 | + { |
4454 | + if (val == UINT64_MAX) |
4455 | + { |
4456 | + interval_values= interval_max= val; |
4457 | + } |
4458 | + else |
4459 | + { |
4460 | + interval_values+= val; |
4461 | + interval_max= start + val * incr; |
4462 | + } |
4463 | + return 0; |
4464 | + } |
4465 | + return 1; |
4466 | +} |
4467 | |
4468 | === modified file 'drizzled/discrete_interval.h' |
4469 | --- drizzled/discrete_interval.h 2009-02-12 22:45:08 +0000 |
4470 | +++ drizzled/discrete_interval.h 2009-09-09 00:38:19 +0000 |
4471 | @@ -18,8 +18,8 @@ |
4472 | */ |
4473 | |
4474 | |
4475 | -#ifndef DRIZZLED_DISCRETE_INTERVALS_H |
4476 | -#define DRIZZLED_DISCRETE_INTERVALS_H |
4477 | +#ifndef DRIZZLED_DISCRETE_INTERVAL_H |
4478 | +#define DRIZZLED_DISCRETE_INTERVAL_H |
4479 | |
4480 | /* |
4481 | Such interval is "discrete": it is the set of |
4482 | @@ -37,21 +37,9 @@ |
4483 | uint64_t interval_max; // excluded bound. Redundant. |
4484 | public: |
4485 | Discrete_interval *next; // used when linked into Discrete_intervals_list |
4486 | - void replace(uint64_t start, uint64_t val, uint64_t incr) |
4487 | - { |
4488 | - interval_min= start; |
4489 | - interval_values= val; |
4490 | - interval_max= (val == UINT64_MAX) ? val : start + val * incr; |
4491 | - } |
4492 | - Discrete_interval(uint64_t start, uint64_t val, uint64_t incr) : |
4493 | - interval_min(start), interval_values(val), |
4494 | - interval_max((val == UINT64_MAX) ? val : start + val * incr), |
4495 | - next(NULL) |
4496 | - {}; |
4497 | - Discrete_interval() : |
4498 | - interval_min(0), interval_values(0), |
4499 | - interval_max(0), next(NULL) |
4500 | - {}; |
4501 | + void replace(uint64_t start, uint64_t val, uint64_t incr); |
4502 | + Discrete_interval(uint64_t start, uint64_t val, uint64_t incr); |
4503 | + Discrete_interval(); |
4504 | uint64_t minimum() const { return interval_min; }; |
4505 | uint64_t values() const { return interval_values; }; |
4506 | uint64_t maximum() const { return interval_max; }; |
4507 | @@ -60,119 +48,10 @@ |
4508 | same increment for that, user of the class has to ensure that). That is |
4509 | just a space optimization. Returns 0 if merge succeeded. |
4510 | */ |
4511 | - bool merge_if_contiguous(uint64_t start, uint64_t val, uint64_t incr) |
4512 | - { |
4513 | - if (interval_max == start) |
4514 | - { |
4515 | - if (val == UINT64_MAX) |
4516 | - { |
4517 | - interval_values= interval_max= val; |
4518 | - } |
4519 | - else |
4520 | - { |
4521 | - interval_values+= val; |
4522 | - interval_max= start + val * incr; |
4523 | - } |
4524 | - return 0; |
4525 | - } |
4526 | - return 1; |
4527 | - }; |
4528 | -}; |
4529 | - |
4530 | - |
4531 | - |
4532 | -/* List of Discrete_interval objects */ |
4533 | -class Discrete_intervals_list { |
4534 | -private: |
4535 | - Discrete_interval *head; |
4536 | - Discrete_interval *tail; |
4537 | - /* |
4538 | - When many intervals are provided at the beginning of the execution of a |
4539 | - statement (in a replication slave or SET INSERT_ID), "current" points to |
4540 | - the interval being consumed by the thread now (so "current" goes from |
4541 | - "head" to "tail" then to NULL). |
4542 | - */ |
4543 | - Discrete_interval *current; |
4544 | - uint32_t elements; // number of elements |
4545 | - |
4546 | - /* helper function for copy construct and assignment operator */ |
4547 | - void copy_(const Discrete_intervals_list& from) |
4548 | - { |
4549 | - for (Discrete_interval *i= from.head; i; i= i->next) |
4550 | - { |
4551 | - Discrete_interval j= *i; |
4552 | - append(&j); |
4553 | - } |
4554 | - } |
4555 | -public: |
4556 | - Discrete_intervals_list() : |
4557 | - head(NULL), tail(NULL), |
4558 | - current(NULL), elements(0) {}; |
4559 | - Discrete_intervals_list(const Discrete_intervals_list& from) : |
4560 | - head(NULL), tail(NULL), |
4561 | - current(NULL), elements(0) |
4562 | - { |
4563 | - copy_(from); |
4564 | - } |
4565 | - Discrete_intervals_list& operator=(const Discrete_intervals_list& from) |
4566 | - { |
4567 | - empty(); |
4568 | - copy_(from); |
4569 | - return *this; |
4570 | - } |
4571 | - void empty_no_free() |
4572 | - { |
4573 | - head= current= NULL; |
4574 | - elements= 0; |
4575 | - } |
4576 | - void empty() |
4577 | - { |
4578 | - for (Discrete_interval *i= head; i;) |
4579 | - { |
4580 | - Discrete_interval *next= i->next; |
4581 | - delete i; |
4582 | - i= next; |
4583 | - } |
4584 | - empty_no_free(); |
4585 | - } |
4586 | - |
4587 | - const Discrete_interval* get_next() |
4588 | - { |
4589 | - Discrete_interval *tmp= current; |
4590 | - if (current != NULL) |
4591 | - current= current->next; |
4592 | - return tmp; |
4593 | - } |
4594 | - ~Discrete_intervals_list() { empty(); }; |
4595 | - uint64_t minimum() const { return (head ? head->minimum() : 0); }; |
4596 | - uint64_t maximum() const { return (head ? tail->maximum() : 0); }; |
4597 | - uint32_t nb_elements() const { return elements; } |
4598 | - |
4599 | - bool append(uint64_t start, uint64_t val, uint64_t incr) |
4600 | - { |
4601 | - /* first, see if this can be merged with previous */ |
4602 | - if ((head == NULL) || tail->merge_if_contiguous(start, val, incr)) |
4603 | - { |
4604 | - /* it cannot, so need to add a new interval */ |
4605 | - Discrete_interval *new_interval= new Discrete_interval(start, val, incr); |
4606 | - return(append(new_interval)); |
4607 | - } |
4608 | - return(0); |
4609 | - } |
4610 | - |
4611 | - bool append(Discrete_interval *new_interval) |
4612 | - { |
4613 | - if (unlikely(new_interval == NULL)) |
4614 | - return(1); |
4615 | - if (head == NULL) |
4616 | - head= current= new_interval; |
4617 | - else |
4618 | - tail->next= new_interval; |
4619 | - tail= new_interval; |
4620 | - elements++; |
4621 | - return(0); |
4622 | - } |
4623 | - |
4624 | -}; |
4625 | - |
4626 | -#endif /* DRIZZLED_DISCRETE_INTERVALS_H */ |
4627 | + bool merge_if_contiguous(uint64_t start, uint64_t val, uint64_t incr); |
4628 | +}; |
4629 | + |
4630 | + |
4631 | + |
4632 | + |
4633 | +#endif /* DRIZZLED_DISCRETE_INTERVAL_H */ |
4634 | |
4635 | === added file 'drizzled/discrete_intervals_list.cc' |
4636 | --- drizzled/discrete_intervals_list.cc 1970-01-01 00:00:00 +0000 |
4637 | +++ drizzled/discrete_intervals_list.cc 2009-09-09 00:38:19 +0000 |
4638 | @@ -0,0 +1,105 @@ |
4639 | +/* -*- mode: c++; c-basic-offset: 2; indent-tabs-mode: nil; -*- |
4640 | + * vim:expandtab:shiftwidth=2:tabstop=2:smarttab: |
4641 | + * |
4642 | + * Copyright (C) 2009 Sun Microsystems |
4643 | + * |
4644 | + * This program is free software; you can redistribute it and/or modify |
4645 | + * it under the terms of the GNU General Public License as published by |
4646 | + * the Free Software Foundation; version 2 of the License. |
4647 | + * |
4648 | + * This program is distributed in the hope that it will be useful, |
4649 | + * but WITHOUT ANY WARRANTY; without even the implied warranty of |
4650 | + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
4651 | + * GNU General Public License for more details. |
4652 | + * |
4653 | + * You should have received a copy of the GNU General Public License |
4654 | + * along with this program; if not, write to the Free Software |
4655 | + * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA |
4656 | + */ |
4657 | + |
4658 | +#include "drizzled/global.h" |
4659 | + |
4660 | +#include "drizzled/discrete_intervals_list.h" |
4661 | +#include "drizzled/discrete_interval.h" |
4662 | + |
4663 | +void Discrete_intervals_list::copy_(const Discrete_intervals_list& from) |
4664 | +{ |
4665 | + for (Discrete_interval *i= from.head; i; i= i->next) |
4666 | + { |
4667 | + Discrete_interval j= *i; |
4668 | + append(&j); |
4669 | + } |
4670 | +} |
4671 | + |
4672 | +Discrete_intervals_list::Discrete_intervals_list() |
4673 | + : head(NULL), tail(NULL), current(NULL), elements(0) |
4674 | +{ } |
4675 | + |
4676 | +Discrete_intervals_list::Discrete_intervals_list(const Discrete_intervals_list& from) |
4677 | + : head(NULL), tail(NULL), current(NULL), elements(0) |
4678 | +{ |
4679 | + copy_(from); |
4680 | +} |
4681 | + |
4682 | +Discrete_intervals_list& Discrete_intervals_list::operator=(const Discrete_intervals_list& from) |
4683 | +{ |
4684 | + empty(); |
4685 | + copy_(from); |
4686 | + return *this; |
4687 | +} |
4688 | + |
4689 | +void Discrete_intervals_list::empty() |
4690 | +{ |
4691 | + for (Discrete_interval *i= head; i;) |
4692 | + { |
4693 | + Discrete_interval *next= i->next; |
4694 | + delete i; |
4695 | + i= next; |
4696 | + } |
4697 | + empty_no_free(); |
4698 | +} |
4699 | + |
4700 | +const Discrete_interval* Discrete_intervals_list::get_next() |
4701 | +{ |
4702 | + Discrete_interval *tmp= current; |
4703 | + if (current != NULL) |
4704 | + current= current->next; |
4705 | + return tmp; |
4706 | +} |
4707 | + |
4708 | +uint64_t Discrete_intervals_list::minimum() const |
4709 | +{ |
4710 | + return (head) ? head->minimum() : 0; |
4711 | +} |
4712 | + |
4713 | +uint64_t Discrete_intervals_list::maximum() const |
4714 | +{ |
4715 | + return (head) ? tail->maximum() : 0; |
4716 | +} |
4717 | + |
4718 | +bool Discrete_intervals_list::append(uint64_t start, |
4719 | + uint64_t val, |
4720 | + uint64_t incr) |
4721 | +{ |
4722 | + /* first, see if this can be merged with previous */ |
4723 | + if ((head == NULL) || tail->merge_if_contiguous(start, val, incr)) |
4724 | + { |
4725 | + /* it cannot, so need to add a new interval */ |
4726 | + Discrete_interval *new_interval= new Discrete_interval(start, val, incr); |
4727 | + return(append(new_interval)); |
4728 | + } |
4729 | + return(0); |
4730 | +} |
4731 | + |
4732 | +bool Discrete_intervals_list::append(Discrete_interval *new_interval) |
4733 | +{ |
4734 | + if (unlikely(new_interval == NULL)) |
4735 | + return(1); |
4736 | + if (head == NULL) |
4737 | + head= current= new_interval; |
4738 | + else |
4739 | + tail->next= new_interval; |
4740 | + tail= new_interval; |
4741 | + elements++; |
4742 | + return(0); |
4743 | +} |
4744 | |
4745 | === added file 'drizzled/discrete_intervals_list.h' |
4746 | --- drizzled/discrete_intervals_list.h 1970-01-01 00:00:00 +0000 |
4747 | +++ drizzled/discrete_intervals_list.h 2009-09-09 00:38:19 +0000 |
4748 | @@ -0,0 +1,72 @@ |
4749 | +/* -*- mode: c++; c-basic-offset: 2; indent-tabs-mode: nil; -*- |
4750 | + * vim:expandtab:shiftwidth=2:tabstop=2:smarttab: |
4751 | + * |
4752 | + * Copyright (C) 2009 Sun Microsystems |
4753 | + * |
4754 | + * This program is free software; you can redistribute it and/or modify |
4755 | + * it under the terms of the GNU General Public License as published by |
4756 | + * the Free Software Foundation; version 2 of the License. |
4757 | + * |
4758 | + * This program is distributed in the hope that it will be useful, |
4759 | + * but WITHOUT ANY WARRANTY; without even the implied warranty of |
4760 | + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
4761 | + * GNU General Public License for more details. |
4762 | + * |
4763 | + * You should have received a copy of the GNU General Public License |
4764 | + * along with this program; if not, write to the Free Software |
4765 | + * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA |
4766 | + */ |
4767 | + |
4768 | + |
4769 | +#ifndef DRIZZLED_DISCRETE_INTERVALS_LIST_H |
4770 | +#define DRIZZLED_DISCRETE_INTERVALS_LIST_H |
4771 | + |
4772 | +class Discrete_interval; |
4773 | + |
4774 | +/* List of Discrete_interval objects */ |
4775 | +class Discrete_intervals_list { |
4776 | +private: |
4777 | + Discrete_interval *head; |
4778 | + Discrete_interval *tail; |
4779 | + /* |
4780 | + When many intervals are provided at the beginning of the execution of a |
4781 | + statement (in a replication slave or SET INSERT_ID), "current" points to |
4782 | + the interval being consumed by the thread now (so "current" goes from |
4783 | + "head" to "tail" then to NULL). |
4784 | + */ |
4785 | + Discrete_interval *current; |
4786 | + uint32_t elements; // number of elements |
4787 | + |
4788 | + /* helper function for copy construct and assignment operator */ |
4789 | + void copy_(const Discrete_intervals_list& from); |
4790 | + |
4791 | +public: |
4792 | + Discrete_intervals_list(); |
4793 | + Discrete_intervals_list(const Discrete_intervals_list& from); |
4794 | + Discrete_intervals_list& operator=(const Discrete_intervals_list& from); |
4795 | + ~Discrete_intervals_list() { empty(); }; |
4796 | + |
4797 | + inline void empty_no_free() |
4798 | + { |
4799 | + head= current= NULL; |
4800 | + elements= 0; |
4801 | + } |
4802 | + |
4803 | + void empty(); |
4804 | + |
4805 | + const Discrete_interval* get_next(); |
4806 | + |
4807 | + uint64_t minimum() const; |
4808 | + uint64_t maximum() const; |
4809 | + |
4810 | + uint32_t nb_elements() const |
4811 | + { |
4812 | + return elements; |
4813 | + } |
4814 | + |
4815 | + bool append(uint64_t start, uint64_t val, uint64_t incr); |
4816 | + bool append(Discrete_interval *new_interval); |
4817 | + |
4818 | +}; |
4819 | + |
4820 | +#endif /* DRIZZLED_DISCRETE_INTERVALS_LIST_H */ |
4821 | |
4822 | === modified file 'drizzled/drizzled.cc' |
4823 | --- drizzled/drizzled.cc 2009-08-24 14:57:56 +0000 |
4824 | +++ drizzled/drizzled.cc 2009-09-09 21:03:12 +0000 |
4825 | @@ -18,14 +18,71 @@ |
4826 | */ |
4827 | |
4828 | |
4829 | -#include <drizzled/server_includes.h> |
4830 | +#include "drizzled/server_includes.h" |
4831 | + |
4832 | +#include <ctime> |
4833 | +#include <clocale> |
4834 | +#include <csignal> |
4835 | +#include <cerrno> |
4836 | + |
4837 | +#ifdef HAVE_SYS_PRCTL_H |
4838 | +#include <sys/prctl.h> |
4839 | +#endif |
4840 | + |
4841 | +#include <netdb.h> |
4842 | +#include <netinet/tcp.h> |
4843 | + |
4844 | +#include <sys/stat.h> |
4845 | + |
4846 | +#ifdef HAVE_SYSENT_H |
4847 | +# include <sysent.h> |
4848 | +#endif |
4849 | +#ifdef HAVE_PWD_H |
4850 | +# include <pwd.h> // For getpwent |
4851 | +#endif |
4852 | +#ifdef HAVE_GRP_H |
4853 | +# include <grp.h> |
4854 | +#endif |
4855 | + |
4856 | +#include <sys/resource.h> |
4857 | + |
4858 | +#ifdef HAVE_SELECT_H |
4859 | +# include <select.h> |
4860 | +#endif |
4861 | + |
4862 | +#ifdef HAVE_SYS_SELECT_H |
4863 | +# include <sys/select.h> |
4864 | +#endif |
4865 | + |
4866 | +#include <sys/utsname.h> |
4867 | + |
4868 | +#ifdef HAVE_SYS_MMAN_H |
4869 | +# include <sys/mman.h> |
4870 | +#endif |
4871 | + |
4872 | +#if defined(__FreeBSD__) && defined(HAVE_IEEEFP_H) |
4873 | +# include <ieeefp.h> |
4874 | +# ifdef HAVE_FP_EXCEPT // Fix type conflict |
4875 | +typedef fp_except fp_except_t; |
4876 | +# endif |
4877 | +#endif /* __FreeBSD__ && HAVE_IEEEFP_H */ |
4878 | + |
4879 | +#ifdef HAVE_FPU_CONTROL_H |
4880 | +# include <fpu_control.h> |
4881 | +#endif |
4882 | + |
4883 | +#ifdef HAVE_SYS_FPU_H |
4884 | +/* for IRIX to use set_fpc_csr() */ |
4885 | +# include <sys/fpu.h> |
4886 | +#endif |
4887 | + |
4888 | +#include <google/protobuf/stubs/common.h> |
4889 | + |
4890 | +#include <mysys/my_getopt.h> |
4891 | +#include <mysys/my_pthread.h> // For thr_setconcurency() |
4892 | +#include <drizzled/gettext.h> |
4893 | #include <drizzled/configmake.h> |
4894 | #include <drizzled/atomics.h> |
4895 | - |
4896 | -#include <netdb.h> |
4897 | -#include <netinet/tcp.h> |
4898 | -#include <signal.h> |
4899 | - |
4900 | #include <mysys/my_bit.h> |
4901 | #include <mysys/hash.h> |
4902 | #include <drizzled/stacktrace.h> |
4903 | @@ -40,30 +97,12 @@ |
4904 | #include <drizzled/session.h> |
4905 | #include <drizzled/db.h> |
4906 | #include <drizzled/item/create.h> |
4907 | -#include <drizzled/errmsg.h> |
4908 | #include <drizzled/unireg.h> |
4909 | -#include <drizzled/scheduling.h> |
4910 | #include "drizzled/temporal_format.h" /* For init_temporal_formats() */ |
4911 | #include "drizzled/slot/listen.h" |
4912 | - |
4913 | -#include <google/protobuf/stubs/common.h> |
4914 | - |
4915 | -#if TIME_WITH_SYS_TIME |
4916 | -# include <sys/time.h> |
4917 | -# include <time.h> |
4918 | -#else |
4919 | -# if HAVE_SYS_TIME_H |
4920 | -# include <sys/time.h> |
4921 | -# else |
4922 | -# include <time.h> |
4923 | -# endif |
4924 | -#endif |
4925 | - |
4926 | -#ifdef HAVE_SYS_PRCTL_H |
4927 | -#include <sys/prctl.h> |
4928 | -#endif |
4929 | - |
4930 | -#include <locale.h> |
4931 | +#include "drizzled/slot/error_message.h" |
4932 | +#include "drizzled/plugin/client.h" |
4933 | + |
4934 | |
4935 | #define mysqld_charset &my_charset_utf8_general_ci |
4936 | |
4937 | @@ -76,50 +115,6 @@ |
4938 | #define MAX_MEM_TABLE_SIZE SIZE_MAX |
4939 | |
4940 | extern "C" { // Because of SCO 3.2V4.2 |
4941 | -#include <errno.h> |
4942 | -#include <sys/stat.h> |
4943 | -#include <mysys/my_getopt.h> |
4944 | -#ifdef HAVE_SYSENT_H |
4945 | -#include <sysent.h> |
4946 | -#endif |
4947 | -#ifdef HAVE_PWD_H |
4948 | -#include <pwd.h> // For getpwent |
4949 | -#endif |
4950 | -#ifdef HAVE_GRP_H |
4951 | -#include <grp.h> |
4952 | -#endif |
4953 | - |
4954 | -#include <sys/resource.h> |
4955 | - |
4956 | -#ifdef HAVE_SELECT_H |
4957 | -# include <select.h> |
4958 | -#endif |
4959 | - |
4960 | -#ifdef HAVE_SYS_SELECT_H |
4961 | -#include <sys/select.h> |
4962 | -#endif |
4963 | - |
4964 | -#include <sys/utsname.h> |
4965 | - |
4966 | -#ifdef HAVE_SYS_MMAN_H |
4967 | -#include <sys/mman.h> |
4968 | -#endif |
4969 | - |
4970 | -#if defined(__FreeBSD__) && defined(HAVE_IEEEFP_H) |
4971 | -#include <ieeefp.h> |
4972 | -#ifdef HAVE_FP_EXCEPT // Fix type conflict |
4973 | -typedef fp_except fp_except_t; |
4974 | -#endif |
4975 | -#endif /* __FreeBSD__ && HAVE_IEEEFP_H */ |
4976 | - |
4977 | -#ifdef HAVE_FPU_CONTROL_H |
4978 | -#include <fpu_control.h> |
4979 | -#endif |
4980 | - |
4981 | -#ifdef HAVE_SYS_FPU_H |
4982 | -/* for IRIX to use set_fpc_csr() */ |
4983 | -#include <sys/fpu.h> |
4984 | -#endif |
4985 | |
4986 | inline void setup_fpu() |
4987 | { |
4988 | @@ -152,14 +147,19 @@ |
4989 | |
4990 | } /* cplusplus */ |
4991 | |
4992 | -#include <mysys/my_pthread.h> // For thr_setconcurency() |
4993 | - |
4994 | -#include <drizzled/gettext.h> |
4995 | |
4996 | #ifdef SOLARIS |
4997 | extern "C" int gethostname(char *name, int namelen); |
4998 | #endif |
4999 | |
5000 | +#if defined(BACKTRACE_DEMANGLE) |
All of the stuff we got done while folks were on vacations. Mainly:
Header file cleanups.
plugin-slot-reorg almost finished.
Some cast warning fixes.
A Solaris build fix.