Lucene.Net.Search.Spans.SpanOrQuery ----------------------------------- Key: LUCENENET-159 URL: https://issues.apache.org/jira/browse/LUCENENET-159 Project: Lucene.Net Issue Type: Bug Environment: Windows XP, Dotnet 2.0 Reporter: Gaƫtan Kesteloot SpanTermQuery term1 = new SpanTermQuery(new Term("Content", "couleur")); SpanTermQuery term2 = new SpanTermQuery(new Term("Content", "noir")); SpanTermQuery term3 = new SpanTermQuery(new Term("Content", "tee")); SpanQuery[] clauses = { term1, term2, term3 }; SpanOrQuery soq = new SpanOrQuery(clauses); Only term1 and term3 are present in the SpanOrQuery class. All pair term are not present. Possible correction Original source : public override System.String ToString(System.String field) { System.Text.StringBuilder buffer = new System.Text.StringBuilder(); buffer.Append("spanOr(["); System.Collections.IEnumerator i = clauses.GetEnumerator(); {color:red} while (i.MoveNext()) { SpanQuery clause = (SpanQuery)i.Current; buffer.Append(clause.ToString(field)); if (i.MoveNext()) { buffer.Append(", "); } } {color} buffer.Append("])"); buffer.Append(ToStringUtils.Boost(GetBoost())); return buffer.ToString(); } Proposal corrected source : public override System.String ToString(System.String field) { System.Text.StringBuilder buffer = new System.Text.StringBuilder(); buffer.Append("spanOr(["); {color:blue} for (int i = 0; i < clauses.Count; i++) { SpanQuery clause = (SpanQuery)clauses[i]; if (i == clauses.Count - 1) { buffer.Append(clause.ToString(field)); } else { buffer.Append(clause.ToString(field)); buffer.Append(", "); } } {color} buffer.Append("])"); buffer.Append(ToStringUtils.Boost(GetBoost())); return buffer.ToString(); } -- This message is automatically generated by JIRA. - You can reply to this email to add a comment to the issue online.