1. 07 May, 2009 1 commit
  2. 30 Apr, 2009 1 commit
  3. 29 Apr, 2009 1 commit
  4. 28 Apr, 2009 1 commit
    • Vladislav Vaintroub's avatar
      Bug #44530 mtr v2 startup very slow on Windows. · 24e7fb05
      Vladislav Vaintroub authored
      MTR is stuck for about 20 seconds checking for free ports.
      The reason is that perl's connect()  takes 1 second on windows
      if port is not opened.
      
      This patch fixes the mtr_ping_port implementation on Windows
      to use Net::Ping for the port checking with small (0.1sec) timeout.
      
      This patch also removes pointless second call to check_ports_free() 
      in case of auto build thread.
      24e7fb05
  5. 23 Apr, 2009 1 commit
    • Vladislav Vaintroub's avatar
      Bug #42804 --parallel option does not work for MTR under ActiveState · 361fa972
      Vladislav Vaintroub authored
      perl 
      
      The problem here was the method how MTR gets its unique thread ids.
      Prior to this patch, the method to do it was to maintain a global 
      table of pid,mtr_unique_id) pairs. The table was backed by a text 
      file. The table was cleaned up one in a while and dead processes leaking
      unique_ids were determined with with kill(0) or with scripting tasklist
      on Windows.
      
      This method is flawed specifically on native Windows Perl. fork() is 
      implemented with starting a new thread, give it a syntetic negative PID
      (threadID*(-1)), until this thread creates a new process with exec()
      However,  neither tasklist nor any other native Windows tool can cope with
      negative perl PIDs. This lead to incorrect determination of dead process 
      and reusing already used mtr_unique_id.
      
      The patch introduces alternative portable  method of solving unique-id 
      problem. When a process needs a unique id in range [min...max], it just 
      starts  to open files named min, min+1,...max in a loop . After file is 
      opened, we do non-blocking flock(). When flock() succeeds, process has 
      allocated the ID. When process dies, file is unlocked . Checks for zombies 
      are not necessary.
      
      Since the change would create a co-existence problems with older version
      of MTR, because of different way to calculate IDs, the default ID range
      is changed from 250-299 to 300-349.
      
      Another fix that was necessary enable --parallel option was to serialize 
      spawn() calls on Windows. specifically, IO redirects needed to be protected.
      
      This patch also fixes hanging CRTL-C (as described in Bug #38629) for the
      "new"  MTR. The fix was already in 6.0 and is now downported.
      361fa972
  6. 17 Apr, 2009 1 commit
  7. 16 Apr, 2009 1 commit
  8. 08 Apr, 2009 1 commit
  9. 02 Apr, 2009 2 commits
  10. 01 Apr, 2009 5 commits
  11. 31 Mar, 2009 4 commits
  12. 30 Mar, 2009 1 commit
  13. 27 Mar, 2009 10 commits
  14. 26 Mar, 2009 5 commits
  15. 25 Mar, 2009 5 commits
    • Ramil Kalimullin's avatar
      Manual merge. · 6379cc00
      Ramil Kalimullin authored
      6379cc00
    • Ramil Kalimullin's avatar
      Auto-merge · 63821b17
      Ramil Kalimullin authored
      63821b17
    • Ramil Kalimullin's avatar
      Fix for bug#35383: binlog playback and replication breaks · cf6c7262
      Ramil Kalimullin authored
      due to name_const substitution
      
      Problem:
      "In general, statements executed within a stored procedure
      are written to the binary log using the same rules that
      would apply were the statements to be executed in standalone
      fashion. Some special care is taken when logging procedure
      statements because statement execution within procedures
      is not quite the same as in non-procedure context".
      
      For example, each reference to a local variable in SP's
      statements is replaced by NAME_CONST(var_name, var_value).
      Queries like
      "CREATE TABLE ... SELECT FUNC(local_var ..."
      are logged as
      "CREATE TABLE ... SELECT FUNC(NAME_CONST("local_var", var_value) ..."
      that leads to differrent field names and
      might result in "Incorrect column name" if var_value is long enough.
      
      Fix: in 5.x we'll issue a warning in such a case.
      In 6.0 we should get rid of NAME_CONST().
      
      Note: this issue and change should be described in the documentation
      ("Binary Logging of Stored Programs").
      cf6c7262
    • Tatiana A. Nurnberg's avatar
      Bug#43748: crash when non-super user tries to kill the replication threads · bafe7f60
      Tatiana A. Nurnberg authored
      manual merge. also adds test specific to 5.1+
      bafe7f60
    • Tatiana A. Nurnberg's avatar
      Bug#43748: crash when non-super user tries to kill the replication threads · de8042d0
      Tatiana A. Nurnberg authored
      Fine-tuning. Broke out comparison into method by
      suggestion of Davi. Clarified comments. Reverting
      test-case which I find too brittle; proper test
      case in 5.1+.
      de8042d0