Details
-
Type:
Bug
-
Status: Done
-
Resolution: Done
-
Fix Version/s: None
-
Component/s: SUIT
-
Labels:None
-
Story Points:8
-
Epic Link:
-
Sprint:SUIT Sprint 2019-06
-
Team:Science User Interface
Description
UCDs often have semicolon separator between words. If we are filtering UCDs by selecting the values with semicolon from the list of values ("categories"), it fails.
Test case:
1. http://localhost:8080/firefly/firefly-dev.html?__action=layout.showDropDown&visible=true&view=TestTAPSearch
2. Use GAIA tap service.
3. Search in ADQL tab: SELECT column_name, ucd FROM tap_schema.columns WHERE ucd like '%meta.main%' .
3. In the result table, click column filter, click arrow next to ucd filer box, check 2 last entries ("pos.eq.ra;meta.main" and "pos.eq.dec;meta.main") from the list, and click filter link.
4. Table load error is displayed: Invalid statement: "ucd" IN ('pos.eq.dec
FIREFLY-59 has been created.
June 21, 2019
ticket has been expanded to more filtering capabilities, (AND OR) conditions are available now.
As reported, filtering fail when the value contains semicolon. Because we were using semicolon to separate conditions, this messes up the underlying query statement. Instead of just fixing the problem, I went ahead and allow the conditions delimiter to be either AND or OR. Although this added a useful requested feature, it also may require updates to our online help. Please coordinate with the appropriate people after merging. Sample conditions: > 0 and < 50 or is NULL < 0 or > 100 in ('m31', 'm41') or is NULL |
From Loi: The problem is due to our use of semicolon as a separator. The solution is to escape the semicolon in the value or replace our separator with a different character.