Warren Falk commented on LUCENENET-593:

I was able to reproduce this with the following (which works in Windows but not 
            var store = new RAMDirectory();
            var analyzer = new StandardAnalyzer(LuceneVersion.LUCENE_48);
            var indexWriter = new IndexWriter(store, new 
IndexWriterConfig(LuceneVersion.LUCENE_48, analyzer));
            var searcherManager = new SearcherManager(indexWriter, true, null);
            var queryParser = new QueryParser(LuceneVersion.LUCENE_48, "text", 

            // add a document
            var id = "doc1";
            indexWriter.DeleteDocuments(new Term("id", id));
            indexWriter.AddDocument(new IIndexableField[] { new 
StringField("id", id, Field.Store.YES), new TextField("text", "the rain in 
spain", Field.Store.NO) });

            // find the document
            var query = queryParser.Parse("rain");
            var searcher = searcherManager.Acquire();
                var results = searcher.Search(query, 10);
                foreach (var result in results.ScoreDocs)
                    Console.Write("Result: {0}", 

> NullReferenceException in Linux
> -------------------------------
>                 Key: LUCENENET-593
>                 URL: https://issues.apache.org/jira/browse/LUCENENET-593
>             Project: Lucene.Net
>          Issue Type: Bug
>          Components: Lucene.Net Core
>    Affects Versions: Lucene.Net 4.8.0, Lucene.Net 5.0 PCL
>         Environment: Linux (ubuntu 64 bit, maybe all linux variants)
>            Reporter: Warren Falk
> A NullReferenceException on any attempt to query in Linux (ubuntu x64 in my 
> tests)
> I was able to track this down to the following line in Constants.cs
>         {{public static readonly string OS_ARCH = 
> GetEnvironmentVariable("PROCESSOR_ARCHITECTURE", "x86");}}
> Sure enough, PROCESSOR_ARCHITECTURE is not set by default in ubuntu server 
> x64 and when I set it, there is no failure.
> I would fix this, but I'm not sure what this value is used for, so I am not 
> sure what the appropriate behavior should be.  Should we try to find the 
> correct architecture here?  And what is the correct string, "amd64", "x64", 
> "x86_64"?  Or do we really just want to know the value of that if it is 
> actually not set, should we leave it blank?  The issue is that the InfoWriter 
> can't write a null, but it could write an empty string.
> I'll submit a pull request if anyone can tell me what correct behavior should 
> be.

This message was sent by Atlassian JIRA

Reply via email to