This might be a database connection/zope thing or specifically a DCOracle2 thing but here goes. When creating a product I generally create a 'SQL' directory and programatically within the product initialization add zsqlmethods to the directory. Then within the product I will reference the SQL directory with a getattr. Early on I was doing this where ever necessary vs. putting it in the __init__ and referencing it from the class. Doing the former causes an Oracle connection for each time it is referenced. So if I have a method within a class called by a DMTL page that does something like: sqlF = getattr(self, 'SQL') then sqlf.runazsqlmethod() A process is created with an Oracle connection each time the page is hit. I have moved these into the __init__ like so: self.sqlF = getattr(self, 'SQL') then: self.sqlF.runazsqlmethod() w/out this problem and that makes sense. However, I would still like to get some idea why the connections get created just referencing it the way I previously had it. Any insights? -- Scott Pierce <scott.pierce@sonopress.com> Sonopress LLC