RedBeardLab / rediSQL

Redis module that provides a completely functional SQL database

Home Page:https://redisql.com

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

extension load

lefedor opened this issue · comments

Hello, is it possible loading extensions into REDISQL?

like:
db.enable_load_extension(True)
db.load_extension('./spellfix')

I'm trying
$ret = $redis->rawCommand('REDISQL.EXEC', $DbName, "SELECT load_extension('./spellfix');");
and getting
Fatal error: Uncaught exception 'RedisException' with message 'not authorized' in /opt/www/htdocs/www/wDb.php:794 Stack trace: #0 /opt/www/htdocs/www/wDb.php(794): Redis->rawcommand('REDISQL.EXEC', 'Db_1_2', 'SELECT load_ext...') #1 {main} thrown in /opt/www/htdocs/www/wDb.php on line 794

Hummmm, I thought about this, but I never get to implement it.

The not authorized does not seems a redis / redisql exception, so maybe the problem is not strictly related to redisql.

Can you try to use the redis-cli and do the same?

cli dialogue:

127.0.0.1:6379> REDISQL.CREATE_DB wtesta
OK
127.0.0.1:6379> REDISQL.EXEC 'wtesta' "SELECT load_extension('./spellfix');"
(error) not authorized
127.0.0.1:6379> REDISQL.EXEC wtesta "SELECT load_extension('./spellfix');"
(error) not authorized
127.0.0.1:6379> REDISQL.EXEC wtesta "SELECT load_extension('./spellfix.so');"
(error) not authorized

127.0.0.1:6379> REDISQL.EXEC wtesta "SELECT enable_load_extension(1);"
(error) no such function: enable_load_extension
127.0.0.1:6379> REDISQL.EXEC wtesta "SELECT enable_load_extension(true);"
(error) no such function: enable_load_extension

Sorry, I thought I added a comment.

The problem is that we the loading of extensions need to be enable with: https://www.sqlite.org/c3ref/enable_load_extension.html

Can you fix the code yourself? If so a PR would be very great!

Yes, I've used enable_load_extension but it's unavailable over current api.
I'm not sure i'll do hotfix properly on this.

Unfortunately I am in vacations the coming week.

If you can open a PR I will review and merge it next weekm