1. 04 Nov, 2015 3 commits
    • Kirill Smelkov's avatar
      slapos/recipe/redis/promise: Don't create connection pool explicitly · 442866bc
      Kirill Smelkov authored
      Because redis.Redis(...) ctor creates connection pool on initialization
      and we can rely on it.
      
      Another reason: Redis ctor (in form of StrictRedis.__init__()) has logic
      how to process arguments and does selecting - either it is TCP (`host` and
      `port` args), or UNIX socket (`unix_socket_path` arg):
      
          https://lab.nexedi.com/nexedi/slapos/blob/95dbb5b2/slapos/recipe/redis/MyRedis2410.py#L560
      
      Since we are going to introduce unix socket support to redis recipe in
      the next patch, and don't want to duplicate StrictRedis.__init__() logic
      in promise code, let's refactor promise to delegate argument processing
      logic to Redis.
      
      /reviewed-by @kazuhiko  (on !27)
      /cc @alain.takoudjou
      442866bc
    • Kirill Smelkov's avatar
      redis: v↑ (2.8.23) · 9b3cfff4
      Kirill Smelkov authored
      - update Redis software to latest upstream in 2.8.* series (which now
        supports IPv6 out of the box);
      
      - update Redis instance template to the one from 2.8.23 and re-merge our
        templating changes to it (file/dir locations, port and binding, master
        password).
      
        The whole diff to pristine 2.8.23 redis conf is now this:
      
        diff --git a/.../redis-2.8.23/redis.conf b/slapos/recipe/redis/template/redis.conf.in
        index 870959f..2895539 100644
        --- a/.../redis-2.8.23/redis.conf
        +++ b/slapos/recipe/redis/template/redis.conf.in
        @@ -46 +46 @@ daemonize no
        -pidfile /var/run/redis.pid
        +pidfile %(pid_file)s
        @@ -50 +50 @@ pidfile /var/run/redis.pid
        -port 6379
        +port %(port)s
        @@ -69,0 +70 @@ tcp-backlog 511
        +bind %(ipv6)s
        @@ -108 +109 @@ loglevel notice
        -logfile ""
        +logfile %(log_file)s
        @@ -174 +175 @@ rdbcompression yes
        -# hit to pay (around 10%) when saving and loading RDB files, so you can disable it
        +# hit to pay (around 10%%) when saving and loading RDB files, so you can disable it
        @@ -192 +193 @@ dbfilename dump.rdb
        -dir ./
        +dir %(server_dir)s
        @@ -217 +218 @@ dir ./
        -# masterauth <master-password>
        +%(master_passwd)s
      
      NOTE There are test failures for almost all Redis versions when machine
      have not small amount of CPUs:
      
          https://github.com/antirez/redis/issues/2715#issuecomment-151608948
      
      Because the failure is in replication test, and so far we do not use
      replication, and there is no feedback from upstream author to handle
      this (for 7 days for my detailed report, and for ~ 3 months for this
      issue in general), we can just disable replication test as a temporary
      solution.  ( to handle remote patches with md5 hash easily the building
      recipe is changed to slapos.recipe.cmmi )
      
      NOTE Redis updated to 2.8 version because GitLab uses this series.
      If/when we need more recent one we can add [redis30] in addition to
      [redis28].
      
      /reviewed-by @kazuhiko  (on !27 and on !26)
      /cc @alain.takoudjou, @jerome
      9b3cfff4
    • Kirill Smelkov's avatar
      ruby: v↑ ruby2.1 (2.1.7) · e393ada8
      Kirill Smelkov authored
      Ruby 2.1.7 contain security and other bugfixes:
      
          https://www.ruby-lang.org/en/news/2015/08/18/ruby-2-1-7-released/
      
      /reviewed-by @kazuhiko  (on !28)
      e393ada8
  2. 03 Nov, 2015 4 commits
  3. 02 Nov, 2015 1 commit
  4. 29 Oct, 2015 1 commit
  5. 27 Oct, 2015 8 commits
  6. 26 Oct, 2015 7 commits
  7. 23 Oct, 2015 3 commits
  8. 22 Oct, 2015 6 commits
  9. 21 Oct, 2015 6 commits
  10. 19 Oct, 2015 1 commit