220 Commits

Author SHA1 Message Date
Yossi Gottlieb
ee0ea33013 Add RedisModule_Log() logging API function. 2016-06-23 12:01:44 +02:00
antirez
e48fa9e73a Commit change in autoMemoryFreed(): first -> last.
It's more natural to call the last entry added as "last", the original
commet got me confused until I actually read the code.
2016-06-23 09:38:30 +02:00
antirez
7246f868be Modules: implement zig-zag scanning in autoMemoryFreed().
Most of the time to check the last element is the way to go, however
there are patterns where the contrary is the best choice. Zig-zag
scanning implemented in this commmit always checks the obvious element
first (the last added -- think at a loop where the last element
allocated gets freed again and again), and continues checking one
element in the head and one in the tail.

Thanks to @dvisrky that fixed the original implementation of the
function and proposed zig zag scanning.
2016-06-23 09:09:51 +02:00
Salvatore Sanfilippo
4cca9e08dc Merge pull request #3244 from dvirsky/optimize_autoMemoryFreed
Optimized autoMemoryFreed loop
2016-06-23 08:59:38 +02:00
Yossi Gottlieb
c7ec9f280f Add RedisModule_CreateStringFromString(). 2016-06-22 21:02:40 +03:00
Dvir Volk
fe5d678f2a added RM_Calloc implementation 2016-06-22 17:32:41 +03:00
Yossi Gottlieb
481bd1a45b Cleanup: remove zset reset function from RM_ZsetRangeStop(). 2016-06-22 07:34:14 +03:00
Yossi Gottlieb
ef4c2636ed Fix occasional RM_OpenKey() crashes. 2016-06-21 10:22:19 +03:00
Yossi Gottlieb
83a4257f72 Use const in Redis Module API where possible. 2016-06-20 23:08:06 +03:00
antirez
eddd548adf Free module context after loading.
Now that modules receive RedisModuleString objects on loading, they are
allowed to call the String API, so the context must be released
correctly.

Related to #3293.
2016-06-13 09:45:53 +02:00
antirez
911196827c Minor changes to unifor C style to Redis code base for PR #3293. 2016-06-13 09:39:44 +02:00
Salvatore Sanfilippo
cfc4f7c48a Merge pull request #3293 from yossigo/module_config
Allow passing arguments to modules on load.
2016-06-13 09:31:59 +02:00
Yossi Gottlieb
05f6c2721b Fix MODULE UNLOAD crash and/or wrong error message. 2016-06-05 13:27:38 +03:00
Yossi Gottlieb
244e273e55 Use RedisModuleString for OnLoad argv. 2016-06-05 13:18:24 +03:00
Yossi Gottlieb
03cd702372 Allow passing arguments to modules on load. 2016-06-05 11:37:24 +03:00
antirez
9deb98167b Modules: support for modules native data types. 2016-06-03 18:14:04 +02:00
Dvir Volk
f4c86ac7a0 optimized amFree even further 2016-05-19 13:51:55 +03:00
Dvir Volk
e10b9ca1ca Optimized autoMemoryFreed loop 2016-05-19 12:16:14 +03:00
antirez
75c4d79ad6 Modules: RM_HashSet() SDS ownership business clarified in comments.
Related to #3239.
2016-05-18 16:30:20 +02:00
Dvir Volk
63102f9004 fixed bad transfer of ownership in HashSet causing a potential crash 2016-05-17 16:47:36 +03:00
antirez
cae2bd9aca Modules: initial pool allocator and a LEFTPAD usage example. 2016-05-14 19:42:31 +02:00
antirez
ff44da7d45 Modules: doc layout improved. 2016-05-10 18:54:58 +02:00
antirez
1aaa60df99 RM_ZsetRangeNext()/Prev() typo in define name leading to crash fixed. 2016-05-10 06:40:11 +02:00
antirez
ab140098e5 Modules: commandFlagsFromString() top comment back to 80 cols max. 2016-05-10 06:40:11 +02:00
antirez
1d1be43de0 Trailing spaces removed from moduleCreateArgvFromUserFormat(). 2016-05-10 06:40:11 +02:00
antirez
bcdb40f18d Modules: RM_GetClientId() implemented. 2016-05-10 06:40:11 +02:00
Dvir Volk
5c4877782a fixed crash when calling CreateStringFromCallReply on array elements 2016-05-10 06:40:11 +02:00
Itamar Haber
6b2ed56359 Avoids reallocating and double String on truncate 2016-05-10 06:40:11 +02:00
Dvir Volk
3add8824d9 fixed comment formatting in RM_CreateCommand 2016-05-10 06:40:10 +02:00
Dvir Volk
65b6175c7d another small comment fix 2016-05-10 06:40:10 +02:00
Dvir Volk
2cc3a7c38f fixed comment 2016-05-10 06:40:10 +02:00
Dvir Volk
c78198c2af second attempt at vector formtting 2016-05-10 06:40:10 +02:00
antirez
5aa1a12238 Modules: add ZADD_INCR flag to zset increment API. 2016-05-10 06:40:10 +02:00
Itamar Haber
8d85ee46c8 typo: %s/Emtpy/Empty/g 2016-05-10 06:40:10 +02:00
antirez
8ff424c77f Modules: command <-> core interface modified to get flags & keys. 2016-05-10 06:40:09 +02:00
Ramon Snir
796babd883 tiny typo in Redis Modules API documentation 2016-05-10 06:40:09 +02:00
Dvir Volk
f8a6c1a127 fixed return value of HashGet (and a slight error in the documentation) 2016-05-10 06:40:09 +02:00
antirez
e147db3f80 Modules: Hash API defines made more uniform. 2016-05-10 06:40:09 +02:00
antirez
efddfedc5d Modules: Hash type API WIP #2. 2016-05-10 06:40:09 +02:00
antirez
b1778b855d Modules: Hash type API WIP #1. 2016-05-10 06:40:09 +02:00
antirez
415e58b0b7 Modules: a few fixes for the zset iterator. 2016-05-10 06:40:09 +02:00
antirez
6c6be5136c Modules: postponed array lengths. 2016-05-10 06:40:09 +02:00
antirez
46ea6fd58b Modules: zset lex iterator #3. 2016-05-10 06:40:09 +02:00
antirez
0f148accb2 Modules: zset lex iterator #2. 2016-05-10 06:40:09 +02:00
antirez
27ba85c022 Modules: zset lex iterator #1. 2016-05-10 06:40:08 +02:00
antirez
5b8a856d14 Modules: zset iterator redesign #1. 2016-05-10 06:40:08 +02:00
antirez
3c2493cad7 Modules: fix top comments to be user-facing doc quality. About 33% done. 2016-05-10 06:40:08 +02:00
antirez
073e9a3213 Modules: sorted set iterators WIP #3. 2016-05-10 06:40:08 +02:00
antirez
8b6c57b05e Modules: put zset iterator current element in auto memory pool. 2016-05-10 06:40:08 +02:00
antirez
f254c9747d Modules: sorted set iterators WIP #2. 2016-05-10 06:40:08 +02:00