$Revision: 1.7 $
Radix tree (rx). rx_payload.c - functions to operate on user data (creation/deletion).
Status: NOT REVUED, UNTESTED, INCOMPLETE
Design and implementation by: Marek Bukowy
********************************************************************* Ascii frontend - translates key according to attr and calls rx_uni_node. FOR TESTING PURPOSES ONLY *********************************************************************er_ret_t RP_asc_node ( rx_oper_mt mode, char* rangstr, rp_attr_t attr, rp_regid_t reg_id, void* data, int datalen, sql_key_t key )
Prototyped in: | include/rp.h | |
Calls: | ER_dbg_va() | modules/er/er.c |
RP_asc2uni() | modules/rp/rp_convert.c | |
RP_uni_node() | modules/rp/rp_update.c | |
Called by: | RP_asc_load() | modules/rp/rp_load.c |
Prototyped in: | include/rp.h | |
Calls: | RP_uni_node() | modules/rp/rp_update.c |
rp_make_short() | modules/rp/rp_convert.c |
Prototyped in: | include/rp.h | |
Calls: | RP_uni_node_l() | modules/rp/rp_update.c |
rp_make_short() | modules/rp/rp_convert.c | |
strlen() | ||
Called by: | RP_sql_load_attr_space() | modules/rp/rp_load.c |
***************************************************************er_ret_t RP_uni_node ( rx_oper_mt mode, rp_uni_t* uni, rp_attr_t attr, rp_regid_t reg_id, void* data, int datalen, sql_key_t key )
MAIN FRONTEND FUNCTION
finds tree, locks it.
builds a dataleaf and puts into the node(s), calling rx_bin_node for every prefix.
MT-note: locks/unlocks the tree.
Prototyped in: | include/rp.h | |
Calls: | RP_tree_get() | modules/rp/rp_tree.c |
RP_uni_node_l() | modules/rp/rp_update.c | |
TH_acquire_write_lock(), TH_release_write_lock(), fprintf() | ||
Called by: | RP_asc_node() | modules/rp/rp_update.c |
RP_pack_node() | modules/rp/rp_update.c |
*************************************************************** assumes locked treeer_ret_t RP_uni_node_l ( rx_oper_mt mode, rp_uni_t* uni, rx_tree_t* mytree, void* data, int datalen, sql_key_t key )
Calls: | RX_in_node(), RX_rt_node(), fprintf(), memcpy(), wr_real_calloc(), wr_real_free(), wr_real_malloc() | |
Called by: | RP_pack_node_l() | modules/rp/rp_update.c |
RP_uni_node() | modules/rp/rp_update.c |