svn commit: r493271 - in /db/ojb/branches/OJB_1_0_RELEASE/src/doc/forrest/src/documentation: ./ content/xdocs/ content/xdocs/docu/ content/xdocs/docu/guides/

[email protected]
Newsgroups gmane.comp.jakarta.ojb.devel
Message-ID <[email protected]>
Author: arminw
Date: Fri Jan  5 18:05:23 2007
New Revision: 493271

URL: http://svn.apache.org/viewvc?view=rev&rev=493271
Log:
update docs

Modified:
    db/ojb/branches/OJB_1_0_RELEASE/src/doc/forrest/src/documentation/content/xdocs/docu/faq.xml
    db/ojb/branches/OJB_1_0_RELEASE/src/doc/forrest/src/documentation/content/xdocs/docu/guides/pb-guide.xml
    db/ojb/branches/OJB_1_0_RELEASE/src/doc/forrest/src/documentation/content/xdocs/docu/guides/performance.xml
    db/ojb/branches/OJB_1_0_RELEASE/src/doc/forrest/src/documentation/content/xdocs/docu/guides/repository.xml
    db/ojb/branches/OJB_1_0_RELEASE/src/doc/forrest/src/documentation/content/xdocs/site.xml
    db/ojb/branches/OJB_1_0_RELEASE/src/doc/forrest/src/documentation/skinconf.xml

Modified: db/ojb/branches/OJB_1_0_RELEASE/src/doc/forrest/src/documentation/content/xdocs/docu/faq.xml
URL: http://svn.apache.org/viewvc/db/ojb/branches/OJB_1_0_RELEASE/src/doc/forrest/src/documentation/content/xdocs/docu/faq.xml?view=diff&rev=493271&r1=493270&r2=493271
==============================================================================
--- db/ojb/branches/OJB_1_0_RELEASE/src/doc/forrest/src/documentation/content/xdocs/docu/faq.xml (original)
+++ db/ojb/branches/OJB_1_0_RELEASE/src/doc/forrest/src/documentation/content/xdocs/docu/faq.xml Fri Jan  5 18:05:23 2007
@@ -1173,6 +1173,18 @@
             </answer>
         </faq>
 
+        <faq id="batch-statements">
+            <question>
+                How to use batch statements with OJB?
+            </question>
+            <answer>
+                <p>
+                    Please refer to
+                    <a href="site:repository/batch-mode">batch-mode attribute section of jdbc-connection-descriptor in repository guide</a>.
+                </p>
+            </answer>
+        </faq>
+
         <faq id="lobs">
             <question>
                 How to use LOB's (like Blob and Clob) with OJB?

Modified: db/ojb/branches/OJB_1_0_RELEASE/src/doc/forrest/src/documentation/content/xdocs/docu/guides/pb-guide.xml
URL: http://svn.apache.org/viewvc/db/ojb/branches/OJB_1_0_RELEASE/src/doc/forrest/src/documentation/content/xdocs/docu/guides/pb-guide.xml?view=diff&rev=493271&r1=493270&r2=493271
==============================================================================
--- db/ojb/branches/OJB_1_0_RELEASE/src/doc/forrest/src/documentation/content/xdocs/docu/guides/pb-guide.xml (original)
+++ db/ojb/branches/OJB_1_0_RELEASE/src/doc/forrest/src/documentation/content/xdocs/docu/guides/pb-guide.xml Fri Jan  5 18:05:23 2007
@@ -165,6 +165,15 @@
                 </p>
             </section>
 
+            <anchor id="batch-statements"/>
+            <section>
+                <title>How to use batch statements</title>
+                <p>
+                    Please refer to
+                    <a href="site:repository/batch-mode">batch-mode attribute section of jdbc-connection-descriptor in repository guide</a>.
+                </p>
+            </section>
+
             <anchor id="listener"/>
             <section>
                 <title>Hook into OJB - PB-Listener and Instance Callbacks</title>

