I just applied the external stored procedure patch to a branch of MariaDB and uploaded it to LaunchPad.You can see the branch at https://code.launchpad.net/~atcurtis/maria/5.1-wl820Note that this is not in any reasonable condition to merge into MariaDB. Hopefully we can engage in dialog as to how we can bring this feature properly to MariaDB, MySQL and Drizzle, hopefully making the plugins
I have merged the code from the mysql-5.1 launchpad repository which should put this repository up to the recent 5.1.28-rc version. You can examine the source repository here.On a related note, had a brief email exchange with Eric Herman and so I hope that there will be time for him to do some work to complete the support for Java stored routines.
This question seems to crop up again and again... In the words of one comment to my blog: "I've downloaded your External Language Stored Procedures package and am interested in trying out the JAVA part. Would appreciate if you could explain how use the downloaded stuff."Ok, on my download page, I have provided 2 different downloads which are automatically created from our source repository. A
Wouldn't it be fun to be able to embed web-service routines into
MySQL as if they are stored procedures?
CREATE FUNCTION xml_current_time() RETURNS DATETIME NO SQL
EXTERNAL NAME "xmlrpc://time.userland.com/RPC2;currentTime.getCurrentTime";
Perhaps not a completely useful example... but an interesting goal to achieve. I have written up some code and pushed it to the experimental repository. I haven't tested it yet but I may do later today if I don't get too preoccupied catching up watching NBC's "Heroes". Snapshots created automagically at midnight, Pacific time.
Wow, it actually worked with only minor changes to the code. Check this out:
mysql> create function xml_get_state(id int) returns text
-> no sql language xmlrpc external name
Query OK, 0 rows affected (0.00 sec)
mysql> select xml_get_state(40);
| xml_get_state(40) |
| South Carolina |
1 row in set (0.42 sec)
Now I just need to check that it works for more complex resultsets... Trawl the web for open-access trivial XML-RPC services or build a test XML-RPC server?