On Mon, Feb 20, 2017 at 6:27 PM, Sven Van Caekenberghe <s...@stfx.eu> wrote:

>
> > On 20 Feb 2017, at 10:30, Pavel Krivanek <pavel.kriva...@gmail.com>
> wrote:
> >
> >
> >
> > 2017-02-20 10:27 GMT+01:00 Guillermo Polito <guillermopol...@gmail.com>:
> > As far as I remember, the main problem was not bandwidth but a blocking
> and non-responsive UI.
> > Imagine I'm in the university, or in a company with a proxy. And I
> forget to set the proxy. Then, while spotter tries to fetch catalog
> entries, it would block the image and throw a timeout error some minutes
> after.
> >
> > So, maybe for the future and besides Ben's C option (which I like) I
> have a
> >
> > D) Load catalog entries in background in a non-blocking way
> >   - and while catalog entries are not yet available, they should not be
> shown
> >
> > AFIK the main problem was that there was not possilbe to do it
> non-blocking way.
>
> Yes that is true. (It is actually DNS resolving that is blocked in some
> freak case).
>

In   sqUnixSocket.c   I read...
 * Notes:
 *      Sockets are completely asynchronous, but the resolver is still
synchronous.

So does this mean that if for any reason the resolver primitive takes a
long time to respond,
the whole VM is blocked? Thus forking the Catalog loading in another thread
would have no benefit?

Would having the resolver coded purely in-Image behave better?
So a slow name resolution would not hold up the whole image if it happened
in a forked thread.
I found such an implementation in OpenCobalt and after some minor cleanup
basic operations work fine.

http://smalltalkhub.com/#!/~BenComan/DNS/

cheers -ben


> But the thing is, the problematic situation only occurs for a very small
> percentage of people, like less than 1%, probably even much less.
> (Remember, nobody can produce a repeatable case for it).
>
> So the question is, is that enough reason to act as if we are still in the
> 90's when internet was a luxury and cut features that depend on it ? If you
> have no network today, you're in big trouble anyway. (Again, if you turn
> off your network, no blocking will happen at all, try it).
>
> So what is more important ? The general functionality of the 99.xxx % or
> the unreproducible freak case ?
>
>

Reply via email to