Would it be possible to provide a zip with a unit test for the issue?  And in 
the meantime, can you provide an openjpa trace (a full trace, including sql)?  
A trace would give me a head start before trying out a junit.

Thanks!

On Jun 28, 2013, at 1:49 PM, Virag Kothari <vi...@yahoo-inc.com> wrote:

> Hi Jody,
> 
> Thanks for the reply.
> Attached is the schema dump for the table. The schema generator tool does
> map 
> the sla_xml column to varchar2(4000). So it seems to honor the @length
> annotation.
> The code where we define the JPA annotations for this table are at
> https://svn.apache.org/repos/asf/oozie/trunk/core/src/main/java/org/apache/
> oozie/WorkflowActionBean.java
> and 
> https://svn.apache.org/repos/asf/oozie/trunk/core/src/main/java/org/apache/
> oozie/client/rest/JsonWorkflowAction.java
> 
> Thanks,
> Virag
> 
> On 6/28/13 10:29 AM, "Jody Grassel" <fyrew...@gmail.com> wrote:
> 
>> Hey there.  The @Length annotation should only be used by OpenJPA as an
>> instruction to the schema generator tool, the runtime relies on the
>> database to enforce the maximum length of a given column - which may or
>> may
>> not throw an Exception given the configured behavior of the database.
>> 
>> Would you be willing to provide a unit test and a schema dump of your
>> table
>> from the database?
>> 
>> On Friday, June 28, 2013, Virag Kothari wrote:
>> 
>>> Hi,
>>> 
>>> Can anyone please reply?
>>> 
>>> In summary, two questions
>>> 
>>> Having (@length=4000) is not working when using Oracle db. I see the
>>> schema maps to varchar2(4000) but the openjpa insert accepts max 1000
>>> chars
>>> (throws ORA-24816 which is strange). It is not an Oracle issue as I
>>> tried
>>> inserting in Oracle directly and anything less than 4000 chars works.
>>> Can
>>> someone explain why openjpa allows only 1000 chars even if the length is
>>> set higher?
>>> 
>>> Is it possible to arrange the columns in a particular order (order
>>> defined
>>> in java file or based on some other order) so all lob's can be at the
>>> end?
>>> We require this if we face ORA-24816
>>> 
>>> Thanks,
>>> 
>>> Virag
>>> 
>>> 
>>> 
>>> 
>>> From: Virag Kothari <vi...@yahoo-inc.com <javascript:;><mailto:
>>> vi...@yahoo-inc.com <javascript:;>>>
>>> Date: Monday, June 24, 2013 1:35 PM
>>> To: "users@openjpa.apache.org <javascript:;><mailto:
>>> users@openjpa.apache.org <javascript:;>>"
>>> <users@openjpa.apache.org<javascript:;>
>>> <mailto:users@openjpa.apache.org <javascript:;>>>
>>> Subject: Re: ORA-24816 - column ordering during inserts
>>> 
>>> Hi,
>>> 
>>> An update:
>>> 
>>> It seems the problem is something else.
>>> In our code, we have defined the length as 4000.
>>> 
>>>    @Basic
>>> 
>>>    @Column(name = "sla_xml", length = 4000)
>>> 
>>>    private String slaXml = null;
>>> 
>>> However, if this column has more than 1000 characters, it complains with
>>> the below ORA-24816.
>>> 
>>> With less than 1000 characters, it works.
>>> 
>>> Also, I see in the oracle schema that the column is mapped as varchar2.
>>> 
>>> So even though the length is defined as 4000, why does openjpa refuse to
>>> accept more than 1000 characters?
>>> 
>>> Can anyone help me to figure this out?
>>> 
>>> 
>>> Thanks,
>>> 
>>> Virag
>>> 
>>> 
>>> 
>>> 
>>> From: Virag Kothari <vi...@yahoo-inc.com <javascript:;><mailto:
>>> vi...@yahoo-inc.com <javascript:;>>>
>>> Date: Friday, June 21, 2013 8:01 PM
>>> To: "users@openjpa.apache.org <javascript:;><mailto:
>>> users@openjpa.apache.org <javascript:;>>"
>>> <users@openjpa.apache.org<javascript:;>
>>> <mailto:users@openjpa.apache.org <javascript:;>>>
>>> Subject: ORA-24816 - column ordering during inserts
>>> 
>>> Hi,
>>> 
>>> We are using Open JPA 2.2.2 in Oozie project.
>>> 
>>> We have a mixture of lob and varchar in our tables. We
>>> recently converted few of lob's to varchar (4000).
>>> Now sometimes, we are seeing the following error while inserting in
>>> table:
>>> 
>>> Caused by: org.apache.openjpa.lib.jdbc.ReportingSQLException: ORA-24816:
>>> Expanded non LONG bind data supplied after actual LONG or LOB column
>>> 
>>> It seems that ORA-24816 happens when lob's are not at the end of the
>>> insert/update list.
>>> 
>>> 2 questions:
>>> 
>>>  1.
>>> 
>>> Is it possible to arrange the columns in a particular order (order
>>> defined
>>> in java file or based on some other order) so we can have all lob's at
>>> the
>>> end?
>>> 
>>>   2. We never encountered this error before even though we had 6 lobs
>>> and
>>> almost dozen of varchars in our table.  We converted 3 lobs to
>>> varchar2(4000) and started seeing this issue intermittently. Does anyone
>>> suspect that this conversion from lob to varchar has a role to play?
>>> 
>>> Thanks,
>>> 
>>> Virag
>>> 
>>> 
>>> 
>>> 
>>> 
>>> 
>>> 
>>> 
>>> 
>>> 
> 
> <wf_action_schema.txt>

Reply via email to