#include <db.h>

DB->set_ext_file_threshold(DB *db, u_int32_t bytes, u_int32_t flags);  

The DB->set_ext_file_threshold() method sets a size which is used to determine when a data item will be stored as an external file. Data items sized less than this threshold are stored as normal data within the database. Data items larger than this size are stored on-disk in a subdirectory set aside for the purpose.

If this threshold value is set to 0, then external files will never be used by the database.

It is illegal to set an external file threshold if any of the following flags were specified for the database: DB_DUP, and DB_DUPSORT.

It is also illegal to set an external file threshold if compression is turned on for the database. That is, if DB->set_bt_compress() has been called for the database handle.

This method configures the underlying database. The external file threshold is stored in the database at database creation time. Any external file threshold set after creating the database is ignored.

This method may not be called after DB->open() is called.

Unless otherwise specified, the DB->set_ext_file_threshold() method returns a non-zero error value on failure and 0 on success.



The bytes parameter identifies the threshold size, in bytes, beyond which a data item is stored as an external file.


The flags parameter must be set to 0.


The DB->set_ext_file_threshold() method may fail and return one of the following non-zero errors:


If the method was called after DB->open() was called; or if an invalid flag or parameter was specified; or if compression is turned on for the database; or if the database is configured with one or more of the following flags: DB_DUP, and DB_DUPSORT.



See Also

External Files and Related Methods