backtraceでみるパーティショニング機能のON/OFF

結論からいうと、handler API呼出し時に、各ストレージエンジンのサブクラスのメソッド呼出しに行く1つ前にpartitionテーブルハンドラのメソッド呼出しが入るだけのようです。

パーティショニング機能を使っていないMyISAM型テーブルへのINSERT時。

Breakpoint 1, mi_write (info=0x8b90420, record=0x8b8fd88 "ý\n") at mi_write.c:46
(gdb) bt
#0  mi_write (info=0x8b90420, record=0x8b8fd88 "ý\n") at mi_write.c:46
#1  0x0841c6d2 in ha_myisam::write_row (this=0x8b8fc78, buf=0x8b8fd88 "ý\n") at ha_myisam.cc:353
#2  0x082b26ad in handler::ha_write_row (this=0x8b8fc78, buf=0x8b8fd88 "ý\n") at handler.cc:3652
#3  0x082534ba in write_record (thd=0x8b63e90, table=0x8b8ee00, info=0xa4f794d0) at sql_insert.cc:1242
#4  0x08256070 in mysql_insert (thd=0x8b63e90, table_list=0x8b88878, fields=@0x8b643dc, values_list=@0x8b64400, update_fields=@0x8b643f4, update_values=@0x8b643e8, duplic=DUP_ERROR, ignore=false)
    at sql_insert.cc:569
#5  0x081f1a94 in mysql_execute_command (thd=0x8b63e90) at sql_parse.cc:3457
#6  0x081f782d in mysql_parse (thd=0x8b63e90, inBuf=0x8b887f8 "insert into t2 values (10)", length=26) at sql_parse.cc:6103
#7  0x081f8183 in dispatch_command (command=COM_QUERY, thd=0x8b63e90, packet=0x8b807c9 "insert into t2 values (10)", packet_length=27) at sql_parse.cc:1862
#8  0x081f90e9 in do_command (thd=0x8b63e90) at sql_parse.cc:1631
#9  0x081f9565 in handle_one_connection (arg=0x8b63e90) at sql_parse.cc:1237
#10 0xa7f4a240 in start_thread () from /lib/tls/i686/cmov/libpthread.so.0
#11 0xa7d8532e in clone () from /lib/tls/i686/cmov/libc.so.6

パーティショニング機能を使っているMyISAM型テーブルへのINSERT時。

Breakpoint 1, mi_write (info=0x8b8e538, record=0x8b8ca78 "ý\n") at mi_write.c:46
Current language:  auto; currently c
(gdb) bt
#0  mi_write (info=0x8b8e538, record=0x8b8ca78 "ý\n") at mi_write.c:46
#1  0x0841c6d2 in ha_myisam::write_row (this=0x8b8cc78, buf=0x8b8ca78 "ý\n") at ha_myisam.cc:353
#2  0x082bbe10 in ha_partition::write_row (this=0x8b8c780, buf=0x8b8ca78 "ý\n") at ha_partition.cc:2681
#3  0x082b26ad in handler::ha_write_row (this=0x8b8c780, buf=0x8b8ca78 "ý\n") at handler.cc:3652
#4  0x082534ba in write_record (thd=0x8b63e90, table=0x8b44148, info=0xa4f794d0) at sql_insert.cc:1242
#5  0x08256070 in mysql_insert (thd=0x8b63e90, table_list=0x8b88878, fields=@0x8b643dc, values_list=@0x8b64400, update_fields=@0x8b643f4, update_values=@0x8b643e8, duplic=DUP_ERROR, ignore=false)
    at sql_insert.cc:569
#6  0x081f1a94 in mysql_execute_command (thd=0x8b63e90) at sql_parse.cc:3457
#7  0x081f782d in mysql_parse (thd=0x8b63e90, inBuf=0x8b887f8 "insert into t1 values (10)", length=26) at sql_parse.cc:6103
#8  0x081f8183 in dispatch_command (command=COM_QUERY, thd=0x8b63e90, packet=0x8b807c9 "insert into t1 values (10)", packet_length=27) at sql_parse.cc:1862
#9  0x081f90e9 in do_command (thd=0x8b63e90) at sql_parse.cc:1631
#10 0x081f9565 in handle_one_connection (arg=0x8b63e90) at sql_parse.cc:1237
#11 0xa7f4a240 in start_thread () from /lib/tls/i686/cmov/libpthread.so.0
#12 0xa7d8532e in clone () from /lib/tls/i686/cmov/libc.so.6

要するに、ha_parition.ccを嫁と。--with-plugins=partitionの通りですよということみたいです。