Skip to content
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

The Nightly Dev Build job failed on Monday (2025-01-20) #801

Closed
github-actions bot opened this issue Jan 21, 2025 · 27 comments
Closed

The Nightly Dev Build job failed on Monday (2025-01-20) #801

github-actions bot opened this issue Jan 21, 2025 · 27 comments
Assignees

Comments

@github-actions
Copy link

github-actions bot commented Jan 21, 2025

The Nightly Dev Build job failed on Monday (2025-01-20) in run 12878606032


sc-62563

@johnkerl
Copy link
Collaborator

Build log
https://github.com/TileDB-Inc/TileDB-R/actions/runs/12878606032/job/35904810973#step:8:695

CMake Error at CMakeLists.txt:121 (project):
  The CMAKE_CXX_COMPILER:

    g++ -std=gnu++17

  is not a full path and was not found in the PATH.

  Tell CMake where to find the compiler by setting either the environment
  variable "CXX" or the CMake cache entry CMAKE_CXX_COMPILER to the full path
  to the compiler, or to the compiler name if it is in the PATH.

👀

@jdblischak
Copy link
Collaborator

Also failed on my fork, and failed after restarting too

@jdblischak
Copy link
Collaborator

Given that the error is about being unable to find the compiler when running TileDB's bootstrap script, I assume this was caused by the PR TileDB-Inc/TileDB#5426 to remove detection of the compiler (merged yesterday morning in TileDB-Inc/TileDB@efd3a21).

@dudoslav could you please investigate?

@johnkerl
Copy link
Collaborator

@dudoslav FWIW I was able to repro this outside of CI by imitating this repo's .github/workflows/nightly.yaml:

alias dreb='docker run --rm -it --entrypoint=/bin/bash'

dreb dreb rocker/r2u:latest
Rscript -e 'sessionInfo()'
apt update -qq && apt install --yes --no-install-recommends cmake curl git
cd /tmp
git clone https://github.com/TileDB-Inc/TileDB-R
cd TileDB-R
Rscript -e 'remotes::install_deps(".", dependencies=TRUE)'
R CMD build --no-build-vignettes --no-manual .
R CMD INSTALL --configure-args="--with-download=https://github.com/TileDB-Inc/TileDB/archive/refs/heads/main.zip" $(ls -1tr *.tar.gz | tail -1)

Copy link
Author

The Nightly Dev Build job failed on Tuesday (2025-01-21) in run 12899570746

@jdblischak
Copy link
Collaborator

