Project

General

Profile

Actions

Task #883

closed

have import scripts regularly check disk space and pause processes if getting close to limit

Added by Aaron Marcuse-Kubitza over 10 years ago. Updated about 10 years ago.

Status:
Rejected
Priority:
Normal
Start date:
04/01/2014
Due date:
% Done:

0%

Estimated time:
Activity type:

Description

issue

  • there is no soft limit on disk space inside Postgres, so the hard limit gets reached instead, causing an error which ricochets across the system and crashes various processes (similar to an out-of-memory condition caused by kernel overcommit, except that Postgres already has a throttle for that problem)
  • since Postgres does not have a disk space throttle1, our scripts need to do this instead

1 the temp_file_limit config param seems to be intended to do this, but throws an error instead of handling the problem by pausing (self-throttling)
.

implementation

  • lib/sql.py run_query() (the global function, not the method of DbConn) should trap "OperationalError: could not extend file "...": No space left on device" and handle it by pausing until the disk space goes back down, and then retrying the last SQL command
    • the last SQL command does not need to be idempotent, because the error means that it was rolled back
Actions #1

Updated by Aaron Marcuse-Kubitza over 10 years ago

  • Description updated (diff)
Actions #2

Updated by Aaron Marcuse-Kubitza over 10 years ago

  • Description updated (diff)
Actions #3

Updated by Aaron Marcuse-Kubitza over 10 years ago

  • Description updated (diff)
Actions #4

Updated by Aaron Marcuse-Kubitza over 10 years ago

  • Description updated (diff)

merging info in #882, so that this info is not maintained in two places

Actions #5

Updated by Aaron Marcuse-Kubitza over 10 years ago

  • Description updated (diff)
Actions #6

Updated by Aaron Marcuse-Kubitza over 10 years ago

  • Description updated (diff)
Actions #7

Updated by Aaron Marcuse-Kubitza over 10 years ago

  • Description updated (diff)
Actions #8

Updated by Aaron Marcuse-Kubitza over 10 years ago

  • Description updated (diff)
Actions #9

Updated by Aaron Marcuse-Kubitza over 10 years ago

  • Description updated (diff)
Actions #10

Updated by Aaron Marcuse-Kubitza over 10 years ago

  • Description updated (diff)
  • Priority changed from High to Normal
Actions #11

Updated by Aaron Marcuse-Kubitza about 10 years ago

  • Status changed from New to Rejected

our scripts do not trigger this Postgres bug unless they are running buggy queries

Actions

Also available in: Atom PDF