1. 30 Aug, 2019 3 commits
  2. 29 Aug, 2019 2 commits
    • Eric Fried's avatar
      Polish usage.rst · f48b1502
      Eric Fried authored
      - Use some more :roles: to make more things linky.
      - Add some ``decoration`` around literals.
      - Fix up some grammar.
      
      Change-Id: I6b51a8774e502a34757a50aef5f4bc1fb37d8b96
      f48b1502
    • Mohammed Naser's avatar
      restart: don't stop process on sighup when mutating · e7dd2916
      Mohammed Naser authored
      
      
      It seems that the code for handling SIGHUP currently calls stop()
      on the service, then calls reset(), then calls start() on it again.
      
      This is effectively a full service restart, which breaks the whole
      point behind using SIGHUP for hot and quick reloads.  It also breaks
      our downstream projects in a few ways where they lose RPC on reload
      due to the fact that they don't expect to have stop() called on a
      reset().
      
      This patch removes the stop and start when the restart_method is
      set to 'mutate' because in that case we should just be signaling
      the service to check for changes in its mutable config options.
      It also changes the signal sent to children in that case to
      SIGHUP, since SIGTERM will cause unnecessary restarts of child
      processes.
      
      The previous behavior is maintained for the 'reload' restart_method
      since that does a complete reload of the service config, which is
      not safe to do without restarting the service completely.
      
      Change-Id: I86a34c22d41d87a9cce2d4ac6d95562d05823ecf
      Closes-Bug: #1794708
      Co-Authored-By: default avatarBen Nemec <bnemec@redhat.com>
      e7dd2916
  3. 24 Aug, 2019 1 commit
  4. 05 Jul, 2019 1 commit
  5. 30 May, 2019 1 commit
  6. 29 May, 2019 1 commit
  7. 22 May, 2019 2 commits
    • Ben Nemec's avatar
      Stop using pbr to build docs · b85818a4
      Ben Nemec authored
      We should be calling sphinx-build directly now.
      
      Change-Id: I030d79a9fb7639553a9f469b54e1888aa62bcef5
      b85818a4
    • Sebastian Lohff's avatar
      Make PID availabe as formatstring in backdoor path · dd174fbf
      Sebastian Lohff authored
      When multiple processes are spawned with the same configuration
      each process has the same backdoor_socket path configured and
      only the first process able to bind to the socket can later be
      accessed via the backdoor. To give each process a unique socket path
      we now expose the PID of the process as a format string argument,
      which can then be used like this:
      
      backdoor_socket = /var/lib/neutron/backdoor-{pid}
      
      Change-Id: I3f86f4867eb0cd5010abadf68620aa3450d3e64d
      dd174fbf
  8. 15 May, 2019 1 commit
  9. 14 May, 2019 2 commits
  10. 09 May, 2019 1 commit
    • chenke's avatar
      Add workers' type check before launching the services · 60e16036
      chenke authored
      If user set the type of worker to str or others, there will
      be no error here, but a lot of processes will be created,
      which may cause the system to crash.
      
      I recommend adding a type check here.
      
      Change-Id: I3ad0f7ec59f29a3106d23b057327c3dfef19a98f
      60e16036
  11. 30 Apr, 2019 1 commit
  12. 19 Apr, 2019 1 commit
  13. 15 Apr, 2019 1 commit
  14. 18 Mar, 2019 1 commit
    • OpenStack Release Bot's avatar
      Update master for stable/stein · 5b57ff19
      OpenStack Release Bot authored
      Add file to the reno documentation build to show release notes for
      stable/stein.
      
      Use pbr instruction to increment the minor version number
      automatically so that master versions are higher than the versions on
      stable/stein.
      
      Change-Id: Ifc8a52c83ab2f192ca4a265f4764218e6f42e591
      Sem-Ver: feature
      5b57ff19
  15. 21 Feb, 2019 1 commit
  16. 20 Feb, 2019 1 commit
  17. 19 Feb, 2019 3 commits
  18. 13 Feb, 2019 1 commit
    • ZhijunWei's avatar
      Update hacking version · 671cbd60
      ZhijunWei authored
      Use latest release 1.1.0 and compatible changes w.r.t pep8
      
      Change-Id: I8bb814f8db8c87ba6b757be482d79d40548a137d
      671cbd60
  19. 11 Feb, 2019 1 commit
  20. 23 Jan, 2019 1 commit
    • Ben Nemec's avatar
      Bump oslo.utils lower constraint to 3.40.2 · b6fba59f
      Ben Nemec authored
      Prior versions of oslo.utils have known issues with the EventletEvent
      class that we use, so we should avoid them.
      
      Change-Id: Id46634bbbd69caa5294c07d2c0da70856c8cba5b
      Related-Bug: 1812922
      Related-Bug: 1805706
      b6fba59f
  21. 17 Jan, 2019 1 commit
  22. 16 Jan, 2019 1 commit
    • venkata anil's avatar
      Profile Oslo Service processes · a04daefb
      venkata anil authored
      This patch enables profiling (capturing function call trace like
      cProfile [1]) worker processes on the fly while service is running.
      User requests the oslo service process to start profiling by writing
      "prof()" command to backdoor socket, once the service (like
      neutron-server) finishes expected processing (example finishing API
      call), user again writes "prof()" command with file name as argument
      to dump the function calltrace stats. Stats file (in pstat format
      with user provided filename by adding .prof) will be generated in
      temp directory.
      
      For example, to profile neutron server process,
      1) echo "prof()" | nc localhost 8002
      2) Issue neutron command (or run rally scenarios tests)
         neutron net-create n1
         neutron port-create --name p1 n1
         neutron port-delete p1
         neutron net-delete n1
      3) echo "prof('neutron')" | nc localhost 8002
      where 8002 is the port which we set like below in neutron.conf
      backdoor_port=8002
      
      We can later print the stats from the trace file like below
      stats = pstats.Stats('/tmp/neutron.prof')
      stats.print_stats()
      The trace file will look like in (for above neutron API calls) [2].
      
      We use Yappi with context set to greenlet [3] to profile greenlets.
      We can't use GreenletProfiler [4], which does the same [5]
      1) as it is no more maintained
      2) Also compiling yappi source inside GreenletProfiler is failing for
         python3.
      
      [1] https://docs.python.org/2/library/profile.html
      [2] https://gist.github.com/venkataanil/64d5e672bf0206dc151e73fc1058a983
      [3] https://bitbucket.org/sumerc/yappi/pull-requests/3
      [4] https://pypi.org/project/GreenletProfiler/
      [5] https://emptysqua.re/blog/greenletprofiler/
      
      Depends-On: Ibea0cdb732923f1b53d5cb6aeeb4041fb5973494
      Change-Id: Id2418093494f1e233a653f6c73bd6894e4a40184
      a04daefb
  23. 10 Jan, 2019 1 commit
  24. 04 Jan, 2019 1 commit
    • venkata anil's avatar
      Avoid eventlet_backdoor listing on same port · 81165078
      venkata anil authored
      Oslo.service is binding to same port when we provide a port range
      as eventlet is internally setting SO_REUSEPORT flag (starting from
      eventlet version v0.20). And there is a flag (reuse_port)
      introduced in v0.22 to give control to user to avoid SO_REUSEPORT.
      In this patch, first we try passing reuse_port=False, if this fails
      then directly open socket and listen instead of eventlist.listen.
      
      Closes-Bug: #1810280
      Change-Id: Idc842acc7e430199c76fe12785b0bf0e7a58e121
      81165078
  25. 24 Dec, 2018 1 commit
  26. 20 Dec, 2018 1 commit
  27. 19 Dec, 2018 5 commits
  28. 12 Dec, 2018 1 commit
    • Zane Bitter's avatar
      Document the threadgroup module · 55f897c6
      Zane Bitter authored
      There were no docstrings for this API, which as a bonus is extremely
      subtle and poorly-designed. Document it so that users at least have a
      fighting chance of using it to do the things they intended.
      
      Change-Id: Id6677a7e5aaf8ec9ddeb597c6d5e8f97806e2248
      55f897c6
  29. 10 Dec, 2018 1 commit
    • Zane Bitter's avatar
      Actually test child SIGHUP signal · 130e49fe
      Zane Bitter authored
      The intention of this test was to wait 5s after sending SIGHUP to a
      child process to make sure that it doesn't exit. However, due to a logic
      error, it just stopped checking and declared success immediately. Fix
      the logic so that we have a better chance of seeing if SIGHUP
      incorrectly kills the process.
      
      Change-Id: I1f320a8dfdd7a922b461d070491ad53e6cd2b20d
      Related-Bug: #1803731
      130e49fe