Hello,
we've stumbled upon a peculiar behaviour when naming a property of an entity "in" while giving it another column name (e.g. input) to avoid reserved keyword conflicts.
For example, our Entity Customer has a property:
@Size(max = 40)
@Column(name = "inputName")
String in;
For the most parts, this gets properly translated to t0.input_name in a lot of queries. However, whenever there is an actual sql "in" in the where clause, the translation becomes too eager - for example
becomes
where
t0.id [*]t0.input_name (?) order by
t0.id limit 1
which understandably produces syntax errors.
I created a simple demonstration PR in which just adding this property breaks a lot of tests due to this replacement issue:
Our question is whether this behaviour works as intended and we should just avoid any reserved keywords even if we give a different name using the @Column annotation? For time being, we simply renamed the property to "inParams", avoiding all issues.