Bug 1365530
| Summary: | Inverted Advanced Search Results when downloaded in csv are missing 'Matching' field for BIOS related information. | |||
|---|---|---|---|---|
| Product: | [Community] Spacewalk | Reporter: | Eric Herget <eherget> | |
| Component: | WebUI | Assignee: | Eric Herget <eherget> | |
| Status: | CLOSED CURRENTRELEASE | QA Contact: | Lukáš Hellebrandt <lhellebr> | |
| Severity: | medium | Docs Contact: | ||
| Priority: | medium | |||
| Version: | 2.5 | CC: | aladke, eherget, galtukho, lhellebr, satqe-list, tlestach, xdmoon | |
| Target Milestone: | --- | |||
| Target Release: | --- | |||
| Hardware: | All | |||
| OS: | Linux | |||
| Whiteboard: | ||||
| Fixed In Version: | spacewalk-java 2.6.24-1 | Doc Type: | If docs needed, set a value | |
| Doc Text: | Story Points: | --- | ||
| Clone Of: | 1091883 | |||
| : | 1395874 (view as bug list) | Environment: | ||
| Last Closed: | 2017-09-27 19:16:13 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: | 1091883 | |||
| Bug Blocks: | 1395874, 1484117 | |||
|
Description
Eric Herget
2016-08-09 13:06:51 UTC
After collecting the information above that describes which advanced search options result in what content displayed in the UI and what data in the downloaded csv, I began in depth code examination. I found that the actual search is done by querying the search engine via xml rpc call, and then those results get augmented with a decorator that retrieves more data about each system in the results. On inverted searches, there is never a matching field value returned. This makes sense. In addition, the data displayed on the screen is not always just a single field that matched (or didn't match) the query. For example, when searching against "BIOS", 3 separate fields are displayed by concatenating dmiBiosVendor, dmiBiosVersion and dmiBiosRelease. While considering options, we realized there is a use case for returning the list of systems that result from an inverted query as that list could be input to a process, script, etc for performing some operation on each system in the list. So removing the option to download csv for inverted searches was not an option. In addition, we also see value in having system information in the downloaded csv. Ultimately, our chosen solution is to add several columns to the downloaded csv for all of the data available for each system that makes sense in the csv format. The following fields are now included in every downloaded csv (inverted search or otherwise): room, rack, building, address1, address2, city, state, country, dmiBiosVendor, dmiBiosVersion, dmiBiosRelease, dmiAsset, cpuModel, cpuMHz, cpuNumberOfCpus, ram, name, hostname, serverArchName, os, runningKernel and release. The description field was not included because it contained content that included cr/lf that might not be handled cleanly by csv parsers. Other fields that contain multiple values, such as drivers, were also not included. spacewalk.github: a741e990845de6467140b95f30956bace4a5fe86 Verified on SW nightly from 2016-11-11. Used reproducer from OP. When reproducing on sat570, the "Matching Field Value" was present but empty. On SW nightly, the value is still empty. However, there are additional columns in the CSV, as mentioned in comment 1. Although the Matching Field Value is still empty, this behavior is explicitly mentioned as intended by development and I thus consider it correct. This looks like it was fixed in previous release, but I'm closing it in this one. Spacewalk 2.7 has been released. https://github.com/spacewalkproject/spacewalk/wiki/ReleaseNotes27 |