[
https://issues.apache.org/jira/browse/OLINGO-891?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15163604#comment-15163604
]
Jan Penninkhof commented on OLINGO-891:
---------------------------------------
Hi [~mirbo],
Apologies if the tests didn't work anymore. I guess I was building the patch at
the wrong moment of the day. Or night actually.
As the patch was relatively simple, and didn't have enough energy left to setup
an entire build environment, I thought I could do without the test. There must
be a really nifty test that saw the difference between the old and patched
version.
Thanks for merging it, despite failing tests.
Best regards,
Jan
> Use only two parameters in CONCAT function of JPA Where Expressions
> -------------------------------------------------------------------
>
> Key: OLINGO-891
> URL: https://issues.apache.org/jira/browse/OLINGO-891
> Project: Olingo
> Issue Type: Bug
> Components: odata2-jpa
> Affects Versions: V2 2.0.6
> Reporter: Jan Penninkhof
> Assignee: Michael Bolz
> Fix For: V2 2.0.7
>
> Attachments:
> 0001-OLINGO-891-Use-nested-concat-instead-of-concat-with-.patch
>
> Original Estimate: 2h
> Remaining Estimate: 2h
>
> Substring filters such as the one below:
> {code}
> $filter=(substringof(%27Jan%27,FirstName)
> {code}
> Are translated into JPA where clauses similar to:
> {code}
> Where case when first_name like concat('%', 'Jan', '%') then 1 else 0 end=1
> {code}
> However, not all database support concat functions with more than 2
> parameters. The SAP Hana database is one of them:
> !http://i.imgur.com/9SX0AHh.png!
> I would propose to turn the where clause into:
> {code}
> Where case when last_name like concat('%', concat('Jan', '%')) then 1 else 0
> end=1
> {code}
> to get the clause to run on more database platforms:
> !http://i.imgur.com/9bnR2ZY.png!
> Patch included in the attachments
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)