Are you using the tdb to swap just for reading, or would you need to synchronize transactions?
Below I'll assume you mean 'reading', and that you want to swap because you have a 'newer' tdb store from "somewhere". With fuseki2 (I have not checked with Fuseki 1 which only has a REST interface) you can "hot add" a new tdb store in the web interface. If the tdb directory with the given name already exist under /etc/fuseki/databases it will be re-used and made live immediately. In my setup I use this in combination with data loading, so that I can load "offline" with tdbloader2 and then immediately make it live in an existing running Fuseki 2. There's unfortunately an open issue in the web interface with removing and adding a store with the same name - https://issues.apache.org/jira/browse/JENA-869 - so if you try this now with the current SNAPSHOT of Fuseki 2 you would have to make a new database name for every swap and copy the tdb store into that before adding it in the user interface. You could probably hide/simplify that name from the URI with a simple Apache httpd ProxyPass or RewriteRule On 10 February 2015 at 19:19, Paul Tyson <[email protected]> wrote: > I've looked through the user documentation but did not find a clue to > this problem. I have not dug too deeply into the code. > > The problem is to safely re-initialize a running fuseki server to read a > new tdb location. > > I've thought of using 2 (or more) jetty or tomcat workers in a > load-balancing configuration, which would allow staged restarts. But > before I go there I thought I would ask if there is an easier way. > > Does anyone have a usage pattern for this, or can point me to some > documentation or classes that would get me started? > > Thanks, > --Paul > -- Stian Soiland-Reyes Apache Taverna (incubating) http://orcid.org/0000-0001-9842-9718
