--- parser3/src/classes/table.C 2001/11/23 12:56:37 1.134 +++ parser3/src/classes/table.C 2001/12/25 09:00:28 1.137 @@ -4,11 +4,10 @@ Copyright (c) 2001 ArtLebedev Group (http://www.artlebedev.com) Author: Alexander Petrosyan (http://paf.design.ru) - $Id: table.C,v 1.134 2001/11/23 12:56:37 paf Exp $ + $Id: table.C,v 1.137 2001/12/25 09:00:28 paf Exp $ */ #include "classes.h" -#include "pa_config_includes.h" #include "pa_common.h" #include "pa_request.h" #include "pa_vtable.h" @@ -51,15 +50,15 @@ static void _set(Request& r, const Strin columns=new(pool) Array(pool); Array head(pool); - data.split(head, &pos_after, "\n", 1, String::UL_CLEAN, 1); + data.split(head, &pos_after, "\n", 1, String::UL_AS_IS, 1); if(head.size()) - head.get_string(0)->split(*columns, 0, "\t", 1, String::UL_CLEAN); + head.get_string(0)->split(*columns, 0, "\t", 1, String::UL_AS_IS); } Table& table=*new(pool) Table(pool, &method_name, columns); // parse cells Array rows(pool); - data.split(rows, &pos_after, "\n", 1, String::UL_CLEAN); + data.split(rows, &pos_after, "\n", 1, String::UL_AS_IS); Array_iter i(rows); while(i.has_next()) { Array& row=*new(pool) Array(pool); @@ -68,7 +67,7 @@ static void _set(Request& r, const Strin if(!string.size()) continue; - string.split(row, 0, "\t", 1, String::UL_CLEAN); + string.split(row, 0, "\t", 1, String::UL_AS_IS); table+=&row; } @@ -432,7 +431,7 @@ static void _append(Request& r, const St // parse cells Array& row=*new(pool) Array(pool); - string.split(row, 0, "\t", 1, String::UL_CLEAN); + string.split(row, 0, "\t", 1, String::UL_AS_IS); VTable& vtable=*static_cast(r.self); vtable.table()+=&row; @@ -550,9 +549,25 @@ static void _sql(Request& r, const Strin Table_sql_event_handlers handlers(pool, method_name, statement_string, statement_cstr); try { +#ifdef RESOURCES_DEBUG + struct timeval mt[2]; + //measure:before + gettimeofday(&mt[0],NULL); +#endif r.connection->query( statement_cstr, offset, limit, handlers); + +#ifdef RESOURCES_DEBUG + //measure:after connect + gettimeofday(&mt[1],NULL); + + double t[2]; + for(int i=0;i<2;i++) + t[i]=mt[i].tv_sec+mt[i].tv_usec/1000000.0; + + r.sql_request_time+=t[1]-t[0]; +#endif } catch(const Exception& e) { // query problem // more specific source [were url] throw Exception(e.type(), e.code(),