Skip to content

pack has unresolved deltas with git-aggregator 3.0.0 and 3.0.1 with git 2.20.1 (debian buster, 10) #68

@ap-wtioit

Description

@ap-wtioit

not yet reproduced with public commits (will update tomorrow)

when using git-aggregator 3.0.0 or 3.0.1 with git 2.20.1 and performing gitaggregate --expand-env --config .../repo.yaml aggregate:

./odoo:
  defaults:
    depth: $DEPTH_MERGE
  merges:
  - example $ODOO_VERSION
  - example 13.0-patch_branch
  remotes:
    odoo: https://gitlab-ci-token:...@gitlab.example.com/group_a/odoo.git
    example: https://gitlab-ci-token:...@gitlab.example.com/group_b/odoo.git
    example-odoo: https://gitlab-ci-token:...@gitlab.example.com/group_a/odoo.git
  target: example $ODOO_VERSION

with

  • ODOO_VERSION 13.0
  • DEPTH_MERGE 100
    we get the following error:
(INFO) [14:45:42] git_aggregator.repo  odoo   Start aggregation of /tmp/tmppzdk14gj/odoo
(INFO) [14:45:42] git_aggregator.repo  odoo   Cloning git repository https://gitlab-ci-token:...@gitlab.example.com/group_b/odoo.git in /tmp/tmppzdk14gj/odoo
Cloning into '/tmp/tmppzdk14gj/odoo'...
Checking out files: 100% (25549/25549), done.
(INFO) [14:46:17] git_aggregator.repo  odoo   Switch to branch 13.0
Reset branch '13.0'
(INFO) [14:46:18] git_aggregator.repo  odoo   Adding remote odoo <https://gitlab-ci-token:...@gitlab.example.com/group_a/odoo.git>
(INFO) [14:46:18] git_aggregator.repo  odoo   Adding remote example <https://gitlab-ci-token:...@gitlab.example.com/group_b/odoo.git>
Your branch is up to date with 'origin/13.0'.
(INFO) [14:46:18] git_aggregator.repo  odoo   Adding remote example-odoo <https://gitlab-ci-token:...@gitlab.example.com/group_b/odoo.git>
(INFO) [14:46:18] git_aggregator.repo  odoo   Fetching required remotes
From https://gitlab.example.com/group_b/odoo
 * branch              13.0       -> FETCH_HEAD
 * [new branch]        13.0       -> example/13.0
fatal: pack has 42 unresolved deltas
fatal: index-pack failed
(ERROR) [14:46:26] git_aggregator.repo  odoo   /tmp/tmppzdk14gj/odoo> error calling ('git', 'fetch', '--depth', '100', 'example', '13.0-patch_branch')
Traceback (most recent call last):
  File "/usr/local/lib/python3.7/dist-packages/git_aggregator/main.py", line 230, in aggregate_repo
    repo.aggregate()
  File "/usr/local/lib/python3.7/dist-packages/git_aggregator/repo.py", line 183, in aggregate
    self.fetch()
  File "/usr/local/lib/python3.7/dist-packages/git_aggregator/repo.py", line 248, in fetch
    self.log_call(cmd, cwd=self.cwd)
  File "/usr/local/lib/python3.7/dist-packages/git_aggregator/repo.py", line 160, in log_call
    ret = callwith(cmd, **kw)
  File "/usr/lib/python3.7/subprocess.py", line 347, in check_call
    raise CalledProcessError(retcode, cmd)
subprocess.CalledProcessError: Command '('git', 'fetch', '--depth', '100', 'example', '13.0-patch_branch')' returned non-zero exit status 128.

When i increase DEPTH_MERGE to 1000 i get fatal: pack has 228 unresolved deltas and the rest stays the same.

Those errors do not happen if i use git-aggregator 2.1.0 (or my local dev environment with git 2.34.1 + python 3.10).

It does look like it's related to the --filter stuff but i think the root cause is somewhere in git.

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions