Re: [Zope] Securly storing variables without session in zope

2011-06-14 Thread William Heymann
On Tuesday 14 June 2011, Jibin K.J wrote:
> Hi,
> 
>  I want to store values in variables to access form another page(a.k.a
> State management). Now I cannot use sessions since I have multiple Zope
> instances & if one fails the user need to be redirected to another Zope
> instance and one session is valid only for one Zope instance. Now my
> remaining options are

You can share the session over zeo between all your zope servers.

in your zeo.conf file you can put


name temporary storage for sessioning


and in your zope.conf put


   # Temporary storage database (for sessions)
   cache-size 

server xxx
storage temp
name session
var $INSTANCE/var
cache-size 0

mount-point /temp_folder
container-class Products.TemporaryFolder.TemporaryContainer



My zopes and zeo are on the same machine and for that I found that setting the 
cache-size to 0 inside zeoclient worked the best

I would also suggest connecting to zeo over a unix domaind socket instead of a 
port for speed and security reasons if zope and zeo are on the same machine.

If you setup a unix domain socket you would set server to 

server /path/to/my.soc

and in the zeo.conf you would do

address $INSTANCE/my.soc

call it whatever you want

At that points sessions will be shared over zeo. I have been using this for 
over a year now without a single problem. 

Also with this design you can restart your zope servers and as long as the zeo 
server running the session stuff remains running you lose no session data.

