Using the changes made to fix issue #9747, I can append a && (typeof <<field>>=='number') suffix for each identifier encountered inside an arithmetic expression. This way we ensure that, for arithmetic expressions, only numeric values are taken into account while applying the $where filter.
I've tried this approach and didn't find any conflict / regression so far.
Using the changes made to fix issue #9747, I can append a && (typeof <<field>>=='number') suffix for each identifier encountered inside an arithmetic expression. This way we ensure that, for arithmetic expressions, only numeric values are taken into account while applying the $where filter.
I've tried this approach and didn't find any conflict / regression so far.
Tested Aqua Data Studio Aqua Data Studio 14.0.0-beta-85 Build #: 33590 on Ubuntu 12.04( Mongo DB 2.4.3) and Windows XP ( Mongo DB 2.0.9).
For bitwise operation necessary also add && (typeof <<field>>=='number')
See next result:
select tname,var from jstype where (var&1)=0
Tested Aqua Data Studio Aqua Data Studio 14.0.0-beta-85 Build #: 33590 on Ubuntu 12.04( Mongo DB 2.4.3) and Windows XP ( Mongo DB 2.0.9).
For bitwise operation necessary also add && (typeof <<field>>=='number')
See next result:
select tname,var from jstype where (var&1)=0
The typeof <<field>>=='number'
suffix is now appended for bitwise operations.
The typeof <<field>>=='number'
suffix is now appended for bitwise operations.
2. As I mentioned for comparison of fields without expressions necessary to add equality of typeof's:
2. As I mentioned for comparison of fields without expressions necessary to add equality of typeof's:
Fixed both scenarios.
2. As I mentioned for comparison of fields without expressions necessary to add equality of typeof's:
The WHERE field1 = field2
, WHERE field1 != field2
cases have been simplified by using strict equality javascript operators ( === resp. !== ). For the other cases, the equality of typeof's is now used.
Fixed both scenarios.
2. As I mentioned for comparison of fields without expressions necessary to add equality of typeof's:
The WHERE field1 = field2
, WHERE field1 != field2
cases have been simplified by using strict equality javascript operators ( === resp. !== ). For the other cases, the equality of typeof's is now used.
Verified in Aqua Data Studio Aqua Data Studio 14.0.0-rc-8 Build #: 33812 on Ubuntu 12.04( Mongo DB 2.4.3)
Verified in Aqua Data Studio Aqua Data Studio 14.0.0-rc-8 Build #: 33812 on Ubuntu 12.04( Mongo DB 2.4.3)
Issue #9725 |
Closed |
Fixed |
Resolved |
Completion |
No due date |
Fixed Build ADS 14.0.0-rc-8 (mongo-jdbc 1.3.0) |
No time estimate |
Emil, please assess the impact of this change.