Thread: [Beankeeper-discussion] error when adding object to list
Brought to you by:
demonsystem
From: Shay M. <mat...@gm...> - 2009-03-02 07:57:36
|
Hi, i am getting the following exception when attempting to add an object to a List. hu.netmind.persistence.DatabaseFactory - got data source to: PostgreSQL (8.3.6) through driver: PostgreSQL Native Driver (PostgreSQL 8.3 JDBC3 with SSL (build 603)) Exception in thread "main" hu.netmind.persistence.StoreException: client thread is shutting down, so no response will be available. 2009-03-02 02:50:18,177 [Persistence-client] ERROR hu.netmind.persistence.node.NodeClient - error while listening for server events. at hu.netmind.persistence.node.NodeClient.sendObject(NodeClient.java:111) java.io.EOFException at java.io.ObjectInputStream$BlockDataInputStream.peekByte(ObjectInputStream.java:2554) at java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1297) at java.io.ObjectInputStream.readObject(ObjectInputStream.java:351) at hu.netmind.persistence.node.NodeClient$MessageListener.run(NodeClient.java:281) at java.lang.Thread.run(Thread.java:619) at hu.netmind.persistence.node.NodeClient.nextId(NodeClient.java:414) at hu.netmind.persistence.node.NodeManager.nextId(NodeManager.java:688) at hu.netmind.persistence.ObjectTracker.registerObject(ObjectTracker.java:217) at hu.netmind.persistence.ListImpl$ObjectWrapper.<init>(ListImpl.java:1050) at hu.netmind.persistence.ListImpl.add(ListImpl.java:558) at java.util.AbstractList.add(AbstractList.java:91) at BK.VRes.addDomain(VRes.java:35) at consoleapp.Main.main(Main.java:53) here is the class: public class VRes implements Serializable { protected String name; protected List vrUsers ; protected List domains; public void addDomain(Domain domain) { if (domains==null) { domains = new Vector(); } domains.add(domain); } Thanks, Shay |
From: Brautigam R. <de...@ne...> - 2009-03-02 10:13:12
|
Shay Matasaro írta: > Hi, > > i am getting the following exception when attempting to add an object to > a List. > > hu.netmind.persistence.DatabaseFactory - got data source to: PostgreSQL > (8.3.6) through driver: PostgreSQL Native Driver (PostgreSQL 8.3 JDBC3 > with SSL (build 603)) > Exception in thread "main" hu.netmind.persistence.StoreException: client > thread is shutting down, so no response will be available. > 2009-03-02 02:50:18,177 [Persistence-client] ERROR > hu.netmind.persistence.node.NodeClient - error while listening for > server events. Hello, This is only possible, if you had multiple BeanKeeper Stores running at the same time. This happens when the server node shuts down, in which case the clients will abort all running transactions. Be sure you have only one node running, or don't close the other nodes during the operation. Robert. |
From: Shay M. <mat...@gm...> - 2009-03-02 14:00:19
|
Hi Róbert, firstly , I'd like to thank you for your help . as you can see from my posts , i am trying to use Beankeepr in a commercial environment which is why all these issues are popping up , and why your prompt responses are much appreciated , as i am working around the clock on this app. i have setup the store as a singleton. but I am running 2 application at any given moment , one is a web app under glassfish , and the other is a standalone console app that i use for testing, debugging , etc... are they interfering with each other? although i am running both from within Nebeans , i assumed they were using different JVMs the console app completes its tasks and the shuts down , while the web app is stopped when i deploy a new version , i also often breakpoint both apps in debugging mode. is this the wrong way to do things? which approach do you recommend? Thanks, Shay Brautigam Róbert wrote: > Shay Matasaro írta: > >> Hi, >> >> i am getting the following exception when attempting to add an object to >> a List. >> >> hu.netmind.persistence.DatabaseFactory - got data source to: PostgreSQL >> (8.3.6) through driver: PostgreSQL Native Driver (PostgreSQL 8.3 JDBC3 >> with SSL (build 603)) >> Exception in thread "main" hu.netmind.persistence.StoreException: client >> thread is shutting down, so no response will be available. >> 2009-03-02 02:50:18,177 [Persistence-client] ERROR >> hu.netmind.persistence.node.NodeClient - error while listening for >> server events. >> > > Hello, > > This is only possible, if you had multiple BeanKeeper Stores running at > the same time. This happens when the server node shuts down, in which > case the clients will abort all running transactions. > Be sure you have only one node running, or don't close the other nodes > during the operation. > > Robert. > > |
From: Brautigam R. <de...@ne...> - 2009-03-02 16:08:29
|
Shay Matasaro írta: > Hi Róbert, > > firstly , I'd like to thank you for your help . No problem, I learn as much as you do. ... > i have setup the store as a singleton. > > but I am running 2 application at any given moment , one is a web app > under glassfish , and the other is a standalone console app that i use > for testing, debugging , etc... > > are they interfering with each other? > > although i am running both from within Nebeans , i assumed they were > using different JVMs Even if they are in different JVMs, two BeanKeeper nodes accessing the same database will connect to eachother and exchange synchronization and other data that is necessary to ensure atomicity, etc of operations. So yes, they are interfering. This is not a problem though, it should work unless the appointed server node (which is usually what started first) is stopped, in which case the client nodes have no other option than to indicate the error and reorganize around a new server node. > the console app completes its tasks and the shuts down , while the web > app is stopped when i deploy a new version , i also often breakpoint > both apps in debugging mode. > > is this the wrong way to do things? > > which approach do you recommend? It should be ok, as long as both are running. If one is shut down, the other might throw a few errors indicating that the server node just went down. After that is should come back as a server. > Thanks, > Shay > > > Brautigam Róbert wrote: >> Shay Matasaro írta: >> >>> Hi, >>> >>> i am getting the following exception when attempting to add an object >>> to a List. >>> >>> hu.netmind.persistence.DatabaseFactory - got data source to: >>> PostgreSQL (8.3.6) through driver: PostgreSQL Native Driver >>> (PostgreSQL 8.3 JDBC3 with SSL (build 603)) >>> Exception in thread "main" hu.netmind.persistence.StoreException: >>> client thread is shutting down, so no response will be available. >>> 2009-03-02 02:50:18,177 [Persistence-client] ERROR >>> hu.netmind.persistence.node.NodeClient - error while listening for >>> server events. >>> >> >> Hello, >> >> This is only possible, if you had multiple BeanKeeper Stores running at >> the same time. This happens when the server node shuts down, in which >> case the clients will abort all running transactions. >> Be sure you have only one node running, or don't close the other nodes >> during the operation. >> >> Robert. >> >> > > |
From: Shay M. <mat...@gm...> - 2009-03-03 00:18:57
|
Hi, Is there a way to identify the transition stage in which a server node has gone down, and the clients are busy choosing a new server node, in order to retry the query? Actually, it would be even better if the store itself would wait and retry the query instead of throwing an exception. Thanks, Shay Brautigam Róbert wrote: > Shay Matasaro írta: > >> Hi Róbert, >> >> firstly , I'd like to thank you for your help . >> > > No problem, I learn as much as you do. > > ... > >> i have setup the store as a singleton. >> >> but I am running 2 application at any given moment , one is a web app >> under glassfish , and the other is a standalone console app that i use >> for testing, debugging , etc... >> >> are they interfering with each other? >> >> although i am running both from within Nebeans , i assumed they were >> using different JVMs >> > > Even if they are in different JVMs, two BeanKeeper nodes accessing the > same database will connect to eachother and exchange synchronization and > other data that is necessary to ensure atomicity, etc of operations. So > yes, they are interfering. > This is not a problem though, it should work unless the appointed server > node (which is usually what started first) is stopped, in which case the > client nodes have no other option than to indicate the error and > reorganize around a new server node. > > >> the console app completes its tasks and the shuts down , while the web >> app is stopped when i deploy a new version , i also often breakpoint >> both apps in debugging mode. >> >> is this the wrong way to do things? >> >> which approach do you recommend? >> > > It should be ok, as long as both are running. If one is shut down, the > other might throw a few errors indicating that the server node just went > down. After that is should come back as a server. > > >> Thanks, >> Shay >> >> >> Brautigam Róbert wrote: >> >>> Shay Matasaro írta: >>> >>> >>>> Hi, >>>> >>>> i am getting the following exception when attempting to add an object >>>> to a List. >>>> >>>> hu.netmind.persistence.DatabaseFactory - got data source to: >>>> PostgreSQL (8.3.6) through driver: PostgreSQL Native Driver >>>> (PostgreSQL 8.3 JDBC3 with SSL (build 603)) >>>> Exception in thread "main" hu.netmind.persistence.StoreException: >>>> client thread is shutting down, so no response will be available. >>>> 2009-03-02 02:50:18,177 [Persistence-client] ERROR >>>> hu.netmind.persistence.node.NodeClient - error while listening for >>>> server events. >>>> >>>> >>> Hello, >>> >>> This is only possible, if you had multiple BeanKeeper Stores running at >>> the same time. This happens when the server node shuts down, in which >>> case the clients will abort all running transactions. >>> Be sure you have only one node running, or don't close the other nodes >>> during the operation. >>> >>> Robert. >>> >>> >>> >> > > > |
From: Brautigam R. <de...@ne...> - 2009-03-03 07:33:58
|
Shay Matasaro írta: > Hi, > > Is there a way to identify the transition stage in which a server node > has gone down, and the clients are busy choosing a new server node, in > order to retry the query? > > Actually, it would be even better if the store itself would wait and > retry the query instead of throwing an exception. Retry is not easy, we haven't figured it out yet. The problem is, when you build up a transaction with a server, and the server goes down, you can't just commit on another server, the whole context of the transaction has to be present (locks, events, etc), so you have to build the transaction up again from the start. Currently, the exception that is thrown is not specific, so you can't tell whether it was because the server went down or not. There is a DisconnectEvent sent however when the client disconnects. Robert. |