annotate tests/test-obsolete-bounds-checking.t @ 39859:32d3ed3023bb

upgrade: use rawsize() instead of revlog index The revlog index is a very low-level data structure and it shouldn't be exposed to the storage interface - at least not in its current form. upgrade.py is the only consumer of the index attribute on file storage in the repository. This commit rewrites that final consumer to use rawsize() instead of going through the index. This is actually the more proper API to use, as rawsize() will accurately report the size of revisions which have a negative size in the index. Differential Revision: https://phab.mercurial-scm.org/D4719
author Gregory Szorc <gregory.szorc@gmail.com>
date Mon, 24 Sep 2018 09:38:27 -0700
parents 44797aedfb35
children 7e5be4a7cda7
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
34407
b6692ba7d5b0 obsmarker: crash more helpfully when metadata fields are >255bytes (issue5681)
Simon Whitaker <swhitaker@fb.com>
parents:
diff changeset
1 Create a repo, set the username to something more than 255 bytes, then run hg amend on it.
b6692ba7d5b0 obsmarker: crash more helpfully when metadata fields are >255bytes (issue5681)
Simon Whitaker <swhitaker@fb.com>
parents:
diff changeset
2
b6692ba7d5b0 obsmarker: crash more helpfully when metadata fields are >255bytes (issue5681)
Simon Whitaker <swhitaker@fb.com>
parents:
diff changeset
3 $ unset HGUSER
b6692ba7d5b0 obsmarker: crash more helpfully when metadata fields are >255bytes (issue5681)
Simon Whitaker <swhitaker@fb.com>
parents:
diff changeset
4 $ cat >> $HGRCPATH << EOF
b6692ba7d5b0 obsmarker: crash more helpfully when metadata fields are >255bytes (issue5681)
Simon Whitaker <swhitaker@fb.com>
parents:
diff changeset
5 > [ui]
b6692ba7d5b0 obsmarker: crash more helpfully when metadata fields are >255bytes (issue5681)
Simon Whitaker <swhitaker@fb.com>
parents:
diff changeset
6 > username = aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa <very.long.name@example.com>
b6692ba7d5b0 obsmarker: crash more helpfully when metadata fields are >255bytes (issue5681)
Simon Whitaker <swhitaker@fb.com>
parents:
diff changeset
7 > [extensions]
b6692ba7d5b0 obsmarker: crash more helpfully when metadata fields are >255bytes (issue5681)
Simon Whitaker <swhitaker@fb.com>
parents:
diff changeset
8 > amend =
b6692ba7d5b0 obsmarker: crash more helpfully when metadata fields are >255bytes (issue5681)
Simon Whitaker <swhitaker@fb.com>
parents:
diff changeset
9 > [experimental]
34866
1644623ab096 config: use 'experimental.evolution.create-markers'
Boris Feld <boris.feld@octobus.net>
parents: 34790
diff changeset
10 > evolution.createmarkers=True
34868
44797aedfb35 config: use 'experimental.evolution.exchange'
Boris Feld <boris.feld@octobus.net>
parents: 34866
diff changeset
11 > evolution.exchange=True
34407
b6692ba7d5b0 obsmarker: crash more helpfully when metadata fields are >255bytes (issue5681)
Simon Whitaker <swhitaker@fb.com>
parents:
diff changeset
12 > EOF
b6692ba7d5b0 obsmarker: crash more helpfully when metadata fields are >255bytes (issue5681)
Simon Whitaker <swhitaker@fb.com>
parents:
diff changeset
13 $ hg init tmpa
b6692ba7d5b0 obsmarker: crash more helpfully when metadata fields are >255bytes (issue5681)
Simon Whitaker <swhitaker@fb.com>
parents:
diff changeset
14 $ cd tmpa
b6692ba7d5b0 obsmarker: crash more helpfully when metadata fields are >255bytes (issue5681)
Simon Whitaker <swhitaker@fb.com>
parents:
diff changeset
15 $ echo a > a
b6692ba7d5b0 obsmarker: crash more helpfully when metadata fields are >255bytes (issue5681)
Simon Whitaker <swhitaker@fb.com>
parents:
diff changeset
16 $ hg add
b6692ba7d5b0 obsmarker: crash more helpfully when metadata fields are >255bytes (issue5681)
Simon Whitaker <swhitaker@fb.com>
parents:
diff changeset
17 adding a
b6692ba7d5b0 obsmarker: crash more helpfully when metadata fields are >255bytes (issue5681)
Simon Whitaker <swhitaker@fb.com>
parents:
diff changeset
18 $ hg commit -m "Initial commit"
b6692ba7d5b0 obsmarker: crash more helpfully when metadata fields are >255bytes (issue5681)
Simon Whitaker <swhitaker@fb.com>
parents:
diff changeset
19 $ echo a >> a
b6692ba7d5b0 obsmarker: crash more helpfully when metadata fields are >255bytes (issue5681)
Simon Whitaker <swhitaker@fb.com>
parents:
diff changeset
20 $ hg amend 2>&1 | egrep -v '^(\*\*| )'
b6692ba7d5b0 obsmarker: crash more helpfully when metadata fields are >255bytes (issue5681)
Simon Whitaker <swhitaker@fb.com>
parents:
diff changeset
21 transaction abort!
b6692ba7d5b0 obsmarker: crash more helpfully when metadata fields are >255bytes (issue5681)
Simon Whitaker <swhitaker@fb.com>
parents:
diff changeset
22 rollback completed
b6692ba7d5b0 obsmarker: crash more helpfully when metadata fields are >255bytes (issue5681)
Simon Whitaker <swhitaker@fb.com>
parents:
diff changeset
23 Traceback (most recent call last):
34790
8197742362dd test-obsolete-bounds-checking: make the test compatible with chg
Saurabh Singh <singhsrb@fb.com>
parents: 34407
diff changeset
24 *ProgrammingError: obsstore metadata value cannot be longer than 255 bytes (value "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa <very.long.name@example.com>" for key "user" is 285 bytes) (glob)