Bug 1796353

Summary: createrepo segfaults
Product: [Fedora] Fedora Reporter: Richard W.M. Jones <rjones>
Component: glib2Assignee: Matthias Clasen <mclasen>
Status: CLOSED DUPLICATE QA Contact: Fedora Extras Quality Assurance <extras-qa>
Severity: unspecified Docs Contact:
Priority: unspecified    
Version: rawhideCC: caillon+fedoraproject, dmach, gnome-sig, jmracek, john.j5live, jrohel, mblaha, mclasen, pkratoch, rhughes, rpm-software-management, rstrode, sandmann, tiagomatos, tmlcoch
Target Milestone: ---   
Target Release: ---   
Hardware: Unspecified   
OS: Unspecified   
Whiteboard:
Fixed In Version: Doc Type: If docs needed, set a value
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2020-01-30 09:11:49 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:

Description Richard W.M. Jones 2020-01-30 09:05:58 UTC
Description of problem:

+ createrepo repo
GLib: Critical: g_async_queue_lock: assertion 'queue' failed
GLib: Critical: g_async_queue_push_unlocked: assertion 'queue' failed
GLib: Critical: _g_async_queue_get_mutex: assertion 'queue' failed
/var/tmp/rpm-tmp.pJW7CO: line 45: 249304 Segmentation fault      (core dumped) createrepo repo

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

createrepo_c 0.15.5-1.fc32

How reproducible:

Happened at least once.

Steps to Reproduce:
1. Run createrepo.

Comment 1 Richard W.M. Jones 2020-01-30 09:10:17 UTC
Actually this bug seems to be in glib2, not in createrepo itself.

glib2 2.63.3-1.fc32 => WORKS
glib2 2.63.4-1.fc32 => BUGGY

A trivial reproducer is:

$ mkdir /var/tmp/test
$ cd /var/tmp/test
$ koji download-build libnbd-1.3.1-4.fc32 --arch=x86_64
$ createrepo .
Directory walk started
Directory walk done - 6 packages
Temporary output repo path: ./.repodata/
Preparing sqlite DBs
Pool started (with 5 workers)
Pool finished
GLib: Critical: g_async_queue_lock: assertion 'queue' failed
GLib: Critical: g_async_queue_push_unlocked: assertion 'queue' failed
GLib: Critical: _g_async_queue_get_mutex: assertion 'queue' failed
Segmentation fault (core dumped)

I can't get a stack trace because this causes all sorts of other programs to
segfault too ...

Comment 2 Richard W.M. Jones 2020-01-30 09:11:49 UTC
Seems likely to be a duplicate of bug 1795052.

*** This bug has been marked as a duplicate of bug 1795052 ***