Skip to content

BUG: ASV Benchmarks failing to build #34677

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Closed
matteosantama opened this issue Jun 9, 2020 · 10 comments · Fixed by #35798
Closed

BUG: ASV Benchmarks failing to build #34677

matteosantama opened this issue Jun 9, 2020 · 10 comments · Fixed by #35798
Labels
Benchmark Performance (ASV) benchmarks

Comments

@matteosantama
Copy link
Contributor

ASV benchmarks fail to build on master. Could this be related to #34666?

error: command 'gcc' failed with exit status 1

Anyone else having this issue?

@matteosantama matteosantama added Bug Needs Triage Issue that has not been reviewed by a pandas team member labels Jun 9, 2020
@TomAugspurger
Copy link
Contributor

What command are you running to build them?

@matteosantama
Copy link
Contributor Author

>>> git pull upstream master --ff-only
>>> asv continuous -f 1.1 upstream/master HEAD 

And then I get a bunch of errors like

1 error generated.
   pandas/_libs/tslibs/frequencies.c:7337:52: error: code will never be executed [-Werror,-Wunreachable-code]
           } else if (PY_VERSION_HEX >= 0x030700A0 && flag == (METH_FASTCALL | METH_KEYWORDS)) {
                                                      ^~~~
   pandas/_libs/tslibs/frequencies.c:7337:38: note: silence by adding parentheses to mark code as explicitly dead
           } else if (PY_VERSION_HEX >= 0x030700A0 && flag == (METH_FASTCALL | METH_KEYWORDS)) {
                                        ^
                                        /* DISABLES CODE */ ( )

My conda environment uses Python 3.8, which is why I thought maybe its connected to #34666

@jorisvandenbossche
Copy link
Member

@matteosantama can you build pandas itself in your development environment (outside of the asv env)?

@matteosantama
Copy link
Contributor Author

Yes, which makes it all the more confusing

@matteosantama
Copy link
Contributor Author

It really doesn't like this line, which appears in 7 different files.

else if (PY_VERSION_HEX >= 0x030700A0 && flag == (METH_FASTCALL | METH_KEYWORDS))

My guess is that for some reason the condition PY_VERSION_HEX >= 0x030700A0 is failing, so I'm getting an unreachable code error on the second half of the statement. I'm also assuming that check confirms the python version is greater than 3.7. In the ASV benchmarks config file, line 29 looks like its setting the version to 3.6.

Lot of guesses here, so not sure if I'm even on the right track.

@jorisvandenbossche
Copy link
Member

Can you check if you get the same problem or not when you change the asv config to use 3.7 or 3.8?

@jorisvandenbossche
Copy link
Member

(that's a config that we should update at some point anyway)

@matteosantama
Copy link
Contributor Author

Changing to 3.7 fixed it for me

@matteosantama
Copy link
Contributor Author

I can make a PR if you think it's as simple as changing that line, unless you think there might be other ramifications you want to explore.

@jorisvandenbossche
Copy link
Member

I think a change like that is welcome (but I would directly take 3.8, to not have to change this too often).

But, regardless of updating that, we still need to figure out why it is failing in a py3.6 environment, as we still support that.

@dsaxton dsaxton added Benchmark Performance (ASV) benchmarks and removed Bug Needs Triage Issue that has not been reviewed by a pandas team member labels Aug 25, 2020
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Benchmark Performance (ASV) benchmarks
Projects
None yet
Development

Successfully merging a pull request may close this issue.

4 participants