I'm wondering if the exception below is a consequence of the ordering of
execution within jooq (or the gradle plugin?). Or are stderr and stdout
conspiring to confuse me.
Today for the first time in a while I had some new DDL to run. I use
flyway(6.3.2) for that and follow up with nu.studer.jooq(5.2). The
latter completed "successfully" but did show this stacktrace within the
log output (abridged here):
INFO: Generating table : Alias.java [input=alias,
output=alias, pk=alias_pkey]
Jun 08, 2021 4:45:35 PM org.jooq.tools.JooqLogger info
INFO: Parse error : Error when parsing column name :
pv(events_less, events_equal, events_greater, 0)
org.jooq.impl.ParserException: Unknown function: [1:4]
pv([*]events_less, events_equal, events_greater, 0)
at org.jooq.impl.ParserContext.exception(ParserImpl.java:12258)
at org.jooq.impl.ParserImpl.parseUnaryOps(ParserImpl.java:6557)
at org.jooq.impl.ParserImpl.parseExp(ParserImpl.java:6521)
at org.jooq.impl.ParserImpl.parseFactor(ParserImpl.java:6498)
at org.jooq.impl.ParserImpl.parseSum(ParserImpl.java:6444)
at org.jooq.impl.ParserImpl.parseNumericOp(ParserImpl.java:6429)
at org.jooq.impl.ParserImpl.parseCollated(ParserImpl.java:6403)
at org.jooq.impl.ParserImpl.parseConcat(ParserImpl.java:6393)
at org.jooq.impl.ParserImpl.parsePredicate(ParserImpl.java:5323)
at org.jooq.impl.ParserImpl.parseNot(ParserImpl.java:5253)
at org.jooq.impl.ParserImpl.parseAnd(ParserImpl.java:5243)
at org.jooq.impl.ParserImpl.parseOr(ParserImpl.java:5234)
at org.jooq.impl.ParserImpl.parseField(ParserImpl.java:6310)
at org.jooq.impl.ParserImpl.parseField(ParserImpl.java:6235)
at org.jooq.impl.ParserImpl.parseField(ParserImpl.java:764)
at org.jooq.impl.ParserImpl.parseField(ParserImpl.java:758)
at
org.jooq.meta.postgres.PostgresDatabase.tryParseColumnName(PostgresDatabase.java:266)
at
org.jooq.meta.postgres.PostgresDatabase.getIndexes0(PostgresDatabase.java:226)
at
org.jooq.meta.AbstractDatabase$14.run(AbstractDatabase.java:2338)
at
org.jooq.meta.AbstractDatabase.onError(AbstractDatabase.java:3094)
at
org.jooq.meta.AbstractDatabase.getIndexes(AbstractDatabase.java:2335)
at
org.jooq.meta.AbstractDatabase.getIndexes(AbstractDatabase.java:2369)
at
org.jooq.meta.AbstractTableDefinition.getIndexes(AbstractTableDefinition.java:99)
at
org.jooq.codegen.JavaGenerator.generateTable(JavaGenerator.java:5327)
at
org.jooq.codegen.JavaGenerator.generateTable(JavaGenerator.java:5038)
at
org.jooq.codegen.JavaGenerator.generateTables(JavaGenerator.java:5012)
at org.jooq.codegen.JavaGenerator.generate(JavaGenerator.java:582)
at org.jooq.codegen.JavaGenerator.generate(JavaGenerator.java:537)
at org.jooq.codegen.JavaGenerator.generate(JavaGenerator.java:436)
at org.jooq.codegen.GenerationTool.run0(GenerationTool.java:879)
at org.jooq.codegen.GenerationTool.run(GenerationTool.java:233)
at
org.jooq.codegen.GenerationTool.generate(GenerationTool.java:228)
at org.jooq.codegen.GenerationTool.main(GenerationTool.java:200)
Jun 08, 2021 4:45:35 PM org.jooq.tools.JooqLogger info
INFO: Indexes fetched : 22 (22 included, 0 excluded)
Jun 08, 2021 4:45:35 PM org.jooq.tools.JooqLogger info
INFO: Generating table : Cytoband.java [input=cytoband,
output=cytoband, pk=N/A]
Funny thing is Alias has no reference to pv() function:
\d base.alias
Table "base.alias"
Column | Type | Collation | Nullable | Default
-----------+------+-----------+----------+---------
id | uuid | | not null |
person_id | uuid | | not null |
aka | text | | not null |
people_id | uuid | | |
akadef_id | uuid | | |
Indexes:
"alias_pkey" PRIMARY KEY, btree (id)
"aliasperpeep" UNIQUE CONSTRAINT, btree (aka, people_id)
Foreign-key constraints:
"alias_people_id_fkey" FOREIGN KEY (people_id) REFERENCES
base.people(id)
"alias_person_id_fkey" FOREIGN KEY (person_id) REFERENCES
base.person(id)
"defcon" FOREIGN KEY (akadef_id) REFERENCES base.definervalue(id)
I believe the only table which mentions that function is Segment:
\d sgstemplate.segment
Table "sgstemplate.segment"
Column | Type | Collation | Nullable | Default
------------------+---------+-----------+----------+---------
id | uuid | | not null |
chrom | integer | | not null |
markerset_id | uuid | | not null |
probandset_id | uuid | | not null |
startbase | integer | | not null |
endbase | integer | | not null |
firstmarker | integer | | not null |
lastmarker | integer | | not null |
events_less | bigint | | not null | 0
events_equal | bigint | | not null | 0
events_greater | bigint | | not null | 0
threshold_events | integer | | |
Indexes:
"segment_pkey" PRIMARY KEY, btree (id)
"useg" UNIQUE, btree (probandset_id, markerset_id, startbase,
endbase) WITH (fillfactor='95')
"fpvx" btree (pv(events_less, events_equal, events_greater, 0))
"segment_markerset_id_idx" btree (markerset_id)
"segment_probandset_id_idx" btree (probandset_id)
Foreign-key constraints:
"segment_markerset_id_fkey" FOREIGN KEY (markerset_id)
REFERENCES base.markerset(id)
"segment_probandset_id_fkey" FOREIGN KEY (probandset_id)
REFERENCES sgstemplate.probandset(id)
Referenced by:
TABLE "sgstemplate.chaseable" CONSTRAINT
"chaseable_segment_id_fkey" FOREIGN KEY (segment_id) REFERENCES
sgstemplate.segment(id)
TABLE "sgstemplate.duo_chaseable" CONSTRAINT
"duo_chaseable_segment1_id_fkey" FOREIGN KEY (segment1_id)
REFERENCES sgstemplate.segment(id)
TABLE "sgstemplate.duo_chaseable" CONSTRAINT
"duo_chaseable_segment2_id_fkey" FOREIGN KEY (segment2_id)
REFERENCES sgstemplate.segment(id)
TABLE "sgstemplate.optimalset_segment" CONSTRAINT
"threshold_segment_threshold_segment_fkey" FOREIGN KEY (segment_id)
REFERENCES sgstemplate.segment(id)
A subsequent run of 'gradle build' says the generateJooq task is
up-to-date.
--
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].
To view this discussion on the web visit
https://groups.google.com/d/msgid/jooq-user/36b26ba2-4eff-92de-3d8b-933d3b088194%40gmail.com.