openjpa-users mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "seba.wagner@gmail.com" <seba.wag...@gmail.com>
Subject Re: Problems with Oracle 11g and primary_key as rowtype IDENTITY
Date Sat, 22 Oct 2011 11:50:10 GMT
Or let me re-phrase my question:

Is there a possibility to define an alternative name for the sequence
or a table when you are using the option:
<property name="openjpa.jdbc.DBDictionary"
value="oracle(UseTriggersForAutoAssign=true,BatchLimit=100)" />

Or is it really required at this point to rename the table's primary key ??

The error message Oracle throws is like that: "could not create
sequence because "appointmentcategory_seq" is too long name."

I will also cross post this question to the Oracle support forums,
maybe they also have an idea how to workaround that.

Btw: Using
<property name="openjpa.jdbc.SynchronizeMappings" value="buildSchema" />

Also throws some error in our application using Oracle database...
So I always need to manually delete all tables and re-run the
application so that the tables are created (including sequences). Is
there a way of forcing openJPA to drop all tables? In hibernate you
would say "create" instead of "update". In openJPA I don't see any
alternative to "buildSchema". Is there a "createSchema" ?!
The documentation does not say so much about schema update /
forwarding.I don't see any other option that "buildSchema" mentioned
in the docs...

Thanks
Sebastian



2011/10/22 seba.wagner@gmail.com <seba.wagner@gmail.com>:
> Hi,
>
> we are still trying to figure out what is going wrong with Oracle and openJPA.
>
> Our configuration now looks like that:
>                <properties>
>                                <property name="openjpa.RuntimeUnenhancedClasses"
value="unsupported"/>
>                                <property name="openjpa.ConnectionDriverName"
> value="oracle.jdbc.driver.OracleDriver"/>
>                <property name="openjpa.ConnectionProperties"
> value="username=SYSTEM, password=admin"/>
>                <property name="openjpa.ConnectionURL"
> value="jdbc:oracle:thin:@localhost:1521:openmeetings"/>
>                                <property name="openjpa.jdbc.SynchronizeMappings"
value="buildSchema"/>
>                        <property name="openjpa.Log" value="DefaultLevel=WARN,
Tool=INFO" />
>                                <property name="openjpa.DataCache"
value="true"/>
>                                <property name="openjpa.QueryCache"
value="true"/>
>                                <property name="openjpa.jdbc.DBDictionary"
> value="oracle(UseTriggersForAutoAssign=true,BatchLimit=100)" />
>                                <property name="openjpa.jdbc.QuerySQLCache"
 value="false"/>
>        </properties>
>
> UseTriggersForAutoAssign=true is the magic key to use sequences as it seems ...
> however ...
>
> => The problem now is that Oracle complains that some sequences have a
> too long column name. How can we bypass that?
>
>
> Thanks
> Sebastian
>
>
>
> 2011/10/2 seba.wagner@gmail.com <seba.wagner@gmail.com>:
>> The guys from Oracle do (a bit offensive) argue that for such reasons
>> sequences do exist.
>>
>> https://forums.oracle.com/forums/thread.jspa?messageID=9909360#9909360
>>
>> Quote:
>> "Oracle has sequences for this purpose.
>> They are either directly used in an INSERT statement, or assigned to a
>> column by means of a trigger.."
>>
>> So my question might be: Why does openJPA not create sequences? Am I missing
>> some param in my config?
>> I have seen for MySQL there is an additional "sequence-table" created with
>> all index. In Oracle there seems to be no such table ... while except the
>> persistance.xml the code is 1:1 the same.
>>
>> Thanks,
>> Sebastian
>>
>> 2011/10/1 seba.wagner@gmail.com <seba.wagner@gmail.com>
>>>
>>> Hi,
>>>
>>> when using Oracle 11g with openJPA I do get the following warning while
>>> the tables are populated by openJPA:
>>>
>>> "Oracle" does not support auto-assigne d column values.  The column may
>>> not behave as desired.
>>>
>>> ... and the effect is obviously that, as soon as you try to add a new
>>> column with a null value for a primary key, Oracle will throw an
>>> Exception...
>>>
>>> I can read from the Issue tracker:
>>> https://issues.apache.org/jira/browse/OPENJPA-1090
>>>
>>> But actually the JIRA Issue 1090 is about adding this warning, not about
>>> how to solve it.
>>>
>>> What is actually the solution to fix it?
>>> Is it database related or do we need to change our code?
>>>
>>> Thank you!
>>> Sebastian
>>>
>>> --
>>> Sebastian Wagner
>>> http://www.openmeetings.de
>>> http://www.webbase-design.de
>>> http://www.wagner-sebastian.com
>>> seba.wagner@gmail.com
>>
>>
>>
>> --
>> Sebastian Wagner
>> http://www.openmeetings.de
>> http://www.webbase-design.de
>> http://www.wagner-sebastian.com
>> seba.wagner@gmail.com
>>
>
>
>
> --
> Sebastian Wagner
> http://www.openmeetings.de
> http://www.webbase-design.de
> http://www.wagner-sebastian.com
> seba.wagner@gmail.com
>



-- 
Sebastian Wagner
http://www.openmeetings.de
http://www.webbase-design.de
http://www.wagner-sebastian.com
seba.wagner@gmail.com

Mime
View raw message