[ 
https://issues.apache.org/jira/browse/LUCENENET-181?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12700606#action_12700606
 ] 

Digy commented on LUCENENET-181:
--------------------------------

Hi Eyal,

Would you test the code attached? 

TermInfosReader:
{code}
 
                private SegmentTermEnum GetEnum()
                {
                        SegmentTermEnum termEnum = (SegmentTermEnum) 
System.Threading.Thread.GetData(enumerators);
                        if (termEnum == null)
                        {
                                termEnum = Terms();
                                System.Threading.Thread.SetData(enumerators, 
termEnum);
                        }
                        return termEnum;
                }
{code}

What is the meaning of the code if you initilalize "termEnum"  everytime 
TermInfosReader is created 

What I try to say is, If they are not declared as  static, they are not 
compatible with Java.

DIGY



> Port of ThreadLocal is wrong?
> -----------------------------
>
>                 Key: LUCENENET-181
>                 URL: https://issues.apache.org/jira/browse/LUCENENET-181
>             Project: Lucene.Net
>          Issue Type: Improvement
>            Reporter: Digy
>            Priority: Minor
>         Attachments: TestCase.cs
>
>
> AFAIK, "ThreadLocal" in Java is there to hold objects which are intented to 
> be used  thread-wide. So, its port-equivalent "LocalDataStoreSlot" should 
> contain objects related with the executing thread. But, since they are not 
> declared as "static" in Analyzer.cs, FieldsReader.cs, SegmentReader.cs and 
> TermInfosReader.cs, they are created with every class contruction, changing 
> the behaviour of "ThreadLocal" and possibly resulting in performance 
> degradation.
> I will attach a test case for this issue.
> If I am wrong, then there is no problem. But If I am right we are in trouble; 
>  Since adding "static" to variables declared as LocalDataStoreSlot results in 
> failing of almost all test cases.
> DIGY

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