I'm currently doing a rather large select from a table with 200k rows with
5 joins for 5 foreign keys. I fetch it into a Result<Record> object,
iterate through it and call Record.getValue multiple times for each row.
It's taking about 2 minutes to do this, which seems unnecessarily long.
I then tried converting the Result<Record> into a map and got much better
speeds (entire thing took 2 seconds). The problem is that I cannot convert
a Result<Record> into a map if I use joins (I removed the joins for testing
purposes). I took a look at AbstractRecord.intoMaps() and found that the
field names are being added in a way that duplicate keys can be added
(which threw an exception).
For example, let's say I have a table CASES with a field ID (String), and
PERSON_ID (foreign key to PERSONS table, which only has an ID field
(String)). When I do the join and convert it into a map, the
AbstractRecord.intoMaps() method puts only the field.getName() string,
which for CASES.ID and PERSONS.ID is the same ("id"), resulting in the
exception.
Is this a bug in jOOQ and is there a better and faster way to iterate
through all rows in a table and get multiple column values for each row?
Thanks in advance!
--
You received this message because you are subscribed to the Google Groups "jOOQ
User Group" group.
To unsubscribe from this group and stop receiving emails from it, send an email
to [email protected].
For more options, visit https://groups.google.com/groups/opt_out.