1# Let's store 100 million integers
2
3catch { load ../builds/.libs/libmk4tcl[info sharedlibextension] Mk4tcl }
4puts "[info script] - Mk4tcl [package require Mk4tcl] - $tcl_platform(os)"
5
6file delete bigdata.mk
7mk::file open db bigdata.mk
8mk::view layout db.v {{_B {a:I}}}
9
10set bv [[mk::view open db.v] view blocked]
11
12set n 0
13
14puts " filled    commit   #blocks   filesize   memuse        total"
15
16for {set i 0} {$i < 20} {incr i} {
17
18  set s [clock seconds]
19  for {set j 0} {$j < 5000000} {incr j} {
20    $bv insert end a [incr n]
21  }
22  set t [expr {[clock seconds] - $s}]
23  set u [expr {[lindex [time {mk::file commit db}] 0]/1000.0}]
24  set v [mk::view size db.v]
25  set w [file size bigdata.mk]
26  set x [lindex [exec ps l --noheader [pid]] 7]
27  set y [$bv size]
28
29  puts [format {%6s s %7.1f ms %6d %10d b %6d K %10d rows} $t $u $v $w $x $y]
30}
31