689bb84f72
WL#962: Added simple, read-only, non-scrolling, asensitive cursors in SPs, using the
...
(updated) Protocol_cursor class.
Also did some bug fixes.
2003-10-10 16:57:21 +02:00
e8634f80bd
Check that a FUNCTION contains RETURN and that we actually get a return value.
2003-10-03 17:38:12 +02:00
04f0570fe8
Implemented SP CONDITIONs and HANDLERs, with the extension of handling
...
MySQL error codes as well.
(No UNDO HANDLERs yet, and no SIGNAL or RESIGNAL.)
WL#850
2003-09-16 14:26:08 +02:00
7a7f3c13d4
Adopt to the introduction of a separate CLIENT_MULTI_RESULTS flag.
2003-08-27 17:04:33 +02:00
c908b555ff
Fixed the old kludge for pre-loading functions and made it more efficient
...
using a hash table instead (and made it work with lex pointers).
Some additional code cleanup too.
2003-07-07 14:55:10 +02:00
6d225437ed
Code cleanup (and moved sp cache to separate file).
2003-07-03 15:58:37 +02:00
4006e95808
Bugfixes for the sp_head memroot stuff.
2003-07-01 17:19:48 +02:00
9f14ae7516
sp_head now has its own mem_root (WL#961).
...
Also fixed some difficult memory leaks that became apparent
in this task.
2003-06-29 18:15:17 +02:00
4523a7b179
Adopt SP stuff to the new lex pointer.
2003-05-23 15:32:31 +02:00
33cabdc3b1
Expand the mysql.proc table
2003-05-06 21:09:20 +05:00
6c85c6aa6a
Post-fix of bug #302 fix.
...
Fixed bug #320 .
Some new tests and cosmetic changes.
Another strcasecmp() replaced.
2003-04-27 17:35:54 +02:00
a4e065920b
Made multiple queries (SELECT without INTO) work in SPs.
...
This included bug fixes in the 4.1 protocol (actually send and receive the
server_status flags).
2003-04-23 09:22:54 +02:00
1fc3582b7d
Got rid of the last unecessary Item_strings.
2003-04-03 16:00:09 +02:00
c673fcb813
Getting rid of lots of memory leaks (but not quite all of them yet,
...
some will go away when temporary code is replaced).
2003-04-02 20:42:28 +02:00
12f771d9e7
Improved error handling regarding SPs (with info like names etc in the output).
...
Disabled queries in FUNCTIONs.
2003-03-05 19:45:17 +01:00
8049daf202
Made FUNCTIONs work in insert and select queries, as well as nested function invocations.
...
Had to add a cahing mechanism which is in parts an ugly kludge, but it will be
reworked once the real SP caching is implemented.
2003-03-02 19:17:41 +01:00
ca2e77ca7a
Made stored FUNCTION invokation work almost always. Still buggy and unstable, and
...
various known problems, but good enough for a checkpoint commit.
2003-02-26 19:22:29 +01:00
d8c75ec8aa
Most of the groundwork for sprint task 729 (implement FUNCTIONs).
...
Expanded the mysql.proc table, reworked the find/create/drop functions
completely, added new functions for FUNCTIONs (lotta functions here :),
got rid of some unnecessary use of Item_strings while at it. Extended
the parser correspondingly, and fiddled around a bit to make SP FUNCTIONs
coexist with UDFs.
Can now CREATE and DROP FUNCTIONs. Invoking yet to come...
2003-02-21 17:37:05 +01:00
204aa97280
Fixed some of the data collection during parsing.
2002-12-19 18:43:25 +01:00
58d3dda33f
Added parsing of CASE (both generic and "simple").
2002-12-17 10:01:52 +01:00
b1593c9a69
Fixed the broken backpatching implementation.
...
Implemented IF-THEN-ELSE.
2002-12-16 15:40:44 +01:00
77b671f594
Moved create/find/drop functions to a separate files (sp.cc,sp.h).
...
Fixed backpatching of forward jumps.
Implemented LOOP, WHILE, REPEAT (temporarily known as SPREPEAT).
Known bug: Expression evaluation still not quite ok (e.g. "x > 0"),
which is why IF and CASE is not yet implemented.
2002-12-12 13:14:23 +01:00
f0137bcd68
Fixed bugs in the parameter evaluation and modified the execution engine
...
for better jump support. Some flow control support added too (but not
complete).
2002-12-11 14:24:29 +01:00
aae07a4d45
Simplistic, experimental framework for Stored Procedures (SPs).
...
Implements creation and dropping of PROCEDUREs, IN, OUT, and INOUT parameters,
single-statement procedures, rudimentary multi-statement (begin-end) prodedures
(when the client can handle it), and local variables.
Missing most of the embedded SQL language, all attributes, FUNCTIONs, error handling,
reparses procedures at each call (no caching), etc, etc.
Certainly buggy too, but procedures can actually be created and called....
2002-12-08 19:59:22 +01:00