Back a bit over a year ago, Sam Edge reported the below.
I've just added syslog-ng into a CygWin 64 installation on a Windows 11 Pro
system on which I've otherwise run CygWin for years, but I'm getting a similar
error, log output starting syslog-ng with -F (foreground) -d (debug), below.
Two things:
1. the blocking problem,
GLib:ERROR:../glib/gmain.c:4292:g_main_context_check_unlocked: assertion
failed: (i <= 0 || fds[i - 1].fd < fds[i].fd)
Bail out! GLib:ERROR:../glib/gmain.c:4292:g_main_context_check_unlocked:
assertion failed: (i <= 0 || fds[i - 1].fd < fds[i].fd)
$ cygcheck -c|grep libglib
libglib2.0_0 2.88.3-1 OK
# so, this is a much newer libglib2 than the one with which Sam reported the
error, so much newer that I'm very hesitant (expecting dependency
impossibilities) to even try load the older 2.64.6-1 which Sam found to work;
and anyway, this much newer, I'd have expected/hoped the problem to have been
fixed...)
1. The several "Attempted to register the same plugin multiple times,
ignoring" errors.
This configuration was just installed; the config file created by
syslog-ng-config, and edited only to add my network source, and a specific
/var/log/messages-mycustomname destination:
The config file:
#############################################################################
# Based on the Default syslog-ng.conf file which would collect all local logs
into a
# single file called /var/log/messages.
# Added (enabled) UDP 514 network listening.
# Added destination as /var/log/messages-MikroTiks for syslog() messages from
my MikroTik routers.
#
@version: 3.2
@include "scl.conf"
source s_local {
system();
internal();
};
source s_network {
udp();
};
destination d_local {
file("/var/log/messages");
};
destination d_TikLogs {
file("/var/log/messages-MikroTiks");
};
log {
source(s_network);
destination(d_TikLogs);
};
log {
# We do not expect any locally generated syslog() messages, but ... ?
source(s_local);
destination(d_local);
};
The output when I start syslog-ng:
$ syslog-ng -F -d
Trying to open module; module='syslogformat',
filename='/usr/lib/syslog-ng/cygsyslogformat.dll'
Trying to open module; module='basicfuncs',
filename='/usr/lib/syslog-ng/cygbasicfuncs.dll'
Trying to open module; module='afsocket',
filename='/usr/lib/syslog-ng/cygafsocket.dll'
Trying to open module; module='affile',
filename='/usr/lib/syslog-ng/cygaffile.dll'
Trying to open module; module='afprog',
filename='/usr/lib/syslog-ng/cygafprog.dll'
Trying to open module; module='afuser',
filename='/usr/lib/syslog-ng/cygafuser.dll'
Trying to open module; module='dbparser',
filename='/usr/lib/syslog-ng/cygdbparser.dll'
Trying to open module; module='csvparser',
filename='/usr/lib/syslog-ng/cygcsvparser.dll'
Starting to read include file; filename='/etc/syslog-ng/scl.conf', depth='1'
Global value changed; define='scl-root',
value='/usr/share/syslog-ng/include/scl'
Global value changed; define='include-path',
value='/etc/syslog-ng:/usr/share/syslog-ng/include'
Starting to read include file; filename='/etc/syslog-ng/modules.conf', depth='2'
Global value changed; define='autoload-compiled-modules', value='0'
Attempted to register the same plugin multiple times, ignoring;
context='format', name='syslog'
Attempted to register the same plugin multiple times, ignoring;
context='template-func', name='echo'
Attempted to register the same plugin multiple times, ignoring;
context='template-func', name='grep'
Attempted to register the same plugin multiple times, ignoring;
context='template-func', name='if'
Attempted to register the same plugin multiple times, ignoring;
context='source', name='unix-stream'
Attempted to register the same plugin multiple times, ignoring;
context='destination', name='unix-stream'
Attempted to register the same plugin multiple times, ignoring;
context='source', name='unix-dgram'
Attempted to register the same plugin multiple times, ignoring;
context='destination', name='unix-dgram'
Attempted to register the same plugin multiple times, ignoring;
context='source', name='tcp'
Attempted to register the same plugin multiple times, ignoring;
context='destination', name='tcp'
Attempted to register the same plugin multiple times, ignoring;
context='source', name='tcp6'
Attempted to register the same plugin multiple times, ignoring;
context='destination', name='tcp6'
Attempted to register the same plugin multiple times, ignoring;
context='source', name='udp'
Attempted to register the same plugin multiple times, ignoring;
context='destination', name='udp'
Attempted to register the same plugin multiple times, ignoring;
context='source', name='udp6'
Attempted to register the same plugin multiple times, ignoring;
context='destination', name='udp6'
Attempted to register the same plugin multiple times, ignoring;
context='source', name='syslog'
Attempted to register the same plugin multiple times, ignoring;
context='destination', name='syslog'
Attempted to register the same plugin multiple times, ignoring;
context='source', name='file'
Attempted to register the same plugin multiple times, ignoring;
context='source', name='pipe'
Attempted to register the same plugin multiple times, ignoring;
context='destination', name='file'
Attempted to register the same plugin multiple times, ignoring;
context='destination', name='pipe'
Attempted to register the same plugin multiple times, ignoring;
context='source', name='program'
Attempted to register the same plugin multiple times, ignoring;
context='destination', name='program'
Attempted to register the same plugin multiple times, ignoring;
context='destination', name='usertty'
Attempted to register the same plugin multiple times, ignoring;
context='parser', name='db-parser'
Attempted to register the same plugin multiple times, ignoring;
context='parser', name='csv-parser'
Finishing include; filename='/etc/syslog-ng/modules.conf', depth='2'
Starting to read include file;
filename='/usr/share/syslog-ng/include/scl/system/plugin.conf', depth='2'
Trying to open module; module='confgen',
filename='/usr/lib/syslog-ng/cygconfgen.dll'
Finishing include;
filename='/usr/share/syslog-ng/include/scl/system/plugin.conf', depth='2'
Starting to read include file;
filename='/usr/share/syslog-ng/include/scl/pacct/plugin.conf', depth='2'
Finishing include;
filename='/usr/share/syslog-ng/include/scl/pacct/plugin.conf', depth='2'
Starting to read include file;
filename='/usr/share/syslog-ng/include/scl/syslogconf/plugin.conf', depth='2'
Finishing include;
filename='/usr/share/syslog-ng/include/scl/syslogconf/plugin.conf', depth='2'
Finishing include; filename='/etc/syslog-ng/scl.conf', depth='1'
Finishing include; content='source confgen system', depth='1'
Running application hooks; hook='1'
Running application hooks; hook='3'
syslog-ng starting up; version='3.2.5'
**
GLib:ERROR:../glib/gmain.c:4292:g_main_context_check_unlocked: assertion
failed: (i <= 0 || fds[i - 1].fd < fds[i].fd)
Bail out! GLib:ERROR:../glib/gmain.c:4292:g_main_context_check_unlocked:
assertion failed: (i <= 0 || fds[i - 1].fd < fds[i].fd)
Aborted
Is anyone successfully (I assume, many!) using syslog-ng 3.2.5 in CygWin with a
recent libglib2 version (e.g. 2.80whatever)?
Has anyone (Sam?) more recently encountered and overcome (how?) this problem?
many thanks,
-Jay
Sam Edge
[email protected]<mailto:sam.edge%40gmx.com?Subject=Re:%20Re%3A%20Regression%20in%20syslog-ng%20with%20libglib2.0_0%20f2.84.0-1&In-Reply-To=%3C2859d75f-e148-48ca-b8a3-4538c221e283%40gmx.com%3E>
wrote:
Fri Mar 28 11:20:51 GMT 2025
* Previous message (by thread): Regression in
syslog-ng?<https://cygwin.com/pipermail/cygwin/2025-March/257748.html>
* Next message (by thread): sshd times out and disconnects
client<https://cygwin.com/pipermail/cygwin/2025-March/257754.html>
* Messages sorted by: [ date
]<https://cygwin.com/pipermail/cygwin/2025-March/date.html#257749> [ thread
]<https://cygwin.com/pipermail/cygwin/2025-March/thread.html#257749> [ subject
]<https://cygwin.com/pipermail/cygwin/2025-March/subject.html#257749> [ author
]<https://cygwin.com/pipermail/cygwin/2025-March/author.html#257749>
________________________________
On 28/03/2025 11:00, Sam Edge via Cygwin wrote:
>
> I've had a weird regression with syslog-ng recently. Dunno if it's
> related to a new release of the Cygwin DLL because I've only just
> spotted it.
>
> When I try to start syslog-ng as a service recently it fails to load
> with the following in /var/log/syslog-ng.log.
>
> cat /var/log/syslog-ng.log
> **
> GLib:ERROR:../glib/gmain.c:4090:g_main_context_check_unlocked: assertion
> failed: (i <= 0 || fds[i - 1].fd < fds[i].fd)
> Bail out! GLib:ERROR:../glib/gmain.c:4090:g_main_context_check_unlocked:
> assertion failed: (i <= 0 || fds[i - 1].fd < fds[i].fd)
>
> I've attached my cygcheck and the contents of /etc/syslog-ng.
>
> Any ideas?
>
> The failing machine is running Windows 11 Pro I'm using the UDP output
> of syslog-ng to generate warning emails when successful sshd/http logins
> occur from public IP addresses on the heavily armoured syslog server so
> I'm loathe to do it but I'll try upgrading the Cygwin DLL on another
> non-critical but Windows 10 machine to see how that goes.
Okay, a bit more info.
I've just upgraded my Cygwin installation on a Windows 10 machine & it
too is now exhibiting the fault.
Attached are the pre- & post-upgrade cygchecks. Doing a diff it appears
that libglib2.0_0 has also been upgraded, amongst other things, so maybe
that's the source of the new error.
Ah-ha! If I downgrade libglib2.0_0 from 2.84.0-1 back to 2.64.6-1 the
problem goes away.
--
Sam Edge
--
Problem reports: https://cygwin.com/problems.html
FAQ: https://cygwin.com/faq/
Documentation: https://cygwin.com/docs.html
Unsubscribe info: https://cygwin.com/ml/#unsubscribe-simple