Home » Support » Forum » IMK Stall with certain query

IMK Stall with certain query



I am experiencing constant IMK Stall notifications from Java when using certain query:

2015-09-01 16:53:15.785 java[3678:5217999] IMK Stall detected, *please Report* your user scenario in <rdar://problem/16792073> - (imkxpc_deadKeyStateWithReply:) block performed very slowly (4.63 secs)

i am sure it is linked with objectdb as these are thrown each time one particular query is used:

String param = "%"+begining+"%";
CriteriaBuilder cb = DataBase.em.getCriteriaBuilder();
CriteriaQuery<OrderData> query = cb.createQuery(OrderData.class);       
Root<OrderData> order = query.from(OrderData.class);
Predicate p1 = cb.like(cb.lower(order.get("buyerId")), param);
Predicate p2 = cb.like(cb.lower(order.get("buyerName")), param);
query.where(cb.or(p1, p2));
List<OrderData> orders = DataBase.em.createQuery(query).getResultList();

Is it a known issue? Is there anything i can do?



No such known issue. The query looks fine. It could be slow if you have many orders.

Indexes on buyerId (if not the PK) and buyerName may improve performance.


ObjectDB Support
ObjectDB - Fast Object Database for Java (JPA/JDO)

OK, yes quantity is very large, these entities have too many fields and yet worst contains many strings. Primary Key is separate so i can use indexes, thank you for the documentation on this topic, concise and clear as usual.

Thank you support

Post Reply

To post a reply and/or subscribe to update notifications - please login