The nightly builds here and on my fork both failed with the same spurious bzip2 download failure that we also observed in multiple builds last week (#800 (comment)). I restarted it

Copy link
Author

The Nightly Dev Build job failed on Wednesday (2025-01-22) in run 12899570746

@jdblischak
Copy link
Collaborator

The restarted job is back to failing with the previously identified CMake error of failing to identify the compiler.

Copy link
Author

The Nightly Dev Build job failed on Wednesday (2025-01-22) in run 12920658744

Copy link
Author

The Nightly Dev Build job failed on Thursday (2025-01-23) in run 12941688221

@jdblischak
Copy link
Collaborator

xref: #795

Copy link
Author

The Nightly Dev Build job failed on Friday (2025-01-24) in run 12960667404

Copy link
Author

The Nightly Dev Build job failed on Saturday (2025-01-25) in run 12970383102

Copy link
Author

The Nightly Dev Build job failed on Sunday (2025-01-26) in run 12980600729

Copy link
Author

The Nightly Dev Build job failed on Monday (2025-01-27) in run 13002051697

@dudoslav
Copy link
Contributor

@johnkerl I created a branch with modified bootstrap script: https://github.com/dudoslav/TileDB/tree/db/sc-62563/bootstrap

and modified your repro using this branch. Now I don't see compiler not found, but I still see error:

../inst/include/tiledb.h:8:10: fatal error: tiledb/tiledb: No such file or directory
    8 | #include <tiledb/tiledb>

So perhaps this is not only due to bootstrap change. I'll investigate further.

@johnkerl
Copy link
Collaborator

@dudoslav thanks!

This is just a symptom, not a cause: fatal error: tiledb/tiledb -- can you please share the entire build output that let to this?

@dudoslav
Copy link
Contributor

@johnkerl Same as you did, but changed the last line, so (inside docker container):

Rscript -e 'sessionInfo()'
apt update -qq && apt install --yes --no-install-recommends cmake curl git
cd /tmp
git clone https://github.com/TileDB-Inc/TileDB-R
cd TileDB-R
Rscript -e 'remotes::install_deps(".", dependencies=TRUE)'
R CMD build --no-build-vignettes --no-manual .
R CMD INSTALL --configure-args="--with-download=https://github.com/dudoslav/TileDB/archive/refs/heads/db/sc-62563/bootstrap.zip" $(ls -1tr *.tar.gz | tail -1)

I suspect that the problem is that the TileDB core library is not being downloaded or is somewhere where it is not supposed to be:

g++ -std=gnu++17 -I"/usr/share/R/include" -DNDEBUG -I. -I../inst/include/  -I../inst/tiledb/include   -DTILEDB_SILENT_BUILD  -I'/usr/lib/R/site-library/Rcpp/include' -I'/usr/lib/R/site-library/RcppInt64/include' -I'/usr/lib/R/site-library/nanoarrow/include'     -fpic  -g -O2 -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -ffile-prefix-map=/build/r-base-4sITk6/r-base-4.4.2=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -fcf-protection -fdebug-prefix-map=/build/r-base-4sITk6/r-base-4.4.2=/usr/src/r-base-4.4.2-1.2404.0 -Wdate-time -D_FORTIFY_SOURCE=3   -c RcppExports.cpp -o RcppExports.o

There is no special "tiledb" include here ^^, or I mean, I was not able to find it in any of these includes.

@dudoslav
Copy link
Contributor

This might be the issue:

tools/buildTileDB.sh: line 49: ../tiledb-src/bootstrap: No such file or directory

and well... 99% due to incorrect access rights, so the file is not executable.

@johnkerl
Copy link
Collaborator

@dudoslav thank you -- and please, please share the entire build output so we can look at it together

@johnkerl
Copy link
Collaborator

There is no special "tiledb" include here ^^, or I mean, I was not able to find it in any of these includes.

Yes, this means it can't find core -- and we need to look at the full build output to get an idea of why not

@johnkerl
Copy link
Collaborator

(Switching over to Slack)

@dudoslav
Copy link
Contributor

dudoslav commented Jan 28, 2025

Full build:

root@taco:/tmp/TileDB-R# R CMD INSTALL --configure-args="--with-download=https://github.com/dudoslav/TileDB/archive/refs/heads/db/sc-62563/bootstrap.zip" $(ls -1tr *.tar.gz | tail -1)
* installing to library ‘/usr/local/lib/R/site-library’
* installing *source* package ‘tiledb’ ...
** using staged installation
checking whether the C++ compiler works... yes
checking for C++ compiler default output file name... a.out
checking for suffix of executables...
checking whether we are cross compiling... no
checking for suffix of object files... o
checking whether the compiler supports GNU C++... yes
checking whether g++ -std=gnu++17 accepts -g... yes
checking for g++ -std=gnu++17 option to enable C++11 features... none needed
checking how to run the C++ preprocessor... g++ -std=gnu++17 -E
checking whether the compiler supports GNU C++... (cached) yes
checking whether g++ -std=gnu++17 accepts -g... (cached) yes
checking for g++ -std=gnu++17 option to enable C++11 features... (cached) none needed
checking whether g++ -std=gnu++17 supports C++17 features by default... yes
checking for pkg-config... /usr/bin/pkg-config
checking if pkg-config knows TileDB... no
checking for stdio.h... yes
checking for stdlib.h... yes
checking for string.h... yes
checking for inttypes.h... yes
checking for stdint.h... yes
checking for strings.h... yes
checking for sys/stat.h... yes
checking for sys/types.h... yes
checking for unistd.h... yes
checking for filesystem... yes
checking for tiledb/tiledb... no
checking for cmake... yes
checking for curl... yes
checking for git... yes
installing TileDB via building locally...
Downloading https://github.com/dudoslav/TileDB/archive/refs/heads/db/sc-62563/bootstrap.zip: https://github.com/dudoslav/TileDB/archive/refs/heads/db/sc-62563/bootstrap.zip  ...
Converting zip to tar.gz ...
tools/buildTileDB.sh: line 49: ../tiledb-src/bootstrap: No such file or directory
using inst/tiledb/{lib,include}
configure: creating ./config.status
config.status: creating src/Makevars
** libs
using C compiler: ‘gcc (Ubuntu 13.2.0-23ubuntu4) 13.2.0’
using C++ compiler: ‘g++ (Ubuntu 13.2.0-23ubuntu4) 13.2.0’
using C++17
g++ -std=gnu++17 -I"/usr/share/R/include" -DNDEBUG -I. -I../inst/include/  -I../inst/tiledb/include   -DTILEDB_SILENT_BUILD  -I'/usr/lib/R/site-library/Rcpp/include' -I'/usr/lib/R/site-library/RcppInt64/include' -I'/usr/lib/R/site-library/nanoarrow/include'     -fpic  -g -O2 -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -ffile-prefix-map=/build/r-base-4sITk6/r-base-4.4.2=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -fcf-protection -fdebug-prefix-map=/build/r-base-4sITk6/r-base-4.4.2=/usr/src/r-base-4.4.2-1.2404.0 -Wdate-time -D_FORTIFY_SOURCE=3   -c RcppExports.cpp -o RcppExports.o
In file included from RcppExports.cpp:4:
../inst/include/tiledb.h:8:10: fatal error: tiledb/tiledb: No such file or directory
    8 | #include <tiledb/tiledb>
      |          ^~~~~~~~~~~~~~~
compilation terminated.
make: *** [/usr/lib/R/etc/Makeconf:204: RcppExports.o] Error 1
ERROR: compilation failed for package ‘tiledb’
* removing ‘/usr/local/lib/R/site-library/tiledb’

@johnkerl
Copy link
Collaborator

Debug info:

docker run -it --rm --entrypoint /bin/bash --net=host rocker/r2u:latest

and within that:

Rscript -e 'sessionInfo()'
apt update -qq && apt install --yes --no-install-recommends cmake curl git
cd /tmp
git clone https://github.com/TileDB-Inc/TileDB-R
cd TileDB-R
Rscript -e 'remotes::install_deps(".", dependencies=TRUE)'
R CMD build --no-build-vignettes --no-manual .
R CMD INSTALL --configure-args="--with-download=https://github.com/dudoslav/TileDB/archive/refs/heads/db/sc-62563/bootstrap.zip" $(ls -1tr *.tar.gz | tail -1)

@dudoslav
Copy link
Contributor

Created a PR that should hopefully fix this: #803

@johnkerl
Copy link
Collaborator

Manual nightly run with #803 merged was ☘️

@jdblischak
Copy link
Collaborator

Thanks @dudoslav for fixing this!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

4 participants