You are viewing a plain text version of this content. The canonical link for it is here.
Posted to notifications@jclouds.apache.org by "Everett Toews (JIRA)" <ji...@apache.org> on 2013/05/22 06:33:21 UTC

[jira] [Commented] (JCLOUDS-78) Pagination broken in rackspace-clouddns

    [ https://issues.apache.org/jira/browse/JCLOUDS-78?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13663755#comment-13663755 ] 

Everett Toews commented on JCLOUDS-78:
--------------------------------------

Okay. The fix looks pretty easy.

RecordsToPagedIterable extends Arg0ToPagedIterable.FromCaller

instead of 

RecordsToPagedIterable extends Arg0ToPagedIterable

Just need to fill in the test and it should be good to go.
                
> Pagination broken in rackspace-clouddns
> ---------------------------------------
>
>                 Key: JCLOUDS-78
>                 URL: https://issues.apache.org/jira/browse/JCLOUDS-78
>             Project: jclouds
>          Issue Type: Bug
>          Components: jclouds-core
>    Affects Versions: 1.6.0
>            Reporter: Adrian Cole
>            Assignee: Everett Toews
>             Fix For: 1.6.1
>
>
> At line https://github.com/jclouds/jclouds/blob/master/apis/rackspace-clouddns/src/main/java/org/jclouds/rackspace/clouddns/v1/functions/RecordsToPagedIterable.java there's a call for optional.get() when doing pagination.
> There's no test case to test whether or not pagination works at all.
> https://github.com/jclouds/jclouds/blob/master/apis/rackspace-clouddns/src/test/java/org/jclouds/rackspace/clouddns/v1/features/RecordApiExpectTest.java
> A user of denominator found a bug in this code, and took time to note the stack trace and json.
> https://github.com/Netflix/denominator/issues/145
> Please backfill a test case and see about fixing this.
> Thread [main] (Suspended (breakpoint at line 42 in Absent)) 
>     Absent.get() line: 42   
>     RecordsToPagedIterable.markerToNextForArg0(Optional<Object>) line: 52   
>     RecordsToPagedIterable(Arg0ToPagedIterable<T,I>).apply(IterableWithMarker<T>) line: 73  
>     RecordsToPagedIterable(Arg0ToPagedIterable<T,I>).apply(Object) line: 61 
>     Functions$FunctionComposition<A,B,C>.apply(A) line: 210 
>     InvokeHttpMethod.invoke(Invocation) line: 97    
>     InvokeHttpMethod.apply(Invocation) line: 80 
>     InvokeHttpMethod.apply(Object) line: 51 
>     FunctionalReflection$FunctionalInvocationHandler<T>.handleInvocation(Object, Method, Object[]) line: 119    
>     FunctionalReflection$FunctionalInvocationHandler<T>(AbstractInvocationHandler).invoke(Object, Method, Object[]) line: 70    
>     $Proxy72.list() line: not available 
>     CloudDNSResourceRecordSetApi.list() line: 33    
>     ResourceRecordSetCommands$ResourceRecordSetList.doRun(DNSApiManager) line: 58   
>     ResourceRecordSetCommands$ResourceRecordSetList(Denominator$DenominatorCommand).run() line: 132 
>     Denominator.main(String[]) line: 74 
> 2013-05-21 12:20:10,939 DEBUG [jclouds.headers] [main] >> GET https://dns.api.rackspacecloud.com/v1.0/XXXXXX/domains/YYYYYY/records HTTP/1.1
> 2013-05-21 12:20:10,940 DEBUG [jclouds.headers] [main] >> Accept: application/json
> 2013-05-21 12:20:10,940 DEBUG [jclouds.headers] [main] >> X-Auth-Token: XXXXXXXXXXXXXXXXXXXXXXXX
> 2013-05-21 12:20:12,842 DEBUG [jclouds.headers] [main] << HTTP/1.1 200 OK
> 2013-05-21 12:20:12,843 DEBUG [jclouds.headers] [main] << Date: Tue, 21 May 2013 10:20:12 GMT
> 2013-05-21 12:20:12,843 DEBUG [jclouds.headers] [main] << x-api-version: 1.0.24
> 2013-05-21 12:20:12,843 DEBUG [jclouds.headers] [main] << Via: 1.1 Repose (Repose/2.6.11)
> 2013-05-21 12:20:12,843 DEBUG [jclouds.headers] [main] << Server: Jetty(8.0.y.z-SNAPSHOT)
> 2013-05-21 12:20:12,843 DEBUG [jclouds.headers] [main] << Content-Type: application/json
> 2013-05-21 12:20:12,843 DEBUG [jclouds.headers] [main] << Content-Length: 17540
> 2013-05-21 12:20:13,122 DEBUG [jclouds.wire] [main] << "{
>    "records":[
>       {
>          "name":"ZZZZZ.mydomain.com",
>          "id":"A-1234567",
>          "type":"A",
>          "data":"777.232.208.999",
>          "ttl":300,
>          "updated":"2010-10-20T18:03:18.000+0000",
>          "created":"2010-10-20T18:03:18.000+0000"
>       },
>       {
>          "name":"ZZZZZ.mydomain.com",
>          "id":"A-1234567",
>          "type":"A",
>          "data":"777.143.131.999",
>          "ttl":300,
>          "updated":"2010-11-12T02:48:38.000+0000",
>          "created":"2010-11-12T02:48:38.000+0000"
>       },
>       {
>          "name":"ZZZZZ.mydomain.com",
>          "id":"A-1234567",
>          "type":"A",
>          "data":"777.23.243.999",
>          "ttl":300,
>          "updated":"2010-11-25T13:21:10.000+0000",
>          "created":"2010-11-25T13:21:10.000+0000"
>       },
>       {
>          "name":"ZZZZZ.mydomain.com",
>          "id":"A-1234567",
>          "type":"A",
>          "data":"777.121.66.999",
>          "ttl":300,
>          "updated":"2010-12-18T14:09:14.000+0000",
>          "created":"2010-12-18T14:09:14.000+0000"
>       },
>       {
>          "name":"ZZZZZ.mydomain.com",
>          "id":"A-1234567",
>          "type":"A",
>          "data":"777.23.243.999",
>          "ttl":300,
>          "updated":"2010-12-18T14:09:44.000+0000",
>          "created":"2010-12-18T14:09:44.000+0000"
>       },
>       {
>          "name":"ZZZZZ.mydomain.com",
>          "id":"A-1234567",
>          "type":"A",
>          "data":"777.143.151.999",
>          "ttl":300,
>          "updated":"2011-01-07T13:00:40.000+0000",
>          "created":"2011-01-07T13:00:40.000+0000"
>       },
>       {
>          "name":"ZZZZZ.mydomain.com",
>          "id":"A-1234567",
>          "type":"A",
>          "data":"777.143.151.999",
>          "ttl":300,
>          "updated":"2011-01-13T18:18:26.000+0000",
>          "created":"2011-01-13T18:18:26.000+0000"
>       },
>       {
>          "name":"ZZZZZ.mydomain.com",
>          "id":"A-1234567",
>          "type":"A",
>          "data":"777.213.78.999",
>          "ttl":300,
>          "updated":"2013-04-10T02:19:04.000+0000",
>          "created":"2013-04-10T02:19:04.000+0000"
>       }
>    ],
>    "totalEntries":271,
>    "links":[
>       {
>          "href":"https://dns.api.rackspacecloud.com/v1.0/XXXXXX/domains/YYYYYY/records?limit=100&offset=100",
>          "rel":"next"
>       }
>    ]
> }"

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira