I've seen this as well under DCOracle.
-jon
Dyon Balding [EMAIL PROTECTED] writes:
OK, I've had more of a hack at this, and I've narrowed the problem
down a little.
It appears that any access to an SQLAlias object causes it to not
be correctly released. The SQLAlias objects means that you can
access column names using a different case to how they are stored
in the database.
For example, we store users in a users table in the database, with
column names like USERNAME, but they are accessed with:
dtml-var username, this causes the SQLAlias objects to stick around.
One solution to our problem is to just do a dtml-var USERNAME
instead. However that doesn't solve the problem with this
"feature" of being able to call it with a different case.
This is a fairly easy bug to reproduce, on my setup at least :).
I have tested it with ZSQLRelay and ZODBDA both talking to SQLServer,
and with ZPyGreSQLDA talking to PostgreSQL.
I would appreciate it if someone else can reproduce the bug,
and I'll put it in the Collector I guess.
thanks
-d
On Wed, Dec 06, 2000 at 09:06:47AM +1100, Dyon Balding wrote:
Hi,
I have an application that stores state data in a
SQLServer database. The Zope and database servers
run on different windows machines, using the ZODBCDA
product to connect Zope to the ODBC machinery.
What I have been observing is that the Zope client's
memory usage increases consistently when ZSQL methods
are being called. In the Debug screens, the
culprit appears to be Shared.DC.ZRDB.RDB.SQLAlias.
Here's a dump of the first few lines after hitting
a ZSQL method a few hundred times using ab. The
SQLAlias figures never seem to go down.
Class
December 5, 2000
1:58 pm
December 5,
2000
2:01 pm
Delta
Shared.DC.ZRDB.RDB.SQLAlias
1048
4068
+3020
ZClasses.ZClass.ZClass
73
108
+35
OFS.DTMLMethod.DTMLMethod
63
94
+31
In fact most of our servers run out of memory and need
to be restarted every couple of days when they get
sufficient use.
I've done a bit of a search of the mailing lists, and noone
else appears to be having the same problem. So does
anyone have an idea of what we might be doing differently
to everyone else? We appear to have the latest versions
installed.
I've had a bit of a look through the code, and it appears
that SQLAlias is used to case desensitize the column names
of the returned data?
Any pointers would be appreciated.
thanks, d
--
|Dyon Balding [EMAIL PROTECTED] |
___
Zope-Dev maillist - [EMAIL PROTECTED]
http://lists.zope.org/mailman/listinfo/zope-dev
** No cross posts or HTML encoding! **
(Related lists -
http://lists.zope.org/mailman/listinfo/zope-announce
http://lists.zope.org/mailman/listinfo/zope )
--
Dyon Balding [EMAIL PROTECTED]
___
Zope-Dev maillist - [EMAIL PROTECTED]
http://lists.zope.org/mailman/listinfo/zope-dev
** No cross posts or HTML encoding! **
(Related lists -
http://lists.zope.org/mailman/listinfo/zope-announce
http://lists.zope.org/mailman/listinfo/zope )
___
Zope-Dev maillist - [EMAIL PROTECTED]
http://lists.zope.org/mailman/listinfo/zope-dev
** No cross posts or HTML encoding! **
(Related lists -
http://lists.zope.org/mailman/listinfo/zope-announce
http://lists.zope.org/mailman/listinfo/zope )