Below is our persistence.xml. When we are using the persistence-unit platform
(no sharding), then createNativeQuery works. But if we use the
persistence-unit platform-slice, then createNativeQuery fails with the
stacktrace in the previous post.

<?xml version="1.0" encoding="UTF-8"?>
<persistence version="2.0" xmlns="http://java.sun.com/xml/ns/persistence";
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance";
xsi:schemaLocation="http://java.sun.com/xml/ns/persistence
http://java.sun.com/xml/ns/persistence/persistence_2_0.xsd";>
    <persistence-unit name="platformTest_AWS"
transaction-type="RESOURCE_LOCAL">
        <provider>
            org.apache.openjpa.persistence.PersistenceProviderImpl
        </provider>

        <properties>

                        <property name="javax.persistence.jdbc.driver"
value="com.mysql.jdbc.Driver"/>
                        <property name="javax.persistence.jdbc.url"
value="jdbc:mysql://platformtest.co7yazhl6rhc.us-east-1.rds.amazonaws.com:3306/platform"/>
                        <property name="javax.persistence.jdbc.user" 
value="******"/>
                        <property name="javax.persistence.jdbc.password" 
value="******"/>

                        <property name="openjpa.Log" value="DefaultLevel=WARN, 
Tool=INFO"/>

                        
                        <property name="openjpa.QueryCache" value="ehcache"/>
                        <property name="openjpa.DataCacheManager" 
value="ehcache"/>

        </properties>
    </persistence-unit>
    
    <persistence-unit name="platform" transaction-type="RESOURCE_LOCAL">
        <provider>
            org.apache.openjpa.persistence.PersistenceProviderImpl
        </provider>

        <properties>

                        <property name="openjpa.ConnectionDriverName"
                                  value="com.mysql.jdbc.Driver"/>
                        <property name="openjpa.ConnectionUserName" 
value="******"/>
                        <property name="openjpa.ConnectionPassword" 
value="******"/>
                        <property name="openjpa.ConnectionURL"    
                                  value="jdbc:mysql://127.0.0.1:3306/platform"/>

                        <property name="openjpa.jdbc.SchemaFactory"
value="native(ForeignKeys=true)"/>

                        <property name="openjpa.Log" value="Runtime=TRACE, 
SQL=TRACE,
DefaultLevel=WARN, Tool=INFO"/>
                        
                        <property name="openjpa.QueryCache" value="ehcache"/>
                        <property name="openjpa.DataCacheManager" 
value="ehcache"/>

        </properties>
    </persistence-unit>
        <persistence-unit name="platform_slice">
        <provider>
            org.apache.openjpa.persistence.PersistenceProviderImpl
        </provider>
                
                <properties>
                        <property name="openjpa.Log" value="Runtime=TRACE, 
SQL=TRACE,
DefaultLevel=TRACE, Tool=TRACE"/>
                        <property name="openjpa.BrokerFactory" value="slice"/>
                        <property name="openjpa.slice.Names"  
value="platform,platform1,platform2"/>
                        <property name="openjpa.slice.Master"  
value="platform"/>
                        
                        <property name="openjpa.slice.Lenient" value="true"/>
                             
                        <property name="openjpa.ConnectionDriverName"
                                  value="com.mysql.jdbc.Driver"/>
                        <property name="openjpa.ConnectionUserName" 
value="root"/>
                        <property name="openjpa.ConnectionPassword" 
value="99nfirst"/>
                        <property name="openjpa.slice.platform.ConnectionURL"   
 
                                  value="jdbc:mysql://127.0.0.1:3306/platform"/>
                        <property name="openjpa.slice.platform1.ConnectionURL"  
  
                                  
value="jdbc:mysql://127.0.0.1:3306/platform1"/>
                        <property name="openjpa.slice.platform2.ConnectionURL"  
  
                                  
value="jdbc:mysql://127.0.0.1:3306/platform2"/>
                        
                        <property name="openjpa.slice.DistributionPolicy" 
                                      
value="com.edelements.platform.service.openjpa.DistributeByInstitutionPolicy"/>
                        <property name="openjpa.slice.FinderTargetPolicy" 
                                          
value="com.edelements.platform.service.openjpa.ShardFinderTargetPolicy"/>
                        <property name="openjpa.slice.ReplicationPolicy" 
                                          
value="com.edelements.platform.service.openjpa.ShardReplicationPolicy"/>
                        <property name="openjpa.slice.ReplicatedTypes" 
                                           value="********"/>
                        
                        
                        <property name="openjpa.QueryCache" value="false"/>
                        <property name="openjpa.DataCache" value="false"/>
                        
                        
                        <property name="openjpa.QueryCompilationCache" 
value="false"/>
                        <property name="openjpa.jdbc.QuerySQLCache" 
value="false"/>
                        <property name="openjpa.jdbc.FinderCache" 
value="false"/>
                        
                        <property name="openjpa.DetachState"
value="loaded(DetachedStateField=false)"/>
                        
                </properties>
        </persistence-unit>
    
    <persistence-unit name="testPlatform">
        <provider>
            org.apache.openjpa.persistence.PersistenceProviderImpl
        </provider>

                <properties>
                        <property name="openjpa.Log" value="Runtime=TRACE, 
SQL=TRACE,
DefaultLevel=TRACE, Tool=TRACE"/>
                        <property name="openjpa.BrokerFactory" value="slice"/>
                        <property name="openjpa.slice.Names"  
value="platform,platform1,platform2"/>
                        <property name="openjpa.slice.Master"  
value="platform"/>
                        
                        <property name="openjpa.slice.Lenient" value="true"/>
                             
                        <property name="openjpa.ConnectionDriverName"
                                  value="com.mysql.jdbc.Driver"/>
                        <property name="openjpa.ConnectionUserName" 
value="root"/>
                        <property name="openjpa.ConnectionPassword" 
value="99nfirst"/>
                        <property name="openjpa.slice.platform.ConnectionURL"   
 
                                  value="jdbc:mysql://127.0.0.1:3306/platform"/>
                        <property name="openjpa.slice.platform1.ConnectionURL"  
  
                                  
value="jdbc:mysql://127.0.0.1:3306/platform1"/>
                        <property name="openjpa.slice.platform2.ConnectionURL"  
  
                                  
value="jdbc:mysql://127.0.0.1:3306/platform2"/>
                        
                        <property name="openjpa.slice.DistributionPolicy" 
                                      
value="com.edelements.platform.service.openjpa.DistributeByInstitutionPolicy"/>
                        <property name="openjpa.slice.FinderTargetPolicy" 
                                          
value="com.edelements.platform.service.openjpa.ShardFinderTargetPolicy"/>
                        <property name="openjpa.slice.ReplicatedTypes" 
                                           value="*******"/>

                        
                        <property name="openjpa.QueryCache" value="false"/>
                        <property name="openjpa.DataCache" value="false"/>
                        
                        
                        <property name="openjpa.QueryCompilationCache" 
value="false"/>
                        <property name="openjpa.jdbc.QuerySQLCache" 
value="false"/>
                        <property name="openjpa.jdbc.FinderCache" 
value="false"/>
                        
                        <property name="openjpa.DetachState"
value="loaded(DetachedStateField=false)"/>
                </properties>
    </persistence-unit>
</persistence>


--
View this message in context: 
http://openjpa.208410.n2.nabble.com/Native-SQL-Query-tp6432918p6436816.html
Sent from the OpenJPA Users mailing list archive at Nabble.com.

Reply via email to