Closed Bug 1671593 Opened 4 years ago Closed 3 years ago

Search by adapter vendor/device ID doesn't seem to work

Categories

(Socorro :: Webapp, defect, P2)

Unspecified
Android

Tracking

(Not tracked)

RESOLVED FIXED

People

(Reporter: gsvelto, Assigned: willkg)

Details

Attachments

(1 file)

I was poking some Fenix crashes and I noticed that if I search using the AdapterVendorID field usually nothing turns up even though I'm sure that some crashes should match. For example take this query:

@JS::Compartment::getOrCreateWrapper

All mobile vendors are represented in the graphics adapter table:

ARM                      Mali-T760             23  9.1%
ARM                      Mali-G76               1  0.4%
ARM                      Mali-T880              1  0.4%
Imagination Technologies PowerVR Rogue GX6250   4  1.6%
NVIDIA Corporation       NVIDIA Tegra           2  0.8%
Qualcomm                 Adreno (TM) 510      135 53.4%
Qualcomm                 Adreno (TM) 430       80 31.6%

Yet if I search for one of them I get nothing, see this other query.

Same while looking for a specific device.

Note that this seems to be Android-specific. Desktop vendors can be found easily, searching for Intel for example turns out plenty of results. One difference which might be relevant is that on desktop Firefox those crash annotations are hexadecimal values representing PCIe IDs, on Android they're just strings as on Android SoCs devices aren't enumerated or identified through a PCIe root.

OS: Unspecified → Android

I'll make this a P2 to look into, but I'm not sure when I'll have to do that.

Priority: -- → P2

NP, this isn't urgent, I noticed and filed a bug because I didn't want to forget about it.

Grabbing this to look into soon.

Assignee: nobody → willkg
Status: NEW → ASSIGNED

In Fenix crash reports, the Adapter Vendor/Device id annotation values are the vendor/device name and not a hex id. For example, with bp-d607f9a1-ba6d-4741-9e17-479c10201016, the Adapter Vendor Id annotation value is "Qualcomm". It'll show up as "Qualcomm" in the signature report Graphics Adapter facet, too.

With Firefox, the Adapter Vendor/Device id annotation values are almost always hex ids. For example, with bp-df9d2627-f777-4237-97b6-2e3470210411, the Adapter Vendor Id annotation value is "0x3ea6". The Details tab of the crash report and the Graphics Adapter facet in the signature report show "NVIDIA Corporation (0x3ea6)".

When the signature report is rendered, it does a lookup of the ids in the crashstats_graphicsdevice table and outputs the vendor name--not the id. The value in Elasticsearch, however, is whatever the annotation value is.

I think if you search by the id and not the name, it should work. It's not wildly clear that the id is searchable and not the name and it's not wildly clear that Fenix crash reports have an id that is the name.

Now that we've automated updating the graphics device table, we could index the name and id at the time of processing. Does that seem like it'd help here?

If not, I'm open to other ideas on how to fix this.

Oh wait, I think I misread.

You're wondering why "Qualcomm" shows up in the Graphics Adapter facet for a signature with Fenix crash reports, but searching for "Qualcomm" as an adapter vendor id brings up no results.

I think the field is indexed wrong. It's indexed as if the data was always a hex id and doesn't handle strings. I'll look into fixing that. It might require creating a new set of fields.

This was deployed to prod in bug #1706647. Marking as FIXED.

Status: ASSIGNED → RESOLVED
Closed: 3 years ago
Resolution: --- → FIXED
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: