nutcracker 0.2.4.mac9 → 0.2.4.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (296) hide show
  1. data/README.md +13 -46
  2. data/Rakefile +20 -15
  3. data/bin/nutcracker +1 -6
  4. data/ext/nutcracker/ChangeLog +0 -9
  5. data/ext/nutcracker/LICENSE +0 -0
  6. data/ext/nutcracker/Makefile.am +0 -0
  7. data/ext/nutcracker/Makefile.in +149 -66
  8. data/ext/nutcracker/NOTICE +0 -0
  9. data/ext/nutcracker/README.md +11 -13
  10. data/ext/nutcracker/aclocal.m4 +201 -112
  11. data/ext/nutcracker/conf/nutcracker.leaf.yml +0 -0
  12. data/ext/nutcracker/conf/nutcracker.root.yml +0 -0
  13. data/ext/nutcracker/conf/nutcracker.yml +0 -0
  14. data/ext/nutcracker/config.h.in +0 -15
  15. data/ext/nutcracker/config/config.guess +84 -23
  16. data/ext/nutcracker/config/config.sub +93 -23
  17. data/ext/nutcracker/config/depcomp +81 -35
  18. data/ext/nutcracker/config/install-sh +122 -109
  19. data/ext/nutcracker/config/ltmain.sh +721 -1053
  20. data/ext/nutcracker/config/missing +29 -20
  21. data/ext/nutcracker/configure +2311 -2113
  22. data/ext/nutcracker/configure.ac +3 -35
  23. data/ext/nutcracker/contrib/Makefile.am +0 -0
  24. data/ext/nutcracker/contrib/Makefile.in +107 -41
  25. data/ext/nutcracker/contrib/yaml-0.1.4.tar.gz +0 -0
  26. data/ext/nutcracker/extconf.rb +5 -3
  27. data/ext/nutcracker/m4/libtool.m4 +492 -553
  28. data/ext/nutcracker/m4/ltoptions.m4 +6 -7
  29. data/ext/nutcracker/m4/ltversion.m4 +5 -5
  30. data/ext/nutcracker/m4/lt~obsolete.m4 +3 -9
  31. data/ext/nutcracker/notes/c-styleguide.txt +0 -0
  32. data/ext/nutcracker/notes/debug.txt +0 -0
  33. data/ext/nutcracker/notes/memcache.txt +0 -0
  34. data/ext/nutcracker/notes/recommendation.md +2 -21
  35. data/ext/nutcracker/notes/redis.md +9 -9
  36. data/ext/nutcracker/notes/socket.txt +0 -0
  37. data/ext/nutcracker/scripts/nutcracker.init +0 -0
  38. data/ext/nutcracker/scripts/nutcracker.spec +0 -0
  39. data/ext/nutcracker/scripts/redis-check.py +0 -0
  40. data/ext/nutcracker/scripts/redis-check.sh +0 -9
  41. data/ext/nutcracker/src/Makefile.am +1 -1
  42. data/ext/nutcracker/src/Makefile.in +153 -74
  43. data/ext/nutcracker/src/hashkit/Makefile.am +0 -1
  44. data/ext/nutcracker/src/hashkit/Makefile.in +64 -39
  45. data/ext/nutcracker/src/hashkit/nc_crc32.c +0 -0
  46. data/ext/nutcracker/src/hashkit/nc_fnv.c +0 -0
  47. data/ext/nutcracker/src/hashkit/nc_hashkit.h +0 -2
  48. data/ext/nutcracker/src/hashkit/nc_hsieh.c +0 -0
  49. data/ext/nutcracker/src/hashkit/nc_jenkins.c +0 -0
  50. data/ext/nutcracker/src/hashkit/nc_ketama.c +0 -0
  51. data/ext/nutcracker/src/hashkit/nc_md5.c +0 -0
  52. data/ext/nutcracker/src/hashkit/nc_modula.c +6 -18
  53. data/ext/nutcracker/src/hashkit/nc_murmur.c +0 -0
  54. data/ext/nutcracker/src/hashkit/nc_one_at_a_time.c +0 -0
  55. data/ext/nutcracker/src/hashkit/nc_random.c +0 -0
  56. data/ext/nutcracker/src/nc.c +0 -0
  57. data/ext/nutcracker/src/nc_array.c +0 -0
  58. data/ext/nutcracker/src/nc_array.h +0 -0
  59. data/ext/nutcracker/src/nc_client.c +0 -0
  60. data/ext/nutcracker/src/nc_client.h +0 -0
  61. data/ext/nutcracker/src/nc_conf.c +35 -14
  62. data/ext/nutcracker/src/nc_conf.h +1 -1
  63. data/ext/nutcracker/src/nc_connection.c +0 -0
  64. data/ext/nutcracker/src/nc_connection.h +0 -0
  65. data/ext/nutcracker/src/nc_core.c +26 -29
  66. data/ext/nutcracker/src/nc_core.h +5 -13
  67. data/ext/nutcracker/src/{nc_epoll.c → nc_event.c} +30 -94
  68. data/ext/nutcracker/src/nc_event.h +13 -33
  69. data/ext/nutcracker/src/nc_log.c +0 -0
  70. data/ext/nutcracker/src/nc_log.h +0 -0
  71. data/ext/nutcracker/src/nc_mbuf.c +0 -0
  72. data/ext/nutcracker/src/nc_mbuf.h +0 -0
  73. data/ext/nutcracker/src/nc_message.c +0 -0
  74. data/ext/nutcracker/src/nc_message.h +0 -2
  75. data/ext/nutcracker/src/nc_proxy.c +8 -8
  76. data/ext/nutcracker/src/nc_proxy.h +0 -0
  77. data/ext/nutcracker/src/nc_queue.h +0 -0
  78. data/ext/nutcracker/src/nc_rbtree.c +0 -0
  79. data/ext/nutcracker/src/nc_rbtree.h +0 -0
  80. data/ext/nutcracker/src/nc_request.c +3 -3
  81. data/ext/nutcracker/src/nc_response.c +6 -4
  82. data/ext/nutcracker/src/nc_server.c +12 -14
  83. data/ext/nutcracker/src/nc_server.h +0 -0
  84. data/ext/nutcracker/src/nc_signal.c +0 -0
  85. data/ext/nutcracker/src/nc_signal.h +0 -0
  86. data/ext/nutcracker/src/nc_stats.c +21 -16
  87. data/ext/nutcracker/src/nc_stats.h +4 -3
  88. data/ext/nutcracker/src/nc_string.c +0 -0
  89. data/ext/nutcracker/src/nc_string.h +0 -0
  90. data/ext/nutcracker/src/nc_util.c +0 -16
  91. data/ext/nutcracker/src/nc_util.h +0 -1
  92. data/ext/nutcracker/src/proto/Makefile.am +0 -0
  93. data/ext/nutcracker/src/proto/Makefile.in +60 -32
  94. data/ext/nutcracker/src/proto/nc_memcache.c +0 -0
  95. data/ext/nutcracker/src/proto/nc_proto.h +0 -0
  96. data/ext/nutcracker/src/proto/nc_redis.c +4 -17
  97. data/lib/nutcracker.rb +2 -187
  98. data/lib/nutcracker/version.rb +1 -1
  99. metadata +10 -256
  100. data/ext/nutcracker/Makefile +0 -643
  101. data/ext/nutcracker/autom4te.cache/output.0 +0 -18664
  102. data/ext/nutcracker/autom4te.cache/output.1 +0 -18664
  103. data/ext/nutcracker/autom4te.cache/output.2 +0 -18664
  104. data/ext/nutcracker/autom4te.cache/requests +0 -494
  105. data/ext/nutcracker/autom4te.cache/traces.0 +0 -2415
  106. data/ext/nutcracker/autom4te.cache/traces.1 +0 -945
  107. data/ext/nutcracker/autom4te.cache/traces.2 +0 -2415
  108. data/ext/nutcracker/config.h +0 -332
  109. data/ext/nutcracker/config.log +0 -2684
  110. data/ext/nutcracker/config.status +0 -2317
  111. data/ext/nutcracker/contrib/Makefile +0 -494
  112. data/ext/nutcracker/contrib/yaml-0.1.4/Makefile +0 -736
  113. data/ext/nutcracker/contrib/yaml-0.1.4/autom4te.cache/output.0 +0 -13102
  114. data/ext/nutcracker/contrib/yaml-0.1.4/autom4te.cache/output.1 +0 -13085
  115. data/ext/nutcracker/contrib/yaml-0.1.4/autom4te.cache/output.2 +0 -13085
  116. data/ext/nutcracker/contrib/yaml-0.1.4/autom4te.cache/requests +0 -476
  117. data/ext/nutcracker/contrib/yaml-0.1.4/autom4te.cache/traces.0 +0 -2339
  118. data/ext/nutcracker/contrib/yaml-0.1.4/autom4te.cache/traces.1 +0 -545
  119. data/ext/nutcracker/contrib/yaml-0.1.4/autom4te.cache/traces.2 +0 -2339
  120. data/ext/nutcracker/contrib/yaml-0.1.4/config.h +0 -81
  121. data/ext/nutcracker/contrib/yaml-0.1.4/config.h.in~ +0 -80
  122. data/ext/nutcracker/contrib/yaml-0.1.4/config.log +0 -688
  123. data/ext/nutcracker/contrib/yaml-0.1.4/config.status +0 -2032
  124. data/ext/nutcracker/contrib/yaml-0.1.4/doc/html/annotated.html +0 -51
  125. data/ext/nutcracker/contrib/yaml-0.1.4/doc/html/bc_s.png +0 -0
  126. data/ext/nutcracker/contrib/yaml-0.1.4/doc/html/classes.html +0 -41
  127. data/ext/nutcracker/contrib/yaml-0.1.4/doc/html/closed.png +0 -0
  128. data/ext/nutcracker/contrib/yaml-0.1.4/doc/html/doxygen.css +0 -656
  129. data/ext/nutcracker/contrib/yaml-0.1.4/doc/html/doxygen.png +0 -0
  130. data/ext/nutcracker/contrib/yaml-0.1.4/doc/html/files.html +0 -40
  131. data/ext/nutcracker/contrib/yaml-0.1.4/doc/html/functions.html +0 -91
  132. data/ext/nutcracker/contrib/yaml-0.1.4/doc/html/functions_0x62.html +0 -84
  133. data/ext/nutcracker/contrib/yaml-0.1.4/doc/html/functions_0x63.html +0 -87
  134. data/ext/nutcracker/contrib/yaml-0.1.4/doc/html/functions_0x64.html +0 -83
  135. data/ext/nutcracker/contrib/yaml-0.1.4/doc/html/functions_0x65.html +0 -110
  136. data/ext/nutcracker/contrib/yaml-0.1.4/doc/html/functions_0x66.html +0 -79
  137. data/ext/nutcracker/contrib/yaml-0.1.4/doc/html/functions_0x68.html +0 -80
  138. data/ext/nutcracker/contrib/yaml-0.1.4/doc/html/functions_0x69.html +0 -92
  139. data/ext/nutcracker/contrib/yaml-0.1.4/doc/html/functions_0x6b.html +0 -71
  140. data/ext/nutcracker/contrib/yaml-0.1.4/doc/html/functions_0x6c.html +0 -88
  141. data/ext/nutcracker/contrib/yaml-0.1.4/doc/html/functions_0x6d.html +0 -96
  142. data/ext/nutcracker/contrib/yaml-0.1.4/doc/html/functions_0x6e.html +0 -71
  143. data/ext/nutcracker/contrib/yaml-0.1.4/doc/html/functions_0x6f.html +0 -80
  144. data/ext/nutcracker/contrib/yaml-0.1.4/doc/html/functions_0x70.html +0 -100
  145. data/ext/nutcracker/contrib/yaml-0.1.4/doc/html/functions_0x71.html +0 -71
  146. data/ext/nutcracker/contrib/yaml-0.1.4/doc/html/functions_0x72.html +0 -87
  147. data/ext/nutcracker/contrib/yaml-0.1.4/doc/html/functions_0x73.html +0 -163
  148. data/ext/nutcracker/contrib/yaml-0.1.4/doc/html/functions_0x74.html +0 -115
  149. data/ext/nutcracker/contrib/yaml-0.1.4/doc/html/functions_0x75.html +0 -71
  150. data/ext/nutcracker/contrib/yaml-0.1.4/doc/html/functions_0x76.html +0 -80
  151. data/ext/nutcracker/contrib/yaml-0.1.4/doc/html/functions_0x77.html +0 -77
  152. data/ext/nutcracker/contrib/yaml-0.1.4/doc/html/functions_vars.html +0 -91
  153. data/ext/nutcracker/contrib/yaml-0.1.4/doc/html/functions_vars_0x62.html +0 -84
  154. data/ext/nutcracker/contrib/yaml-0.1.4/doc/html/functions_vars_0x63.html +0 -87
  155. data/ext/nutcracker/contrib/yaml-0.1.4/doc/html/functions_vars_0x64.html +0 -83
  156. data/ext/nutcracker/contrib/yaml-0.1.4/doc/html/functions_vars_0x65.html +0 -110
  157. data/ext/nutcracker/contrib/yaml-0.1.4/doc/html/functions_vars_0x66.html +0 -79
  158. data/ext/nutcracker/contrib/yaml-0.1.4/doc/html/functions_vars_0x68.html +0 -80
  159. data/ext/nutcracker/contrib/yaml-0.1.4/doc/html/functions_vars_0x69.html +0 -92
  160. data/ext/nutcracker/contrib/yaml-0.1.4/doc/html/functions_vars_0x6b.html +0 -71
  161. data/ext/nutcracker/contrib/yaml-0.1.4/doc/html/functions_vars_0x6c.html +0 -88
  162. data/ext/nutcracker/contrib/yaml-0.1.4/doc/html/functions_vars_0x6d.html +0 -96
  163. data/ext/nutcracker/contrib/yaml-0.1.4/doc/html/functions_vars_0x6e.html +0 -71
  164. data/ext/nutcracker/contrib/yaml-0.1.4/doc/html/functions_vars_0x6f.html +0 -80
  165. data/ext/nutcracker/contrib/yaml-0.1.4/doc/html/functions_vars_0x70.html +0 -100
  166. data/ext/nutcracker/contrib/yaml-0.1.4/doc/html/functions_vars_0x71.html +0 -71
  167. data/ext/nutcracker/contrib/yaml-0.1.4/doc/html/functions_vars_0x72.html +0 -87
  168. data/ext/nutcracker/contrib/yaml-0.1.4/doc/html/functions_vars_0x73.html +0 -163
  169. data/ext/nutcracker/contrib/yaml-0.1.4/doc/html/functions_vars_0x74.html +0 -115
  170. data/ext/nutcracker/contrib/yaml-0.1.4/doc/html/functions_vars_0x75.html +0 -71
  171. data/ext/nutcracker/contrib/yaml-0.1.4/doc/html/functions_vars_0x76.html +0 -80
  172. data/ext/nutcracker/contrib/yaml-0.1.4/doc/html/functions_vars_0x77.html +0 -77
  173. data/ext/nutcracker/contrib/yaml-0.1.4/doc/html/globals.html +0 -667
  174. data/ext/nutcracker/contrib/yaml-0.1.4/doc/html/globals_defs.html +0 -81
  175. data/ext/nutcracker/contrib/yaml-0.1.4/doc/html/globals_enum.html +0 -78
  176. data/ext/nutcracker/contrib/yaml-0.1.4/doc/html/globals_eval.html +0 -373
  177. data/ext/nutcracker/contrib/yaml-0.1.4/doc/html/globals_func.html +0 -196
  178. data/ext/nutcracker/contrib/yaml-0.1.4/doc/html/globals_type.html +0 -126
  179. data/ext/nutcracker/contrib/yaml-0.1.4/doc/html/group__basic.html +0 -320
  180. data/ext/nutcracker/contrib/yaml-0.1.4/doc/html/group__emitter.html +0 -819
  181. data/ext/nutcracker/contrib/yaml-0.1.4/doc/html/group__events.html +0 -664
  182. data/ext/nutcracker/contrib/yaml-0.1.4/doc/html/group__export.html +0 -60
  183. data/ext/nutcracker/contrib/yaml-0.1.4/doc/html/group__nodes.html +0 -795
  184. data/ext/nutcracker/contrib/yaml-0.1.4/doc/html/group__parser.html +0 -606
  185. data/ext/nutcracker/contrib/yaml-0.1.4/doc/html/group__styles.html +0 -222
  186. data/ext/nutcracker/contrib/yaml-0.1.4/doc/html/group__tokens.html +0 -246
  187. data/ext/nutcracker/contrib/yaml-0.1.4/doc/html/group__version.html +0 -106
  188. data/ext/nutcracker/contrib/yaml-0.1.4/doc/html/index.html +0 -31
  189. data/ext/nutcracker/contrib/yaml-0.1.4/doc/html/modules.html +0 -42
  190. data/ext/nutcracker/contrib/yaml-0.1.4/doc/html/nav_f.png +0 -0
  191. data/ext/nutcracker/contrib/yaml-0.1.4/doc/html/nav_h.png +0 -0
  192. data/ext/nutcracker/contrib/yaml-0.1.4/doc/html/open.png +0 -0
  193. data/ext/nutcracker/contrib/yaml-0.1.4/doc/html/structyaml__alias__data__s.html +0 -108
  194. data/ext/nutcracker/contrib/yaml-0.1.4/doc/html/structyaml__document__s.html +0 -235
  195. data/ext/nutcracker/contrib/yaml-0.1.4/doc/html/structyaml__emitter__s.html +0 -1300
  196. data/ext/nutcracker/contrib/yaml-0.1.4/doc/html/structyaml__event__s.html +0 -496
  197. data/ext/nutcracker/contrib/yaml-0.1.4/doc/html/structyaml__mark__s.html +0 -108
  198. data/ext/nutcracker/contrib/yaml-0.1.4/doc/html/structyaml__node__pair__s.html +0 -91
  199. data/ext/nutcracker/contrib/yaml-0.1.4/doc/html/structyaml__node__s.html +0 -420
  200. data/ext/nutcracker/contrib/yaml-0.1.4/doc/html/structyaml__parser__s.html +0 -1229
  201. data/ext/nutcracker/contrib/yaml-0.1.4/doc/html/structyaml__simple__key__s.html +0 -97
  202. data/ext/nutcracker/contrib/yaml-0.1.4/doc/html/structyaml__tag__directive__s.html +0 -91
  203. data/ext/nutcracker/contrib/yaml-0.1.4/doc/html/structyaml__token__s.html +0 -413
  204. data/ext/nutcracker/contrib/yaml-0.1.4/doc/html/structyaml__version__directive__s.html +0 -91
  205. data/ext/nutcracker/contrib/yaml-0.1.4/doc/html/tab_a.png +0 -0
  206. data/ext/nutcracker/contrib/yaml-0.1.4/doc/html/tab_b.png +0 -0
  207. data/ext/nutcracker/contrib/yaml-0.1.4/doc/html/tab_h.png +0 -0
  208. data/ext/nutcracker/contrib/yaml-0.1.4/doc/html/tab_s.png +0 -0
  209. data/ext/nutcracker/contrib/yaml-0.1.4/doc/html/tabs.css +0 -59
  210. data/ext/nutcracker/contrib/yaml-0.1.4/doc/html/yaml_8h.html +0 -525
  211. data/ext/nutcracker/contrib/yaml-0.1.4/include/Makefile.am +0 -17
  212. data/ext/nutcracker/contrib/yaml-0.1.4/include/Makefile.in +0 -470
  213. data/ext/nutcracker/contrib/yaml-0.1.4/libtool +0 -8890
  214. data/ext/nutcracker/contrib/yaml-0.1.4/src/Makefile +0 -484
  215. data/ext/nutcracker/contrib/yaml-0.1.4/src/api.lo +0 -12
  216. data/ext/nutcracker/contrib/yaml-0.1.4/src/api.o +0 -0
  217. data/ext/nutcracker/contrib/yaml-0.1.4/src/dumper.lo +0 -12
  218. data/ext/nutcracker/contrib/yaml-0.1.4/src/dumper.o +0 -0
  219. data/ext/nutcracker/contrib/yaml-0.1.4/src/emitter.lo +0 -12
  220. data/ext/nutcracker/contrib/yaml-0.1.4/src/emitter.o +0 -0
  221. data/ext/nutcracker/contrib/yaml-0.1.4/src/libyaml.la +0 -41
  222. data/ext/nutcracker/contrib/yaml-0.1.4/src/loader.lo +0 -12
  223. data/ext/nutcracker/contrib/yaml-0.1.4/src/loader.o +0 -0
  224. data/ext/nutcracker/contrib/yaml-0.1.4/src/parser.lo +0 -12
  225. data/ext/nutcracker/contrib/yaml-0.1.4/src/parser.o +0 -0
  226. data/ext/nutcracker/contrib/yaml-0.1.4/src/reader.lo +0 -12
  227. data/ext/nutcracker/contrib/yaml-0.1.4/src/reader.o +0 -0
  228. data/ext/nutcracker/contrib/yaml-0.1.4/src/scanner.lo +0 -12
  229. data/ext/nutcracker/contrib/yaml-0.1.4/src/scanner.o +0 -0
  230. data/ext/nutcracker/contrib/yaml-0.1.4/src/writer.lo +0 -12
  231. data/ext/nutcracker/contrib/yaml-0.1.4/src/writer.o +0 -0
  232. data/ext/nutcracker/contrib/yaml-0.1.4/stamp-h1 +0 -1
  233. data/ext/nutcracker/contrib/yaml-0.1.4/tests/Makefile +0 -675
  234. data/ext/nutcracker/contrib/yaml-0.1.4/tests/example-deconstructor +0 -0
  235. data/ext/nutcracker/contrib/yaml-0.1.4/tests/example-deconstructor-alt +0 -0
  236. data/ext/nutcracker/contrib/yaml-0.1.4/tests/example-deconstructor-alt.o +0 -0
  237. data/ext/nutcracker/contrib/yaml-0.1.4/tests/example-deconstructor.o +0 -0
  238. data/ext/nutcracker/contrib/yaml-0.1.4/tests/example-reformatter +0 -0
  239. data/ext/nutcracker/contrib/yaml-0.1.4/tests/example-reformatter-alt +0 -0
  240. data/ext/nutcracker/contrib/yaml-0.1.4/tests/example-reformatter-alt.o +0 -0
  241. data/ext/nutcracker/contrib/yaml-0.1.4/tests/example-reformatter.o +0 -0
  242. data/ext/nutcracker/contrib/yaml-0.1.4/tests/run-dumper +0 -0
  243. data/ext/nutcracker/contrib/yaml-0.1.4/tests/run-dumper.o +0 -0
  244. data/ext/nutcracker/contrib/yaml-0.1.4/tests/run-emitter +0 -0
  245. data/ext/nutcracker/contrib/yaml-0.1.4/tests/run-emitter.o +0 -0
  246. data/ext/nutcracker/contrib/yaml-0.1.4/tests/run-loader +0 -0
  247. data/ext/nutcracker/contrib/yaml-0.1.4/tests/run-loader.o +0 -0
  248. data/ext/nutcracker/contrib/yaml-0.1.4/tests/run-parser +0 -0
  249. data/ext/nutcracker/contrib/yaml-0.1.4/tests/run-parser.o +0 -0
  250. data/ext/nutcracker/contrib/yaml-0.1.4/tests/run-scanner +0 -0
  251. data/ext/nutcracker/contrib/yaml-0.1.4/tests/run-scanner.o +0 -0
  252. data/ext/nutcracker/contrib/yaml-0.1.4/yaml-0.1.pc +0 -10
  253. data/ext/nutcracker/contrib/yaml-0.1.4/yaml-0.1.pc.in +0 -10
  254. data/ext/nutcracker/libtool +0 -9403
  255. data/ext/nutcracker/src/Makefile +0 -647
  256. data/ext/nutcracker/src/hashkit/Makefile +0 -476
  257. data/ext/nutcracker/src/hashkit/libhashkit.a +0 -0
  258. data/ext/nutcracker/src/hashkit/nc_crc16.c +0 -66
  259. data/ext/nutcracker/src/hashkit/nc_crc16.o +0 -0
  260. data/ext/nutcracker/src/hashkit/nc_crc32.o +0 -0
  261. data/ext/nutcracker/src/hashkit/nc_fnv.o +0 -0
  262. data/ext/nutcracker/src/hashkit/nc_hsieh.o +0 -0
  263. data/ext/nutcracker/src/hashkit/nc_jenkins.o +0 -0
  264. data/ext/nutcracker/src/hashkit/nc_ketama.o +0 -0
  265. data/ext/nutcracker/src/hashkit/nc_md5.o +0 -0
  266. data/ext/nutcracker/src/hashkit/nc_modula.o +0 -0
  267. data/ext/nutcracker/src/hashkit/nc_murmur.o +0 -0
  268. data/ext/nutcracker/src/hashkit/nc_one_at_a_time.o +0 -0
  269. data/ext/nutcracker/src/hashkit/nc_random.o +0 -0
  270. data/ext/nutcracker/src/nc.o +0 -0
  271. data/ext/nutcracker/src/nc_array.o +0 -0
  272. data/ext/nutcracker/src/nc_client.o +0 -0
  273. data/ext/nutcracker/src/nc_conf.o +0 -0
  274. data/ext/nutcracker/src/nc_connection.o +0 -0
  275. data/ext/nutcracker/src/nc_core.o +0 -0
  276. data/ext/nutcracker/src/nc_epoll.o +0 -0
  277. data/ext/nutcracker/src/nc_kqueue.c +0 -296
  278. data/ext/nutcracker/src/nc_kqueue.o +0 -0
  279. data/ext/nutcracker/src/nc_log.o +0 -0
  280. data/ext/nutcracker/src/nc_mbuf.o +0 -0
  281. data/ext/nutcracker/src/nc_message.o +0 -0
  282. data/ext/nutcracker/src/nc_proxy.o +0 -0
  283. data/ext/nutcracker/src/nc_rbtree.o +0 -0
  284. data/ext/nutcracker/src/nc_request.o +0 -0
  285. data/ext/nutcracker/src/nc_response.o +0 -0
  286. data/ext/nutcracker/src/nc_server.o +0 -0
  287. data/ext/nutcracker/src/nc_signal.o +0 -0
  288. data/ext/nutcracker/src/nc_stats.o +0 -0
  289. data/ext/nutcracker/src/nc_string.o +0 -0
  290. data/ext/nutcracker/src/nc_util.o +0 -0
  291. data/ext/nutcracker/src/nutcracker +0 -0
  292. data/ext/nutcracker/src/proto/Makefile +0 -454
  293. data/ext/nutcracker/src/proto/libproto.a +0 -0
  294. data/ext/nutcracker/src/proto/nc_memcache.o +0 -0
  295. data/ext/nutcracker/src/proto/nc_redis.o +0 -0
  296. data/ext/nutcracker/stamp-h1 +0 -1
