Bug 1041547 - Query quide search API differentiation
Summary: Query quide search API differentiation
Keywords:
Status: CLOSED CURRENTRELEASE
Alias: None
Product: JBoss Data Grid 6
Classification: JBoss
Component: Documentation
Version: 6.2.0
Hardware: Unspecified
OS: Unspecified
unspecified
unspecified
Target Milestone: DR1
: 6.2.0
Assignee: gsheldon
QA Contact:
URL:
Whiteboard:
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2013-12-12 16:55 UTC by Martin Gencur
Modified: 2014-01-16 00:03 UTC (History)
5 users (show)

Fixed In Version:
Doc Type: Bug Fix
Doc Text:
Clone Of:
Environment:
Last Closed: 2014-01-16 00:03:26 UTC
Type: Bug


Attachments (Terms of Use)

Description Martin Gencur 2013-12-12 16:55:02 UTC
The query guide contains terms like "Hibernate Search Query DSL" ,"Infinispan Query DSL", "Remote Query DSL"

The result of discussion with Divya is that it would be good to differentiate the two DSLs in the way that all occurences of Hibernate Search Query DSL would be changed to Hibernate Search Query API. All occurrences of Infinispan Query DSL and Remote Query DSL would remain untouched.

IOW, no mention of "DSL" (domain specific language) for the older Hibernate Search based API. Use DSL only in conjunction with the new API.

Comment 2 gsheldon 2013-12-18 00:38:31 UTC
Divya's feedback from BZ#1035940:

In the latest draft of Infinispan Query Guide [1] [2], we still use 2 DSLs. I think this is pretty confusing to the reader.

The name of the Guide is "Infinispan Query Guide" but we use 2 terms "Infinispan Query DSL" and "Hibernate Search DSL", with the "Infinispan Query DSL" unsupported (Tech Preview). The primary aim of this guide is to document the supported Embedded Querying feature.

Another confusing area:
In 1.1: We mention the 2 DSLs.
"In this document, the Hibernate Search Query DSL and the Infinispan Query DSL are discussed frequently. The two are separate DSLs which provide two different ways to create queries and should not be confused with each other."
However, in 1.2, we title as "1.2. Downloading Infinispan Query"
1.3.2 1.3.2. Apache Lucene and Infinispan Query

Afaik 1.2 and 1.3.2 are not related to the "Infinispan Query DSL", but the Lucene-based API (Hibernate Search).

I would hesitate to ack IQ guide in its current form. I would suggest following changes:
1) *Consistently* using the word "Lucene-based API" for Embedded Querying functionality, in chapters 1 to 5.
2) Use term "Query DSL" for Remote Querying only in Chapter 6.
3) We should probably consider renaming this guide to just "Querying Guide" 
4) re: Chapter 7, Where do we mention the JMX controls for Remote Querying (protostream) and Query statistics exposed in JON plugin ?

Comment 3 gsheldon 2013-12-18 05:56:37 UTC

> Afaik 1.2 and 1.3.2 are not related to the "Infinispan Query DSL", but the 
> Lucene-based API (Hibernate Search).

1.2 - Downloading Infinispan Query 
 - I have suggesting renaming this topic "Installing Querying for Red Hat JBoss Data Grid". 
 - I have also replaced "Infinispan Query JAR files", with "the JAR files required to perform queries"

1.3.2 - Apache Lucene and Infinispan Query
 - for consistency with 1.3.1, I have renamed this topic Apache Lucene and the Query Module.
 - The last line has been changed from "Infinispan Query intercepts changes..." to "Hibernate Search intercepts changes..."


Chapter 6:

All references to Query DSL are now "Infinispan Query DSL".
6.4.2 is now "Enabling Infinispan Query DSL-based Queries"
6.4.3 is now "Running Infinispan Query DSL-based Queries"

Comment 8 Martin Gencur 2013-12-19 10:23:23 UTC
There are a few obvious problems which should be fixed:

* 1.4.2. Batching

After changing Hibernate Search to Lucene-based API this topic does not make much sense. API (application programming interface) on its own
cannot work in transactional or batch mode. Only Hibernate Search engine does. Honestly, I don't see much value in the whole topic (1.4.2).

* 5.1.2. Building a Lucene Query

"The Lucene-based query DSL uses a fluent API." should be replaced with "The Lucene-based query API is fluent.
(to avoid using DSL)

* 6.3.2. Enabling Infinispan Query DSL-based Queries

The sentence starting with "All libraries required for Lucene-based Query API queries ..." should actually
use "Infinispan Query DSL" instead of "Lucene-based Query API"

Comment 10 Divya Mehra 2013-12-19 18:01:32 UTC
Please make following revisions:

1) Section 1.1

Replace:
" Red Hat JBoss Data Grid's Infinispan Query is a combination of Hibernate Search's query capabilities and Infinispan. As a result, Infinispan Query and Hibernate Search share several concepts and APIs and the annotations used to map objects to indexes use the same package domain (org.hibernate.search).

The JBoss Data Grid querying API in Library mode leverages Apache Lucene and Hibernate Search. The Infinispan Query DSL discussed in later chapters, is available for both Library and Remote querying. Remote querying is a Technical Preview only in JBoss Data Grid 6.2, and is not currently supported. "

--> 
"The JBoss Data Grid Library-mode Querying API leverages Apache Lucene and Hibernate Search. This API is supported in JBoss Data Grid 6.2.

Remote Querying from a Hot Rod Java client, which is discussed in Chapter 6, is Technology Preview for JBoss Data Grid 6.2 and is not supported."


2) Section 1.3

Delete sentence:
"The Query Module uses the Infinispan Query internally and independent of the data source."

3) Section 1.5

Example 1.1
Please remove this content from this example, it is a bit confusing
"// create native Lucene query using the query DSL
// alternatively you can write the Lucene query using the Lucene query parser
// or the Lucene programmatic API. The Infinispan Query DSL is recommended"

Comment 17 gsheldon 2013-12-19 22:58:06 UTC
Thanks again Divya for your feedback and Mandar for implementing it.

Unless there are further changes this bug will be set to ON QA once docs are brewed.

Comment 19 gsheldon 2013-12-19 23:53:54 UTC
Adding NEEDINFO for Martin for QE ack of chapter 7 as per Divya's request in comment 18.

Comment 21 Martin Gencur 2013-12-20 07:38:01 UTC
Chapter 7 is still incomplete. There's this BZ to track the effort: https://bugzilla.redhat.com/show_bug.cgi?id=1039044

Comment 22 Martin Gencur 2013-12-20 07:49:55 UTC
The rest of the guide except chapter 7 looks fine.

Comment 23 Mandar Joshi 2013-12-20 07:54:11 UTC
Martin, can we move this bug to Verified?

Putting this bug on ON_QA.

Comment 24 Misha H. Ali 2014-01-16 00:03:26 UTC
The fix for this bug is now generally released and available here:

https://access.redhat.com/site/documentation/en-US/Red_Hat_JBoss_Data_Grid/6.2/index.html


Note You need to log in before you can comment on or make changes to this bug.