Couchbase change in string and double comparison in JDV 6.4.2
Issue
TOSTRINGno longer pushed down to couchbase in comparison ofdouble- For a query:
SELECT BQT1.SmallA.StringKey, BQT2.SmallB.DoubleNum FROM BQT1.SmallA, BQT2.SmallB WHERE BQT1.SmallA.StringKey = convert(BQT2.SmallB.DoubleNum, string) AND BQT1.SmallA.IntKey >= 0 AND BQT2.SmallB.IntKey >= 0
The following SOURCE queries were pushed in 6.4.1:
SELECT `$cb_c1_IntKey` c_0, `$cb_c2_StringKey` c_1 FROM `dvqe_small` `$cb_t1` LET `$cb_c1_IntKey` = `$cb_t1`.`IntKey`, `$cb_c2_StringKey` = `$cb_t1`.`StringKey` WHERE `$cb_t1`.`type` = 'SmallA' ORDER BY c_1
SELECT `$cb_c1_IntKey` c_0, `$cb_c2_DoubleNum` c_1, TOSTRING(`$cb_c2_DoubleNum`) c_2 FROM `dvqe_small` `$cb_t1` LET `$cb_c1_IntKey` = `$cb_t1`.`IntKey`, `$cb_c2_DoubleNum` = `$cb_t1`.`DoubleNum` WHERE `$cb_t1`.`type` = 'SmallB' ORDER BY c_2
6.4.2 the following SOURCE query is pushed:
SELECT `$cb_c1_IntKey` c1, `$cb_c2_StringKey` c2 FROM `dvqe_small` `$cb_t1` LET `$cb_c1_IntKey` = `$cb_t1`.`IntKey`, `$cb_c2_StringKey` = `$cb_t1`.`StringKey` WHERE `$cb_t1`.`type` = 'SmallA'
SELECT `$cb_c1_IntKey` c1, `$cb_c2_DoubleNum` c2 FROM `dvqe_small` `$cb_t1` LET `$cb_c1_IntKey` = `$cb_t1`.`IntKey`, `$cb_c2_DoubleNum` = `$cb_t1`.`DoubleNum` WHERE `$cb_t1`.`type` = 'SmallB'
Environment
- Red Hat JBoss Data Virtualization 6.4.1, 6.4.2
- CouchBaseDB
Subscriber exclusive content
A Red Hat subscription provides unlimited access to our knowledgebase of over 48,000 articles and solutions.
Welcome! Check out the Getting Started with Red Hat page for quick tours and guides for common tasks.