What I do is not bind any visitor to any zope server at all. I have nginx 
running in front of 4 zope servers doing load balancing and requests get 
distributed to all zope servers and the session is shared over zeo. For my 
setup this gave the best performance and reliability. That way there is no 
need to worry about setting up sticky sessions, you can restart any instance 
at any time with no interruptions.
___
Zope maillist  -  Zope@zope.org
https://mail.zope.org/mailman/listinfo/zope
**   No cross posts or HTML encoding!  **
(Related lists - 
 https://mail.zope.org/mailman/listinfo/zope-announce
 https://mail.zope.org/mailman/listinfo/zope-dev )


Re: [Zope] Monkey patch for BLOB support in OFS.Image Images and Files

2011-01-10 Thread William Heymann
On Saturday 08 January 2011, Tres Seaver wrote:
> On 01/08/2011 05:58 AM, Jens Vagelpohl wrote:
> > On 1/7/11 22:28 , William Heymann wrote:
> >> I have a monkey patch here that I would like comments on it and to see
> >> how it works for others.
> > 
> > Hi William,
> > 
> > A huge monkey patch like that makes it very hard to compare it with the
> > original implementation and see the actual changes. You could help the
> > review *greatly* by providing a diff to the original implementation
> > instead, and post that to the Zope bug tracker on Launchpad:
> > 
> > https://bugs.launchpad.net/zope2
> 
> The developer docs help explain how to create such a patch as a
> non-committer:  in particular:
> 
>  http://docs.zope.org/developer/noncommitter-svn.html
> 
> shows how to use SVN to generate the patch without needing write access.
> 
> 
> Tres.

I wasn't sure what I should call the bug or even what severity to give it so 
for now I have put the patch at.

https://github.com/Immudzen/MonkeyOFSImageFile/blob/master/blobpatch

It is a diff to zope 2.13 checkout from svn and the diff was generated 
according to the link provided.

This monkey patch is probably not suitable to be directly merged into zope 
though because I removed a lot of the pdata support. It can still serve pdata 
structures just not write them anymore since that did not seem important 
anymore but would need to be for a real patch to zope itself.

For my own usage I just needed to convert everything to blobs since that 
provided some very nice gains. If this is useful to others though I am willing 
to put in the work to make it a real patch to zope that would preserve the 
pdata stuff if needed.
___
Zope maillist  -  Zope@zope.org
https://mail.zope.org/mailman/listinfo/zope
**   No cross posts or HTML encoding!  **
(Related lists - 
 https://mail.zope.org/mailman/listinfo/zope-announce
 https://mail.zope.org/mailman/listinfo/zope-dev )


[Zope] Monkey patch for BLOB support in OFS.Image Images and Files

2011-01-07 Thread William Heymann
I have a monkey patch here that I would like comments on it and to see how it 
works for others.

https://github.com/Immudzen/MonkeyOFSImageFile

I have been testing it for a few weeks now and I have not run into any 
problems with it. It works on Zope 2.13 and it should work on Zope 2.12 also 
without any issues.

All that is needed it is to put this in your Products dir and make sure you 
have BLOB support setup correctly.

Once that is done all uses of the Image and File objects inside zope will save 
as BLOBs instead and existing objects can be converted to BLOB objects with a 
script I have in the README file.

What I have found so far is that with this zope has a lower memory usage and 
also runs faster. So far in my testing it is about 33% lower memory usage and 
I am interested in how others find it.

You can also find me in #zope as kosh if you have questions about it.
___
Zope maillist  -  Zope@zope.org
https://mail.zope.org/mailman/listinfo/zope
**   No cross posts or HTML encoding!  **
(Related lists - 
 https://mail.zope.org/mailman/listinfo/zope-announce
 https://mail.zope.org/mailman/listinfo/zope-dev )


Re: [Zope] Plone the new Zope?

2010-10-19 Thread William Heymann
On Tuesday 19 October 2010, Brian Sullivan wrote:
> I haven't done any Zope work for quite a while and have just restarted
> out of necessity. Things seem to have changed in the last few years.
> 
> I get the impression from the age of the Zope installs, the state of
> disrepair and link rot of the zope.org site that Zope is in its final
> death throes as an independent entity ? I tried to look for an
> independent version of Plone that I can install on an existing Zope =
> the only install I could find is a complete installer including Zope.
> 
> Is Plone the new Zope?


You probably want to go go http://zope2.zope.org
Newer zope releases and other things are not showing up on the zope.org site. 
However fixing all the links on zope.org is probably a pretty massive 
undertaking.

Zope 2 itself is fine. I just doubt many people using it use zope.org.

I run a lot of zope 2 setups and I don't use plone on any of them.
___
Zope maillist  -  Zope@zope.org
https://mail.zope.org/mailman/listinfo/zope
**   No cross posts or HTML encoding!  **
(Related lists - 
 https://mail.zope.org/mailman/listinfo/zope-announce
 https://mail.zope.org/mailman/listinfo/zope-dev )


[Zope] problem with ++resource++ on zope 2.9

2010-03-25 Thread William Heymann
I have a product that is working fine on zope 2.12 but on 2.9 I can't get it 
to work.

my configure.zcml is

http://namespaces.zope.org/zope";
xmlns:browser="http://namespaces.zope.org/browser";
>





On 2.12  myserver/++resource++EditArea/somefile.js  returns the file just fine
but on 2.9 I just get a NotFound error.

The product is sitting in the Products dir of my instance and I know it is 
getting loaded on 2.9 because the product is showing up in the control panel 
and its __init__.py is getting run.

Any ideas on how to make this work on 2.9? Mostly this is just for transition 
stuff but it would be very nice to get it to work.
___
Zope maillist  -  Zope@zope.org
https://mail.zope.org/mailman/listinfo/zope
**   No cross posts or HTML encoding!  **
(Related lists - 
 https://mail.zope.org/mailman/listinfo/zope-announce
 https://mail.zope.org/mailman/listinfo/zope-dev )


Re: [Zope] exUserFolder and Zope 2.12

2010-01-01 Thread William Heymann
On Thursday 17 December 2009, Andrew Milton wrote:
> +---[ Baiju M ]--
> 
> | Hi,
> | In exUserFolder there are few exceptions raised like this:
> |
> | raise 'LoginRequired', self.docLogin(self, request)
> |
> | This will not working in Zope 2.12 (Python 2.6)
> |
> | Any idea, how to change it ?
> 
> Replace the raise with;
> 
> request.RESPONSE.setStatus(401)
> request.RESPONSE.setHeader('Content-Type','text/html')
> request.RESPONSE.write(self.docLogin(self,request))
> 

I just tried that and it works in Firefox, Chrome and Opera but it is failing
in IE and Konqueror. I tried a few versions of each of these browsers and
the results are consistent. I don't see why it is failing though.

I tried exactly what is up there along with also trying self.docLoginRedirect 
instead of docLogin. I used wireshark to watch the connection and I don't see 
anything wrong with it.

GET /XX/manage HTTP/1.1
Host: .XX.com
Connection: Keep-Alive
User-Agent: Mozilla/5.0 (compatible; Konqueror/4.3; Linux) KHTML/4.3.4 (like 
Gecko)
Pragma: no-cache
Cache-control: no-cache
Accept: text/html, image/jpeg;q=0.9, image/png;q=0.9, text/*;q=0.9, 
image/*;q=0.9, */*;q=0.8
Accept-Encoding: x-gzip, x-deflate, gzip, deflate
Accept-Charset: utf-8, utf-8;q=0.5, *;q=0.5
Accept-Language: en-US, en
Cookie: tree-s="XXx"; 
__utma=XX.XX.X..X.XXX; _ZopeId="X"

HTTP/1.1 401 Unauthorized
Date: Sat, 02 Jan 2010 05:31:47 GMT
Server: Zope/(2.12.1, python 2.6.4, linux2) ZServer/1.1
Content-Type: text/html
Via: 1.1 XXX..com
Keep-Alive: timeout=15, max=100
Connection: Keep-Alive
Transfer-Encoding: chunked

386


Logging In


http://XXX.X.com/X/acl_users/redirectToLogin?destination=http://.X.com//manage";>






0


If I go to the page that the Refresh refers to in any of the browers that 
works fine. The raise form works fine on older versions of zope with no issues 
on any of these browers. Konqueror and IE will both have their icons spinning 
on that page like they are waiting for something.

Any ideas or help would be appreciated. I have tried lots of things to get
it working.
___
Zope maillist  -  Zope@zope.org
https://mail.zope.org/mailman/listinfo/zope
**   No cross posts or HTML encoding!  **
(Related lists - 
 https://mail.zope.org/mailman/listinfo/zope-announce
 https://mail.zope.org/mailman/listinfo/zope-dev )


Re: [Zope] getting post data from a webcam

2008-07-09 Thread William Heymann
On Wednesday 09 July 2008, Jonathan wrote:

>
> You need to provide more details... try dumping the contents of REQUEST and
> posting them as was suggested earlier.
>

I did post all the relevant fields from the REQUEST


here are all of the them in REQUEST.items()

[('ACTUAL_URL', 'http://www.X.com/imageuploader'), 
('AUTHENTICATED_USER', ), 
('AUTHENTICATION_PATH', 'XXX/VirtualHostBase//'), ('BASE0', 'http://
www.XXcom'), ('BASE1', 'http://www.cougarcanyonliving.com'), 
('BASE2', 'http://www..com/imageuploader'), 
('CONTENT_LENGTH', '111695'), ('CONTENT_TYPE', 'image/jpeg'), 
('GATEWAY_INTERFACE', 'CGI/1.1'), ('HTTP_CONTENT_DISPOSITION', 'attachment; 
filename="image01-07-29_05-54-26-96.jpg"'), ('HTTP_HOST', '127.0.0.1:9673'), 
('HTTP_MAX_FORWARDS', '10'), ('HTTP_USER_AGENT', 'Axis shttpclien
t $Revision: 1.45 $'), ('HTTP_VIA', '1.0 www..com'), 
('HTTP_X_FORWARDED_FOR', 'XX.XXX.XXX.XXX'), 
('HTTP_X_FORWARDED_HOST', '.com'), 
('HTTP_X_FORWARDED_SERVER', 'www.X.com'), ('PARENTS', [, ]), 
('PATH_INFO', 
'/VirtualHostBase/http/www..com:80/XXX/VirtualHostRoot/imageuploader'), 
('PATH_TRANSLATED', '/VirtualHostBase
/http/www..com:80/XXX/VirtualHostRoot/imageuploader'), ('PUBLISHED', 
), ('REMOTE_ADDR', '127.0.0.1'), 
('REQUEST_METHOD', 'POST'), ('RESPONSE', ZServerHTTPRe
sponse('')), ('SCRIPT_NAME', ''), ('SERVER_NAME', 'localhost'), 
('SERVER_PORT', '9673'), ('SERVER_PROTOCOL', 'HTTP/1.1'), 
('SERVER_SOFTWARE', 'Zope/(Zope 2.9.6-final, python 2.4.4, linux2) 
ZServer/1.1'), ('SERVER_URL', 'http://www..com'), ('SESSION', id: 
12155753281337189705, token: 99836730A3cKJMzoaVU, content keys: []), 
('TraversalRequestNameStack', []), ('URL', 'http://www..com/
imageuploader'), ('URL0', 'http://www..com/imageuploader'), 
('URL1', 'http://www..com'), 
('VIRTUAL_URL', 'http://www..com/imageuploader'), 
('VIRTUAL_URL_PARTS', ('http://www..com', 'imageuploader')), 
('VirtualRootPhysicalPath', ('', 'XXX')), 
('__aca', '/36gevRRS99FhE%2BrH6GVLeSzXzA%3D%0A'), ('traverse_subpath', [])]

there is nothing in REQUEST.form


___
Zope maillist  -  Zope@zope.org
http://mail.zope.org/mailman/listinfo/zope
**   No cross posts or HTML encoding!  **
(Related lists - 
 http://mail.zope.org/mailman/listinfo/zope-announce
 http://mail.zope.org/mailman/listinfo/zope-dev )


Re: [Zope] getting post data from a webcam

2008-07-09 Thread William Heymann
On Wednesday 09 July 2008, Tino Wildenhain wrote:
> William Heymann wrote:
> > I am trying to integrate a webcamera with a site and I can get it to POST
> > the data to a certain url on the server the problem is I can't figure out
> > how to get access to the data. It is not in REQUEST.form
> >
> > the relevant request vars are
> >
> > ('CONTENT_LENGTH', '111695')
> > ('CONTENT_TYPE', 'image/jpeg')
> > ('HTTP_CONTENT_DISPOSITION', 'attachment;
> > filename="image01-07-29_05-54-26-96.jpg"')
> >
> > This is being posted to a python script object inside zope, however if I
> > need to use an external method that is not a problem I just need to
> > figure out how to get the data.
>
> If the file is posted as attachment (similar to file upload) it should
> appear in the relevant form element as file. You can just use the method
> .read() on it to get the data (or feed it into factory of image/file)
>

Unfortunately it is now showing up in REQUEST.form, it is not a POST like what 
you get with a file upload from a form. Zope is showing that the correct size 
of data was sent to that page.

> For this to work the data needs to be sent as
> enctype="multipart/form-data" (hopefully the cam does this).
>

It was not sent with that kind of encoding at least not in any way I can tell. 
It was a webcam and all I could give it was a url to POST the data to and it 
did not submit it like a regular form.

> Maybe you send all variables of the request to figure out.
>
> Regards
> Tino


___
Zope maillist  -  Zope@zope.org
http://mail.zope.org/mailman/listinfo/zope
**   No cross posts or HTML encoding!  **
(Related lists - 
 http://mail.zope.org/mailman/listinfo/zope-announce
 http://mail.zope.org/mailman/listinfo/zope-dev )


[Zope] getting post data from a webcam

2008-07-08 Thread William Heymann
I am trying to integrate a webcamera with a site and I can get it to POST the 
data to a certain url on the server the problem is I can't figure out how to 
get access to the data. It is not in REQUEST.form

the relevant request vars are

('CONTENT_LENGTH', '111695')
('CONTENT_TYPE', 'image/jpeg')
('HTTP_CONTENT_DISPOSITION', 'attachment; 
filename="image01-07-29_05-54-26-96.jpg"')

This is being posted to a python script object inside zope, however if I need 
to use an external method that is not a problem I just need to figure out how 
to get the data.

Thanks
___
Zope maillist  -  Zope@zope.org
http://mail.zope.org/mailman/listinfo/zope
**   No cross posts or HTML encoding!  **
(Related lists - 
 http://mail.zope.org/mailman/listinfo/zope-announce
 http://mail.zope.org/mailman/listinfo/zope-dev )


Re: [Zope] invalid load key

2006-10-30 Thread William Heymann
On Monday 30 October 2006 20:47, William Heymann wrote:
I know it is bad form to reply to your own post but I managed to fix it so I 
wanted to say how in case anyone else runs into this problem.

> This is the traceback I am getting when I try to pack the db
>
>
>
> Traceback (innermost last):
>   Module ZPublisher.Publish, line 115, in publish
>   Module ZPublisher.mapply, line 88, in mapply
>   Module ZPublisher.Publish, line 41, in call_object
>   Module App.ApplicationManager, line 426, in manage_pack
>   Module ZODB.DB, line 605, in pack
>   Module ZODB.FileStorage.FileStorage, line 1348, in pack
>   Module ZODB.FileStorage.fspack, line 482, in pack
>   Module ZODB.FileStorage.fspack, line 228, in findReachable
>   Module ZODB.FileStorage.fspack, line 304, in findReachableAtPacktime
>   Module ZODB.FileStorage.fspack, line 377, in findrefs
>   Module ZODB.serialize, line 625, in referencesf
> UnpicklingError: invalid load key, '^\'
>

For some reason the object that was damage was inside a ZCatalog. Darned if I 
know why that key would refer to something in a ZCatalog. 

How I found it was I just tried to export one folder after another and worked 
my way down until I found that object as the one that would not export. Once 
I had it found I deleted it and just created another one and it works now.

So if anyone else runs into this problem and can't find the object if you do 
an export it will throw an error if it has the bad object in it so you can 
just export containing folders until you get the problem and then go down 
until you find the appropriate object.

___
Zope maillist  -  Zope@zope.org
http://mail.zope.org/mailman/listinfo/zope
**   No cross posts or HTML encoding!  **
(Related lists - 
 http://mail.zope.org/mailman/listinfo/zope-announce
 http://mail.zope.org/mailman/listinfo/zope-dev )


[Zope] invalid load key

2006-10-30 Thread William Heymann
This is the traceback I am getting when I try to pack the db



Traceback (innermost last):
  Module ZPublisher.Publish, line 115, in publish
  Module ZPublisher.mapply, line 88, in mapply
  Module ZPublisher.Publish, line 41, in call_object
  Module App.ApplicationManager, line 426, in manage_pack
  Module ZODB.DB, line 605, in pack
  Module ZODB.FileStorage.FileStorage, line 1348, in pack
  Module ZODB.FileStorage.fspack, line 482, in pack
  Module ZODB.FileStorage.fspack, line 228, in findReachable
  Module ZODB.FileStorage.fspack, line 304, in findReachableAtPacktime
  Module ZODB.FileStorage.fspack, line 377, in findrefs
  Module ZODB.serialize, line 625, in referencesf
UnpicklingError: invalid load key, '^\'


How can I find out what object is damaged so I can fix it/remove it?

My best guess on what caused the problem was undoing a large set of deletes 
because someone deleted something they should not have and then deleting 
those objects again. I tried to run fsrecover.py on the db and it seems to 
just spin at around 99%. I will run it again and just leave it running and 
see if it ever finishes but I let it run for a pretty long time already.

Also any idea on what could have really caused the problem? memtest did not 
report any errors when I last ran it and the hard drive diagnostics don't 
report any issues either.

The Zope version is 2.9.5 and the db is about 2GB in size and the point at 
which fsrecover.py stalls is about the last 4 megs.

Thanks
___
Zope maillist  -  Zope@zope.org
http://mail.zope.org/mailman/listinfo/zope
**   No cross posts or HTML encoding!  **
(Related lists - 
 http://mail.zope.org/mailman/listinfo/zope-announce
 http://mail.zope.org/mailman/listinfo/zope-dev )


Re: [Zope] not allowed to access a particular tuple

2006-10-20 Thread William Heymann
On Friday 20 October 2006 07:05, Jonathan wrote:

>
> The 'yield' statement is not allowed within a 'try' clause (see the Python
> Reference manual).
>

Hmm that seems strange, it works just fine in all the places I have done it, 
the only issue is zope not liking the returned object if it is not a single 
item. When it is reading over records it is raising exceptions in the calls 
to getObject() sometimes and on all the tests it just does not return those 
objects which is exactly what it should do.

http://www.python.org/doc/2.4.3/ref/yield.html#l2h-510

According to those docs you can't use yield inside a try finally not a try 
except.


> Why don't you just build a simple list (or list of tuples) and return that?
>

I wanted to use yield because records from a Catalog is already lazy and I did 
not want to load a bunch of objects into ram that I did not need to, that is 
why I did not return a list.

>
> Jonathan
___
Zope maillist  -  Zope@zope.org
http://mail.zope.org/mailman/listinfo/zope
**   No cross posts or HTML encoding!  **
(Related lists - 
 http://mail.zope.org/mailman/listinfo/zope-announce
 http://mail.zope.org/mailman/listinfo/zope-dev )


[Zope] not allowed to access a particular tuple

2006-10-20 Thread William Heymann
This is an external method I wrote to make it easier to iterate over the 
records returned from searching the catalog. However if I have

yield record,item instead of yield item it says that I am not allowed to 
access a particular tuple during iteration. How can I make it so that the 
value that it yields is something that a python script object can iterate 
over? I have also tried doing yield tuple((record,item))  yield 
list(record,item)  and they give the same problem.


How I use the script is pretty much

for record, doc in catalogIter(context.Catalog(searchterms)):
print record
print doc

Of course what is inside is different from that but it will cause the same 
problem since the issue happens in the iteration not inside the for loop.

import zExceptions

def catalogIter(records):
"iterate over a catalog safely"
for record in records:
try:
item = record.getObject()
if item is not None:
yield item
except (zExceptions.Unauthorized, zExceptions.NotFound, KeyError, 
AttributeError):
pass
___
Zope maillist  -  Zope@zope.org
http://mail.zope.org/mailman/listinfo/zope
**   No cross posts or HTML encoding!  **
(Related lists - 
 http://mail.zope.org/mailman/listinfo/zope-announce
 http://mail.zope.org/mailman/listinfo/zope-dev )


Re: [Zope] How to commit a piece of data in a transaction when the transaction is being aborted later

2006-06-21 Thread William Heymann
On Wednesday 21 June 2006 01:17, Tino Wildenhain wrote:
> William Heymann schrieb:

> > That is probably a good idea for long term to change things that way and
> > I would like to rewrite it. However right now I don't really want to
> > rewrite the way the current system works. I had hoped I could just use
> > get_transaction().commit() almost immediately after seeing the data from
> > Verisign.
>
> The problem is, there is no garanty about success of that transaction
> either. So if it rolls back, what do you do with verysign?
> Maybe a fifo logfile could solve your problem.

Actually that is not a problem. If just trying to write the data causes a 
failure then verisign won't ok the transaction which is the point. However 
what I want to happen is for the system to try and make sure as much as 
possible that the data that verisign sends gets written and committed before 
it tries to do other stuff. If that simple step should fail then there is a 
very seroius problem occurring and the system should not be okaying any 
orders. 

The thing with Verisign is called a silent post confirmation. Before verisign 
will okay a customer transaction it sends a post to my server with various 
details and my code will look over that and decide if it is all ok. A 
response code of 200 means ok, anything else means failure. Thus any uncaught 
error in zope will cause the transaction to fail which is the point. 

I just want to try and record the data that verisign sent and commit it before 
I try the rest so that what if something later should cause it to fail I 
still have a record of the commands send. Right now I am essentially writing 
the data to an OOBTree object.
___
Zope maillist  -  Zope@zope.org
http://mail.zope.org/mailman/listinfo/zope
**   No cross posts or HTML encoding!  **
(Related lists - 
 http://mail.zope.org/mailman/listinfo/zope-announce
 http://mail.zope.org/mailman/listinfo/zope-dev )


Re: [Zope] How to commit a piece of data in a transaction when the transaction is being aborted later

2006-06-20 Thread William Heymann
On Tuesday 20 June 2006 12:47, Chris McDonough wrote:

>
> I'd just record the data from Verisign in response to their POST (do
> nothing else) and come along later with a separate request to pick
> through the data to do postprocessing on it every so often; then the
> data always gets recorded and you can deal with errors in your
> postprocessing without needing to manage transaction state manually.
> ClockServer can help with the "do something every so often" aspect of
> this.
>

That is probably a good idea for long term to change things that way and I 
would like to rewrite it. However right now I don't really want to rewrite 
the way the current system works. I had hoped I could just use 
get_transaction().commit() almost immediately after seeing the data from 
Verisign. 

I do like the idea of ClockServer though and I will probably start playing 
with it soon to see how it will work for me. Does it work with zope 2.9 also?

Thanks
___
Zope maillist  -  Zope@zope.org
http://mail.zope.org/mailman/listinfo/zope
**   No cross posts or HTML encoding!  **
(Related lists - 
 http://mail.zope.org/mailman/listinfo/zope-announce
 http://mail.zope.org/mailman/listinfo/zope-dev )


[Zope] How to commit a piece of data in a transaction when the transaction is being aborted later

2006-06-20 Thread William Heymann
I am dealing with a zope system where Verisign is sending a POST to our server 
for ecommerece purposes. Currently I am writing the entire contents of the 
POST from verisign to the ZODB however I have a problem that some of these 
POSTs are not being recorded because an error occurs later in the 
transaction.

What I would like to do is isolate this recording from everything else. So 
that no matter what other error is raised that part will commit so I have a 
record of the conversation later.

Currently I can put the logging step as the very first step in the 
conversation with verisign and call get_transaction().commit() (I am 
currently using zope 2.7 and working on the migration to zope 2.9)

What would be the best way to deal with this problem? Should I just do a 
commit of the transaction as the very first step so that part is written and 
then zope will start a new transaction for the rest of the stuff done? Should 
I somehow tell zope to run a certain function as its own transaction? Also 
when I switch over to zope 2.9 how will these things need to be changed?

Thanks
___
Zope maillist  -  Zope@zope.org
http://mail.zope.org/mailman/listinfo/zope
**   No cross posts or HTML encoding!  **
(Related lists - 
 http://mail.zope.org/mailman/listinfo/zope-announce
 http://mail.zope.org/mailman/listinfo/zope-dev )