File without changes
File without changes
@@ -34,7 +34,6 @@ redis_arg0(struct msg *r)
34
34
  case MSG_REQ_REDIS_PTTL:
35
35
  case MSG_REQ_REDIS_TTL:
36
36
  case MSG_REQ_REDIS_TYPE:
37
- case MSG_REQ_REDIS_DUMP:
38
37
 
39
38
  case MSG_REQ_REDIS_DECR:
40
39
  case MSG_REQ_REDIS_GET:
@@ -139,8 +138,6 @@ redis_arg2(struct msg *r)
139
138
  case MSG_REQ_REDIS_ZINCRBY:
140
139
  case MSG_REQ_REDIS_ZREMRANGEBYRANK:
141
140
  case MSG_REQ_REDIS_ZREMRANGEBYSCORE:
142
-
143
- case MSG_REQ_REDIS_RESTORE:
144
141
  return true;
145
142
 
146
143
  default:
@@ -461,11 +458,6 @@ redis_parse_req(struct msg *r)
461
458
  break;
462
459
  }
463
460
 
464
- if (str4icmp(m, 'd', 'u', 'm', 'p')) {
465
- r->type = MSG_REQ_REDIS_DUMP;
466
- break;
467
- }
468
-
469
461
  if (str4icmp(m, 'h', 'd', 'e', 'l')) {
470
462
  r->type = MSG_REQ_REDIS_HDEL;
471
463
  break;
@@ -775,11 +767,6 @@ redis_parse_req(struct msg *r)
775
767
  break;
776
768
  }
