incubator-jena-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Andy Seaborne (Commented) (JIRA)" <>
Subject [jira] [Commented] (JENA-203) support for Non Blocking Parsers
Date Sun, 29 Jan 2012 17:29:10 GMT


Andy Seaborne commented on JENA-203:

Good timing - there are initial discussions readers recently on jena-users@.  Please contribute
and we can frame a more general JIRA.

The more usual idiom is ",in, base)" but the general mechanism you describe can be
used with actor frameworks. m.getReader creates a reader that the app can pass (in a closure0like
setup) to an actor.

The RIOT parsers output to a Sink<Triple> which allows different architectures.  RIOT
encapsulates parsing as an algorithm so that algorithm can be executed on a separate thread/actor.

What rendezvous style would you suggest?

This does not seem to be "priority major" and until there is a patch available I suggest not
marking it as such.

> support for Non Blocking Parsers
> --------------------------------
>                 Key: JENA-203
>                 URL:
>             Project: Jena
>          Issue Type: Improvement
>            Reporter: Henry Story
> In a Linked Data environment servers have to fetch data off the web. The speed at which
such data 
> is served can be very slow. So one wants to avoid using up one thread for each connections
(1 thread = 
> 0.5 to 1MB approximately). This is why Java NIO was developed and why servers such as
> are so popular, why http client libraries such as
are more
> and more numerous, and why framewks such as which support relatively
> actors (500 bytes per actor) are growing more viisible.
> Unless I am mistaken the only way to parse some content is using methods that use an

> InputStream such as this:
>     val m = ModelFactory.createDefaultModel()
>      m.getReader(lang.jenaLang).read(m, in, base.toString)
> That read call blocks. Would it be possible to have an API which allows
> one to parse a document in chunks as they arrive from the input?

This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators:!default.jspa
For more information on JIRA, see:


View raw message