git/list[1] front-page[2] threads[3] people[4] search[5] about
 

Re: [BUG] t9801 and t9803 broken on next

From
Lars Schneider <larsxschneider@gmail.com>
Date
May 14, 2016, 08:04 UTC
Message-ID
<4830D469-3885-4010-9A04-D809F0C6159D@gmail.com>
In-Reply-To
<xmqqpospap8g.fsf@gitster.mtv.corp.google.com>
Show 29 quoted lines
> On 13 May 2016, at 18:37, Junio C Hamano <gitster@pobox.com> wrote:
> 
> Eric Wong <e@80x24.org> writes:
> 
>> Lars Schneider <larsxschneider@gmail.com> wrote:
>>> Hi,
>>> 
>>> t9801 and t9803 seem to be broken on next. A quick bisect indicates that d9545c7 
>>> "fast-import: implement unpack limit" might be the reason. (@gmane/292562).
>>> 
>>> Did anyone look into that already?
>> 
>> Just took a look (no p4, so couldn't run tests) and I guess it's
>> because the default changed and it doesn't generate tiny packs.
> 
> I looked at t9801 but I couldn't spot where it cares if the objects
> are in a (tiny) pack or stored as individual loose objects.  All the
> counting I saw was about rev-list/log output and they shouldn't care.
> 
> Are you saying that "git p4" itself breaks unless fast-import always
> writes a new (tiny) packfile?  That sounds quite broken, and setting
> unpacklimit to 0 does not sound like a sensible "fix".  Of course,
> if the test script is somehow looking at the number of packs or
> loose objects and declaring a failure, even when the resulting
> history in p4 and git are correct, then that is a different issue,
> and forcing to explode a tiny pack is a reasonable workaround.  I
> couldn't quite tell which the case is.
> 
> Puzzled.  Please help.

t9801 "import depot, branch detection" is the first test that fails with a fast import error: https://github.com/git/git/blob/78b384c29366e199741393e56030a8384110760d/t/t9801-git-p4-branch.sh#L110

fast-import crash report:
    fast-import process: 77079
    parent process     : 77077
    at 2016-05-14 07:48:40 +0000
fatal: offset beyond end of packfile (truncated pack?)
Most Recent Commands Before Crash
---------------------------------
  commit refs/remotes/p4/master
  mark :1
  committer Dr. author <author@example.com> 1463212118 +0000
  data <<EOT
  M 100644 inline f1
  data 3
  
  commit refs/remotes/p4/master
  mark :2
  committer Dr. author <author@example.com> 1463212118 +0000
  data <<EOT
  M 100644 inline f2
  data 3
  
  commit refs/remotes/p4/master
  mark :4
  committer Dr. author <author@example.com> 1463212118 +0000
  data <<EOT
  M 100644 inline f4
  data 3
  
  checkpoint
  commit git-p4-tmp/6
  mark :6
  committer Dr. author <author@example.com> 1463212118 +0000
  data <<EOT
  M 100644 inline f1
  data 3
  M 100644 inline f2
  data 3
  M 100644 inline f4
  data 3
  
  checkpoint
  progress checkpoint
  commit refs/remotes/p4/depot/branch2
  mark :6
  committer Dr. author <author@example.com> 1463212118 +0000
  data <<EOT
  from 1ab0d5b43b6070682f8bd6f3fd674d4fcddd9345
* M 100644 inline f1
Active Branch LRU
-----------------
    active_branches = 2 cur, 5 max
  pos  clock name
  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   1)      4 git-p4-tmp/6
   2)      3 refs/remotes/p4/master
Inactive Branches
-----------------
git-p4-tmp/6:
  status      : active loaded
  tip commit  : 3aef1b3e7d821051780a89262f2e2fae33ed8af3
  old tree    : 30a8495449245cdb9626ef48902ba672cf76576f
  cur tree    : 30a8495449245cdb9626ef48902ba672cf76576f
  commit clock: 4
  last pack   : 0
refs/remotes/p4/master:
  status      : active loaded
  tip commit  : 1ab0d5b43b6070682f8bd6f3fd674d4fcddd9345
  old tree    : 30a8495449245cdb9626ef48902ba672cf76576f
  cur tree    : 30a8495449245cdb9626ef48902ba672cf76576f
  commit clock: 3
  last pack   : 0
refs/remotes/p4/depot/branch2:
  status      : loaded
  tip commit  : 1ab0d5b43b6070682f8bd6f3fd674d4fcddd9345
  old tree    : 30a8495449245cdb9626ef48902ba672cf76576f
  cur tree    : 30a8495449245cdb9626ef48902ba672cf76576f
  commit clock: 0
  last pack   : 

Marks ----- :1 47474c2e749d579c63b375231c018289aa00cd0f :2 9c6b957c0b4d4991b8bbd17858aa2a271d2c76c3 :4 1ab0d5b43b6070682f8bd6f3fd674d4fcddd9345 :6 3aef1b3e7d821051780a89262f2e2fae33ed8af3

------------------- END OF CRASH REPORT

Show 6 quoted lines
> 
>> The easiest change is probably to call:
>> 
>> 	git config fastimport.unpackLimit 0
>> 
>> during setup like t9300 now does.
Unfortunately that seems not to help.

The problem seems to be related to the git-p4 branch import. I don't have time this weekend to look further into it, but I will try next week.

Cheers, Lars

Previous: Junio C HamanoNext: Junio C Hamano
Message 4 of 19 in “[BUG] t9801 and t9803 broken on next”
  1. Lars SchneiderMay 13, 2016
  2. Eric WongMay 13, 2016
  3. Junio C HamanoMay 13, 2016
  4. Lars SchneiderMay 14, 2016
  5. Junio C HamanoMay 14, 2016
  6. Lars SchneiderMay 17, 2016
  7. Eric WongMay 17, 2016
  8. Jeff KingMay 17, 2016
  9. Lars SchneiderMay 19, 2016
  10. Junio C HamanoMay 19, 2016
  11. Lars SchneiderMay 19, 2016
  12. Eric WongMay 25, 2016
  13. [RFC] fast-import: invalidate pack_id references after looseningEric Wong, May 25, 2016
  14. Jeff KingMay 25, 2016
  15. Eric WongMay 26, 2016
  16. Jeff KingMay 26, 2016
  17. Eric WongMay 28, 2016
  18. Jeff KingMay 25, 2016
  19. Luke DiamandMay 17, 2016

Read the whole thread, see it on lore, or plain text.

$ cat FOOTERMessages come from the public archive at lore.kernel.org/git, fetched every hour. The front page is chosen and written each morning by an AI editor and can be wrong; the threads themselves are the record. About and API. For agents: an MCP server at https://gitlist.dev/mcp, and any thread, story or person page as Markdown by adding .md to its URL (or sending Accept: text/markdown). Details in /llms.txt.