Skip to content

Commit aa126d6

Browse files
committed
Merge pull request elastic#1434 from shanekenney/develop
Add size parameter to reindex descriptor
2 parents b778aa6 + 7342e81 commit aa126d6

File tree

3 files changed

+25
-3
lines changed

3 files changed

+25
-3
lines changed

Diff for: src/Nest/DSL/Reindex/ReindexDescriptor.cs

+21-1
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,8 @@ public class ReindexDescriptor<T> where T : class
55
{
66
internal string _ToIndexName { get; set; }
77
internal string _FromIndexName { get; set; }
8-
internal string _Scroll { get; set; }
8+
internal string _Scroll { get; set; }
9+
internal int? _Size { get; set; }
910

1011
internal Func<QueryDescriptor<T>, QueryContainer> _QuerySelector { get; set; }
1112

@@ -43,6 +44,25 @@ public ReindexDescriptor<T> Scroll(string scrollTime)
4344
return this;
4445
}
4546

47+
/// <summary>
48+
/// The number of hits to return. Defaults to 100. When using scroll search type,
49+
/// size is actually multiplied by the number of shards!
50+
/// </summary>
51+
public ReindexDescriptor<T> Size(int size)
52+
{
53+
this._Size = size;
54+
return this;
55+
}
56+
57+
/// <summary>
58+
/// The number of hits to return. Defaults to 100.
59+
/// </summary>
60+
public ReindexDescriptor<T> Take(int take)
61+
{
62+
this.Size(take);
63+
return this;
64+
}
65+
4666
/// <summary>
4767
/// A query to optionally limit the documents to use for the reindex operation.
4868
/// </summary>

Diff for: src/Nest/Domain/Observers/ReindexObservable.cs

+3-2
Original file line numberDiff line numberDiff line change
@@ -36,7 +36,8 @@ private void Reindex(IObserver<IReindexResponse<T>> observer)
3636
{
3737
var fromIndex = this._reindexDescriptor._FromIndexName;
3838
var toIndex = this._reindexDescriptor._ToIndexName;
39-
var scroll = this._reindexDescriptor._Scroll ?? "2m";
39+
var scroll = this._reindexDescriptor._Scroll ?? "2m";
40+
var size = this._reindexDescriptor._Size ?? 100;
4041

4142
fromIndex.ThrowIfNullOrEmpty("fromIndex");
4243
toIndex.ThrowIfNullOrEmpty("toIndex");
@@ -56,7 +57,7 @@ private void Reindex(IObserver<IReindexResponse<T>> observer)
5657
.Index(fromIndex)
5758
.AllTypes()
5859
.From(0)
59-
.Take(100)
60+
.Size(size)
6061
.Query(this._reindexDescriptor._QuerySelector ?? (q=>q.MatchAll()))
6162
.SearchType(SearchType.Scan)
6263
.Scroll(scroll)

Diff for: src/Tests/Nest.Tests.Integration/Index/ReindexTests.cs

+1
Original file line numberDiff line numberDiff line change
@@ -47,6 +47,7 @@ public void Reindex()
4747
.ToIndex(toIndex)
4848
.Query(q=>q.MatchAll())
4949
.Scroll("10s")
50+
.Size(100)
5051
.CreateIndex(c=>c
5152
.NumberOfReplicas(0)
5253
.NumberOfShards(1)

0 commit comments

Comments
 (0)