[ 
https://issues.apache.org/jira/browse/DERBY-4050?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Mike Matrigali updated DERBY-4050:
----------------------------------

    Derby Info: [Patch Available, Release Note Needed]  (was: [Release Note 
Needed, Patch Available])

the patch and the test look good to me.  I have the following suggestions which 
are not necessary for committing the fix.

o maybe add the same comment from other places in the code to the new code that 
replaces the retry.  I can't think of any reason
    we would get a null here so I don't think retry is worth it, and shutting 
down the system is not going to help, but it is a silent failure
    of the reclaim code - around line 380:

    // If code gets here, the space will be lost forever, and
    // can only be reclaimed by a full offline compress of the
     // table/index.

o i think the test for checkin is fiine.  It might be interesting to just see 
what happens if you bump the number of concurrent threads
   way up to 100 or so.  It may not matter much if the machine you run on is 
only dual core, but probably worth one run.  maybe we can
   get someone on the list with an 8+ way to run the test with concurrent users 
bumped up?

o i think it would be worth it to file at least jira tasks for investigating 
the other 2 paths in the code that might leave unreclaimed space.
   as I said I am surprised the row lock path didn't fire.  I think one could 
make the table open path fire if the test were modified to 
   force table level exclusive locking - hopefully a much less likely scenario 
for user applications.  it might take different statements also.

> Multithreaded clob update causes growth in table that does not get reclaimed
> ----------------------------------------------------------------------------
>
>                 Key: DERBY-4050
>                 URL: https://issues.apache.org/jira/browse/DERBY-4050
>             Project: Derby
>          Issue Type: Bug
>          Components: Store
>    Affects Versions: 10.2.2.0, 10.3.3.0, 10.4.2.0, 10.5.0.0
>            Reporter: Kathey Marsden
>            Assignee: Kathey Marsden
>         Attachments: ClobGrowth.java, derby-4050_diff.txt, 
> derby-4050_more_debug.diff, derby.log.growth, derby.log.nogrowth, 
> releaseNote.html
>
>
> Doing a multithreaded update of a Clob table causes table growth that does 
> not get reclaimed except by compressing the table.  The reproduction has a 
> table with two threads. One  thread  updates row 1 repeatedly with 33,000 
> character clob. The other thread updates row 2 with a small clob, "hello".  
> The problem occurs back to 10.2 but seems much worse on trunk than 10.2.   
> The trunk database grew to 273MB on trunk after 10000 updates of each row. 
> The 10.2 database grew only to 25MB.  If the update is synchronized there is 
> no growth.
> I will attach the repro.

-- 
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