Я перечисляю все объекты в моем ведре. Вопрос в том, когда я перечисляю все объекты, последний объект в пакете снова рассматривает в следующей партии объекта и повторяет его для следующей партии. Почему это происходит так, как должно?Рассмотрим только 1000 объектов в пакете и не должны учитывать предыдущий пакетный объект.
BasicAWSCredentials credentials = new BasicAWSCredentials("foo", "bar");
client = AmazonS3ClientBuilder
.standard()
.withCredentials(new AWSStaticCredentialsProvider(credentials))
.withEndpointConfiguration(new AwsClientBuilder.EndpointConfiguration(http://(serviceEndpoint), null(signingRegion is null))
.withPathStyleAccessEnabled(true)
.withChunkedEncodingDisabled(true)
.build();
ObjectListing listing = client.listObjects( "bucketname");
System.out.println("Listing size "+listing.getObjectSummaries().size());
System.out.println("At 0 index "+ listing.getObjectSummaries().get(0).getKey());
System.out.println("At 999 index "+ listing.getObjectSummaries().get(999).getKey());
SomeFunction(listing);
while (listing.isTruncated()) {
System.out.println("-----------------------------------------------");
listing = client.listNextBatchOfObjects(listing);
System.out.println("Listing size "+listing.getObjectSummaries().size());
System.out.println("At 0 index "+ listing.getObjectSummaries().get(0).getKey());
System.out.println("At 999 index "+ listing.getObjectSummaries().get(1000).getKey());
someFunction(listing);
}
Мой вывод:
Listing size 1000
At 0 index folder1/a.gz
At 999 index folder1/b.gz
---------------------------------------------------------------
Listing size 1001
At 0 index folder1/b.gz
At 1000 index folder1/d.gz
---------------------------------------------------------------
Listing size 1001
At 0 index folder1/d.gz
At 1000 index folder1/e.gz
Как вы можете видеть, первый индекс пакета 999 рассматривается ввторая партия (то же самое), почему? Это не должно произойти правильно? И следующая партия берет 1001 объект, включая последний из предыдущих, поскольку это должно дать следующую 1000, а не 1001.Помогите мне решить эту проблему. Спасибо.