@@ -472,7 +472,8 @@ inline void Node256::copyChildrenAndKeyFrom(const Node256 &other) {
|
||||
|
||||
namespace {
|
||||
std::string getSearchPathPrintable(Node *n);
|
||||
}
|
||||
std::string getSearchPath(Node *n);
|
||||
} // namespace
|
||||
|
||||
// Bound memory usage following the analysis in the ART paper
|
||||
|
||||
@@ -1224,28 +1225,11 @@ Node *erase(Node *self, NodeAllocators *allocators, ConflictSet::Impl *impl,
|
||||
return result;
|
||||
}
|
||||
|
||||
switch (self->getType()) {
|
||||
case Type_Node0:
|
||||
allocators->node0.release((Node0 *)self);
|
||||
break;
|
||||
case Type_Node3:
|
||||
allocators->node3.release((Node3 *)self);
|
||||
break;
|
||||
case Type_Node16:
|
||||
allocators->node16.release((Node16 *)self);
|
||||
break;
|
||||
case Type_Node48:
|
||||
allocators->node48.release((Node48 *)self);
|
||||
break;
|
||||
case Type_Node256:
|
||||
allocators->node256.release((Node256 *)self);
|
||||
break;
|
||||
default: // GCOVR_EXCL_LINE
|
||||
__builtin_unreachable(); // GCOVR_EXCL_LINE
|
||||
}
|
||||
assert(self->getType() == Type_Node0);
|
||||
allocators->node0.release((Node0 *)self);
|
||||
|
||||
switch (parent->getType()) {
|
||||
case Type_Node0:
|
||||
case Type_Node0: // GCOVR_EXCL_LINE
|
||||
__builtin_unreachable(); // GCOVR_EXCL_LINE
|
||||
case Type_Node3: {
|
||||
auto *parent3 = static_cast<Node3 *>(parent);
|
||||
@@ -2480,11 +2464,13 @@ struct __attribute__((visibility("hidden"))) ConflictSet::Impl {
|
||||
assert(n != nullptr);
|
||||
// Don't erase the root
|
||||
if (n == root) {
|
||||
n = nextLogical(n);
|
||||
n = nextPhysical(n);
|
||||
}
|
||||
for (; keyUpdates > 0 && n != nullptr; --keyUpdates) {
|
||||
if (std::max(n->entry.pointVersion, n->entry.rangeVersion) <=
|
||||
oldestVersion) {
|
||||
printf("len: %d, cap: %d, type: %d %s\n", n->partialKeyLen,
|
||||
n->getCapacity(), n->getType(), getSearchPath(n).c_str());
|
||||
if (n->entryPresent && std::max(n->entry.pointVersion,
|
||||
n->entry.rangeVersion) <= oldestVersion) {
|
||||
// Any transaction n would have prevented from committing is
|
||||
// going to fail with TooOld anyway.
|
||||
|
||||
@@ -2495,7 +2481,7 @@ struct __attribute__((visibility("hidden"))) ConflictSet::Impl {
|
||||
n = erase(n, &allocators, this, dummy);
|
||||
} else {
|
||||
maybeDecreaseCapacity(n, &allocators, this);
|
||||
n = nextLogical(n);
|
||||
n = nextPhysical(n);
|
||||
}
|
||||
}
|
||||
if (n == nullptr) {
|
||||
|
260
script_tests/256-256.txt
Normal file
260
script_tests/256-256.txt
Normal file
@@ -0,0 +1,260 @@
|
||||
|
||||
; Create a node with a large partial key capacity
|
||||
begin aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
|
||||
pointwrite
|
||||
|
||||
; Make it a Node256
|
||||
|
||||
begin aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaA
|
||||
pointwrite
|
||||
|
||||
begin aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaB
|
||||
pointwrite
|
||||
|
||||
begin aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaC
|
||||
pointwrite
|
||||
|
||||
begin aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaD
|
||||
pointwrite
|
||||
|
||||
begin aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaE
|
||||
pointwrite
|
||||
|
||||
begin aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaF
|
||||
pointwrite
|
||||
|
||||
begin aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaG
|
||||
pointwrite
|
||||
|
||||
begin aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaH
|
||||
pointwrite
|
||||
|
||||
begin aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaI
|
||||
pointwrite
|
||||
|
||||
begin aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaJ
|
||||
pointwrite
|
||||
|
||||
begin aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaK
|
||||
pointwrite
|
||||
|
||||
begin aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaL
|
||||
pointwrite
|
||||
|
||||
begin aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaM
|
||||
pointwrite
|
||||
|
||||
begin aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaN
|
||||
pointwrite
|
||||
|
||||
begin aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaO
|
||||
pointwrite
|
||||
|
||||
begin aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaP
|
||||
pointwrite
|
||||
|
||||
begin aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaQ
|
||||
pointwrite
|
||||
|
||||
begin aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaR
|
||||
pointwrite
|
||||
|
||||
begin aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaS
|
||||
pointwrite
|
||||
|
||||
begin aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaT
|
||||
pointwrite
|
||||
|
||||
begin aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaU
|
||||
pointwrite
|
||||
|
||||
begin aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaV
|
||||
pointwrite
|
||||
|
||||
begin aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaW
|
||||
pointwrite
|
||||
|
||||
begin aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaX
|
||||
pointwrite
|
||||
|
||||
begin aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaY
|
||||
pointwrite
|
||||
|
||||
begin aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaZ
|
||||
pointwrite
|
||||
|
||||
begin aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
|
||||
pointwrite
|
||||
|
||||
begin aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaab
|
||||
pointwrite
|
||||
|
||||
begin aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaac
|
||||
pointwrite
|
||||
|
||||
begin aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaad
|
||||
pointwrite
|
||||
|
||||
begin aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaae
|
||||
pointwrite
|
||||
|
||||
begin aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaf
|
||||
pointwrite
|
||||
|
||||
begin aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaag
|
||||
pointwrite
|
||||
|
||||
begin aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaah
|
||||
pointwrite
|
||||
|
||||
begin aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaai
|
||||
pointwrite
|
||||
|
||||
begin aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaj
|
||||
pointwrite
|
||||
|
||||
begin aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaak
|
||||
pointwrite
|
||||
|
||||
begin aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaal
|
||||
pointwrite
|
||||
|
||||
begin aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaam
|
||||
pointwrite
|
||||
|
||||
begin aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaan
|
||||
pointwrite
|
||||
|
||||
begin aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaao
|
||||
pointwrite
|
||||
|
||||
begin aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaap
|
||||
pointwrite
|
||||
|
||||
begin aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaq
|
||||
pointwrite
|
||||
|
||||
begin aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaar
|
||||
pointwrite
|
||||
|
||||
begin aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaas
|
||||
pointwrite
|
||||
|
||||
begin aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaat
|
||||
pointwrite
|
||||
|
||||
begin aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaau
|
||||
pointwrite
|
||||
|
||||
begin aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaav
|
||||
pointwrite
|
||||
|
||||
begin aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaw
|
||||
pointwrite
|
||||
|
||||
begin aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaax
|
||||
pointwrite
|
||||
|
||||
begin aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaay
|
||||
pointwrite
|
||||
|
||||
begin aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaz
|
||||
pointwrite
|
||||
|
||||
; Lower its partial key length
|
||||
begin aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
|
||||
pointwrite
|
||||
|
||||
version 2
|
||||
addwrites
|
||||
|
||||
; Create work for setoldest
|
||||
|
||||
begin x
|
||||
end y
|
||||
rangewrite
|
||||
version 3
|
||||
addwrites
|
||||
|
||||
rangewrite
|
||||
version 4
|
||||
addwrites
|
||||
|
||||
rangewrite
|
||||
version 5
|
||||
addwrites
|
||||
|
||||
rangewrite
|
||||
version 6
|
||||
addwrites
|
||||
|
||||
rangewrite
|
||||
version 7
|
||||
addwrites
|
||||
|
||||
rangewrite
|
||||
version 8
|
||||
addwrites
|
||||
|
||||
rangewrite
|
||||
version 9
|
||||
addwrites
|
||||
|
||||
rangewrite
|
||||
version 10
|
||||
addwrites
|
||||
|
||||
rangewrite
|
||||
version 11
|
||||
addwrites
|
||||
|
||||
rangewrite
|
||||
version 12
|
||||
addwrites
|
||||
|
||||
rangewrite
|
||||
version 13
|
||||
addwrites
|
||||
|
||||
rangewrite
|
||||
version 14
|
||||
addwrites
|
||||
|
||||
rangewrite
|
||||
version 15
|
||||
addwrites
|
||||
|
||||
rangewrite
|
||||
version 16
|
||||
addwrites
|
||||
|
||||
rangewrite
|
||||
version 17
|
||||
addwrites
|
||||
|
||||
rangewrite
|
||||
version 18
|
||||
addwrites
|
||||
|
||||
rangewrite
|
||||
version 19
|
||||
addwrites
|
||||
|
||||
rangewrite
|
||||
version 20
|
||||
addwrites
|
||||
|
||||
rangewrite
|
||||
version 21
|
||||
addwrites
|
||||
|
||||
rangewrite
|
||||
version 22
|
||||
addwrites
|
||||
|
||||
rangewrite
|
||||
version 23
|
||||
addwrites
|
||||
|
||||
version 1
|
||||
setoldest
|
145
script_tests/48-48.txt
Normal file
145
script_tests/48-48.txt
Normal file
@@ -0,0 +1,145 @@
|
||||
; Create a node with a large partial key capacity
|
||||
begin aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
|
||||
pointwrite
|
||||
|
||||
; Make it a Node48
|
||||
begin aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
|
||||
pointwrite
|
||||
|
||||
begin aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaab
|
||||
pointwrite
|
||||
|
||||
begin aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaac
|
||||
pointwrite
|
||||
|
||||
begin aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaad
|
||||
pointwrite
|
||||
|
||||
begin aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaae
|
||||
pointwrite
|
||||
|
||||
begin aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaf
|
||||
pointwrite
|
||||
|
||||
begin aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaag
|
||||
pointwrite
|
||||
|
||||
begin aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaah
|
||||
pointwrite
|
||||
|
||||
begin aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaai
|
||||
pointwrite
|
||||
|
||||
begin aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaj
|
||||
pointwrite
|
||||
|
||||
begin aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaak
|
||||
pointwrite
|
||||
|
||||
begin aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaal
|
||||
pointwrite
|
||||
|
||||
begin aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaam
|
||||
pointwrite
|
||||
|
||||
begin aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaan
|
||||
pointwrite
|
||||
|
||||
begin aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaao
|
||||
pointwrite
|
||||
|
||||
begin aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaap
|
||||
pointwrite
|
||||
|
||||
begin aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaq
|
||||
pointwrite
|
||||
|
||||
; Lower its partial key length
|
||||
begin aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
|
||||
pointwrite
|
||||
|
||||
version 2
|
||||
addwrites
|
||||
|
||||
; Create work for setoldest
|
||||
|
||||
begin x
|
||||
end y
|
||||
rangewrite
|
||||
version 3
|
||||
addwrites
|
||||
|
||||
rangewrite
|
||||
version 4
|
||||
addwrites
|
||||
|
||||
rangewrite
|
||||
version 5
|
||||
addwrites
|
||||
|
||||
rangewrite
|
||||
version 6
|
||||
addwrites
|
||||
|
||||
rangewrite
|
||||
version 7
|
||||
addwrites
|
||||
|
||||
rangewrite
|
||||
version 8
|
||||
addwrites
|
||||
|
||||
rangewrite
|
||||
version 9
|
||||
addwrites
|
||||
|
||||
rangewrite
|
||||
version 10
|
||||
addwrites
|
||||
|
||||
rangewrite
|
||||
version 11
|
||||
addwrites
|
||||
|
||||
rangewrite
|
||||
version 12
|
||||
addwrites
|
||||
|
||||
rangewrite
|
||||
version 13
|
||||
addwrites
|
||||
|
||||
rangewrite
|
||||
version 14
|
||||
addwrites
|
||||
|
||||
rangewrite
|
||||
version 15
|
||||
addwrites
|
||||
|
||||
rangewrite
|
||||
version 16
|
||||
addwrites
|
||||
|
||||
rangewrite
|
||||
version 17
|
||||
addwrites
|
||||
|
||||
rangewrite
|
||||
version 18
|
||||
addwrites
|
||||
|
||||
rangewrite
|
||||
version 19
|
||||
addwrites
|
||||
|
||||
rangewrite
|
||||
version 20
|
||||
addwrites
|
||||
|
||||
rangewrite
|
||||
version 21
|
||||
addwrites
|
||||
|
||||
version 1
|
||||
setoldest
|
120
script_tests/downsize-256.txt
Normal file
120
script_tests/downsize-256.txt
Normal file
@@ -0,0 +1,120 @@
|
||||
begin
|
||||
pointwrite
|
||||
begin 0
|
||||
pointwrite
|
||||
begin 00
|
||||
pointwrite
|
||||
begin 00A
|
||||
pointwrite
|
||||
begin 00B
|
||||
pointwrite
|
||||
begin 00C
|
||||
pointwrite
|
||||
begin 00D
|
||||
pointwrite
|
||||
begin 00E
|
||||
pointwrite
|
||||
begin 00F
|
||||
pointwrite
|
||||
begin 00G
|
||||
pointwrite
|
||||
begin 00H
|
||||
pointwrite
|
||||
begin 00I
|
||||
pointwrite
|
||||
begin 00J
|
||||
pointwrite
|
||||
begin 00K
|
||||
pointwrite
|
||||
begin 00L
|
||||
pointwrite
|
||||
begin 00M
|
||||
pointwrite
|
||||
begin 00N
|
||||
pointwrite
|
||||
begin 00O
|
||||
pointwrite
|
||||
begin 00P
|
||||
pointwrite
|
||||
begin 00Q
|
||||
pointwrite
|
||||
begin 00R
|
||||
pointwrite
|
||||
begin 00S
|
||||
pointwrite
|
||||
begin 00T
|
||||
pointwrite
|
||||
begin 00U
|
||||
pointwrite
|
||||
begin 00V
|
||||
pointwrite
|
||||
begin 00W
|
||||
pointwrite
|
||||
begin 00X
|
||||
pointwrite
|
||||
begin 00Y
|
||||
pointwrite
|
||||
begin 00Z
|
||||
pointwrite
|
||||
begin 00a
|
||||
pointwrite
|
||||
begin 00b
|
||||
pointwrite
|
||||
begin 00c
|
||||
pointwrite
|
||||
begin 00d
|
||||
pointwrite
|
||||
begin 00e
|
||||
pointwrite
|
||||
begin 00f
|
||||
pointwrite
|
||||
begin 00g
|
||||
pointwrite
|
||||
begin 00h
|
||||
pointwrite
|
||||
begin 00i
|
||||
pointwrite
|
||||
begin 00j
|
||||
pointwrite
|
||||
begin 00k
|
||||
pointwrite
|
||||
begin 00l
|
||||
pointwrite
|
||||
begin 00m
|
||||
pointwrite
|
||||
begin 00n
|
||||
pointwrite
|
||||
begin 00o
|
||||
pointwrite
|
||||
begin 00p
|
||||
pointwrite
|
||||
begin 00q
|
||||
pointwrite
|
||||
begin 00r
|
||||
pointwrite
|
||||
begin 00s
|
||||
pointwrite
|
||||
begin 00t
|
||||
pointwrite
|
||||
begin 00u
|
||||
pointwrite
|
||||
begin 00v
|
||||
pointwrite
|
||||
begin 00w
|
||||
pointwrite
|
||||
begin 00x
|
||||
pointwrite
|
||||
begin 00y
|
||||
pointwrite
|
||||
begin 00z
|
||||
pointwrite
|
||||
|
||||
begin 0
|
||||
end 000
|
||||
rangewrite
|
||||
|
||||
begin
|
||||
end 00
|
||||
rangewrite
|
||||
|
||||
addwrites
|
68
script_tests/downsize-48.txt
Normal file
68
script_tests/downsize-48.txt
Normal file
@@ -0,0 +1,68 @@
|
||||
begin
|
||||
pointwrite
|
||||
begin 0
|
||||
pointwrite
|
||||
begin 00
|
||||
pointwrite
|
||||
begin 00a
|
||||
pointwrite
|
||||
begin 00b
|
||||
pointwrite
|
||||
begin 00c
|
||||
pointwrite
|
||||
begin 00d
|
||||
pointwrite
|
||||
begin 00e
|
||||
pointwrite
|
||||
begin 00f
|
||||
pointwrite
|
||||
begin 00g
|
||||
pointwrite
|
||||
begin 00h
|
||||
pointwrite
|
||||
begin 00i
|
||||
pointwrite
|
||||
begin 00j
|
||||
pointwrite
|
||||
begin 00k
|
||||
pointwrite
|
||||
begin 00l
|
||||
pointwrite
|
||||
begin 00m
|
||||
pointwrite
|
||||
begin 00n
|
||||
pointwrite
|
||||
begin 00o
|
||||
pointwrite
|
||||
begin 00p
|
||||
pointwrite
|
||||
begin 00q
|
||||
pointwrite
|
||||
begin 00r
|
||||
pointwrite
|
||||
begin 00s
|
||||
pointwrite
|
||||
begin 00t
|
||||
pointwrite
|
||||
begin 00u
|
||||
pointwrite
|
||||
begin 00v
|
||||
pointwrite
|
||||
begin 00w
|
||||
pointwrite
|
||||
begin 00x
|
||||
pointwrite
|
||||
begin 00y
|
||||
pointwrite
|
||||
begin 00z
|
||||
pointwrite
|
||||
|
||||
begin 0
|
||||
end 000
|
||||
rangewrite
|
||||
|
||||
begin
|
||||
end 00
|
||||
rangewrite
|
||||
|
||||
addwrites
|
Reference in New Issue
Block a user