Bug 40799 - Self service fails with postgres error
Self service fails with postgres error
Product: UCS
Classification: Unclassified
Component: Self Service
UCS 4.1
Other Linux
: P5 normal (vote)
: UCS 4.1-1-errata
Assigned To: Florian Best
Daniel Tröder
Depends on: 40806
  Show dependency treegraph
Reported: 2016-02-29 15:46 CET by Florian Best
Modified: 2016-03-18 06:50 CET (History)
1 user (show)

See Also:
What kind of report is it?: ---
What type of bug is this?: ---
Who will be affected by this bug?: ---
How will those affected feel about the bug?: ---
User Pain:
Enterprise Customer affected?:
School Customer affected?:
ISV affected?:
Waiting Support:
Flags outvoted (downgraded) after PO Review:
Ticket number:
Bug group (optional): Error handling, External feedback
Max CVSS v3 score:

Screenshot (97.38 KB, image/gif)
2016-02-29 15:46 CET, Florian Best
patch (1010 bytes, patch)
2016-03-01 08:50 CET, Florian Best
Details | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description Florian Best univentionstaff 2016-02-29 15:46:32 CET
Created attachment 7504 [details]

OperationalError: FATAL … See Screenshot.
Comment 1 Florian Best univentionstaff 2016-03-01 08:50:24 CET
Created attachment 7507 [details]

patch: Don't fork a module process for every HTTP request by using the unofficial HTTP basic auth feature of UMC.
Comment 2 Florian Best univentionstaff 2016-03-01 09:47:43 CET
Patch applied.

As the same UMC module process is used now for every request there might be side effects. Can you please test how the memcached connection and the postgresql connection behaves in terms of timeouts and restarts. The UCR variable umc/module/timeout can be used to specify the seconds how long a module process is kept open when idling.
Btw: Can we remove the memcached thing at all with that change? Because the protection against DoS happens in the same process now. If yes, not now.
Comment 3 Daniel Tröder univentionstaff 2016-03-07 09:24:11 CET
OK: advisory
OK: automated tests (ucs-test -E dangerous -s self-service), minor fixes in r67834
OK: manual tests checking number of database connections using:

echo "SELECT * FROM pg_stat_activity"| su - postgres -c psql

--> One connection per UMC module process.
--> One UMC module process per language.
--> Max. 35 UMC module processes.
Comment 4 Florian Best univentionstaff 2016-03-18 06:49:44 CET
Comment 5 Florian Best univentionstaff 2016-03-18 06:50:26 CET