xundump: Support splitting any table

Each part of a split table needs to supply rows for the same objects.
We currently require each part to name its objects explicitly, with an
object ID field, and don't support splitting tables that don't have
such IDs.  These restrictions became arbitrary when commit 4e23c45
implemented checking each partial table supplies the same rows.  Relax
them.

Affects tables sect, news, lost, realm, game, infrastructure.

Signed-off-by: Markus Armbruster <armbru@pond.sub.org>
This commit is contained in:
Markus Armbruster 2014-02-08 12:16:34 +01:00
parent 67425a06d9
commit 515beef12e
9 changed files with 41 additions and 94 deletions

View file

@ -2,11 +2,8 @@ tests/empdump/xundump-errors/colhdr-amb:2: Header m of field 3 is ambiguous
tests/empdump/xundump-errors/colhdr-dup:2: Duplicate header name in field 2
tests/empdump/xundump-errors/colhdr-dup2:6: Duplicate header name in field 3
tests/empdump/xundump-errors/colhdr-dup3:2: Duplicate header pkg(0) in field 8
tests/empdump/xundump-errors/colhdr-ellipsis:2: Header field uid required in each table part
tests/empdump/xundump-errors/colhdr-ellipsis:2: Header fields expected
tests/empdump/xundump-errors/colhdr-ellipsis2:2: Junk after ...
tests/empdump/xundump-errors/colhdr-ellipsis3:2: Table infrastructure doesn't support ...
tests/empdump/xundump-errors/colhdr-ellipsis4:2: Header field uid required in each table part
tests/empdump/xundump-errors/colhdr-ellipsis5:2: Table sect doesn't support ...
tests/empdump/xundump-errors/colhdr-eof:2: Unexpected EOF
tests/empdump/xundump-errors/colhdr-first:2: Header field uid must come first
tests/empdump/xundump-errors/colhdr-idxbig:2: Header pkg(99) index out of bounds in field 7
@ -22,7 +19,6 @@ tests/empdump/xundump-errors/colhdr-miss:2: Header field uid missing
tests/empdump/xundump-errors/colhdr-miss:2: Header field ctype(2) missing
tests/empdump/xundump-errors/colhdr-miss:2: Header fields camt(0) ... camt(2) missing
tests/empdump/xundump-errors/colhdr-miss:2: Header field nllag missing
tests/empdump/xundump-errors/colhdr-miss2:21: Header field uid required in each table part
tests/empdump/xundump-errors/colhdr-miss2:21: Header fields ctype(0) ... ctype(2) missing
tests/empdump/xundump-errors/colhdr-miss2:21: Header fields camt(0) ... camt(2) missing
tests/empdump/xundump-errors/colhdr-miss2:21: Header field type missing
@ -75,7 +71,7 @@ tests/empdump/xundump-errors/fld-nosymset:2: Field 1 doesn't take symbol sets
tests/empdump/xundump-errors/fld-sep:2: Bad field separator after field 1
tests/empdump/xundump-errors/fld-strbig:3: Field 19 takes at most 9 characters
tests/empdump/xundump-errors/fld-unexpid:6: Table's first part doesn't have this row
tests/empdump/xundump-errors/fld-unexpid1:7: Expected 2 in field 1, like in table's first part
tests/empdump/xundump-errors/fld-unexpid1:7: Value for field 1 must be 2
tests/empdump/xundump-errors/fld-unksym:2: Unknown level symbol `xxx' in field 11
tests/empdump/xundump-errors/fld-unparen:2: Unmatched '(' in field 19
tests/empdump/xundump-errors/ftr-fewrows:2: Expected 1024 more rows

View file

@ -69,9 +69,6 @@
1
1
1
1
1
1
0
1
0

View file

@ -1,3 +1,3 @@
config product
...
# Header field uid required in each table part
# Header fields expected

View file

@ -1,3 +0,0 @@
config infrastructure
name ...
# Table infrastructure doesn't support ...

View file

@ -1,3 +0,0 @@
config product
sname name ...
# Header field uid required in each table part

View file

@ -1,4 +0,0 @@
config sect
xloc yloc ...
# Table sect doesn't support ...
/config

View file

@ -19,7 +19,6 @@ uid sname ...
config product
name
# Header field uid required in each table part
# Header fields ctype(0) ... ctype(2) missing
# Header fields camt(0) ... camt(2) missing
# Header field type missing

View file

@ -5,5 +5,5 @@ uid ...
config ship
uid ...
1
# Expected 2 in field 1, like in table's first part
# Value for field 1 must be 2
/config