Details
-
Bug
-
Resolution: Fixed
-
High
-
Customer request
-
None
-
eZOracle
Description
The restriction for oracle database, which only allows a total amount of 1000 elements in an IN statement is generating a where clause that is not safely encapsulated in braces *( ... )*
In consequence, when the return value of this method is combined in other *and* clauses on query construction (such as the one in kernel/classes/notification/handler/ezsubtree/ezsubtreenotificationrule.php) the result set won't be the desired one.
Steps to reproduce:
- On an environment with eZOracle and over 1000 user accounts, all of them set up to be notified on changes to an object,
- perform the changes
- run the notification cronjob (active in *frequent*, by default)
- The outcome may vary into a fatal error, if your data is large enough to provoke it or an undesired list of users being notified.