-
Notifications
You must be signed in to change notification settings - Fork 2
Open
Labels
bugSomething isn't workingSomething isn't working
Description
I had the following exception:
DEBUG [SamplyShareScheduler_Worker-5] de.samply.share.client.job.CollectInquiriesJob - No specific entity requested
[SamplyShareScheduler_Worker-5] ERROR org.quartz.core.JobRunShell - Job DecentralSearchGroup.CollectInquiriesJob threw an unhandled Exception:
org.jooq.exception.TooManyRowsException: Cursor returned more than one result
at org.jooq.impl.Tools.fetchOne(Tools.java:1816)
at org.jooq.impl.AbstractResultQuery.fetchOne(AbstractResultQuery.java:545)
at org.jooq.impl.AbstractResultQuery.fetchOneInto(AbstractResultQuery.java:568)
at org.jooq.impl.SelectImpl.fetchOneInto(SelectImpl.java:2899)
at de.samply.share.client.util.db.InquiryUtil.fetchInquiryBySourceIdAndBrokerId(InquiryUtil.java:89)
at de.samply.share.client.job.CollectInquiriesJob.addInquiryDetails(CollectInquiriesJob.java:225)
at de.samply.share.client.job.CollectInquiriesJob.loadAndPersistInquiries(CollectInquiriesJob.java:117)
at de.samply.share.client.job.CollectInquiriesJob.execute(CollectInquiriesJob.java:77)
at org.quartz.core.JobRunShell.run(JobRunShell.java:202)
at org.quartz.simpl.SimpleThreadPool$WorkerThread.run(SimpleThreadPool.java:573)
The fetchInquiryBySourceIdAndBrokerId method looks like this:
public static Inquiry fetchInquiryBySourceIdAndBrokerId`(int sourceId, int brokerId) {
DSLContext dslContext = ResourceManager.getDslContext();
return dslContext
.selectFrom(Tables.INQUIRY)
.where(
Tables.INQUIRY.SOURCE_ID.equal(sourceId)
.and(Tables.INQUIRY.BROKER_ID.equal(brokerId))
)
.fetchOneInto(Inquiry.class);
}
I had one result regarding this query:
select source_id, broker_id, count(*)
from samply.inquiry group by source_id, broker_id having count(*) > 1;
So we need a unique constraint over the columns source_id and broker_id in order to guaranty uniqueness for the query in fetchInquiryBySourceIdAndBrokerId.
Metadata
Metadata
Assignees
Labels
bugSomething isn't workingSomething isn't working