Modified: db/ojb/branches/OJB_1_0_RELEASE/src/doc/forrest/src/documentation/content/xdocs/docu/guides/performance.xml
URL: http://svn.apache.org/viewvc/db/ojb/branches/OJB_1_0_RELEASE/src/doc/forrest/src/documentation/content/xdocs/docu/guides/performance.xml?view=diff&rev=493271&r1=493270&r2=493271
==============================================================================
--- db/ojb/branches/OJB_1_0_RELEASE/src/doc/forrest/src/documentation/content/xdocs/docu/guides/performance.xml (original)
+++ db/ojb/branches/OJB_1_0_RELEASE/src/doc/forrest/src/documentation/content/xdocs/docu/guides/performance.xml Fri Jan  5 18:05:23 2007
@@ -94,14 +94,18 @@
                 </p>
                 <ul>
                     <li>
-                        <code>perf-test</code>  single/multi-threaded performance (stress) test of PB/ODMG api against native JDBC
+                        <code>perf-test</code>
+                        <br/>
+                        single/multi-threaded performance (stress) test of PB/ODMG api against native JDBC
                         <note>
                             The <em>performance test</em> output is written to console and in a
                             file called <em>OJB-Performance-Result.txt</em>.
                         </note>
                     </li>
                     <li>
-                        <code>performance</code>  single-threaded test, OJB API implementations (PB, ODMG) against native JDBC
+                        <code>performance</code>
+                        <br/>
+                        single-threaded test, OJB API implementations (PB, ODMG) against native JDBC
                     </li>
                 </ul>
             <p>
@@ -221,17 +225,34 @@
 </target>]]></source>
                 <p>
                     It's easy to change target database. Please
-                    refer to this
-                    <a href="site:platform/select-profile">document for details</a>.
+                    refer to this <a href="site:platform/select-profile">document for details</a>.
                 </p>
                 <p>
-                    A typical output of this test, using OJB against in-memory HSQL database
-                    (connection pooling and pooled prepared statements are enabled, objects put
-                    to a second-level cache, no batching) looks like this:
-                    </p>
+                    A typical output of this test is shown below, using OJB against in-memory HSQL
+                    database using the following settings:
+                </p>
+                <ul>
+                    <li>
+                        connection pooling and pooled prepared statements are enabled (using DBCP based
+                        ConnectionFactory implementation in <a href="ext:ojb.properties">OJB.properties file</a>,
+                        parameter enabled in <a href="ext:repository_database.xml">repository file</a>)
+                    </li>
+                    <li>
+                        a in-memory sequence key generator is used
+                    </li>
+                    <li>
+                        objects put to a second-level cache, the JDBC-layer doesn't cache any objects
+                    </li>
+                    <li>
+                        use of batch statements is disabled
+                    </li>
+                </ul>
+                <p>
+                    The test result looks like this:
+                </p>
                 <source><![CDATA[
 [ojb] ================================================================================================
-[ojb]             OJB PERFORMANCE TEST SUMMARY, Mon Oct 30 14:02:52 CET 2006
+[ojb]             OJB PERFORMANCE TEST SUMMARY, Fri Jan 05 16:56:09 CET 2007
 [ojb] ------------------------------------------------------------------------------------------------
 [ojb]   12 concurrent threads, handle 500 objects per thread
 [ojb]   500 INSERT operations per test instance
@@ -245,13 +266,13 @@
 [ojb] API         Total       Insert      Fetch       Fetch 2     by Id       Update      Delete
 [ojb]             [%]         [msec]      [msec]      [msec]      [msec]      [msec]      [msec]
 [ojb] ------------------------------------------------------------------------------------------------
-[ojb] JDBC        100         159(100%)   45(109%)    26(100%)    127(2116%)  185(100%)   198(159%)
-[ojb] PB          140         523(328%)   47(114%)    68(261%)    6(100%)     242(130%)   148(119%)
-[ojb] ODMG        151         598(376%)   41(100%)    58(223%)    6(100%)     290(156%)   124(100%)
+[ojb] JDBC        100         169(100%)   12(100%)    15(100%)    105(1103%)  260(100%)   228(135%)
+[ojb] PB          128         323(191%)   75(617%)    59(403%)    9.5(100%)   376(145%)   169(100%)
+[ojb] ODMG        170         382(226%)   71(581%)    80(545%)    23(241%)    448(172%)   335(198%)
 [ojb] ================================================================================================
-[ojb] PerfTest takes 36 [sec]]]></source>
+[ojb] PerfTest takes 39 [sec]]]></source>
                 <p>
