@@ -5,6 +5,9 @@ new-txn txn=t1
55put txn=t1 k=a v=bar
66----
77
8+ put txn=t1 k=b v=baz
9+ ----
10+
811commit txn=t1
912----
1013
@@ -34,3 +37,145 @@ key: "\xfaa", str: Exclusive, txn: t2
3437
3538commit txn=t2
3639----
40+
41+ # MaxSpanRequestKeys Limit
42+ new-txn txn=t3
43+ ----
44+
45+ get txn=t3 k=a lock=Exclusive dur=Unreplicated
46+ ----
47+ get: "\xfaa"="bar"
48+
49+ get txn=t3 k=b lock=Exclusive dur=Unreplicated
50+ ----
51+ get: "\xfab"="baz"
52+
53+ print-in-memory-lock-table
54+ ----
55+ num=2
56+ lock: "\xfaa"
57+ holder: txn: t3 epoch: 0, iso: Serializable, ts: <stripped>, info: unrepl [(str: Exclusive seq: 0)]
58+ lock: "\xfab"
59+ holder: txn: t3 epoch: 0, iso: Serializable, ts: <stripped>, info: unrepl [(str: Exclusive seq: 0)]
60+
61+ flush-lock-table start=a end=z max-keys=1
62+ ----
63+
64+ print-in-memory-lock-table
65+ ----
66+ num=1
67+ lock: "\xfab"
68+ holder: txn: t3 epoch: 0, iso: Serializable, ts: <stripped>, info: unrepl [(str: Exclusive seq: 0)]
69+
70+ print-replicated-lock-table start=a end=z
71+ ----
72+ key: "\xfaa", str: Exclusive, txn: t3
73+
74+ commit txn=t3
75+ ----
76+
77+ # TargetBytes Limit
78+ new-txn txn=t4
79+ ----
80+
81+ get txn=t4 k=a lock=Exclusive dur=Unreplicated
82+ ----
83+ get: "\xfaa"="bar"
84+
85+ get txn=t4 k=b lock=Exclusive dur=Unreplicated
86+ ----
87+ get: "\xfab"="baz"
88+
89+ print-in-memory-lock-table
90+ ----
91+ num=2
92+ lock: "\xfaa"
93+ holder: txn: t4 epoch: 0, iso: Serializable, ts: <stripped>, info: unrepl [(str: Exclusive seq: 0)]
94+ lock: "\xfab"
95+ holder: txn: t4 epoch: 0, iso: Serializable, ts: <stripped>, info: unrepl [(str: Exclusive seq: 0)]
96+
97+ flush-lock-table start=a end=z target-bytes=128
98+ ----
99+
100+ print-in-memory-lock-table
101+ ----
102+ num=1
103+ lock: "\xfab"
104+ holder: txn: t4 epoch: 0, iso: Serializable, ts: <stripped>, info: unrepl [(str: Exclusive seq: 0)]
105+
106+ print-replicated-lock-table start=a end=z
107+ ----
108+ key: "\xfaa", str: Exclusive, txn: t4
109+
110+ commit txn=t4
111+ ----
112+
113+ # MaxSpanRequestKeys ineffective limit
114+ new-txn txn=t5
115+ ----
116+
117+ get txn=t5 k=a lock=Exclusive dur=Unreplicated
118+ ----
119+ get: "\xfaa"="bar"
120+
121+ get txn=t5 k=b lock=Exclusive dur=Unreplicated
122+ ----
123+ get: "\xfab"="baz"
124+
125+ print-in-memory-lock-table
126+ ----
127+ num=2
128+ lock: "\xfaa"
129+ holder: txn: t5 epoch: 0, iso: Serializable, ts: <stripped>, info: unrepl [(str: Exclusive seq: 0)]
130+ lock: "\xfab"
131+ holder: txn: t5 epoch: 0, iso: Serializable, ts: <stripped>, info: unrepl [(str: Exclusive seq: 0)]
132+
133+ flush-lock-table start=a end=z max-keys=8
134+ ----
135+
136+ print-in-memory-lock-table
137+ ----
138+ num=0
139+
140+ print-replicated-lock-table start=a end=z
141+ ----
142+ key: "\xfaa", str: Exclusive, txn: t5
143+ key: "\xfab", str: Exclusive, txn: t5
144+
145+ commit txn=t5
146+ ----
147+
148+ # TargetBytes ineffective limit
149+ new-txn txn=t6
150+ ----
151+
152+ get txn=t6 k=a lock=Exclusive dur=Unreplicated
153+ ----
154+ get: "\xfaa"="bar"
155+
156+ get txn=t6 k=b lock=Exclusive dur=Unreplicated
157+ ----
158+ get: "\xfab"="baz"
159+
160+ print-in-memory-lock-table
161+ ----
162+ num=2
163+ lock: "\xfaa"
164+ holder: txn: t6 epoch: 0, iso: Serializable, ts: <stripped>, info: unrepl [(str: Exclusive seq: 0)]
165+ lock: "\xfab"
166+ holder: txn: t6 epoch: 0, iso: Serializable, ts: <stripped>, info: unrepl [(str: Exclusive seq: 0)]
167+
168+ flush-lock-table start=a end=z target-bytes=4096
169+ ----
170+
171+ print-in-memory-lock-table
172+ ----
173+ num=0
174+
175+ print-replicated-lock-table start=a end=z
176+ ----
177+ key: "\xfaa", str: Exclusive, txn: t6
178+ key: "\xfab", str: Exclusive, txn: t6
179+
180+ commit txn=t6
181+ ----
0 commit comments