[
https://issues.jboss.org/browse/ISPN-3175?page=com.atlassian.jira.plugin....
]
Mircea Markus updated ISPN-3175:
--------------------------------
Description:
Once we'll have ISPN-3169(define query fluent API), ISPN-3173(add a new query
operation over hotrod) and ISPN-3174(String-based query language) in place, this is about
connecting the dots: invoke the remote query on the server and present the result to the
user.
h3.On the client side
As described in ISPN-3173, the query is sent as a byte[] to the server: the payload.
The request payload is query specific (not defined in the HR protocol) and at this stage
has the following format: [Q_TYPE] [QUERY_ST] [FIRST_INDEX] [PAGE_SIZE]. This format
accommodates the remote query requirements as defined in ISPN-3169.
- Q_TYPE (protobuf's byte) and query identifier, 1 for JPAQL (this is the query type
we'll support). In future we'll add different query types as well.
- QUERY_STRING (protobuf's string)- JPAQL string generated by the fluent API
(ISPN-3169). Parameters are encoded in this string (vs being sent separately)
- FIRST_INDEX + PAGE_SIZE (protobuf's int)- used for paginating/iterating over the
result set.
HR response: [HR_SUCESS_FLAG] [payload]
PAYLOAD = [NUM_EL] [PROJ_SIZE] [ELEMENTS]
- even though at this stage we don't support projections (see ISPN-3169) PROJ_SIZE is
added for future compatibility when projection will be supported.
Note that the payload for both request and response should be marshalled with protobuf as
this information is read/written over multiple clients.
h3.On the server side
For an overview on the remote querying see
https://community.jboss.org/wiki/QueryingDesignInInfinispan
was:See #7:
https://community.jboss.org/wiki/QueryingDesignInInfinispan
Upgrade the java hotrod client to support remote querying
---------------------------------------------------------
Key: ISPN-3175
URL:
https://issues.jboss.org/browse/ISPN-3175
Project: Infinispan
Issue Type: Feature Request
Reporter: Mircea Markus
Assignee: Mircea Markus
Once we'll have ISPN-3169(define query fluent API), ISPN-3173(add a new query
operation over hotrod) and ISPN-3174(String-based query language) in place, this is about
connecting the dots: invoke the remote query on the server and present the result to the
user.
h3.On the client side
As described in ISPN-3173, the query is sent as a byte[] to the server: the payload.
The request payload is query specific (not defined in the HR protocol) and at this stage
has the following format: [Q_TYPE] [QUERY_ST] [FIRST_INDEX] [PAGE_SIZE]. This format
accommodates the remote query requirements as defined in ISPN-3169.
- Q_TYPE (protobuf's byte) and query identifier, 1 for JPAQL (this is the query type
we'll support). In future we'll add different query types as well.
- QUERY_STRING (protobuf's string)- JPAQL string generated by the fluent API
(ISPN-3169). Parameters are encoded in this string (vs being sent separately)
- FIRST_INDEX + PAGE_SIZE (protobuf's int)- used for paginating/iterating over the
result set.
HR response: [HR_SUCESS_FLAG] [payload]
PAYLOAD = [NUM_EL] [PROJ_SIZE] [ELEMENTS]
- even though at this stage we don't support projections (see ISPN-3169) PROJ_SIZE is
added for future compatibility when projection will be supported.
Note that the payload for both request and response should be marshalled with protobuf as
this information is read/written over multiple clients.
h3.On the server side
For an overview on the remote querying see
https://community.jboss.org/wiki/QueryingDesignInInfinispan
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see:
http://www.atlassian.com/software/jira