Sebastian Trüg wrote:
On Thursday 29 May 2008 16:04:28 Michael Stahl wrote:
hello,
in latest raptor release 1.4.17/ redland 1.0.7,
librdf_free_world calls raptor_parsers_finish, which kills a "static"
variable "parsers".
this makes other librdf_worlds very unhappy, as they cannot create parsers
any more.
right now i use a librdf_world for every repository/model, as that is just
simplest to implement; is this supposed to work, or should i use just one
librdf_world per process?
or is this a bug, and the "parsers" variable should never be freed / be a
part of the librdf_world?
I actually to the same in Soprano since I ran in so much trouble with a single
world instance and multithreading.
It is not the way world was intended to be used but it works flawlessly.
It is indeed not the way it was intended.
Threading support hasn't been a focus; there is a redland configure option
but I don't think it's been tested for some time.
On raptor (& rasqal) we are going to introduce a raptor_world object to
get rid of all the statics in raptor2 - I mentioned this in the State of
Redland 2008-02 post[1][2] earlier this year. We've already committed the
change to add the same thing to rasqal, as I also announced earlier, the
next release is a "break the api" one. I'm feeling raptor2 will also do
this sooner, as there are a bunch of things that need cleaning up.
Dave
[1] http://librdf.org/2008/02/18-state/
[2] http://librdf.org/2007/02/18-state/#sec-future-raptor2
_______________________________________________
redland-dev mailing list
[email protected]
http://lists.librdf.org/mailman/listinfo/redland-dev