Hi,
I've read through the online example on server concurrency, however, currently I'm not running a BaseXServer instance I'm just running things locally. I want multiple threads in my application to be able to query the database at once without treading on each others toes. What's the best approach for doing this?
I have tried querying the database using different threads but I keep getting internal BaseX errors which leads me to think I'm going about this the wrong way.
Cheers Gary
Hi Gary,
best approach is to run a local server and then use client sessions. If you dont want to run a server, you need one seperate context for each thread.
-- Andreas
Am 20.10.2012 um 17:53 schrieb The Trainspotter:
Hi,
I've read through the online example on server concurrency, however, currently I'm not running a BaseXServer instance I'm just running things locally. I want multiple threads in my application to be able to query the database at once without treading on each others toes. What's the best approach for doing this?
I have tried querying the database using different threads but I keep getting internal BaseX errors which leads me to think I'm going about this the wrong way.
Cheers Gary _______________________________________________ BaseX-Talk mailing list BaseX-Talk@mailman.uni-konstanz.de https://mailman.uni-konstanz.de/mailman/listinfo/basex-talk
Hi Gary,
as Andreas mentioned, the server approach will ensure that all operations will be concurrently handled. An alternative, however, is to create a LocalSession instance, which provides the same interface and functionality as the ClientSession class, but does not rely on a database server. A little example (I hope I didn't introduce any typos):
Context ctx = new Context(); LocalSession ls = new LocalSession(ctx); ls.execute(new CreateDB("db", "<a/>")); System.out.println(ls.execute(new XQuery("db:open('db')"))); ctx.close();
Best, Christian ___________________________
On Sun, Oct 21, 2012 at 12:42 PM, Andreas Weiler andreas.weiler@uni-konstanz.de wrote:
Hi Gary,
best approach is to run a local server and then use client sessions. If you dont want to run a server, you need one seperate context for each thread.
-- Andreas
Am 20.10.2012 um 17:53 schrieb The Trainspotter:
Hi,
I've read through the online example on server concurrency, however, currently I'm not running a BaseXServer instance I'm just running things locally. I want multiple threads in my application to be able to query the database at once without treading on each others toes. What's the best approach for doing this?
I have tried querying the database using different threads but I keep getting internal BaseX errors which leads me to think I'm going about this the wrong way.
Cheers Gary _______________________________________________ BaseX-Talk mailing list BaseX-Talk@mailman.uni-konstanz.de https://mailman.uni-konstanz.de/mailman/listinfo/basex-talk
BaseX-Talk mailing list BaseX-Talk@mailman.uni-konstanz.de https://mailman.uni-konstanz.de/mailman/listinfo/basex-talk
Hello BaseX-Team,
it is great to see the vibrant evolution of your BaseX development.
We have a component that is at the moment on (the now outdated) BaseX 7.0.2 and the component uses
* local databases (to make it as independent as possible from the environment where it runs) * and XQJ.
Now we want to migrate this component to BaseX 7.3/BaseX 7.5.
But all the examples of the new (1.2.x) version of basex-xqj use the client server architecture, and it is stressed in the documentation:
"BaseX XQJ communicates with a BaseX Server via a client-server architecture, where BaseX XQJ acts as the client and the BaseX XML Database acts as the server.", see page 3 in [1]
Question:
Can BaseX 7.3/BaseX7.5 access a local database with XQJ?
With best regards
Andreas
[1] BaseX XQJ Documenation, Version 1.2.3, 1th October 2012
Hello BaseX-Team,
this mail informs you about the further steps that have been done in this point:
1. Search for source code
I have not been able to find the source code for basex-xqj-1.2.3.zip. A question would be if the source code for this module is available. (Just find the answer to the question "in the source code").
2. JavaDoc
The JavaDoc says:
"This implementation internally creates Socket connections with a BaseX Server" see [1]
From point 2. I would conclude that it is not possible to use a local/"embedded" database with the new XQJ.
With best regards,
Andreas
[1] basex-xqj-1.2.3/doc/javadoc/net/xqj/basex/BaseXXQDataSource.html
Hello BaseX-Team,
it is great to see the vibrant evolution of your BaseX development.
We have a component that is at the moment on (the now outdated) BaseX 7.0.2 and the component uses
- local databases (to make it as independent as possible from the
environment where it runs)
- and XQJ.
Now we want to migrate this component to BaseX 7.3/BaseX 7.5.
But all the examples of the new (1.2.x) version of basex-xqj use the client server architecture, and it is stressed in the documentation:
"BaseX XQJ communicates with a BaseX Server via a client-server architecture, where BaseX XQJ acts as the client and the BaseX XML Database acts as the server.", see page 3 in [1]
Question:
Can BaseX 7.3/BaseX7.5 access a local database with XQJ?
With best regards
Andreas
[1] BaseX XQJ Documenation, Version 1.2.3, 1th October 2012
BaseX-Talk mailing list BaseX-Talk@mailman.uni-konstanz.de https://mailman.uni-konstanz.de/mailman/listinfo/basex-talk
Hi Andreas,
as you correctly observed, the old XQJ implementation has been discontinued, and our current XQJ implementation is based on the client/server architecture. We already thought about providing a local version as well. The (closed source) implementation would be completely up to Charles Foster, and I imagine it could take some time to finalize, so please don't expect any short-term miracles. Charles might give you more details just in case.
Christian ___________________________
On Wed, Oct 24, 2012 at 12:53 PM, Andreas Rulle andreas.rulle@nexoma.de wrote:
Hello BaseX-Team,
this mail informs you about the further steps that have been done in this point:
- Search for source code
I have not been able to find the source code for basex-xqj-1.2.3.zip. A question would be if the source code for this module is available. (Just find the answer to the question "in the source code").
- JavaDoc
The JavaDoc says:
"This implementation internally creates Socket connections with a BaseX Server" see [1]
From point 2. I would conclude that it is not possible to use a local/"embedded" database with the new XQJ.
With best regards,
Andreas
[1] basex-xqj-1.2.3/doc/javadoc/net/xqj/basex/BaseXXQDataSource.html
Hello BaseX-Team,
it is great to see the vibrant evolution of your BaseX development.
We have a component that is at the moment on (the now outdated) BaseX 7.0.2 and the component uses
- local databases (to make it as independent as possible from the
environment where it runs)
- and XQJ.
Now we want to migrate this component to BaseX 7.3/BaseX 7.5.
But all the examples of the new (1.2.x) version of basex-xqj use the client server architecture, and it is stressed in the documentation:
"BaseX XQJ communicates with a BaseX Server via a client-server architecture, where BaseX XQJ acts as the client and the BaseX XML Database acts as the server.", see page 3 in [1]
Question:
Can BaseX 7.3/BaseX7.5 access a local database with XQJ?
With best regards
Andreas
[1] BaseX XQJ Documenation, Version 1.2.3, 1th October 2012
BaseX-Talk mailing list BaseX-Talk@mailman.uni-konstanz.de https://mailman.uni-konstanz.de/mailman/listinfo/basex-talk
BaseX-Talk mailing list BaseX-Talk@mailman.uni-konstanz.de https://mailman.uni-konstanz.de/mailman/listinfo/basex-talk
Hello Christian,
thank you for your elaborate and authoritative answer!
With best regards,
Andreas
Hi Andreas,
as you correctly observed, the old XQJ implementation has been discontinued, and our current XQJ implementation is based on the client/server architecture. We already thought about providing a local version as well. The (closed source) implementation would be completely up to Charles Foster, and I imagine it could take some time to finalize, so please don't expect any short-term miracles. Charles might give you more details just in case.
Christian ___________________________
On Wed, Oct 24, 2012 at 12:53 PM, Andreas Rulle andreas.rulle@nexoma.de wrote:
Hello BaseX-Team,
this mail informs you about the further steps that have been done in this point:
- Search for source code
I have not been able to find the source code for basex-xqj-1.2.3.zip. A question would be if the source code for this module is available. (Just find the answer to the question "in the source code").
- JavaDoc
The JavaDoc says:
"This implementation internally creates Socket connections with a BaseX Server" see [1]
From point 2. I would conclude that it is not possible to use a local/"embedded" database with the new XQJ.
With best regards,
Andreas
[1] basex-xqj-1.2.3/doc/javadoc/net/xqj/basex/BaseXXQDataSource.html
Hello BaseX-Team,
it is great to see the vibrant evolution of your BaseX development.
We have a component that is at the moment on (the now outdated) BaseX 7.0.2 and the component uses
- local databases (to make it as independent as possible from the
environment where it runs)
- and XQJ.
Now we want to migrate this component to BaseX 7.3/BaseX 7.5.
But all the examples of the new (1.2.x) version of basex-xqj use the client server architecture, and it is stressed in the documentation:
"BaseX XQJ communicates with a BaseX Server via a client-server architecture, where BaseX XQJ acts as the client and the BaseX XML Database acts as the server.", see page 3 in [1]
Question:
Can BaseX 7.3/BaseX7.5 access a local database with XQJ?
With best regards
Andreas
[1] BaseX XQJ Documenation, Version 1.2.3, 1th October 2012
BaseX-Talk mailing list BaseX-Talk@mailman.uni-konstanz.de https://mailman.uni-konstanz.de/mailman/listinfo/basex-talk
BaseX-Talk mailing list BaseX-Talk@mailman.uni-konstanz.de https://mailman.uni-konstanz.de/mailman/listinfo/basex-talk
BaseX-Talk mailing list BaseX-Talk@mailman.uni-konstanz.de https://mailman.uni-konstanz.de/mailman/listinfo/basex-talk
Hi Andreas,
A local / embedded version of BaseX XQJ, (i.e. no Socket connection) is planned for BaseX XQJ 1.3
The primary aim will be to have as much compatibility as possible with the client/server based version [1]
This is not a quick job and I wouldn't expect anything soon. Perhaps in the next 2 months or so.
In the meantime, I suggest that you at least test your software against the Client / Server XQJ driver, because although unlikely, there "may" be differences in behaviour between the the version of BaseX XQJ driver you're currently using and the XQJ.NET implementation.
If your code needs to change as a result of switching drivers, you will get foresight on those changes in advance.
Kind Regards,
Charles
On 24 October 2012 12:41, Christian Grün christian.gruen@gmail.com wrote:
Hi Andreas,
as you correctly observed, the old XQJ implementation has been discontinued, and our current XQJ implementation is based on the client/server architecture. We already thought about providing a local version as well. The (closed source) implementation would be completely up to Charles Foster, and I imagine it could take some time to finalize, so please don't expect any short-term miracles. Charles might give you more details just in case.
Christian ___________________________
On Wed, Oct 24, 2012 at 12:53 PM, Andreas Rulle andreas.rulle@nexoma.de wrote:
Hello BaseX-Team,
this mail informs you about the further steps that have been done in this point:
- Search for source code
I have not been able to find the source code for basex-xqj-1.2.3.zip. A question would be if the source code for this module is available. (Just find the answer to the question "in the source code").
- JavaDoc
The JavaDoc says:
"This implementation internally creates Socket connections with a BaseX Server" see [1]
From point 2. I would conclude that it is not possible to use a local/"embedded" database with the new XQJ.
With best regards,
Andreas
[1] basex-xqj-1.2.3/doc/javadoc/net/xqj/basex/BaseXXQDataSource.html
Hello BaseX-Team,
it is great to see the vibrant evolution of your BaseX development.
We have a component that is at the moment on (the now outdated) BaseX 7.0.2 and the component uses
- local databases (to make it as independent as possible from the
environment where it runs)
- and XQJ.
Now we want to migrate this component to BaseX 7.3/BaseX 7.5.
But all the examples of the new (1.2.x) version of basex-xqj use the client server architecture, and it is stressed in the documentation:
"BaseX XQJ communicates with a BaseX Server via a client-server architecture, where BaseX XQJ acts as the client and the BaseX XML Database acts as the server.", see page 3 in [1]
Question:
Can BaseX 7.3/BaseX7.5 access a local database with XQJ?
With best regards
Andreas
[1] BaseX XQJ Documenation, Version 1.2.3, 1th October 2012
BaseX-Talk mailing list BaseX-Talk@mailman.uni-konstanz.de https://mailman.uni-konstanz.de/mailman/listinfo/basex-talk
BaseX-Talk mailing list BaseX-Talk@mailman.uni-konstanz.de https://mailman.uni-konstanz.de/mailman/listinfo/basex-talk
Hello Charles,
thank you for your detailed answer.
Your answer enables us to make an "informed decision".
We have been interested in a bug-fix in that is contained in BaseX 7.3. But there is a logical workaround for this.
This workaround is better than to dismiss XQJ now and change the architecture of the software.
With our answer we can wait with an update of BaseX until XQJ 1.3 is there, because it will come in the "near future".
With best regards
Andreas
Hi Andreas,
A local / embedded version of BaseX XQJ, (i.e. no Socket connection) is planned for BaseX XQJ 1.3
The primary aim will be to have as much compatibility as possible with the client/server based version [1]
This is not a quick job and I wouldn't expect anything soon. Perhaps in the next 2 months or so.
In the meantime, I suggest that you at least test your software against the Client / Server XQJ driver, because although unlikely, there "may" be differences in behaviour between the the version of BaseX XQJ driver you're currently using and the XQJ.NET implementation.
If your code needs to change as a result of switching drivers, you will get foresight on those changes in advance.
Kind Regards,
Charles
On 24 October 2012 12:41, Christian Grün christian.gruen@gmail.com wrote:
Hi Andreas,
as you correctly observed, the old XQJ implementation has been discontinued, and our current XQJ implementation is based on the client/server architecture. We already thought about providing a local version as well. The (closed source) implementation would be completely up to Charles Foster, and I imagine it could take some time to finalize, so please don't expect any short-term miracles. Charles might give you more details just in case.
Christian ___________________________
On Wed, Oct 24, 2012 at 12:53 PM, Andreas Rulle andreas.rulle@nexoma.de wrote:
Hello BaseX-Team,
this mail informs you about the further steps that have been done in this point:
- Search for source code
I have not been able to find the source code for basex-xqj-1.2.3.zip. A question would be if the source code for this module is available. (Just find the answer to the question "in the source code").
- JavaDoc
The JavaDoc says:
"This implementation internally creates Socket connections with a BaseX Server" see [1]
From point 2. I would conclude that it is not possible to use a local/"embedded" database with the new XQJ.
With best regards,
Andreas
[1] basex-xqj-1.2.3/doc/javadoc/net/xqj/basex/BaseXXQDataSource.html
Hello BaseX-Team,
it is great to see the vibrant evolution of your BaseX development.
We have a component that is at the moment on (the now outdated) BaseX 7.0.2 and the component uses
- local databases (to make it as independent as possible from the
environment where it runs)
- and XQJ.
Now we want to migrate this component to BaseX 7.3/BaseX 7.5.
But all the examples of the new (1.2.x) version of basex-xqj use the client server architecture, and it is stressed in the documentation:
"BaseX XQJ communicates with a BaseX Server via a client-server architecture, where BaseX XQJ acts as the client and the BaseX XML Database acts as the server.", see page 3 in [1]
Question:
Can BaseX 7.3/BaseX7.5 access a local database with XQJ?
With best regards
Andreas
[1] BaseX XQJ Documenation, Version 1.2.3, 1th October 2012
BaseX-Talk mailing list BaseX-Talk@mailman.uni-konstanz.de https://mailman.uni-konstanz.de/mailman/listinfo/basex-talk
BaseX-Talk mailing list BaseX-Talk@mailman.uni-konstanz.de https://mailman.uni-konstanz.de/mailman/listinfo/basex-talk
BaseX-Talk mailing list BaseX-Talk@mailman.uni-konstanz.de https://mailman.uni-konstanz.de/mailman/listinfo/basex-talk
Hello Christian,
your BaseX database is with RESTXQ on very interesting road towards xquery based web applications and the Unit Module puts XQuery into a new software engineering perspective!
While this application field naturally leads to a client/server architecture we have an expanding row of usages of BaseX in embedded mode, see for example [1].
At the moment the Basex 7.7 still has basex-xqj-1.2.3.jar.
Question: Are there plans to update to the upcoming (?) version basex-xqj-1.3.jar?
With best regards,
Andreas
[1] See slide 21 in PBSeasy - Magento und Big Data http://www.meet-magento.de/fileadmin/user_upload/meet-magento.de/pdf/Vortraege_2013/Case_Study_Meet_Magento_-_PBSeasy_nexoma__1_.pdf, http://www.meet-magento.de/programm/andreas-rulle-programm-meet-magento.html, Abruf 18.06.2013
Hello Charles,
thank you for your detailed answer.
Your answer enables us to make an "informed decision".
We have been interested in a bug-fix in that is contained in BaseX 7.3. But there is a logical workaround for this.
This workaround is better than to dismiss XQJ now and change the architecture of the software.
With our answer we can wait with an update of BaseX until XQJ 1.3 is there, because it will come in the "near future".
With best regards
Andreas
Hi Andreas,
A local / embedded version of BaseX XQJ, (i.e. no Socket connection) is planned for BaseX XQJ 1.3
The primary aim will be to have as much compatibility as possible with the client/server based version [1]
This is not a quick job and I wouldn't expect anything soon. Perhaps in the next 2 months or so.
In the meantime, I suggest that you at least test your software against the Client / Server XQJ driver, because although unlikely, there "may" be differences in behaviour between the the version of BaseX XQJ driver you're currently using and the XQJ.NET implementation.
If your code needs to change as a result of switching drivers, you will get foresight on those changes in advance.
Kind Regards,
Charles
On 24 October 2012 12:41, Christian Grün christian.gruen@gmail.com wrote:
Hi Andreas,
as you correctly observed, the old XQJ implementation has been discontinued, and our current XQJ implementation is based on the client/server architecture. We already thought about providing a local version as well. The (closed source) implementation would be completely up to Charles Foster, and I imagine it could take some time to finalize, so please don't expect any short-term miracles. Charles might give you more details just in case.
Christian ___________________________
On Wed, Oct 24, 2012 at 12:53 PM, Andreas Rulle andreas.rulle@nexoma.de wrote:
Hello BaseX-Team,
this mail informs you about the further steps that have been done in this point:
- Search for source code
I have not been able to find the source code for basex-xqj-1.2.3.zip. A question would be if the source code for this module is available. (Just find the answer to the question "in the source code").
- JavaDoc
The JavaDoc says:
"This implementation internally creates Socket connections with a BaseX Server" see [1]
From point 2. I would conclude that it is not possible to use a local/"embedded" database with the new XQJ.
With best regards,
Andreas
[1] basex-xqj-1.2.3/doc/javadoc/net/xqj/basex/BaseXXQDataSource.html
Hello BaseX-Team,
it is great to see the vibrant evolution of your BaseX development.
We have a component that is at the moment on (the now outdated) BaseX 7.0.2 and the component uses
- local databases (to make it as independent as possible from the
environment where it runs)
- and XQJ.
Now we want to migrate this component to BaseX 7.3/BaseX 7.5.
But all the examples of the new (1.2.x) version of basex-xqj use the client server architecture, and it is stressed in the documentation:
"BaseX XQJ communicates with a BaseX Server via a client-server architecture, where BaseX XQJ acts as the client and the BaseX XML Database acts as the server.", see page 3 in [1]
Question:
Can BaseX 7.3/BaseX7.5 access a local database with XQJ?
With best regards
Andreas
[1] BaseX XQJ Documenation, Version 1.2.3, 1th October 2012
BaseX-Talk mailing list BaseX-Talk@mailman.uni-konstanz.de https://mailman.uni-konstanz.de/mailman/listinfo/basex-talk
BaseX-Talk mailing list BaseX-Talk@mailman.uni-konstanz.de https://mailman.uni-konstanz.de/mailman/listinfo/basex-talk
BaseX-Talk mailing list BaseX-Talk@mailman.uni-konstanz.de https://mailman.uni-konstanz.de/mailman/listinfo/basex-talk
BaseX-Talk mailing list BaseX-Talk@mailman.uni-konstanz.de https://mailman.uni-konstanz.de/mailman/listinfo/basex-talk
Hi Andreas,
in the last weeks, Charles Foster has been pretty busy organizing the fabulous XMLLondon Conference that just took place last weekend [1]. He may have more time to focus on the embedded version of XQJ in the upcoming months. If you believe it’s helpful for your product, and if you would be interested to sponsor the feature, feel free to contact us for more details.
Best, Christian
[1] http://xmllondon.com ___________________________
2013/6/18 Andreas Rulle andreas.rulle@nexoma.de:
Hello Christian,
your BaseX database is with RESTXQ on very interesting road towards xquery based web applications and the Unit Module puts XQuery into a new software engineering perspective!
While this application field naturally leads to a client/server architecture we have an expanding row of usages of BaseX in embedded mode, see for example [1].
At the moment the Basex 7.7 still has basex-xqj-1.2.3.jar.
Question: Are there plans to update to the upcoming (?) version basex-xqj-1.3.jar?
With best regards,
Andreas
[1] See slide 21 in PBSeasy - Magento und Big Data, http://www.meet-magento.de/programm/andreas-rulle-programm-meet-magento.html, Abruf 18.06.2013
Hello Charles,
thank you for your detailed answer.
Your answer enables us to make an "informed decision".
We have been interested in a bug-fix in that is contained in BaseX 7.3. But there is a logical workaround for this.
This workaround is better than to dismiss XQJ now and change the architecture of the software.
With our answer we can wait with an update of BaseX until XQJ 1.3 is there, because it will come in the "near future".
With best regards
Andreas
Hi Andreas,
A local / embedded version of BaseX XQJ, (i.e. no Socket connection) is planned for BaseX XQJ 1.3
The primary aim will be to have as much compatibility as possible with the client/server based version [1]
This is not a quick job and I wouldn't expect anything soon. Perhaps in the next 2 months or so.
In the meantime, I suggest that you at least test your software against the Client / Server XQJ driver, because although unlikely, there "may" be differences in behaviour between the the version of BaseX XQJ driver you're currently using and the XQJ.NET implementation.
If your code needs to change as a result of switching drivers, you will get foresight on those changes in advance.
Kind Regards,
Charles
On 24 October 2012 12:41, Christian Grün christian.gruen@gmail.com wrote:
Hi Andreas,
as you correctly observed, the old XQJ implementation has been discontinued, and our current XQJ implementation is based on the client/server architecture. We already thought about providing a local version as well. The (closed source) implementation would be completely up to Charles Foster, and I imagine it could take some time to finalize, so please don't expect any short-term miracles. Charles might give you more details just in case.
Christian ___________________________
On Wed, Oct 24, 2012 at 12:53 PM, Andreas Rulle andreas.rulle@nexoma.de wrote:
Hello BaseX-Team,
this mail informs you about the further steps that have been done in this point:
- Search for source code
I have not been able to find the source code for basex-xqj-1.2.3.zip. A question would be if the source code for this module is available. (Just find the answer to the question "in the source code").
- JavaDoc
The JavaDoc says:
"This implementation internally creates Socket connections with a BaseX Server" see [1]
From point 2. I would conclude that it is not possible to use a local/"embedded" database with the new XQJ.
With best regards,
Andreas
[1] basex-xqj-1.2.3/doc/javadoc/net/xqj/basex/BaseXXQDataSource.html
Hello BaseX-Team,
it is great to see the vibrant evolution of your BaseX development.
We have a component that is at the moment on (the now outdated) BaseX 7.0.2 and the component uses
- local databases (to make it as independent as possible from the
environment where it runs)
- and XQJ.
Now we want to migrate this component to BaseX 7.3/BaseX 7.5.
But all the examples of the new (1.2.x) version of basex-xqj use the client server architecture, and it is stressed in the documentation:
"BaseX XQJ communicates with a BaseX Server via a client-server architecture, where BaseX XQJ acts as the client and the BaseX XML Database acts as the server.", see page 3 in [1]
Question:
Can BaseX 7.3/BaseX7.5 access a local database with XQJ?
With best regards
Andreas
[1] BaseX XQJ Documenation, Version 1.2.3, 1th October 2012
BaseX-Talk mailing list BaseX-Talk@mailman.uni-konstanz.de https://mailman.uni-konstanz.de/mailman/listinfo/basex-talk
BaseX-Talk mailing list BaseX-Talk@mailman.uni-konstanz.de https://mailman.uni-konstanz.de/mailman/listinfo/basex-talk
BaseX-Talk mailing list BaseX-Talk@mailman.uni-konstanz.de https://mailman.uni-konstanz.de/mailman/listinfo/basex-talk
BaseX-Talk mailing list BaseX-Talk@mailman.uni-konstanz.de https://mailman.uni-konstanz.de/mailman/listinfo/basex-talk
-- Nexoma GmbH - Ihre Agentur für Apps, Online Shops und elektronische Produktkataloge Niederlassung Paderborn Technologiepark 20 33100 Paderborn
Internet: www.nexoma.de Amtsgericht Arnsberg, HRB 9365 Geschäftsführer: Guido Sauerland
BaseX-Talk mailing list BaseX-Talk@mailman.uni-konstanz.de https://mailman.uni-konstanz.de/mailman/listinfo/basex-talk
Hello Christian,
thank you for your quick response.
Your hint to the possibility to sponsor this feature has been discussed with the management.
At the beginning of the road is was important for us to have XQJ as a JDBC like interface for a looser coupling of the components.
Now, after building more and more trust into the BaseX, the direct access to the evolving feature set of the BaseX database seems to have become more important.
During the mentioned discussion the decision evolved to directly use the BaseX-Api and substitute the XQJ dependency for the embedded components in one of our next iterations.
Sounds like an effect of the familiar embrace and extend strategy, see [1], of a well known software company ;-)
With best regards,
Andreas
[1]: http://en.wikipedia.org/wiki/Embrace,_extend_and_extinguish
Hi Andreas,
in the last weeks, Charles Foster has been pretty busy organizing the fabulous XMLLondon Conference that just took place last weekend [1]. He may have more time to focus on the embedded version of XQJ in the upcoming months. If you believe it’s helpful for your product, and if you would be interested to sponsor the feature, feel free to contact us for more details.
Best, Christian
[1] http://xmllondon.com ___________________________
2013/6/18 Andreas Rulle andreas.rulle@nexoma.de:
Hello Christian,
your BaseX database is with RESTXQ on very interesting road towards xquery based web applications and the Unit Module puts XQuery into a new software engineering perspective!
While this application field naturally leads to a client/server architecture we have an expanding row of usages of BaseX in embedded mode, see for example [1].
At the moment the Basex 7.7 still has basex-xqj-1.2.3.jar.
Question: Are there plans to update to the upcoming (?) version basex-xqj-1.3.jar?
With best regards,
Andreas
[1] See slide 21 in PBSeasy - Magento und Big Data, http://www.meet-magento.de/programm/andreas-rulle-programm-meet-magento.html, Abruf 18.06.2013
Hello Charles,
thank you for your detailed answer.
Your answer enables us to make an "informed decision".
We have been interested in a bug-fix in that is contained in BaseX 7.3. But there is a logical workaround for this.
This workaround is better than to dismiss XQJ now and change the architecture of the software.
With our answer we can wait with an update of BaseX until XQJ 1.3 is there, because it will come in the "near future".
With best regards
Andreas
Hi Andreas,
A local / embedded version of BaseX XQJ, (i.e. no Socket connection) is planned for BaseX XQJ 1.3
The primary aim will be to have as much compatibility as possible with the client/server based version [1]
This is not a quick job and I wouldn't expect anything soon. Perhaps in the next 2 months or so.
In the meantime, I suggest that you at least test your software against the Client / Server XQJ driver, because although unlikely, there "may" be differences in behaviour between the the version of BaseX XQJ driver you're currently using and the XQJ.NET implementation.
If your code needs to change as a result of switching drivers, you will get foresight on those changes in advance.
Kind Regards,
Charles
On 24 October 2012 12:41, Christian Grün christian.gruen@gmail.com wrote:
Hi Andreas,
as you correctly observed, the old XQJ implementation has been discontinued, and our current XQJ implementation is based on the client/server architecture. We already thought about providing a local version as well. The (closed source) implementation would be completely up to Charles Foster, and I imagine it could take some time to finalize, so please don't expect any short-term miracles. Charles might give you more details just in case.
Christian ___________________________
On Wed, Oct 24, 2012 at 12:53 PM, Andreas Rulle andreas.rulle@nexoma.de wrote:
Hello BaseX-Team,
this mail informs you about the further steps that have been done in this point:
- Search for source code
I have not been able to find the source code for basex-xqj-1.2.3.zip. A question would be if the source code for this module is available. (Just find the answer to the question "in the source code").
- JavaDoc
The JavaDoc says:
"This implementation internally creates Socket connections with a BaseX Server" see [1]
From point 2. I would conclude that it is not possible to use a local/"embedded" database with the new XQJ.
With best regards,
Andreas
[1] basex-xqj-1.2.3/doc/javadoc/net/xqj/basex/BaseXXQDataSource.html
Hello BaseX-Team,
it is great to see the vibrant evolution of your BaseX development.
We have a component that is at the moment on (the now outdated) BaseX 7.0.2 and the component uses
- local databases (to make it as independent as possible from the
environment where it runs)
- and XQJ.
Now we want to migrate this component to BaseX 7.3/BaseX 7.5.
But all the examples of the new (1.2.x) version of basex-xqj use the client server architecture, and it is stressed in the documentation:
"BaseX XQJ communicates with a BaseX Server via a client-server architecture, where BaseX XQJ acts as the client and the BaseX XML Database acts as the server.", see page 3 in [1]
Question:
Can BaseX 7.3/BaseX7.5 access a local database with XQJ?
With best regards
Andreas
[1] BaseX XQJ Documenation, Version 1.2.3, 1th October 2012
BaseX-Talk mailing list BaseX-Talk@mailman.uni-konstanz.de https://mailman.uni-konstanz.de/mailman/listinfo/basex-talk
BaseX-Talk mailing list BaseX-Talk@mailman.uni-konstanz.de https://mailman.uni-konstanz.de/mailman/listinfo/basex-talk
BaseX-Talk mailing list BaseX-Talk@mailman.uni-konstanz.de https://mailman.uni-konstanz.de/mailman/listinfo/basex-talk
BaseX-Talk mailing list BaseX-Talk@mailman.uni-konstanz.de https://mailman.uni-konstanz.de/mailman/listinfo/basex-talk
-- Nexoma GmbH - Ihre Agentur für Apps, Online Shops und elektronische Produktkataloge Niederlassung Paderborn Technologiepark 20 33100 Paderborn
Internet: www.nexoma.de Amtsgericht Arnsberg, HRB 9365 Geschäftsführer: Guido Sauerland
BaseX-Talk mailing list BaseX-Talk@mailman.uni-konstanz.de https://mailman.uni-konstanz.de/mailman/listinfo/basex-talk
Hi Andreas,
Not sure if you got my previous e-mail?
If you want, I can send you BaseX XQJ 1.3 which has a local/embedded implementation of XQDataSource?
The only reason for not releasing it officially was because of being extremely busy with other things like XML London and writing further documentation for the XQJ drivers.
Kind Regards,
Charles
On 18 Jun 2013, at 17:13, Andreas Rulle andreas.rulle@nexoma.de wrote:
Hello Christian,
thank you for your quick response.
Your hint to the possibility to sponsor this feature has been discussed with the management.
At the beginning of the road is was important for us to have XQJ as a JDBC like interface for a looser coupling of the components.
Now, after building more and more trust into the BaseX, the direct access to the evolving feature set of the BaseX database seems to have become more important.
During the mentioned discussion the decision evolved to directly use the BaseX-Api and substitute the XQJ dependency for the embedded components in one of our next iterations.
Sounds like an effect of the familiar embrace and extend strategy, see [1], of a well known software company ;-)
With best regards,
Andreas
Hi Andreas,
in the last weeks, Charles Foster has been pretty busy organizing the fabulous XMLLondon Conference that just took place last weekend [1]. He may have more time to focus on the embedded version of XQJ in the upcoming months. If you believe it’s helpful for your product, and if you would be interested to sponsor the feature, feel free to contact us for more details.
Best, Christian
[1] http://xmllondon.com ___________________________
2013/6/18 Andreas Rulle andreas.rulle@nexoma.de:
Hello Christian,
your BaseX database is with RESTXQ on very interesting road towards xquery based web applications and the Unit Module puts XQuery into a new software engineering perspective!
While this application field naturally leads to a client/server architecture we have an expanding row of usages of BaseX in embedded mode, see for example [1].
At the moment the Basex 7.7 still has basex-xqj-1.2.3.jar.
Question: Are there plans to update to the upcoming (?) version basex-xqj-1.3.jar?
With best regards,
Andreas
[1] See slide 21 in PBSeasy - Magento und Big Data, http://www.meet-magento.de/programm/andreas-rulle-programm-meet-magento.html, Abruf 18.06.2013
Hello Charles,
thank you for your detailed answer.
Your answer enables us to make an "informed decision".
We have been interested in a bug-fix in that is contained in BaseX 7.3. But there is a logical workaround for this.
This workaround is better than to dismiss XQJ now and change the architecture of the software.
With our answer we can wait with an update of BaseX until XQJ 1.3 is there, because it will come in the "near future".
With best regards
Andreas
Hi Andreas,
A local / embedded version of BaseX XQJ, (i.e. no Socket connection) is planned for BaseX XQJ 1.3
The primary aim will be to have as much compatibility as possible with the client/server based version [1]
This is not a quick job and I wouldn't expect anything soon. Perhaps in the next 2 months or so.
In the meantime, I suggest that you at least test your software against the Client / Server XQJ driver, because although unlikely, there "may" be differences in behaviour between the the version of BaseX XQJ driver you're currently using and the XQJ.NET implementation.
If your code needs to change as a result of switching drivers, you will get foresight on those changes in advance.
Kind Regards,
Charles
On 24 October 2012 12:41, Christian Grün christian.gruen@gmail.com wrote:
Hi Andreas,
as you correctly observed, the old XQJ implementation has been discontinued, and our current XQJ implementation is based on the client/server architecture. We already thought about providing a local version as well. The (closed source) implementation would be completely up to Charles Foster, and I imagine it could take some time to finalize, so please don't expect any short-term miracles. Charles might give you more details just in case.
Christian ___________________________
On Wed, Oct 24, 2012 at 12:53 PM, Andreas Rulle andreas.rulle@nexoma.de wrote:
Hello BaseX-Team,
this mail informs you about the further steps that have been done in this point:
- Search for source code
I have not been able to find the source code for basex-xqj-1.2.3.zip. A question would be if the source code for this module is available. (Just find the answer to the question "in the source code").
- JavaDoc
The JavaDoc says:
"This implementation internally creates Socket connections with a BaseX Server" see [1]
From point 2. I would conclude that it is not possible to use a local/"embedded" database with the new XQJ.
With best regards,
Andreas
[1] basex-xqj-1.2.3/doc/javadoc/net/xqj/basex/BaseXXQDataSource.html
Hello BaseX-Team,
it is great to see the vibrant evolution of your BaseX development.
We have a component that is at the moment on (the now outdated) BaseX 7.0.2 and the component uses
- local databases (to make it as independent as possible from the
environment where it runs)
- and XQJ.
Now we want to migrate this component to BaseX 7.3/BaseX 7.5.
But all the examples of the new (1.2.x) version of basex-xqj use the client server architecture, and it is stressed in the documentation:
"BaseX XQJ communicates with a BaseX Server via a client-server architecture, where BaseX XQJ acts as the client and the BaseX XML Database acts as the server.", see page 3 in [1]
Question:
Can BaseX 7.3/BaseX7.5 access a local database with XQJ?
With best regards
Andreas
[1] BaseX XQJ Documenation, Version 1.2.3, 1th October 2012
BaseX-Talk mailing list BaseX-Talk@mailman.uni-konstanz.de https://mailman.uni-konstanz.de/mailman/listinfo/basex-talk
BaseX-Talk mailing list BaseX-Talk@mailman.uni-konstanz.de https://mailman.uni-konstanz.de/mailman/listinfo/basex-talk
BaseX-Talk mailing list BaseX-Talk@mailman.uni-konstanz.de https://mailman.uni-konstanz.de/mailman/listinfo/basex-talk
BaseX-Talk mailing list BaseX-Talk@mailman.uni-konstanz.de https://mailman.uni-konstanz.de/mailman/listinfo/basex-talk
-- Nexoma GmbH - Ihre Agentur für Apps, Online Shops und elektronische Produktkataloge Niederlassung Paderborn Technologiepark 20 33100 Paderborn
Internet: www.nexoma.de Amtsgericht Arnsberg, HRB 9365 Geschäftsführer: Guido Sauerland
BaseX-Talk mailing list BaseX-Talk@mailman.uni-konstanz.de https://mailman.uni-konstanz.de/mailman/listinfo/basex-talk
-- Nexoma GmbH - Ihre Agentur für Apps, Online Shops und elektronische Produktkataloge Niederlassung Paderborn Technologiepark 20 33100 Paderborn Tel.: + 49 (0) 52 51 1615 63 Mail: andreas.rulle@nexoma.de
Internet: www.nexoma.de Amtsgericht Arnsberg, HRB 9365 Geschäftsführer: Guido Sauerland
Hello Charles,
thank you for your responses, especially because you spent your precious time directly after organizing the XML London 2013 with such an inspiring agenda!
Internally we are considering some potential next moves and BaseX XQJ is one aspect of the whole picture, but there is no need for special urgency.
Many people like clean interfaces and the XQJ interface seems to be a real valuable abstraction.
Therefore I'll have a closer look on the version BaseX XQJ 1.3 when it there!
With kind regards
Andreas
Hi Andreas,
Not sure if you got my previous e-mail?
If you want, I can send you BaseX XQJ 1.3 which has a local/embedded implementation of XQDataSource?
The only reason for not releasing it officially was because of being extremely busy with other things like XML London and writing further documentation for the XQJ drivers.
Kind Regards,
Charles
On 18 Jun 2013, at 17:13, Andreas Rulle andreas.rulle@nexoma.de wrote:
Hello Christian,
thank you for your quick response.
Your hint to the possibility to sponsor this feature has been discussed with the management.
At the beginning of the road is was important for us to have XQJ as a JDBC like interface for a looser coupling of the components.
Now, after building more and more trust into the BaseX, the direct access to the evolving feature set of the BaseX database seems to have become more important.
During the mentioned discussion the decision evolved to directly use the BaseX-Api and substitute the XQJ dependency for the embedded components in one of our next iterations.
Sounds like an effect of the familiar embrace and extend strategy, see [1], of a well known software company ;-)
With best regards,
Andreas
Hi Andreas,
in the last weeks, Charles Foster has been pretty busy organizing the fabulous XMLLondon Conference that just took place last weekend [1]. He may have more time to focus on the embedded version of XQJ in the upcoming months. If you believe it’s helpful for your product, and if you would be interested to sponsor the feature, feel free to contact us for more details.
Best, Christian
[1] http://xmllondon.com ___________________________
2013/6/18 Andreas Rulle andreas.rulle@nexoma.de:
Hello Christian,
your BaseX database is with RESTXQ on very interesting road towards xquery based web applications and the Unit Module puts XQuery into a new software engineering perspective!
While this application field naturally leads to a client/server architecture we have an expanding row of usages of BaseX in embedded mode, see for example [1].
At the moment the Basex 7.7 still has basex-xqj-1.2.3.jar.
Question: Are there plans to update to the upcoming (?) version basex-xqj-1.3.jar?
With best regards,
Andreas
[1] See slide 21 in PBSeasy - Magento und Big Data, http://www.meet-magento.de/programm/andreas-rulle-programm-meet-magento.html, Abruf 18.06.2013
Hello Charles,
thank you for your detailed answer.
Your answer enables us to make an "informed decision".
We have been interested in a bug-fix in that is contained in BaseX 7.3. But there is a logical workaround for this.
This workaround is better than to dismiss XQJ now and change the architecture of the software.
With our answer we can wait with an update of BaseX until XQJ 1.3 is there, because it will come in the "near future".
With best regards
Andreas
Hi Andreas,
A local / embedded version of BaseX XQJ, (i.e. no Socket connection) is planned for BaseX XQJ 1.3
The primary aim will be to have as much compatibility as possible with the client/server based version [1]
This is not a quick job and I wouldn't expect anything soon. Perhaps in the next 2 months or so.
In the meantime, I suggest that you at least test your software against the Client / Server XQJ driver, because although unlikely, there "may" be differences in behaviour between the the version of BaseX XQJ driver you're currently using and the XQJ.NET implementation.
If your code needs to change as a result of switching drivers, you will get foresight on those changes in advance.
Kind Regards,
Charles
On 24 October 2012 12:41, Christian Grün christian.gruen@gmail.com wrote:
Hi Andreas,
as you correctly observed, the old XQJ implementation has been discontinued, and our current XQJ implementation is based on the client/server architecture. We already thought about providing a local version as well. The (closed source) implementation would be completely up to Charles Foster, and I imagine it could take some time to finalize, so please don't expect any short-term miracles. Charles might give you more details just in case.
Christian ___________________________
On Wed, Oct 24, 2012 at 12:53 PM, Andreas Rulle andreas.rulle@nexoma.de wrote:
Hello BaseX-Team,
this mail informs you about the further steps that have been done in this point:
- Search for source code
I have not been able to find the source code for basex-xqj-1.2.3.zip. A question would be if the source code for this module is available. (Just find the answer to the question "in the source code").
- JavaDoc
The JavaDoc says:
"This implementation internally creates Socket connections with a BaseX Server" see [1]
From point 2. I would conclude that it is not possible to use a local/"embedded" database with the new XQJ.
With best regards,
Andreas
[1] basex-xqj-1.2.3/doc/javadoc/net/xqj/basex/BaseXXQDataSource.html
Hello BaseX-Team,
it is great to see the vibrant evolution of your BaseX development.
We have a component that is at the moment on (the now outdated) BaseX 7.0.2 and the component uses
- local databases (to make it as independent as possible from the
environment where it runs)
- and XQJ.
Now we want to migrate this component to BaseX 7.3/BaseX 7.5.
But all the examples of the new (1.2.x) version of basex-xqj use the client server architecture, and it is stressed in the documentation:
"BaseX XQJ communicates with a BaseX Server via a client-server architecture, where BaseX XQJ acts as the client and the BaseX XML Database acts as the server.", see page 3 in [1]
Question:
Can BaseX 7.3/BaseX7.5 access a local database with XQJ?
With best regards
Andreas
[1] BaseX XQJ Documenation, Version 1.2.3, 1th October 2012
BaseX-Talk mailing list BaseX-Talk@mailman.uni-konstanz.de https://mailman.uni-konstanz.de/mailman/listinfo/basex-talk
BaseX-Talk mailing list BaseX-Talk@mailman.uni-konstanz.de https://mailman.uni-konstanz.de/mailman/listinfo/basex-talk
BaseX-Talk mailing list BaseX-Talk@mailman.uni-konstanz.de https://mailman.uni-konstanz.de/mailman/listinfo/basex-talk
BaseX-Talk mailing list BaseX-Talk@mailman.uni-konstanz.de https://mailman.uni-konstanz.de/mailman/listinfo/basex-talk
-- Nexoma GmbH - Ihre Agentur für Apps, Online Shops und elektronische Produktkataloge Niederlassung Paderborn Technologiepark 20 33100 Paderborn
Internet: www.nexoma.de Amtsgericht Arnsberg, HRB 9365 Geschäftsführer: Guido Sauerland
BaseX-Talk mailing list BaseX-Talk@mailman.uni-konstanz.de https://mailman.uni-konstanz.de/mailman/listinfo/basex-talk
-- Nexoma GmbH - Ihre Agentur für Apps, Online Shops und elektronische Produktkataloge Niederlassung Paderborn Technologiepark 20 33100 Paderborn Tel.: + 49 (0) 52 51 1615 63 Mail: andreas.rulle@nexoma.de
Internet: www.nexoma.de Amtsgericht Arnsberg, HRB 9365 Geschäftsführer: Guido Sauerland
Thank-you both. I'm currently creating new context before executing queries on the local database and it seems to be handling the concurrency well already, but I guess I may have just been lucky so far. I'll add the LocalSession bit and see how that works out.
Cheers Gary
________________________________ From: Christian Grün christian.gruen@gmail.com To: Andreas Weiler andreas.weiler@uni-konstanz.de Cc: The Trainspotter wys01@btinternet.com; "basex-talk@mailman.uni-konstanz.de" basex-talk@mailman.uni-konstanz.de Sent: Tuesday, 23 October 2012, 12:55 Subject: Re: [basex-talk] Best practices for concurrency
Hi Gary,
as Andreas mentioned, the server approach will ensure that all operations will be concurrently handled. An alternative, however, is to create a LocalSession instance, which provides the same interface and functionality as the ClientSession class, but does not rely on a database server. A little example (I hope I didn't introduce any typos):
Context ctx = new Context(); LocalSession ls = new LocalSession(ctx); ls.execute(new CreateDB("db", "<a/>")); System.out.println(ls.execute(new XQuery("db:open('db')"))); ctx.close();
Best, Christian ___________________________
On Sun, Oct 21, 2012 at 12:42 PM, Andreas Weiler andreas.weiler@uni-konstanz.de wrote:
Hi Gary,
best approach is to run a local server and then use client sessions. If you dont want to run a server, you need one seperate context for each thread.
-- Andreas
Am 20.10.2012 um 17:53 schrieb The Trainspotter:
Hi,
I've read through the online example on server concurrency, however, currently I'm not running a BaseXServer instance I'm just running things locally. I want multiple threads in my application to be able to query the database at once without treading on each others toes. What's the best approach for doing this?
I have tried querying the database using different threads but I keep getting internal BaseX errors which leads me to think I'm going about this the wrong way.
Cheers Gary _______________________________________________ BaseX-Talk mailing list BaseX-Talk@mailman.uni-konstanz.de https://mailman.uni-konstanz.de/mailman/listinfo/basex-talk
BaseX-Talk mailing list BaseX-Talk@mailman.uni-konstanz.de https://mailman.uni-konstanz.de/mailman/listinfo/basex-talk
Hi Gary,
if you want to deal with concurrency issues, you'll indeed have to stick with one single context. What you can do, however, is to explicitly register a process, as I've shown in the mail to Rainer just a minute ago.
Best, Christian ___________________________
Thank-you both. I'm currently creating new context before executing queries on the local database and it seems to be handling the concurrency well already, but I guess I may have just been lucky so far. I'll add the LocalSession bit and see how that works out.
Cheers Gary ________________________________ From: Christian Grün christian.gruen@gmail.com To: Andreas Weiler andreas.weiler@uni-konstanz.de Cc: The Trainspotter wys01@btinternet.com; "basex-talk@mailman.uni-konstanz.de" basex-talk@mailman.uni-konstanz.de Sent: Tuesday, 23 October 2012, 12:55 Subject: Re: [basex-talk] Best practices for concurrency
Hi Gary,
as Andreas mentioned, the server approach will ensure that all operations will be concurrently handled. An alternative, however, is to create a LocalSession instance, which provides the same interface and functionality as the ClientSession class, but does not rely on a database server. A little example (I hope I didn't introduce any typos):
Context ctx = new Context(); LocalSession ls = new LocalSession(ctx); ls.execute(new CreateDB("db", "<a/>")); System.out.println(ls.execute(new XQuery("db:open('db')"))); ctx.close();
Best, Christian ___________________________
On Sun, Oct 21, 2012 at 12:42 PM, Andreas Weiler andreas.weiler@uni-konstanz.de wrote:
Hi Gary,
best approach is to run a local server and then use client sessions. If you dont want to run a server, you need one seperate context for each thread.
-- Andreas
Am 20.10.2012 um 17:53 schrieb The Trainspotter:
Hi,
I've read through the online example on server concurrency, however, currently I'm not running a BaseXServer instance I'm just running things locally. I want multiple threads in my application to be able to query the database at once without treading on each others toes. What's the best approach for doing this?
I have tried querying the database using different threads but I keep getting internal BaseX errors which leads me to think I'm going about this the wrong way.
Cheers Gary _______________________________________________ BaseX-Talk mailing list BaseX-Talk@mailman.uni-konstanz.de https://mailman.uni-konstanz.de/mailman/listinfo/basex-talk
BaseX-Talk mailing list BaseX-Talk@mailman.uni-konstanz.de https://mailman.uni-konstanz.de/mailman/listinfo/basex-talk
basex-talk@mailman.uni-konstanz.de