Respect the bucket read lifetime semantics within aggregate buckets.
Respect the bucket read lifetime semantics within aggregate buckets.

Previously, when performing ->read_iovec for an aggregate bucket, we would call
->read on a bucket multiple times without returning to our caller - that's a
no-no as data could be lost.

* buckets/aggregate_buckets.c
  (read_aggregate): Change into returning multiple buckets if possible and
  correctly honor read lifetimes by only reading more if we hit EOF on the
  previous bucket.
  (serf_aggregate_read, serf_aggregate_read_iovec): Give read_aggregate an
  iovec.

SirJson/serf,lazysoez/serf,pengdu/serf,liuzongquan/serf,stoneCC/serf,yesoce/serf,Manouchehri/serf,wzugang/serf,yesoce/serf,krime/serf,KyleSanderson/serf,lazysoez/serf,soufianeEL/serf,zhupan/serf,zhupan/serf,stoneCC/serf,wzugang/serf,Manouchehri/serf,krime/serf,KyleSanderson/serf,muthusuba/serf,idomon/serf,liuzongquan/serf,alex1818/serf,TommyU/serf,alex1818/serf,soufianeEL/serf,TommyU/serf,blueszhangsh/serf,justinweb/serf,stoneCC/serf,stoneCC/serf,SirJson/serf,liuzongquan/serf,zhupan/serf,idomon/serf,TommyU/serf,pengdu/serf,sworda/serf,pengdu/serf,idomon/serf,liuzongquan/serf,zhengcq315/serf,TommyU/serf,lazysoez/serf,zhengcq315/serf,yesoce/serf,pengdu/serf,google-code-export/serf,muthusuba/serf,blueszhangsh/serf,blueszhangsh/serf,x-clone/serf,soufianeEL/serf,SirJson/serf,wzugang/serf,zhupan/serf,KyleSanderson/serf,sworda/serf,sworda/serf,google-code-export/serf,alex1818/serf,x-clone/serf,google-code-export/serf,muthusuba/serf,krime/serf,justinweb/serf,justinweb/serf,blueszhangsh/serf,soufianeEL/serf,wzugang/serf,sworda/serf,muthusuba/serf,Manouchehri/serf,KyleSanderson/serf,zhengcq315/serf,google-code-export/serf,lazysoez/serf,zhengcq315/serf,yesoce/serf,alex1818/serf,SirJson/serf,Manouchehri/serf,krime/serf,x-clone/serf,justinweb/serf,x-clone/serf,idomon/serf