nsmcp::AccessRecordStoreSQLite method prepareSelected (protected)
<instance of nsmcp::AccessRecordStoreSQLite> prepareSelected \ selected count estimatedBytes
Defined in /usr/local/ns/tcl/nsmcp/log-traffic-record-store.tcl
- Parameters:
- selected (required)
- count (required)
- estimatedBytes (required)
- Testcases:
- No testcase defined.
Source code: set :selectedSource temp.nsmcp_record_window set :selectedPredicate {} dict set :queryMetrics selectedRecords $count dict set :queryMetrics selectedEstimatedBytes $estimatedBytes dict set :queryMetrics selectedRowLimit 10000 dict set :queryMetrics selectedEstimatedByteLimit 16777216 dict set :queryMetrics selectionSource detailed-rows # Bound both row count and estimated copied payload. The estimate includes # text representations and per-row overhead; it is not an allocator limit. set reuse [expr {$count<=10000 && $estimatedBytes<=16777216}] set queryOnly [${:db} scalar {PRAGMA query_only}] try { ${:db} execute {PRAGMA query_only=OFF} ${:db} execute {DROP TABLE IF EXISTS temp.nsmcp_record_selected} if {$reuse} { set where [expr {$count==0 ? "0" : $selected}] ${:db} execute "CREATE TEMP TABLE nsmcp_record_selected AS SELECT * FROM temp.nsmcp_record_window WHERE $where" set :selectedSource temp.nsmcp_record_selected set :selectedPredicate $selected dict set :queryMetrics selectionSource temporary-selection } } finally { ${:db} execute "PRAGMA query_only=$queryOnly" }XQL Not present: Generic, PostgreSQL, Oracle
![[i]](/resources/acs-subsite/ZoomIn16.gif)