Re: [Zope] Zope 2.8 and conflict errors

2005-08-08 Thread Stefan H. Holek
Well, you know... In this one project, we had an interesting (cough) situation with PostgreSQL + psycopg, where we would see plenty of write conflict errors coming from the DB connector. Turned out PostgreSQL has kind of an optimistic transaction control, where the DB server returns

Re: [Zope] Zope 2.8 and conflict errors

2005-08-07 Thread Dieter Maurer
Maciej Wisniowski wrote at 2005-8-5 23:37 +0200: Do you see a reason why your requests modify Procedure instances? I find this strange: I would expect that they are rarely modified (just once to set them up). It's possibly because of _connect method in DCOracle2 SP.py. It assigns to self

Re: [Zope] Zope 2.8 and conflict errors

2005-08-07 Thread Tim Peters
[Maciej Wisniowski, wrestling with _p_resolveConflict] Because of errors like: ConflictError: database conflict error (oid 0x0299de, class Products.DCOracle2.DA.Procedure, serial this txn started with 0x035f0726c7bfca88 2005-08-01 08:38:46.816215, serial currently committed

Re: [Zope] Zope 2.8 and conflict errors

2005-08-07 Thread Maciej Wisniowski
Assignments to _v_ attributes (they are so called volatile attributes) do not change the persistent state and cannot cause conflicts. There must be some other modification to the procedure objects. I should have written: It's possibly because of _connect method in DCOracle2 SP.py. It

Re: [Zope] Zope 2.8 and conflict errors

2005-08-07 Thread Maciej Wisniowski
Offhand it looks OK to me, but I don't have any of the code you're using. I think that it's not my code problem but rather something with DCOracle2 and to reproduce this error it is enough to call any 'DCOracle2 StoredProcedure' object simultaneously by a lot of users (50 is enough for my

Re: [Zope] Zope 2.8 and conflict errors

2005-08-07 Thread Tim Peters
[Tim Peters] Offhand it looks OK to me, but I don't have any of the code you're using. [Maciej Wisniowski] I think that it's not my code problem but rather something with DCOracle2 and to reproduce this error it is enough to call any 'DCOracle2 StoredProcedure' object simultaneously by a

Re: [Zope] Zope 2.8 and conflict errors

2005-08-06 Thread Maciej Wisniowski
Not correct. _p_resolveConflict is used in Zope 2.8.x (and in Zope 3) exactly the same way it was used in 2.7.x. If it's not working, there may be a new bug in 2.8.x, but there's been report of that yet. Because of errors like: ConflictError: database conflict error (oid 0x0299de, class

Re: [Zope] Zope 2.8 and conflict errors

2005-08-05 Thread Maciej Wisniowski
That looks like a write conflict. MVCC helps to lower/eliminate the rate of read conflicts. One option to reduce the rate of this write conflict is to tune the session machinery to suit. For example use session-resolution-seconds of say 300 seconds. Thanks! I've changed

Re: [Zope] Zope 2.8 and conflict errors

2005-08-05 Thread Dieter Maurer
Maciej Wisniowski wrote at 2005-8-5 09:23 +0200: ... li Module ZEO.ClientStorage, line 877, in _check_serials/li /ulConflictError: database conflict error (oid 0x0299de, class Products.DCOracle2.DA.Procedure, serial this txn started with 0x035f181b76214155 2005-08-04 08:59:27.686696,

Re: [Zope] Zope 2.8 and conflict errors

2005-08-05 Thread Maciej Wisniowski
Do you see a reason why your requests modify Procedure instances? I find this strange: I would expect that they are rarely modified (just once to set them up). It's possibly because of _connect method in DCOracle2 SP.py. It assigns to self _v_proc, connection, and errors count. Yes, it's a bit

Re: [Zope] Zope 2.8 and conflict errors

2005-08-05 Thread Tim Peters
[Maciej Wisniowski] ... One more question - am I correct that _p_resolveConflict is not used anymore in Zope 2.8.x? Not correct. _p_resolveConflict is used in Zope 2.8.x (and in Zope 3) exactly the same way it was used in 2.7.x. If it's not working, there may be a new bug in 2.8.x, but

Re: [Zope] Zope 2.8 and conflict errors

2005-08-03 Thread Maciej Wisniowski
It might. ZEO adds network overhead to ZODB transactions, which generally increases the likelihood of conflict errors. I've created ZEO and executed the same test with my application. Tests were done with SQLRelay backend (DCOracle2 is running now ;)) I have tested this with 50, 55, 60

Re: [Zope] Zope 2.8 and conflict errors

2005-08-03 Thread Maciej Wisniowski
I've lost context here... is this good or bad? ;-) I'm keenly interested in your results, so please let me know. I've just send my results ;) Good or bad... it depends. It's much better than it was with Zope 2.8.0, it is better than with Zope 2.7.2 but it is not perfect because errors

Re: [Zope] Zope 2.8 and conflict errors

2005-08-03 Thread Chris McDonough
On Wed, 2005-08-03 at 23:02 +0200, Maciej Wisniowski wrote: Previously you've written that: Zope 2.8.0 ships with a TemporaryStorage implementation (used by sessions in the default configuration) which does not implement MVCC. The one in 2.8.1 (now in beta) and better will implement

Re: [Zope] Zope 2.8 and conflict errors

2005-08-02 Thread Maciej Wisniowski
I'm keenly interested in your results, so please let me know. Hi! We have just executed two tests of our app on Zope 2.8.1b1 and the results are good now. 1. Application with SQLRelay backend connected to Oracle. Simulation of 50 users. No internal server errors :) 2. Application with

Re: [Zope] Zope 2.8 and conflict errors

2005-08-02 Thread Paul Winkler
On Tue, Aug 02, 2005 at 11:28:40AM +0200, Maciej Wisniowski wrote: Previous installation with Zope 2.8 was on ZEO, this one is standalone Zope 2.8.1. I'm not sure if this matters. It might. ZEO adds network overhead to ZODB transactions, which generally increases the likelihood of conflict

[Zope] Zope 2.8 and conflict errors

2005-08-01 Thread Maciej Wisniowski
Hi! Does anybody tried 2.8 and can say something about conflict errors? I've done few tests and results are not good. We've checked one of our applications on Zope 2.7.2 and the same application on Zope 2.8. We have simulated 50-65 users executing the same path in application. There was total

Re: [Zope] Zope 2.8 and conflict errors

2005-08-01 Thread Chris McDonough
Hi Maciej, I can't speak to the 500 errors you're receiving but Zope 2.8.0 ships with a TemporaryStorage implementation (used by sessions in the default configuration) which does not implement MVCC. The one in 2.8.1 (now in beta) and better will implement MVCC, so you *should* see performance

Re: [Zope] Zope 2.8 and conflict errors

2005-08-01 Thread Dieter Maurer
Maciej Wisniowski wrote at 2005-8-1 12:21 +0200: ... Other errors are like Shouldn't load state xxx when connection is closed but these are known bugs in older ZODB version. Really? I do not know such errors in any ZODB version. I know these errors as persistency bugs in applications (among

Re: [Zope] Zope 2.8 and conflict errors

2005-08-01 Thread Maciej Wisniowski
Other errors are like Shouldn't load state xxx when connection is closed but these are known bugs in older ZODB version. Really? I do not know such errors in any ZODB version. I know these errors as persistency bugs in applications (among others some of mine)... I've found this

Re: [Zope] Zope 2.8 and conflict errors

2005-08-01 Thread Maciej Wisniowski
I can't speak to the 500 errors you're receiving but Zope 2.8.0 500 is HTTP code, not the error count. I've written this in a messy way. Zope 2.8.0 ships with a TemporaryStorage implementation (used by sessions in the default configuration) which does not implement MVCC. The one in 2.8.1