-                    This test run shows the overhead caused by the O/R layer compared to handcoded sql
+                    This test run shows the overhead caused by the O/R layer compared to hard-coded sql
                     statements. Most overhead result in populate the two-level cache which is useless
                     when using a in-memory database and the persistenece capable object state detection
                     specific to the ODMG implementation.
@@ -266,11 +287,11 @@
 [ojb] API         Total       Insert      Fetch       Fetch 2     by Id       Update      Delete
 [ojb]             [%]         [msec]      [msec]      [msec]      [msec]      [msec]      [msec]
 [ojb] ------------------------------------------------------------------------------------------------
-[ojb] PB          100         4401(179%)  14(100%)    16(100%)    3(100%)     909(100%)   709(100%)
-[ojb] ODMG        103         3863(157%)  22(157%)    22(137%)    6(200%)     1292(142%)  1024(144%)
-[ojb] JDBC        109         2453(100%)  19(135%)    16(100%)    648(21600%) 2390(262%)  1089(153%)
+[ojb] PB          100         2299(130%)  30(130%)    28(123%)    2.2(100%)   3035(124%)  1637(109%)
+[ojb] JDBC        102         1765(100%)  23(100%)    23(100%)    1252(56330%)2445(100%)  1659(110%)
+[ojb] ODMG        102         2677(152%)  33(141%)    35(151%)    2.4(108%)   2932(120%)  1506(100%)
 [ojb] ================================================================================================
-[ojb] PerfTest takes 165 [sec]]]></source>
+[ojb] PerfTest takes 183 [sec]]]></source>
                 <p>
                     You can see that the overhead caused by the O/R layer disappears bit by bit because
                     the database latency and the network traffic is much longer than the OJB overhead.
@@ -284,7 +305,7 @@
                     completely different.
                     <br/>
                     The JDBC-layer show the same performance because nothing changed.
-                    OJB with enabled batch mode shows about 4-11 times better performance
+                    OJB with enabled batch mode shows about 4-13 times better performance
                     for insert, update and delete operations.
                 </p>
                 <source><![CDATA[
@@ -293,17 +314,17 @@
 [ojb] API         Total       Insert      Fetch       Fetch 2     by Id       Update      Delete
 [ojb]             [%]         [msec]      [msec]      [msec]      [msec]      [msec]      [msec]
 [ojb] ------------------------------------------------------------------------------------------------
-[ojb] ODMG        100         1396(100%)  24(120%)    19(126%)    4(133%)     102(100%)   66(108%)
-[ojb] PB          105         1453(104%)  23(115%)    24(160%)    3(100%)     132(129%)   61(100%)
-[ojb] JDBC        386         2530(181%)  20(100%)    15(100%)    398(13266%) 2450(2401%) 814(1334%)
+[ojb] PB          100         291(100%)   64(227%)    61(218%)    14(208%)    274(100%)   107(100%)
+[ojb] ODMG        145         520(178%)   46(165%)    62(224%)    6.9(100%)   417(152%)   126(117%)
+[ojb] JDBC        867         1653(567%)  28(100%)    28(100%)    1564(22615%)2302(841%)  1458(1359%)
 [ojb] ================================================================================================
-[ojb] PerfTest takes 86 [sec]]]></source>
+[ojb] PerfTest takes 88 [sec]]]></source>
                 <p>
                     Now OJB trounce the JDBC-layer when running a mass test.
                 </p>
                 <p>
-                    Most perfomance comparison tests of O/R mapper against a JDBC-layer are unrealistic
-                    mass tests. A typical web-app or client-app will not handle thousands of objects
+                    Most perfomance comparison tests of O/R mapper against a JDBC-layer are <strong>unrealistic
+                    mass tests</strong>. A typical web-app or client-app will not handle thousands of objects
                     per transaction. But mass tests are O/R mappers friends, because they mask the overhead
                     of the O/R mapper compared with a JDBC-layer. So to show the performance of OJB overall
                     and against a JDBC-layer the test should reflect a "real world application" - many threads,
@@ -312,12 +333,12 @@
                     If we chose a more realistic scenario e.g. 30 threads handle 20 objects per thread
                     the overhead of the O/R layer become more and more important, because the time of the
                     network traffic is drastic reduced (compared to handle 500 objects).
