Bug 1944718

Summary: rsyslog fails to execute actions due to having a too large group
Product: Red Hat Enterprise Linux 8 Reporter: Renaud Métrich <rmetrich>
Component: rsyslogAssignee: Attila Lakatos <alakatos>
Status: CLOSED ERRATA QA Contact: Dalibor Pospíšil <dapospis>
Severity: high Docs Contact:
Priority: high    
Version: 8.3CC: apmukher, rsroka, sbroz
Target Milestone: rcKeywords: AutoVerified, Triaged, ZStream
Target Release: ---   
Hardware: All   
OS: Linux   
Whiteboard:
Fixed In Version: rsyslog-8.2102.0-3.el8 Doc Type: Bug Fix
Doc Text:
Cause: if fileGroup="testgrp" was used in omfile where testgrp was quite large Consequence: rsyslog was not able to execute such action causing not to save the log messages Fix: Result: rsyslog is now able to create the log file with correct group ownership and write the messages to it
Story Points: ---
Clone Of:
: 1944756 (view as bug list) Environment:
Last Closed: 2021-11-09 18:05:17 UTC Type: Bug
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:
Bug Depends On:    
Bug Blocks: 1944756    

Description Renaud Métrich 2021-03-30 14:41:18 UTC
This bug was initially created as a copy of Bug #1944717

I am copying this bug because: 

Also applies, same code.

Description of problem:

Please backport Commit https://github.com/rsyslog/rsyslog/commit/c19ced96646fe6d7b18a35fa030ea3de7e6d25a8 to RHEL7's rsyslog.

When customers have "large" groups (150 users is enough, which isn't that large ...), rsyslog fails to execute actions having conditions on the group with following message:
-------- 8< ---------------- 8< ---------------- 8< ---------------- 8< --------
parameter 'XXX': ID for group testgrp could not be found
-------- 8< ---------------- 8< ---------------- 8< ---------------- 8< --------

I tested that backporting the commit above is sufficient.


Version-Release number of selected component (if applicable):

rsyslog-8.24.0-57.el7_9.x86_64


How reproducible:

Always

Steps to Reproduce:
1. Create 150 users in a group

  # groupadd testgrp
  # for i in {1..150}; do adduser -G testgrp testuser${i}; done

2. Create an action conditioned by the group

  # echo '*.* action(type="omfile" FileCreateMode="0644" fileOwner="testuser1" fileGroup="testgrp" File="/tmp/logging")' > /etc/rsyslog.d/10.conf

3. Restart rsyslog


Actual results:

Error message above and log /tmp/logging not being updated

Expected results:

No failure

Additional info:

Patch in attachment.

Comment 5 Attila Lakatos 2021-04-27 08:00:02 UTC
*** Bug 1953897 has been marked as a duplicate of this bug. ***

Comment 14 errata-xmlrpc 2021-11-09 18:05:17 UTC
Since the problem described in this bug report should be
resolved in a recent advisory, it has been closed with a
resolution of ERRATA.

For information on the advisory (rsyslog and its related dependencies bug fix and enhancement update), and where to find the updated
files, follow the link below.

If the solution does not work for you, open a new bug report.

https://access.redhat.com/errata/RHBA-2021:4193