Author: eherman
Date: 2005-10-20 02:28:04 +0200 (Thu, 20 Oct 2005)
New Revision: 113
Log:
stubbing in the api docs for the handler class.
Modified:
branches/MikePluggable/trunk/refman-5.1/custom-engine.xml
Modified: branches/MikePluggable/trunk/refman-5.1/custom-engine.xml
===================================================================
--- branches/MikePluggable/trunk/refman-5.1/custom-engine.xml 2005-10-20 00:07:41 UTC (rev
112)
+++ branches/MikePluggable/trunk/refman-5.1/custom-engine.xml 2005-10-20 00:28:04 UTC (rev
113)
@@ -21,124 +21,10389 @@
<section id="custom-engine-api-reference">
<title>API Reference</title>
-
+
+ <refentry id="custom-engine-api-reference-add_index">
+ <refmeta>
+ <refentrytitle>add_index</refentrytitle>
+ </refmeta>
+
+ <refnamediv>
+ <refname>add_index</refname>
+ <refpurpose></refpurpose>
+ </refnamediv>
+
+ <refsynopsisdiv>
+ <funcsynopsis>
+ <funcprototype>
+ <funcdef>virtual int
<function>add_index</function></funcdef>
+ <paramdef>TABLE
*<parameter>table_arg</parameter></paramdef>
+ <paramdef>KEY
*<parameter>key_info</parameter></paramdef>
+
<paramdef>uint<parameter>num_of_keys</parameter></paramdef>
+ </funcprototype>
+
+ </funcsynopsis>
+ </refsynopsisdiv>
+
+ <refsection>
+ <title>Description</title>
+
+ <para>This is the <function>add_index </function>
method.</para>
+ </refsection>
+
+ <refsection>
+ <title>Parameters</title>
+
+ <itemizedlist>
+
<listitem><para><literal>table_arg</literal></para></listitem>
+
<listitem><para><literal>key_info</literal></para></listitem>
+
<listitem><para><literal>num_of_keys</literal></para></listitem>
+ </itemizedlist>
+
+ </refsection>
+
+ <refsection>
+ <title>Return Values</title>
+
+ <itemizedlist>
+ <listitem>
+ <para>
+ <literal></literal>
+ </para>
+ </listitem>
+ </itemizedlist>
+
+ </refsection>
+
+ <refsection>
+ <title>Usage</title>
+
+ <programlisting>
+
+ </programlisting>
+ </refsection>
+
+ <refsection>
+ <title>Default Implementation</title>
+
+ <programlisting>
+ { return (HA_ERR_WRONG_COMMAND); }
+ </programlisting>
+ </refsection>
+
+ </refentry>
+
+
+ <refentry id="custom-engine-api-reference-alter_table_flags">
+ <refmeta>
+ <refentrytitle>alter_table_flags</refentrytitle>
+ </refmeta>
+
+ <refnamediv>
+ <refname>alter_table_flags</refname>
+ <refpurpose></refpurpose>
+ </refnamediv>
+
+ <refsynopsisdiv>
+ <funcsynopsis>
+ <funcprototype>
+ <funcdef>virtual ulong
<function>alter_table_flags</function></funcdef>
+ <paramdef><parameter>void</parameter></paramdef>
+ </funcprototype>
+
+ </funcsynopsis>
+ </refsynopsisdiv>
+
+ <refsection>
+ <title>Description</title>
+
+ <para>This is the <function>alter_table_flags </function>
method.</para>
+ </refsection>
+
+ <refsection>
+ <title>Parameters</title>
+
+ <itemizedlist>
+
<listitem><para><literal>void</literal></para></listitem>
+ </itemizedlist>
+
+ </refsection>
+
+ <refsection>
+ <title>Return Values</title>
+
+ <itemizedlist>
+ <listitem>
+ <para>
+ <literal></literal>
+ </para>
+ </listitem>
+ </itemizedlist>
+
+ </refsection>
+
+ <refsection>
+ <title>Usage</title>
+
+ <programlisting>
+
+ </programlisting>
+ </refsection>
+
+ <refsection>
+ <title>Default Implementation</title>
+
+ <programlisting>
+ const { return 0; }
+ </programlisting>
+ </refsection>
+
+ </refentry>
+
+
+ <refentry id="custom-engine-api-reference-analyze">
+ <refmeta>
+ <refentrytitle>analyze</refentrytitle>
+ </refmeta>
+
+ <refnamediv>
+ <refname>analyze</refname>
+ <refpurpose></refpurpose>
+ </refnamediv>
+
+ <refsynopsisdiv>
+ <funcsynopsis>
+ <funcprototype>
+ <funcdef>virtual int
<function>analyze</function></funcdef>
+ <paramdef>THD*<parameter>thd</parameter></paramdef>
+
<paramdef>HA_CHECK_OPT*<parameter>check_opt</parameter></paramdef>
+ </funcprototype>
+
+ </funcsynopsis>
+ </refsynopsisdiv>
+
+ <refsection>
+ <title>Description</title>
+
+ <para>This is the <function>analyze </function>
method.</para>
+ </refsection>
+
+ <refsection>
+ <title>Parameters</title>
+
+ <itemizedlist>
+
<listitem><para><literal>thd</literal></para></listitem>
+
<listitem><para><literal>check_opt</literal></para></listitem>
+ </itemizedlist>
+
+ </refsection>
+
+ <refsection>
+ <title>Return Values</title>
+
+ <itemizedlist>
+ <listitem>
+ <para>
+ <literal></literal>
+ </para>
+ </listitem>
+ </itemizedlist>
+
+ </refsection>
+
+ <refsection>
+ <title>Usage</title>
+
+ <programlisting>
+
+ </programlisting>
+ </refsection>
+
+ <refsection>
+ <title>Default Implementation</title>
+
+ <programlisting>
+ { return HA_ADMIN_NOT_IMPLEMENTED; }
+ </programlisting>
+ </refsection>
+
+ </refentry>
+
+
+ <refentry id="custom-engine-api-reference-append_create_info">
+ <refmeta>
+ <refentrytitle>append_create_info</refentrytitle>
+ </refmeta>
+
+ <refnamediv>
+ <refname>append_create_info</refname>
+ <refpurpose></refpurpose>
+ </refnamediv>
+
+ <refsynopsisdiv>
+ <funcsynopsis>
+ <funcprototype>
+ <funcdef>virtual void
<function>append_create_info</function></funcdef>
+ <paramdef>String
*<parameter>packet</parameter></paramdef>
+ </funcprototype>
+
+ </funcsynopsis>
+ </refsynopsisdiv>
+
+ <refsection>
+ <title>Description</title>
+
+ <para>This is the <function>append_create_info </function>
method.</para>
+ </refsection>
+
+ <refsection>
+ <title>Parameters</title>
+
+ <itemizedlist>
+
<listitem><para><literal>packet</literal></para></listitem>
+ </itemizedlist>
+
+ </refsection>
+
+ <refsection>
+ <title>Return Values</title>
+
+ <itemizedlist>
+ <listitem>
+ <para>
+ <literal></literal>
+ </para>
+ </listitem>
+ </itemizedlist>
+
+ </refsection>
+
+ <refsection>
+ <title>Usage</title>
+
+ <programlisting>
+
+ </programlisting>
+ </refsection>
+
+ </refentry>
+
+
+ <refentry id="custom-engine-api-reference-assign_to_keycache">
+ <refmeta>
+ <refentrytitle>assign_to_keycache</refentrytitle>
+ </refmeta>
+
+ <refnamediv>
+ <refname>assign_to_keycache</refname>
+ <refpurpose></refpurpose>
+ </refnamediv>
+
+ <refsynopsisdiv>
+ <funcsynopsis>
+ <funcprototype>
+ <funcdef>virtual int
<function>assign_to_keycache</function></funcdef>
+ <paramdef>THD*<parameter>thd</parameter></paramdef>
+
<paramdef>HA_CHECK_OPT*<parameter>check_opt</parameter></paramdef>
+ </funcprototype>
+
+ </funcsynopsis>
+ </refsynopsisdiv>
+
+ <refsection>
+ <title>Description</title>
+
+ <para>This is the <function>assign_to_keycache </function>
method.</para>
+ </refsection>
+
+ <refsection>
+ <title>Parameters</title>
+
+ <itemizedlist>
+
<listitem><para><literal>thd</literal></para></listitem>
+
<listitem><para><literal>check_opt</literal></para></listitem>
+ </itemizedlist>
+
+ </refsection>
+
+ <refsection>
+ <title>Return Values</title>
+
+ <itemizedlist>
+ <listitem>
+ <para>
+ <literal></literal>
+ </para>
+ </listitem>
+ </itemizedlist>
+
+ </refsection>
+
+ <refsection>
+ <title>Usage</title>
+
+ <programlisting>
+
+ </programlisting>
+ </refsection>
+
+ <refsection>
+ <title>Default Implementation</title>
+
+ <programlisting>
+ { return HA_ADMIN_NOT_IMPLEMENTED; }
+ </programlisting>
+ </refsection>
+
+ </refentry>
+
+
+ <refentry id="custom-engine-api-reference-auto_repair">
+ <refmeta>
+ <refentrytitle>auto_repair</refentrytitle>
+ </refmeta>
+
+ <refnamediv>
+ <refname>auto_repair</refname>
+ <refpurpose></refpurpose>
+ </refnamediv>
+
+ <refsynopsisdiv>
+ <funcsynopsis>
+ <funcprototype>
+ <funcdef>virtual bool
<function>auto_repair</function></funcdef>
+ <paramdef><parameter></parameter></paramdef>
+ </funcprototype>
+
+ </funcsynopsis>
+ </refsynopsisdiv>
+
+ <refsection>
+ <title>Description</title>
+
+ <para>This is the <function>auto_repair </function>
method.</para>
+ </refsection>
+
+ <refsection>
+ <title>Parameters</title>
+
+ <itemizedlist>
+
<listitem><para><literal></literal></para></listitem>
+ </itemizedlist>
+
+ </refsection>
+
+ <refsection>
+ <title>Return Values</title>
+
+ <itemizedlist>
+ <listitem>
+ <para>
+ <literal></literal>
+ </para>
+ </listitem>
+ </itemizedlist>
+
+ </refsection>
+
+ <refsection>
+ <title>Usage</title>
+
+ <programlisting>
+
+ </programlisting>
+ </refsection>
+
+ <refsection>
+ <title>Default Implementation</title>
+
+ <programlisting>
+ const { return 0; }
+ </programlisting>
+ </refsection>
+
+ </refentry>
+
+
+ <refentry id="custom-engine-api-reference-backup">
+ <refmeta>
+ <refentrytitle>backup</refentrytitle>
+ </refmeta>
+
+ <refnamediv>
+ <refname>backup</refname>
+ <refpurpose></refpurpose>
+ </refnamediv>
+
+ <refsynopsisdiv>
+ <funcsynopsis>
+ <funcprototype>
+ <funcdef>virtual int
<function>backup</function></funcdef>
+ <paramdef>THD*<parameter>thd</parameter></paramdef>
+
<paramdef>HA_CHECK_OPT*<parameter>check_opt</parameter></paramdef>
+ </funcprototype>
+
+ </funcsynopsis>
+ </refsynopsisdiv>
+
+ <refsection>
+ <title>Description</title>
+
+ <para>This is the <function>backup </function>
method.</para>
+ </refsection>
+
+ <refsection>
+ <title>Parameters</title>
+
+ <itemizedlist>
+
<listitem><para><literal>thd</literal></para></listitem>
+
<listitem><para><literal>check_opt</literal></para></listitem>
+ </itemizedlist>
+
+ </refsection>
+
+ <refsection>
+ <title>Return Values</title>
+
+ <itemizedlist>
+ <listitem>
+ <para>
+ <literal></literal>
+ </para>
+ </listitem>
+ </itemizedlist>
+
+ </refsection>
+
+ <refsection>
+ <title>Usage</title>
+
+ <programlisting>
+
+ </programlisting>
+ </refsection>
+
+ <refsection>
+ <title>Default Implementation</title>
+
+ <programlisting>
+ { return HA_ADMIN_NOT_IMPLEMENTED; }
+ </programlisting>
+ </refsection>
+
+ </refentry>
+
+
+ <refentry id="custom-engine-api-reference-bas_ext">
+ <refmeta>
+ <refentrytitle>bas_ext</refentrytitle>
+ </refmeta>
+
+ <refnamediv>
+ <refname>bas_ext</refname>
+ <refpurpose></refpurpose>
+ </refnamediv>
+
+ <refsynopsisdiv>
+ <funcsynopsis>
+ <funcprototype>
+ <funcdef>virtual const char **
<function>bas_ext</function></funcdef>
+ <paramdef><parameter></parameter></paramdef>
+ </funcprototype>
+
+ </funcsynopsis>
+ </refsynopsisdiv>
+
+ <refsection>
+ <title>Description</title>
+
+ <para>This is the <function>bas_ext </function>
method.</para>
+ </refsection>
+
+ <refsection>
+ <title>Parameters</title>
+
+ <itemizedlist>
+
<listitem><para><literal></literal></para></listitem>
+ </itemizedlist>
+
+ </refsection>
+
+ <refsection>
+ <title>Return Values</title>
+
+ <itemizedlist>
+ <listitem>
+ <para>
+ <literal></literal>
+ </para>
+ </listitem>
+ </itemizedlist>
+
+ </refsection>
+
+ <refsection>
+ <title>Usage</title>
+
+ <programlisting>
+
+ </programlisting>
+ </refsection>
+
+ <refsection>
+ <title>Default Implementation</title>
+
+ <programlisting>
+ const =0;
+ </programlisting>
+ </refsection>
+
+ </refentry>
+
+
+ <refentry id="custom-engine-api-reference-bulk_update_row">
+ <refmeta>
+ <refentrytitle>bulk_update_row</refentrytitle>
+ </refmeta>
+
+ <refnamediv>
+ <refname>bulk_update_row</refname>
+ <refpurpose></refpurpose>
+ </refnamediv>
+
+ <refsynopsisdiv>
+ <funcsynopsis>
+ <funcprototype>
+ <funcdef>virtual int
<function>bulk_update_row</function></funcdef>
+ <paramdef>const byte
*<parameter>old_data</parameter></paramdef>
+ <paramdef>byte
*<parameter>new_data</parameter></paramdef>
+ <paramdef>uint
*<parameter>dup_key_found</parameter></paramdef>
+ </funcprototype>
+
+ </funcsynopsis>
+ </refsynopsisdiv>
+
+ <refsection>
+ <title>Description</title>
+
+ <para>This is the <function>bulk_update_row </function>
method.</para>
+ </refsection>
+
+ <refsection>
+ <title>Parameters</title>
+
+ <itemizedlist>
+
<listitem><para><literal>old_data</literal></para></listitem>
+
<listitem><para><literal>new_data</literal></para></listitem>
+
<listitem><para><literal>dup_key_found</literal></para></listitem>
+ </itemizedlist>
+
+ </refsection>
+
+ <refsection>
+ <title>Return Values</title>
+
+ <itemizedlist>
+ <listitem>
+ <para>
+ <literal></literal>
+ </para>
+ </listitem>
+ </itemizedlist>
+
+ </refsection>
+
+ <refsection>
+ <title>Usage</title>
+
+ <programlisting>
+
+ </programlisting>
+ </refsection>
+
+ <refsection>
+ <title>Default Implementation</title>
+
+ <programlisting>
+ { DBUG_ASSERT(FALSE); return HA_ERR_WRONG_COMMAND; }
+ </programlisting>
+ </refsection>
+
+ </refentry>
+
+
+ <refentry id="custom-engine-api-reference-can_switch_engines">
+ <refmeta>
+ <refentrytitle>can_switch_engines</refentrytitle>
+ </refmeta>
+
+ <refnamediv>
+ <refname>can_switch_engines</refname>
+ <refpurpose></refpurpose>
+ </refnamediv>
+
+ <refsynopsisdiv>
+ <funcsynopsis>
+ <funcprototype>
+ <funcdef>virtual bool
<function>can_switch_engines</function></funcdef>
+ <paramdef><parameter></parameter></paramdef>
+ </funcprototype>
+
+ </funcsynopsis>
+ </refsynopsisdiv>
+
+ <refsection>
+ <title>Description</title>
+
+ <para>This is the <function>can_switch_engines </function>
method.</para>
+ </refsection>
+
+ <refsection>
+ <title>Parameters</title>
+
+ <itemizedlist>
+
<listitem><para><literal></literal></para></listitem>
+ </itemizedlist>
+
+ </refsection>
+
+ <refsection>
+ <title>Return Values</title>
+
+ <itemizedlist>
+ <listitem>
+ <para>
+ <literal></literal>
+ </para>
+ </listitem>
+ </itemizedlist>
+
+ </refsection>
+
+ <refsection>
+ <title>Usage</title>
+
+ <programlisting>
+
+ </programlisting>
+ </refsection>
+
+ <refsection>
+ <title>Default Implementation</title>
+
+ <programlisting>
+ { return 1; }
+ </programlisting>
+ </refsection>
+
+ </refentry>
+
+
+ <refentry id="custom-engine-api-reference-change_table_ptr">
+ <refmeta>
+ <refentrytitle>change_table_ptr</refentrytitle>
+ </refmeta>
+
+ <refnamediv>
+ <refname>change_table_ptr</refname>
+ <refpurpose></refpurpose>
+ </refnamediv>
+
+ <refsynopsisdiv>
+ <funcsynopsis>
+ <funcprototype>
+ <funcdef>void
<function>change_table_ptr</function></funcdef>
+ <paramdef>TABLE
*<parameter>table_arg</parameter></paramdef>
+ </funcprototype>
+
+ </funcsynopsis>
+ </refsynopsisdiv>
+
+ <refsection>
+ <title>Description</title>
+
+ <para>This is the <function>change_table_ptr </function>
method.</para>
+ </refsection>
+
+ <refsection>
+ <title>Parameters</title>
+
+ <itemizedlist>
+
<listitem><para><literal>table_arg</literal></para></listitem>
+ </itemizedlist>
+
+ </refsection>
+
+ <refsection>
+ <title>Return Values</title>
+
+ <itemizedlist>
+ <listitem>
+ <para>
+ <literal></literal>
+ </para>
+ </listitem>
+ </itemizedlist>
+
+ </refsection>
+
+ <refsection>
+ <title>Usage</title>
+
+ <programlisting>
+
+ </programlisting>
+ </refsection>
+
+ <refsection>
+ <title>Implementation</title>
+
+ <programlisting>
+ { table=table_arg; }
+ </programlisting>
+ </refsection>
+
+ </refentry>
+
+
+ <refentry id="custom-engine-api-reference-check">
+ <refmeta>
+ <refentrytitle>check</refentrytitle>
+ </refmeta>
+
+ <refnamediv>
+ <refname>check</refname>
+ <refpurpose></refpurpose>
+ </refnamediv>
+
+ <refsynopsisdiv>
+ <funcsynopsis>
+ <funcprototype>
+ <funcdef>virtual int
<function>check</function></funcdef>
+ <paramdef>THD*<parameter>thd</parameter></paramdef>
+
<paramdef>HA_CHECK_OPT*<parameter>check_opt</parameter></paramdef>
+ </funcprototype>
+
+ </funcsynopsis>
+ </refsynopsisdiv>
+
+ <refsection>
+ <title>Description</title>
+
+ <para>This is the <function>check </function>
method.</para>
+ </refsection>
+
+ <refsection>
+ <title>Parameters</title>
+
+ <itemizedlist>
+
<listitem><para><literal>thd</literal></para></listitem>
+
<listitem><para><literal>check_opt</literal></para></listitem>
+ </itemizedlist>
+
+ </refsection>
+
+ <refsection>
+ <title>Return Values</title>
+
+ <itemizedlist>
+ <listitem>
+ <para>
+ <literal></literal>
+ </para>
+ </listitem>
+ </itemizedlist>
+
+ </refsection>
+
+ <refsection>
+ <title>Usage</title>
+
+ <programlisting>
+
+ </programlisting>
+ </refsection>
+
+ <refsection>
+ <title>Default Implementation</title>
+
+ <programlisting>
+ { return HA_ADMIN_NOT_IMPLEMENTED; }
+ </programlisting>
+ </refsection>
+
+ </refentry>
+
+
+ <refentry id="custom-engine-api-reference-check_and_repair">
+ <refmeta>
+ <refentrytitle>check_and_repair</refentrytitle>
+ </refmeta>
+
+ <refnamediv>
+ <refname>check_and_repair</refname>
+ <refpurpose></refpurpose>
+ </refnamediv>
+
+ <refsynopsisdiv>
+ <funcsynopsis>
+ <funcprototype>
+ <funcdef>virtual bool
<function>check_and_repair</function></funcdef>
+ <paramdef>THD *<parameter>thd</parameter></paramdef>
+ </funcprototype>
+
+ </funcsynopsis>
+ </refsynopsisdiv>
+
+ <refsection>
+ <title>Description</title>
+
+ <para>This is the <function>check_and_repair </function>
method.</para>
+ </refsection>
+
+ <refsection>
+ <title>Parameters</title>
+
+ <itemizedlist>
+
<listitem><para><literal>thd</literal></para></listitem>
+ </itemizedlist>
+
+ </refsection>
+
+ <refsection>
+ <title>Return Values</title>
+
+ <itemizedlist>
+ <listitem>
+ <para>
+ <literal></literal>
+ </para>
+ </listitem>
+ </itemizedlist>
+
+ </refsection>
+
+ <refsection>
+ <title>Usage</title>
+
+ <programlisting>
+
+ </programlisting>
+ </refsection>
+
+ <refsection>
+ <title>Default Implementation</title>
+
+ <programlisting>
+ { return HA_ERR_WRONG_COMMAND; }
+ </programlisting>
+ </refsection>
+
+ </refentry>
+
+
+ <refentry id="custom-engine-api-reference-check_if_incompatible_data">
+ <refmeta>
+ <refentrytitle>check_if_incompatible_data</refentrytitle>
+ </refmeta>
+
+ <refnamediv>
+ <refname>check_if_incompatible_data</refname>
+ <refpurpose></refpurpose>
+ </refnamediv>
+
+ <refsynopsisdiv>
+ <funcsynopsis>
+ <funcprototype>
+ <funcdef>virtual bool
<function>check_if_incompatible_data</function></funcdef>
+ <paramdef>HA_CREATE_INFO
*<parameter>create_info</parameter></paramdef>
+
<paramdef>uint<parameter>table_changes</parameter></paramdef>
+ </funcprototype>
+
+ </funcsynopsis>
+ </refsynopsisdiv>
+
+ <refsection>
+ <title>Description</title>
+
+ <para>This is the <function>check_if_incompatible_data
</function> method.</para>
+ </refsection>
+
+ <refsection>
+ <title>Parameters</title>
+
+ <itemizedlist>
+
<listitem><para><literal>create_info</literal></para></listitem>
+
<listitem><para><literal>table_changes</literal></para></listitem>
+ </itemizedlist>
+
+ </refsection>
+
+ <refsection>
+ <title>Return Values</title>
+
+ <itemizedlist>
+ <listitem>
+ <para>
+ <literal></literal>
+ </para>
+ </listitem>
+ </itemizedlist>
+
+ </refsection>
+
+ <refsection>
+ <title>Usage</title>
+
+ <programlisting>
+
+ </programlisting>
+ </refsection>
+
+ <refsection>
+ <title>Default Implementation</title>
+
+ <programlisting>
+ { return COMPATIBLE_DATA_NO; }
+ </programlisting>
+ </refsection>
+
+ </refentry>
+
+
+ <refentry id="custom-engine-api-reference-checksum">
+ <refmeta>
+ <refentrytitle>checksum</refentrytitle>
+ </refmeta>
+
+ <refnamediv>
+ <refname>checksum</refname>
+ <refpurpose></refpurpose>
+ </refnamediv>
+
+ <refsynopsisdiv>
+ <funcsynopsis>
+ <funcprototype>
+ <funcdef>virtual uint
<function>checksum</function></funcdef>
+ <paramdef><parameter></parameter></paramdef>
+ </funcprototype>
+
+ </funcsynopsis>
+ </refsynopsisdiv>
+
+ <refsection>
+ <title>Description</title>
+
+ <para>This is the <function>checksum </function>
method.</para>
+ </refsection>
+
+ <refsection>
+ <title>Parameters</title>
+
+ <itemizedlist>
+
<listitem><para><literal></literal></para></listitem>
+ </itemizedlist>
+
+ </refsection>
+
+ <refsection>
+ <title>Return Values</title>
+
+ <itemizedlist>
+ <listitem>
+ <para>
+ <literal></literal>
+ </para>
+ </listitem>
+ </itemizedlist>
+
+ </refsection>
+
+ <refsection>
+ <title>Usage</title>
+
+ <programlisting>
+
+ </programlisting>
+ </refsection>
+
+ <refsection>
+ <title>Default Implementation</title>
+
+ <programlisting>
+ const { return 0; }
+ </programlisting>
+ </refsection>
+
+ </refentry>
+
+
<refentry id="custom-engine-api-reference-close">
<refmeta>
<refentrytitle>close</refentrytitle>
</refmeta>
-
+
<refnamediv>
<refname>close</refname>
- <refpurpose>Open the table</refpurpose>
+ <refpurpose></refpurpose>
</refnamediv>
-
+
<refsynopsisdiv>
<funcsynopsis>
<funcprototype>
<funcdef>virtual int
<function>close</function></funcdef>
- <void/>
+ <paramdef><parameter>void</parameter></paramdef>
</funcprototype>
+
+ </funcsynopsis>
+ </refsynopsisdiv>
+
+ <refsection>
+ <title>Description</title>
+
+ <para>This is the <function>close </function>
method.</para>
+ </refsection>
+
+ <refsection>
+ <title>Parameters</title>
+
+ <itemizedlist>
+
<listitem><para><literal>void</literal></para></listitem>
+ </itemizedlist>
+
+ </refsection>
+
+ <refsection>
+ <title>Return Values</title>
+
+ <itemizedlist>
+ <listitem>
+ <para>
+ <literal></literal>
+ </para>
+ </listitem>
+ </itemizedlist>
+
+ </refsection>
+
+ <refsection>
+ <title>Usage</title>
+
+ <programlisting>
+ </programlisting>
+ </refsection>
+
+ </refentry>
+
+
+ <refentry id="custom-engine-api-reference-cmp_ref">
+ <refmeta>
+ <refentrytitle>cmp_ref</refentrytitle>
+ </refmeta>
+
+ <refnamediv>
+ <refname>cmp_ref</refname>
+ <refpurpose></refpurpose>
+ </refnamediv>
+
+ <refsynopsisdiv>
+ <funcsynopsis>
+ <funcprototype>
+ <funcdef>virtual int
<function>cmp_ref</function></funcdef>
+ <paramdef>const byte
*<parameter>ref1</parameter></paramdef>
+ <paramdef>const byte
*<parameter>ref2</parameter></paramdef>
+ </funcprototype>
+
</funcsynopsis>
</refsynopsisdiv>
-
+
<refsection>
- <title>Description</title>
-
- <para>This is the <function>close</function>
method.</para>
+ <title>Description</title>
+
+ <para>This is the <function>cmp_ref </function>
method.</para>
</refsection>
-
+
<refsection>
<title>Parameters</title>
-
- <para>This function has no parameters.</para>
+
+ <itemizedlist>
+
<listitem><para><literal>ref1</literal></para></listitem>
+
<listitem><para><literal>ref2</literal></para></listitem>
+ </itemizedlist>
+
</refsection>
-
+
<refsection>
<title>Return Values</title>
-
+
+ <itemizedlist>
+ <listitem>
+ <para>
+ <literal></literal>
+ </para>
+ </listitem>
+ </itemizedlist>
+
+ </refsection>
+
+ <refsection>
+ <title>Usage</title>
+
+ <programlisting>
+
+ </programlisting>
+ </refsection>
+
+ <refsection>
+ <title>Default Implementation</title>
+
+ <programlisting>
+ { return memcmp(ref1, ref2, ref_length); }
+ </programlisting>
+ </refsection>
+
+ </refentry>
+
+
+ <refentry id="custom-engine-api-reference-compare_key">
+ <refmeta>
+ <refentrytitle>compare_key</refentrytitle>
+ </refmeta>
+
+ <refnamediv>
+ <refname>compare_key</refname>
+ <refpurpose></refpurpose>
+ </refnamediv>
+
+ <refsynopsisdiv>
+ <funcsynopsis>
+ <funcprototype>
+ <funcdef>int
<function>compare_key</function></funcdef>
+ <paramdef>key_range
*<parameter>range</parameter></paramdef>
+ </funcprototype>
+
+ </funcsynopsis>
+ </refsynopsisdiv>
+
+ <refsection>
+ <title>Description</title>
+
+ <para>This is the <function>compare_key </function>
method.</para>
+ </refsection>
+
+ <refsection>
+ <title>Parameters</title>
+
<itemizedlist>
+
<listitem><para><literal>range</literal></para></listitem>
+ </itemizedlist>
+
+ </refsection>
+
+ <refsection>
+ <title>Return Values</title>
+
+ <itemizedlist>
<listitem>
- <para>
- <literal>0</literal> - Table successfully closed.
- </para>
- </listitem>
+ <para>
+ <literal></literal>
+ </para>
+ </listitem>
+ </itemizedlist>
+
+ </refsection>
+
+ <refsection>
+ <title>Usage</title>
+
+ <programlisting>
+
+ </programlisting>
+ </refsection>
+
+ </refentry>
+
+
+ <refentry id="custom-engine-api-reference-cond_pop">
+ <refmeta>
+ <refentrytitle>cond_pop</refentrytitle>
+ </refmeta>
+
+ <refnamediv>
+ <refname>cond_pop</refname>
+ <refpurpose></refpurpose>
+ </refnamediv>
+
+ <refsynopsisdiv>
+ <funcsynopsis>
+ <funcprototype>
+ <funcdef>virtual void
<function>cond_pop</function></funcdef>
+ <paramdef><parameter></parameter></paramdef>
+ </funcprototype>
+
+ </funcsynopsis>
+ </refsynopsisdiv>
+
+ <refsection>
+ <title>Description</title>
+
+ <para>This is the <function>cond_pop </function>
method.</para>
+ </refsection>
+
+ <refsection>
+ <title>Parameters</title>
+
+ <itemizedlist>
+
<listitem><para><literal></literal></para></listitem>
</itemizedlist>
-
+
</refsection>
-
+
<refsection>
+ <title>Return Values</title>
+
+ <itemizedlist>
+ <listitem>
+ <para>
+ <literal></literal>
+ </para>
+ </listitem>
+ </itemizedlist>
+
+ </refsection>
+
+ <refsection>
<title>Usage</title>
-
+
<programlisting>
- Put an example here.
+
</programlisting>
- </refsection>
-
+ </refsection>
+
+ <refsection>
+ <title>Default Implementation</title>
+
+ <programlisting>
+ { return; };
+ </programlisting>
+ </refsection>
+
</refentry>
-
-
+
+
+ <refentry id="custom-engine-api-reference-cond_push">
+ <refmeta>
+ <refentrytitle>cond_push</refentrytitle>
+ </refmeta>
+
+ <refnamediv>
+ <refname>cond_push</refname>
+ <refpurpose></refpurpose>
+ </refnamediv>
+
+ <refsynopsisdiv>
+ <funcsynopsis>
+ <funcprototype>
+ <funcdef>virtual const COND *
<function>cond_push</function></funcdef>
+ <paramdef>const COND
*<parameter>cond</parameter></paramdef>
+ </funcprototype>
+
+ </funcsynopsis>
+ </refsynopsisdiv>
+
+ <refsection>
+ <title>Description</title>
+
+ <para>This is the <function>cond_push </function>
method.</para>
+ </refsection>
+
+ <refsection>
+ <title>Parameters</title>
+
+ <itemizedlist>
+
<listitem><para><literal>cond</literal></para></listitem>
+ </itemizedlist>
+
+ </refsection>
+
+ <refsection>
+ <title>Return Values</title>
+
+ <itemizedlist>
+ <listitem>
+ <para>
+ <literal></literal>
+ </para>
+ </listitem>
+ </itemizedlist>
+
+ </refsection>
+
+ <refsection>
+ <title>Usage</title>
+
+ <programlisting>
+
+ </programlisting>
+ </refsection>
+
+ <refsection>
+ <title>Default Implementation</title>
+
+ <programlisting>
+ { return cond; };
+ </programlisting>
+ </refsection>
+
+ </refentry>
+
+
+ <refentry id="custom-engine-api-reference-create">
+ <refmeta>
+ <refentrytitle>create</refentrytitle>
+ </refmeta>
+
+ <refnamediv>
+ <refname>create</refname>
+ <refpurpose></refpurpose>
+ </refnamediv>
+
+ <refsynopsisdiv>
+ <funcsynopsis>
+ <funcprototype>
+ <funcdef>virtual int
<function>create</function></funcdef>
+ <paramdef>const char
*<parameter>name</parameter></paramdef>
+ <paramdef>TABLE
*<parameter>form</parameter></paramdef>
+ <paramdef>HA_CREATE_INFO
*<parameter>info</parameter></paramdef>
+ </funcprototype>
+
+ </funcsynopsis>
+ </refsynopsisdiv>
+
+ <refsection>
+ <title>Description</title>
+
+ <para>This is the <function>create </function>
method.</para>
+ </refsection>
+
+ <refsection>
+ <title>Parameters</title>
+
+ <itemizedlist>
+
<listitem><para><literal>name</literal></para></listitem>
+
<listitem><para><literal>form</literal></para></listitem>
+
<listitem><para><literal>info</literal></para></listitem>
+ </itemizedlist>
+
+ </refsection>
+
+ <refsection>
+ <title>Return Values</title>
+
+ <itemizedlist>
+ <listitem>
+ <para>
+ <literal></literal>
+ </para>
+ </listitem>
+ </itemizedlist>
+
+ </refsection>
+
+ <refsection>
+ <title>Usage</title>
+
+ <programlisting>
+
+ </programlisting>
+ </refsection>
+
+ </refentry>
+
+
+ <refentry id="custom-engine-api-reference-create_handler_files">
+ <refmeta>
+ <refentrytitle>create_handler_files</refentrytitle>
+ </refmeta>
+
+ <refnamediv>
+ <refname>create_handler_files</refname>
+ <refpurpose></refpurpose>
+ </refnamediv>
+
+ <refsynopsisdiv>
+ <funcsynopsis>
+ <funcprototype>
+ <funcdef>virtual int
<function>create_handler_files</function></funcdef>
+ <paramdef>const char
*<parameter>name</parameter></paramdef>
+ </funcprototype>
+
+ </funcsynopsis>
+ </refsynopsisdiv>
+
+ <refsection>
+ <title>Description</title>
+
+ <para>This is the <function>create_handler_files </function>
method.</para>
+ </refsection>
+
+ <refsection>
+ <title>Parameters</title>
+
+ <itemizedlist>
+
<listitem><para><literal>name</literal></para></listitem>
+ </itemizedlist>
+
+ </refsection>
+
+ <refsection>
+ <title>Return Values</title>
+
+ <itemizedlist>
+ <listitem>
+ <para>
+ <literal></literal>
+ </para>
+ </listitem>
+ </itemizedlist>
+
+ </refsection>
+
+ <refsection>
+ <title>Usage</title>
+
+ <programlisting>
+
+ </programlisting>
+ </refsection>
+
+ <refsection>
+ <title>Default Implementation</title>
+
+ <programlisting>
+ { return FALSE;}
+ </programlisting>
+ </refsection>
+
+ </refentry>
+
+
+ <refentry id="custom-engine-api-reference-delete_all_rows">
+ <refmeta>
+ <refentrytitle>delete_all_rows</refentrytitle>
+ </refmeta>
+
+ <refnamediv>
+ <refname>delete_all_rows</refname>
+ <refpurpose></refpurpose>
+ </refnamediv>
+
+ <refsynopsisdiv>
+ <funcsynopsis>
+ <funcprototype>
+ <funcdef>virtual int
<function>delete_all_rows</function></funcdef>
+ <paramdef><parameter></parameter></paramdef>
+ </funcprototype>
+
+ </funcsynopsis>
+ </refsynopsisdiv>
+
+ <refsection>
+ <title>Description</title>
+
+ <para>This is the <function>delete_all_rows </function>
method.</para>
+ </refsection>
+
+ <refsection>
+ <title>Parameters</title>
+
+ <itemizedlist>
+
<listitem><para><literal></literal></para></listitem>
+ </itemizedlist>
+
+ </refsection>
+
+ <refsection>
+ <title>Return Values</title>
+
+ <itemizedlist>
+ <listitem>
+ <para>
+ <literal></literal>
+ </para>
+ </listitem>
+ </itemizedlist>
+
+ </refsection>
+
+ <refsection>
+ <title>Usage</title>
+
+ <programlisting>
+
+ </programlisting>
+ </refsection>
+
+ <refsection>
+ <title>Default Implementation</title>
+
+ <programlisting>
+ { return (my_errno=HA_ERR_WRONG_COMMAND); }
+ </programlisting>
+ </refsection>
+
+ </refentry>
+
+
+ <refentry id="custom-engine-api-reference-delete_row">
+ <refmeta>
+ <refentrytitle>delete_row</refentrytitle>
+ </refmeta>
+
+ <refnamediv>
+ <refname>delete_row</refname>
+ <refpurpose></refpurpose>
+ </refnamediv>
+
+ <refsynopsisdiv>
+ <funcsynopsis>
+ <funcprototype>
+ <funcdef>virtual int
<function>delete_row</function></funcdef>
+ <paramdef>const byte
*<parameter>buf</parameter></paramdef>
+ </funcprototype>
+
+ </funcsynopsis>
+ </refsynopsisdiv>
+
+ <refsection>
+ <title>Description</title>
+
+ <para>This is the <function>delete_row </function>
method.</para>
+ </refsection>
+
+ <refsection>
+ <title>Parameters</title>
+
+ <itemizedlist>
+
<listitem><para><literal>buf</literal></para></listitem>
+ </itemizedlist>
+
+ </refsection>
+
+ <refsection>
+ <title>Return Values</title>
+
+ <itemizedlist>
+ <listitem>
+ <para>
+ <literal></literal>
+ </para>
+ </listitem>
+ </itemizedlist>
+
+ </refsection>
+
+ <refsection>
+ <title>Usage</title>
+
+ <programlisting>
+
+ </programlisting>
+ </refsection>
+
+ <refsection>
+ <title>Default Implementation</title>
+
+ <programlisting>
+ { return HA_ERR_WRONG_COMMAND; }
+ </programlisting>
+ </refsection>
+
+ </refentry>
+
+
+ <refentry id="custom-engine-api-reference-delete_table">
+ <refmeta>
+ <refentrytitle>delete_table</refentrytitle>
+ </refmeta>
+
+ <refnamediv>
+ <refname>delete_table</refname>
+ <refpurpose></refpurpose>
+ </refnamediv>
+
+ <refsynopsisdiv>
+ <funcsynopsis>
+ <funcprototype>
+ <funcdef>virtual int
<function>delete_table</function></funcdef>
+ <paramdef>const char
*<parameter>name</parameter></paramdef>
+ </funcprototype>
+
+ </funcsynopsis>
+ </refsynopsisdiv>
+
+ <refsection>
+ <title>Description</title>
+
+ <para>This is the <function>delete_table </function>
method.</para>
+ </refsection>
+
+ <refsection>
+ <title>Parameters</title>
+
+ <itemizedlist>
+
<listitem><para><literal>name</literal></para></listitem>
+ </itemizedlist>
+
+ </refsection>
+
+ <refsection>
+ <title>Return Values</title>
+
+ <itemizedlist>
+ <listitem>
+ <para>
+ <literal></literal>
+ </para>
+ </listitem>
+ </itemizedlist>
+
+ </refsection>
+
+ <refsection>
+ <title>Usage</title>
+
+ <programlisting>
+
+ </programlisting>
+ </refsection>
+
+ </refentry>
+
+
+ <refentry id="custom-engine-api-reference-disable_indexes">
+ <refmeta>
+ <refentrytitle>disable_indexes</refentrytitle>
+ </refmeta>
+
+ <refnamediv>
+ <refname>disable_indexes</refname>
+ <refpurpose></refpurpose>
+ </refnamediv>
+
+ <refsynopsisdiv>
+ <funcsynopsis>
+ <funcprototype>
+ <funcdef>virtual int
<function>disable_indexes</function></funcdef>
+ <paramdef>uint<parameter>mode</parameter></paramdef>
+ </funcprototype>
+
+ </funcsynopsis>
+ </refsynopsisdiv>
+
+ <refsection>
+ <title>Description</title>
+
+ <para>This is the <function>disable_indexes </function>
method.</para>
+ </refsection>
+
+ <refsection>
+ <title>Parameters</title>
+
+ <itemizedlist>
+
<listitem><para><literal>mode</literal></para></listitem>
+ </itemizedlist>
+
+ </refsection>
+
+ <refsection>
+ <title>Return Values</title>
+
+ <itemizedlist>
+ <listitem>
+ <para>
+ <literal></literal>
+ </para>
+ </listitem>
+ </itemizedlist>
+
+ </refsection>
+
+ <refsection>
+ <title>Usage</title>
+
+ <programlisting>
+
+ </programlisting>
+ </refsection>
+
+ <refsection>
+ <title>Default Implementation</title>
+
+ <programlisting>
+ { return HA_ERR_WRONG_COMMAND; }
+ </programlisting>
+ </refsection>
+
+ </refentry>
+
+
+ <refentry id="custom-engine-api-reference-discard_or_import_tablespace">
+ <refmeta>
+ <refentrytitle>discard_or_import_tablespace</refentrytitle>
+ </refmeta>
+
+ <refnamediv>
+ <refname>discard_or_import_tablespace</refname>
+ <refpurpose></refpurpose>
+ </refnamediv>
+
+ <refsynopsisdiv>
+ <funcsynopsis>
+ <funcprototype>
+ <funcdef>virtual int
<function>discard_or_import_tablespace</function></funcdef>
+
<paramdef>my_bool<parameter>discard</parameter></paramdef>
+ </funcprototype>
+
+ </funcsynopsis>
+ </refsynopsisdiv>
+
+ <refsection>
+ <title>Description</title>
+
+ <para>This is the <function>discard_or_import_tablespace
</function> method.</para>
+ </refsection>
+
+ <refsection>
+ <title>Parameters</title>
+
+ <itemizedlist>
+
<listitem><para><literal>discard</literal></para></listitem>
+ </itemizedlist>
+
+ </refsection>
+
+ <refsection>
+ <title>Return Values</title>
+
+ <itemizedlist>
+ <listitem>
+ <para>
+ <literal></literal>
+ </para>
+ </listitem>
+ </itemizedlist>
+
+ </refsection>
+
+ <refsection>
+ <title>Usage</title>
+
+ <programlisting>
+
+ </programlisting>
+ </refsection>
+
+ <refsection>
+ <title>Default Implementation</title>
+
+ <programlisting>
+ {return HA_ERR_WRONG_COMMAND;}
+ </programlisting>
+ </refsection>
+
+ </refentry>
+
+
+ <refentry id="custom-engine-api-reference-drop_index">
+ <refmeta>
+ <refentrytitle>drop_index</refentrytitle>
+ </refmeta>
+
+ <refnamediv>
+ <refname>drop_index</refname>
+ <refpurpose></refpurpose>
+ </refnamediv>
+
+ <refsynopsisdiv>
+ <funcsynopsis>
+ <funcprototype>
+ <funcdef>virtual int
<function>drop_index</function></funcdef>
+ <paramdef>TABLE
*<parameter>table_arg</parameter></paramdef>
+ <paramdef>uint
*<parameter>key_num</parameter></paramdef>
+
<paramdef>uint<parameter>num_of_keys</parameter></paramdef>
+ </funcprototype>
+
+ </funcsynopsis>
+ </refsynopsisdiv>
+
+ <refsection>
+ <title>Description</title>
+
+ <para>This is the <function>drop_index </function>
method.</para>
+ </refsection>
+
+ <refsection>
+ <title>Parameters</title>
+
+ <itemizedlist>
+
<listitem><para><literal>table_arg</literal></para></listitem>
+
<listitem><para><literal>key_num</literal></para></listitem>
+
<listitem><para><literal>num_of_keys</literal></para></listitem>
+ </itemizedlist>
+
+ </refsection>
+
+ <refsection>
+ <title>Return Values</title>
+
+ <itemizedlist>
+ <listitem>
+ <para>
+ <literal></literal>
+ </para>
+ </listitem>
+ </itemizedlist>
+
+ </refsection>
+
+ <refsection>
+ <title>Usage</title>
+
+ <programlisting>
+
+ </programlisting>
+ </refsection>
+
+ <refsection>
+ <title>Default Implementation</title>
+
+ <programlisting>
+ { return (HA_ERR_WRONG_COMMAND); }
+ </programlisting>
+ </refsection>
+
+ </refentry>
+
+
+ <refentry id="custom-engine-api-reference-drop_partitions">
+ <refmeta>
+ <refentrytitle>drop_partitions</refentrytitle>
+ </refmeta>
+
+ <refnamediv>
+ <refname>drop_partitions</refname>
+ <refpurpose></refpurpose>
+ </refnamediv>
+
+ <refsynopsisdiv>
+ <funcsynopsis>
+ <funcprototype>
+ <funcdef>virtual int
<function>drop_partitions</function></funcdef>
+ <paramdef>const char
*<parameter>path</parameter></paramdef>
+ </funcprototype>
+
+ </funcsynopsis>
+ </refsynopsisdiv>
+
+ <refsection>
+ <title>Description</title>
+
+ <para>This is the <function>drop_partitions </function>
method.</para>
+ </refsection>
+
+ <refsection>
+ <title>Parameters</title>
+
+ <itemizedlist>
+
<listitem><para><literal>path</literal></para></listitem>
+ </itemizedlist>
+
+ </refsection>
+
+ <refsection>
+ <title>Return Values</title>
+
+ <itemizedlist>
+ <listitem>
+ <para>
+ <literal></literal>
+ </para>
+ </listitem>
+ </itemizedlist>
+
+ </refsection>
+
+ <refsection>
+ <title>Usage</title>
+
+ <programlisting>
+
+ </programlisting>
+ </refsection>
+
+ <refsection>
+ <title>Default Implementation</title>
+
+ <programlisting>
+ { return HA_ERR_WRONG_COMMAND; }
+ </programlisting>
+ </refsection>
+
+ </refentry>
+
+
+ <refentry id="custom-engine-api-reference-dump">
+ <refmeta>
+ <refentrytitle>dump</refentrytitle>
+ </refmeta>
+
+ <refnamediv>
+ <refname>dump</refname>
+ <refpurpose></refpurpose>
+ </refnamediv>
+
+ <refsynopsisdiv>
+ <funcsynopsis>
+ <funcprototype>
+ <funcdef>virtual int
<function>dump</function></funcdef>
+ <paramdef>THD*<parameter>thd</parameter></paramdef>
+ <paramdef>int fd
=<parameter>-1</parameter></paramdef>
+ </funcprototype>
+
+ </funcsynopsis>
+ </refsynopsisdiv>
+
+ <refsection>
+ <title>Description</title>
+
+ <para>This is the <function>dump </function>
method.</para>
+ </refsection>
+
+ <refsection>
+ <title>Parameters</title>
+
+ <itemizedlist>
+
<listitem><para><literal>thd</literal></para></listitem>
+
<listitem><para><literal>-1</literal></para></listitem>
+ </itemizedlist>
+
+ </refsection>
+
+ <refsection>
+ <title>Return Values</title>
+
+ <itemizedlist>
+ <listitem>
+ <para>
+ <literal></literal>
+ </para>
+ </listitem>
+ </itemizedlist>
+
+ </refsection>
+
+ <refsection>
+ <title>Usage</title>
+
+ <programlisting>
+
+ </programlisting>
+ </refsection>
+
+ <refsection>
+ <title>Default Implementation</title>
+
+ <programlisting>
+ { return HA_ERR_WRONG_COMMAND; }
+ </programlisting>
+ </refsection>
+
+ </refentry>
+
+
+ <refentry id="custom-engine-api-reference-enable_indexes">
+ <refmeta>
+ <refentrytitle>enable_indexes</refentrytitle>
+ </refmeta>
+
+ <refnamediv>
+ <refname>enable_indexes</refname>
+ <refpurpose></refpurpose>
+ </refnamediv>
+
+ <refsynopsisdiv>
+ <funcsynopsis>
+ <funcprototype>
+ <funcdef>virtual int
<function>enable_indexes</function></funcdef>
+ <paramdef>uint<parameter>mode</parameter></paramdef>
+ </funcprototype>
+
+ </funcsynopsis>
+ </refsynopsisdiv>
+
+ <refsection>
+ <title>Description</title>
+
+ <para>This is the <function>enable_indexes </function>
method.</para>
+ </refsection>
+
+ <refsection>
+ <title>Parameters</title>
+
+ <itemizedlist>
+
<listitem><para><literal>mode</literal></para></listitem>
+ </itemizedlist>
+
+ </refsection>
+
+ <refsection>
+ <title>Return Values</title>
+
+ <itemizedlist>
+ <listitem>
+ <para>
+ <literal></literal>
+ </para>
+ </listitem>
+ </itemizedlist>
+
+ </refsection>
+
+ <refsection>
+ <title>Usage</title>
+
+ <programlisting>
+
+ </programlisting>
+ </refsection>
+
+ <refsection>
+ <title>Default Implementation</title>
+
+ <programlisting>
+ { return HA_ERR_WRONG_COMMAND; }
+ </programlisting>
+ </refsection>
+
+ </refentry>
+
+
+ <refentry id="custom-engine-api-reference-end_bulk_delete">
+ <refmeta>
+ <refentrytitle>end_bulk_delete</refentrytitle>
+ </refmeta>
+
+ <refnamediv>
+ <refname>end_bulk_delete</refname>
+ <refpurpose></refpurpose>
+ </refnamediv>
+
+ <refsynopsisdiv>
+ <funcsynopsis>
+ <funcprototype>
+ <funcdef>virtual int
<function>end_bulk_delete</function></funcdef>
+ <paramdef><parameter></parameter></paramdef>
+ </funcprototype>
+
+ </funcsynopsis>
+ </refsynopsisdiv>
+
+ <refsection>
+ <title>Description</title>
+
+ <para>This is the <function>end_bulk_delete </function>
method.</para>
+ </refsection>
+
+ <refsection>
+ <title>Parameters</title>
+
+ <itemizedlist>
+
<listitem><para><literal></literal></para></listitem>
+ </itemizedlist>
+
+ </refsection>
+
+ <refsection>
+ <title>Return Values</title>
+
+ <itemizedlist>
+ <listitem>
+ <para>
+ <literal></literal>
+ </para>
+ </listitem>
+ </itemizedlist>
+
+ </refsection>
+
+ <refsection>
+ <title>Usage</title>
+
+ <programlisting>
+
+ </programlisting>
+ </refsection>
+
+ <refsection>
+ <title>Default Implementation</title>
+
+ <programlisting>
+ { DBUG_ASSERT(FALSE); return HA_ERR_WRONG_COMMAND; }
+ </programlisting>
+ </refsection>
+
+ </refentry>
+
+
+ <refentry id="custom-engine-api-reference-end_bulk_insert">
+ <refmeta>
+ <refentrytitle>end_bulk_insert</refentrytitle>
+ </refmeta>
+
+ <refnamediv>
+ <refname>end_bulk_insert</refname>
+ <refpurpose></refpurpose>
+ </refnamediv>
+
+ <refsynopsisdiv>
+ <funcsynopsis>
+ <funcprototype>
+ <funcdef>virtual int
<function>end_bulk_insert</function></funcdef>
+ <paramdef><parameter></parameter></paramdef>
+ </funcprototype>
+
+ </funcsynopsis>
+ </refsynopsisdiv>
+
+ <refsection>
+ <title>Description</title>
+
+ <para>This is the <function>end_bulk_insert </function>
method.</para>
+ </refsection>
+
+ <refsection>
+ <title>Parameters</title>
+
+ <itemizedlist>
+
<listitem><para><literal></literal></para></listitem>
+ </itemizedlist>
+
+ </refsection>
+
+ <refsection>
+ <title>Return Values</title>
+
+ <itemizedlist>
+ <listitem>
+ <para>
+ <literal></literal>
+ </para>
+ </listitem>
+ </itemizedlist>
+
+ </refsection>
+
+ <refsection>
+ <title>Usage</title>
+
+ <programlisting>
+
+ </programlisting>
+ </refsection>
+
+ <refsection>
+ <title>Default Implementation</title>
+
+ <programlisting>
+ {return 0; }
+ </programlisting>
+ </refsection>
+
+ </refentry>
+
+
+ <refentry id="custom-engine-api-reference-end_bulk_update">
+ <refmeta>
+ <refentrytitle>end_bulk_update</refentrytitle>
+ </refmeta>
+
+ <refnamediv>
+ <refname>end_bulk_update</refname>
+ <refpurpose></refpurpose>
+ </refnamediv>
+
+ <refsynopsisdiv>
+ <funcsynopsis>
+ <funcprototype>
+ <funcdef>virtual void
<function>end_bulk_update</function></funcdef>
+ <paramdef><parameter></parameter></paramdef>
+ </funcprototype>
+
+ </funcsynopsis>
+ </refsynopsisdiv>
+
+ <refsection>
+ <title>Description</title>
+
+ <para>This is the <function>end_bulk_update </function>
method.</para>
+ </refsection>
+
+ <refsection>
+ <title>Parameters</title>
+
+ <itemizedlist>
+
<listitem><para><literal></literal></para></listitem>
+ </itemizedlist>
+
+ </refsection>
+
+ <refsection>
+ <title>Return Values</title>
+
+ <itemizedlist>
+ <listitem>
+ <para>
+ <literal></literal>
+ </para>
+ </listitem>
+ </itemizedlist>
+
+ </refsection>
+
+ <refsection>
+ <title>Usage</title>
+
+ <programlisting>
+
+ </programlisting>
+ </refsection>
+
+ <refsection>
+ <title>Default Implementation</title>
+
+ <programlisting>
+ { return; }
+ </programlisting>
+ </refsection>
+
+ </refentry>
+
+
+ <refentry id="custom-engine-api-reference-estimate_rows_upper_bound">
+ <refmeta>
+ <refentrytitle>estimate_rows_upper_bound</refentrytitle>
+ </refmeta>
+
+ <refnamediv>
+ <refname>estimate_rows_upper_bound</refname>
+ <refpurpose></refpurpose>
+ </refnamediv>
+
+ <refsynopsisdiv>
+ <funcsynopsis>
+ <funcprototype>
+ <funcdef>virtual ha_rows
<function>estimate_rows_upper_bound</function></funcdef>
+ <paramdef><parameter></parameter></paramdef>
+ </funcprototype>
+
+ </funcsynopsis>
+ </refsynopsisdiv>
+
+ <refsection>
+ <title>Description</title>
+
+ <para>This is the <function>estimate_rows_upper_bound
</function> method.</para>
+ </refsection>
+
+ <refsection>
+ <title>Parameters</title>
+
+ <itemizedlist>
+
<listitem><para><literal></literal></para></listitem>
+ </itemizedlist>
+
+ </refsection>
+
+ <refsection>
+ <title>Return Values</title>
+
+ <itemizedlist>
+ <listitem>
+ <para>
+ <literal></literal>
+ </para>
+ </listitem>
+ </itemizedlist>
+
+ </refsection>
+
+ <refsection>
+ <title>Usage</title>
+
+ <programlisting>
+
+ </programlisting>
+ </refsection>
+
+ <refsection>
+ <title>Default Implementation</title>
+
+ <programlisting>
+ { return records+EXTRA_RECORDS; }
+ </programlisting>
+ </refsection>
+
+ </refentry>
+
+
+ <refentry id="custom-engine-api-reference-exec_bulk_update">
+ <refmeta>
+ <refentrytitle>exec_bulk_update</refentrytitle>
+ </refmeta>
+
+ <refnamediv>
+ <refname>exec_bulk_update</refname>
+ <refpurpose></refpurpose>
+ </refnamediv>
+
+ <refsynopsisdiv>
+ <funcsynopsis>
+ <funcprototype>
+ <funcdef>virtual int
<function>exec_bulk_update</function></funcdef>
+ <paramdef>uint
*<parameter>dup_key_found</parameter></paramdef>
+ </funcprototype>
+
+ </funcsynopsis>
+ </refsynopsisdiv>
+
+ <refsection>
+ <title>Description</title>
+
+ <para>This is the <function>exec_bulk_update </function>
method.</para>
+ </refsection>
+
+ <refsection>
+ <title>Parameters</title>
+
+ <itemizedlist>
+
<listitem><para><literal>dup_key_found</literal></para></listitem>
+ </itemizedlist>
+
+ </refsection>
+
+ <refsection>
+ <title>Return Values</title>
+
+ <itemizedlist>
+ <listitem>
+ <para>
+ <literal></literal>
+ </para>
+ </listitem>
+ </itemizedlist>
+
+ </refsection>
+
+ <refsection>
+ <title>Usage</title>
+
+ <programlisting>
+
+ </programlisting>
+ </refsection>
+
+ <refsection>
+ <title>Default Implementation</title>
+
+ <programlisting>
+ { DBUG_ASSERT(FALSE); return HA_ERR_WRONG_COMMAND; }
+ </programlisting>
+ </refsection>
+
+ </refentry>
+
+
+ <refentry id="custom-engine-api-reference-external_lock">
+ <refmeta>
+ <refentrytitle>external_lock</refentrytitle>
+ </refmeta>
+
+ <refnamediv>
+ <refname>external_lock</refname>
+ <refpurpose></refpurpose>
+ </refnamediv>
+
+ <refsynopsisdiv>
+ <funcsynopsis>
+ <funcprototype>
+ <funcdef>virtual int
<function>external_lock</function></funcdef>
+ <paramdef>THD *<parameter>thd</parameter></paramdef>
+
<paramdef>int<parameter>lock_type</parameter></paramdef>
+ </funcprototype>
+
+ </funcsynopsis>
+ </refsynopsisdiv>
+
+ <refsection>
+ <title>Description</title>
+
+ <para>This is the <function>external_lock </function>
method.</para>
+ </refsection>
+
+ <refsection>
+ <title>Parameters</title>
+
+ <itemizedlist>
+
<listitem><para><literal>thd</literal></para></listitem>
+
<listitem><para><literal>lock_type</literal></para></listitem>
+ </itemizedlist>
+
+ </refsection>
+
+ <refsection>
+ <title>Return Values</title>
+
+ <itemizedlist>
+ <listitem>
+ <para>
+ <literal></literal>
+ </para>
+ </listitem>
+ </itemizedlist>
+
+ </refsection>
+
+ <refsection>
+ <title>Usage</title>
+
+ <programlisting>
+
+ </programlisting>
+ </refsection>
+
+ <refsection>
+ <title>Default Implementation</title>
+
+ <programlisting>
+ { return 0; }
+ </programlisting>
+ </refsection>
+
+ </refentry>
+
+
+ <refentry id="custom-engine-api-reference-extra">
+ <refmeta>
+ <refentrytitle>extra</refentrytitle>
+ </refmeta>
+
+ <refnamediv>
+ <refname>extra</refname>
+ <refpurpose></refpurpose>
+ </refnamediv>
+
+ <refsynopsisdiv>
+ <funcsynopsis>
+ <funcprototype>
+ <funcdef>virtual int
<function>extra</function></funcdef>
+ <paramdef>enum
ha_extra_function<parameter>operation</parameter></paramdef>
+ </funcprototype>
+
+ </funcsynopsis>
+ </refsynopsisdiv>
+
+ <refsection>
+ <title>Description</title>
+
+ <para>This is the <function>extra </function>
method.</para>
+ </refsection>
+
+ <refsection>
+ <title>Parameters</title>
+
+ <itemizedlist>
+
<listitem><para><literal>operation</literal></para></listitem>
+ </itemizedlist>
+
+ </refsection>
+
+ <refsection>
+ <title>Return Values</title>
+
+ <itemizedlist>
+ <listitem>
+ <para>
+ <literal></literal>
+ </para>
+ </listitem>
+ </itemizedlist>
+
+ </refsection>
+
+ <refsection>
+ <title>Usage</title>
+
+ <programlisting>
+
+ </programlisting>
+ </refsection>
+
+ <refsection>
+ <title>Default Implementation</title>
+
+ <programlisting>
+ { return 0; }
+ </programlisting>
+ </refsection>
+
+ </refentry>
+
+
+ <refentry id="custom-engine-api-reference-extra_opt">
+ <refmeta>
+ <refentrytitle>extra_opt</refentrytitle>
+ </refmeta>
+
+ <refnamediv>
+ <refname>extra_opt</refname>
+ <refpurpose></refpurpose>
+ </refnamediv>
+
+ <refsynopsisdiv>
+ <funcsynopsis>
+ <funcprototype>
+ <funcdef>virtual int
<function>extra_opt</function></funcdef>
+ <paramdef>enum
ha_extra_function<parameter>operation</parameter></paramdef>
+
<paramdef>ulong<parameter>cache_size</parameter></paramdef>
+ </funcprototype>
+
+ </funcsynopsis>
+ </refsynopsisdiv>
+
+ <refsection>
+ <title>Description</title>
+
+ <para>This is the <function>extra_opt </function>
method.</para>
+ </refsection>
+
+ <refsection>
+ <title>Parameters</title>
+
+ <itemizedlist>
+
<listitem><para><literal>operation</literal></para></listitem>
+
<listitem><para><literal>cache_size</literal></para></listitem>
+ </itemizedlist>
+
+ </refsection>
+
+ <refsection>
+ <title>Return Values</title>
+
+ <itemizedlist>
+ <listitem>
+ <para>
+ <literal></literal>
+ </para>
+ </listitem>
+ </itemizedlist>
+
+ </refsection>
+
+ <refsection>
+ <title>Usage</title>
+
+ <programlisting>
+
+ </programlisting>
+ </refsection>
+
+ <refsection>
+ <title>Default Implementation</title>
+
+ <programlisting>
+ { return extra(operation); }
+ </programlisting>
+ </refsection>
+
+ </refentry>
+
+
+ <refentry id="custom-engine-api-reference-extra_rec_buf_length">
+ <refmeta>
+ <refentrytitle>extra_rec_buf_length</refentrytitle>
+ </refmeta>
+
+ <refnamediv>
+ <refname>extra_rec_buf_length</refname>
+ <refpurpose></refpurpose>
+ </refnamediv>
+
+ <refsynopsisdiv>
+ <funcsynopsis>
+ <funcprototype>
+ <funcdef>virtual uint
<function>extra_rec_buf_length</function></funcdef>
+ <paramdef><parameter></parameter></paramdef>
+ </funcprototype>
+
+ </funcsynopsis>
+ </refsynopsisdiv>
+
+ <refsection>
+ <title>Description</title>
+
+ <para>This is the <function>extra_rec_buf_length </function>
method.</para>
+ </refsection>
+
+ <refsection>
+ <title>Parameters</title>
+
+ <itemizedlist>
+
<listitem><para><literal></literal></para></listitem>
+ </itemizedlist>
+
+ </refsection>
+
+ <refsection>
+ <title>Return Values</title>
+
+ <itemizedlist>
+ <listitem>
+ <para>
+ <literal></literal>
+ </para>
+ </listitem>
+ </itemizedlist>
+
+ </refsection>
+
+ <refsection>
+ <title>Usage</title>
+
+ <programlisting>
+
+ </programlisting>
+ </refsection>
+
+ <refsection>
+ <title>Default Implementation</title>
+
+ <programlisting>
+ const { return 0; }
+ </programlisting>
+ </refsection>
+
+ </refentry>
+
+
+ <refentry id="custom-engine-api-reference-free_foreign_key_create_info">
+ <refmeta>
+ <refentrytitle>free_foreign_key_create_info</refentrytitle>
+ </refmeta>
+
+ <refnamediv>
+ <refname>free_foreign_key_create_info</refname>
+ <refpurpose></refpurpose>
+ </refnamediv>
+
+ <refsynopsisdiv>
+ <funcsynopsis>
+ <funcprototype>
+ <funcdef>virtual void
<function>free_foreign_key_create_info</function></funcdef>
+ <paramdef>char*<parameter>str</parameter></paramdef>
+ </funcprototype>
+
+ </funcsynopsis>
+ </refsynopsisdiv>
+
+ <refsection>
+ <title>Description</title>
+
+ <para>This is the <function>free_foreign_key_create_info
</function> method.</para>
+ </refsection>
+
+ <refsection>
+ <title>Parameters</title>
+
+ <itemizedlist>
+
<listitem><para><literal>str</literal></para></listitem>
+ </itemizedlist>
+
+ </refsection>
+
+ <refsection>
+ <title>Return Values</title>
+
+ <itemizedlist>
+ <listitem>
+ <para>
+ <literal></literal>
+ </para>
+ </listitem>
+ </itemizedlist>
+
+ </refsection>
+
+ <refsection>
+ <title>Usage</title>
+
+ <programlisting>
+
+ </programlisting>
+ </refsection>
+
+ </refentry>
+
+
+ <refentry id="custom-engine-api-reference-ft_end">
+ <refmeta>
+ <refentrytitle>ft_end</refentrytitle>
+ </refmeta>
+
+ <refnamediv>
+ <refname>ft_end</refname>
+ <refpurpose></refpurpose>
+ </refnamediv>
+
+ <refsynopsisdiv>
+ <funcsynopsis>
+ <funcprototype>
+ <funcdef>void <function>ft_end</function></funcdef>
+ <paramdef><parameter></parameter></paramdef>
+ </funcprototype>
+
+ </funcsynopsis>
+ </refsynopsisdiv>
+
+ <refsection>
+ <title>Description</title>
+
+ <para>This is the <function>ft_end </function>
method.</para>
+ </refsection>
+
+ <refsection>
+ <title>Parameters</title>
+
+ <itemizedlist>
+
<listitem><para><literal></literal></para></listitem>
+ </itemizedlist>
+
+ </refsection>
+
+ <refsection>
+ <title>Return Values</title>
+
+ <itemizedlist>
+ <listitem>
+ <para>
+ <literal></literal>
+ </para>
+ </listitem>
+ </itemizedlist>
+
+ </refsection>
+
+ <refsection>
+ <title>Usage</title>
+
+ <programlisting>
+
+ </programlisting>
+ </refsection>
+
+ <refsection>
+ <title>Implementation</title>
+
+ <programlisting>
+ { ft_handler=NULL; }
+ </programlisting>
+ </refsection>
+
+ </refentry>
+
+
+ <refentry id="custom-engine-api-reference-ft_init">
+ <refmeta>
+ <refentrytitle>ft_init</refentrytitle>
+ </refmeta>
+
+ <refnamediv>
+ <refname>ft_init</refname>
+ <refpurpose></refpurpose>
+ </refnamediv>
+
+ <refsynopsisdiv>
+ <funcsynopsis>
+ <funcprototype>
+ <funcdef>virtual int
<function>ft_init</function></funcdef>
+ <paramdef><parameter></parameter></paramdef>
+ </funcprototype>
+
+ </funcsynopsis>
+ </refsynopsisdiv>
+
+ <refsection>
+ <title>Description</title>
+
+ <para>This is the <function>ft_init </function>
method.</para>
+ </refsection>
+
+ <refsection>
+ <title>Parameters</title>
+
+ <itemizedlist>
+
<listitem><para><literal></literal></para></listitem>
+ </itemizedlist>
+
+ </refsection>
+
+ <refsection>
+ <title>Return Values</title>
+
+ <itemizedlist>
+ <listitem>
+ <para>
+ <literal></literal>
+ </para>
+ </listitem>
+ </itemizedlist>
+
+ </refsection>
+
+ <refsection>
+ <title>Usage</title>
+
+ <programlisting>
+
+ </programlisting>
+ </refsection>
+
+ <refsection>
+ <title>Default Implementation</title>
+
+ <programlisting>
+ { return HA_ERR_WRONG_COMMAND; }
+ </programlisting>
+ </refsection>
+
+ </refentry>
+
+
+ <refentry id="custom-engine-api-reference-ft_init_ext">
+ <refmeta>
+ <refentrytitle>ft_init_ext</refentrytitle>
+ </refmeta>
+
+ <refnamediv>
+ <refname>ft_init_ext</refname>
+ <refpurpose></refpurpose>
+ </refnamediv>
+
+ <refsynopsisdiv>
+ <funcsynopsis>
+ <funcprototype>
+ <funcdef>virtual FT_INFO *
<function>ft_init_ext</function></funcdef>
+ <paramdef>uint<parameter>flags</parameter></paramdef>
+ <paramdef>uint<parameter>inx</parameter></paramdef>
+ <paramdef>String
*<parameter>key</parameter></paramdef>
+ </funcprototype>
+
+ </funcsynopsis>
+ </refsynopsisdiv>
+
+ <refsection>
+ <title>Description</title>
+
+ <para>This is the <function>ft_init_ext </function>
method.</para>
+ </refsection>
+
+ <refsection>
+ <title>Parameters</title>
+
+ <itemizedlist>
+
<listitem><para><literal>flags</literal></para></listitem>
+
<listitem><para><literal>inx</literal></para></listitem>
+
<listitem><para><literal>key</literal></para></listitem>
+ </itemizedlist>
+
+ </refsection>
+
+ <refsection>
+ <title>Return Values</title>
+
+ <itemizedlist>
+ <listitem>
+ <para>
+ <literal></literal>
+ </para>
+ </listitem>
+ </itemizedlist>
+
+ </refsection>
+
+ <refsection>
+ <title>Usage</title>
+
+ <programlisting>
+
+ </programlisting>
+ </refsection>
+
+ <refsection>
+ <title>Default Implementation</title>
+
+ <programlisting>
+ { return NULL; }
+ </programlisting>
+ </refsection>
+
+ </refentry>
+
+
+ <refentry id="custom-engine-api-reference-ft_read">
+ <refmeta>
+ <refentrytitle>ft_read</refentrytitle>
+ </refmeta>
+
+ <refnamediv>
+ <refname>ft_read</refname>
+ <refpurpose></refpurpose>
+ </refnamediv>
+
+ <refsynopsisdiv>
+ <funcsynopsis>
+ <funcprototype>
+ <funcdef>virtual int
<function>ft_read</function></funcdef>
+ <paramdef>byte *<parameter>buf</parameter></paramdef>
+ </funcprototype>
+
+ </funcsynopsis>
+ </refsynopsisdiv>
+
+ <refsection>
+ <title>Description</title>
+
+ <para>This is the <function>ft_read </function>
method.</para>
+ </refsection>
+
+ <refsection>
+ <title>Parameters</title>
+
+ <itemizedlist>
+
<listitem><para><literal>buf</literal></para></listitem>
+ </itemizedlist>
+
+ </refsection>
+
+ <refsection>
+ <title>Return Values</title>
+
+ <itemizedlist>
+ <listitem>
+ <para>
+ <literal></literal>
+ </para>
+ </listitem>
+ </itemizedlist>
+
+ </refsection>
+
+ <refsection>
+ <title>Usage</title>
+
+ <programlisting>
+
+ </programlisting>
+ </refsection>
+
+ <refsection>
+ <title>Default Implementation</title>
+
+ <programlisting>
+ { return HA_ERR_WRONG_COMMAND; }
+ </programlisting>
+ </refsection>
+
+ </refentry>
+
+
+ <refentry id="custom-engine-api-reference-get_auto_increment">
+ <refmeta>
+ <refentrytitle>get_auto_increment</refentrytitle>
+ </refmeta>
+
+ <refnamediv>
+ <refname>get_auto_increment</refname>
+ <refpurpose></refpurpose>
+ </refnamediv>
+
+ <refsynopsisdiv>
+ <funcsynopsis>
+ <funcprototype>
+ <funcdef>virtual ulonglong
<function>get_auto_increment</function></funcdef>
+ <paramdef><parameter></parameter></paramdef>
+ </funcprototype>
+
+ </funcsynopsis>
+ </refsynopsisdiv>
+
+ <refsection>
+ <title>Description</title>
+
+ <para>This is the <function>get_auto_increment </function>
method.</para>
+ </refsection>
+
+ <refsection>
+ <title>Parameters</title>
+
+ <itemizedlist>
+
<listitem><para><literal></literal></para></listitem>
+ </itemizedlist>
+
+ </refsection>
+
+ <refsection>
+ <title>Return Values</title>
+
+ <itemizedlist>
+ <listitem>
+ <para>
+ <literal></literal>
+ </para>
+ </listitem>
+ </itemizedlist>
+
+ </refsection>
+
+ <refsection>
+ <title>Usage</title>
+
+ <programlisting>
+
+ </programlisting>
+ </refsection>
+
+ </refentry>
+
+
+ <refentry id="custom-engine-api-reference-get_default_no_partitions">
+ <refmeta>
+ <refentrytitle>get_default_no_partitions</refentrytitle>
+ </refmeta>
+
+ <refnamediv>
+ <refname>get_default_no_partitions</refname>
+ <refpurpose></refpurpose>
+ </refnamediv>
+
+ <refsynopsisdiv>
+ <funcsynopsis>
+ <funcprototype>
+ <funcdef>virtual int
<function>get_default_no_partitions</function></funcdef>
+
<paramdef>ulonglong<parameter>max_rows</parameter></paramdef>
+ </funcprototype>
+
+ </funcsynopsis>
+ </refsynopsisdiv>
+
+ <refsection>
+ <title>Description</title>
+
+ <para>This is the <function>get_default_no_partitions
</function> method.</para>
+ </refsection>
+
+ <refsection>
+ <title>Parameters</title>
+
+ <itemizedlist>
+
<listitem><para><literal>max_rows</literal></para></listitem>
+ </itemizedlist>
+
+ </refsection>
+
+ <refsection>
+ <title>Return Values</title>
+
+ <itemizedlist>
+ <listitem>
+ <para>
+ <literal></literal>
+ </para>
+ </listitem>
+ </itemizedlist>
+
+ </refsection>
+
+ <refsection>
+ <title>Usage</title>
+
+ <programlisting>
+
+ </programlisting>
+ </refsection>
+
+ <refsection>
+ <title>Default Implementation</title>
+
+ <programlisting>
+ { return 1;}
+ </programlisting>
+ </refsection>
+
+ </refentry>
+
+
+ <refentry id="custom-engine-api-reference-get_dup_key">
+ <refmeta>
+ <refentrytitle>get_dup_key</refentrytitle>
+ </refmeta>
+
+ <refnamediv>
+ <refname>get_dup_key</refname>
+ <refpurpose></refpurpose>
+ </refnamediv>
+
+ <refsynopsisdiv>
+ <funcsynopsis>
+ <funcprototype>
+ <funcdef>uint
<function>get_dup_key</function></funcdef>
+ <paramdef>int<parameter>error</parameter></paramdef>
+ </funcprototype>
+
+ </funcsynopsis>
+ </refsynopsisdiv>
+
+ <refsection>
+ <title>Description</title>
+
+ <para>This is the <function>get_dup_key </function>
method.</para>
+ </refsection>
+
+ <refsection>
+ <title>Parameters</title>
+
+ <itemizedlist>
+
<listitem><para><literal>error</literal></para></listitem>
+ </itemizedlist>
+
+ </refsection>
+
+ <refsection>
+ <title>Return Values</title>
+
+ <itemizedlist>
+ <listitem>
+ <para>
+ <literal></literal>
+ </para>
+ </listitem>
+ </itemizedlist>
+
+ </refsection>
+
+ <refsection>
+ <title>Usage</title>
+
+ <programlisting>
+
+ </programlisting>
+ </refsection>
+
+ </refentry>
+
+
+ <refentry id="custom-engine-api-reference-get_error_message">
+ <refmeta>
+ <refentrytitle>get_error_message</refentrytitle>
+ </refmeta>
+
+ <refnamediv>
+ <refname>get_error_message</refname>
+ <refpurpose></refpurpose>
+ </refnamediv>
+
+ <refsynopsisdiv>
+ <funcsynopsis>
+ <funcprototype>
+ <funcdef>virtual bool
<function>get_error_message</function></funcdef>
+ <paramdef>int<parameter>error</parameter></paramdef>
+ <paramdef>String
*<parameter>buf</parameter></paramdef>
+ </funcprototype>
+
+ </funcsynopsis>
+ </refsynopsisdiv>
+
+ <refsection>
+ <title>Description</title>
+
+ <para>This is the <function>get_error_message </function>
method.</para>
+ </refsection>
+
+ <refsection>
+ <title>Parameters</title>
+
+ <itemizedlist>
+
<listitem><para><literal>error</literal></para></listitem>
+
<listitem><para><literal>buf</literal></para></listitem>
+ </itemizedlist>
+
+ </refsection>
+
+ <refsection>
+ <title>Return Values</title>
+
+ <itemizedlist>
+ <listitem>
+ <para>
+ <literal></literal>
+ </para>
+ </listitem>
+ </itemizedlist>
+
+ </refsection>
+
+ <refsection>
+ <title>Usage</title>
+
+ <programlisting>
+
+ </programlisting>
+ </refsection>
+
+ </refentry>
+
+
+ <refentry id="custom-engine-api-reference-get_foreign_key_create_info">
+ <refmeta>
+ <refentrytitle>get_foreign_key_create_info</refentrytitle>
+ </refmeta>
+
+ <refnamediv>
+ <refname>get_foreign_key_create_info</refname>
+ <refpurpose></refpurpose>
+ </refnamediv>
+
+ <refsynopsisdiv>
+ <funcsynopsis>
+ <funcprototype>
+ <funcdef>virtual char*
<function>get_foreign_key_create_info</function></funcdef>
+ <paramdef><parameter></parameter></paramdef>
+ </funcprototype>
+
+ </funcsynopsis>
+ </refsynopsisdiv>
+
+ <refsection>
+ <title>Description</title>
+
+ <para>This is the <function>get_foreign_key_create_info
</function> method.</para>
+ </refsection>
+
+ <refsection>
+ <title>Parameters</title>
+
+ <itemizedlist>
+
<listitem><para><literal></literal></para></listitem>
+ </itemizedlist>
+
+ </refsection>
+
+ <refsection>
+ <title>Return Values</title>
+
+ <itemizedlist>
+ <listitem>
+ <para>
+ <literal></literal>
+ </para>
+ </listitem>
+ </itemizedlist>
+
+ </refsection>
+
+ <refsection>
+ <title>Usage</title>
+
+ <programlisting>
+
+ </programlisting>
+ </refsection>
+
+ <refsection>
+ <title>Default Implementation</title>
+
+ <programlisting>
+ { return(NULL);}
+ </programlisting>
+ </refsection>
+
+ </refentry>
+
+
+ <refentry id="custom-engine-api-reference-get_foreign_key_list">
+ <refmeta>
+ <refentrytitle>get_foreign_key_list</refentrytitle>
+ </refmeta>
+
+ <refnamediv>
+ <refname>get_foreign_key_list</refname>
+ <refpurpose></refpurpose>
+ </refnamediv>
+
+ <refsynopsisdiv>
+ <funcsynopsis>
+ <funcprototype>
+ <funcdef>virtual int
<function>get_foreign_key_list</function></funcdef>
+ <paramdef>THD *<parameter>thd</parameter></paramdef>
+ <paramdef>List>FOREIGN_KEY_INFO<
*<parameter>f_key_list</parameter></paramdef>
+ </funcprototype>
+
+ </funcsynopsis>
+ </refsynopsisdiv>
+
+ <refsection>
+ <title>Description</title>
+
+ <para>This is the <function>get_foreign_key_list </function>
method.</para>
+ </refsection>
+
+ <refsection>
+ <title>Parameters</title>
+
+ <itemizedlist>
+
<listitem><para><literal>thd</literal></para></listitem>
+
<listitem><para><literal>f_key_list</literal></para></listitem>
+ </itemizedlist>
+
+ </refsection>
+
+ <refsection>
+ <title>Return Values</title>
+
+ <itemizedlist>
+ <listitem>
+ <para>
+ <literal></literal>
+ </para>
+ </listitem>
+ </itemizedlist>
+
+ </refsection>
+
+ <refsection>
+ <title>Usage</title>
+
+ <programlisting>
+
+ </programlisting>
+ </refsection>
+
+ <refsection>
+ <title>Default Implementation</title>
+
+ <programlisting>
+ { return 0; }
+ </programlisting>
+ </refsection>
+
+ </refentry>
+
+
+ <refentry id="custom-engine-api-reference-get_index">
+ <refmeta>
+ <refentrytitle>get_index</refentrytitle>
+ </refmeta>
+
+ <refnamediv>
+ <refname>get_index</refname>
+ <refpurpose></refpurpose>
+ </refnamediv>
+
+ <refsynopsisdiv>
+ <funcsynopsis>
+ <funcprototype>
+ <funcdef>uint
<function>get_index</function></funcdef>
+ <paramdef><parameter>void</parameter></paramdef>
+ </funcprototype>
+
+ </funcsynopsis>
+ </refsynopsisdiv>
+
+ <refsection>
+ <title>Description</title>
+
+ <para>This is the <function>get_index </function>
method.</para>
+ </refsection>
+
+ <refsection>
+ <title>Parameters</title>
+
+ <itemizedlist>
+
<listitem><para><literal>void</literal></para></listitem>
+ </itemizedlist>
+
+ </refsection>
+
+ <refsection>
+ <title>Return Values</title>
+
+ <itemizedlist>
+ <listitem>
+ <para>
+ <literal></literal>
+ </para>
+ </listitem>
+ </itemizedlist>
+
+ </refsection>
+
+ <refsection>
+ <title>Usage</title>
+
+ <programlisting>
+
+ </programlisting>
+ </refsection>
+
+ <refsection>
+ <title>Implementation</title>
+
+ <programlisting>
+ const { return active_index; }
+ </programlisting>
+ </refsection>
+
+ </refentry>
+
+
+ <refentry id="custom-engine-api-reference-get_row_type">
+ <refmeta>
+ <refentrytitle>get_row_type</refentrytitle>
+ </refmeta>
+
+ <refnamediv>
+ <refname>get_row_type</refname>
+ <refpurpose></refpurpose>
+ </refnamediv>
+
+ <refsynopsisdiv>
+ <funcsynopsis>
+ <funcprototype>
+ <funcdef>virtual enum row_type
<function>get_row_type</function></funcdef>
+ <paramdef><parameter></parameter></paramdef>
+ </funcprototype>
+
+ </funcsynopsis>
+ </refsynopsisdiv>
+
+ <refsection>
+ <title>Description</title>
+
+ <para>This is the <function>get_row_type </function>
method.</para>
+ </refsection>
+
+ <refsection>
+ <title>Parameters</title>
+
+ <itemizedlist>
+
<listitem><para><literal></literal></para></listitem>
+ </itemizedlist>
+
+ </refsection>
+
+ <refsection>
+ <title>Return Values</title>
+
+ <itemizedlist>
+ <listitem>
+ <para>
+ <literal></literal>
+ </para>
+ </listitem>
+ </itemizedlist>
+
+ </refsection>
+
+ <refsection>
+ <title>Usage</title>
+
+ <programlisting>
+
+ </programlisting>
+ </refsection>
+
+ <refsection>
+ <title>Default Implementation</title>
+
+ <programlisting>
+ const { return ROW_TYPE_NOT_USED; }
+ </programlisting>
+ </refsection>
+
+ </refentry>
+
+
+ <refentry id="custom-engine-api-reference-ha_allocate_read_write_set">
+ <refmeta>
+ <refentrytitle>ha_allocate_read_write_set</refentrytitle>
+ </refmeta>
+
+ <refnamediv>
+ <refname>ha_allocate_read_write_set</refname>
+ <refpurpose></refpurpose>
+ </refnamediv>
+
+ <refsynopsisdiv>
+ <funcsynopsis>
+ <funcprototype>
+ <funcdef>int
<function>ha_allocate_read_write_set</function></funcdef>
+
<paramdef>ulong<parameter>no_fields</parameter></paramdef>
+ </funcprototype>
+
+ </funcsynopsis>
+ </refsynopsisdiv>
+
+ <refsection>
+ <title>Description</title>
+
+ <para>This is the <function>ha_allocate_read_write_set
</function> method.</para>
+ </refsection>
+
+ <refsection>
+ <title>Parameters</title>
+
+ <itemizedlist>
+
<listitem><para><literal>no_fields</literal></para></listitem>
+ </itemizedlist>
+
+ </refsection>
+
+ <refsection>
+ <title>Return Values</title>
+
+ <itemizedlist>
+ <listitem>
+ <para>
+ <literal></literal>
+ </para>
+ </listitem>
+ </itemizedlist>
+
+ </refsection>
+
+ <refsection>
+ <title>Usage</title>
+
+ <programlisting>
+
+ </programlisting>
+ </refsection>
+
+ </refentry>
+
+
+ <refentry id="custom-engine-api-reference-ha_clear_all_set">
+ <refmeta>
+ <refentrytitle>ha_clear_all_set</refentrytitle>
+ </refmeta>
+
+ <refnamediv>
+ <refname>ha_clear_all_set</refname>
+ <refpurpose></refpurpose>
+ </refnamediv>
+
+ <refsynopsisdiv>
+ <funcsynopsis>
+ <funcprototype>
+ <funcdef>void
<function>ha_clear_all_set</function></funcdef>
+ <paramdef><parameter></parameter></paramdef>
+ </funcprototype>
+
+ </funcsynopsis>
+ </refsynopsisdiv>
+
+ <refsection>
+ <title>Description</title>
+
+ <para>This is the <function>ha_clear_all_set </function>
method.</para>
+ </refsection>
+
+ <refsection>
+ <title>Parameters</title>
+
+ <itemizedlist>
+
<listitem><para><literal></literal></para></listitem>
+ </itemizedlist>
+
+ </refsection>
+
+ <refsection>
+ <title>Return Values</title>
+
+ <itemizedlist>
+ <listitem>
+ <para>
+ <literal></literal>
+ </para>
+ </listitem>
+ </itemizedlist>
+
+ </refsection>
+
+ <refsection>
+ <title>Usage</title>
+
+ <programlisting>
+
+ </programlisting>
+ </refsection>
+
+ </refentry>
+
+
+ <refentry id="custom-engine-api-reference-ha_clear_bit_in_read_set">
+ <refmeta>
+ <refentrytitle>ha_clear_bit_in_read_set</refentrytitle>
+ </refmeta>
+
+ <refnamediv>
+ <refname>ha_clear_bit_in_read_set</refname>
+ <refpurpose></refpurpose>
+ </refnamediv>
+
+ <refsynopsisdiv>
+ <funcsynopsis>
+ <funcprototype>
+ <funcdef>void
<function>ha_clear_bit_in_read_set</function></funcdef>
+
<paramdef>uint<parameter>fieldnr</parameter></paramdef>
+ </funcprototype>
+
+ </funcsynopsis>
+ </refsynopsisdiv>
+
+ <refsection>
+ <title>Description</title>
+
+ <para>This is the <function>ha_clear_bit_in_read_set </function>
method.</para>
+ </refsection>
+
+ <refsection>
+ <title>Parameters</title>
+
+ <itemizedlist>
+
<listitem><para><literal>fieldnr</literal></para></listitem>
+ </itemizedlist>
+
+ </refsection>
+
+ <refsection>
+ <title>Return Values</title>
+
+ <itemizedlist>
+ <listitem>
+ <para>
+ <literal></literal>
+ </para>
+ </listitem>
+ </itemizedlist>
+
+ </refsection>
+
+ <refsection>
+ <title>Usage</title>
+
+ <programlisting>
+
+ </programlisting>
+ </refsection>
+
+ <refsection>
+ <title>Implementation</title>
+
+ <programlisting>
+ { DBUG_ENTER("ha_clear_bit_in_read_set"); DBUG_PRINT("info", ("fieldnr = %d",
fieldnr)); bitmap_clear_bit(read_set, fieldnr); DBUG_VOID_RETURN; }
+ </programlisting>
+ </refsection>
+
+ </refentry>
+
+
+ <refentry id="custom-engine-api-reference-ha_clear_bit_in_write_set">
+ <refmeta>
+ <refentrytitle>ha_clear_bit_in_write_set</refentrytitle>
+ </refmeta>
+
+ <refnamediv>
+ <refname>ha_clear_bit_in_write_set</refname>
+ <refpurpose></refpurpose>
+ </refnamediv>
+
+ <refsynopsisdiv>
+ <funcsynopsis>
+ <funcprototype>
+ <funcdef>void
<function>ha_clear_bit_in_write_set</function></funcdef>
+
<paramdef>uint<parameter>fieldnr</parameter></paramdef>
+ </funcprototype>
+
+ </funcsynopsis>
+ </refsynopsisdiv>
+
+ <refsection>
+ <title>Description</title>
+
+ <para>This is the <function>ha_clear_bit_in_write_set
</function> method.</para>
+ </refsection>
+
+ <refsection>
+ <title>Parameters</title>
+
+ <itemizedlist>
+
<listitem><para><literal>fieldnr</literal></para></listitem>
+ </itemizedlist>
+
+ </refsection>
+
+ <refsection>
+ <title>Return Values</title>
+
+ <itemizedlist>
+ <listitem>
+ <para>
+ <literal></literal>
+ </para>
+ </listitem>
+ </itemizedlist>
+
+ </refsection>
+
+ <refsection>
+ <title>Usage</title>
+
+ <programlisting>
+
+ </programlisting>
+ </refsection>
+
+ <refsection>
+ <title>Implementation</title>
+
+ <programlisting>
+ { DBUG_ENTER("ha_clear_bit_in_write_set"); DBUG_PRINT("info", ("fieldnr = %d",
fieldnr)); bitmap_clear_bit(write_set, fieldnr); DBUG_VOID_RETURN; }
+ </programlisting>
+ </refsection>
+
+ </refentry>
+
+
+ <refentry id="custom-engine-api-reference-ha_deallocate_read_write_set">
+ <refmeta>
+ <refentrytitle>ha_deallocate_read_write_set</refentrytitle>
+ </refmeta>
+
+ <refnamediv>
+ <refname>ha_deallocate_read_write_set</refname>
+ <refpurpose></refpurpose>
+ </refnamediv>
+
+ <refsynopsisdiv>
+ <funcsynopsis>
+ <funcprototype>
+ <funcdef>void
<function>ha_deallocate_read_write_set</function></funcdef>
+ <paramdef><parameter></parameter></paramdef>
+ </funcprototype>
+
+ </funcsynopsis>
+ </refsynopsisdiv>
+
+ <refsection>
+ <title>Description</title>
+
+ <para>This is the <function>ha_deallocate_read_write_set
</function> method.</para>
+ </refsection>
+
+ <refsection>
+ <title>Parameters</title>
+
+ <itemizedlist>
+
<listitem><para><literal></literal></para></listitem>
+ </itemizedlist>
+
+ </refsection>
+
+ <refsection>
+ <title>Return Values</title>
+
+ <itemizedlist>
+ <listitem>
+ <para>
+ <literal></literal>
+ </para>
+ </listitem>
+ </itemizedlist>
+
+ </refsection>
+
+ <refsection>
+ <title>Usage</title>
+
+ <programlisting>
+
+ </programlisting>
+ </refsection>
+
+ </refentry>
+
+
+ <refentry id="custom-engine-api-reference-ha_get_all_bit_in_read_clear">
+ <refmeta>
+ <refentrytitle>ha_get_all_bit_in_read_clear</refentrytitle>
+ </refmeta>
+
+ <refnamediv>
+ <refname>ha_get_all_bit_in_read_clear</refname>
+ <refpurpose></refpurpose>
+ </refnamediv>
+
+ <refsynopsisdiv>
+ <funcsynopsis>
+ <funcprototype>
+ <funcdef>bool
<function>ha_get_all_bit_in_read_clear</function></funcdef>
+ <paramdef><parameter></parameter></paramdef>
+ </funcprototype>
+
+ </funcsynopsis>
+ </refsynopsisdiv>
+
+ <refsection>
+ <title>Description</title>
+
+ <para>This is the <function>ha_get_all_bit_in_read_clear
</function> method.</para>
+ </refsection>
+
+ <refsection>
+ <title>Parameters</title>
+
+ <itemizedlist>
+
<listitem><para><literal></literal></para></listitem>
+ </itemizedlist>
+
+ </refsection>
+
+ <refsection>
+ <title>Return Values</title>
+
+ <itemizedlist>
+ <listitem>
+ <para>
+ <literal></literal>
+ </para>
+ </listitem>
+ </itemizedlist>
+
+ </refsection>
+
+ <refsection>
+ <title>Usage</title>
+
+ <programlisting>
+
+ </programlisting>
+ </refsection>
+
+ <refsection>
+ <title>Implementation</title>
+
+ <programlisting>
+ { bool all_bits_set= bitmap_is_clear_all(read_set);
DBUG_ENTER("ha_get_all_bit_in_read_clear"); DBUG_PRINT("info", ("all bits clear = %u",
all_bits_set)); DBUG_RETURN(all_bits_set); }
+ </programlisting>
+ </refsection>
+
+ </refentry>
+
+
+ <refentry id="custom-engine-api-reference-ha_get_all_bit_in_read_set">
+ <refmeta>
+ <refentrytitle>ha_get_all_bit_in_read_set</refentrytitle>
+ </refmeta>
+
+ <refnamediv>
+ <refname>ha_get_all_bit_in_read_set</refname>
+ <refpurpose></refpurpose>
+ </refnamediv>
+
+ <refsynopsisdiv>
+ <funcsynopsis>
+ <funcprototype>
+ <funcdef>bool
<function>ha_get_all_bit_in_read_set</function></funcdef>
+ <paramdef><parameter></parameter></paramdef>
+ </funcprototype>
+
+ </funcsynopsis>
+ </refsynopsisdiv>
+
+ <refsection>
+ <title>Description</title>
+
+ <para>This is the <function>ha_get_all_bit_in_read_set
</function> method.</para>
+ </refsection>
+
+ <refsection>
+ <title>Parameters</title>
+
+ <itemizedlist>
+
<listitem><para><literal></literal></para></listitem>
+ </itemizedlist>
+
+ </refsection>
+
+ <refsection>
+ <title>Return Values</title>
+
+ <itemizedlist>
+ <listitem>
+ <para>
+ <literal></literal>
+ </para>
+ </listitem>
+ </itemizedlist>
+
+ </refsection>
+
+ <refsection>
+ <title>Usage</title>
+
+ <programlisting>
+
+ </programlisting>
+ </refsection>
+
+ <refsection>
+ <title>Implementation</title>
+
+ <programlisting>
+ { bool all_bits_set= bitmap_is_set_all(read_set);
DBUG_ENTER("ha_get_all_bit_in_read_set"); DBUG_PRINT("info", ("all bits set = %u",
all_bits_set)); DBUG_RETURN(all_bits_set); }
+ </programlisting>
+ </refsection>
+
+ </refentry>
+
+
+ <refentry id="custom-engine-api-reference-ha_get_all_bit_in_write_clear">
+ <refmeta>
+ <refentrytitle>ha_get_all_bit_in_write_clear</refentrytitle>
+ </refmeta>
+
+ <refnamediv>
+ <refname>ha_get_all_bit_in_write_clear</refname>
+ <refpurpose></refpurpose>
+ </refnamediv>
+
+ <refsynopsisdiv>
+ <funcsynopsis>
+ <funcprototype>
+ <funcdef>bool
<function>ha_get_all_bit_in_write_clear</function></funcdef>
+ <paramdef><parameter></parameter></paramdef>
+ </funcprototype>
+
+ </funcsynopsis>
+ </refsynopsisdiv>
+
+ <refsection>
+ <title>Description</title>
+
+ <para>This is the <function>ha_get_all_bit_in_write_clear
</function> method.</para>
+ </refsection>
+
+ <refsection>
+ <title>Parameters</title>
+
+ <itemizedlist>
+
<listitem><para><literal></literal></para></listitem>
+ </itemizedlist>
+
+ </refsection>
+
+ <refsection>
+ <title>Return Values</title>
+
+ <itemizedlist>
+ <listitem>
+ <para>
+ <literal></literal>
+ </para>
+ </listitem>
+ </itemizedlist>
+
+ </refsection>
+
+ <refsection>
+ <title>Usage</title>
+
+ <programlisting>
+
+ </programlisting>
+ </refsection>
+
+ <refsection>
+ <title>Implementation</title>
+
+ <programlisting>
+ { bool all_bits_set= bitmap_is_clear_all(write_set);
DBUG_ENTER("ha_get_all_bit_in_write_clear"); DBUG_PRINT("info", ("all bits clear = %u",
all_bits_set)); DBUG_RETURN(all_bits_set); }
+ </programlisting>
+ </refsection>
+
+ </refentry>
+
+
+ <refentry id="custom-engine-api-reference-ha_get_all_bit_in_write_set">
+ <refmeta>
+ <refentrytitle>ha_get_all_bit_in_write_set</refentrytitle>
+ </refmeta>
+
+ <refnamediv>
+ <refname>ha_get_all_bit_in_write_set</refname>
+ <refpurpose></refpurpose>
+ </refnamediv>
+
+ <refsynopsisdiv>
+ <funcsynopsis>
+ <funcprototype>
+ <funcdef>bool
<function>ha_get_all_bit_in_write_set</function></funcdef>
+ <paramdef><parameter></parameter></paramdef>
+ </funcprototype>
+
+ </funcsynopsis>
+ </refsynopsisdiv>
+
+ <refsection>
+ <title>Description</title>
+
+ <para>This is the <function>ha_get_all_bit_in_write_set
</function> method.</para>
+ </refsection>
+
+ <refsection>
+ <title>Parameters</title>
+
+ <itemizedlist>
+
<listitem><para><literal></literal></para></listitem>
+ </itemizedlist>
+
+ </refsection>
+
+ <refsection>
+ <title>Return Values</title>
+
+ <itemizedlist>
+ <listitem>
+ <para>
+ <literal></literal>
+ </para>
+ </listitem>
+ </itemizedlist>
+
+ </refsection>
+
+ <refsection>
+ <title>Usage</title>
+
+ <programlisting>
+
+ </programlisting>
+ </refsection>
+
+ <refsection>
+ <title>Implementation</title>
+
+ <programlisting>
+ { bool all_bits_set= bitmap_is_set_all(write_set);
DBUG_ENTER("ha_get_all_bit_in_write_set"); DBUG_PRINT("info", ("all bits set = %u",
all_bits_set)); DBUG_RETURN(all_bits_set); }
+ </programlisting>
+ </refsection>
+
+ </refentry>
+
+
+ <refentry id="custom-engine-api-reference-ha_get_bit_in_read_set">
+ <refmeta>
+ <refentrytitle>ha_get_bit_in_read_set</refentrytitle>
+ </refmeta>
+
+ <refnamediv>
+ <refname>ha_get_bit_in_read_set</refname>
+ <refpurpose></refpurpose>
+ </refnamediv>
+
+ <refsynopsisdiv>
+ <funcsynopsis>
+ <funcprototype>
+ <funcdef>bool
<function>ha_get_bit_in_read_set</function></funcdef>
+
<paramdef>uint<parameter>fieldnr</parameter></paramdef>
+ </funcprototype>
+
+ </funcsynopsis>
+ </refsynopsisdiv>
+
+ <refsection>
+ <title>Description</title>
+
+ <para>This is the <function>ha_get_bit_in_read_set </function>
method.</para>
+ </refsection>
+
+ <refsection>
+ <title>Parameters</title>
+
+ <itemizedlist>
+
<listitem><para><literal>fieldnr</literal></para></listitem>
+ </itemizedlist>
+
+ </refsection>
+
+ <refsection>
+ <title>Return Values</title>
+
+ <itemizedlist>
+ <listitem>
+ <para>
+ <literal></literal>
+ </para>
+ </listitem>
+ </itemizedlist>
+
+ </refsection>
+
+ <refsection>
+ <title>Usage</title>
+
+ <programlisting>
+
+ </programlisting>
+ </refsection>
+
+ <refsection>
+ <title>Implementation</title>
+
+ <programlisting>
+ {bool
bit_set=bitmap_is_set(read_set,fieldnr);DBUG_ENTER("ha_get_bit_in_read_set");DBUG_PRINT("info",
("bit %u = %u", fieldnr, bit_set));DBUG_RETURN(bit_set);}
+ </programlisting>
+ </refsection>
+
+ </refentry>
+
+
+ <refentry id="custom-engine-api-reference-ha_get_bit_in_write_set">
+ <refmeta>
+ <refentrytitle>ha_get_bit_in_write_set</refentrytitle>
+ </refmeta>
+
+ <refnamediv>
+ <refname>ha_get_bit_in_write_set</refname>
+ <refpurpose></refpurpose>
+ </refnamediv>
+
+ <refsynopsisdiv>
+ <funcsynopsis>
+ <funcprototype>
+ <funcdef>bool
<function>ha_get_bit_in_write_set</function></funcdef>
+
<paramdef>uint<parameter>fieldnr</parameter></paramdef>
+ </funcprototype>
+
+ </funcsynopsis>
+ </refsynopsisdiv>
+
+ <refsection>
+ <title>Description</title>
+
+ <para>This is the <function>ha_get_bit_in_write_set </function>
method.</para>
+ </refsection>
+
+ <refsection>
+ <title>Parameters</title>
+
+ <itemizedlist>
+
<listitem><para><literal>fieldnr</literal></para></listitem>
+ </itemizedlist>
+
+ </refsection>
+
+ <refsection>
+ <title>Return Values</title>
+
+ <itemizedlist>
+ <listitem>
+ <para>
+ <literal></literal>
+ </para>
+ </listitem>
+ </itemizedlist>
+
+ </refsection>
+
+ <refsection>
+ <title>Usage</title>
+
+ <programlisting>
+
+ </programlisting>
+ </refsection>
+
+ <refsection>
+ <title>Implementation</title>
+
+ <programlisting>
+ {bool
bit_set=bitmap_is_set(write_set,fieldnr);DBUG_ENTER("ha_get_bit_in_write_set");DBUG_PRINT("info",
("bit %u = %u", fieldnr, bit_set));DBUG_RETURN(bit_set);}
+ </programlisting>
+ </refsection>
+
+ </refentry>
+
+
+ <refentry id="custom-engine-api-reference-ha_index_end">
+ <refmeta>
+ <refentrytitle>ha_index_end</refentrytitle>
+ </refmeta>
+
+ <refnamediv>
+ <refname>ha_index_end</refname>
+ <refpurpose></refpurpose>
+ </refnamediv>
+
+ <refsynopsisdiv>
+ <funcsynopsis>
+ <funcprototype>
+ <funcdef>int
<function>ha_index_end</function></funcdef>
+ <paramdef><parameter></parameter></paramdef>
+ </funcprototype>
+
+ </funcsynopsis>
+ </refsynopsisdiv>
+
+ <refsection>
+ <title>Description</title>
+
+ <para>This is the <function>ha_index_end </function>
method.</para>
+ </refsection>
+
+ <refsection>
+ <title>Parameters</title>
+
+ <itemizedlist>
+
<listitem><para><literal></literal></para></listitem>
+ </itemizedlist>
+
+ </refsection>
+
+ <refsection>
+ <title>Return Values</title>
+
+ <itemizedlist>
+ <listitem>
+ <para>
+ <literal></literal>
+ </para>
+ </listitem>
+ </itemizedlist>
+
+ </refsection>
+
+ <refsection>
+ <title>Usage</title>
+
+ <programlisting>
+
+ </programlisting>
+ </refsection>
+
+ <refsection>
+ <title>Implementation</title>
+
+ <programlisting>
+ { DBUG_ENTER("ha_index_end"); DBUG_ASSERT(inited==INDEX); inited=NONE;
DBUG_RETURN(index_end()); }
+ </programlisting>
+ </refsection>
+
+ </refentry>
+
+
+ <refentry id="custom-engine-api-reference-ha_index_init">
+ <refmeta>
+ <refentrytitle>ha_index_init</refentrytitle>
+ </refmeta>
+
+ <refnamediv>
+ <refname>ha_index_init</refname>
+ <refpurpose></refpurpose>
+ </refnamediv>
+
+ <refsynopsisdiv>
+ <funcsynopsis>
+ <funcprototype>
+ <funcdef>int
<function>ha_index_init</function></funcdef>
+ <paramdef>uint<parameter>idx</parameter></paramdef>
+
<paramdef>bool<parameter>sorted</parameter></paramdef>
+ </funcprototype>
+
+ </funcsynopsis>
+ </refsynopsisdiv>
+
+ <refsection>
+ <title>Description</title>
+
+ <para>This is the <function>ha_index_init </function>
method.</para>
+ </refsection>
+
+ <refsection>
+ <title>Parameters</title>
+
+ <itemizedlist>
+
<listitem><para><literal>idx</literal></para></listitem>
+
<listitem><para><literal>sorted</literal></para></listitem>
+ </itemizedlist>
+
+ </refsection>
+
+ <refsection>
+ <title>Return Values</title>
+
+ <itemizedlist>
+ <listitem>
+ <para>
+ <literal></literal>
+ </para>
+ </listitem>
+ </itemizedlist>
+
+ </refsection>
+
+ <refsection>
+ <title>Usage</title>
+
+ <programlisting>
+
+ </programlisting>
+ </refsection>
+
+ <refsection>
+ <title>Implementation</title>
+
+ <programlisting>
+ { DBUG_ENTER("ha_index_init"); DBUG_ASSERT(inited==NONE); inited=INDEX;
DBUG_RETURN(index_init(idx, sorted)); }
+ </programlisting>
+ </refsection>
+
+ </refentry>
+
+
+ <refentry id="custom-engine-api-reference-ha_index_or_rnd_end">
+ <refmeta>
+ <refentrytitle>ha_index_or_rnd_end</refentrytitle>
+ </refmeta>
+
+ <refnamediv>
+ <refname>ha_index_or_rnd_end</refname>
+ <refpurpose></refpurpose>
+ </refnamediv>
+
+ <refsynopsisdiv>
+ <funcsynopsis>
+ <funcprototype>
+ <funcdef>int
<function>ha_index_or_rnd_end</function></funcdef>
+ <paramdef><parameter></parameter></paramdef>
+ </funcprototype>
+
+ </funcsynopsis>
+ </refsynopsisdiv>
+
+ <refsection>
+ <title>Description</title>
+
+ <para>This is the <function>ha_index_or_rnd_end </function>
method.</para>
+ </refsection>
+
+ <refsection>
+ <title>Parameters</title>
+
+ <itemizedlist>
+
<listitem><para><literal></literal></para></listitem>
+ </itemizedlist>
+
+ </refsection>
+
+ <refsection>
+ <title>Return Values</title>
+
+ <itemizedlist>
+ <listitem>
+ <para>
+ <literal></literal>
+ </para>
+ </listitem>
+ </itemizedlist>
+
+ </refsection>
+
+ <refsection>
+ <title>Usage</title>
+
+ <programlisting>
+
+ </programlisting>
+ </refsection>
+
+ <refsection>
+ <title>Implementation</title>
+
+ <programlisting>
+ { return inited == INDEX ? ha_index_end() : inited == RND ? ha_rnd_end() : 0;
}
+ </programlisting>
+ </refsection>
+
+ </refentry>
+
+
+ <refentry id="custom-engine-api-reference-ha_initialise">
+ <refmeta>
+ <refentrytitle>ha_initialise</refentrytitle>
+ </refmeta>
+
+ <refnamediv>
+ <refname>ha_initialise</refname>
+ <refpurpose></refpurpose>
+ </refnamediv>
+
+ <refsynopsisdiv>
+ <funcsynopsis>
+ <funcprototype>
+ <funcdef>virtual int
<function>ha_initialise</function></funcdef>
+ <paramdef><parameter></parameter></paramdef>
+ </funcprototype>
+
+ </funcsynopsis>
+ </refsynopsisdiv>
+
+ <refsection>
+ <title>Description</title>
+
+ <para>This is the <function>ha_initialise </function>
method.</para>
+ </refsection>
+
+ <refsection>
+ <title>Parameters</title>
+
+ <itemizedlist>
+
<listitem><para><literal></literal></para></listitem>
+ </itemizedlist>
+
+ </refsection>
+
+ <refsection>
+ <title>Return Values</title>
+
+ <itemizedlist>
+ <listitem>
+ <para>
+ <literal></literal>
+ </para>
+ </listitem>
+ </itemizedlist>
+
+ </refsection>
+
+ <refsection>
+ <title>Usage</title>
+
+ <programlisting>
+
+ </programlisting>
+ </refsection>
+
+ </refentry>
+
+
+ <refentry id="custom-engine-api-reference-ha_open">
+ <refmeta>
+ <refentrytitle>ha_open</refentrytitle>
+ </refmeta>
+
+ <refnamediv>
+ <refname>ha_open</refname>
+ <refpurpose></refpurpose>
+ </refnamediv>
+
+ <refsynopsisdiv>
+ <funcsynopsis>
+ <funcprototype>
+ <funcdef>int <function>ha_open</function></funcdef>
+ <paramdef>const char
*<parameter>name</parameter></paramdef>
+ <paramdef>int<parameter>mode</parameter></paramdef>
+
<paramdef>int<parameter>test_if_locked</parameter></paramdef>
+ </funcprototype>
+
+ </funcsynopsis>
+ </refsynopsisdiv>
+
+ <refsection>
+ <title>Description</title>
+
+ <para>This is the <function>ha_open </function>
method.</para>
+ </refsection>
+
+ <refsection>
+ <title>Parameters</title>
+
+ <itemizedlist>
+
<listitem><para><literal>name</literal></para></listitem>
+
<listitem><para><literal>mode</literal></para></listitem>
+
<listitem><para><literal>test_if_locked</literal></para></listitem>
+ </itemizedlist>
+
+ </refsection>
+
+ <refsection>
+ <title>Return Values</title>
+
+ <itemizedlist>
+ <listitem>
+ <para>
+ <literal></literal>
+ </para>
+ </listitem>
+ </itemizedlist>
+
+ </refsection>
+
+ <refsection>
+ <title>Usage</title>
+
+ <programlisting>
+
+ </programlisting>
+ </refsection>
+
+ </refentry>
+
+
+ <refentry id="custom-engine-api-reference-ha_reset">
+ <refmeta>
+ <refentrytitle>ha_reset</refentrytitle>
+ </refmeta>
+
+ <refnamediv>
+ <refname>ha_reset</refname>
+ <refpurpose></refpurpose>
+ </refnamediv>
+
+ <refsynopsisdiv>
+ <funcsynopsis>
+ <funcprototype>
+ <funcdef>int <function>ha_reset</function></funcdef>
+ <paramdef><parameter></parameter></paramdef>
+ </funcprototype>
+
+ </funcsynopsis>
+ </refsynopsisdiv>
+
+ <refsection>
+ <title>Description</title>
+
+ <para>This is the <function>ha_reset </function>
method.</para>
+ </refsection>
+
+ <refsection>
+ <title>Parameters</title>
+
+ <itemizedlist>
+
<listitem><para><literal></literal></para></listitem>
+ </itemizedlist>
+
+ </refsection>
+
+ <refsection>
+ <title>Return Values</title>
+
+ <itemizedlist>
+ <listitem>
+ <para>
+ <literal></literal>
+ </para>
+ </listitem>
+ </itemizedlist>
+
+ </refsection>
+
+ <refsection>
+ <title>Usage</title>
+
+ <programlisting>
+
+ </programlisting>
+ </refsection>
+
+ <refsection>
+ <title>Implementation</title>
+
+ <programlisting>
+ { DBUG_ENTER("ha_reset"); ha_clear_all_set(); DBUG_RETURN(reset()); }
+ </programlisting>
+ </refsection>
+
+ </refentry>
+
+
+ <refentry id="custom-engine-api-reference-ha_retrieve_all_cols">
+ <refmeta>
+ <refentrytitle>ha_retrieve_all_cols</refentrytitle>
+ </refmeta>
+
+ <refnamediv>
+ <refname>ha_retrieve_all_cols</refname>
+ <refpurpose></refpurpose>
+ </refnamediv>
+
+ <refsynopsisdiv>
+ <funcsynopsis>
+ <funcprototype>
+ <funcdef>virtual int
<function>ha_retrieve_all_cols</function></funcdef>
+ <paramdef><parameter></parameter></paramdef>
+ </funcprototype>
+
+ </funcsynopsis>
+ </refsynopsisdiv>
+
+ <refsection>
+ <title>Description</title>
+
+ <para>This is the <function>ha_retrieve_all_cols </function>
method.</para>
+ </refsection>
+
+ <refsection>
+ <title>Parameters</title>
+
+ <itemizedlist>
+
<listitem><para><literal></literal></para></listitem>
+ </itemizedlist>
+
+ </refsection>
+
+ <refsection>
+ <title>Return Values</title>
+
+ <itemizedlist>
+ <listitem>
+ <para>
+ <literal></literal>
+ </para>
+ </listitem>
+ </itemizedlist>
+
+ </refsection>
+
+ <refsection>
+ <title>Usage</title>
+
+ <programlisting>
+
+ </programlisting>
+ </refsection>
+
+ </refentry>
+
+
+ <refentry id="custom-engine-api-reference-ha_retrieve_all_pk">
+ <refmeta>
+ <refentrytitle>ha_retrieve_all_pk</refentrytitle>
+ </refmeta>
+
+ <refnamediv>
+ <refname>ha_retrieve_all_pk</refname>
+ <refpurpose></refpurpose>
+ </refnamediv>
+
+ <refsynopsisdiv>
+ <funcsynopsis>
+ <funcprototype>
+ <funcdef>virtual int
<function>ha_retrieve_all_pk</function></funcdef>
+ <paramdef><parameter></parameter></paramdef>
+ </funcprototype>
+
+ </funcsynopsis>
+ </refsynopsisdiv>
+
+ <refsection>
+ <title>Description</title>
+
+ <para>This is the <function>ha_retrieve_all_pk </function>
method.</para>
+ </refsection>
+
+ <refsection>
+ <title>Parameters</title>
+
+ <itemizedlist>
+
<listitem><para><literal></literal></para></listitem>
+ </itemizedlist>
+
+ </refsection>
+
+ <refsection>
+ <title>Return Values</title>
+
+ <itemizedlist>
+ <listitem>
+ <para>
+ <literal></literal>
+ </para>
+ </listitem>
+ </itemizedlist>
+
+ </refsection>
+
+ <refsection>
+ <title>Usage</title>
+
+ <programlisting>
+
+ </programlisting>
+ </refsection>
+
+ </refentry>
+
+
+ <refentry id="custom-engine-api-reference-ha_rnd_end">
+ <refmeta>
+ <refentrytitle>ha_rnd_end</refentrytitle>
+ </refmeta>
+
+ <refnamediv>
+ <refname>ha_rnd_end</refname>
+ <refpurpose></refpurpose>
+ </refnamediv>
+
+ <refsynopsisdiv>
+ <funcsynopsis>
+ <funcprototype>
+ <funcdef>int
<function>ha_rnd_end</function></funcdef>
+ <paramdef><parameter></parameter></paramdef>
+ </funcprototype>
+
+ </funcsynopsis>
+ </refsynopsisdiv>
+
+ <refsection>
+ <title>Description</title>
+
+ <para>This is the <function>ha_rnd_end </function>
method.</para>
+ </refsection>
+
+ <refsection>
+ <title>Parameters</title>
+
+ <itemizedlist>
+
<listitem><para><literal></literal></para></listitem>
+ </itemizedlist>
+
+ </refsection>
+
+ <refsection>
+ <title>Return Values</title>
+
+ <itemizedlist>
+ <listitem>
+ <para>
+ <literal></literal>
+ </para>
+ </listitem>
+ </itemizedlist>
+
+ </refsection>
+
+ <refsection>
+ <title>Usage</title>
+
+ <programlisting>
+
+ </programlisting>
+ </refsection>
+
+ <refsection>
+ <title>Implementation</title>
+
+ <programlisting>
+ { DBUG_ENTER("ha_rnd_end"); DBUG_ASSERT(inited==RND); inited=NONE;
DBUG_RETURN(rnd_end()); }
+ </programlisting>
+ </refsection>
+
+ </refentry>
+
+
+ <refentry id="custom-engine-api-reference-ha_rnd_init">
+ <refmeta>
+ <refentrytitle>ha_rnd_init</refentrytitle>
+ </refmeta>
+
+ <refnamediv>
+ <refname>ha_rnd_init</refname>
+ <refpurpose></refpurpose>
+ </refnamediv>
+
+ <refsynopsisdiv>
+ <funcsynopsis>
+ <funcprototype>
+ <funcdef>int
<function>ha_rnd_init</function></funcdef>
+ <paramdef>bool<parameter>scan</parameter></paramdef>
+ </funcprototype>
+
+ </funcsynopsis>
+ </refsynopsisdiv>
+
+ <refsection>
+ <title>Description</title>
+
+ <para>This is the <function>ha_rnd_init </function>
method.</para>
+ </refsection>
+
+ <refsection>
+ <title>Parameters</title>
+
+ <itemizedlist>
+
<listitem><para><literal>scan</literal></para></listitem>
+ </itemizedlist>
+
+ </refsection>
+
+ <refsection>
+ <title>Return Values</title>
+
+ <itemizedlist>
+ <listitem>
+ <para>
+ <literal></literal>
+ </para>
+ </listitem>
+ </itemizedlist>
+
+ </refsection>
+
+ <refsection>
+ <title>Usage</title>
+
+ <programlisting>
+
+ </programlisting>
+ </refsection>
+
+ <refsection>
+ <title>Implementation</title>
+
+ <programlisting>
+ {
+ DBUG_ENTER("ha_rnd_init");
+ DBUG_ASSERT(inited==NONE || (inited==RND && scan));
+ inited=RND;
+ DBUG_RETURN(rnd_init(scan));
+ }
+ </programlisting>
+ </refsection>
+
+ </refentry>
+
+
+ <refentry id="custom-engine-api-reference-ha_set_all_bits_in_read_set">
+ <refmeta>
+ <refentrytitle>ha_set_all_bits_in_read_set</refentrytitle>
+ </refmeta>
+
+ <refnamediv>
+ <refname>ha_set_all_bits_in_read_set</refname>
+ <refpurpose></refpurpose>
+ </refnamediv>
+
+ <refsynopsisdiv>
+ <funcsynopsis>
+ <funcprototype>
+ <funcdef>void
<function>ha_set_all_bits_in_read_set</function></funcdef>
+ <paramdef><parameter></parameter></paramdef>
+ </funcprototype>
+
+ </funcsynopsis>
+ </refsynopsisdiv>
+
+ <refsection>
+ <title>Description</title>
+
+ <para>This is the <function>ha_set_all_bits_in_read_set
</function> method.</para>
+ </refsection>
+
+ <refsection>
+ <title>Parameters</title>
+
+ <itemizedlist>
+
<listitem><para><literal></literal></para></listitem>
+ </itemizedlist>
+
+ </refsection>
+
+ <refsection>
+ <title>Return Values</title>
+
+ <itemizedlist>
+ <listitem>
+ <para>
+ <literal></literal>
+ </para>
+ </listitem>
+ </itemizedlist>
+
+ </refsection>
+
+ <refsection>
+ <title>Usage</title>
+
+ <programlisting>
+
+ </programlisting>
+ </refsection>
+
+ <refsection>
+ <title>Implementation</title>
+
+ <programlisting>
+ { DBUG_ENTER("ha_set_all_bits_in_read_set"); bitmap_set_all(read_set);
DBUG_VOID_RETURN;}
+ </programlisting>
+ </refsection>
+
+ </refentry>
+
+
+ <refentry id="custom-engine-api-reference-ha_set_all_bits_in_write_set">
+ <refmeta>
+ <refentrytitle>ha_set_all_bits_in_write_set</refentrytitle>
+ </refmeta>
+
+ <refnamediv>
+ <refname>ha_set_all_bits_in_write_set</refname>
+ <refpurpose></refpurpose>
+ </refnamediv>
+
+ <refsynopsisdiv>
+ <funcsynopsis>
+ <funcprototype>
+ <funcdef>void
<function>ha_set_all_bits_in_write_set</function></funcdef>
+ <paramdef><parameter></parameter></paramdef>
+ </funcprototype>
+
+ </funcsynopsis>
+ </refsynopsisdiv>
+
+ <refsection>
+ <title>Description</title>
+
+ <para>This is the <function>ha_set_all_bits_in_write_set
</function> method.</para>
+ </refsection>
+
+ <refsection>
+ <title>Parameters</title>
+
+ <itemizedlist>
+
<listitem><para><literal></literal></para></listitem>
+ </itemizedlist>
+
+ </refsection>
+
+ <refsection>
+ <title>Return Values</title>
+
+ <itemizedlist>
+ <listitem>
+ <para>
+ <literal></literal>
+ </para>
+ </listitem>
+ </itemizedlist>
+
+ </refsection>
+
+ <refsection>
+ <title>Usage</title>
+
+ <programlisting>
+
+ </programlisting>
+ </refsection>
+
+ <refsection>
+ <title>Implementation</title>
+
+ <programlisting>
+ { DBUG_ENTER("ha_set_all_bits_in_write_set"); bitmap_set_all(write_set);
DBUG_VOID_RETURN; }
+ </programlisting>
+ </refsection>
+
+ </refentry>
+
+
+ <refentry id="custom-engine-api-reference-ha_set_bit_in_read_set">
+ <refmeta>
+ <refentrytitle>ha_set_bit_in_read_set</refentrytitle>
+ </refmeta>
+
+ <refnamediv>
+ <refname>ha_set_bit_in_read_set</refname>
+ <refpurpose></refpurpose>
+ </refnamediv>
+
+ <refsynopsisdiv>
+ <funcsynopsis>
+ <funcprototype>
+ <funcdef>void
<function>ha_set_bit_in_read_set</function></funcdef>
+
<paramdef>uint<parameter>fieldnr</parameter></paramdef>
+ </funcprototype>
+
+ </funcsynopsis>
+ </refsynopsisdiv>
+
+ <refsection>
+ <title>Description</title>
+
+ <para>This is the <function>ha_set_bit_in_read_set </function>
method.</para>
+ </refsection>
+
+ <refsection>
+ <title>Parameters</title>
+
+ <itemizedlist>
+
<listitem><para><literal>fieldnr</literal></para></listitem>
+ </itemizedlist>
+
+ </refsection>
+
+ <refsection>
+ <title>Return Values</title>
+
+ <itemizedlist>
+ <listitem>
+ <para>
+ <literal></literal>
+ </para>
+ </listitem>
+ </itemizedlist>
+
+ </refsection>
+
+ <refsection>
+ <title>Usage</title>
+
+ <programlisting>
+
+ </programlisting>
+ </refsection>
+
+ <refsection>
+ <title>Implementation</title>
+
+ <programlisting>
+ {
+ DBUG_ENTER("ha_set_bit_in_read_set");
+ DBUG_PRINT("info", ("fieldnr = %d", fieldnr));
+ bitmap_set_bit(read_set, fieldnr);
+ DBUG_VOID_RETURN;
+ }
+ </programlisting>
+ </refsection>
+
+ </refentry>
+
+
+ <refentry id="custom-engine-api-reference-ha_set_bit_in_rw_set">
+ <refmeta>
+ <refentrytitle>ha_set_bit_in_rw_set</refentrytitle>
+ </refmeta>
+
+ <refnamediv>
+ <refname>ha_set_bit_in_rw_set</refname>
+ <refpurpose></refpurpose>
+ </refnamediv>
+
+ <refsynopsisdiv>
+ <funcsynopsis>
+ <funcprototype>
+ <funcdef>void
<function>ha_set_bit_in_rw_set</function></funcdef>
+
<paramdef>uint<parameter>fieldnr</parameter></paramdef>
+
<paramdef>bool<parameter>write_op</parameter></paramdef>
+ </funcprototype>
+
+ </funcsynopsis>
+ </refsynopsisdiv>
+
+ <refsection>
+ <title>Description</title>
+
+ <para>This is the <function>ha_set_bit_in_rw_set </function>
method.</para>
+ </refsection>
+
+ <refsection>
+ <title>Parameters</title>
+
+ <itemizedlist>
+
<listitem><para><literal>fieldnr</literal></para></listitem>
+
<listitem><para><literal>write_op</literal></para></listitem>
+ </itemizedlist>
+
+ </refsection>
+
+ <refsection>
+ <title>Return Values</title>
+
+ <itemizedlist>
+ <listitem>
+ <para>
+ <literal></literal>
+ </para>
+ </listitem>
+ </itemizedlist>
+
+ </refsection>
+
+ <refsection>
+ <title>Usage</title>
+
+ <programlisting>
+
+ </programlisting>
+ </refsection>
+
+ <refsection>
+ <title>Implementation</title>
+
+ <programlisting>
+ {
+ DBUG_ENTER("ha_set_bit_in_rw_set");
+ DBUG_PRINT("info", ("Set bit %u in read set", fieldnr));
+ bitmap_set_bit(read_set, fieldnr);
+ if (!write_op)
+ {
+ DBUG_VOID_RETURN;
+ } else {
+ DBUG_PRINT("info", ("Set bit %u in read and write set", fieldnr));
+ bitmap_set_bit(write_set, fieldnr);
+ }
+ DBUG_VOID_RETURN;
+ }
+ </programlisting>
+ </refsection>
+
+ </refentry>
+
+
+ <refentry id="custom-engine-api-reference-ha_set_bit_in_write_set">
+ <refmeta>
+ <refentrytitle>ha_set_bit_in_write_set</refentrytitle>
+ </refmeta>
+
+ <refnamediv>
+ <refname>ha_set_bit_in_write_set</refname>
+ <refpurpose></refpurpose>
+ </refnamediv>
+
+ <refsynopsisdiv>
+ <funcsynopsis>
+ <funcprototype>
+ <funcdef>void
<function>ha_set_bit_in_write_set</function></funcdef>
+
<paramdef>uint<parameter>fieldnr</parameter></paramdef>
+ </funcprototype>
+
+ </funcsynopsis>
+ </refsynopsisdiv>
+
+ <refsection>
+ <title>Description</title>
+
+ <para>This is the <function>ha_set_bit_in_write_set </function>
method.</para>
+ </refsection>
+
+ <refsection>
+ <title>Parameters</title>
+
+ <itemizedlist>
+
<listitem><para><literal>fieldnr</literal></para></listitem>
+ </itemizedlist>
+
+ </refsection>
+
+ <refsection>
+ <title>Return Values</title>
+
+ <itemizedlist>
+ <listitem>
+ <para>
+ <literal></literal>
+ </para>
+ </listitem>
+ </itemizedlist>
+
+ </refsection>
+
+ <refsection>
+ <title>Usage</title>
+
+ <programlisting>
+
+ </programlisting>
+ </refsection>
+
+ <refsection>
+ <title>Implementation</title>
+
+ <programlisting>
+ {
+ DBUG_ENTER("ha_set_bit_in_write_set");
+ DBUG_PRINT("info", ("fieldnr = %d", fieldnr));
+ bitmap_set_bit(write_set, fieldnr);
+ DBUG_VOID_RETURN;
+ }
+ </programlisting>
+ </refsection>
+
+ </refentry>
+
+
+ <refentry id="custom-engine-api-reference-ha_set_primary_key_in_read_set">
+ <refmeta>
+ <refentrytitle>ha_set_primary_key_in_read_set</refentrytitle>
+ </refmeta>
+
+ <refnamediv>
+ <refname>ha_set_primary_key_in_read_set</refname>
+ <refpurpose></refpurpose>
+ </refnamediv>
+
+ <refsynopsisdiv>
+ <funcsynopsis>
+ <funcprototype>
+ <funcdef>void
<function>ha_set_primary_key_in_read_set</function></funcdef>
+ <paramdef><parameter></parameter></paramdef>
+ </funcprototype>
+
+ </funcsynopsis>
+ </refsynopsisdiv>
+
+ <refsection>
+ <title>Description</title>
+
+ <para>This is the <function>ha_set_primary_key_in_read_set
</function> method.</para>
+ </refsection>
+
+ <refsection>
+ <title>Parameters</title>
+
+ <itemizedlist>
+
<listitem><para><literal></literal></para></listitem>
+ </itemizedlist>
+
+ </refsection>
+
+ <refsection>
+ <title>Return Values</title>
+
+ <itemizedlist>
+ <listitem>
+ <para>
+ <literal></literal>
+ </para>
+ </listitem>
+ </itemizedlist>
+
+ </refsection>
+
+ <refsection>
+ <title>Usage</title>
+
+ <programlisting>
+
+ </programlisting>
+ </refsection>
+
+ </refentry>
+
+
+ <refentry id="custom-engine-api-reference-has_transactions">
+ <refmeta>
+ <refentrytitle>has_transactions</refentrytitle>
+ </refmeta>
+
+ <refnamediv>
+ <refname>has_transactions</refname>
+ <refpurpose></refpurpose>
+ </refnamediv>
+
+ <refsynopsisdiv>
+ <funcsynopsis>
+ <funcprototype>
+ <funcdef>virtual bool
<function>has_transactions</function></funcdef>
+ <paramdef><parameter></parameter></paramdef>
+ </funcprototype>
+
+ </funcsynopsis>
+ </refsynopsisdiv>
+
+ <refsection>
+ <title>Description</title>
+
+ <para>This is the <function>has_transactions </function>
method.</para>
+ </refsection>
+
+ <refsection>
+ <title>Parameters</title>
+
+ <itemizedlist>
+
<listitem><para><literal></literal></para></listitem>
+ </itemizedlist>
+
+ </refsection>
+
+ <refsection>
+ <title>Return Values</title>
+
+ <itemizedlist>
+ <listitem>
+ <para>
+ <literal></literal>
+ </para>
+ </listitem>
+ </itemizedlist>
+
+ </refsection>
+
+ <refsection>
+ <title>Usage</title>
+
+ <programlisting>
+
+ </programlisting>
+ </refsection>
+
+ <refsection>
+ <title>Default Implementation</title>
+
+ <programlisting>
+ { return 0;}
+ </programlisting>
+ </refsection>
+
+ </refentry>
+
+
+ <refentry id="custom-engine-api-reference-index_ddl_flags">
+ <refmeta>
+ <refentrytitle>index_ddl_flags</refentrytitle>
+ </refmeta>
+
+ <refnamediv>
+ <refname>index_ddl_flags</refname>
+ <refpurpose></refpurpose>
+ </refnamediv>
+
+ <refsynopsisdiv>
+ <funcsynopsis>
+ <funcprototype>
+ <funcdef>virtual ulong
<function>index_ddl_flags</function></funcdef>
+ <paramdef>KEY
*<parameter>wanted_index</parameter></paramdef>
+ </funcprototype>
+
+ </funcsynopsis>
+ </refsynopsisdiv>
+
+ <refsection>
+ <title>Description</title>
+
+ <para>This is the <function>index_ddl_flags </function>
method.</para>
+ </refsection>
+
+ <refsection>
+ <title>Parameters</title>
+
+ <itemizedlist>
+
<listitem><para><literal>wanted_index</literal></para></listitem>
+ </itemizedlist>
+
+ </refsection>
+
+ <refsection>
+ <title>Return Values</title>
+
+ <itemizedlist>
+ <listitem>
+ <para>
+ <literal></literal>
+ </para>
+ </listitem>
+ </itemizedlist>
+
+ </refsection>
+
+ <refsection>
+ <title>Usage</title>
+
+ <programlisting>
+
+ </programlisting>
+ </refsection>
+
+ <refsection>
+ <title>Default Implementation</title>
+
+ <programlisting>
+ const { return (HA_DDL_SUPPORT); }
+ </programlisting>
+ </refsection>
+
+ </refentry>
+
+
+ <refentry id="custom-engine-api-reference-index_end">
+ <refmeta>
+ <refentrytitle>index_end</refentrytitle>
+ </refmeta>
+
+ <refnamediv>
+ <refname>index_end</refname>
+ <refpurpose></refpurpose>
+ </refnamediv>
+
+ <refsynopsisdiv>
+ <funcsynopsis>
+ <funcprototype>
+ <funcdef>virtual int
<function>index_end</function></funcdef>
+ <paramdef><parameter></parameter></paramdef>
+ </funcprototype>
+
+ </funcsynopsis>
+ </refsynopsisdiv>
+
+ <refsection>
+ <title>Description</title>
+
+ <para>This is the <function>index_end </function>
method.</para>
+ </refsection>
+
+ <refsection>
+ <title>Parameters</title>
+
+ <itemizedlist>
+
<listitem><para><literal></literal></para></listitem>
+ </itemizedlist>
+
+ </refsection>
+
+ <refsection>
+ <title>Return Values</title>
+
+ <itemizedlist>
+ <listitem>
+ <para>
+ <literal></literal>
+ </para>
+ </listitem>
+ </itemizedlist>
+
+ </refsection>
+
+ <refsection>
+ <title>Usage</title>
+
+ <programlisting>
+
+ </programlisting>
+ </refsection>
+
+ <refsection>
+ <title>Default Implementation</title>
+
+ <programlisting>
+ { active_index=MAX_KEY; return 0; }
+ </programlisting>
+ </refsection>
+
+ </refentry>
+
+
+ <refentry id="custom-engine-api-reference-index_first">
+ <refmeta>
+ <refentrytitle>index_first</refentrytitle>
+ </refmeta>
+
+ <refnamediv>
+ <refname>index_first</refname>
+ <refpurpose></refpurpose>
+ </refnamediv>
+
+ <refsynopsisdiv>
+ <funcsynopsis>
+ <funcprototype>
+ <funcdef>virtual int
<function>index_first</function></funcdef>
+ <paramdef>byte *<parameter>buf</parameter></paramdef>
+ </funcprototype>
+
+ </funcsynopsis>
+ </refsynopsisdiv>
+
+ <refsection>
+ <title>Description</title>
+
+ <para>This is the <function>index_first </function>
method.</para>
+ </refsection>
+
+ <refsection>
+ <title>Parameters</title>
+
+ <itemizedlist>
+
<listitem><para><literal>buf</literal></para></listitem>
+ </itemizedlist>
+
+ </refsection>
+
+ <refsection>
+ <title>Return Values</title>
+
+ <itemizedlist>
+ <listitem>
+ <para>
+ <literal></literal>
+ </para>
+ </listitem>
+ </itemizedlist>
+
+ </refsection>
+
+ <refsection>
+ <title>Usage</title>
+
+ <programlisting>
+
+ </programlisting>
+ </refsection>
+
+ <refsection>
+ <title>Default Implementation</title>
+
+ <programlisting>
+ { return HA_ERR_WRONG_COMMAND; }
+ </programlisting>
+ </refsection>
+
+ </refentry>
+
+
+ <refentry id="custom-engine-api-reference-index_flags">
+ <refmeta>
+ <refentrytitle>index_flags</refentrytitle>
+ </refmeta>
+
+ <refnamediv>
+ <refname>index_flags</refname>
+ <refpurpose></refpurpose>
+ </refnamediv>
+
+ <refsynopsisdiv>
+ <funcsynopsis>
+ <funcprototype>
+ <funcdef>virtual ulong
<function>index_flags</function></funcdef>
+ <paramdef>uint<parameter>idx</parameter></paramdef>
+ <paramdef>uint<parameter>part</parameter></paramdef>
+
<paramdef>bool<parameter>all_parts</parameter></paramdef>
+ </funcprototype>
+
+ </funcsynopsis>
+ </refsynopsisdiv>
+
+ <refsection>
+ <title>Description</title>
+
+ <para>This is the <function>index_flags </function>
method.</para>
+ </refsection>
+
+ <refsection>
+ <title>Parameters</title>
+
+ <itemizedlist>
+
<listitem><para><literal>idx</literal></para></listitem>
+
<listitem><para><literal>part</literal></para></listitem>
+
<listitem><para><literal>all_parts</literal></para></listitem>
+ </itemizedlist>
+
+ </refsection>
+
+ <refsection>
+ <title>Return Values</title>
+
+ <itemizedlist>
+ <listitem>
+ <para>
+ <literal></literal>
+ </para>
+ </listitem>
+ </itemizedlist>
+
+ </refsection>
+
+ <refsection>
+ <title>Usage</title>
+
+ <programlisting>
+
+ </programlisting>
+ </refsection>
+
+ <refsection>
+ <title>Default Implementation</title>
+
+ <programlisting>
+ const =0;
+ </programlisting>
+ </refsection>
+
+ </refentry>
+
+
+ <refentry id="custom-engine-api-reference-index_init">
+ <refmeta>
+ <refentrytitle>index_init</refentrytitle>
+ </refmeta>
+
+ <refnamediv>
+ <refname>index_init</refname>
+ <refpurpose></refpurpose>
+ </refnamediv>
+
+ <refsynopsisdiv>
+ <funcsynopsis>
+ <funcprototype>
+ <funcdef>virtual int
<function>index_init</function></funcdef>
+ <paramdef>uint<parameter>idx</parameter></paramdef>
+
<paramdef>bool<parameter>sorted</parameter></paramdef>
+ </funcprototype>
+
+ </funcsynopsis>
+ </refsynopsisdiv>
+
+ <refsection>
+ <title>Description</title>
+
+ <para>This is the <function>index_init </function>
method.</para>
+ </refsection>
+
+ <refsection>
+ <title>Parameters</title>
+
+ <itemizedlist>
+
<listitem><para><literal>idx</literal></para></listitem>
+
<listitem><para><literal>sorted</literal></para></listitem>
+ </itemizedlist>
+
+ </refsection>
+
+ <refsection>
+ <title>Return Values</title>
+
+ <itemizedlist>
+ <listitem>
+ <para>
+ <literal></literal>
+ </para>
+ </listitem>
+ </itemizedlist>
+
+ </refsection>
+
+ <refsection>
+ <title>Usage</title>
+
+ <programlisting>
+
+ </programlisting>
+ </refsection>
+
+ <refsection>
+ <title>Default Implementation</title>
+
+ <programlisting>
+ { active_index=idx; return 0; }
+ </programlisting>
+ </refsection>
+
+ </refentry>
+
+
+ <refentry id="custom-engine-api-reference-index_last">
+ <refmeta>
+ <refentrytitle>index_last</refentrytitle>
+ </refmeta>
+
+ <refnamediv>
+ <refname>index_last</refname>
+ <refpurpose></refpurpose>
+ </refnamediv>
+
+ <refsynopsisdiv>
+ <funcsynopsis>
+ <funcprototype>
+ <funcdef>virtual int
<function>index_last</function></funcdef>
+ <paramdef>byte *<parameter>buf</parameter></paramdef>
+ </funcprototype>
+
+ </funcsynopsis>
+ </refsynopsisdiv>
+
+ <refsection>
+ <title>Description</title>
+
+ <para>This is the <function>index_last </function>
method.</para>
+ </refsection>
+
+ <refsection>
+ <title>Parameters</title>
+
+ <itemizedlist>
+
<listitem><para><literal>buf</literal></para></listitem>
+ </itemizedlist>
+
+ </refsection>
+
+ <refsection>
+ <title>Return Values</title>
+
+ <itemizedlist>
+ <listitem>
+ <para>
+ <literal></literal>
+ </para>
+ </listitem>
+ </itemizedlist>
+
+ </refsection>
+
+ <refsection>
+ <title>Usage</title>
+
+ <programlisting>
+
+ </programlisting>
+ </refsection>
+
+ <refsection>
+ <title>Default Implementation</title>
+
+ <programlisting>
+ { return HA_ERR_WRONG_COMMAND; }
+ </programlisting>
+ </refsection>
+
+ </refentry>
+
+
+ <refentry id="custom-engine-api-reference-index_next">
+ <refmeta>
+ <refentrytitle>index_next</refentrytitle>
+ </refmeta>
+
+ <refnamediv>
+ <refname>index_next</refname>
+ <refpurpose></refpurpose>
+ </refnamediv>
+
+ <refsynopsisdiv>
+ <funcsynopsis>
+ <funcprototype>
+ <funcdef>virtual int
<function>index_next</function></funcdef>
+ <paramdef>byte *<parameter>buf</parameter></paramdef>
+ </funcprototype>
+
+ </funcsynopsis>
+ </refsynopsisdiv>
+
+ <refsection>
+ <title>Description</title>
+
+ <para>This is the <function>index_next </function>
method.</para>
+ </refsection>
+
+ <refsection>
+ <title>Parameters</title>
+
+ <itemizedlist>
+
<listitem><para><literal>buf</literal></para></listitem>
+ </itemizedlist>
+
+ </refsection>
+
+ <refsection>
+ <title>Return Values</title>
+
+ <itemizedlist>
+ <listitem>
+ <para>
+ <literal></literal>
+ </para>
+ </listitem>
+ </itemizedlist>
+
+ </refsection>
+
+ <refsection>
+ <title>Usage</title>
+
+ <programlisting>
+
+ </programlisting>
+ </refsection>
+
+ <refsection>
+ <title>Default Implementation</title>
+
+ <programlisting>
+ { return HA_ERR_WRONG_COMMAND; }
+ </programlisting>
+ </refsection>
+
+ </refentry>
+
+
+ <refentry id="custom-engine-api-reference-index_next_same">
+ <refmeta>
+ <refentrytitle>index_next_same</refentrytitle>
+ </refmeta>
+
+ <refnamediv>
+ <refname>index_next_same</refname>
+ <refpurpose></refpurpose>
+ </refnamediv>
+
+ <refsynopsisdiv>
+ <funcsynopsis>
+ <funcprototype>
+ <funcdef>virtual int
<function>index_next_same</function></funcdef>
+ <paramdef>byte *<parameter>buf</parameter></paramdef>
+ <paramdef>const byte
*<parameter>key</parameter></paramdef>
+
<paramdef>uint<parameter>keylen</parameter></paramdef>
+ </funcprototype>
+
+ </funcsynopsis>
+ </refsynopsisdiv>
+
+ <refsection>
+ <title>Description</title>
+
+ <para>This is the <function>index_next_same </function>
method.</para>
+ </refsection>
+
+ <refsection>
+ <title>Parameters</title>
+
+ <itemizedlist>
+
<listitem><para><literal>buf</literal></para></listitem>
+
<listitem><para><literal>key</literal></para></listitem>
+
<listitem><para><literal>keylen</literal></para></listitem>
+ </itemizedlist>
+
+ </refsection>
+
+ <refsection>
+ <title>Return Values</title>
+
+ <itemizedlist>
+ <listitem>
+ <para>
+ <literal></literal>
+ </para>
+ </listitem>
+ </itemizedlist>
+
+ </refsection>
+
+ <refsection>
+ <title>Usage</title>
+
+ <programlisting>
+
+ </programlisting>
+ </refsection>
+
+ </refentry>
+
+
+ <refentry id="custom-engine-api-reference-index_prev">
+ <refmeta>
+ <refentrytitle>index_prev</refentrytitle>
+ </refmeta>
+
+ <refnamediv>
+ <refname>index_prev</refname>
+ <refpurpose></refpurpose>
+ </refnamediv>
+
+ <refsynopsisdiv>
+ <funcsynopsis>
+ <funcprototype>
+ <funcdef>virtual int
<function>index_prev</function></funcdef>
+ <paramdef>byte *<parameter>buf</parameter></paramdef>
+ </funcprototype>
+
+ </funcsynopsis>
+ </refsynopsisdiv>
+
+ <refsection>
+ <title>Description</title>
+
+ <para>This is the <function>index_prev </function>
method.</para>
+ </refsection>
+
+ <refsection>
+ <title>Parameters</title>
+
+ <itemizedlist>
+
<listitem><para><literal>buf</literal></para></listitem>
+ </itemizedlist>
+
+ </refsection>
+
+ <refsection>
+ <title>Return Values</title>
+
+ <itemizedlist>
+ <listitem>
+ <para>
+ <literal></literal>
+ </para>
+ </listitem>
+ </itemizedlist>
+
+ </refsection>
+
+ <refsection>
+ <title>Usage</title>
+
+ <programlisting>
+
+ </programlisting>
+ </refsection>
+
+ <refsection>
+ <title>Default Implementation</title>
+
+ <programlisting>
+ { return HA_ERR_WRONG_COMMAND; }
+ </programlisting>
+ </refsection>
+
+ </refentry>
+
+
+ <refentry id="custom-engine-api-reference-index_read">
+ <refmeta>
+ <refentrytitle>index_read</refentrytitle>
+ </refmeta>
+
+ <refnamediv>
+ <refname>index_read</refname>
+ <refpurpose></refpurpose>
+ </refnamediv>
+
+ <refsynopsisdiv>
+ <funcsynopsis>
+ <funcprototype>
+ <funcdef>virtual int
<function>index_read</function></funcdef>
+ <paramdef>byte *<parameter>buf</parameter></paramdef>
+ <paramdef>const byte
*<parameter>key</parameter></paramdef>
+
<paramdef>uint<parameter>key_len</parameter></paramdef>
+ <paramdef>enum
ha_rkey_function<parameter>find_flag</parameter></paramdef>
+ </funcprototype>
+
+ </funcsynopsis>
+ </refsynopsisdiv>
+
+ <refsection>
+ <title>Description</title>
+
+ <para>This is the <function>index_read </function>
method.</para>
+ </refsection>
+
+ <refsection>
+ <title>Parameters</title>
+
+ <itemizedlist>
+
<listitem><para><literal>buf</literal></para></listitem>
+
<listitem><para><literal>key</literal></para></listitem>
+
<listitem><para><literal>key_len</literal></para></listitem>
+
<listitem><para><literal>find_flag</literal></para></listitem>
+ </itemizedlist>
+
+ </refsection>
+
+ <refsection>
+ <title>Return Values</title>
+
+ <itemizedlist>
+ <listitem>
+ <para>
+ <literal></literal>
+ </para>
+ </listitem>
+ </itemizedlist>
+
+ </refsection>
+
+ <refsection>
+ <title>Usage</title>
+
+ <programlisting>
+
+ </programlisting>
+ </refsection>
+
+ <refsection>
+ <title>Default Implementation</title>
+
+ <programlisting>
+ { return HA_ERR_WRONG_COMMAND; }
+ </programlisting>
+ </refsection>
+
+ </refentry>
+
+
+ <refentry id="custom-engine-api-reference-index_read_idx">
+ <refmeta>
+ <refentrytitle>index_read_idx</refentrytitle>
+ </refmeta>
+
+ <refnamediv>
+ <refname>index_read_idx</refname>
+ <refpurpose></refpurpose>
+ </refnamediv>
+
+ <refsynopsisdiv>
+ <funcsynopsis>
+ <funcprototype>
+ <funcdef>virtual int
<function>index_read_idx</function></funcdef>
+ <paramdef>byte *<parameter>buf</parameter></paramdef>
+ <paramdef>uint<parameter>index</parameter></paramdef>
+ <paramdef>const byte
*<parameter>key</parameter></paramdef>
+
<paramdef>uint<parameter>key_len</parameter></paramdef>
+ <paramdef>enum
ha_rkey_function<parameter>find_flag</parameter></paramdef>
+ </funcprototype>
+
+ </funcsynopsis>
+ </refsynopsisdiv>
+
+ <refsection>
+ <title>Description</title>
+
+ <para>This is the <function>index_read_idx </function>
method.</para>
+ </refsection>
+
+ <refsection>
+ <title>Parameters</title>
+
+ <itemizedlist>
+
<listitem><para><literal>buf</literal></para></listitem>
+
<listitem><para><literal>index</literal></para></listitem>
+
<listitem><para><literal>key</literal></para></listitem>
+
<listitem><para><literal>key_len</literal></para></listitem>
+
<listitem><para><literal>find_flag</literal></para></listitem>
+ </itemizedlist>
+
+ </refsection>
+
+ <refsection>
+ <title>Return Values</title>
+
+ <itemizedlist>
+ <listitem>
+ <para>
+ <literal></literal>
+ </para>
+ </listitem>
+ </itemizedlist>
+
+ </refsection>
+
+ <refsection>
+ <title>Usage</title>
+
+ <programlisting>
+
+ </programlisting>
+ </refsection>
+
+ </refentry>
+
+
+ <refentry id="custom-engine-api-reference-index_read_last">
+ <refmeta>
+ <refentrytitle>index_read_last</refentrytitle>
+ </refmeta>
+
+ <refnamediv>
+ <refname>index_read_last</refname>
+ <refpurpose></refpurpose>
+ </refnamediv>
+
+ <refsynopsisdiv>
+ <funcsynopsis>
+ <funcprototype>
+ <funcdef>virtual int
<function>index_read_last</function></funcdef>
+ <paramdef>byte *<parameter>buf</parameter></paramdef>
+ <paramdef>const byte
*<parameter>key</parameter></paramdef>
+
<paramdef>uint<parameter>key_len</parameter></paramdef>
+ </funcprototype>
+
+ </funcsynopsis>
+ </refsynopsisdiv>
+
+ <refsection>
+ <title>Description</title>
+
+ <para>This is the <function>index_read_last </function>
method.</para>
+ </refsection>
+
+ <refsection>
+ <title>Parameters</title>
+
+ <itemizedlist>
+
<listitem><para><literal>buf</literal></para></listitem>
+
<listitem><para><literal>key</literal></para></listitem>
+
<listitem><para><literal>key_len</literal></para></listitem>
+ </itemizedlist>
+
+ </refsection>
+
+ <refsection>
+ <title>Return Values</title>
+
+ <itemizedlist>
+ <listitem>
+ <para>
+ <literal></literal>
+ </para>
+ </listitem>
+ </itemizedlist>
+
+ </refsection>
+
+ <refsection>
+ <title>Usage</title>
+
+ <programlisting>
+
+ </programlisting>
+ </refsection>
+
+ <refsection>
+ <title>Default Implementation</title>
+
+ <programlisting>
+ { return (my_errno=HA_ERR_WRONG_COMMAND); }
+ </programlisting>
+ </refsection>
+
+ </refentry>
+
+
+ <refentry id="custom-engine-api-reference-index_type">
+ <refmeta>
+ <refentrytitle>index_type</refentrytitle>
+ </refmeta>
+
+ <refnamediv>
+ <refname>index_type</refname>
+ <refpurpose></refpurpose>
+ </refnamediv>
+
+ <refsynopsisdiv>
+ <funcsynopsis>
+ <funcprototype>
+ <funcdef>virtual const char *
<function>index_type</function></funcdef>
+
<paramdef>uint<parameter>key_number</parameter></paramdef>
+ </funcprototype>
+
+ </funcsynopsis>
+ </refsynopsisdiv>
+
+ <refsection>
+ <title>Description</title>
+
+ <para>This is the <function>index_type </function>
method.</para>
+ </refsection>
+
+ <refsection>
+ <title>Parameters</title>
+
+ <itemizedlist>
+
<listitem><para><literal>key_number</literal></para></listitem>
+ </itemizedlist>
+
+ </refsection>
+
+ <refsection>
+ <title>Return Values</title>
+
+ <itemizedlist>
+ <listitem>
+ <para>
+ <literal></literal>
+ </para>
+ </listitem>
+ </itemizedlist>
+
+ </refsection>
+
+ <refsection>
+ <title>Usage</title>
+
+ <programlisting>
+
+ </programlisting>
+ </refsection>
+
+ <refsection>
+ <title>Default Implementation</title>
+
+ <programlisting>
+ { DBUG_ASSERT(0); return "";}
+ </programlisting>
+ </refsection>
+
+ </refentry>
+
+
+ <refentry id="custom-engine-api-reference-indexes_are_disabled">
+ <refmeta>
+ <refentrytitle>indexes_are_disabled</refentrytitle>
+ </refmeta>
+
+ <refnamediv>
+ <refname>indexes_are_disabled</refname>
+ <refpurpose></refpurpose>
+ </refnamediv>
+
+ <refsynopsisdiv>
+ <funcsynopsis>
+ <funcprototype>
+ <funcdef>virtual int
<function>indexes_are_disabled</function></funcdef>
+ <paramdef><parameter>void</parameter></paramdef>
+ </funcprototype>
+
+ </funcsynopsis>
+ </refsynopsisdiv>
+
+ <refsection>
+ <title>Description</title>
+
+ <para>This is the <function>indexes_are_disabled </function>
method.</para>
+ </refsection>
+
+ <refsection>
+ <title>Parameters</title>
+
+ <itemizedlist>
+
<listitem><para><literal>void</literal></para></listitem>
+ </itemizedlist>
+
+ </refsection>
+
+ <refsection>
+ <title>Return Values</title>
+
+ <itemizedlist>
+ <listitem>
+ <para>
+ <literal></literal>
+ </para>
+ </listitem>
+ </itemizedlist>
+
+ </refsection>
+
+ <refsection>
+ <title>Usage</title>
+
+ <programlisting>
+
+ </programlisting>
+ </refsection>
+
+ <refsection>
+ <title>Default Implementation</title>
+
+ <programlisting>
+ {return 0;}
+ </programlisting>
+ </refsection>
+
+ </refentry>
+
+
+ <refentry id="custom-engine-api-reference-info">
+ <refmeta>
+ <refentrytitle>info</refentrytitle>
+ </refmeta>
+
+ <refnamediv>
+ <refname>info</refname>
+ <refpurpose></refpurpose>
+ </refnamediv>
+
+ <refsynopsisdiv>
+ <funcsynopsis>
+ <funcprototype>
+ <funcdef>virtual void
<function>info</function></funcdef>
+ <paramdef><parameter>uint</parameter></paramdef>
+ </funcprototype>
+
+ </funcsynopsis>
+ </refsynopsisdiv>
+
+ <refsection>
+ <title>Description</title>
+
+ <para>This is the <function>info </function>
method.</para>
+ </refsection>
+
+ <refsection>
+ <title>Parameters</title>
+
+ <itemizedlist>
+
<listitem><para><literal>uint</literal></para></listitem>
+ </itemizedlist>
+
+ </refsection>
+
+ <refsection>
+ <title>Return Values</title>
+
+ <itemizedlist>
+ <listitem>
+ <para>
+ <literal></literal>
+ </para>
+ </listitem>
+ </itemizedlist>
+
+ </refsection>
+
+ <refsection>
+ <title>Usage</title>
+
+ <programlisting>
+
+ </programlisting>
+ </refsection>
+
+ </refentry>
+
+
+ <refentry id="custom-engine-api-reference-init_table_handle_for_HANDLER">
+ <refmeta>
+ <refentrytitle>init_table_handle_for_HANDLER</refentrytitle>
+ </refmeta>
+
+ <refnamediv>
+ <refname>init_table_handle_for_HANDLER</refname>
+ <refpurpose></refpurpose>
+ </refnamediv>
+
+ <refsynopsisdiv>
+ <funcsynopsis>
+ <funcprototype>
+ <funcdef>virtual void
<function>init_table_handle_for_HANDLER</function></funcdef>
+ <paramdef><parameter></parameter></paramdef>
+ </funcprototype>
+
+ </funcsynopsis>
+ </refsynopsisdiv>
+
+ <refsection>
+ <title>Description</title>
+
+ <para>This is the <function>init_table_handle_for_HANDLER
</function> method.</para>
+ </refsection>
+
+ <refsection>
+ <title>Parameters</title>
+
+ <itemizedlist>
+
<listitem><para><literal></literal></para></listitem>
+ </itemizedlist>
+
+ </refsection>
+
+ <refsection>
+ <title>Return Values</title>
+
+ <itemizedlist>
+ <listitem>
+ <para>
+ <literal></literal>
+ </para>
+ </listitem>
+ </itemizedlist>
+
+ </refsection>
+
+ <refsection>
+ <title>Usage</title>
+
+ <programlisting>
+
+ </programlisting>
+ </refsection>
+
+ <refsection>
+ <title>Default Implementation</title>
+
+ <programlisting>
+ { return; }
+ </programlisting>
+ </refsection>
+
+ </refentry>
+
+
+ <refentry id="custom-engine-api-reference-is_crashed">
+ <refmeta>
+ <refentrytitle>is_crashed</refentrytitle>
+ </refmeta>
+
+ <refnamediv>
+ <refname>is_crashed</refname>
+ <refpurpose></refpurpose>
+ </refnamediv>
+
+ <refsynopsisdiv>
+ <funcsynopsis>
+ <funcprototype>
+ <funcdef>virtual bool
<function>is_crashed</function></funcdef>
+ <paramdef><parameter></parameter></paramdef>
+ </funcprototype>
+
+ </funcsynopsis>
+ </refsynopsisdiv>
+
+ <refsection>
+ <title>Description</title>
+
+ <para>This is the <function>is_crashed </function>
method.</para>
+ </refsection>
+
+ <refsection>
+ <title>Parameters</title>
+
+ <itemizedlist>
+
<listitem><para><literal></literal></para></listitem>
+ </itemizedlist>
+
+ </refsection>
+
+ <refsection>
+ <title>Return Values</title>
+
+ <itemizedlist>
+ <listitem>
+ <para>
+ <literal></literal>
+ </para>
+ </listitem>
+ </itemizedlist>
+
+ </refsection>
+
+ <refsection>
+ <title>Usage</title>
+
+ <programlisting>
+
+ </programlisting>
+ </refsection>
+
+ <refsection>
+ <title>Default Implementation</title>
+
+ <programlisting>
+ const { return 0; }
+ </programlisting>
+ </refsection>
+
+ </refentry>
+
+
+ <refentry id="custom-engine-api-reference-is_fk_defined_on_table_or_index">
+ <refmeta>
+ <refentrytitle>is_fk_defined_on_table_or_index</refentrytitle>
+ </refmeta>
+
+ <refnamediv>
+ <refname>is_fk_defined_on_table_or_index</refname>
+ <refpurpose></refpurpose>
+ </refnamediv>
+
+ <refsynopsisdiv>
+ <funcsynopsis>
+ <funcprototype>
+ <funcdef>virtual bool
<function>is_fk_defined_on_table_or_index</function></funcdef>
+ <paramdef>uint<parameter>index</parameter></paramdef>
+ </funcprototype>
+
+ </funcsynopsis>
+ </refsynopsisdiv>
+
+ <refsection>
+ <title>Description</title>
+
+ <para>This is the <function>is_fk_defined_on_table_or_index
</function> method.</para>
+ </refsection>
+
+ <refsection>
+ <title>Parameters</title>
+
+ <itemizedlist>
+
<listitem><para><literal>index</literal></para></listitem>
+ </itemizedlist>
+
+ </refsection>
+
+ <refsection>
+ <title>Return Values</title>
+
+ <itemizedlist>
+ <listitem>
+ <para>
+ <literal></literal>
+ </para>
+ </listitem>
+ </itemizedlist>
+
+ </refsection>
+
+ <refsection>
+ <title>Usage</title>
+
+ <programlisting>
+
+ </programlisting>
+ </refsection>
+
+ <refsection>
+ <title>Default Implementation</title>
+
+ <programlisting>
+ { return FALSE; }
+ </programlisting>
+ </refsection>
+
+ </refentry>
+
+
+ <refentry id="custom-engine-api-reference-keys_to_use_for_scanning">
+ <refmeta>
+ <refentrytitle>keys_to_use_for_scanning</refentrytitle>
+ </refmeta>
+
+ <refnamediv>
+ <refname>keys_to_use_for_scanning</refname>
+ <refpurpose></refpurpose>
+ </refnamediv>
+
+ <refsynopsisdiv>
+ <funcsynopsis>
+ <funcprototype>
+ <funcdef>virtual const key_map *
<function>keys_to_use_for_scanning</function></funcdef>
+ <paramdef><parameter></parameter></paramdef>
+ </funcprototype>
+
+ </funcsynopsis>
+ </refsynopsisdiv>
+
+ <refsection>
+ <title>Description</title>
+
+ <para>This is the <function>keys_to_use_for_scanning </function>
method.</para>
+ </refsection>
+
+ <refsection>
+ <title>Parameters</title>
+
+ <itemizedlist>
+
<listitem><para><literal></literal></para></listitem>
+ </itemizedlist>
+
+ </refsection>
+
+ <refsection>
+ <title>Return Values</title>
+
+ <itemizedlist>
+ <listitem>
+ <para>
+ <literal></literal>
+ </para>
+ </listitem>
+ </itemizedlist>
+
+ </refsection>
+
+ <refsection>
+ <title>Usage</title>
+
+ <programlisting>
+
+ </programlisting>
+ </refsection>
+
+ <refsection>
+ <title>Default Implementation</title>
+
+ <programlisting>
+ { return &key_map_empty; }
+ </programlisting>
+ </refsection>
+
+ </refentry>
+
+
+ <refentry id="custom-engine-api-reference-lock_count">
+ <refmeta>
+ <refentrytitle>lock_count</refentrytitle>
+ </refmeta>
+
+ <refnamediv>
+ <refname>lock_count</refname>
+ <refpurpose></refpurpose>
+ </refnamediv>
+
+ <refsynopsisdiv>
+ <funcsynopsis>
+ <funcprototype>
+ <funcdef>virtual uint
<function>lock_count</function></funcdef>
+ <paramdef><parameter>void</parameter></paramdef>
+ </funcprototype>
+
+ </funcsynopsis>
+ </refsynopsisdiv>
+
+ <refsection>
+ <title>Description</title>
+
+ <para>This is the <function>lock_count </function>
method.</para>
+ </refsection>
+
+ <refsection>
+ <title>Parameters</title>
+
+ <itemizedlist>
+
<listitem><para><literal>void</literal></para></listitem>
+ </itemizedlist>
+
+ </refsection>
+
+ <refsection>
+ <title>Return Values</title>
+
+ <itemizedlist>
+ <listitem>
+ <para>
+ <literal></literal>
+ </para>
+ </listitem>
+ </itemizedlist>
+
+ </refsection>
+
+ <refsection>
+ <title>Usage</title>
+
+ <programlisting>
+
+ </programlisting>
+ </refsection>
+
+ <refsection>
+ <title>Default Implementation</title>
+
+ <programlisting>
+ const { return 1; }
+ </programlisting>
+ </refsection>
+
+ </refentry>
+
+
+ <refentry id="custom-engine-api-reference-low_byte_first">
+ <refmeta>
+ <refentrytitle>low_byte_first</refentrytitle>
+ </refmeta>
+
+ <refnamediv>
+ <refname>low_byte_first</refname>
+ <refpurpose></refpurpose>
+ </refnamediv>
+
+ <refsynopsisdiv>
+ <funcsynopsis>
+ <funcprototype>
+ <funcdef>virtual bool
<function>low_byte_first</function></funcdef>
+ <paramdef><parameter></parameter></paramdef>
+ </funcprototype>
+
+ </funcsynopsis>
+ </refsynopsisdiv>
+
+ <refsection>
+ <title>Description</title>
+
+ <para>This is the <function>low_byte_first </function>
method.</para>
+ </refsection>
+
+ <refsection>
+ <title>Parameters</title>
+
+ <itemizedlist>
+
<listitem><para><literal></literal></para></listitem>
+ </itemizedlist>
+
+ </refsection>
+
+ <refsection>
+ <title>Return Values</title>
+
+ <itemizedlist>
+ <listitem>
+ <para>
+ <literal></literal>
+ </para>
+ </listitem>
+ </itemizedlist>
+
+ </refsection>
+
+ <refsection>
+ <title>Usage</title>
+
+ <programlisting>
+
+ </programlisting>
+ </refsection>
+
+ <refsection>
+ <title>Default Implementation</title>
+
+ <programlisting>
+ const { return 1; }
+ </programlisting>
+ </refsection>
+
+ </refentry>
+
+
+ <refentry id="custom-engine-api-reference-max_key_length">
+ <refmeta>
+ <refentrytitle>max_key_length</refentrytitle>
+ </refmeta>
+
+ <refnamediv>
+ <refname>max_key_length</refname>
+ <refpurpose></refpurpose>
+ </refnamediv>
+
+ <refsynopsisdiv>
+ <funcsynopsis>
+ <funcprototype>
+ <funcdef>uint
<function>max_key_length</function></funcdef>
+ <paramdef><parameter></parameter></paramdef>
+ </funcprototype>
+
+ </funcsynopsis>
+ </refsynopsisdiv>
+
+ <refsection>
+ <title>Description</title>
+
+ <para>This is the <function>max_key_length </function>
method.</para>
+ </refsection>
+
+ <refsection>
+ <title>Parameters</title>
+
+ <itemizedlist>
+
<listitem><para><literal></literal></para></listitem>
+ </itemizedlist>
+
+ </refsection>
+
+ <refsection>
+ <title>Return Values</title>
+
+ <itemizedlist>
+ <listitem>
+ <para>
+ <literal></literal>
+ </para>
+ </listitem>
+ </itemizedlist>
+
+ </refsection>
+
+ <refsection>
+ <title>Usage</title>
+
+ <programlisting>
+
+ </programlisting>
+ </refsection>
+
+ <refsection>
+ <title>Implementation</title>
+
+ <programlisting>
+ const { return min(MAX_KEY_LENGTH, max_supported_key_length()); }
+ </programlisting>
+ </refsection>
+
+ </refentry>
+
+
+ <refentry id="custom-engine-api-reference-max_key_part_length">
+ <refmeta>
+ <refentrytitle>max_key_part_length</refentrytitle>
+ </refmeta>
+
+ <refnamediv>
+ <refname>max_key_part_length</refname>
+ <refpurpose></refpurpose>
+ </refnamediv>
+
+ <refsynopsisdiv>
+ <funcsynopsis>
+ <funcprototype>
+ <funcdef>uint
<function>max_key_part_length</function></funcdef>
+ <paramdef><parameter></parameter></paramdef>
+ </funcprototype>
+
+ </funcsynopsis>
+ </refsynopsisdiv>
+
+ <refsection>
+ <title>Description</title>
+
+ <para>This is the <function>max_key_part_length </function>
method.</para>
+ </refsection>
+
+ <refsection>
+ <title>Parameters</title>
+
+ <itemizedlist>
+
<listitem><para><literal></literal></para></listitem>
+ </itemizedlist>
+
+ </refsection>
+
+ <refsection>
+ <title>Return Values</title>
+
+ <itemizedlist>
+ <listitem>
+ <para>
+ <literal></literal>
+ </para>
+ </listitem>
+ </itemizedlist>
+
+ </refsection>
+
+ <refsection>
+ <title>Usage</title>
+
+ <programlisting>
+
+ </programlisting>
+ </refsection>
+
+ <refsection>
+ <title>Implementation</title>
+
+ <programlisting>
+ const { return min(MAX_KEY_LENGTH, max_supported_key_part_length()); }
+ </programlisting>
+ </refsection>
+
+ </refentry>
+
+
+ <refentry id="custom-engine-api-reference-max_key_parts">
+ <refmeta>
+ <refentrytitle>max_key_parts</refentrytitle>
+ </refmeta>
+
+ <refnamediv>
+ <refname>max_key_parts</refname>
+ <refpurpose></refpurpose>
+ </refnamediv>
+
+ <refsynopsisdiv>
+ <funcsynopsis>
+ <funcprototype>
+ <funcdef>uint
<function>max_key_parts</function></funcdef>
+ <paramdef><parameter></parameter></paramdef>
+ </funcprototype>
+
+ </funcsynopsis>
+ </refsynopsisdiv>
+
+ <refsection>
+ <title>Description</title>
+
+ <para>This is the <function>max_key_parts </function>
method.</para>
+ </refsection>
+
+ <refsection>
+ <title>Parameters</title>
+
+ <itemizedlist>
+
<listitem><para><literal></literal></para></listitem>
+ </itemizedlist>
+
+ </refsection>
+
+ <refsection>
+ <title>Return Values</title>
+
+ <itemizedlist>
+ <listitem>
+ <para>
+ <literal></literal>
+ </para>
+ </listitem>
+ </itemizedlist>
+
+ </refsection>
+
+ <refsection>
+ <title>Usage</title>
+
+ <programlisting>
+
+ </programlisting>
+ </refsection>
+
+ <refsection>
+ <title>Implementation</title>
+
+ <programlisting>
+ const { return min(MAX_REF_PARTS, max_supported_key_parts()); }
+ </programlisting>
+ </refsection>
+
+ </refentry>
+
+
+ <refentry id="custom-engine-api-reference-max_keys">
+ <refmeta>
+ <refentrytitle>max_keys</refentrytitle>
+ </refmeta>
+
+ <refnamediv>
+ <refname>max_keys</refname>
+ <refpurpose></refpurpose>
+ </refnamediv>
+
+ <refsynopsisdiv>
+ <funcsynopsis>
+ <funcprototype>
+ <funcdef>uint <function>max_keys</function></funcdef>
+ <paramdef><parameter></parameter></paramdef>
+ </funcprototype>
+
+ </funcsynopsis>
+ </refsynopsisdiv>
+
+ <refsection>
+ <title>Description</title>
+
+ <para>This is the <function>max_keys </function>
method.</para>
+ </refsection>
+
+ <refsection>
+ <title>Parameters</title>
+
+ <itemizedlist>
+
<listitem><para><literal></literal></para></listitem>
+ </itemizedlist>
+
+ </refsection>
+
+ <refsection>
+ <title>Return Values</title>
+
+ <itemizedlist>
+ <listitem>
+ <para>
+ <literal></literal>
+ </para>
+ </listitem>
+ </itemizedlist>
+
+ </refsection>
+
+ <refsection>
+ <title>Usage</title>
+
+ <programlisting>
+
+ </programlisting>
+ </refsection>
+
+ <refsection>
+ <title>Implementation</title>
+
+ <programlisting>
+ const { return min(MAX_KEY, max_supported_keys()); }
+ </programlisting>
+ </refsection>
+
+ </refentry>
+
+
+ <refentry id="custom-engine-api-reference-max_record_length">
+ <refmeta>
+ <refentrytitle>max_record_length</refentrytitle>
+ </refmeta>
+
+ <refnamediv>
+ <refname>max_record_length</refname>
+ <refpurpose></refpurpose>
+ </refnamediv>
+
+ <refsynopsisdiv>
+ <funcsynopsis>
+ <funcprototype>
+ <funcdef>uint
<function>max_record_length</function></funcdef>
+ <paramdef><parameter></parameter></paramdef>
+ </funcprototype>
+
+ </funcsynopsis>
+ </refsynopsisdiv>
+
+ <refsection>
+ <title>Description</title>
+
+ <para>This is the <function>max_record_length </function>
method.</para>
+ </refsection>
+
+ <refsection>
+ <title>Parameters</title>
+
+ <itemizedlist>
+
<listitem><para><literal></literal></para></listitem>
+ </itemizedlist>
+
+ </refsection>
+
+ <refsection>
+ <title>Return Values</title>
+
+ <itemizedlist>
+ <listitem>
+ <para>
+ <literal></literal>
+ </para>
+ </listitem>
+ </itemizedlist>
+
+ </refsection>
+
+ <refsection>
+ <title>Usage</title>
+
+ <programlisting>
+
+ </programlisting>
+ </refsection>
+
+ <refsection>
+ <title>Implementation</title>
+
+ <programlisting>
+ const { return min(HA_MAX_REC_LENGTH, max_supported_record_length()); }
+ </programlisting>
+ </refsection>
+
+ </refentry>
+
+
+ <refentry id="custom-engine-api-reference-max_supported_key_length">
+ <refmeta>
+ <refentrytitle>max_supported_key_length</refentrytitle>
+ </refmeta>
+
+ <refnamediv>
+ <refname>max_supported_key_length</refname>
+ <refpurpose></refpurpose>
+ </refnamediv>
+
+ <refsynopsisdiv>
+ <funcsynopsis>
+ <funcprototype>
+ <funcdef>virtual uint
<function>max_supported_key_length</function></funcdef>
+ <paramdef><parameter></parameter></paramdef>
+ </funcprototype>
+
+ </funcsynopsis>
+ </refsynopsisdiv>
+
+ <refsection>
+ <title>Description</title>
+
+ <para>This is the <function>max_supported_key_length </function>
method.</para>
+ </refsection>
+
+ <refsection>
+ <title>Parameters</title>
+
+ <itemizedlist>
+
<listitem><para><literal></literal></para></listitem>
+ </itemizedlist>
+
+ </refsection>
+
+ <refsection>
+ <title>Return Values</title>
+
+ <itemizedlist>
+ <listitem>
+ <para>
+ <literal></literal>
+ </para>
+ </listitem>
+ </itemizedlist>
+
+ </refsection>
+
+ <refsection>
+ <title>Usage</title>
+
+ <programlisting>
+
+ </programlisting>
+ </refsection>
+
+ <refsection>
+ <title>Default Implementation</title>
+
+ <programlisting>
+ const { return MAX_KEY_LENGTH; }
+ </programlisting>
+ </refsection>
+
+ </refentry>
+
+
+ <refentry id="custom-engine-api-reference-max_supported_key_part_length">
+ <refmeta>
+ <refentrytitle>max_supported_key_part_length</refentrytitle>
+ </refmeta>
+
+ <refnamediv>
+ <refname>max_supported_key_part_length</refname>
+ <refpurpose></refpurpose>
+ </refnamediv>
+
+ <refsynopsisdiv>
+ <funcsynopsis>
+ <funcprototype>
+ <funcdef>virtual uint
<function>max_supported_key_part_length</function></funcdef>
+ <paramdef><parameter></parameter></paramdef>
+ </funcprototype>
+
+ </funcsynopsis>
+ </refsynopsisdiv>
+
+ <refsection>
+ <title>Description</title>
+
+ <para>This is the <function>max_supported_key_part_length
</function> method.</para>
+ </refsection>
+
+ <refsection>
+ <title>Parameters</title>
+
+ <itemizedlist>
+
<listitem><para><literal></literal></para></listitem>
+ </itemizedlist>
+
+ </refsection>
+
+ <refsection>
+ <title>Return Values</title>
+
+ <itemizedlist>
+ <listitem>
+ <para>
+ <literal></literal>
+ </para>
+ </listitem>
+ </itemizedlist>
+
+ </refsection>
+
+ <refsection>
+ <title>Usage</title>
+
+ <programlisting>
+
+ </programlisting>
+ </refsection>
+
+ <refsection>
+ <title>Default Implementation</title>
+
+ <programlisting>
+ const { return 255; }
+ </programlisting>
+ </refsection>
+
+ </refentry>
+
+
+ <refentry id="custom-engine-api-reference-max_supported_key_parts">
+ <refmeta>
+ <refentrytitle>max_supported_key_parts</refentrytitle>
+ </refmeta>
+
+ <refnamediv>
+ <refname>max_supported_key_parts</refname>
+ <refpurpose></refpurpose>
+ </refnamediv>
+
+ <refsynopsisdiv>
+ <funcsynopsis>
+ <funcprototype>
+ <funcdef>virtual uint
<function>max_supported_key_parts</function></funcdef>
+ <paramdef><parameter></parameter></paramdef>
+ </funcprototype>
+
+ </funcsynopsis>
+ </refsynopsisdiv>
+
+ <refsection>
+ <title>Description</title>
+
+ <para>This is the <function>max_supported_key_parts </function>
method.</para>
+ </refsection>
+
+ <refsection>
+ <title>Parameters</title>
+
+ <itemizedlist>
+
<listitem><para><literal></literal></para></listitem>
+ </itemizedlist>
+
+ </refsection>
+
+ <refsection>
+ <title>Return Values</title>
+
+ <itemizedlist>
+ <listitem>
+ <para>
+ <literal></literal>
+ </para>
+ </listitem>
+ </itemizedlist>
+
+ </refsection>
+
+ <refsection>
+ <title>Usage</title>
+
+ <programlisting>
+
+ </programlisting>
+ </refsection>
+
+ <refsection>
+ <title>Default Implementation</title>
+
+ <programlisting>
+ const { return MAX_REF_PARTS; }
+ </programlisting>
+ </refsection>
+
+ </refentry>
+
+
+ <refentry id="custom-engine-api-reference-max_supported_keys">
+ <refmeta>
+ <refentrytitle>max_supported_keys</refentrytitle>
+ </refmeta>
+
+ <refnamediv>
+ <refname>max_supported_keys</refname>
+ <refpurpose></refpurpose>
+ </refnamediv>
+
+ <refsynopsisdiv>
+ <funcsynopsis>
+ <funcprototype>
+ <funcdef>virtual uint
<function>max_supported_keys</function></funcdef>
+ <paramdef><parameter></parameter></paramdef>
+ </funcprototype>
+
+ </funcsynopsis>
+ </refsynopsisdiv>
+
+ <refsection>
+ <title>Description</title>
+
+ <para>This is the <function>max_supported_keys </function>
method.</para>
+ </refsection>
+
+ <refsection>
+ <title>Parameters</title>
+
+ <itemizedlist>
+
<listitem><para><literal></literal></para></listitem>
+ </itemizedlist>
+
+ </refsection>
+
+ <refsection>
+ <title>Return Values</title>
+
+ <itemizedlist>
+ <listitem>
+ <para>
+ <literal></literal>
+ </para>
+ </listitem>
+ </itemizedlist>
+
+ </refsection>
+
+ <refsection>
+ <title>Usage</title>
+
+ <programlisting>
+
+ </programlisting>
+ </refsection>
+
+ <refsection>
+ <title>Default Implementation</title>
+
+ <programlisting>
+ const { return 0; }
+ </programlisting>
+ </refsection>
+
+ </refentry>
+
+
+ <refentry id="custom-engine-api-reference-max_supported_record_length">
+ <refmeta>
+ <refentrytitle>max_supported_record_length</refentrytitle>
+ </refmeta>
+
+ <refnamediv>
+ <refname>max_supported_record_length</refname>
+ <refpurpose></refpurpose>
+ </refnamediv>
+
+ <refsynopsisdiv>
+ <funcsynopsis>
+ <funcprototype>
+ <funcdef>virtual uint
<function>max_supported_record_length</function></funcdef>
+ <paramdef><parameter></parameter></paramdef>
+ </funcprototype>
+
+ </funcsynopsis>
+ </refsynopsisdiv>
+
+ <refsection>
+ <title>Description</title>
+
+ <para>This is the <function>max_supported_record_length
</function> method.</para>
+ </refsection>
+
+ <refsection>
+ <title>Parameters</title>
+
+ <itemizedlist>
+
<listitem><para><literal></literal></para></listitem>
+ </itemizedlist>
+
+ </refsection>
+
+ <refsection>
+ <title>Return Values</title>
+
+ <itemizedlist>
+ <listitem>
+ <para>
+ <literal></literal>
+ </para>
+ </listitem>
+ </itemizedlist>
+
+ </refsection>
+
+ <refsection>
+ <title>Usage</title>
+
+ <programlisting>
+
+ </programlisting>
+ </refsection>
+
+ <refsection>
+ <title>Default Implementation</title>
+
+ <programlisting>
+ const { return HA_MAX_REC_LENGTH; }
+ </programlisting>
+ </refsection>
+
+ </refentry>
+
+
+ <refentry id="custom-engine-api-reference-min_record_length">
+ <refmeta>
+ <refentrytitle>min_record_length</refentrytitle>
+ </refmeta>
+
+ <refnamediv>
+ <refname>min_record_length</refname>
+ <refpurpose></refpurpose>
+ </refnamediv>
+
+ <refsynopsisdiv>
+ <funcsynopsis>
+ <funcprototype>
+ <funcdef>virtual uint
<function>min_record_length</function></funcdef>
+
<paramdef>uint<parameter>options</parameter></paramdef>
+ </funcprototype>
+
+ </funcsynopsis>
+ </refsynopsisdiv>
+
+ <refsection>
+ <title>Description</title>
+
+ <para>This is the <function>min_record_length </function>
method.</para>
+ </refsection>
+
+ <refsection>
+ <title>Parameters</title>
+
+ <itemizedlist>
+
<listitem><para><literal>options</literal></para></listitem>
+ </itemizedlist>
+
+ </refsection>
+
+ <refsection>
+ <title>Return Values</title>
+
+ <itemizedlist>
+ <listitem>
+ <para>
+ <literal></literal>
+ </para>
+ </listitem>
+ </itemizedlist>
+
+ </refsection>
+
+ <refsection>
+ <title>Usage</title>
+
+ <programlisting>
+
+ </programlisting>
+ </refsection>
+
+ <refsection>
+ <title>Default Implementation</title>
+
+ <programlisting>
+ const { return 1; }
+ </programlisting>
+ </refsection>
+
+ </refentry>
+
+
+ <refentry id="custom-engine-api-reference-net_read_dump">
+ <refmeta>
+ <refentrytitle>net_read_dump</refentrytitle>
+ </refmeta>
+
+ <refnamediv>
+ <refname>net_read_dump</refname>
+ <refpurpose></refpurpose>
+ </refnamediv>
+
+ <refsynopsisdiv>
+ <funcsynopsis>
+ <funcprototype>
+ <funcdef>virtual int
<function>net_read_dump</function></funcdef>
+ <paramdef>NET*<parameter>net</parameter></paramdef>
+ </funcprototype>
+
+ </funcsynopsis>
+ </refsynopsisdiv>
+
+ <refsection>
+ <title>Description</title>
+
+ <para>This is the <function>net_read_dump </function>
method.</para>
+ </refsection>
+
+ <refsection>
+ <title>Parameters</title>
+
+ <itemizedlist>
+
<listitem><para><literal>net</literal></para></listitem>
+ </itemizedlist>
+
+ </refsection>
+
+ <refsection>
+ <title>Return Values</title>
+
+ <itemizedlist>
+ <listitem>
+ <para>
+ <literal></literal>
+ </para>
+ </listitem>
+ </itemizedlist>
+
+ </refsection>
+
+ <refsection>
+ <title>Usage</title>
+
+ <programlisting>
+
+ </programlisting>
+ </refsection>
+
+ <refsection>
+ <title>Default Implementation</title>
+
+ <programlisting>
+ { return HA_ERR_WRONG_COMMAND; }
+ </programlisting>
+ </refsection>
+
+ </refentry>
+
+
<refentry id="custom-engine-api-reference-open">
<refmeta>
<refentrytitle>open</refentrytitle>
</refmeta>
-
+
<refnamediv>
<refname>open</refname>
- <refpurpose>Open the table</refpurpose>
+ <refpurpose></refpurpose>
</refnamediv>
-
+
<refsynopsisdiv>
<funcsynopsis>
<funcprototype>
<funcdef>virtual int
<function>open</function></funcdef>
- <paramdef>const char
<parameter>*name</parameter></paramdef>
- <paramdef>int <parameter>mode</parameter></paramdef>
- <paramdef>uint
<parameter>test_if_locked</parameter></paramdef>
+ <paramdef>const char
*<parameter>name</parameter></paramdef>
+ <paramdef>int<parameter>mode</parameter></paramdef>
+
<paramdef>uint<parameter>test_if_locked</parameter></paramdef>
</funcprototype>
+
+ </funcsynopsis>
+ </refsynopsisdiv>
+
+ <refsection>
+ <title>Description</title>
+
+ <para>This is the <function>open </function>
method.</para>
+ </refsection>
+
+ <refsection>
+ <title>Parameters</title>
+
+ <itemizedlist>
+
<listitem><para><literal>name</literal></para></listitem>
+
<listitem><para><literal>mode</literal></para></listitem>
+
<listitem><para><literal>test_if_locked</literal></para></listitem>
+ </itemizedlist>
+
+ </refsection>
+
+ <refsection>
+ <title>Return Values</title>
+
+ <itemizedlist>
+ <listitem>
+ <para>
+ <literal></literal>
+ </para>
+ </listitem>
+ </itemizedlist>
+
+ </refsection>
+
+ <refsection>
+ <title>Usage</title>
+
+ <programlisting>
+ </programlisting>
+ </refsection>
+
+ </refentry>
+
+
+ <refentry id="custom-engine-api-reference-optimize">
+ <refmeta>
+ <refentrytitle>optimize</refentrytitle>
+ </refmeta>
+
+ <refnamediv>
+ <refname>optimize</refname>
+ <refpurpose></refpurpose>
+ </refnamediv>
+
+ <refsynopsisdiv>
+ <funcsynopsis>
+ <funcprototype>
+ <funcdef>virtual int
<function>optimize</function></funcdef>
+ <paramdef>THD*<parameter>thd</parameter></paramdef>
+
<paramdef>HA_CHECK_OPT*<parameter>check_opt</parameter></paramdef>
+ </funcprototype>
+
</funcsynopsis>
</refsynopsisdiv>
-
+
<refsection>
- <title>Description</title>
-
- <para>This is the <function>open</function>
method.</para>
+ <title>Description</title>
+
+ <para>This is the <function>optimize </function>
method.</para>
</refsection>
-
+
<refsection>
<title>Parameters</title>
-
+
<itemizedlist>
- <listitem><para><literal>name</literal> - The name of
the
- table to open.</para></listitem>
+
<listitem><para><literal>thd</literal></para></listitem>
+
<listitem><para><literal>check_opt</literal></para></listitem>
</itemizedlist>
-
+
</refsection>
-
+
<refsection>
<title>Return Values</title>
-
+
+ <itemizedlist>
+ <listitem>
+ <para>
+ <literal></literal>
+ </para>
+ </listitem>
+ </itemizedlist>
+
+ </refsection>
+
+ <refsection>
+ <title>Usage</title>
+
+ <programlisting>
+
+ </programlisting>
+ </refsection>
+
+ <refsection>
+ <title>Default Implementation</title>
+
+ <programlisting>
+ { return HA_ADMIN_NOT_IMPLEMENTED; }
+ </programlisting>
+ </refsection>
+
+ </refentry>
+
+
+ <refentry id="custom-engine-api-reference-partition_flags">
+ <refmeta>
+ <refentrytitle>partition_flags</refentrytitle>
+ </refmeta>
+
+ <refnamediv>
+ <refname>partition_flags</refname>
+ <refpurpose></refpurpose>
+ </refnamediv>
+
+ <refsynopsisdiv>
+ <funcsynopsis>
+ <funcprototype>
+ <funcdef>virtual ulong
<function>partition_flags</function></funcdef>
+ <paramdef><parameter>void</parameter></paramdef>
+ </funcprototype>
+
+ </funcsynopsis>
+ </refsynopsisdiv>
+
+ <refsection>
+ <title>Description</title>
+
+ <para>This is the <function>partition_flags </function>
method.</para>
+ </refsection>
+
+ <refsection>
+ <title>Parameters</title>
+
<itemizedlist>
- <listitem>
- <para>
- <literal>0</literal> - Table successfully opened.
- </para>
- </listitem>
+
<listitem><para><literal>void</literal></para></listitem>
</itemizedlist>
-
+
</refsection>
-
+
<refsection>
+ <title>Return Values</title>
+
+ <itemizedlist>
+ <listitem>
+ <para>
+ <literal></literal>
+ </para>
+ </listitem>
+ </itemizedlist>
+
+ </refsection>
+
+ <refsection>
<title>Usage</title>
-
+
<programlisting>
- Put an example here.
+
</programlisting>
</refsection>
-
+
+ <refsection>
+ <title>Default Implementation</title>
+
+ <programlisting>
+ const { return 0;}
+ </programlisting>
+ </refsection>
+
</refentry>
+
+
+ <refentry id="custom-engine-api-reference-position">
+ <refmeta>
+ <refentrytitle>position</refentrytitle>
+ </refmeta>
+
+ <refnamediv>
+ <refname>position</refname>
+ <refpurpose></refpurpose>
+ </refnamediv>
+
+ <refsynopsisdiv>
+ <funcsynopsis>
+ <funcprototype>
+ <funcdef>virtual void
<function>position</function></funcdef>
+ <paramdef>const byte
*<parameter>record</parameter></paramdef>
+ </funcprototype>
+
+ </funcsynopsis>
+ </refsynopsisdiv>
+
+ <refsection>
+ <title>Description</title>
+
+ <para>This is the <function>position </function>
method.</para>
+ </refsection>
+
+ <refsection>
+ <title>Parameters</title>
+
+ <itemizedlist>
+
<listitem><para><literal>record</literal></para></listitem>
+ </itemizedlist>
+
+ </refsection>
+
+ <refsection>
+ <title>Return Values</title>
+
+ <itemizedlist>
+ <listitem>
+ <para>
+ <literal></literal>
+ </para>
+ </listitem>
+ </itemizedlist>
+
+ </refsection>
+
+ <refsection>
+ <title>Usage</title>
+
+ <programlisting>
+
+ </programlisting>
+ </refsection>
+
+ </refentry>
+
+
+ <refentry id="custom-engine-api-reference-preload_keys">
+ <refmeta>
+ <refentrytitle>preload_keys</refentrytitle>
+ </refmeta>
+
+ <refnamediv>
+ <refname>preload_keys</refname>
+ <refpurpose></refpurpose>
+ </refnamediv>
+
+ <refsynopsisdiv>
+ <funcsynopsis>
+ <funcprototype>
+ <funcdef>virtual int
<function>preload_keys</function></funcdef>
+ <paramdef>THD*<parameter>thd</parameter></paramdef>
+
<paramdef>HA_CHECK_OPT*<parameter>check_opt</parameter></paramdef>
+ </funcprototype>
+
+ </funcsynopsis>
+ </refsynopsisdiv>
+
+ <refsection>
+ <title>Description</title>
+
+ <para>This is the <function>preload_keys </function>
method.</para>
+ </refsection>
+
+ <refsection>
+ <title>Parameters</title>
+
+ <itemizedlist>
+
<listitem><para><literal>thd</literal></para></listitem>
+
<listitem><para><literal>check_opt</literal></para></listitem>
+ </itemizedlist>
+
+ </refsection>
+
+ <refsection>
+ <title>Return Values</title>
+
+ <itemizedlist>
+ <listitem>
+ <para>
+ <literal></literal>
+ </para>
+ </listitem>
+ </itemizedlist>
+
+ </refsection>
+
+ <refsection>
+ <title>Usage</title>
+
+ <programlisting>
+
+ </programlisting>
+ </refsection>
+
+ <refsection>
+ <title>Default Implementation</title>
+
+ <programlisting>
+ { return HA_ADMIN_NOT_IMPLEMENTED; }
+ </programlisting>
+ </refsection>
+
+ </refentry>
+
+
+ <refentry id="custom-engine-api-reference-primary_key_is_clustered">
+ <refmeta>
+ <refentrytitle>primary_key_is_clustered</refentrytitle>
+ </refmeta>
+
+ <refnamediv>
+ <refname>primary_key_is_clustered</refname>
+ <refpurpose></refpurpose>
+ </refnamediv>
+
+ <refsynopsisdiv>
+ <funcsynopsis>
+ <funcprototype>
+ <funcdef>virtual bool
<function>primary_key_is_clustered</function></funcdef>
+ <paramdef><parameter></parameter></paramdef>
+ </funcprototype>
+
+ </funcsynopsis>
+ </refsynopsisdiv>
+
+ <refsection>
+ <title>Description</title>
+
+ <para>This is the <function>primary_key_is_clustered </function>
method.</para>
+ </refsection>
+
+ <refsection>
+ <title>Parameters</title>
+
+ <itemizedlist>
+
<listitem><para><literal></literal></para></listitem>
+ </itemizedlist>
+
+ </refsection>
+
+ <refsection>
+ <title>Return Values</title>
+
+ <itemizedlist>
+ <listitem>
+ <para>
+ <literal></literal>
+ </para>
+ </listitem>
+ </itemizedlist>
+
+ </refsection>
+
+ <refsection>
+ <title>Usage</title>
+
+ <programlisting>
+
+ </programlisting>
+ </refsection>
+
+ <refsection>
+ <title>Default Implementation</title>
+
+ <programlisting>
+ { return FALSE; }
+ </programlisting>
+ </refsection>
+
+ </refentry>
+
+
+ <refentry id="custom-engine-api-reference-print_error">
+ <refmeta>
+ <refentrytitle>print_error</refentrytitle>
+ </refmeta>
+
+ <refnamediv>
+ <refname>print_error</refname>
+ <refpurpose></refpurpose>
+ </refnamediv>
+
+ <refsynopsisdiv>
+ <funcsynopsis>
+ <funcprototype>
+ <funcdef>virtual void
<function>print_error</function></funcdef>
+ <paramdef>int<parameter>error</parameter></paramdef>
+
<paramdef>myf<parameter>errflag</parameter></paramdef>
+ </funcprototype>
+
+ </funcsynopsis>
+ </refsynopsisdiv>
+
+ <refsection>
+ <title>Description</title>
+
+ <para>This is the <function>print_error </function>
method.</para>
+ </refsection>
+
+ <refsection>
+ <title>Parameters</title>
+
+ <itemizedlist>
+
<listitem><para><literal>error</literal></para></listitem>
+
<listitem><para><literal>errflag</literal></para></listitem>
+ </itemizedlist>
+
+ </refsection>
+
+ <refsection>
+ <title>Return Values</title>
+
+ <itemizedlist>
+ <listitem>
+ <para>
+ <literal></literal>
+ </para>
+ </listitem>
+ </itemizedlist>
+
+ </refsection>
+
+ <refsection>
+ <title>Usage</title>
+
+ <programlisting>
+
+ </programlisting>
+ </refsection>
+
+ </refentry>
+
+
+ <refentry id="custom-engine-api-reference-read_first_row">
+ <refmeta>
+ <refentrytitle>read_first_row</refentrytitle>
+ </refmeta>
+
+ <refnamediv>
+ <refname>read_first_row</refname>
+ <refpurpose></refpurpose>
+ </refnamediv>
+
+ <refsynopsisdiv>
+ <funcsynopsis>
+ <funcprototype>
+ <funcdef>virtual int
<function>read_first_row</function></funcdef>
+ <paramdef>byte *<parameter>buf</parameter></paramdef>
+
<paramdef>uint<parameter>primary_key</parameter></paramdef>
+ </funcprototype>
+
+ </funcsynopsis>
+ </refsynopsisdiv>
+
+ <refsection>
+ <title>Description</title>
+
+ <para>This is the <function>read_first_row </function>
method.</para>
+ </refsection>
+
+ <refsection>
+ <title>Parameters</title>
+
+ <itemizedlist>
+
<listitem><para><literal>buf</literal></para></listitem>
+
<listitem><para><literal>primary_key</literal></para></listitem>
+ </itemizedlist>
+
+ </refsection>
+
+ <refsection>
+ <title>Return Values</title>
+
+ <itemizedlist>
+ <listitem>
+ <para>
+ <literal></literal>
+ </para>
+ </listitem>
+ </itemizedlist>
+
+ </refsection>
+
+ <refsection>
+ <title>Usage</title>
+
+ <programlisting>
+
+ </programlisting>
+ </refsection>
+
+ </refentry>
+
+
+ <refentry id="custom-engine-api-reference-read_multi_range_first">
+ <refmeta>
+ <refentrytitle>read_multi_range_first</refentrytitle>
+ </refmeta>
+
+ <refnamediv>
+ <refname>read_multi_range_first</refname>
+ <refpurpose></refpurpose>
+ </refnamediv>
+
+ <refsynopsisdiv>
+ <funcsynopsis>
+ <funcprototype>
+ <funcdef>virtual int
<function>read_multi_range_first</function></funcdef>
+ <paramdef>KEY_MULTI_RANGE
**<parameter>found_range_p</parameter></paramdef>
+ <paramdef>KEY_MULTI_RANGE
*<parameter>ranges</parameter></paramdef>
+
<paramdef>uint<parameter>range_count</parameter></paramdef>
+
<paramdef>bool<parameter>sorted</parameter></paramdef>
+ <paramdef>HANDLER_BUFFER
*<parameter>buffer</parameter></paramdef>
+ </funcprototype>
+
+ </funcsynopsis>
+ </refsynopsisdiv>
+
+ <refsection>
+ <title>Description</title>
+
+ <para>This is the <function>read_multi_range_first </function>
method.</para>
+ </refsection>
+
+ <refsection>
+ <title>Parameters</title>
+
+ <itemizedlist>
+
<listitem><para><literal>found_range_p</literal></para></listitem>
+
<listitem><para><literal>ranges</literal></para></listitem>
+
<listitem><para><literal>range_count</literal></para></listitem>
+
<listitem><para><literal>sorted</literal></para></listitem>
+
<listitem><para><literal>buffer</literal></para></listitem>
+ </itemizedlist>
+
+ </refsection>
+
+ <refsection>
+ <title>Return Values</title>
+
+ <itemizedlist>
+ <listitem>
+ <para>
+ <literal></literal>
+ </para>
+ </listitem>
+ </itemizedlist>
+
+ </refsection>
+
+ <refsection>
+ <title>Usage</title>
+
+ <programlisting>
+
+ </programlisting>
+ </refsection>
+
+ </refentry>
+
+
+ <refentry id="custom-engine-api-reference-read_multi_range_next">
+ <refmeta>
+ <refentrytitle>read_multi_range_next</refentrytitle>
+ </refmeta>
+
+ <refnamediv>
+ <refname>read_multi_range_next</refname>
+ <refpurpose></refpurpose>
+ </refnamediv>
+
+ <refsynopsisdiv>
+ <funcsynopsis>
+ <funcprototype>
+ <funcdef>virtual int
<function>read_multi_range_next</function></funcdef>
+ <paramdef>KEY_MULTI_RANGE
**<parameter>found_range_p</parameter></paramdef>
+ </funcprototype>
+
+ </funcsynopsis>
+ </refsynopsisdiv>
+
+ <refsection>
+ <title>Description</title>
+
+ <para>This is the <function>read_multi_range_next </function>
method.</para>
+ </refsection>
+
+ <refsection>
+ <title>Parameters</title>
+
+ <itemizedlist>
+
<listitem><para><literal>found_range_p</literal></para></listitem>
+ </itemizedlist>
+
+ </refsection>
+
+ <refsection>
+ <title>Return Values</title>
+
+ <itemizedlist>
+ <listitem>
+ <para>
+ <literal></literal>
+ </para>
+ </listitem>
+ </itemizedlist>
+
+ </refsection>
+
+ <refsection>
+ <title>Usage</title>
+
+ <programlisting>
+
+ </programlisting>
+ </refsection>
+
+ </refentry>
+
+
+ <refentry id="custom-engine-api-reference-read_range_first">
+ <refmeta>
+ <refentrytitle>read_range_first</refentrytitle>
+ </refmeta>
+
+ <refnamediv>
+ <refname>read_range_first</refname>
+ <refpurpose></refpurpose>
+ </refnamediv>
+
+ <refsynopsisdiv>
+ <funcsynopsis>
+ <funcprototype>
+ <funcdef>virtual int
<function>read_range_first</function></funcdef>
+ <paramdef>const key_range
*<parameter>start_key</parameter></paramdef>
+ <paramdef>const key_range
*<parameter>end_key</parameter></paramdef>
+
<paramdef>bool<parameter>eq_range</parameter></paramdef>
+
<paramdef>bool<parameter>sorted</parameter></paramdef>
+ </funcprototype>
+
+ </funcsynopsis>
+ </refsynopsisdiv>
+
+ <refsection>
+ <title>Description</title>
+
+ <para>This is the <function>read_range_first </function>
method.</para>
+ </refsection>
+
+ <refsection>
+ <title>Parameters</title>
+
+ <itemizedlist>
+
<listitem><para><literal>start_key</literal></para></listitem>
+
<listitem><para><literal>end_key</literal></para></listitem>
+
<listitem><para><literal>eq_range</literal></para></listitem>
+
<listitem><para><literal>sorted</literal></para></listitem>
+ </itemizedlist>
+
+ </refsection>
+
+ <refsection>
+ <title>Return Values</title>
+
+ <itemizedlist>
+ <listitem>
+ <para>
+ <literal></literal>
+ </para>
+ </listitem>
+ </itemizedlist>
+
+ </refsection>
+
+ <refsection>
+ <title>Usage</title>
+
+ <programlisting>
+
+ </programlisting>
+ </refsection>
+
+ </refentry>
+
+
+ <refentry id="custom-engine-api-reference-read_range_next">
+ <refmeta>
+ <refentrytitle>read_range_next</refentrytitle>
+ </refmeta>
+
+ <refnamediv>
+ <refname>read_range_next</refname>
+ <refpurpose></refpurpose>
+ </refnamediv>
+
+ <refsynopsisdiv>
+ <funcsynopsis>
+ <funcprototype>
+ <funcdef>virtual int
<function>read_range_next</function></funcdef>
+ <paramdef><parameter></parameter></paramdef>
+ </funcprototype>
+
+ </funcsynopsis>
+ </refsynopsisdiv>
+
+ <refsection>
+ <title>Description</title>
+
+ <para>This is the <function>read_range_next </function>
method.</para>
+ </refsection>
+
+ <refsection>
+ <title>Parameters</title>
+
+ <itemizedlist>
+
<listitem><para><literal></literal></para></listitem>
+ </itemizedlist>
+
+ </refsection>
+
+ <refsection>
+ <title>Return Values</title>
+
+ <itemizedlist>
+ <listitem>
+ <para>
+ <literal></literal>
+ </para>
+ </listitem>
+ </itemizedlist>
+
+ </refsection>
+
+ <refsection>
+ <title>Usage</title>
+
+ <programlisting>
+
+ </programlisting>
+ </refsection>
+
+ </refentry>
+
+
+ <refentry id="custom-engine-api-reference-read_time">
+ <refmeta>
+ <refentrytitle>read_time</refentrytitle>
+ </refmeta>
+
+ <refnamediv>
+ <refname>read_time</refname>
+ <refpurpose></refpurpose>
+ </refnamediv>
+
+ <refsynopsisdiv>
+ <funcsynopsis>
+ <funcprototype>
+ <funcdef>virtual double
<function>read_time</function></funcdef>
+ <paramdef>uint<parameter>index</parameter></paramdef>
+
<paramdef>uint<parameter>ranges</parameter></paramdef>
+
<paramdef>ha_rows<parameter>rows</parameter></paramdef>
+ </funcprototype>
+
+ </funcsynopsis>
+ </refsynopsisdiv>
+
+ <refsection>
+ <title>Description</title>
+
+ <para>This is the <function>read_time </function>
method.</para>
+ </refsection>
+
+ <refsection>
+ <title>Parameters</title>
+
+ <itemizedlist>
+
<listitem><para><literal>index</literal></para></listitem>
+
<listitem><para><literal>ranges</literal></para></listitem>
+
<listitem><para><literal>rows</literal></para></listitem>
+ </itemizedlist>
+
+ </refsection>
+
+ <refsection>
+ <title>Return Values</title>
+
+ <itemizedlist>
+ <listitem>
+ <para>
+ <literal></literal>
+ </para>
+ </listitem>
+ </itemizedlist>
+
+ </refsection>
+
+ <refsection>
+ <title>Usage</title>
+
+ <programlisting>
+
+ </programlisting>
+ </refsection>
+
+ <refsection>
+ <title>Default Implementation</title>
+
+ <programlisting>
+ { return rows2double(ranges+rows); }
+ </programlisting>
+ </refsection>
+
+ </refentry>
+
+
+ <refentry id="custom-engine-api-reference-records_in_range">
+ <refmeta>
+ <refentrytitle>records_in_range</refentrytitle>
+ </refmeta>
+
+ <refnamediv>
+ <refname>records_in_range</refname>
+ <refpurpose></refpurpose>
+ </refnamediv>
+
+ <refsynopsisdiv>
+ <funcsynopsis>
+ <funcprototype>
+ <funcdef>virtual ha_rows
<function>records_in_range</function></funcdef>
+ <paramdef>uint<parameter>inx</parameter></paramdef>
+ <paramdef>key_range
*<parameter>min_key</parameter></paramdef>
+ <paramdef>key_range
*<parameter>max_key</parameter></paramdef>
+ </funcprototype>
+
+ </funcsynopsis>
+ </refsynopsisdiv>
+
+ <refsection>
+ <title>Description</title>
+
+ <para>This is the <function>records_in_range </function>
method.</para>
+ </refsection>
+
+ <refsection>
+ <title>Parameters</title>
+
+ <itemizedlist>
+
<listitem><para><literal>inx</literal></para></listitem>
+
<listitem><para><literal>min_key</literal></para></listitem>
+
<listitem><para><literal>max_key</literal></para></listitem>
+ </itemizedlist>
+
+ </refsection>
+
+ <refsection>
+ <title>Return Values</title>
+
+ <itemizedlist>
+ <listitem>
+ <para>
+ <literal></literal>
+ </para>
+ </listitem>
+ </itemizedlist>
+
+ </refsection>
+
+ <refsection>
+ <title>Usage</title>
+
+ <programlisting>
+
+ </programlisting>
+ </refsection>
+
+ <refsection>
+ <title>Default Implementation</title>
+
+ <programlisting>
+ { return (ha_rows) 10; }
+ </programlisting>
+ </refsection>
+
+ </refentry>
+
+
+ <refentry id="custom-engine-api-reference-referenced_by_foreign_key">
+ <refmeta>
+ <refentrytitle>referenced_by_foreign_key</refentrytitle>
+ </refmeta>
+
+ <refnamediv>
+ <refname>referenced_by_foreign_key</refname>
+ <refpurpose></refpurpose>
+ </refnamediv>
+
+ <refsynopsisdiv>
+ <funcsynopsis>
+ <funcprototype>
+ <funcdef>virtual uint
<function>referenced_by_foreign_key</function></funcdef>
+ <paramdef><parameter></parameter></paramdef>
+ </funcprototype>
+
+ </funcsynopsis>
+ </refsynopsisdiv>
+
+ <refsection>
+ <title>Description</title>
+
+ <para>This is the <function>referenced_by_foreign_key
</function> method.</para>
+ </refsection>
+
+ <refsection>
+ <title>Parameters</title>
+
+ <itemizedlist>
+
<listitem><para><literal></literal></para></listitem>
+ </itemizedlist>
+
+ </refsection>
+
+ <refsection>
+ <title>Return Values</title>
+
+ <itemizedlist>
+ <listitem>
+ <para>
+ <literal></literal>
+ </para>
+ </listitem>
+ </itemizedlist>
+
+ </refsection>
+
+ <refsection>
+ <title>Usage</title>
+
+ <programlisting>
+
+ </programlisting>
+ </refsection>
+
+ <refsection>
+ <title>Default Implementation</title>
+
+ <programlisting>
+ { return 0;}
+ </programlisting>
+ </refsection>
+
+ </refentry>
+
+
+ <refentry id="custom-engine-api-reference-register_query_cache_table">
+ <refmeta>
+ <refentrytitle>register_query_cache_table</refentrytitle>
+ </refmeta>
+
+ <refnamediv>
+ <refname>register_query_cache_table</refname>
+ <refpurpose></refpurpose>
+ </refnamediv>
+
+ <refsynopsisdiv>
+ <funcsynopsis>
+ <funcprototype>
+ <funcdef>virtual my_bool
<function>register_query_cache_table</function></funcdef>
+ <paramdef>THD *<parameter>thd</parameter></paramdef>
+ <paramdef>char
*<parameter>table_key</parameter></paramdef>
+
<paramdef>uint<parameter>key_length</parameter></paramdef>
+ <paramdef>qc_engine_callback
*<parameter>engine_callback</parameter></paramdef>
+ <paramdef>ulonglong
*<parameter>engine_data</parameter></paramdef>
+ </funcprototype>
+
+ </funcsynopsis>
+ </refsynopsisdiv>
+
+ <refsection>
+ <title>Description</title>
+
+ <para>This is the <function>register_query_cache_table
</function> method.</para>
+ </refsection>
+
+ <refsection>
+ <title>Parameters</title>
+
+ <itemizedlist>
+
<listitem><para><literal>thd</literal></para></listitem>
+
<listitem><para><literal>table_key</literal></para></listitem>
+
<listitem><para><literal>key_length</literal></para></listitem>
+
<listitem><para><literal>engine_callback</literal></para></listitem>
+
<listitem><para><literal>engine_data</literal></para></listitem>
+ </itemizedlist>
+
+ </refsection>
+
+ <refsection>
+ <title>Return Values</title>
+
+ <itemizedlist>
+ <listitem>
+ <para>
+ <literal></literal>
+ </para>
+ </listitem>
+ </itemizedlist>
+
+ </refsection>
+
+ <refsection>
+ <title>Usage</title>
+
+ <programlisting>
+
+ </programlisting>
+ </refsection>
+
+ <refsection>
+ <title>Default Implementation</title>
+
+ <programlisting>
+ { *engine_callback= 0; return 1; }
+ </programlisting>
+ </refsection>
+
+ </refentry>
+
+
+ <refentry id="custom-engine-api-reference-rename_table">
+ <refmeta>
+ <refentrytitle>rename_table</refentrytitle>
+ </refmeta>
+
+ <refnamediv>
+ <refname>rename_table</refname>
+ <refpurpose></refpurpose>
+ </refnamediv>
+
+ <refsynopsisdiv>
+ <funcsynopsis>
+ <funcprototype>
+ <funcdef>virtual int
<function>rename_table</function></funcdef>
+ <paramdef>const char
*<parameter>from</parameter></paramdef>
+ <paramdef>const char
*<parameter>to</parameter></paramdef>
+ </funcprototype>
+
+ </funcsynopsis>
+ </refsynopsisdiv>
+
+ <refsection>
+ <title>Description</title>
+
+ <para>This is the <function>rename_table </function>
method.</para>
+ </refsection>
+
+ <refsection>
+ <title>Parameters</title>
+
+ <itemizedlist>
+
<listitem><para><literal>from</literal></para></listitem>
+
<listitem><para><literal>to</literal></para></listitem>
+ </itemizedlist>
+
+ </refsection>
+
+ <refsection>
+ <title>Return Values</title>
+
+ <itemizedlist>
+ <listitem>
+ <para>
+ <literal></literal>
+ </para>
+ </listitem>
+ </itemizedlist>
+
+ </refsection>
+
+ <refsection>
+ <title>Usage</title>
+
+ <programlisting>
+
+ </programlisting>
+ </refsection>
+
+ </refentry>
+
+
+ <refentry id="custom-engine-api-reference-repair">
+ <refmeta>
+ <refentrytitle>repair</refentrytitle>
+ </refmeta>
+
+ <refnamediv>
+ <refname>repair</refname>
+ <refpurpose></refpurpose>
+ </refnamediv>
+
+ <refsynopsisdiv>
+ <funcsynopsis>
+ <funcprototype>
+ <funcdef>virtual int
<function>repair</function></funcdef>
+ <paramdef>THD*<parameter>thd</parameter></paramdef>
+
<paramdef>HA_CHECK_OPT*<parameter>check_opt</parameter></paramdef>
+ </funcprototype>
+
+ </funcsynopsis>
+ </refsynopsisdiv>
+
+ <refsection>
+ <title>Description</title>
+
+ <para>This is the <function>repair </function>
method.</para>
+ </refsection>
+
+ <refsection>
+ <title>Parameters</title>
+
+ <itemizedlist>
+
<listitem><para><literal>thd</literal></para></listitem>
+
<listitem><para><literal>check_opt</literal></para></listitem>
+ </itemizedlist>
+
+ </refsection>
+
+ <refsection>
+ <title>Return Values</title>
+
+ <itemizedlist>
+ <listitem>
+ <para>
+ <literal></literal>
+ </para>
+ </listitem>
+ </itemizedlist>
+
+ </refsection>
+
+ <refsection>
+ <title>Usage</title>
+
+ <programlisting>
+
+ </programlisting>
+ </refsection>
+
+ <refsection>
+ <title>Default Implementation</title>
+
+ <programlisting>
+ { return HA_ADMIN_NOT_IMPLEMENTED; }
+ </programlisting>
+ </refsection>
+
+ </refentry>
+
+
+ <refentry id="custom-engine-api-reference-reset">
+ <refmeta>
+ <refentrytitle>reset</refentrytitle>
+ </refmeta>
+
+ <refnamediv>
+ <refname>reset</refname>
+ <refpurpose></refpurpose>
+ </refnamediv>
+
+ <refsynopsisdiv>
+ <funcsynopsis>
+ <funcprototype>
+ <funcdef>virtual int
<function>reset</function></funcdef>
+ <paramdef><parameter></parameter></paramdef>
+ </funcprototype>
+
+ </funcsynopsis>
+ </refsynopsisdiv>
+
+ <refsection>
+ <title>Description</title>
+
+ <para>This is the <function>reset </function>
method.</para>
+ </refsection>
+
+ <refsection>
+ <title>Parameters</title>
+
+ <itemizedlist>
+
<listitem><para><literal></literal></para></listitem>
+ </itemizedlist>
+
+ </refsection>
+
+ <refsection>
+ <title>Return Values</title>
+
+ <itemizedlist>
+ <listitem>
+ <para>
+ <literal></literal>
+ </para>
+ </listitem>
+ </itemizedlist>
+
+ </refsection>
+
+ <refsection>
+ <title>Usage</title>
+
+ <programlisting>
+
+ </programlisting>
+ </refsection>
+
+ <refsection>
+ <title>Default Implementation</title>
+
+ <programlisting>
+ { return extra(HA_EXTRA_RESET); }
+ </programlisting>
+ </refsection>
+
+ </refentry>
+
+
+ <refentry id="custom-engine-api-reference-reset_auto_increment">
+ <refmeta>
+ <refentrytitle>reset_auto_increment</refentrytitle>
+ </refmeta>
+
+ <refnamediv>
+ <refname>reset_auto_increment</refname>
+ <refpurpose></refpurpose>
+ </refnamediv>
+
+ <refsynopsisdiv>
+ <funcsynopsis>
+ <funcprototype>
+ <funcdef>virtual int
<function>reset_auto_increment</function></funcdef>
+
<paramdef>ulonglong<parameter>value</parameter></paramdef>
+ </funcprototype>
+
+ </funcsynopsis>
+ </refsynopsisdiv>
+
+ <refsection>
+ <title>Description</title>
+
+ <para>This is the <function>reset_auto_increment </function>
method.</para>
+ </refsection>
+
+ <refsection>
+ <title>Parameters</title>
+
+ <itemizedlist>
+
<listitem><para><literal>value</literal></para></listitem>
+ </itemizedlist>
+
+ </refsection>
+
+ <refsection>
+ <title>Return Values</title>
+
+ <itemizedlist>
+ <listitem>
+ <para>
+ <literal></literal>
+ </para>
+ </listitem>
+ </itemizedlist>
+
+ </refsection>
+
+ <refsection>
+ <title>Usage</title>
+
+ <programlisting>
+
+ </programlisting>
+ </refsection>
+
+ <refsection>
+ <title>Default Implementation</title>
+
+ <programlisting>
+ { return HA_ERR_WRONG_COMMAND; }
+ </programlisting>
+ </refsection>
+
+ </refentry>
+
+
+ <refentry id="custom-engine-api-reference-restart_rnd_next">
+ <refmeta>
+ <refentrytitle>restart_rnd_next</refentrytitle>
+ </refmeta>
+
+ <refnamediv>
+ <refname>restart_rnd_next</refname>
+ <refpurpose></refpurpose>
+ </refnamediv>
+
+ <refsynopsisdiv>
+ <funcsynopsis>
+ <funcprototype>
+ <funcdef>virtual int
<function>restart_rnd_next</function></funcdef>
+ <paramdef>byte *<parameter>buf</parameter></paramdef>
+ <paramdef>byte *<parameter>pos</parameter></paramdef>
+ </funcprototype>
+
+ </funcsynopsis>
+ </refsynopsisdiv>
+
+ <refsection>
+ <title>Description</title>
+
+ <para>This is the <function>restart_rnd_next </function>
method.</para>
+ </refsection>
+
+ <refsection>
+ <title>Parameters</title>
+
+ <itemizedlist>
+
<listitem><para><literal>buf</literal></para></listitem>
+
<listitem><para><literal>pos</literal></para></listitem>
+ </itemizedlist>
+
+ </refsection>
+
+ <refsection>
+ <title>Return Values</title>
+
+ <itemizedlist>
+ <listitem>
+ <para>
+ <literal></literal>
+ </para>
+ </listitem>
+ </itemizedlist>
+
+ </refsection>
+
+ <refsection>
+ <title>Usage</title>
+
+ <programlisting>
+
+ </programlisting>
+ </refsection>
+
+ <refsection>
+ <title>Default Implementation</title>
+
+ <programlisting>
+ { return HA_ERR_WRONG_COMMAND; }
+ </programlisting>
+ </refsection>
+
+ </refentry>
+
+
+ <refentry id="custom-engine-api-reference-restore">
+ <refmeta>
+ <refentrytitle>restore</refentrytitle>
+ </refmeta>
+
+ <refnamediv>
+ <refname>restore</refname>
+ <refpurpose></refpurpose>
+ </refnamediv>
+
+ <refsynopsisdiv>
+ <funcsynopsis>
+ <funcprototype>
+ <funcdef>virtual int
<function>restore</function></funcdef>
+ <paramdef>THD*<parameter>thd</parameter></paramdef>
+
<paramdef>HA_CHECK_OPT*<parameter>check_opt</parameter></paramdef>
+ </funcprototype>
+
+ </funcsynopsis>
+ </refsynopsisdiv>
+
+ <refsection>
+ <title>Description</title>
+
+ <para>This is the <function>restore </function>
method.</para>
+ </refsection>
+
+ <refsection>
+ <title>Parameters</title>
+
+ <itemizedlist>
+
<listitem><para><literal>thd</literal></para></listitem>
+
<listitem><para><literal>check_opt</literal></para></listitem>
+ </itemizedlist>
+
+ </refsection>
+
+ <refsection>
+ <title>Return Values</title>
+
+ <itemizedlist>
+ <listitem>
+ <para>
+ <literal></literal>
+ </para>
+ </listitem>
+ </itemizedlist>
+
+ </refsection>
+
+ <refsection>
+ <title>Usage</title>
+
+ <programlisting>
+
+ </programlisting>
+ </refsection>
+
+ <refsection>