[ 
https://issues.apache.org/jira/browse/JCLOUDS-1543?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Roded Bahat updated JCLOUDS-1543:
---------------------------------
    Description: 
When listing blobs using the withDetails ListContainerOption, the returned page 
set's blobs do not return in the original order (as without the withDetails 
option). I suspect that FetchBlobMetadata should try a bit harder to keep to 
page set as it was received.


{code:java}
    @Test
    public void withDetailsOrdering() {
        BlobStoreContext blobStoreContext = ContextBuilder.newBuilder("s3")
            .endpoint("...")
            .credentials("...", "...")
            .buildView(BlobStoreContext.class);
        BlobStore blobStore = blobStoreContext.getBlobStore();
        String container = "roded-data";
        String blobNamePrefix = "test/blob-";
        for (int blobIndex = 0; blobIndex < 100; blobIndex++) {
            Blob newBlob = blobStore.blobBuilder(blobNamePrefix + 
blobIndex).payload("").build();
            blobStore.putBlob(container, newBlob);
        }

        final PageSet<? extends StorageMetadata> withOutDetails =
            blobStore.list(container, 
ListContainerOptions.Builder.prefix(blobNamePrefix));
        final PageSet<? extends StorageMetadata> withDetails = blobStore
            .list(container, 
ListContainerOptions.Builder.prefix(blobNamePrefix).withDetails());

        
assertTrue(Ordering.from(Comparator.comparing(StorageMetadata::getName)).isOrdered(withOutDetails));
        // Fails.
        
assertTrue(Ordering.from(Comparator.comparing(StorageMetadata::getName)).isOrdered(withDetails));
    }
{code}


  was:When listing blobs using the withDetails ListContainerOption, the 
returned page set's blobs do not return in the original order (as without the 
withDetails option). I suspect that FetchBlobMetadata should try a bit harder 
to keep to page set as it was received.


> list() results are not in order when using withDetails
> ------------------------------------------------------
>
>                 Key: JCLOUDS-1543
>                 URL: https://issues.apache.org/jira/browse/JCLOUDS-1543
>             Project: jclouds
>          Issue Type: Bug
>          Components: jclouds-blobstore
>    Affects Versions: 2.2.0
>            Reporter: Roded Bahat
>            Priority: Major
>
> When listing blobs using the withDetails ListContainerOption, the returned 
> page set's blobs do not return in the original order (as without the 
> withDetails option). I suspect that FetchBlobMetadata should try a bit harder 
> to keep to page set as it was received.
> {code:java}
>     @Test
>     public void withDetailsOrdering() {
>         BlobStoreContext blobStoreContext = ContextBuilder.newBuilder("s3")
>             .endpoint("...")
>             .credentials("...", "...")
>             .buildView(BlobStoreContext.class);
>         BlobStore blobStore = blobStoreContext.getBlobStore();
>         String container = "roded-data";
>         String blobNamePrefix = "test/blob-";
>         for (int blobIndex = 0; blobIndex < 100; blobIndex++) {
>             Blob newBlob = blobStore.blobBuilder(blobNamePrefix + 
> blobIndex).payload("").build();
>             blobStore.putBlob(container, newBlob);
>         }
>         final PageSet<? extends StorageMetadata> withOutDetails =
>             blobStore.list(container, 
> ListContainerOptions.Builder.prefix(blobNamePrefix));
>         final PageSet<? extends StorageMetadata> withDetails = blobStore
>             .list(container, 
> ListContainerOptions.Builder.prefix(blobNamePrefix).withDetails());
>         
> assertTrue(Ordering.from(Comparator.comparing(StorageMetadata::getName)).isOrdered(withOutDetails));
>         // Fails.
>         
> assertTrue(Ordering.from(Comparator.comparing(StorageMetadata::getName)).isOrdered(withDetails));
>     }
> {code}



--
This message was sent by Atlassian Jira
(v8.3.4#803005)

Reply via email to