*** pool_rewrite_query.c.orig 2009-08-22 13:04:21.000000000 +0900 --- pool_rewrite_query.c 2010-03-09 10:13:13.000000000 +0900 *************** *** 82,94 **** --- 82,100 ---- if(!obj) { + pool_debug("getInsertRule chk:TypeCast"); + /* return -1; + */ } } if(obj && !IsA(obj, A_Const)) { + pool_debug("getInsertRule chk:A_Const"); + /* return -1; + */ } if (loop_counter == div_key_num) *************** *** 462,467 **** --- 468,483 ---- /* Improve UpdateStmt for complex query */ break; #endif + case T_VariableSetStmt: + pool_debug("rewrite_query_stmt: VariableSetStmt"); + POOL_CONNECTION_POOL_SLOT *system_db = pool_system_db_connection(); + message->type = node->type; + + POOL_SELECT_RESULT *res; + message->status = do_query(system_db->con,frontend->buf2,&res,system_db->sp->major); + free_select_result(res); + + break; default: message->type = node->type; message->status = POOL_CONTINUE;