lucene-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Earwin Burrfoot (JIRA)" <j...@apache.org>
Subject [jira] Commented: (LUCENE-1715) DirectoryIndexReader finalize() holding TermInfosReader longer than necessary
Date Tue, 23 Jun 2009 20:29:07 GMT

    [ https://issues.apache.org/jira/browse/LUCENE-1715?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12723289#action_12723289
] 

Earwin Burrfoot commented on LUCENE-1715:
-----------------------------------------

There's in fact one case where nulling harms. I'm going to try making as much of IR as possible
immutable and final. Load everything upfront on creation/reopen (or don't load if IR is created
for, say, merging). Unlike nulling references, making frequently accessed fields final does
have an impact under adequate JVMs.

Well, nulling can be added now and removed when/if I finish my IR stuff.

> DirectoryIndexReader finalize() holding TermInfosReader longer than necessary
> -----------------------------------------------------------------------------
>
>                 Key: LUCENE-1715
>                 URL: https://issues.apache.org/jira/browse/LUCENE-1715
>             Project: Lucene - Java
>          Issue Type: Bug
>          Components: Index
>    Affects Versions: 2.4.1
>         Environment: Sun JDK 6 update 12 64-bit, Debian Lenny
>            Reporter: Brian Groose
>            Assignee: Michael McCandless
>             Fix For: 2.9
>
>
> DirectoryIndexReader has a finalize method, which causes the JDK to keep a reference
to the object until it can be finalized.  SegmentReader and MultiSegmentReader are subclasses
that contain references to, potentially, hundreds of megabytes of cached data in a TermInfosReader.
> Some options would be removing finalize() from DirectoryIndexReader (it releases a write
lock at the moment) or possibly nulling out references in various close() and doClose() methods
throughout the class hierarchy so that the finalizable object doesn't references the Term
arrays.
> Original mailing list message:
> http://mail-archives.apache.org/mod_mbox/lucene-java-user/200906.mbox/%3C7A5CB4A7BBCE0C40B81C5145C326C31301A62971@NUMEVP06.na.imtn.com%3E

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


---------------------------------------------------------------------
To unsubscribe, e-mail: java-dev-unsubscribe@lucene.apache.org
For additional commands, e-mail: java-dev-help@lucene.apache.org


Mime
View raw message