Missed Team ’24? Catch up on announcements here.

×
Create
cancel
Showing results for 
Search instead for 
Did you mean: 
Sign up Log in

Adding content to a Crucible review using EyeQL: "error parsing query: expecting EQ, found 'null'"

Tim Magee January 21, 2015

This is reliably reproducible.

Not looking for workarounds

We have workarounds out the wazoo.  This is a sketchy use case where someone went about creating a review in an unusual way and discovered buggy-looking behaviour that might occur in other, more legitimate use cases – for example it seems to be related to https://jira.atlassian.com/browse/CRUC-7048.  The aim here is just to supply info and maybe get confirmation that we're not going crazy.

Product info

Crucible Version: 3.4.4 Build:20140520040848 2014-05-20 working against Perforce.

We know, old version.  OTOH https://jira.atlassian.com/browse/CRUC-7048 is against v3.6.2 so we're not hopeful of an update fixing the issue.

Method to reproduce:

Create a new review in Crucible, then:

  • click '+' to add content
  • select 'Search for Files'
  • click 'Switch to advanced search'
  • enter an EyeQL query: 'select revisions where csid = C' where C is an existing P4 changeset ID
  • click 'Search'
  • click 'Add all N revisions'

an error message is shown: "error parsing query: expecting EQ, found 'null'"

More info:

On clicking 'Add all N revisions' a POST request is sent whose query data contains, among other things:

  1. a faithful copy of the EyeQL query, URLencoded, as (for example) 'ql=select+revisions+where+csid+%3D+294314'
  2. the string 'select revisions where csid', URLencoded, as (in the same example) 'search=select+revisions+where+csid+'

I think the mutilated version of the query in key 'search' is what's causing the message.

Eliminating the spaces surrounding '=' has no effect.

The size (number of file revisions) of the P4 changeset has no effect.

1 answer

Comments for this post are closed

Community moderators have prevented the ability to post new answers.

Post a new question

0 votes
Piotr Swiecicki
Atlassian Team
Atlassian Team members are employees working across the company in a wide variety of roles.
February 11, 2015

Hi @Tim Magee,

Thank you so much for such detailed analysis.  I've taken a closer look and can see the problem with the Crucible JS code, basically it would fail on every 'Add all N revisions' action if eyeQL query contains '=' (equals) character.  This affects both advanced search when eyeQL is entered by the user, but also simple search when eyeQL is automatically generated by the frontend code.

I've updated https://jira.atlassian.com/browse/CRUC-7048 accordingly, we will aim to get it fixed as soon as possible.  Keep watching it (or start watching if you haven't done that yet) so you will get notification once the issue is fixed.

Kind regards,
Piotr 

TAGS
AUG Leaders

Atlassian Community Events