777
769
 
778
- if (str7icmp(m, 'r', 'e', 's', 't', 'o', 'r', 'e')) {
779
- r->type = MSG_REQ_REDIS_RESTORE;
780
- break;
781
- }
782
-
783
770
  break;
784
771
 
785
772
  case 8:
@@ -960,11 +947,11 @@ redis_parse_req(struct msg *r)
960
947
  "key", r->id, r->type);
961
948
  goto error;
962
949
  }
963
- if (r->rlen >= mbuf_data_size()) {
950
+ if (r->rlen > mbuf_data_size()) {
964
951
  log_error("parsed bad req %"PRIu64" of type %d with key "
965
- "length %d that greater than or equal to maximum"
966
- " redis key length of %d", r->id, r->type,
967
- r->rlen, mbuf_data_size());
952
+ "length %d that exceeds maximum redis key "
953
+ "length of %d", r->id, r->type, r->rlen,
954
+ mbuf_data_size());
968
955
  goto error;
969
956
  }
970
957
  if (r->rnarg == 0) {
data/lib/nutcracker.rb CHANGED
@@ -1,192 +1,7 @@
1
1
  require 'nutcracker/version'
2
- require 'socket'
3
- require 'json'
4
- require 'yaml'
5
- require 'redis'
6
2
 
7
3
  module Nutcracker
8
- # Syntactic sugar for launching the Nutcracker service ( see {Wrapper#initialize} )
9
- # @return [Wrapper] Nutcracker process wrapper
10
- # @example
11
- # Nutcracker.start config_file: 'conf/nutcracker.yaml'
12
- def self.start options
13
- Nutcracker::Wrapper.new(options).start
14
- end
15
-
16
- # Connect to a running instance of Nutcracker ( see {Wrapper#initialize} )
17
- # @return [Wrapper] Nutcracker process wrapper
18
- # @example
19
- # Nutcracker.attach :config_file: 'conf/nutcracker.yaml', :stats_port => 22222
20
- def self.attach options
21
- Nutcracker::Wrapper.new options.merge attached: true
22
- end
23
-
24
- # Returns the Nutcracker executable path that is embeded with the gem
25
- def self.executable
26
- File.expand_path("../../ext/nutcracker/src/nutcracker", __FILE__)
27
- end
28
-
29
- # Returns the version string
30
4
  def self.version
31
- Nutcracker::VERSION
32
- end
33
-
34
- class Wrapper
35
- attr_reader :pid
36
-
37
- # Initialize a new Nutcracker process wrappper
38
- # @param [Hash] options
39
- # @option options [String] :config_file (conf/nutcracker.yaml) path to nutcracker's configuration file
40
- # @option options [String] :stats_port (22222) Nutcracker stats listing port
41
- # @option options [Array] :args ([]) array with additional command line arguments
42
- def initialize options
43
- @options = validate defaults.merge options
44
- end
45
-
46
- # launching the Nutcracker service
47
- def start *args
48
- return if attached? or running?
49
- @pid = ::Process.spawn Nutcracker.executable, *command
50
- Kernel.at_exit { kill if running? }
51
- self
52
- end
53
-
54
- # Returns the current running status
55
- def running?
56
- attached? ? stats.any? : !!(pid and ::Process.getpgid pid rescue false)
57
- end
58
-
59
- # Returns true if the current instance was initialize with the attached flag
60
- def attached?
61
- @options[:attached]
62
- end
63
-
64
- # Stops the Nutcracker service
65
- def stop
66
- sig :TERM
67
- end
68
-
69
- # Kills the Nutcracker service
70
- def kill
71
- sig :KILL
72
- end
73
-
74
- # Wait for the process to exit
75
- def join
76
- attached? ? sleep : (running! and ::Process.waitpid2 pid)
77
- end
78
-
79
- # Returns Nutcracker's configuration hash
80
- def config
81
- @config ||= YAML.load_file @options[:config_file]
82
- end
83
-
84
- # Syntactic sugar for initialize plugins
85
- def use plugin, *args
86
- Nutcracker.const_get(plugin.to_s.capitalize).start(self,*args)
87
- end
88
-
89
- # Returns hash with server and node statistics
90
- # See example.json @ project root to get details about the structure
91
- def overview
92
- data = { :clusters => [], :config => config }
93
-
94
- stats.each do |cluster_name, cluster_data|
95
- # Setting global server attributes ( like hostname, version etc...)
96
- unless cluster_data.is_a? Hash
97
- data[cluster_name] = cluster_data
98
- next
99
- end
100
-
101
- next unless redis? cluster_name # skip memcached clusters
102
-
103
- aliases = node_aliases cluster_name
104
- cluster = { nodes: [], name: cluster_name }
105
- cluster_data.each do |node, node_value|
106
- # Adding node
107
- if node_value.kind_of? Hash
108
- node_data = cluster_data[node]
109
- node = aliases[node] || node
110
- url = ( node =~ /redis\:\/\// ) ? node : "redis://#{node}"
111
- info = redis_info(url)
112
- cluster[:nodes] << {
113
- server_url: url, info: info, running: info.any?
114
- }.merge(node_data)
115
- else # Cluster attribute
116
- cluster[node] = node_value
117
- end
118
- end
119
- data[:clusters].push cluster
120
- end
121
- data
122
- end
123
-
124
- # Check if a given cluster name was configure as Redis
125
- def redis? cluster
126
- config[cluster]["redis"] rescue false
127
- end
128
-
129
- # https://github.com/twitter/twemproxy/blob/master/notes/recommendation.md#node-names-for-consistent-hashing
130
- def node_aliases cluster
131
- Hash[config[cluster]["servers"].map(&:split).each {|o| o[0]=o[0].split(":")[0..1].join(":")}.map(&:reverse)]
132
- end
133
-
134
- # Returns hash with information about a given Redis
135
- def redis_info url
136
- begin
137
- redis = Redis.connect(url: url)
138
- info = redis.info
139
- db_size = redis.dbsize
140
- max_memory = redis.config(:get, 'maxmemory')['maxmemory'].to_i
141
- redis.quit
142
- rescue Exception
143
- return {}
144
- end
145
-
146
- {
147
- 'connections' => info['connected_clients'].to_i,
148
- 'used_memory' => info['used_memory'].to_f,
149
- 'used_memory_rss' => info['used_memory_rss'].to_f,
150
- 'fragmentation' => info['mem_fragmentation_ratio'].to_f,
151
- 'expired_keys' => info['expired_keys'].to_i,
152
- 'evicted_keys' => info['evicted_keys'].to_i,
153
- 'hits' => info['keyspace_hits'].to_i,
154
- 'misses' => info['keyspace_misses'].to_i,
155
- 'keys' => db_size,
156
- 'max_memory' => max_memory,
157
- 'hit_ratio' => 0
158
- }.tap {|d| d['hit_ratio'] = d['hits'].to_f / (d['hits']+d['misses']).to_f if d['hits'] > 0 }
159
- end
160
-
161
- # Returns a hash with server statistics
162
- def stats
163
- JSON.parse TCPSocket.new('127.0.0.1',@options[:stats_port]).read rescue {}
164
- end
165
-
166
- private
167
-
168
- def command
169
- ['-c', @options[:config_file],'-s',@options[:stats_port],*@options[:args]].map(&:to_s)
170
- end
171
-
172
- def defaults
173
- { :args => [],
174
- :config_file => 'conf/nutcracker.yaml',
175
- :stats_port => 22222,
176
- :attached => false}
177
- end
178
-
179
- def validate options
180
- options.tap { File.exists? options[:config_file] or raise "#{options[:config_file]} not found" }
181
- end
182
-
183
- def running!
184
- running? or raise RuntimeError, "Nutcracker isn't running..."
185
- end
186
-
187
- def sig term
188
- running! and ::Process.kill(term, pid)
189
- end
190
-
5
+ VERSION
191
6
  end
192
- end
7
+ end
@@ -1,3 +1,3 @@
1
1
  module Nutcracker
2
- VERSION = "0.2.4.mac9"
2
+ VERSION = "0.2.4.1".freeze
3
3
  end
metadata CHANGED
@@ -1,65 +1,17 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: nutcracker
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.2.4.mac9
5
- prerelease: 6
4
+ version: 0.2.4.1
5
+ prerelease:
6
6
  platform: ruby
7
7
  authors:
8
8
  - Eran Barak Levi
9
9
  autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2013-09-11 00:00:00.000000000 Z
13
- dependencies:
14
- - !ruby/object:Gem::Dependency
15
- name: minitest
16
- requirement: !ruby/object:Gem::Requirement
17
- none: false
18
- requirements:
19
- - - ~>
20
- - !ruby/object:Gem::Version
21
- version: 5.0.0
22
- type: :development
23
- prerelease: false
24
- version_requirements: !ruby/object:Gem::Requirement
25
- none: false
26
- requirements:
27
- - - ~>
28
- - !ruby/object:Gem::Version
29
- version: 5.0.0
30
- - !ruby/object:Gem::Dependency
31
- name: mocha
32
- requirement: !ruby/object:Gem::Requirement
33
- none: false
34
- requirements:
35
- - - ~>
36
- - !ruby/object:Gem::Version
37
- version: 0.14.0
38
- type: :development
39
- prerelease: false
40
- version_requirements: !ruby/object:Gem::Requirement
41
- none: false
42
- requirements:
43
- - - ~>
44
- - !ruby/object:Gem::Version
45
- version: 0.14.0
46
- - !ruby/object:Gem::Dependency
47
- name: redis
48
- requirement: !ruby/object:Gem::Requirement
49
- none: false
50
- requirements:
51
- - - ! '>='
52
- - !ruby/object:Gem::Version
53
- version: '0'
54
- type: :runtime
55
- prerelease: false
56
- version_requirements: !ruby/object:Gem::Requirement
57
- none: false
58
- requirements:
59
- - - ! '>='
60
- - !ruby/object:Gem::Version
61
- version: '0'
62
- description: Gem wrapper for Twitter's Nutcracker
12
+ date: 2013-05-20 00:00:00.000000000 Z
13
+ dependencies: []
14
+ description: Gem/Bundler benefits for Twitter's Nutcraker C app
63
15
  email: eran@kontera.com
64
16
  executables:
65
17
  - nutcracker
@@ -73,13 +25,6 @@ files:
73
25
  - lib/nutcracker/version.rb
74
26
  - lib/nutcracker.rb
75
27
  - ext/nutcracker/aclocal.m4
76
- - ext/nutcracker/autom4te.cache/output.0
77
- - ext/nutcracker/autom4te.cache/output.1
78
- - ext/nutcracker/autom4te.cache/output.2
79
- - ext/nutcracker/autom4te.cache/requests
80
- - ext/nutcracker/autom4te.cache/traces.0
81
- - ext/nutcracker/autom4te.cache/traces.1
82
- - ext/nutcracker/autom4te.cache/traces.2
83
28
  - ext/nutcracker/ChangeLog
84
29
  - ext/nutcracker/conf/nutcracker.leaf.yml
85
30
  - ext/nutcracker/conf/nutcracker.root.yml
@@ -90,212 +35,64 @@ files:
90
35
  - ext/nutcracker/config/install-sh
91
36
  - ext/nutcracker/config/ltmain.sh
92
37
  - ext/nutcracker/config/missing
93
- - ext/nutcracker/config.h
94
38
  - ext/nutcracker/config.h.in
95
- - ext/nutcracker/config.log
96
- - ext/nutcracker/config.status
97
39
  - ext/nutcracker/configure
98
40
  - ext/nutcracker/configure.ac
99
- - ext/nutcracker/contrib/Makefile
100
41
  - ext/nutcracker/contrib/Makefile.am
101
42
  - ext/nutcracker/contrib/Makefile.in
102
43
  - ext/nutcracker/contrib/yaml-0.1.4/aclocal.m4
103
- - ext/nutcracker/contrib/yaml-0.1.4/autom4te.cache/output.0
104
- - ext/nutcracker/contrib/yaml-0.1.4/autom4te.cache/output.1
105
- - ext/nutcracker/contrib/yaml-0.1.4/autom4te.cache/output.2
106
- - ext/nutcracker/contrib/yaml-0.1.4/autom4te.cache/requests
107
- - ext/nutcracker/contrib/yaml-0.1.4/autom4te.cache/traces.0
108
- - ext/nutcracker/contrib/yaml-0.1.4/autom4te.cache/traces.1
109
- - ext/nutcracker/contrib/yaml-0.1.4/autom4te.cache/traces.2
110
44
  - ext/nutcracker/contrib/yaml-0.1.4/config/config.guess
111
45
  - ext/nutcracker/contrib/yaml-0.1.4/config/config.sub
112
46
  - ext/nutcracker/contrib/yaml-0.1.4/config/depcomp
113
47
  - ext/nutcracker/contrib/yaml-0.1.4/config/install-sh
114
48
  - ext/nutcracker/contrib/yaml-0.1.4/config/ltmain.sh
115
49
  - ext/nutcracker/contrib/yaml-0.1.4/config/missing
116
- - ext/nutcracker/contrib/yaml-0.1.4/config.h
117
50
  - ext/nutcracker/contrib/yaml-0.1.4/config.h.in
118
- - ext/nutcracker/contrib/yaml-0.1.4/config.h.in~
119
- - ext/nutcracker/contrib/yaml-0.1.4/config.log
120
- - ext/nutcracker/contrib/yaml-0.1.4/config.status
121
51
  - ext/nutcracker/contrib/yaml-0.1.4/configure
122
52
  - ext/nutcracker/contrib/yaml-0.1.4/configure.ac
123
53
  - ext/nutcracker/contrib/yaml-0.1.4/doc/doxygen.cfg
124
- - ext/nutcracker/contrib/yaml-0.1.4/doc/html/annotated.html
125
- - ext/nutcracker/contrib/yaml-0.1.4/doc/html/bc_s.png
126
- - ext/nutcracker/contrib/yaml-0.1.4/doc/html/classes.html
127
- - ext/nutcracker/contrib/yaml-0.1.4/doc/html/closed.png
128
- - ext/nutcracker/contrib/yaml-0.1.4/doc/html/doxygen.css
129
- - ext/nutcracker/contrib/yaml-0.1.4/doc/html/doxygen.png
130
- - ext/nutcracker/contrib/yaml-0.1.4/doc/html/files.html
131
- - ext/nutcracker/contrib/yaml-0.1.4/doc/html/functions.html
132
- - ext/nutcracker/contrib/yaml-0.1.4/doc/html/functions_0x62.html
133
- - ext/nutcracker/contrib/yaml-0.1.4/doc/html/functions_0x63.html
134
- - ext/nutcracker/contrib/yaml-0.1.4/doc/html/functions_0x64.html
135
- - ext/nutcracker/contrib/yaml-0.1.4/doc/html/functions_0x65.html
136
- - ext/nutcracker/contrib/yaml-0.1.4/doc/html/functions_0x66.html
137
- - ext/nutcracker/contrib/yaml-0.1.4/doc/html/functions_0x68.html
138
- - ext/nutcracker/contrib/yaml-0.1.4/doc/html/functions_0x69.html
139
- - ext/nutcracker/contrib/yaml-0.1.4/doc/html/functions_0x6b.html
140
- - ext/nutcracker/contrib/yaml-0.1.4/doc/html/functions_0x6c.html
141
- - ext/nutcracker/contrib/yaml-0.1.4/doc/html/functions_0x6d.html
142
- - ext/nutcracker/contrib/yaml-0.1.4/doc/html/functions_0x6e.html
143
- - ext/nutcracker/contrib/yaml-0.1.4/doc/html/functions_0x6f.html
144
- - ext/nutcracker/contrib/yaml-0.1.4/doc/html/functions_0x70.html
145
- - ext/nutcracker/contrib/yaml-0.1.4/doc/html/functions_0x71.html
146
- - ext/nutcracker/contrib/yaml-0.1.4/doc/html/functions_0x72.html
147
- - ext/nutcracker/contrib/yaml-0.1.4/doc/html/functions_0x73.html
148
- - ext/nutcracker/contrib/yaml-0.1.4/doc/html/functions_0x74.html
149
- - ext/nutcracker/contrib/yaml-0.1.4/doc/html/functions_0x75.html
150
- - ext/nutcracker/contrib/yaml-0.1.4/doc/html/functions_0x76.html
151
- - ext/nutcracker/contrib/yaml-0.1.4/doc/html/functions_0x77.html
152
- - ext/nutcracker/contrib/yaml-0.1.4/doc/html/functions_vars.html
153
- - ext/nutcracker/contrib/yaml-0.1.4/doc/html/functions_vars_0x62.html
154
- - ext/nutcracker/contrib/yaml-0.1.4/doc/html/functions_vars_0x63.html
155
- - ext/nutcracker/contrib/yaml-0.1.4/doc/html/functions_vars_0x64.html
156
- - ext/nutcracker/contrib/yaml-0.1.4/doc/html/functions_vars_0x65.html
157
- - ext/nutcracker/contrib/yaml-0.1.4/doc/html/functions_vars_0x66.html
158
- - ext/nutcracker/contrib/yaml-0.1.4/doc/html/functions_vars_0x68.html
159
- - ext/nutcracker/contrib/yaml-0.1.4/doc/html/functions_vars_0x69.html
160
- - ext/nutcracker/contrib/yaml-0.1.4/doc/html/functions_vars_0x6b.html
161
- - ext/nutcracker/contrib/yaml-0.1.4/doc/html/functions_vars_0x6c.html
162
- - ext/nutcracker/contrib/yaml-0.1.4/doc/html/functions_vars_0x6d.html
163
- - ext/nutcracker/contrib/yaml-0.1.4/doc/html/functions_vars_0x6e.html
164
- - ext/nutcracker/contrib/yaml-0.1.4/doc/html/functions_vars_0x6f.html
165
- - ext/nutcracker/contrib/yaml-0.1.4/doc/html/functions_vars_0x70.html
166
- - ext/nutcracker/contrib/yaml-0.1.4/doc/html/functions_vars_0x71.html
167
- - ext/nutcracker/contrib/yaml-0.1.4/doc/html/functions_vars_0x72.html
168
- - ext/nutcracker/contrib/yaml-0.1.4/doc/html/functions_vars_0x73.html
169
- - ext/nutcracker/contrib/yaml-0.1.4/doc/html/functions_vars_0x74.html
170
- - ext/nutcracker/contrib/yaml-0.1.4/doc/html/functions_vars_0x75.html
171
- - ext/nutcracker/contrib/yaml-0.1.4/doc/html/functions_vars_0x76.html
172
- - ext/nutcracker/contrib/yaml-0.1.4/doc/html/functions_vars_0x77.html
173
- - ext/nutcracker/contrib/yaml-0.1.4/doc/html/globals.html
174
- - ext/nutcracker/contrib/yaml-0.1.4/doc/html/globals_defs.html
175
- - ext/nutcracker/contrib/yaml-0.1.4/doc/html/globals_enum.html
176
- - ext/nutcracker/contrib/yaml-0.1.4/doc/html/globals_eval.html
177
- - ext/nutcracker/contrib/yaml-0.1.4/doc/html/globals_func.html
178
- - ext/nutcracker/contrib/yaml-0.1.4/doc/html/globals_type.html
179
- - ext/nutcracker/contrib/yaml-0.1.4/doc/html/group__basic.html
180
- - ext/nutcracker/contrib/yaml-0.1.4/doc/html/group__emitter.html
181
- - ext/nutcracker/contrib/yaml-0.1.4/doc/html/group__events.html
182
- - ext/nutcracker/contrib/yaml-0.1.4/doc/html/group__export.html
183
- - ext/nutcracker/contrib/yaml-0.1.4/doc/html/group__nodes.html
184
- - ext/nutcracker/contrib/yaml-0.1.4/doc/html/group__parser.html
185
- - ext/nutcracker/contrib/yaml-0.1.4/doc/html/group__styles.html
186
- - ext/nutcracker/contrib/yaml-0.1.4/doc/html/group__tokens.html
187
- - ext/nutcracker/contrib/yaml-0.1.4/doc/html/group__version.html
188
- - ext/nutcracker/contrib/yaml-0.1.4/doc/html/index.html
189
- - ext/nutcracker/contrib/yaml-0.1.4/doc/html/modules.html
190
- - ext/nutcracker/contrib/yaml-0.1.4/doc/html/nav_f.png
191
- - ext/nutcracker/contrib/yaml-0.1.4/doc/html/nav_h.png
192
- - ext/nutcracker/contrib/yaml-0.1.4/doc/html/open.png
193
- - ext/nutcracker/contrib/yaml-0.1.4/doc/html/structyaml__alias__data__s.html
194
- - ext/nutcracker/contrib/yaml-0.1.4/doc/html/structyaml__document__s.html
195
- - ext/nutcracker/contrib/yaml-0.1.4/doc/html/structyaml__emitter__s.html
196
- - ext/nutcracker/contrib/yaml-0.1.4/doc/html/structyaml__event__s.html
197
- - ext/nutcracker/contrib/yaml-0.1.4/doc/html/structyaml__mark__s.html
198
- - ext/nutcracker/contrib/yaml-0.1.4/doc/html/structyaml__node__pair__s.html
199
- - ext/nutcracker/contrib/yaml-0.1.4/doc/html/structyaml__node__s.html
200
- - ext/nutcracker/contrib/yaml-0.1.4/doc/html/structyaml__parser__s.html
201
- - ext/nutcracker/contrib/yaml-0.1.4/doc/html/structyaml__simple__key__s.html
202
- - ext/nutcracker/contrib/yaml-0.1.4/doc/html/structyaml__tag__directive__s.html
203
- - ext/nutcracker/contrib/yaml-0.1.4/doc/html/structyaml__token__s.html
204
- - ext/nutcracker/contrib/yaml-0.1.4/doc/html/structyaml__version__directive__s.html
205
- - ext/nutcracker/contrib/yaml-0.1.4/doc/html/tab_a.png
206
- - ext/nutcracker/contrib/yaml-0.1.4/doc/html/tab_b.png
207
- - ext/nutcracker/contrib/yaml-0.1.4/doc/html/tab_h.png
208
- - ext/nutcracker/contrib/yaml-0.1.4/doc/html/tab_s.png
209
- - ext/nutcracker/contrib/yaml-0.1.4/doc/html/tabs.css
210
- - ext/nutcracker/contrib/yaml-0.1.4/doc/html/yaml_8h.html
211
- - ext/nutcracker/contrib/yaml-0.1.4/include/Makefile.am
212
- - ext/nutcracker/contrib/yaml-0.1.4/include/Makefile.in
213
54
  - ext/nutcracker/contrib/yaml-0.1.4/include/yaml.h
214
- - ext/nutcracker/contrib/yaml-0.1.4/libtool
215
55
  - ext/nutcracker/contrib/yaml-0.1.4/LICENSE
216
56
  - ext/nutcracker/contrib/yaml-0.1.4/m4/libtool.m4
217
57
  - ext/nutcracker/contrib/yaml-0.1.4/m4/ltoptions.m4
218
58
  - ext/nutcracker/contrib/yaml-0.1.4/m4/ltsugar.m4
219
59
  - ext/nutcracker/contrib/yaml-0.1.4/m4/ltversion.m4
220
60
  - ext/nutcracker/contrib/yaml-0.1.4/m4/lt~obsolete.m4
221
- - ext/nutcracker/contrib/yaml-0.1.4/Makefile
222
61
  - ext/nutcracker/contrib/yaml-0.1.4/Makefile.am
223
62
  - ext/nutcracker/contrib/yaml-0.1.4/Makefile.in
224
63
  - ext/nutcracker/contrib/yaml-0.1.4/README
225
64
  - ext/nutcracker/contrib/yaml-0.1.4/src/api.c
226
- - ext/nutcracker/contrib/yaml-0.1.4/src/api.lo
227
- - ext/nutcracker/contrib/yaml-0.1.4/src/api.o
228
65
  - ext/nutcracker/contrib/yaml-0.1.4/src/dumper.c
229
- - ext/nutcracker/contrib/yaml-0.1.4/src/dumper.lo
230
- - ext/nutcracker/contrib/yaml-0.1.4/src/dumper.o
231
66
  - ext/nutcracker/contrib/yaml-0.1.4/src/emitter.c
232
- - ext/nutcracker/contrib/yaml-0.1.4/src/emitter.lo
233
- - ext/nutcracker/contrib/yaml-0.1.4/src/emitter.o
234
- - ext/nutcracker/contrib/yaml-0.1.4/src/libyaml.la
235
67
  - ext/nutcracker/contrib/yaml-0.1.4/src/loader.c
236
- - ext/nutcracker/contrib/yaml-0.1.4/src/loader.lo
237
- - ext/nutcracker/contrib/yaml-0.1.4/src/loader.o
238
- - ext/nutcracker/contrib/yaml-0.1.4/src/Makefile
239
68
  - ext/nutcracker/contrib/yaml-0.1.4/src/Makefile.am
240
69
  - ext/nutcracker/contrib/yaml-0.1.4/src/Makefile.in
241
70
  - ext/nutcracker/contrib/yaml-0.1.4/src/parser.c
242
- - ext/nutcracker/contrib/yaml-0.1.4/src/parser.lo
243
- - ext/nutcracker/contrib/yaml-0.1.4/src/parser.o
244
71
  - ext/nutcracker/contrib/yaml-0.1.4/src/reader.c
245
- - ext/nutcracker/contrib/yaml-0.1.4/src/reader.lo
246
- - ext/nutcracker/contrib/yaml-0.1.4/src/reader.o
247
72
  - ext/nutcracker/contrib/yaml-0.1.4/src/scanner.c
248
- - ext/nutcracker/contrib/yaml-0.1.4/src/scanner.lo
249
- - ext/nutcracker/contrib/yaml-0.1.4/src/scanner.o
250
73
  - ext/nutcracker/contrib/yaml-0.1.4/src/writer.c
251
- - ext/nutcracker/contrib/yaml-0.1.4/src/writer.lo
252
- - ext/nutcracker/contrib/yaml-0.1.4/src/writer.o
253
74
  - ext/nutcracker/contrib/yaml-0.1.4/src/yaml_private.h
254
- - ext/nutcracker/contrib/yaml-0.1.4/stamp-h1
255
- - ext/nutcracker/contrib/yaml-0.1.4/tests/example-deconstructor
256
- - ext/nutcracker/contrib/yaml-0.1.4/tests/example-deconstructor-alt
257
75
  - ext/nutcracker/contrib/yaml-0.1.4/tests/example-deconstructor-alt.c
258
- - ext/nutcracker/contrib/yaml-0.1.4/tests/example-deconstructor-alt.o
259
76
  - ext/nutcracker/contrib/yaml-0.1.4/tests/example-deconstructor.c
260
- - ext/nutcracker/contrib/yaml-0.1.4/tests/example-deconstructor.o
261
- - ext/nutcracker/contrib/yaml-0.1.4/tests/example-reformatter
262
- - ext/nutcracker/contrib/yaml-0.1.4/tests/example-reformatter-alt
263
77
  - ext/nutcracker/contrib/yaml-0.1.4/tests/example-reformatter-alt.c
264
- - ext/nutcracker/contrib/yaml-0.1.4/tests/example-reformatter-alt.o
265
78
  - ext/nutcracker/contrib/yaml-0.1.4/tests/example-reformatter.c
266
- - ext/nutcracker/contrib/yaml-0.1.4/tests/example-reformatter.o
267
- - ext/nutcracker/contrib/yaml-0.1.4/tests/Makefile
268
79
  - ext/nutcracker/contrib/yaml-0.1.4/tests/Makefile.am
269
80
  - ext/nutcracker/contrib/yaml-0.1.4/tests/Makefile.in
270
- - ext/nutcracker/contrib/yaml-0.1.4/tests/run-dumper
271
81
  - ext/nutcracker/contrib/yaml-0.1.4/tests/run-dumper.c
272
- - ext/nutcracker/contrib/yaml-0.1.4/tests/run-dumper.o
273
- - ext/nutcracker/contrib/yaml-0.1.4/tests/run-emitter
274
82
  - ext/nutcracker/contrib/yaml-0.1.4/tests/run-emitter.c
275
- - ext/nutcracker/contrib/yaml-0.1.4/tests/run-emitter.o
276
- - ext/nutcracker/contrib/yaml-0.1.4/tests/run-loader
277
83
  - ext/nutcracker/contrib/yaml-0.1.4/tests/run-loader.c
278
- - ext/nutcracker/contrib/yaml-0.1.4/tests/run-loader.o
279
- - ext/nutcracker/contrib/yaml-0.1.4/tests/run-parser
280
84
  - ext/nutcracker/contrib/yaml-0.1.4/tests/run-parser.c
281
- - ext/nutcracker/contrib/yaml-0.1.4/tests/run-parser.o
282
- - ext/nutcracker/contrib/yaml-0.1.4/tests/run-scanner
283
85
  - ext/nutcracker/contrib/yaml-0.1.4/tests/run-scanner.c
284
- - ext/nutcracker/contrib/yaml-0.1.4/tests/run-scanner.o
285
86
  - ext/nutcracker/contrib/yaml-0.1.4/tests/test-reader.c
286
87
  - ext/nutcracker/contrib/yaml-0.1.4/tests/test-version.c
287
- - ext/nutcracker/contrib/yaml-0.1.4/yaml-0.1.pc
288
- - ext/nutcracker/contrib/yaml-0.1.4/yaml-0.1.pc.in
289
88
  - ext/nutcracker/contrib/yaml-0.1.4.tar.gz
290
89
  - ext/nutcracker/extconf.rb
291
- - ext/nutcracker/libtool
292
90
  - ext/nutcracker/LICENSE
293
91
  - ext/nutcracker/m4/libtool.m4
294
92
  - ext/nutcracker/m4/ltoptions.m4
295
93
  - ext/nutcracker/m4/ltsugar.m4
296
94
  - ext/nutcracker/m4/ltversion.m4
297
95
  - ext/nutcracker/m4/lt~obsolete.m4
298
- - ext/nutcracker/Makefile
299
96
  - ext/nutcracker/Makefile.am
300
97
  - ext/nutcracker/Makefile.in
301
98
  - ext/nutcracker/notes/c-styleguide.txt
@@ -314,109 +111,66 @@ files:
314
111
  - ext/nutcracker/scripts/populate_memcached.sh
315
112
  - ext/nutcracker/scripts/redis-check.py
316
113
  - ext/nutcracker/scripts/redis-check.sh
317
- - ext/nutcracker/src/hashkit/libhashkit.a
318
- - ext/nutcracker/src/hashkit/Makefile
319
114
  - ext/nutcracker/src/hashkit/Makefile.am
320
115
  - ext/nutcracker/src/hashkit/Makefile.in
321
- - ext/nutcracker/src/hashkit/nc_crc16.c
322
- - ext/nutcracker/src/hashkit/nc_crc16.o
323
116
  - ext/nutcracker/src/hashkit/nc_crc32.c
324
- - ext/nutcracker/src/hashkit/nc_crc32.o
325
117
  - ext/nutcracker/src/hashkit/nc_fnv.c
326
- - ext/nutcracker/src/hashkit/nc_fnv.o
327
118
  - ext/nutcracker/src/hashkit/nc_hashkit.h
328
119
  - ext/nutcracker/src/hashkit/nc_hsieh.c
329
- - ext/nutcracker/src/hashkit/nc_hsieh.o
330
120
  - ext/nutcracker/src/hashkit/nc_jenkins.c
331
- - ext/nutcracker/src/hashkit/nc_jenkins.o
332
121
  - ext/nutcracker/src/hashkit/nc_ketama.c
333
- - ext/nutcracker/src/hashkit/nc_ketama.o
334
122
  - ext/nutcracker/src/hashkit/nc_md5.c
335
- - ext/nutcracker/src/hashkit/nc_md5.o
336
123
  - ext/nutcracker/src/hashkit/nc_modula.c
337
- - ext/nutcracker/src/hashkit/nc_modula.o
338
124
  - ext/nutcracker/src/hashkit/nc_murmur.c
339
- - ext/nutcracker/src/hashkit/nc_murmur.o
340
125
  - ext/nutcracker/src/hashkit/nc_one_at_a_time.c
341
- - ext/nutcracker/src/hashkit/nc_one_at_a_time.o
342
126
  - ext/nutcracker/src/hashkit/nc_random.c
343
- - ext/nutcracker/src/hashkit/nc_random.o
344
- - ext/nutcracker/src/Makefile
345
127
  - ext/nutcracker/src/Makefile.am
346
128
  - ext/nutcracker/src/Makefile.in
347
129
  - ext/nutcracker/src/nc.c
348
- - ext/nutcracker/src/nc.o
349
130
  - ext/nutcracker/src/nc_array.c
350
131
  - ext/nutcracker/src/nc_array.h
351
- - ext/nutcracker/src/nc_array.o
352
132
  - ext/nutcracker/src/nc_client.c
353
133
  - ext/nutcracker/src/nc_client.h
354
- - ext/nutcracker/src/nc_client.o
355
134
  - ext/nutcracker/src/nc_conf.c
356
135
  - ext/nutcracker/src/nc_conf.h
357
- - ext/nutcracker/src/nc_conf.o
358
136
  - ext/nutcracker/src/nc_connection.c
359
137
  - ext/nutcracker/src/nc_connection.h
360
- - ext/nutcracker/src/nc_connection.o
361
138
  - ext/nutcracker/src/nc_core.c
362
139
  - ext/nutcracker/src/nc_core.h
363
- - ext/nutcracker/src/nc_core.o
364
- - ext/nutcracker/src/nc_epoll.c
365
- - ext/nutcracker/src/nc_epoll.o
140
+ - ext/nutcracker/src/nc_event.c
366
141
  - ext/nutcracker/src/nc_event.h
367
- - ext/nutcracker/src/nc_kqueue.c
368
- - ext/nutcracker/src/nc_kqueue.o
369
142
  - ext/nutcracker/src/nc_log.c
370
143
  - ext/nutcracker/src/nc_log.h
371
- - ext/nutcracker/src/nc_log.o
372
144
  - ext/nutcracker/src/nc_mbuf.c
373
145
  - ext/nutcracker/src/nc_mbuf.h
374
- - ext/nutcracker/src/nc_mbuf.o
375
146
  - ext/nutcracker/src/nc_message.c
376
147
  - ext/nutcracker/src/nc_message.h
377
- - ext/nutcracker/src/nc_message.o
378
148
  - ext/nutcracker/src/nc_proxy.c
379
149
  - ext/nutcracker/src/nc_proxy.h
380
- - ext/nutcracker/src/nc_proxy.o
381
150
  - ext/nutcracker/src/nc_queue.h
382
151
  - ext/nutcracker/src/nc_rbtree.c
383
152
  - ext/nutcracker/src/nc_rbtree.h
384
- - ext/nutcracker/src/nc_rbtree.o
385
153
  - ext/nutcracker/src/nc_request.c
386
- - ext/nutcracker/src/nc_request.o
387
154
  - ext/nutcracker/src/nc_response.c
388
- - ext/nutcracker/src/nc_response.o
389
155
  - ext/nutcracker/src/nc_server.c
390
156
  - ext/nutcracker/src/nc_server.h
391
- - ext/nutcracker/src/nc_server.o
392
157
  - ext/nutcracker/src/nc_signal.c
393
158
  - ext/nutcracker/src/nc_signal.h
394
- - ext/nutcracker/src/nc_signal.o
395
159
  - ext/nutcracker/src/nc_stats.c
396
160
  - ext/nutcracker/src/nc_stats.h
397
- - ext/nutcracker/src/nc_stats.o
398
161
  - ext/nutcracker/src/nc_string.c
399
162
  - ext/nutcracker/src/nc_string.h
400
- - ext/nutcracker/src/nc_string.o
401
163
  - ext/nutcracker/src/nc_util.c
402
164
  - ext/nutcracker/src/nc_util.h
403
- - ext/nutcracker/src/nc_util.o
404
- - ext/nutcracker/src/nutcracker
405
- - ext/nutcracker/src/proto/libproto.a
406
- - ext/nutcracker/src/proto/Makefile
407
165
  - ext/nutcracker/src/proto/Makefile.am
408
166
  - ext/nutcracker/src/proto/Makefile.in
409
167
  - ext/nutcracker/src/proto/nc_memcache.c
410
- - ext/nutcracker/src/proto/nc_memcache.o
411
168
  - ext/nutcracker/src/proto/nc_proto.h
412
169
  - ext/nutcracker/src/proto/nc_redis.c
413
- - ext/nutcracker/src/proto/nc_redis.o
414
- - ext/nutcracker/stamp-h1
415
170
  homepage: http://www.kontera.com
416
171
  licenses: []
417
172
  post_install_message:
418
- rdoc_options:
419
- - --no-private --protected lib/**/*.rb - README.md
173
+ rdoc_options: []
420
174
  require_paths:
421
175
  - lib
422
176
  required_ruby_version: !ruby/object:Gem::Requirement
@@ -428,13 +182,13 @@ required_ruby_version: !ruby/object:Gem::Requirement
428
182
  required_rubygems_version: !ruby/object:Gem::Requirement
429
183
  none: false
430
184
  requirements:
431
- - - ! '>'
185
+ - - ! '>='
432
186
  - !ruby/object:Gem::Version
433
- version: 1.3.1
187
+ version: '0'
434
188
  requirements: []
435
189
  rubyforge_project: ruby-nutcracker
436
190
  rubygems_version: 1.8.25
437
191
  signing_key:
438
192
  specification_version: 3
439
- summary: Gem wrapper for Twitter's Nutcracker
193
+ summary: Twitter's Nutcraker Gem Wrapper
440
194
  test_files: []