[ 
https://issues.apache.org/jira/browse/DERBY-3650?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12595256#action_12595256
 ] 

Kathey Marsden commented on DERBY-3650:
---------------------------------------

I think I understand what is going on here.  In the join case we are doing a 
nested loop join, joining the left result set, (1 row with clob) with the right 
result set (2 rows), so essentially we do
for each row in left result set
    for each row in right result set
             form tuple.

So we need to access the 1 row in the left result set twice, so freeing the 
clob  after the first row is returned is no good. Somehow, freeing the clob 
needs to be deferred in this case.  

Note the same symptom occurs if we commit instead of calling clob.free() 
because commit also frees the clobs.



> Derby + Hibernate JPA 3.2.1 problem on entity with Blob/Clob
> ------------------------------------------------------------
>
>                 Key: DERBY-3650
>                 URL: https://issues.apache.org/jira/browse/DERBY-3650
>             Project: Derby
>          Issue Type: Bug
>          Components: Network Client
>    Affects Versions: 10.4.1.3
>         Environment: Mac OSX 10.4
> JDK 1.5.0_13
> Hibernate EntityManager 3.2.1
>            Reporter: Golgoth 14
>         Attachments: Derby3650EmbeddedRepro.java, Derby3650FullRepro.java, 
> Derby3650Repro.java, DerbyHibernateTest.zip, testdb.zip, 
> traces_on_FormatIdStream_alloc.txt, UnionAll.java
>
>
> Hi,
> I'm using Derby in Client - Server mode with Hibernate JPA EJB 3.0.
> When a query on an entity containing a Clob and some joins on other entites 
> is executed, an exception with the following message is thrown:
>   XJ073: The data in this BLOB or CLOB is no longer available.  The 
> BLOB/CLOB's transaction may be committed, or its connection is closed.
> This problem occurs when the property "hibernate.max_fetch_depth" is greater 
> than 0.
> When hibernate.max_fetch_depth=0, the query works.
> If Derby is configured in embedded mode, the query works independently of the 
> value of hibernate.max_fetch_depth.
> On the Hibernate's documentation, the advised value of 
> hibernate.max_fetch_depth is 3.
> Could you explain me if I made something wrong ?
> Thank you.
> Stephane

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.

Reply via email to