updateperf.p
1 |
def temp-table tt1 no-undo |
---|---|
2 |
field f1 as int |
3 |
field f2 as int |
4 |
field f3 as int |
5 |
field f4 as int |
6 |
field f5 as int |
7 |
field f6 as int |
8 |
field f7 as int |
9 |
field f8 as int |
10 |
field f9 as int |
11 |
field f10 as int |
12 |
field f11 as int |
13 |
field f12 as int |
14 |
field f13 as int |
15 |
field f14 as int |
16 |
field f15 as int |
17 |
field f16 as int |
18 |
field f17 as int |
19 |
field f18 as int |
20 |
field f19 as int |
21 |
field f20 as int |
22 |
field f21 as int |
23 |
field f22 as int |
24 |
field f23 as int |
25 |
field f24 as int |
26 |
field f25 as int |
27 |
field f26 as int |
28 |
field f27 as int |
29 |
field f28 as int |
30 |
field f29 as int |
31 |
field f30 as int |
32 |
field f31 as int |
33 |
field f32 as int |
34 |
field f33 as int |
35 |
field f34 as int |
36 |
field f35 as int |
37 |
field f36 as int |
38 |
field f37 as int |
39 |
field f38 as int |
40 |
field f39 as int |
41 |
field f40 as int |
42 |
field f41 as int |
43 |
field f42 as int |
44 |
field f43 as int |
45 |
field f44 as int |
46 |
field f45 as int |
47 |
field f46 as int |
48 |
field f47 as int |
49 |
field f48 as int |
50 |
field f49 as int |
51 |
field f50 as int |
52 |
field f51 as int |
53 |
field f52 as int |
54 |
field f53 as int |
55 |
field f54 as int |
56 |
field f55 as int |
57 |
field f56 as int |
58 |
field f57 as int |
59 |
field f58 as int |
60 |
field f59 as int |
61 |
field f60 as int |
62 |
field f61 as int |
63 |
field f62 as int |
64 |
field f63 as int |
65 |
field f64 as int |
66 |
field f65 as int |
67 |
field f66 as int |
68 |
field f67 as int |
69 |
field f68 as int |
70 |
field f69 as int |
71 |
field f70 as int |
72 |
field f71 as int |
73 |
field f72 as int |
74 |
field f73 as int |
75 |
field f74 as int |
76 |
field f75 as int |
77 |
field f76 as int |
78 |
field f77 as int |
79 |
field f78 as int |
80 |
field f79 as int |
81 |
field f80 as int |
82 |
index ix1 f1 f3 f4 f5 f6 f7 f8 f9 f10 |
83 |
index ix2 f11 f13 f14 f15 f16 f17 f18 f19 f20 |
84 |
index ix3 f21 f23 f24 f25 f26 f27 f28 f29 f30 |
85 |
index ix4 f31 f33 f34 f35 f36 f37 f38 f39 f40 |
86 |
index ix5 f41 f43 f44 f45 f46 f47 f48 f49 f50 |
87 |
index ix6 f51 f53 f54 f55 f56 f57 f58 f59 f60. |
88 |
|
89 |
|
90 |
def var i as int. |
91 |
def var l1 as int64. |
92 |
def var l2 as int64. |
93 |
|
94 |
do i = 1 to 10000: |
95 |
create tt1. |
96 |
tt1.f1 = i * 100 + 1. |
97 |
tt1.f2 = i * 100 + 2. |
98 |
tt1.f3 = i * 100 + 3. |
99 |
release tt1. |
100 |
end. |
101 |
|
102 |
find first tt1 where tt1.f1 = 50 * 100 + 1. |
103 |
|
104 |
// stress-test indexed update |
105 |
l1 = etime. |
106 |
do i = 1 to 10000: |
107 |
tt1.f1 = - tt1.f1. |
108 |
end. |
109 |
l2 = etime. |
110 |
message "indexed" (l2 - l1) "ms". |
111 |
|
112 |
// stress-test non-indexed update |
113 |
l1 = etime. |
114 |
do i = 1 to 10000: |
115 |
tt1.f2 = - tt1.f2. |
116 |
end. |
117 |
l2 = etime. |
118 |
message "non-indexed" (l2 - l1) "ms". |