<?xml version="1.0" encoding="UTF-8"?>
<testsuite xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="https://maven.apache.org/surefire/maven-surefire-plugin/xsd/surefire-test-report-3.0.xsd" version="3.0" name="org.codefilarete.stalactite.engine.FluentEntityMappingConfigurationSupportPolymorphismTest$TablePerClass" time="0.053" tests="8" errors="0" skipped="0" failures="0">
  <properties>
    <property name="awt.toolkit" value="sun.awt.X11.XToolkit"/>
    <property name="file.encoding.pkg" value="sun.io"/>
    <property name="java.specification.version" value="1.8"/>
    <property name="sun.cpu.isalist" value=""/>
    <property name="sun.jnu.encoding" value="UTF-8"/>
    <property name="java.class.path" value="/jenkins/work/agent-local/workspace/Stalactite pipeline/orm/target/test-classes:/jenkins/work/agent-local/workspace/Stalactite pipeline/orm/target/classes:/jenkins/work/agent-local/workspace/Stalactite pipeline/core/target/stalactite-core-3.0.0-SNAPSHOT.jar:/jenkins/work/agent-local/workspace/Stalactite pipeline/sql/target/stalactite-sql-3.0.0-SNAPSHOT.jar:/var/lib/jenkins/.m2/repository/org/codefilarete/reflection/1.1.2-SNAPSHOT/reflection-1.1.2-SNAPSHOT.jar:/var/lib/jenkins/.m2/repository/org/codefilarete/tools/1.1.1-SNAPSHOT/tools-1.1.1-SNAPSHOT.jar:/var/lib/jenkins/.m2/repository/org/danekja/jdk-serializable-functional/1.8.2/jdk-serializable-functional-1.8.2.jar:/var/lib/jenkins/.m2/repository/org/slf4j/slf4j-api/1.7.36/slf4j-api-1.7.36.jar:/var/lib/jenkins/.m2/repository/org/apache/commons/commons-collections4/4.4/commons-collections4-4.4.jar:/jenkins/work/agent-local/workspace/Stalactite pipeline/sql-adapter/sql-hsqldb-adapter/target/stalactite-sql-hsqldb-adapter-3.0.0-SNAPSHOT.jar:/var/lib/jenkins/.m2/repository/org/hsqldb/hsqldb/2.7.4/hsqldb-2.7.4-jdk8.jar:/jenkins/work/agent-local/workspace/Stalactite pipeline/sql-adapter/sql-hsqldb-adapter/target/stalactite-sql-hsqldb-adapter-3.0.0-SNAPSHOT-tests.jar:/jenkins/work/agent-local/workspace/Stalactite pipeline/core-adapter/core-hsqldb-adapter/target/stalactite-core-hsqldb-adapter-3.0.0-SNAPSHOT.jar:/jenkins/work/agent-local/workspace/Stalactite pipeline/core/target/stalactite-core-3.0.0-SNAPSHOT-tests.jar:/var/lib/jenkins/.m2/repository/org/slf4j/slf4j-reload4j/1.7.36/slf4j-reload4j-1.7.36.jar:/var/lib/jenkins/.m2/repository/ch/qos/reload4j/reload4j/1.2.19/reload4j-1.2.19.jar:/var/lib/jenkins/.m2/repository/org/apache/commons/commons-lang3/3.12.0/commons-lang3-3.12.0.jar:/var/lib/jenkins/.m2/repository/org/junit/jupiter/junit-jupiter/5.8.2/junit-jupiter-5.8.2.jar:/var/lib/jenkins/.m2/repository/org/junit/jupiter/junit-jupiter-api/5.8.2/junit-jupiter-api-5.8.2.jar:/var/lib/jenkins/.m2/repository/org/opentest4j/opentest4j/1.2.0/opentest4j-1.2.0.jar:/var/lib/jenkins/.m2/repository/org/junit/platform/junit-platform-commons/1.8.2/junit-platform-commons-1.8.2.jar:/var/lib/jenkins/.m2/repository/org/apiguardian/apiguardian-api/1.1.2/apiguardian-api-1.1.2.jar:/var/lib/jenkins/.m2/repository/org/junit/jupiter/junit-jupiter-params/5.8.2/junit-jupiter-params-5.8.2.jar:/var/lib/jenkins/.m2/repository/org/junit/jupiter/junit-jupiter-engine/5.8.2/junit-jupiter-engine-5.8.2.jar:/var/lib/jenkins/.m2/repository/org/junit/platform/junit-platform-engine/1.8.2/junit-platform-engine-1.8.2.jar:/var/lib/jenkins/.m2/repository/org/codefilarete/tools/1.1.0/tools-1.1.0-tests.jar:/var/lib/jenkins/.m2/repository/com/google/code/findbugs/jsr305/3.0.2/jsr305-3.0.2.jar:/var/lib/jenkins/.m2/repository/org/mockito/mockito-core/4.3.1/mockito-core-4.3.1.jar:/var/lib/jenkins/.m2/repository/net/bytebuddy/byte-buddy/1.12.7/byte-buddy-1.12.7.jar:/var/lib/jenkins/.m2/repository/net/bytebuddy/byte-buddy-agent/1.12.7/byte-buddy-agent-1.12.7.jar:/var/lib/jenkins/.m2/repository/org/objenesis/objenesis/3.2/objenesis-3.2.jar:/var/lib/jenkins/.m2/repository/org/assertj/assertj-core/3.23.1/assertj-core-3.23.1.jar:"/>
    <property name="java.vm.vendor" value="Private Build"/>
    <property name="sun.arch.data.model" value="64"/>
    <property name="java.vendor.url" value="http://java.oracle.com/"/>
    <property name="user.timezone" value="Etc/UTC"/>
    <property name="java.vm.specification.version" value="1.8"/>
    <property name="os.name" value="Linux"/>
    <property name="user.country" value="FR"/>
    <property name="sun.java.launcher" value="SUN_STANDARD"/>
    <property name="sun.boot.library.path" value="/usr/lib/jvm/java-8-openjdk-amd64/jre/lib/amd64"/>
    <property name="sun.java.command" value="/jenkins/work/agent-local/workspace/Stalactite pipeline/orm/target/surefire/surefirebooter-20260519053109587_110.jar /jenkins/work/agent-local/workspace/Stalactite pipeline/orm/target/surefire 2026-05-19T05-30-38_739-jvmRun1 surefire-20260519053109587_108tmp surefire_4-20260519053109587_109tmp"/>
    <property name="surefire.test.class.path" value="/jenkins/work/agent-local/workspace/Stalactite pipeline/orm/target/test-classes:/jenkins/work/agent-local/workspace/Stalactite pipeline/orm/target/classes:/jenkins/work/agent-local/workspace/Stalactite pipeline/core/target/stalactite-core-3.0.0-SNAPSHOT.jar:/jenkins/work/agent-local/workspace/Stalactite pipeline/sql/target/stalactite-sql-3.0.0-SNAPSHOT.jar:/var/lib/jenkins/.m2/repository/org/codefilarete/reflection/1.1.2-SNAPSHOT/reflection-1.1.2-SNAPSHOT.jar:/var/lib/jenkins/.m2/repository/org/codefilarete/tools/1.1.1-SNAPSHOT/tools-1.1.1-SNAPSHOT.jar:/var/lib/jenkins/.m2/repository/org/danekja/jdk-serializable-functional/1.8.2/jdk-serializable-functional-1.8.2.jar:/var/lib/jenkins/.m2/repository/org/slf4j/slf4j-api/1.7.36/slf4j-api-1.7.36.jar:/var/lib/jenkins/.m2/repository/org/apache/commons/commons-collections4/4.4/commons-collections4-4.4.jar:/jenkins/work/agent-local/workspace/Stalactite pipeline/sql-adapter/sql-hsqldb-adapter/target/stalactite-sql-hsqldb-adapter-3.0.0-SNAPSHOT.jar:/var/lib/jenkins/.m2/repository/org/hsqldb/hsqldb/2.7.4/hsqldb-2.7.4-jdk8.jar:/jenkins/work/agent-local/workspace/Stalactite pipeline/sql-adapter/sql-hsqldb-adapter/target/stalactite-sql-hsqldb-adapter-3.0.0-SNAPSHOT-tests.jar:/jenkins/work/agent-local/workspace/Stalactite pipeline/core-adapter/core-hsqldb-adapter/target/stalactite-core-hsqldb-adapter-3.0.0-SNAPSHOT.jar:/jenkins/work/agent-local/workspace/Stalactite pipeline/core/target/stalactite-core-3.0.0-SNAPSHOT-tests.jar:/var/lib/jenkins/.m2/repository/org/slf4j/slf4j-reload4j/1.7.36/slf4j-reload4j-1.7.36.jar:/var/lib/jenkins/.m2/repository/ch/qos/reload4j/reload4j/1.2.19/reload4j-1.2.19.jar:/var/lib/jenkins/.m2/repository/org/apache/commons/commons-lang3/3.12.0/commons-lang3-3.12.0.jar:/var/lib/jenkins/.m2/repository/org/junit/jupiter/junit-jupiter/5.8.2/junit-jupiter-5.8.2.jar:/var/lib/jenkins/.m2/repository/org/junit/jupiter/junit-jupiter-api/5.8.2/junit-jupiter-api-5.8.2.jar:/var/lib/jenkins/.m2/repository/org/opentest4j/opentest4j/1.2.0/opentest4j-1.2.0.jar:/var/lib/jenkins/.m2/repository/org/junit/platform/junit-platform-commons/1.8.2/junit-platform-commons-1.8.2.jar:/var/lib/jenkins/.m2/repository/org/apiguardian/apiguardian-api/1.1.2/apiguardian-api-1.1.2.jar:/var/lib/jenkins/.m2/repository/org/junit/jupiter/junit-jupiter-params/5.8.2/junit-jupiter-params-5.8.2.jar:/var/lib/jenkins/.m2/repository/org/junit/jupiter/junit-jupiter-engine/5.8.2/junit-jupiter-engine-5.8.2.jar:/var/lib/jenkins/.m2/repository/org/junit/platform/junit-platform-engine/1.8.2/junit-platform-engine-1.8.2.jar:/var/lib/jenkins/.m2/repository/org/codefilarete/tools/1.1.0/tools-1.1.0-tests.jar:/var/lib/jenkins/.m2/repository/com/google/code/findbugs/jsr305/3.0.2/jsr305-3.0.2.jar:/var/lib/jenkins/.m2/repository/org/mockito/mockito-core/4.3.1/mockito-core-4.3.1.jar:/var/lib/jenkins/.m2/repository/net/bytebuddy/byte-buddy/1.12.7/byte-buddy-1.12.7.jar:/var/lib/jenkins/.m2/repository/net/bytebuddy/byte-buddy-agent/1.12.7/byte-buddy-agent-1.12.7.jar:/var/lib/jenkins/.m2/repository/org/objenesis/objenesis/3.2/objenesis-3.2.jar:/var/lib/jenkins/.m2/repository/org/assertj/assertj-core/3.23.1/assertj-core-3.23.1.jar:"/>
    <property name="sun.cpu.endian" value="little"/>
    <property name="user.home" value="/var/lib/jenkins"/>
    <property name="user.language" value="fr"/>
    <property name="java.specification.vendor" value="Oracle Corporation"/>
    <property name="java.home" value="/usr/lib/jvm/java-8-openjdk-amd64/jre"/>
    <property name="basedir" value="/jenkins/work/agent-local/workspace/Stalactite pipeline/orm"/>
    <property name="file.separator" value="/"/>
    <property name="line.separator" value="&#10;"/>
    <property name="java.vm.specification.vendor" value="Oracle Corporation"/>
    <property name="java.specification.name" value="Java Platform API Specification"/>
    <property name="java.awt.graphicsenv" value="sun.awt.X11GraphicsEnvironment"/>
    <property name="surefire.real.class.path" value="/jenkins/work/agent-local/workspace/Stalactite pipeline/orm/target/surefire/surefirebooter-20260519053109587_110.jar:/var/lib/jenkins/.m2/repository/org/jacoco/org.jacoco.agent/0.8.5/org.jacoco.agent-0.8.5-runtime.jar"/>
    <property name="sun.boot.class.path" value="/usr/lib/jvm/java-8-openjdk-amd64/jre/lib/resources.jar:/usr/lib/jvm/java-8-openjdk-amd64/jre/lib/rt.jar:/usr/lib/jvm/java-8-openjdk-amd64/jre/lib/sunrsasign.jar:/usr/lib/jvm/java-8-openjdk-amd64/jre/lib/jsse.jar:/usr/lib/jvm/java-8-openjdk-amd64/jre/lib/jce.jar:/usr/lib/jvm/java-8-openjdk-amd64/jre/lib/charsets.jar:/usr/lib/jvm/java-8-openjdk-amd64/jre/lib/jfr.jar:/usr/lib/jvm/java-8-openjdk-amd64/jre/classes"/>
    <property name="sun.management.compiler" value="HotSpot 64-Bit Tiered Compilers"/>
    <property name="java.runtime.version" value="1.8.0_482-8u482-ga~us1-0ubuntu1~24.04-b08"/>
    <property name="user.name" value="jenkins"/>
    <property name="path.separator" value=":"/>
    <property name="os.version" value="6.8.0-107-generic"/>
    <property name="java.endorsed.dirs" value="/usr/lib/jvm/java-8-openjdk-amd64/jre/lib/endorsed"/>
    <property name="java.runtime.name" value="OpenJDK Runtime Environment"/>
    <property name="file.encoding" value="UTF-8"/>
    <property name="java.vm.name" value="OpenJDK 64-Bit Server VM"/>
    <property name="localRepository" value="/var/lib/jenkins/.m2/repository"/>
    <property name="java.vendor.url.bug" value="http://bugreport.sun.com/bugreport/"/>
    <property name="java.io.tmpdir" value="/tmp"/>
    <property name="java.version" value="1.8.0_482"/>
    <property name="user.dir" value="/jenkins/work/agent-local/workspace/Stalactite pipeline/orm"/>
    <property name="os.arch" value="amd64"/>
    <property name="java.vm.specification.name" value="Java Virtual Machine Specification"/>
    <property name="java.awt.printerjob" value="sun.print.PSPrinterJob"/>
    <property name="sun.os.patch.level" value="unknown"/>
    <property name="java.library.path" value="/usr/java/packages/lib/amd64:/usr/lib/x86_64-linux-gnu/jni:/lib/x86_64-linux-gnu:/usr/lib/x86_64-linux-gnu:/usr/lib/jni:/lib:/usr/lib"/>
    <property name="java.vm.info" value="mixed mode"/>
    <property name="java.vendor" value="Private Build"/>
    <property name="java.vm.version" value="25.482-b08"/>
    <property name="java.specification.maintenance.version" value="6"/>
    <property name="java.ext.dirs" value="/usr/lib/jvm/java-8-openjdk-amd64/jre/lib/ext:/usr/java/packages/lib/ext"/>
    <property name="sun.io.unicode.encoding" value="UnicodeLittle"/>
    <property name="java.class.version" value="52.0"/>
  </properties>
  <testcase name="crud(String, EntityPersister, ConnectionProvider)[1]" classname="org.codefilarete.stalactite.engine.FluentEntityMappingConfigurationSupportPolymorphismTest" time="0.003">
    <system-out><![CDATA[2026-05-19 05:31:23	DEBUG	DDLDeployer	create table AbstractVehicle(id int, model varchar(255), color int, DTYPE varchar(255) not null, unique (id))
2026-05-19 05:31:23	DEBUG	DDLDeployer	create table AbstractVehicle(id int not null, unique (id))
2026-05-19 05:31:23	DEBUG	DDLDeployer	create table Car(id int not null, model varchar(255), unique (id))
2026-05-19 05:31:23	DEBUG	DDLDeployer	create table Truck(id int not null, color int, unique (id))
2026-05-19 05:31:23	DEBUG	DDLDeployer	alter table Car add constraint FK_Car_id_AbstractVehicle_id foreign key(id) references AbstractVehicle(id)
2026-05-19 05:31:23	DEBUG	DDLDeployer	alter table Truck add constraint FK_Truck_id_AbstractVehicle_id foreign key(id) references AbstractVehicle(id)
2026-05-19 05:31:23	DEBUG	DDLDeployer	create table Car(id int not null, model varchar(255), unique (id))
2026-05-19 05:31:23	DEBUG	DDLDeployer	create table Truck(id int not null, color int, unique (id))
2026-05-19 05:31:23	DEBUG	SQLOperation	Batching statement 1 times
2026-05-19 05:31:23	TRACE	SQLOperation	insert into AbstractVehicle(id, model, DTYPE) values (?, ?, ?) | {1={AbstractVehicle.model=Renault, AbstractVehicle.id=o.c.s.i.PersistableIdentifier@1, AbstractVehicle.DTYPE=CAR}}
2026-05-19 05:31:23	DEBUG	SQLOperation	Batching statement 1 times
2026-05-19 05:31:23	TRACE	SQLOperation	insert into AbstractVehicle(id, color, DTYPE) values (?, ?, ?) | {1={AbstractVehicle.color=Color[rgb=42], AbstractVehicle.id=o.c.s.i.PersistableIdentifier@2, AbstractVehicle.DTYPE=TRUCK}}
2026-05-19 05:31:23	DEBUG	SQLOperation	Batching statement 1 times
2026-05-19 05:31:23	TRACE	SQLOperation	update AbstractVehicle set model = ? where id = ? | {1={AbstractVehicle.id (W)=o.c.s.i.PersistableIdentifier@1, AbstractVehicle.model (U)=Peugeot}}
2026-05-19 05:31:23	DEBUG	SQLOperation	Batching statement 1 times
2026-05-19 05:31:23	TRACE	SQLOperation	update AbstractVehicle set color = ? where id = ? | {1={AbstractVehicle.id (W)=o.c.s.i.PersistableIdentifier@2, AbstractVehicle.color (U)=Color[rgb=99]}}
2026-05-19 05:31:23	DEBUG	SQLOperation	Batching statement 1 times
2026-05-19 05:31:23	TRACE	SQLOperation	delete from AbstractVehicle where id = ? | {1={AbstractVehicle.id=o.c.s.i.PersistableIdentifier@1}}
2026-05-19 05:31:23	DEBUG	SQLOperation	Batching statement 1 times
2026-05-19 05:31:23	TRACE	SQLOperation	delete from AbstractVehicle where id = ? | {1={AbstractVehicle.id=o.c.s.i.PersistableIdentifier@2}}
2026-05-19 05:31:23	DEBUG	SQLOperation	Batching statement 1 times
2026-05-19 05:31:23	TRACE	SQLOperation	delete from AbstractVehicle where id = ? | {1={AbstractVehicle.id=o.c.s.i.PersistableIdentifier@1}}
2026-05-19 05:31:23	DEBUG	SQLOperation	Batching statement 1 times
2026-05-19 05:31:23	TRACE	SQLOperation	delete from AbstractVehicle where id = ? | {1={AbstractVehicle.id=o.c.s.i.PersistableIdentifier@2}}
2026-05-19 05:31:23	DEBUG	SingleTablePolymorphismPersister	selecting entities [o.c.s.i.PersistableIdentifier@2]
2026-05-19 05:31:23	DEBUG	SingleTablePolymorphismEntityFinder	Finding entities in a single query with criteria o.c.s.e.r.q.EntityCriteriaSupportcriteria=[AND AbstractVehicle.id In], hasCollectionCriteria=false, parent=null
2026-05-19 05:31:23	TRACE	SQLOperation	select AbstractVehicle.id as AbstractVehicle_id, AbstractVehicle.model as AbstractVehicle_model, AbstractVehicle.color as AbstractVehicle_color, AbstractVehicle.DTYPE as AbstractVehicle_DTYPE from AbstractVehicle where AbstractVehicle.id in (?) | {1=o.c.s.i.PersistableIdentifier@2}
2026-05-19 05:31:23	DEBUG	EntityTreeInflater	Creating instance with o.c.s.e.r.l.SingleTableRootJoinNode$SingleTablePolymorphicJoinRootRowConsumer
2026-05-19 05:31:23	DEBUG	SingleTablePolymorphismPersister	selecting entities [o.c.s.i.PersistableIdentifier@1]
2026-05-19 05:31:23	DEBUG	SingleTablePolymorphismEntityFinder	Finding entities in a single query with criteria o.c.s.e.r.q.EntityCriteriaSupportcriteria=[AND AbstractVehicle.id In], hasCollectionCriteria=false, parent=null
2026-05-19 05:31:23	TRACE	SQLOperation	select AbstractVehicle.id as AbstractVehicle_id, AbstractVehicle.model as AbstractVehicle_model, AbstractVehicle.color as AbstractVehicle_color, AbstractVehicle.DTYPE as AbstractVehicle_DTYPE from AbstractVehicle where AbstractVehicle.id in (?) | {1=o.c.s.i.PersistableIdentifier@1}
2026-05-19 05:31:23	DEBUG	EntityTreeInflater	Creating instance with o.c.s.e.r.l.SingleTableRootJoinNode$SingleTablePolymorphicJoinRootRowConsumer
2026-05-19 05:31:23	DEBUG	SingleTablePolymorphismPersister	selecting entities [o.c.s.i.PersistableIdentifier@1, o.c.s.i.PersistableIdentifier@2]
2026-05-19 05:31:23	DEBUG	SingleTablePolymorphismEntityFinder	Finding entities in a single query with criteria o.c.s.e.r.q.EntityCriteriaSupportcriteria=[AND AbstractVehicle.id In], hasCollectionCriteria=false, parent=null
2026-05-19 05:31:23	TRACE	SQLOperation	select AbstractVehicle.id as AbstractVehicle_id, AbstractVehicle.model as AbstractVehicle_model, AbstractVehicle.color as AbstractVehicle_color, AbstractVehicle.DTYPE as AbstractVehicle_DTYPE from AbstractVehicle where AbstractVehicle.id in (?, ?) | {1=o.c.s.i.PersistableIdentifier@1, 2=o.c.s.i.PersistableIdentifier@2}
2026-05-19 05:31:23	DEBUG	EntityTreeInflater	Creating instance with o.c.s.e.r.l.SingleTableRootJoinNode$SingleTablePolymorphicJoinRootRowConsumer
2026-05-19 05:31:23	DEBUG	EntityTreeInflater	Creating instance with o.c.s.e.r.l.SingleTableRootJoinNode$SingleTablePolymorphicJoinRootRowConsumer
]]></system-out>
  </testcase>
  <testcase name="crud(String, EntityPersister, ConnectionProvider)[2]" classname="org.codefilarete.stalactite.engine.FluentEntityMappingConfigurationSupportPolymorphismTest" time="0.005">
    <system-out><![CDATA[2026-05-19 05:31:23	DEBUG	SQLOperation	Batching statement 2 times
2026-05-19 05:31:23	TRACE	SQLOperation	insert into AbstractVehicle(id) values (?) | {1={AbstractVehicle.id=o.c.s.i.PersistableIdentifier@1}, 2={AbstractVehicle.id=o.c.s.i.PersistableIdentifier@2}}
2026-05-19 05:31:23	DEBUG	SQLOperation	Batching statement 1 times
2026-05-19 05:31:23	TRACE	SQLOperation	insert into Car(id, model) values (?, ?) | {1={Car.id=o.c.s.i.PersistableIdentifier@1, Car.model=Renault}}
2026-05-19 05:31:23	DEBUG	SQLOperation	Batching statement 1 times
2026-05-19 05:31:23	TRACE	SQLOperation	insert into Truck(id, color) values (?, ?) | {1={Truck.id=o.c.s.i.PersistableIdentifier@2, Truck.color=Color[rgb=42]}}
2026-05-19 05:31:23	DEBUG	SQLOperation	Batching statement 1 times
2026-05-19 05:31:23	TRACE	SQLOperation	update Car set model = ? where id = ? | {1={Car.id (W)=o.c.s.i.PersistableIdentifier@1, Car.model (U)=Peugeot}}
2026-05-19 05:31:23	DEBUG	SQLOperation	Batching statement 1 times
2026-05-19 05:31:23	TRACE	SQLOperation	update Truck set color = ? where id = ? | {1={Truck.id (W)=o.c.s.i.PersistableIdentifier@2, Truck.color (U)=Color[rgb=99]}}
2026-05-19 05:31:23	DEBUG	SQLOperation	Batching statement 1 times
2026-05-19 05:31:23	TRACE	SQLOperation	delete from Car where id = ? | {1={Car.id=o.c.s.i.PersistableIdentifier@1}}
2026-05-19 05:31:23	DEBUG	SQLOperation	Batching statement 1 times
2026-05-19 05:31:23	TRACE	SQLOperation	delete from AbstractVehicle where id = ? | {1={AbstractVehicle.id=o.c.s.i.PersistableIdentifier@1}}
2026-05-19 05:31:23	DEBUG	SQLOperation	Batching statement 1 times
2026-05-19 05:31:23	TRACE	SQLOperation	delete from Truck where id = ? | {1={Truck.id=o.c.s.i.PersistableIdentifier@2}}
2026-05-19 05:31:23	DEBUG	SQLOperation	Batching statement 1 times
2026-05-19 05:31:23	TRACE	SQLOperation	delete from AbstractVehicle where id = ? | {1={AbstractVehicle.id=o.c.s.i.PersistableIdentifier@2}}
2026-05-19 05:31:23	DEBUG	SQLOperation	Batching statement 1 times
2026-05-19 05:31:23	TRACE	SQLOperation	delete from Car where id = ? | {1={Car.id=o.c.s.i.PersistableIdentifier@1}}
2026-05-19 05:31:23	DEBUG	SQLOperation	Batching statement 1 times
2026-05-19 05:31:23	TRACE	SQLOperation	delete from Truck where id = ? | {1={Truck.id=o.c.s.i.PersistableIdentifier@2}}
2026-05-19 05:31:23	DEBUG	SQLOperation	Batching statement 2 times
2026-05-19 05:31:23	TRACE	SQLOperation	delete from AbstractVehicle where id = ? | {1={AbstractVehicle.id=o.c.s.i.PersistableIdentifier@1}, 2={AbstractVehicle.id=o.c.s.i.PersistableIdentifier@2}}
2026-05-19 05:31:23	DEBUG	JoinTablePolymorphismPersister	selecting entities [o.c.s.i.PersistableIdentifier@2]
2026-05-19 05:31:23	DEBUG	JoinTablePolymorphismEntityFinder	Finding entities in a single query with criteria o.c.s.e.r.q.EntityCriteriaSupportcriteria=[AND AbstractVehicle.id In], hasCollectionCriteria=false, parent=null
2026-05-19 05:31:23	TRACE	SQLOperation	select AbstractVehicle.id as AbstractVehicle_id, Truck.id as Truck_id, Truck.color as Truck_color, Car.id as Car_id, Car.model as Car_model from AbstractVehicle left outer join Truck as Truck on AbstractVehicle.id = Truck.id left outer join Car as Car on AbstractVehicle.id = Car.id where AbstractVehicle.id in (?) | {1=o.c.s.i.PersistableIdentifier@2}
2026-05-19 05:31:23	DEBUG	EntityTreeInflater	Creating instance with o.c.s.e.r.l.JoinTableRootJoinNode$JoinTablePolymorphicJoinRootRowConsumer
2026-05-19 05:31:23	DEBUG	JoinTableRootJoinNode$JoinTablePolymorphicJoinRootRowConsumer	Instantiating entity of type class org.codefilarete.stalactite.engine.model.Truck
2026-05-19 05:31:23	DEBUG	EntityTreeInflater	Consuming o.c.s.e.r.l.MergeJoinNode$MergeJoinRowConsumer on object o.c.s.e.m.Truck#o.c.s.i.PersistedIdentifier@2
2026-05-19 05:31:23	DEBUG	JoinTablePolymorphismPersister	selecting entities [o.c.s.i.PersistableIdentifier@1]
2026-05-19 05:31:23	DEBUG	JoinTablePolymorphismEntityFinder	Finding entities in a single query with criteria o.c.s.e.r.q.EntityCriteriaSupportcriteria=[AND AbstractVehicle.id In], hasCollectionCriteria=false, parent=null
2026-05-19 05:31:23	TRACE	SQLOperation	select AbstractVehicle.id as AbstractVehicle_id, Truck.id as Truck_id, Truck.color as Truck_color, Car.id as Car_id, Car.model as Car_model from AbstractVehicle left outer join Truck as Truck on AbstractVehicle.id = Truck.id left outer join Car as Car on AbstractVehicle.id = Car.id where AbstractVehicle.id in (?) | {1=o.c.s.i.PersistableIdentifier@1}
2026-05-19 05:31:23	DEBUG	EntityTreeInflater	Creating instance with o.c.s.e.r.l.JoinTableRootJoinNode$JoinTablePolymorphicJoinRootRowConsumer
2026-05-19 05:31:23	DEBUG	JoinTableRootJoinNode$JoinTablePolymorphicJoinRootRowConsumer	Instantiating entity of type class org.codefilarete.stalactite.engine.model.Car
2026-05-19 05:31:23	DEBUG	EntityTreeInflater	Consuming o.c.s.e.r.l.MergeJoinNode$MergeJoinRowConsumer on object o.c.s.e.m.Car#o.c.s.i.PersistedIdentifier@1
2026-05-19 05:31:23	DEBUG	JoinTablePolymorphismPersister	selecting entities [o.c.s.i.PersistableIdentifier@1, o.c.s.i.PersistableIdentifier@2]
2026-05-19 05:31:23	DEBUG	JoinTablePolymorphismEntityFinder	Finding entities in a single query with criteria o.c.s.e.r.q.EntityCriteriaSupportcriteria=[AND AbstractVehicle.id In], hasCollectionCriteria=false, parent=null
2026-05-19 05:31:23	TRACE	SQLOperation	select AbstractVehicle.id as AbstractVehicle_id, Truck.id as Truck_id, Truck.color as Truck_color, Car.id as Car_id, Car.model as Car_model from AbstractVehicle left outer join Truck as Truck on AbstractVehicle.id = Truck.id left outer join Car as Car on AbstractVehicle.id = Car.id where AbstractVehicle.id in (?, ?) | {1=o.c.s.i.PersistableIdentifier@1, 2=o.c.s.i.PersistableIdentifier@2}
2026-05-19 05:31:23	DEBUG	EntityTreeInflater	Creating instance with o.c.s.e.r.l.JoinTableRootJoinNode$JoinTablePolymorphicJoinRootRowConsumer
2026-05-19 05:31:23	DEBUG	JoinTableRootJoinNode$JoinTablePolymorphicJoinRootRowConsumer	Instantiating entity of type class org.codefilarete.stalactite.engine.model.Car
2026-05-19 05:31:23	DEBUG	EntityTreeInflater	Consuming o.c.s.e.r.l.MergeJoinNode$MergeJoinRowConsumer on object o.c.s.e.m.Car#o.c.s.i.PersistedIdentifier@1
2026-05-19 05:31:23	DEBUG	EntityTreeInflater	Creating instance with o.c.s.e.r.l.JoinTableRootJoinNode$JoinTablePolymorphicJoinRootRowConsumer
2026-05-19 05:31:23	DEBUG	JoinTableRootJoinNode$JoinTablePolymorphicJoinRootRowConsumer	Instantiating entity of type class org.codefilarete.stalactite.engine.model.Truck
2026-05-19 05:31:23	DEBUG	EntityTreeInflater	Consuming o.c.s.e.r.l.MergeJoinNode$MergeJoinRowConsumer on object o.c.s.e.m.Truck#o.c.s.i.PersistedIdentifier@2
]]></system-out>
  </testcase>
  <testcase name="crud(String, EntityPersister, ConnectionProvider)[3]" classname="org.codefilarete.stalactite.engine.FluentEntityMappingConfigurationSupportPolymorphismTest" time="0.005">
    <system-out><![CDATA[2026-05-19 05:31:23	DEBUG	SQLOperation	Batching statement 1 times
2026-05-19 05:31:23	TRACE	SQLOperation	insert into Car(id, model) values (?, ?) | {1={Car.model=Renault, Car.id=o.c.s.i.PersistableIdentifier@1}}
2026-05-19 05:31:23	DEBUG	SQLOperation	Batching statement 1 times
2026-05-19 05:31:23	TRACE	SQLOperation	insert into Truck(id, color) values (?, ?) | {1={Truck.id=o.c.s.i.PersistableIdentifier@2, Truck.color=Color[rgb=42]}}
2026-05-19 05:31:23	DEBUG	SQLOperation	Batching statement 1 times
2026-05-19 05:31:23	TRACE	SQLOperation	update Car set model = ? where id = ? | {1={Car.model (U)=Peugeot, Car.id (W)=o.c.s.i.PersistableIdentifier@1}}
2026-05-19 05:31:23	DEBUG	SQLOperation	Batching statement 1 times
2026-05-19 05:31:23	TRACE	SQLOperation	update Truck set color = ? where id = ? | {1={Truck.color (U)=Color[rgb=99], Truck.id (W)=o.c.s.i.PersistableIdentifier@2}}
2026-05-19 05:31:23	DEBUG	SQLOperation	Batching statement 1 times
2026-05-19 05:31:23	TRACE	SQLOperation	delete from Car where id = ? | {1={Car.id=o.c.s.i.PersistableIdentifier@1}}
2026-05-19 05:31:23	DEBUG	SQLOperation	Batching statement 1 times
2026-05-19 05:31:23	TRACE	SQLOperation	delete from Truck where id = ? | {1={Truck.id=o.c.s.i.PersistableIdentifier@2}}
2026-05-19 05:31:23	DEBUG	SQLOperation	Batching statement 1 times
2026-05-19 05:31:23	TRACE	SQLOperation	delete from Car where id = ? | {1={Car.id=o.c.s.i.PersistableIdentifier@1}}
2026-05-19 05:31:23	DEBUG	SQLOperation	Batching statement 1 times
2026-05-19 05:31:23	TRACE	SQLOperation	delete from Truck where id = ? | {1={Truck.id=o.c.s.i.PersistableIdentifier@2}}
2026-05-19 05:31:23	DEBUG	TablePerClassPolymorphismPersister	selecting entities [o.c.s.i.PersistableIdentifier@2]
2026-05-19 05:31:23	DEBUG	TablePerClassPolymorphismEntityFinder	Finding entities in a single query with criteria o.c.s.e.r.q.EntityCriteriaSupportcriteria=[AND org.codefilarete.stalactite.query.api.QueryStatement$PseudoColumn@4515e118 In], hasCollectionCriteria=false, parent=null
2026-05-19 05:31:23	TRACE	SQLOperation	select AbstractVehicle.id as AbstractVehicle_id, AbstractVehicle.DISCRIMINATOR as AbstractVehicle_DISCRIMINATOR, Car.id as Car_id, Car.model as Car_model, Truck.id as Truck_id, Truck.color as Truck_color from (select Truck.id as id, 'Truck' as DISCRIMINATOR from Truck union all select Car.id as id, 'Car' as DISCRIMINATOR from Car) as AbstractVehicle left outer join Car as Car on AbstractVehicle.id = Car.id left outer join Truck as Truck on AbstractVehicle.id = Truck.id where AbstractVehicle.id in (?) | {1=o.c.s.i.PersistableIdentifier@2}
2026-05-19 05:31:23	DEBUG	EntityTreeInflater	Creating instance with o.c.s.e.r.l.TablePerClassRootJoinNode$TablePerClassPolymorphicJoinRootRowConsumer
2026-05-19 05:31:23	DEBUG	EntityTreeInflater	Consuming o.c.s.e.r.l.MergeJoinNode$MergeJoinRowConsumer on object o.c.s.e.m.Truck#o.c.s.i.PersistedIdentifier@2
2026-05-19 05:31:23	DEBUG	TablePerClassPolymorphismPersister	selecting entities [o.c.s.i.PersistableIdentifier@1]
2026-05-19 05:31:23	DEBUG	TablePerClassPolymorphismEntityFinder	Finding entities in a single query with criteria o.c.s.e.r.q.EntityCriteriaSupportcriteria=[AND org.codefilarete.stalactite.query.api.QueryStatement$PseudoColumn@4515e118 In], hasCollectionCriteria=false, parent=null
2026-05-19 05:31:23	TRACE	SQLOperation	select AbstractVehicle.id as AbstractVehicle_id, AbstractVehicle.DISCRIMINATOR as AbstractVehicle_DISCRIMINATOR, Car.id as Car_id, Car.model as Car_model, Truck.id as Truck_id, Truck.color as Truck_color from (select Truck.id as id, 'Truck' as DISCRIMINATOR from Truck union all select Car.id as id, 'Car' as DISCRIMINATOR from Car) as AbstractVehicle left outer join Car as Car on AbstractVehicle.id = Car.id left outer join Truck as Truck on AbstractVehicle.id = Truck.id where AbstractVehicle.id in (?) | {1=o.c.s.i.PersistableIdentifier@1}
2026-05-19 05:31:23	DEBUG	EntityTreeInflater	Creating instance with o.c.s.e.r.l.TablePerClassRootJoinNode$TablePerClassPolymorphicJoinRootRowConsumer
2026-05-19 05:31:23	DEBUG	EntityTreeInflater	Consuming o.c.s.e.r.l.MergeJoinNode$MergeJoinRowConsumer on object o.c.s.e.m.Car#o.c.s.i.PersistedIdentifier@1
2026-05-19 05:31:23	DEBUG	TablePerClassPolymorphismPersister	selecting entities [o.c.s.i.PersistableIdentifier@1, o.c.s.i.PersistableIdentifier@2]
2026-05-19 05:31:23	DEBUG	TablePerClassPolymorphismEntityFinder	Finding entities in a single query with criteria o.c.s.e.r.q.EntityCriteriaSupportcriteria=[AND org.codefilarete.stalactite.query.api.QueryStatement$PseudoColumn@4515e118 In], hasCollectionCriteria=false, parent=null
2026-05-19 05:31:23	TRACE	SQLOperation	select AbstractVehicle.id as AbstractVehicle_id, AbstractVehicle.DISCRIMINATOR as AbstractVehicle_DISCRIMINATOR, Car.id as Car_id, Car.model as Car_model, Truck.id as Truck_id, Truck.color as Truck_color from (select Truck.id as id, 'Truck' as DISCRIMINATOR from Truck union all select Car.id as id, 'Car' as DISCRIMINATOR from Car) as AbstractVehicle left outer join Car as Car on AbstractVehicle.id = Car.id left outer join Truck as Truck on AbstractVehicle.id = Truck.id where AbstractVehicle.id in (?, ?) | {1=o.c.s.i.PersistableIdentifier@1, 2=o.c.s.i.PersistableIdentifier@2}
2026-05-19 05:31:23	DEBUG	EntityTreeInflater	Creating instance with o.c.s.e.r.l.TablePerClassRootJoinNode$TablePerClassPolymorphicJoinRootRowConsumer
2026-05-19 05:31:23	DEBUG	EntityTreeInflater	Consuming o.c.s.e.r.l.MergeJoinNode$MergeJoinRowConsumer on object o.c.s.e.m.Car#o.c.s.i.PersistedIdentifier@1
2026-05-19 05:31:23	DEBUG	EntityTreeInflater	Creating instance with o.c.s.e.r.l.TablePerClassRootJoinNode$TablePerClassPolymorphicJoinRootRowConsumer
2026-05-19 05:31:23	DEBUG	EntityTreeInflater	Consuming o.c.s.e.r.l.MergeJoinNode$MergeJoinRowConsumer on object o.c.s.e.m.Truck#o.c.s.i.PersistedIdentifier@2
]]></system-out>
  </testcase>
  <testcase name="twoSubClasses" classname="org.codefilarete.stalactite.engine.FluentEntityMappingConfigurationSupportPolymorphismTest$TablePerClass" time="0.013">
    <system-out><![CDATA[2026-05-19 05:31:23	DEBUG	DDLDeployer	create table Car(model varchar(255), color int, id int not null, unique (id))
2026-05-19 05:31:23	DEBUG	DDLDeployer	create table Truck(color int, id int not null, unique (id))
2026-05-19 05:31:23	DEBUG	SQLOperation	Batching statement 1 times
2026-05-19 05:31:23	TRACE	SQLOperation	insert into Car(model, color, id) values (?, ?, ?) | {1={Car.color=Color[rgb=666], Car.id=o.c.s.i.PersistableIdentifier@1, Car.model=Renault}}
2026-05-19 05:31:23	DEBUG	SQLOperation	Batching statement 1 times
2026-05-19 05:31:23	TRACE	SQLOperation	insert into Truck(color, id) values (?, ?) | {1={Truck.id=o.c.s.i.PersistableIdentifier@2, Truck.color=Color[rgb=42]}}
2026-05-19 05:31:23	TRACE	SQLOperation	select id from car | {}
2026-05-19 05:31:23	TRACE	SQLOperation	select id from truck | {}
2026-05-19 05:31:23	DEBUG	TablePerClassPolymorphismPersister	selecting entities [o.c.s.i.PersistableIdentifier@1]
2026-05-19 05:31:23	DEBUG	TablePerClassPolymorphismEntityFinder	Finding entities in a single query with criteria o.c.s.e.r.q.EntityCriteriaSupportcriteria=[AND org.codefilarete.stalactite.query.api.QueryStatement$PseudoColumn@73d015bd In], hasCollectionCriteria=false, parent=null
2026-05-19 05:31:23	TRACE	SQLOperation	select AbstractVehicle.id as AbstractVehicle_id, AbstractVehicle.DISCRIMINATOR as AbstractVehicle_DISCRIMINATOR, Car.model as Car_model, Car.color as Car_color, Car.id as Car_id, Truck.color as Truck_color, Truck.id as Truck_id from (select Truck.id as id, 'Truck' as DISCRIMINATOR from Truck union all select Car.id as id, 'Car' as DISCRIMINATOR from Car) as AbstractVehicle left outer join Car as Car on AbstractVehicle.id = Car.id left outer join Truck as Truck on AbstractVehicle.id = Truck.id where AbstractVehicle.id in (?) | {1=o.c.s.i.PersistableIdentifier@1}
2026-05-19 05:31:23	DEBUG	EntityTreeInflater	Creating instance with o.c.s.e.r.l.TablePerClassRootJoinNode$TablePerClassPolymorphicJoinRootRowConsumer
2026-05-19 05:31:23	DEBUG	EntityTreeInflater	Consuming o.c.s.e.r.l.MergeJoinNode$MergeJoinRowConsumer on object o.c.s.e.m.Car#o.c.s.i.PersistedIdentifier@1
2026-05-19 05:31:23	DEBUG	SQLOperation	Batching statement 1 times
2026-05-19 05:31:23	TRACE	SQLOperation	update Car set model = ?, color = ? where id = ? | {1={Car.color (U)=Color[rgb=666], Car.id (W)=o.c.s.i.PersistedIdentifier@1, Car.model (U)=Peugeot}}
2026-05-19 05:31:23	DEBUG	TablePerClassPolymorphismPersister	selecting entities [o.c.s.i.PersistedIdentifier@1]
2026-05-19 05:31:23	DEBUG	TablePerClassPolymorphismEntityFinder	Finding entities in a single query with criteria o.c.s.e.r.q.EntityCriteriaSupportcriteria=[AND org.codefilarete.stalactite.query.api.QueryStatement$PseudoColumn@73d015bd In], hasCollectionCriteria=false, parent=null
2026-05-19 05:31:23	TRACE	SQLOperation	select AbstractVehicle.id as AbstractVehicle_id, AbstractVehicle.DISCRIMINATOR as AbstractVehicle_DISCRIMINATOR, Car.model as Car_model, Car.color as Car_color, Car.id as Car_id, Truck.color as Truck_color, Truck.id as Truck_id from (select Truck.id as id, 'Truck' as DISCRIMINATOR from Truck union all select Car.id as id, 'Car' as DISCRIMINATOR from Car) as AbstractVehicle left outer join Car as Car on AbstractVehicle.id = Car.id left outer join Truck as Truck on AbstractVehicle.id = Truck.id where AbstractVehicle.id in (?) | {1=o.c.s.i.PersistedIdentifier@1}
2026-05-19 05:31:23	DEBUG	EntityTreeInflater	Creating instance with o.c.s.e.r.l.TablePerClassRootJoinNode$TablePerClassPolymorphicJoinRootRowConsumer
2026-05-19 05:31:23	DEBUG	EntityTreeInflater	Consuming o.c.s.e.r.l.MergeJoinNode$MergeJoinRowConsumer on object o.c.s.e.m.Car#o.c.s.i.PersistedIdentifier@1
2026-05-19 05:31:23	DEBUG	TablePerClassPolymorphismPersister	selecting entities [o.c.s.i.PersistedIdentifier@2]
2026-05-19 05:31:23	DEBUG	TablePerClassPolymorphismEntityFinder	Finding entities in a single query with criteria o.c.s.e.r.q.EntityCriteriaSupportcriteria=[AND org.codefilarete.stalactite.query.api.QueryStatement$PseudoColumn@73d015bd In], hasCollectionCriteria=false, parent=null
2026-05-19 05:31:23	TRACE	SQLOperation	select AbstractVehicle.id as AbstractVehicle_id, AbstractVehicle.DISCRIMINATOR as AbstractVehicle_DISCRIMINATOR, Car.model as Car_model, Car.color as Car_color, Car.id as Car_id, Truck.color as Truck_color, Truck.id as Truck_id from (select Truck.id as id, 'Truck' as DISCRIMINATOR from Truck union all select Car.id as id, 'Car' as DISCRIMINATOR from Car) as AbstractVehicle left outer join Car as Car on AbstractVehicle.id = Car.id left outer join Truck as Truck on AbstractVehicle.id = Truck.id where AbstractVehicle.id in (?) | {1=o.c.s.i.PersistedIdentifier@2}
2026-05-19 05:31:23	DEBUG	EntityTreeInflater	Creating instance with o.c.s.e.r.l.TablePerClassRootJoinNode$TablePerClassPolymorphicJoinRootRowConsumer
2026-05-19 05:31:23	DEBUG	EntityTreeInflater	Consuming o.c.s.e.r.l.MergeJoinNode$MergeJoinRowConsumer on object o.c.s.e.m.Truck#o.c.s.i.PersistedIdentifier@2
2026-05-19 05:31:23	DEBUG	TablePerClassPolymorphismEntityFinder	Finding entities in a single query with criteria o.c.s.e.r.q.EntityCriteriaSupportcriteria=[], hasCollectionCriteria=false, parent=null
2026-05-19 05:31:23	TRACE	SQLOperation	select AbstractVehicle.id as AbstractVehicle_id, AbstractVehicle.DISCRIMINATOR as AbstractVehicle_DISCRIMINATOR, Car.model as Car_model, Car.color as Car_color, Car.id as Car_id, Truck.color as Truck_color, Truck.id as Truck_id from (select Truck.id as id, 'Truck' as DISCRIMINATOR from Truck union all select Car.id as id, 'Car' as DISCRIMINATOR from Car) as AbstractVehicle left outer join Car as Car on AbstractVehicle.id = Car.id left outer join Truck as Truck on AbstractVehicle.id = Truck.id | {}
2026-05-19 05:31:23	DEBUG	EntityTreeInflater	Creating instance with o.c.s.e.r.l.TablePerClassRootJoinNode$TablePerClassPolymorphicJoinRootRowConsumer
2026-05-19 05:31:23	DEBUG	EntityTreeInflater	Consuming o.c.s.e.r.l.MergeJoinNode$MergeJoinRowConsumer on object o.c.s.e.m.Truck#o.c.s.i.PersistedIdentifier@2
2026-05-19 05:31:23	DEBUG	EntityTreeInflater	Creating instance with o.c.s.e.r.l.TablePerClassRootJoinNode$TablePerClassPolymorphicJoinRootRowConsumer
2026-05-19 05:31:23	DEBUG	EntityTreeInflater	Consuming o.c.s.e.r.l.MergeJoinNode$MergeJoinRowConsumer on object o.c.s.e.m.Car#o.c.s.i.PersistedIdentifier@1
2026-05-19 05:31:23	DEBUG	SQLOperation	Batching statement 1 times
2026-05-19 05:31:23	TRACE	SQLOperation	delete from Car where id = ? | {1={Car.id=o.c.s.i.PersistableIdentifier@1}}
2026-05-19 05:31:23	DEBUG	SQLOperation	Batching statement 1 times
2026-05-19 05:31:23	TRACE	SQLOperation	delete from Truck where id = ? | {1={Truck.id=o.c.s.i.PersistableIdentifier@2}}
2026-05-19 05:31:23	TRACE	SQLOperation	select count(*) as carCount from car where id = 1 | {}
2026-05-19 05:31:23	TRACE	SQLOperation	select count(*) as truckCount from car where id = 2 | {}
]]></system-out>
  </testcase>
  <testcase name="oneSubClass" classname="org.codefilarete.stalactite.engine.FluentEntityMappingConfigurationSupportPolymorphismTest$TablePerClass" time="0.009">
    <system-out><![CDATA[2026-05-19 05:31:23	DEBUG	DDLDeployer	create table Car(model varchar(255), color int, id int not null, unique (id))
2026-05-19 05:31:23	DEBUG	SQLOperation	Batching statement 1 times
2026-05-19 05:31:23	TRACE	SQLOperation	insert into Car(model, color, id) values (?, ?, ?) | {1={Car.color=Color[rgb=666], Car.id=o.c.s.i.PersistableIdentifier@1, Car.model=Renault}}
2026-05-19 05:31:23	TRACE	SQLOperation	select * from car | {}
2026-05-19 05:31:23	DEBUG	TablePerClassPolymorphismPersister	selecting entities [o.c.s.i.PersistableIdentifier@1]
2026-05-19 05:31:23	DEBUG	TablePerClassPolymorphismEntityFinder	Finding entities in a single query with criteria o.c.s.e.r.q.EntityCriteriaSupportcriteria=[AND org.codefilarete.stalactite.query.api.QueryStatement$PseudoColumn@4d2ef55e In], hasCollectionCriteria=false, parent=null
2026-05-19 05:31:23	TRACE	SQLOperation	select AbstractVehicle.id as AbstractVehicle_id, AbstractVehicle.DISCRIMINATOR as AbstractVehicle_DISCRIMINATOR, Car.model as Car_model, Car.color as Car_color, Car.id as Car_id from (select Car.id as id, 'Car' as DISCRIMINATOR from Car) as AbstractVehicle left outer join Car as Car on AbstractVehicle.id = Car.id where AbstractVehicle.id in (?) | {1=o.c.s.i.PersistableIdentifier@1}
2026-05-19 05:31:23	DEBUG	EntityTreeInflater	Creating instance with o.c.s.e.r.l.TablePerClassRootJoinNode$TablePerClassPolymorphicJoinRootRowConsumer
2026-05-19 05:31:23	DEBUG	EntityTreeInflater	Consuming o.c.s.e.r.l.MergeJoinNode$MergeJoinRowConsumer on object o.c.s.e.m.Car#o.c.s.i.PersistedIdentifier@1
2026-05-19 05:31:23	DEBUG	SQLOperation	Batching statement 1 times
2026-05-19 05:31:23	TRACE	SQLOperation	update Car set model = ?, color = ? where id = ? | {1={Car.color (U)=Color[rgb=666], Car.id (W)=o.c.s.i.PersistedIdentifier@1, Car.model (U)=Peugeot}}
2026-05-19 05:31:23	TRACE	SQLOperation	select * from car | {}
2026-05-19 05:31:23	DEBUG	TablePerClassPolymorphismPersister	selecting entities [o.c.s.i.PersistedIdentifier@1]
2026-05-19 05:31:23	DEBUG	TablePerClassPolymorphismEntityFinder	Finding entities in a single query with criteria o.c.s.e.r.q.EntityCriteriaSupportcriteria=[AND org.codefilarete.stalactite.query.api.QueryStatement$PseudoColumn@4d2ef55e In], hasCollectionCriteria=false, parent=null
2026-05-19 05:31:23	TRACE	SQLOperation	select AbstractVehicle.id as AbstractVehicle_id, AbstractVehicle.DISCRIMINATOR as AbstractVehicle_DISCRIMINATOR, Car.model as Car_model, Car.color as Car_color, Car.id as Car_id from (select Car.id as id, 'Car' as DISCRIMINATOR from Car) as AbstractVehicle left outer join Car as Car on AbstractVehicle.id = Car.id where AbstractVehicle.id in (?) | {1=o.c.s.i.PersistedIdentifier@1}
2026-05-19 05:31:23	DEBUG	EntityTreeInflater	Creating instance with o.c.s.e.r.l.TablePerClassRootJoinNode$TablePerClassPolymorphicJoinRootRowConsumer
2026-05-19 05:31:23	DEBUG	EntityTreeInflater	Consuming o.c.s.e.r.l.MergeJoinNode$MergeJoinRowConsumer on object o.c.s.e.m.Car#o.c.s.i.PersistedIdentifier@1
2026-05-19 05:31:23	DEBUG	SQLOperation	Batching statement 1 times
2026-05-19 05:31:23	TRACE	SQLOperation	delete from Car where id = ? | {1={Car.id=o.c.s.i.PersistableIdentifier@1}}
2026-05-19 05:31:23	TRACE	SQLOperation	select * from car | {}
]]></system-out>
  </testcase>
  <testcase name="twoSubClasses_withReadonlyProperty" classname="org.codefilarete.stalactite.engine.FluentEntityMappingConfigurationSupportPolymorphismTest$TablePerClass" time="0.007">
    <system-out><![CDATA[2026-05-19 05:31:23	DEBUG	DDLDeployer	create table Car(model varchar(255), color int, id int not null, unique (id))
2026-05-19 05:31:23	DEBUG	DDLDeployer	create table Truck(color int, id int not null, unique (id))
2026-05-19 05:31:23	DEBUG	SQLOperation	Batching statement 1 times
2026-05-19 05:31:23	TRACE	SQLOperation	insert into Car(color, id) values (?, ?) | {1={Car.color=Color[rgb=666], Car.id=o.c.s.i.PersistableIdentifier@1}}
2026-05-19 05:31:23	DEBUG	SQLOperation	Batching statement 1 times
2026-05-19 05:31:23	TRACE	SQLOperation	insert into Truck(color, id) values (?, ?) | {1={Truck.color=Color[rgb=42], Truck.id=o.c.s.i.PersistableIdentifier@2}}
2026-05-19 05:31:23	TRACE	SQLOperation	select model from Car | {}
]]></system-out>
  </testcase>
  <testcase name="listenersAreNotified" classname="org.codefilarete.stalactite.engine.FluentEntityMappingConfigurationSupportPolymorphismTest$TablePerClass" time="0.01">
    <system-out><![CDATA[2026-05-19 05:31:23	DEBUG	DDLDeployer	create table Car(id int not null, model varchar(255), color int, unique (id))
2026-05-19 05:31:23	DEBUG	SQLOperation	Batching statement 1 times
2026-05-19 05:31:23	TRACE	SQLOperation	insert into Car(id, model, color) values (?, ?, ?) | {1={Car.model=Renault, Car.id=o.c.s.i.PersistableIdentifier@1, Car.color=Color[rgb=666]}}
2026-05-19 05:31:23	DEBUG	SQLOperation	Batching statement 1 times
2026-05-19 05:31:23	TRACE	SQLOperation	delete from Car where id = ? | {1={Car.id=o.c.s.i.PersistableIdentifier@1}}
2026-05-19 05:31:23	DEBUG	SQLOperation	Batching statement 1 times
2026-05-19 05:31:23	TRACE	SQLOperation	insert into Car(id, model, color) values (?, ?, ?) | {1={Car.model=Renault, Car.id=o.c.s.i.PersistableIdentifier@1, Car.color=Color[rgb=666]}}
2026-05-19 05:31:23	DEBUG	TablePerClassPolymorphismPersister	selecting entities [o.c.s.i.PersistableIdentifier@1]
2026-05-19 05:31:23	DEBUG	TablePerClassPolymorphismEntityFinder	Finding entities in a single query with criteria o.c.s.e.r.q.EntityCriteriaSupportcriteria=[AND org.codefilarete.stalactite.query.api.QueryStatement$PseudoColumn@53395765 In], hasCollectionCriteria=false, parent=null
2026-05-19 05:31:23	TRACE	SQLOperation	select AbstractVehicle.id as AbstractVehicle_id, AbstractVehicle.DISCRIMINATOR as AbstractVehicle_DISCRIMINATOR, Car.id as Car_id, Car.model as Car_model, Car.color as Car_color from (select Car.id as id, 'Car' as DISCRIMINATOR from Car) as AbstractVehicle left outer join Car as Car on AbstractVehicle.id = Car.id where AbstractVehicle.id in (?) | {1=o.c.s.i.PersistableIdentifier@1}
2026-05-19 05:31:23	DEBUG	EntityTreeInflater	Creating instance with o.c.s.e.r.l.TablePerClassRootJoinNode$TablePerClassPolymorphicJoinRootRowConsumer
2026-05-19 05:31:23	DEBUG	EntityTreeInflater	Consuming o.c.s.e.r.l.MergeJoinNode$MergeJoinRowConsumer on object o.c.s.e.m.Car#o.c.s.i.PersistedIdentifier@1
2026-05-19 05:31:23	DEBUG	SQLOperation	Batching statement 1 times
2026-05-19 05:31:23	TRACE	SQLOperation	update Car set model = ?, color = ? where id = ? | {1={Car.model (U)=Peugeot, Car.id (W)=o.c.s.i.PersistedIdentifier@1, Car.color (U)=Color[rgb=666]}}
2026-05-19 05:31:23	DEBUG	TablePerClassPolymorphismPersister	selecting entities [o.c.s.i.PersistedIdentifier@1]
2026-05-19 05:31:23	DEBUG	TablePerClassPolymorphismEntityFinder	Finding entities in a single query with criteria o.c.s.e.r.q.EntityCriteriaSupportcriteria=[AND org.codefilarete.stalactite.query.api.QueryStatement$PseudoColumn@53395765 In], hasCollectionCriteria=false, parent=null
2026-05-19 05:31:23	TRACE	SQLOperation	select AbstractVehicle.id as AbstractVehicle_id, AbstractVehicle.DISCRIMINATOR as AbstractVehicle_DISCRIMINATOR, Car.id as Car_id, Car.model as Car_model, Car.color as Car_color from (select Car.id as id, 'Car' as DISCRIMINATOR from Car) as AbstractVehicle left outer join Car as Car on AbstractVehicle.id = Car.id where AbstractVehicle.id in (?) | {1=o.c.s.i.PersistedIdentifier@1}
2026-05-19 05:31:23	DEBUG	EntityTreeInflater	Creating instance with o.c.s.e.r.l.TablePerClassRootJoinNode$TablePerClassPolymorphicJoinRootRowConsumer
2026-05-19 05:31:23	DEBUG	EntityTreeInflater	Consuming o.c.s.e.r.l.MergeJoinNode$MergeJoinRowConsumer on object o.c.s.e.m.Car#o.c.s.i.PersistedIdentifier@1
]]></system-out>
  </testcase>
  <testcase name="twoSubClasses_withCommonProperties" classname="org.codefilarete.stalactite.engine.FluentEntityMappingConfigurationSupportPolymorphismTest$TablePerClass" time="0.013">
    <system-out><![CDATA[2026-05-19 05:31:23	DEBUG	DDLDeployer	create table Car(model varchar(255), id int not null, color int, unique (id))
2026-05-19 05:31:23	DEBUG	DDLDeployer	create table Truck(id int not null, color int, unique (id))
2026-05-19 05:31:23	DEBUG	SQLOperation	Batching statement 1 times
2026-05-19 05:31:23	TRACE	SQLOperation	insert into Car(model, color, id) values (?, ?, ?) | {1={Car.model=Renault, Car.color=Color[rgb=666], Car.id=o.c.s.i.PersistableIdentifier@1}}
2026-05-19 05:31:23	DEBUG	SQLOperation	Batching statement 1 times
2026-05-19 05:31:23	TRACE	SQLOperation	insert into Truck(color, id) values (?, ?) | {1={Truck.color=Color[rgb=42], Truck.id=o.c.s.i.PersistableIdentifier@2}}
2026-05-19 05:31:23	TRACE	SQLOperation	select id from car | {}
2026-05-19 05:31:23	TRACE	SQLOperation	select id from truck | {}
2026-05-19 05:31:23	DEBUG	TablePerClassPolymorphismPersister	selecting entities [o.c.s.i.PersistableIdentifier@1]
2026-05-19 05:31:23	DEBUG	TablePerClassPolymorphismEntityFinder	Finding entities in a single query with criteria o.c.s.e.r.q.EntityCriteriaSupportcriteria=[AND org.codefilarete.stalactite.query.api.QueryStatement$PseudoColumn@5204f2e3 In], hasCollectionCriteria=false, parent=null
2026-05-19 05:31:23	TRACE	SQLOperation	select Vehicle.color as Vehicle_color, Vehicle.id as Vehicle_id, Vehicle.DISCRIMINATOR as Vehicle_DISCRIMINATOR, Car.model as Car_model, Car.color as Car_color, Car.id as Car_id, Truck.color as Truck_color, Truck.id as Truck_id from (select Truck.color as color, Truck.id as id, 'Truck' as DISCRIMINATOR from Truck union all select Car.color as color, Car.id as id, 'Car' as DISCRIMINATOR from Car) as Vehicle left outer join Car as Car on Vehicle.id = Car.id left outer join Truck as Truck on Vehicle.id = Truck.id where Vehicle.id in (?) | {1=o.c.s.i.PersistableIdentifier@1}
2026-05-19 05:31:23	DEBUG	EntityTreeInflater	Creating instance with o.c.s.e.r.l.TablePerClassRootJoinNode$TablePerClassPolymorphicJoinRootRowConsumer
2026-05-19 05:31:23	DEBUG	EntityTreeInflater	Consuming o.c.s.e.r.l.MergeJoinNode$MergeJoinRowConsumer on object o.c.s.e.m.Car#o.c.s.i.PersistedIdentifier@1
2026-05-19 05:31:23	DEBUG	SQLOperation	Batching statement 1 times
2026-05-19 05:31:23	TRACE	SQLOperation	update Car set model = ?, color = ? where id = ? | {1={Car.model (U)=Peugeot, Car.color (U)=Color[rgb=666], Car.id (W)=o.c.s.i.PersistedIdentifier@1}}
2026-05-19 05:31:23	DEBUG	TablePerClassPolymorphismPersister	selecting entities [o.c.s.i.PersistedIdentifier@1]
2026-05-19 05:31:23	DEBUG	TablePerClassPolymorphismEntityFinder	Finding entities in a single query with criteria o.c.s.e.r.q.EntityCriteriaSupportcriteria=[AND org.codefilarete.stalactite.query.api.QueryStatement$PseudoColumn@5204f2e3 In], hasCollectionCriteria=false, parent=null
2026-05-19 05:31:23	TRACE	SQLOperation	select Vehicle.color as Vehicle_color, Vehicle.id as Vehicle_id, Vehicle.DISCRIMINATOR as Vehicle_DISCRIMINATOR, Car.model as Car_model, Car.color as Car_color, Car.id as Car_id, Truck.color as Truck_color, Truck.id as Truck_id from (select Truck.color as color, Truck.id as id, 'Truck' as DISCRIMINATOR from Truck union all select Car.color as color, Car.id as id, 'Car' as DISCRIMINATOR from Car) as Vehicle left outer join Car as Car on Vehicle.id = Car.id left outer join Truck as Truck on Vehicle.id = Truck.id where Vehicle.id in (?) | {1=o.c.s.i.PersistedIdentifier@1}
2026-05-19 05:31:23	DEBUG	EntityTreeInflater	Creating instance with o.c.s.e.r.l.TablePerClassRootJoinNode$TablePerClassPolymorphicJoinRootRowConsumer
2026-05-19 05:31:23	DEBUG	EntityTreeInflater	Consuming o.c.s.e.r.l.MergeJoinNode$MergeJoinRowConsumer on object o.c.s.e.m.Car#o.c.s.i.PersistedIdentifier@1
2026-05-19 05:31:23	DEBUG	TablePerClassPolymorphismPersister	selecting entities [o.c.s.i.PersistedIdentifier@2]
2026-05-19 05:31:23	DEBUG	TablePerClassPolymorphismEntityFinder	Finding entities in a single query with criteria o.c.s.e.r.q.EntityCriteriaSupportcriteria=[AND org.codefilarete.stalactite.query.api.QueryStatement$PseudoColumn@5204f2e3 In], hasCollectionCriteria=false, parent=null
2026-05-19 05:31:23	TRACE	SQLOperation	select Vehicle.color as Vehicle_color, Vehicle.id as Vehicle_id, Vehicle.DISCRIMINATOR as Vehicle_DISCRIMINATOR, Car.model as Car_model, Car.color as Car_color, Car.id as Car_id, Truck.color as Truck_color, Truck.id as Truck_id from (select Truck.color as color, Truck.id as id, 'Truck' as DISCRIMINATOR from Truck union all select Car.color as color, Car.id as id, 'Car' as DISCRIMINATOR from Car) as Vehicle left outer join Car as Car on Vehicle.id = Car.id left outer join Truck as Truck on Vehicle.id = Truck.id where Vehicle.id in (?) | {1=o.c.s.i.PersistedIdentifier@2}
2026-05-19 05:31:23	DEBUG	EntityTreeInflater	Creating instance with o.c.s.e.r.l.TablePerClassRootJoinNode$TablePerClassPolymorphicJoinRootRowConsumer
2026-05-19 05:31:23	DEBUG	EntityTreeInflater	Consuming o.c.s.e.r.l.MergeJoinNode$MergeJoinRowConsumer on object o.c.s.e.m.Truck#o.c.s.i.PersistedIdentifier@2
2026-05-19 05:31:23	DEBUG	TablePerClassPolymorphismEntityFinder	Finding entities in a single query with criteria o.c.s.e.r.q.EntityCriteriaSupportcriteria=[AND org.codefilarete.stalactite.query.api.QueryStatement$PseudoColumn@18aa15d7 Equals], hasCollectionCriteria=false, parent=null
2026-05-19 05:31:23	TRACE	SQLOperation	select Vehicle.color as Vehicle_color, Vehicle.id as Vehicle_id, Vehicle.DISCRIMINATOR as Vehicle_DISCRIMINATOR, Car.model as Car_model, Car.color as Car_color, Car.id as Car_id, Truck.color as Truck_color, Truck.id as Truck_id from (select Truck.color as color, Truck.id as id, 'Truck' as DISCRIMINATOR from Truck union all select Car.color as color, Car.id as id, 'Car' as DISCRIMINATOR from Car) as Vehicle left outer join Car as Car on Vehicle.id = Car.id left outer join Truck as Truck on Vehicle.id = Truck.id where Vehicle.color = ? | {1=Color[rgb=42]}
2026-05-19 05:31:23	DEBUG	EntityTreeInflater	Creating instance with o.c.s.e.r.l.TablePerClassRootJoinNode$TablePerClassPolymorphicJoinRootRowConsumer
2026-05-19 05:31:23	DEBUG	EntityTreeInflater	Consuming o.c.s.e.r.l.MergeJoinNode$MergeJoinRowConsumer on object o.c.s.e.m.Truck#o.c.s.i.PersistedIdentifier@2
2026-05-19 05:31:23	DEBUG	TablePerClassPolymorphismEntityFinder	Finding entities in a single query with criteria o.c.s.e.r.q.EntityCriteriaSupportcriteria=[AND org.codefilarete.stalactite.query.api.QueryStatement$PseudoColumn@18aa15d7 Equals], hasCollectionCriteria=false, parent=null
2026-05-19 05:31:23	TRACE	SQLOperation	select Vehicle.color as Vehicle_color, Vehicle.id as Vehicle_id, Vehicle.DISCRIMINATOR as Vehicle_DISCRIMINATOR, Car.model as Car_model, Car.color as Car_color, Car.id as Car_id, Truck.color as Truck_color, Truck.id as Truck_id from (select Truck.color as color, Truck.id as id, 'Truck' as DISCRIMINATOR from Truck union all select Car.color as color, Car.id as id, 'Car' as DISCRIMINATOR from Car) as Vehicle left outer join Car as Car on Vehicle.id = Car.id left outer join Truck as Truck on Vehicle.id = Truck.id where Vehicle.color = ? | {1=Color[rgb=666]}
2026-05-19 05:31:23	DEBUG	EntityTreeInflater	Creating instance with o.c.s.e.r.l.TablePerClassRootJoinNode$TablePerClassPolymorphicJoinRootRowConsumer
2026-05-19 05:31:23	DEBUG	EntityTreeInflater	Consuming o.c.s.e.r.l.MergeJoinNode$MergeJoinRowConsumer on object o.c.s.e.m.Car#o.c.s.i.PersistedIdentifier@1
2026-05-19 05:31:23	DEBUG	SQLOperation	Batching statement 1 times
2026-05-19 05:31:23	TRACE	SQLOperation	delete from Car where id = ? | {1={Car.id=o.c.s.i.PersistableIdentifier@1}}
2026-05-19 05:31:23	DEBUG	SQLOperation	Batching statement 1 times
2026-05-19 05:31:23	TRACE	SQLOperation	delete from Truck where id = ? | {1={Truck.id=o.c.s.i.PersistableIdentifier@2}}
2026-05-19 05:31:23	TRACE	SQLOperation	select count(*) as carCount from car where id = 1 | {}
2026-05-19 05:31:23	TRACE	SQLOperation	select count(*) as truckCount from truck where id = 2 | {}
]]></system-out>
  </testcase>
</testsuite>