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