GNOME Bugzilla – Bug 759280
g_regex_match CRITICALs when running rygel
Last modified: 2016-04-21 14:52:59 UTC
Running rygel with G_DEBUG=fatal-criticals leads to this: (gdb) bt full
+ Trace 235803
Created attachment 317085 [details] [review] libtracker-data: Silence a CRITICAL
I'm also curious where that NULL is coming from.
From #tracker on GIMPNet: 11:42 <rishi> ssam2: aleksander0m: garnacho: Hey! Does this make sense: https://bugzilla.gnome.org/show_bug.cgi?id=759280 ? 11:47 <garnacho> rishi: I'm principle yes, I'm curious to which query triggers this though 11:48 <garnacho> I guess you could receive nulls on things like . FILTER (REGEX(nco:fullname(?u), ...)) if fullname is actually null 11:48 <rishi> Something from rygel. I can dig it out a bit later. 11:51 <garnacho> rishi: no worries, I think I can imagine other scenarios where you may pass nothing there 12:09 <garnacho> rishi: and suspicions confirmed, please push :) 12:10 <rishi> garnacho: Ok.
FWIW, this may happen on queries where the regex value is unbound and not actually present for the element at hand, eg: select ?u { ?u a nco:Contact . FILTER (REGEX (nco:fullname(?u), "foo"))} The sqlite engine would typically make this invisible (never pass nulls to regex()) if the query ensures the value is bound, eg: select ?u { ?u a nco:Contact ; nco:fullname ?fullname . FILTER (REGEX (?fullname, "foo"))}
Push to master and all the way down to tracker-1.2.
Comment on attachment 317085 [details] [review] libtracker-data: Silence a CRITICAL Forgot to update the status.
Could you track down where that was coming from in Rygel?