在Windows Azure上表存儲我執行一個查詢:的Windows Azure表存儲再跟
CloudTableClient ctc=TableStorage.getTableClient();
String q1=TableQuery.generateFilterCondition(TableConstants.PARTITION_KEY, QueryComparisons.EQUAL, Long.toHexString(partitionId));
TableQuery<Actividad> rangeQuery=TableQuery.from(tableName, Actividad.class).where(q1).take(2);
int e=0;
for(Actividad ac:ctc.execute(query)){
e++;
}
System.out.println(e);
但我得到的分區中的所有行,而不僅僅是採取指定的頂部2(2)。
有什麼建議嗎?
接聽smarx:
我使用Wireshark看到http請求:
最初的要求是:
GET /actividadreciente?$filter=PartitionKey%20eq%20%2717%27&$top=2&timeout=60
有來自服務的響應,然後很多要求:
GET /actividadreciente? $filter=PartitionKey%20eq%20%2717%27&$top=2&NextRowKey=1%2124%21RkZGRkZFQzY2REYzMTA3Mw--&timeout=60&NextPartitionKey=1%214%21MTc-
GET /actividadreciente?$filter=PartitionKey%20eq%20%2717%27&$top=2&NextRowKey=1%2124%21RkZGRkZFQzY3Mjk2MEZEOA--&timeout=60&NextPartitionKey=1%214%21MTc-
GET /actividadreciente?$filter=PartitionKey%20eq%20%2717%27&$top=2&NextRowKey=1%2124%21RkZGRkZFQzY3Mjk5MzVGOQ--&timeout=60&NextPartitionKey=1%214%21MTc-
等。
這是寫什麼編程語言?它使用什麼庫? – smarx
這是Java。 Windows Azure Java SDK。 – gasotelo
啊,謝謝。您是否使用過Fiddler(或類似的HTTP調試代理)來查看從您的計算機到存儲服務的實際流量?我想知道$ top參數是否丟失,或者可能是否有多個請求(通過結果頁面)。要麼可能表明庫中存在錯誤。 – smarx