Project

General

Profile

Actions

Bug #7621

closed

cf-promises can hang for about 30 seconds looking up default server name "rudder"

Bug #7621: cf-promises can hang for about 30 seconds looking up default server name "rudder"

Added by Jonathan CLARKE about 10 years ago. Updated over 9 years ago.

Status:
Released
Priority:
N/A
Category:
System techniques
Target version:
Severity:
UX impact:
User visibility:
Effort required:
Priority:
Name check:
Fix check:
Regression:

Description

By default, our promises try to read /var/rudder/cfengine-community/policy_server.dat to determine the server. However, when this code is parsed through cf-promises -c (as cf-serverd runs it), the class based system isn't properly taken into account, leading to cf-promises running a reverse DNS lookup on "rudder".

If this name doesn't exist in DNS, there can be a long timeout. This causes cf-promises to be slow, causing in turn cf-agent runs to take too long, and actually stopping cf-serverd from serving requests during this period.

We can work around this using the ifelse() function - that works in cf-promises (this function exists since 3.5 at least, so we can use it no problem: https://docs.cfengine.com/docs/3.5/reference-functions-ifelse.html).


Subtasks 1 (0 open1 closed)

Bug #8900: cf-promises can hang for about 30 seconds looking up default server name "rudder" - initial promisesReleasedJonathan CLARKEActions

Updated by Jonathan CLARKE about 10 years ago Actions #1

  • Status changed from New to In progress
  • Assignee set to Jonathan CLARKE

Updated by Jonathan CLARKE about 10 years ago Actions #2

  • Status changed from In progress to Pending technical review
  • Assignee changed from Jonathan CLARKE to Nicolas CHARLES
  • Pull Request set to https://github.com/Normation/rudder-techniques/pull/819

Updated by Benoît PECCATTE about 10 years ago Actions #3

  • Status changed from Pending technical review to In progress
  • Assignee changed from Nicolas CHARLES to Benoît PECCATTE

Updated by Vincent MEMBRÉ about 10 years ago Actions #4

  • Target version changed from 2.11.18 to 2.11.19

Updated by Vincent MEMBRÉ almost 10 years ago Actions #5

  • Target version changed from 2.11.19 to 2.11.20

Updated by Vincent MEMBRÉ almost 10 years ago Actions #6

  • Target version changed from 2.11.20 to 2.11.21

Updated by Jonathan CLARKE almost 10 years ago Actions #7

  • Target version changed from 2.11.21 to 3.1.10

Updated by Jonathan CLARKE almost 10 years ago Actions #8

  • Status changed from In progress to Pending technical review
  • Assignee changed from Benoît PECCATTE to Nicolas CHARLES
  • Pull Request changed from https://github.com/Normation/rudder-techniques/pull/819 to https://github.com/Normation/rudder-techniques/pull/918

Updated by Jonathan CLARKE almost 10 years ago Actions #9

  • Assignee changed from Nicolas CHARLES to Benoît PECCATTE

Updated by Jonathan CLARKE almost 10 years ago Actions #10

  • Status changed from Pending technical review to Pending release
  • % Done changed from 0 to 100

Updated by Vincent MEMBRÉ over 9 years ago Actions #11

  • Status changed from Pending release to Released

This bug has been fixed in Rudder 3.1.10 and 3.2.3 which were released on 2016-06-01, but not announced.

Actions

Also available in: PDF Atom