que tiene la siguiente prueba para el despegue de salto -RavenDB Paging Comportamiento
[Test]
public void RavenPagingBehaviour()
{
const int count = 2048;
var eventEntities = PopulateEvents(count);
PopulateEventsToRaven(eventEntities);
using (var session = Store.OpenSession(_testDataBase))
{
var queryable =
session.Query<EventEntity>().Customize(x => x.WaitForNonStaleResultsAsOfLastWrite()).Skip(0).Take(1024);
var entities = queryable.ToArray();
foreach (var eventEntity in entities)
{
eventEntity.Key = "Modified";
}
session.SaveChanges();
queryable = session.Query<EventEntity>().Customize(x => x.WaitForNonStaleResultsAsOfLastWrite()).Skip(0).Take(1024);
entities = queryable.ToArray();
foreach (var eventEntity in entities)
{
Assert.AreEqual(eventEntity.Key, "Modified");
}
}
}
PopulateEventsToRaven simplemente añade 2.048 documentos muy simples a la base de datos.
La primera combinación de saltos toma los primeros 1024 duplicados modifica los documentos y luego confirma los cambios.
La siguiente combinación de toma de omisión nuevamente quiere obtener los primeros 1024 documentos pero esta vez obtiene el número de documento 1024 a 2048 y, por lo tanto, no pasa la prueba. ¿Por qué es esto, esperaría el primer 1024 otra vez?
Editar: He varificado que si no modifico los documentos, el comportamiento es correcto.