1. 03 2月, 2008 1 次提交
    • T
      Fix WaitOnLock() to ensure that the process's "waiting" flag is reset after · 6f906905
      Tom Lane 提交于
      erroring out of a wait.  We can use a PG_TRY block for this, but add a comment
      explaining why it'd be a bad idea to use it for any other state cleanup.
      
      Back-patch to 8.2.  Prior releases had the same issue, but only with respect
      to the process title, which is likely to get reset almost immediately anyway
      after the transaction aborts, so it seems not worth changing them.  In 8.2
      and HEAD, the pg_stat_activity "waiting" flag could remain set incorrectly
      for a long time.
      
      Per report from Gurjeet Singh.
      6f906905
  2. 01 2月, 2008 14 次提交
  3. 31 1月, 2008 5 次提交
  4. 30 1月, 2008 7 次提交
  5. 29 1月, 2008 4 次提交
  6. 28 1月, 2008 1 次提交
  7. 27 1月, 2008 1 次提交
    • T
      Change StatementCancelHandler() to check the DoingCommandRead flag to decide · 6322e844
      Tom Lane 提交于
      whether to execute an immediate interrupt, rather than testing whether
      LockWaitCancel() cancelled a lock wait.  The old way misclassified the case
      where we were blocked in ProcWaitForSignal(), and arguably would misclassify
      any other future additions of new ImmediateInterruptOK states too.  This
      allows reverting the old kluge that gave LockWaitCancel() a return value,
      since no callers care anymore.  Improve comments in the various
      implementations of PGSemaphoreLock() to explain that on some platforms, the
      assumption that semop() exits after a signal is wrong, and so we must ensure
      that the signal handler itself throws elog if we want cancel or die interrupts
      to be effective.  Per testing related to bug #3883, though this patch doesn't
      solve those problems fully.
      
      Perhaps this change should be back-patched, but since pre-8.3 branches aren't
      really relying on autovacuum to respond to SIGINT, it doesn't seem critical
      for them.
      6322e844
  8. 26 1月, 2008 1 次提交
  9. 25 1月, 2008 2 次提交
  10. 24 1月, 2008 4 次提交