[ZODB-Dev] [ZODB4] - Shouldn't the new object be added to Connection._created ?

Ury Marshak um@hottech-israel.com
Mon, 8 Jul 2002 21:35:19 +0200


----- Original Message ----- From: "Jeremy Hylton" <jeremy@zope.com>
> A traceback would provide more details than BOOM <wink>.
/blush/ I must've gotten so used to it during the last week that
I got too accustomed to thinking of it as 'The BOOM' ;)

I'm attaching the trceback, the code used to generate it is attached to
my previous message (boy will I feel stupid if it works for you...
although I tried it on two different machines. I think I'll go and install
python/zeo/zodb4 on a Linux machine, just in case.. have to rewire
the network first *sigh*)

but in the meantime .. (something completely different ;) ...
how useful is ConflictResolution when running under ZEO?

First of all it wants all the sources to present on the server ...

Also resolving conflicts for user-objects may involve
dependencies on the state of the whole system which
certainly would not be available on the server...
So, the question is shouldn't it instead be somehow
propagated to the client?...

Ury

almost forgot the traceback... need to stop being so verbose... ;)

Traceback (most recent call last):
  File "C:\TEMP\zmt\tt.py", line 51, in ?
    do_main()
  File "C:\TEMP\zmt\tt.py", line 45, in do_main
    get_transaction().commit()
  File "C:\Python22\Lib\site-packages\Transaction\_defaultTransaction.py",
line
203, in commit
    self._commit(objects, jars, subtransaction, subjars)
  File "C:\Python22\Lib\site-packages\Transaction\_defaultTransaction.py",
line
249, in _commit
    j.commit(o, self)
  File "C:\Python22\Lib\site-packages\ZODB\Connection.py", line 423, in
commit
    self.commit_store(stack.pop(), file, pickler, transaction)
  File "C:\Python22\Lib\site-packages\ZODB\Connection.py", line 470, in
commit_s
tore
    pickler.dump(state)
  File "C:\Python22\Lib\site-packages\ZODB\Connection.py", line 702, in
persiste
nt_id
    klass = object.__class__
  File "C:\Python22\Lib\site-packages\ZODB\Connection.py", line 244, in
setstate

    p, serial = self._storage.load(oid, self._version)
  File "C:\Python22\Lib\site-packages\ZEO\ClientStorage.py", line 267, in
load
    p, s, v, pv, sv = self._server.zeoLoad(oid)
  File "C:\Python22\Lib\site-packages\ZEO\ServerStub.py", line 52, in
zeoLoad
    return self.rpc.call('zeoLoad', oid)
  File "C:\Python22\Lib\site-packages\ZEO\zrpc\connection.py", line 228, in
call

    return self._call(method, args)
  File "C:\Python22\Lib\site-packages\ZEO\zrpc\connection.py", line 254, in
_cal
l
    raise r_args[1] # error raised by server
KeyError:        ?