Update of /cvsroot/webware/Webware/MiddleKit/Docs
In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv995/Docs
Modified Files:
RelNotes-X.Y.html UsersGuide.html
Log Message:
Make ObjectStore use weak references to cache objects, so that the cache
doesn't grow indefinitely. Add 'CacheObjectsForever' setting to get the old
behaviour, if desired.
Document this setting, and document the fact that MiddleKit now supports
PostgreSQL.
Index: RelNotes-X.Y.html
===================================================================
RCS file: /cvsroot/webware/Webware/MiddleKit/Docs/RelNotes-X.Y.html,v
retrieving revision 1.18
retrieving revision 1.19
diff -C2 -d -r1.18 -r1.19
*** RelNotes-X.Y.html 27 Mar 2004 21:04:18 -0000 1.18
--- RelNotes-X.Y.html 8 Oct 2004 02:13:40 -0000 1.19
***************
*** 93,96 ****
--- 93,97 ----
<h2>New Features</h2>
<ul>
+ <li> MiddleKit now includes full support for PostgreSQL. <a href=UsersGuide.html#RDBMS>docs</a></a>
<li> You can specify a <b>SQLDefault</b> for attributes. <a href=UsersGuide.html#MT_SQLDefault>docs</a>
<li> For list references, you can specify the name of the "back reference" attribute explicitly. This allows creation of recursive structures, such as trees. <a href=UsersGuide.html#DT_Recursive>docs</a>
***************
*** 111,116 ****
<li><b>Dump.py</b> is documented.
! <li>When you delete an object, it is automatically removed from any list
! attributes in other objects.
</ul>
--- 112,118 ----
<li><b>Dump.py</b> is documented.
! <li>When you delete an object, it is automatically removed from any list attributes in other objects.</li>
!
! <li>There is a new setting called '<b>CacheObjectsForever</b>', which defaults to False. If set to True, the object store will cache objects indefinitely, which, depending on the size of your database, can use a lot of memory (this is the behaviour of previous versions of MiddleKit). If set to False, the object store uses "weak references" to cache the objects, which allows the Python garbage collector to collect an object as long as there are no other reachable references to that object. This change is unlikely to interfere with existing applications, but you can always set 'CacheObjectsForever' to True to get the old behaviour if you want.
</ul>
Index: UsersGuide.html
===================================================================
RCS file: /cvsroot/webware/Webware/MiddleKit/Docs/UsersGuide.html,v
retrieving revision 1.33
retrieving revision 1.34
diff -C2 -d -r1.33 -r1.34
*** UsersGuide.html 2 Jul 2004 17:37:59 -0000 1.33
--- UsersGuide.html 8 Oct 2004 02:13:41 -0000 1.34
***************
*** 57,60 ****
--- 57,69 ----
<p> The benefits of a relational database include: data storage, concurrent access and 3rd party tools (such as report generators).
+ <a name="RDBMS"<h2>RDBMS Support</h2></a>
+
+ <p>MiddleKit can use any of the following databases as a back-end:
+ <ul>
+ <li><a href="http://www.mysql.com">MySQL</a> using the <a href="http://sourceforge.net/projects/mysql-python">mysqldb</a> database adaptor.</li>
+ <li><a href="http://www.postgresql.org">PostgreSQL</a> using the <a href="http://initd.org/software/initd/psycopg">psycopg</a> database adaptor.</li>
+ <li><a href="http://www.microsoft.com/sql/">Microsoft SQL Server</a> using the <a href="http://www.egenix.com/files/python/mxODBC.html">mxODBC</a> adaptor.</li>
+ </ul>
+ </p>
<a name=DataTypes><h2>Data Types</h2></a>
***************
*** 536,539 ****
--- 545,553 ----
}</pre>
+ <p> <a name=Configuration_CacheObjectsForever></a> The <span class=name>CacheObjectsForever</span> setting causes MiddleKit to retain references to each object it loads from the database indefinitely. Depending on the amount of data in your database, this can use a lot of memory. The CacheObjectsForever setting defaults to False, which causes MiddleKit to use "weak references" to cache objects. This allows the Python garbage collector to collect an object when there are no other reachable references to the object.
+ <pre>{
+ 'CacheObjectsForever': True, # keep objects in memory indefinitely
+ }</pre>
+
<a name=GeneratedPy><h2>Generated Python</h2></a>
|