-                    With the same configuration settings as above - OJB batch mode enabled - nevertheless
-                    the result is near-balance:
+                    With the same configuration settings as above - OJB batch mode enabled - OJB will outperform
+                    the JDBC-layer:
                 </p>
                 <source><![CDATA[
 [ojb] ================================================================================================
-[ojb]             OJB PERFORMANCE TEST SUMMARY, Mon Oct 30 17:06:29 CET 2006
+[ojb]             OJB PERFORMANCE TEST SUMMARY, Fri Jan 05 16:26:38 CET 2007
 [ojb] ------------------------------------------------------------------------------------------------
 [ojb]   30 concurrent threads, handle 20 objects per thread
 [ojb]   20 INSERT operations per test instance
@@ -331,11 +352,11 @@
 [ojb] API         Total       Insert      Fetch       Fetch 2     by Id       Update      Delete
 [ojb]             [%]         [msec]      [msec]      [msec]      [msec]      [msec]      [msec]
 [ojb] ------------------------------------------------------------------------------------------------
-[ojb] ODMG        100         16(145%)    1(100%)     1(100%)     0(0%)       4(100%)     2(100%)
-[ojb] PB          107         19(172%)    2(200%)     1(100%)     0(0%)       4(100%)     2(100%)
-[ojb] JDBC        159         11(100%)    1(100%)     1(100%)     6(600%)     10(250%)    10(500%)
+[ojb] PB          100         6.2(100%)   1.9(100%)   1.7(137%)   0.08(100%)  5.1(100%)   3.1(100%)
+[ojb] ODMG        119         7.4(120%)   1.9(102%)   2.4(194%)   0.1(124%)   6.2(120%)   3.5(115%)
+[ojb] JDBC        234         11(186%)    1.9(103%)   1.3(100%)   6.6(8023%)  12(227%)    9.4(304%)
 [ojb] ================================================================================================
-[ojb] PerfTest takes 73 [sec]]]></source>
+[ojb] PerfTest takes 69 [sec]]]></source>
                 <p>
                     Even if we disable the OJB batch mode to make the test fair, the result is near-balance:
                 </p>
@@ -344,24 +365,45 @@
 [ojb] API         Total       Insert      Fetch       Fetch 2     by Id       Update      Delete
 [ojb]             [%]         [msec]      [msec]      [msec]      [msec]      [msec]      [msec]
 [ojb] ------------------------------------------------------------------------------------------------
-[ojb] JDBC        100         12(100%)    1(100%)     1(100%)     6(600%)     13(118%)    9(100%)
-[ojb] PB          142         36(300%)    2(200%)     1(100%)     0(0%)       11(100%)    11(122%)
-[ojb] ODMG        156         34(283%)    3(300%)     2(200%)     0(0%)       18(163%)    11(122%)
+[ojb] JDBC        100         12(100%)    1.6(100%)   1.5(100%)   6.3(5045%)  12(100%)    10(100%)
+[ojb] PB          127         19(158%)    3.9(239%)   2.2(154%)   0.13(100%)  17(139%)    13(131%)
+[ojb] ODMG        131         21(171%)    3.6(225%)   2.4(168%)   0.13(100%)  16(133%)    14(142%)
 [ojb] ================================================================================================
-[ojb] PerfTest takes 117 [sec]]]></source>
+[ojb] PerfTest takes 102 [sec]]]></source>
                 <p>
-                    As you can see OJB show an overall good performance compared with a JDBC-layer
-                    against a RDMS.
-                    <br/>
-                    Hence the interesting result: if you have an application that has a lot of object lookups,
-                    OJB can be faster than a native JDBC application (without caching extensions) or if
-                    the JDBC-layer doesn't use batch statements, OJB can overall show a much better
-                    performance.
+                    As you can see OJB show an overall good performance compared with a hard-coded
+                    JDBC-layer against a RDMS, only about 30% overhead against a "real" (none memory-only)
+                    database.
+                </p>
+                <p>
+                    Now the summary/interpretation of the results (hype OJB ;-)):
                 </p>
+                <ul>
+                    <li>
+                        if you think about implementing your own hard-coded, not reusable JDBC-layer with
+                        connection/statement pooling, object caching and support for batch statements the
+                        performance advantage will be about 30-40% compared with OJB (if you don't implement
+                        performance hot spots and your code is highly optimized)
+                    </li>
+                    <li>
+                        if you have an application that has a lot of object lookups by identity/primary
+                        key, OJB can be much faster than a native JDBC application layer without caching extensions
+                        (the "real world test" show 50-80 times faster <em>lookup by primary key</em>)
+                    </li>
+                    <li>
+                        if the JDBC-layer doesn't use batch statements, OJB can overall show a better
+                        performance (the "real world test" show up to three times faster insert/update/delete
+                        operations, when using mass tests OJB is up to 13 times faster)
+                    </li>
+                    <li>
+                        the tests show that OJB scales very well when increase number of concurrent clients
+                    </li>
+                </ul>
                 <note>
                     This simple test only compares the power of OJB and a JDBC-layer
                     relating to a simple "flat" POJO object. Dealing with complex object graphs
-                    could give different results.
+                    can give different results (dependent on the used metadata settings - e.g. use
+                    of proxy references, ...).
                 </note>
             </section>
 
@@ -604,13 +646,13 @@
                     <li><p>Use of batch statements. Enable <em>batch mode</em> (if supported by the DB) when
                         insert/update/delete many objects of the same type (e.g. insert ProductGroup with
                         20 Article objects).
-                        See <a href="site:repository/jdbc-connection-descriptor"><em>jdbc-connection-descriptor</em></a>
+                        See <a href="site:repository/batch-mode"><em>jdbc-connection-descriptor</em></a>
                         <em>batch-mode</em> attribute for more information.</p>
                     </li>
                     <li><p>The <em>JDBC driver</em> settings (e.g. statement caching on/off, ...).</p></li>
                     <li><p>ConnectionFactory implementation / Connection pooling settings (e.g. prepared
                         statement caching if the jdbc-driver doesn't support this feature).
-                        See <a href="site:faq">connection pooling</a> for more information.</p>
+                        See <a href="site:connection">connection pooling</a> for more information.</p>
                     </li>
                     <li><p>Used sequence manager implementation. See
                         <a href="site:sequence-manager">sequence manager</a> for

Modified: db/ojb/branches/OJB_1_0_RELEASE/src/doc/forrest/src/documentation/content/xdocs/docu/guides/repository.xml
URL: http://svn.apache.org/viewvc/db/ojb/branches/OJB_1_0_RELEASE/src/doc/forrest/src/documentation/content/xdocs/docu/guides/repository.xml?view=diff&rev=493271&r1=493270&r2=493271
==============================================================================
--- db/ojb/branches/OJB_1_0_RELEASE/src/doc/forrest/src/documentation/content/xdocs/docu/guides/repository.xml (original)
+++ db/ojb/branches/OJB_1_0_RELEASE/src/doc/forrest/src/documentation/content/xdocs/docu/guides/repository.xml Fri Jan  5 18:05:23 2007
@@ -297,8 +297,7 @@
                     <title>Attributes</title>
                     <p>
                         The
-                        <em>jdbc-connection-descriptor
-                        </em> element contains a bunch
+                        <em>jdbc-connection-descriptor</em> element contains a bunch
                         of required and implied attributes:
                     </p>
                     <p>
@@ -361,25 +360,31 @@
                         <!--Only use within JBoss.-->
                         <!--<em>DEPRECATED</em> attribute.-->
                     <!--</p>-->
+                    <anchor id="batch-mode"/>
                     <p>
                         The
                         <em>batch-mode</em>
-                        attribute allow to enable JDBC batch statement support
-                        (if supported by used database), 'true' value allows to enable per-session
-                        batch mode, whereas 'false' prohibits it.
-                        <br/>
-                        To switch on/off batch modus at runtime use method
-                        <code>PersistenceBroker.serviceConnectionManager.setBatchMode(...)
-                        </code>.
+                        attribute is the general property to enable the use of JDBC batch statement
+                        by OJB (if supported by the used database) - 'true' enables the per-session
+                        batch mode, whereas 'false' prohibits it in general.
+                        <br/>
+                        To switch on/off OJB's batch mode at runtime use method
+                    </p>
+                    <source><![CDATA[
+PersistenceBroker.serviceConnectionManager.setBatchMode(...)]]></source>
+                     <note>
+                        Not until this method activate OJB's batch mode, OJB will use batch statements.
+                        The <em>batch-mode</em> attribute in the <code>jdbc-connection-descriptor</code> only
+                        enable the use use of batch statements - e.g. so it's possible to completely disable the
+                        use of batch statements (<em>batch-mode</em> set 'false') independent from the
+                        <code>setBatchMode(...)</code> calls in the source code.
                         <br/>
-                        Mandatory: this setting have to be enabled, else <code>setBatchMode(true)</code>
-                        will not have effect.
                         <br/>
                         On <code>PersistenceBroker.close()</code> call
                         OJB always switches off batch mode, thus you have to call
                         <code>ConnectionManager.setBatchMode(true)</code> on each
                         new obtained PB instance again.
-                    </p>
+                    </note>
                     <p>
                         This setting can dramatically improve performance for mass insert/update/delete
                         operations of same object type.
@@ -523,6 +528,9 @@
                         'autoCommit' state at connection initialization.
                     </p>
                     <p>
+                        Other platform specific settings are shown below.
+                    </p>
+                    <p>
                         Usage example of supported custom attributes:
                     </p>
                     <source><![CDATA[
@@ -530,8 +538,38 @@
     ...
  >
 
-    <attribute attribute-name="initializationCheck"
-        attribute-value="false" />
+    <!--
+        On initialization of connections the ConnectionFactory change the 'autoCommit'
+        state dependent of the used 'useAutoCommit' setting. This doesn't work in all
+        situations/environments, thus for useAutoCommit="1" the ConnectionFactory does
+        no longer set autoCommit to true on connection creation.
+        To use the old behavior (OJB version 1.0.3 or earlier) set this property
+        to 'true', then OJB change the autoCommit state (if needed) of
+        new obtained connections at connection initialization to 'true'.
+        If 'false' or this property is removed, OJB don't try to change connection
+        autoCommit state at connection initialization.
+    -->
+    <attribute attribute-name="initializationCheck" attribute-value="false" />
+
+    <!-- ** Attributes with name prefix "platform." are used to allow database
+    platform class specific settings (PlatformXYZImpl classes) -->
+
+    <!-- If set to value >0 Oracle's implicit statement caching will be enabled by OJB (Oracle9i
+     or higher). Number of cached statements per connection using implicit caching with Oracle9i
+     Connections. See http://
+     otn.oracle.com/sample_code/tech/java/sqlj_jdbc/files/jdbc30/StmtCacheSample/Readme.html-->
+    <attribute attribute-name="platform.oracle.statementCacheSize" attribute-value="15" />
+
+    <!-- Number of rows pre-fetched by the JDBC-driver for each executed query, when using row
+    pre-fetching with Oracle Connections (Oracle9i or higher). Note: this setting can be overridden
+    by specifying a connection-pool attribute with name="jdbc.defaultRowPrefetch". See http://
+    otn.oracle.com/sample_code/tech/java/sqlj_jdbc/files/advanced/RowPrefetchSample/Readme.html -->
+    <attribute attribute-name="platform.oracle.prefetchSize" attribute-value="20" />
+
+    <!-- If set to value >0 Oracle's native batch statement handling will be enabled by OJB
+    (Oracle9i or higher). If 0 or not specified the JDBC standard batch methods are used.
+    See http://technet.oracle.com/products/oracle9i/daily/jun07.html -->
+    <!--<attribute attribute-name="platform.oracle.batchSize" attribute-value="20" />-->
     ...
 </jdbc-connection-descriptor>]]></source>
                     </section>
@@ -748,31 +786,39 @@
                     <source><![CDATA[
 <connection-pool
     maxActive="30"
-    validationQuery="@VALIDATION_QUERY@"
-    testOnBorrow="@TEST_ON_BORROW@"
-    testOnReturn="@TEST_ON_RETURN@"
+    validationQuery=""
+    <!-- mandatory set 'true'! -->
+    testOnBorrow="true"
+    testOnReturn="false"
     whenExhaustedAction="0"
     maxWait="10000">
 
+    <!-- Set initial connection pool size on startup of the pool -->
+    <!--<attribute attribute-name="initialSize" attribute-value="0"/>-->
+
     <!-- Set fetchSize to 0 to use driver's default. -->
     <attribute attribute-name="fetchSize" attribute-value="0"/>
 
-    <!-- Attributes with name prefix "jdbc." are passed directly to the JDBC driver. -->
-    <!-- Example setting (used by Oracle driver when Statement batching is enabled) -->
-    <attribute attribute-name="jdbc.defaultBatchValue" attribute-value="5"/>
-
-    <!-- Attributes determining if ConnectionFactoryDBCPImpl
-         should also pool PreparedStatement. This is programmatically disabled
-         when using platform=Oracle9i since Oracle statement caching will conflict
-         with DBCP ObjectPool-based PreparepdStatement caching (ie setting true
-         here has no effect for Oracle9i platform). -->
+    <!-- ** Attributes with name prefix "jdbc." are passed directly to the JDBC driver. -->
+    <!-- Oracle specific driver setting to enable oracle's specific statement batching.
+     Oracle Docs: "The value of this property is used as the default batch
+     size when using Oracle style batching."
+     Attention: With OracleXE + thin this setting cause unexpected behavior -->
+    <!--<attribute attribute-name="jdbc.defaultBatchValue" attribute-value="20"/>-->
+
+    <!-- Oracle specific driver setting to set the default prefetch size.
+     Oracle Docs: "The value of this property is used as the default number of rows to prefetch."
+     Attention: With OracleXE + thin this setting cause unexpected behavior -->
+    <!--<attribute attribute-name="jdbc.defaultRowPrefetch" attribute-value="20"/>-->
+
+    <!-- ** Attributes determining if ConnectionFactoryDBCPImpl is used -->
     <attribute attribute-name="dbcp.poolPreparedStatements" attribute-value="true"/>
-    <attribute attribute-name="dbcp.maxOpenPreparedStatements" attribute-value="60"/>
+    <attribute attribute-name="dbcp.maxOpenPreparedStatements" attribute-value="30"/>
     <!-- Attribute determining if the Commons DBCP connection wrapper will allow
          access to the underlying concrete Connection instance from the JDBC-driver
-         (normally this is not allowed, like in J2EE-containers using wrappers). -->
-    <attribute attribute-name="dbcp.accessToUnderlyingConnectionAllowed"
-          attribute-value="false"/>
+         (by default it's enabled). -->
+    <!--<attribute attribute-name="dbcp.accessToUnderlyingConnectionAllowed"
+        attribute-value="true"/>-->
 </connection-pool>]]></source>
                     <section>
                         <title>jdbc.*</title>

Modified: db/ojb/branches/OJB_1_0_RELEASE/src/doc/forrest/src/documentation/content/xdocs/site.xml
URL: http://svn.apache.org/viewvc/db/ojb/branches/OJB_1_0_RELEASE/src/doc/forrest/src/documentation/content/xdocs/site.xml?view=diff&rev=493271&r1=493270&r2=493271
==============================================================================
--- db/ojb/branches/OJB_1_0_RELEASE/src/doc/forrest/src/documentation/content/xdocs/site.xml (original)
+++ db/ojb/branches/OJB_1_0_RELEASE/src/doc/forrest/src/documentation/content/xdocs/site.xml Fri Jan  5 18:05:23 2007
@@ -153,6 +153,7 @@
                 <default-connection href="#default-connection"/>
                 <load-repository href="#load-repository"/>
                 <stored-procedures href="#stored-procedures"/>
+                <batch-mode href="#batch-mode"/>
             </repository>
             <basic-technique label="Basic mapping" href="basic-technique.html">
                 <one-to-one href="#one-to-one"/>

Modified: db/ojb/branches/OJB_1_0_RELEASE/src/doc/forrest/src/documentation/skinconf.xml
URL: http://svn.apache.org/viewvc/db/ojb/branches/OJB_1_0_RELEASE/src/doc/forrest/src/documentation/skinconf.xml?view=diff&rev=493271&r1=493270&r2=493271
==============================================================================
--- db/ojb/branches/OJB_1_0_RELEASE/src/doc/forrest/src/documentation/skinconf.xml (original)
+++ db/ojb/branches/OJB_1_0_RELEASE/src/doc/forrest/src/documentation/skinconf.xml Fri Jan  5 18:05:23 2007
@@ -91,7 +91,7 @@
   <favicon-url>favicon.ico</favicon-url>
 
   <!-- The following are used to construct a copyright statement -->
-    <year>2002-2006</year>
+    <year>2002-2007</year>
     <vendor>The Apache Software Foundation.</vendor>
   <!-- The optional copyright-link URL will be used as a link in the
     copyright statement
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.