[sheepdog-users] cache flush: all or nothing

Valerio Pachera sirio81 at gmail.com
Thu Jun 6 15:51:00 CEST 2013


2013/6/6 Liu Yuan <namei.unix at gmail.com>:
> So your last mail meant that you couldn't reproduce the long wait time
> problem, right?

No.
This is a scale test (only 4G written).
After 30 minutes the guest was doing nothing, it took 30 seconds to
flush the cache by 'vdi cache flush' and 1 minutes and 28 seconds to
shutdown.
I aspected:
1-after waiting 30 minutes 'vdi cache flush' to be immediate or almost;
2-after 'vdi cache flush', in any case, the guest should have nothing
to flush shutting down, so I don't understand why it takes 1 minutes
and 28 seconds.

Remember that I saw almost no network activity on the node after I've
been writing data to the guest (max 100kbit/s).
If it was flushing the cache I aspect to see some Mbit/s of traffic.

> As above mentioned, we can mitigate this problem by
> introducing background pusher, that is flushing while writing.

I think it's good addition but right now

What I was not able to reproduce was this error:

root at test004:~# time collie vdi cache flush data
Jun 06 11:36:30 [main] do_read(297) failed to read from socket: -1,
Resource temporarily unavailable
Jun 06 11:36:30 [main] exec_req(405) failed to read a response
failed to execute request

I saw that also on my production cluster once, flushing cache after
killing a guest.

Not only, I aspect that, each time I write 2048 Mbyte of data on my
guest and run 'vdi cache flush' right after, it should take time to do
it (as wrote before), but after 2-3 time I repeated the sequence write
(dd one the guest) and vdi cache flush,  it was takeing few seconds or
even immediate.
But when shutting down the guest...I had to wait long (2 minutes or more).



More information about the sheepdog-users mailing list