| Summary: | Example 5.8. Using Projection Instead of Returning the Full Domain Object, code snippet should be changed | ||
|---|---|---|---|
| Product: | [JBoss] JBoss Data Grid 6 | Reporter: | Vitalii Chepeliuk <vchepeli> |
| Component: | Documentation | Assignee: | Misha H. Ali <mhusnain> |
| Status: | CLOSED CURRENTRELEASE | QA Contact: | |
| Severity: | unspecified | Docs Contact: | |
| Priority: | unspecified | ||
| Version: | 6.2.0 | CC: | jdg-bugs, vchepeli |
| Target Milestone: | GA | Keywords: | Reopened |
| Target Release: | 6.2.0 | ||
| Hardware: | Unspecified | ||
| OS: | Unspecified | ||
| Whiteboard: | |||
| Fixed In Version: | Doc Type: | Bug Fix | |
| Doc Text: | Story Points: | --- | |
| Clone Of: | Environment: |
Build Name: 14318, Infinispan Query Guide-6.2-1
Build Date: 28-11-2013 19:29:01
Topic ID: 14307-537544 [Latest]
|
|
| Last Closed: | 2014-01-16 00:01:18 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: | |
I thing I was mistaken in first case
Suggestions for improvement now are
SearchManager searchManager = Search.getSearchManager(cache);
CacheQuery cacheQuery = searchManager.getQuery(luceneQuery, Book.class);
cacheQuery.projection("id", "summary", "body", "mainAuthor.name");
List results = cacheQuery.list();
Object[] firstResult = (Object[]) results.get(0);
Integer id = firstResult[0];
String summary = firstResult[1];
String body = firstResult[2];
String authorName = firstResult[3];
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 |
Title: Projection Describe the issue: org.infinispan.query.FullTextQuery query = s.createFullTextQuery( luceneQuery, Book.class ); query.setProjection( "id", "summary", "body", "mainAuthor.name" ); List results = query.list(); Object[] firstResult = (Object[]) results.get(0); Integer id = firstResult[0]; String summary = firstResult[1]; String body = firstResult[2]; String authorName = firstResult[3]; Suggestions for improvement: org.infinispan.query.dsl.QueryFactory qf = Search.getSearchManager(cache).getQueryFactory(); org.infinispan.query.dsl.Query query = qf.from(Book.class) .setProjection("id", "summary", "body", "mainAuthor.name") .orderBy("id", SortOrder.ASC) .build(); List results = query.list(); Object[] firstResult = (Object[]) results.get(0); Integer id = firstResult[0]; String summary = firstResult[1]; String body = firstResult[2]; String authorName = firstResult[3]; Additional information: