Browse Source

add some documentation on large index support (#1564870)

git-svn-id: https://svn.code.sf.net/p/jackcess/code/jackcess/trunk@330 f203690c-595d-4dc9-a70b-905162fa7fd2
tags/rel_1_1_14
James Ahlborn 16 years ago
parent
commit
1069360cde

+ 5
- 0
src/changes/changes.xml View File

<action dev="jahlborn" type="fix" issue="1942330"> <action dev="jahlborn" type="fix" issue="1942330">
Access seems to limit data pages to a max of 256 rows. Access seems to limit data pages to a max of 256 rows.
</action> </action>
<action dev="jahlborn" type="fix" issue="1564870">
Added experimental support for "large" indexes. The current support
is optional. It can be enabled via a varity of means, see the
Database javadoc for more details.
</action>
</release> </release>
<release version="1.1.13" date="2008-03-21"> <release version="1.1.13" date="2008-03-21">
<action dev="jahlborn" type="fix" issue="1913775"> <action dev="jahlborn" type="fix" issue="1913775">

+ 13
- 0
src/java/com/healthmarketscience/jackcess/Database.java View File



/** /**
* An Access database. * An Access database.
* <p>
* There is now experimental, optional support for large indexes (disabled by
* default). This optional support can be enabled via a few different means:
* <ul>
* <li>Setting the system property {@value #USE_BIG_INDEX_PROPERTY} to
* {@code "true"} will enable "large" index support accross the jvm</li>
* <li>Calling {@link #setUseBigIndex} with {@code true} on a Database
* instance will enable "large" index support for all tables subsequently
* created from that instance</li>
* <li>Calling {@link #getTable(String,boolean)} can selectively
* enable/disable "large" index support on a per-table basis (overriding
* any Database or system property setting)</li>
* </ul>
* *
* @author Tim McCune * @author Tim McCune
*/ */

+ 2
- 2
src/java/com/healthmarketscience/jackcess/Index.java View File

if(_readOnly) { if(_readOnly) {
throw new UnsupportedOperationException( throw new UnsupportedOperationException(
"FIXME cannot write indexes of this type yet");
"FIXME cannot write indexes of this type yet, see Database javadoc for info on enabling large index support");
} }
updateImpl(); updateImpl();
} }
if(dataPage.getCompressedEntrySize() > _maxPageEntrySize) { if(dataPage.getCompressedEntrySize() > _maxPageEntrySize) {
if(this instanceof SimpleIndex) { if(this instanceof SimpleIndex) {
throw new UnsupportedOperationException( throw new UnsupportedOperationException(
"FIXME cannot write large index yet");
"FIXME cannot write large index yet, see Database javadoc for info on enabling large index support");
} }
throw new IllegalStateException("data page is too large"); throw new IllegalStateException("data page is too large");
} }

+ 14
- 0
src/site/fml/faq.fml View File

</ul> </ul>
</answer> </answer>
</faq> </faq>

<faq id="bigindex">
<question>Why am I getting an UnsupportedOperationException (or
IOException) when updating an indexed table?</question>
<answer>
Previously index update support only handled tables with small numbers
of rows. When the index size limit was reached an
UnsupportedOperationException (or possibly an IOException) was thrown.
As of the 1.1.14 release, experimental, optional large index support
has been added. This support is disabled by default but can be
enabled via a few different means. Please see the <a href="apidocs/com/healthmarketscience/jackcess/Database.html">Database javadocs</a>
for details on enabling large index support.
</answer>
</faq>
<faq id="hms"> <faq id="hms">
<question>Who is Health Market Science?</question> <question>Who is Health Market Science?</question>

Loading…
Cancel
Save