Clone Tools
  • last updated a few minutes ago
Constraints
Constraints: committers
 
Constraints: files
Constraints: dates
translator-jpa: Improve Embedded mappings handling. (#1088)

This prevents column collisions and query failures involving Embedded

mappings by keeping track of the ManagedType traversal. Fragments of the

path are joined by '_' to form the column name. They are joined by '.'

and stored in nameInSource to be used in JPQL queries.

  1. … 3 more files in changeset.
translator-jpa: Improve Embedded mappings handling. (#1088)

This prevents column collisions and query failures involving Embedded

mappings by keeping track of the ManagedType traversal. Fragments of the

path are joined by '_' to form the column name. They are joined by '.'

and stored in nameInSource to be used in JPQL queries.

  1. … 3 more files in changeset.
translator-jpa: Improve Embedded mappings handling. (#1088)

This prevents column collisions and query failures involving Embedded

mappings by keeping track of the ManagedType traversal. Fragments of the

path are joined by '_' to form the column name. They are joined by '.'

and stored in nameInSource to be used in JPQL queries.

  1. … 3 more files in changeset.
  1. … 3 more files in changeset.
TEIID-5395

adding an import unit test and updating the ddl to string behavior to be

better with new lines when filtering

    • -0
    • +22
    ./META-INF/persistence.xml
  1. … 6 more files in changeset.
Jpa joins (#1085)

* JPQLSelectVisitor: Implicit joins should be LEFT OUTER.

Implicit joins are those where the synthesized foreign key is selected

from a table. At the JPA level this requires navigating the relationship

to the related entity and getting its id. Existing behavior does an

inner join which means any case where the relation is null would simply

exclude that row from results. This is incorrect behavior. It should

instead allow the null value to be returned. Hence left outer join.

Inner join behavior can be had by explicitly specifiying the join in the

SQL.

* JPQLSelectVisitor.JoinTable: Renamed constructor table arguments left/right.

The names customer/address were messing with my head when trying to

reason about this code. My guess is the customer/address names leaked from

the test case ddl.

* JPAMetadataProcessor: Removed addForeignKeys.

It's not clear to me what this is trying to accomplish. The *ToOne

side of a relationship is handled by addSingularAttributes. The

ManyToMany case would surely need a join table created, which this

method does not do. The OneToMany which this method tries to do

something with is unnecessary as far as I can reason, and it results in

an explosion of row results because of joining the relationship in even

the simplist of query (select * from entity).

* JPAMetadataProcessor: Avoid PK/FK name collisions.

Old behavior uses a relation's PK as the name of the FK column in the

parent. If the entities happen to use the same name for their IDs you

get a collision and only one column ends up exposed. I for one always

name my entity ids 'id'.

This change instead names the FK column(s)

$parentAttribute_$childIdProperty.

* JPAMetadataProcessor: Added RELATION_PROPERTY and RELATION_KEY properties.

These properties are added to FK columns so downstream processing knows

the parent attribute and the child id property associated with the

column. This is necessary for disambiguating joins.

* JPQLSelectVisitor: Disambiguate joins.

Old behavior matches up joins based table names or table metadata

matching. This does not work when the same entity is joined multiple

times. Eg, two properties have the same entity type or a parent->child

relationship is joined.

Instead, the RELATION_* properties are used to match joins up by parent

attribute names and child id.

  1. … 3 more files in changeset.
Feature pack (#821)

* TEIID-4437: Initial blue print of the design of feature-pack based build

* TEIID-4437: add connector feature pack (#1)

* TEIID-4437: Fixing the Kylin's pull request

* TEIID-4437: adding salesforce and reverting some of my earlier changes

* TEIID-4437: adding SimpleDB moving Object to Infinispan

* TEIID-4437: adding webservice feature pack

* TEIID-4437: Adding SOLR feature pack

* TEIID-4437: Adding Olingo module

* TEIID-4437: fixing the issues in the build with dependencies

* TEIID-4437: Adding Odata feature pack

* TEIID-4437: adding swagger feature-pack

* TEIID-4437: adding hive, hbase and prestodb to jdbc feature pack

* TEIID-4437: finish connectors feature pack (#3)

* TEIID-4437: finish connectors feature pack

* TEIID-4437: finish all feature pack

* TEIID-4437: fix some missed modules

* TEIID-4437: fix some missed modules

* TEIID-4437: refactoring dependencies on rest module, swagger, ws modules

* TEIID-4437: adding the server distribution

* TEIID-4437: building the distribution libraries

* TEIID-4437: fixing salesforce-34 issue

* TEIID-4437: Fixing some issues (#4)

* TEIID-4437: salesforce depend on ws, fixing salesforce-34 issue

* TEIID-4437: wildfly-overlay-dist depend on connectors feature pack

* TEIID-4437: fixing force api version 22, 34 problem

* TEIID-4437: finish server dist provisioning (#5)

* TEIID-4437: merge wildfly overlay dist together with build

* TEIID-4437: add additional fixing for salesforce 34

* rebasing with master

  1. … 2330 more files in changeset.