You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@lucene.apache.org by us...@apache.org on 2023/06/01 11:37:21 UTC
[lucene] 01/01: Revert "Add updateDocuments API which accept a query (#12341)"
This is an automated email from the ASF dual-hosted git repository.
uschindler pushed a commit to branch revert-12341-main
in repository https://gitbox.apache.org/repos/asf/lucene.git
commit bb519ac99a06849bc17b38d02956dbe3cf0d46c3
Author: Uwe Schindler <uw...@thetaphi.de>
AuthorDate: Thu Jun 1 13:37:14 2023 +0200
Revert "Add updateDocuments API which accept a query (#12341)"
This reverts commit 52ab16731e5218d2283da429d67d6400a79c44b7.
---
lucene/CHANGES.txt | 3 ---
.../lucene/index/DocumentsWriterDeleteQueue.java | 21 ---------------------
.../java/org/apache/lucene/index/IndexWriter.java | 13 -------------
.../org/apache/lucene/index/TestIndexWriter.java | 7 +------
4 files changed, 1 insertion(+), 43 deletions(-)
diff --git a/lucene/CHANGES.txt b/lucene/CHANGES.txt
index 8c63aef4ab6..90a642e5516 100644
--- a/lucene/CHANGES.txt
+++ b/lucene/CHANGES.txt
@@ -130,9 +130,6 @@ API Changes
* GITHUB#12268: Add BitSet.clear() without parameters for clearing the entire set
(Jonathan Ellis)
-* GITHUB#12341: add new IndexWriter#updateDocuments(Query, Iterable<Document>) API
- to update documents using a query. (Patrick Zhai)
-
New Features
---------------------
diff --git a/lucene/core/src/java/org/apache/lucene/index/DocumentsWriterDeleteQueue.java b/lucene/core/src/java/org/apache/lucene/index/DocumentsWriterDeleteQueue.java
index f6f6bce44f4..95f1da9e562 100644
--- a/lucene/core/src/java/org/apache/lucene/index/DocumentsWriterDeleteQueue.java
+++ b/lucene/core/src/java/org/apache/lucene/index/DocumentsWriterDeleteQueue.java
@@ -142,10 +142,6 @@ final class DocumentsWriterDeleteQueue implements Accountable, Closeable {
return new TermNode(term);
}
- static Node<Query> newNode(Query query) {
- return new QueryNode(query);
- }
-
static Node<DocValuesUpdate[]> newNode(DocValuesUpdate... updates) {
return new DocValuesUpdatesNode(updates);
}
@@ -441,23 +437,6 @@ final class DocumentsWriterDeleteQueue implements Accountable, Closeable {
}
}
- private static final class QueryNode extends Node<Query> {
-
- QueryNode(Query query) {
- super(query);
- }
-
- @Override
- void apply(BufferedUpdates bufferedDeletes, int docIDUpto) {
- bufferedDeletes.addQuery(item, docIDUpto);
- }
-
- @Override
- public String toString() {
- return "del=" + item;
- }
- }
-
private static final class QueryArrayNode extends Node<Query[]> {
QueryArrayNode(Query[] query) {
super(query);
diff --git a/lucene/core/src/java/org/apache/lucene/index/IndexWriter.java b/lucene/core/src/java/org/apache/lucene/index/IndexWriter.java
index 33cec219fac..c089cda0f6f 100644
--- a/lucene/core/src/java/org/apache/lucene/index/IndexWriter.java
+++ b/lucene/core/src/java/org/apache/lucene/index/IndexWriter.java
@@ -1521,19 +1521,6 @@ public class IndexWriter
delTerm == null ? null : DocumentsWriterDeleteQueue.newNode(delTerm), docs);
}
- /**
- * Similar to {@link #updateDocuments(Term, Iterable)}, but take a query instead of a term to
- * identify the documents to be updated
- *
- * @lucene.experimental
- */
- public long updateDocuments(
- Query delQuery, Iterable<? extends Iterable<? extends IndexableField>> docs)
- throws IOException {
- return updateDocuments(
- delQuery == null ? null : DocumentsWriterDeleteQueue.newNode(delQuery), docs);
- }
-
private long updateDocuments(
final DocumentsWriterDeleteQueue.Node<?> delNode,
Iterable<? extends Iterable<? extends IndexableField>> docs)
diff --git a/lucene/core/src/test/org/apache/lucene/index/TestIndexWriter.java b/lucene/core/src/test/org/apache/lucene/index/TestIndexWriter.java
index d101927f7e0..156d4f596f6 100644
--- a/lucene/core/src/test/org/apache/lucene/index/TestIndexWriter.java
+++ b/lucene/core/src/test/org/apache/lucene/index/TestIndexWriter.java
@@ -3476,12 +3476,7 @@ public class TestIndexWriter extends LuceneTestCase {
Document doc = new Document();
doc.add(new StringField("id", id, Field.Store.YES));
if (mixDeletes && random().nextBoolean()) {
- if (random().nextBoolean()) {
- writer.updateDocuments(new Term("id", id), Arrays.asList(doc, doc));
- } else {
- writer.updateDocuments(
- new TermQuery(new Term("id", id)), Arrays.asList(doc, doc));
- }
+ writer.updateDocuments(new Term("id", id), Arrays.asList(doc, doc));
} else {
writer.softUpdateDocuments(
new Term("id", id),