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

Binaries built with latest tebako (0.12.11) hang indefinitely #258

Closed
d4rky-pl opened this issue Feb 13, 2025 · 7 comments · Fixed by tamatebako/libdwarfs#135 or #260
Closed

Binaries built with latest tebako (0.12.11) hang indefinitely #258

d4rky-pl opened this issue Feb 13, 2025 · 7 comments · Fixed by tamatebako/libdwarfs#135 or #260
Assignees

Comments

@d4rky-pl
Copy link
Contributor

When building the binary with the latest (unnanounced in Releases) version of tebako, the binaries do not run correctly and get stuck, hanging indefinitely until killed. This affects all environments we build for (linux, Intel Mac, Apple Silicon Mac).

Building the same project with previous version of tebako (0.12.10) works just fine.

Reproduction steps

mkdir bin
echo "puts 'hello'" > bin/test
tebako press -R 3.2.4 -r $(pwd) -e test
chmod +x test
./test
@d4rky-pl
Copy link
Contributor Author

Building the same project with previous version of tebako (0.12.10) works just fine.

...or not. Mac Intel, CI:

In file included from /Users/semaphore/.tebako/deps/src/_dwarfs_wr/deps/src/_dwarfs/src/dwarfs/filesystem_extractor.cpp:43:17:25
In file included from /Users/semaphore/.tebako/deps/src/_dwarfs_wr/deps/src/_dwarfs/include/dwarfs/filesystem_v2.h:40:17:25
In file included from /Users/semaphore/.tebako/deps/src/_dwarfs_wr/deps/src/_dwarfs/include/dwarfs/metadata_types.h:34:17:25
In file included from /usr/local/include/thrift/lib/cpp2/frozen/FrozenUtil.h:26:17:25
In file included from /usr/local/include/thrift/lib/cpp2/protocol/Serializer.h:26:17:25
In file included from /usr/local/include/thrift/lib/cpp2/protocol/CompactProtocol.h:433:17:25
In file included from /usr/local/include/thrift/lib/cpp2/protocol/CompactProtocol-inl.h:22:17:25
In file included from /usr/local/include/thrift/lib/cpp/util/VarintUtils.h:83:17:25
/usr/local/include/thrift/lib/cpp/util/VarintUtils-inl.h:339:3: error: use of undeclared identifier 'FOLLY_PRAGMA_UNROLL_N'17:25
  FOLLY_PRAGMA_UNROLL_N(16)17:25
  ^17:25
/usr/local/include/thrift/lib/cpp/util/VarintUtils-inl.h:339:28: error: expected ';' after expression17:25
  FOLLY_PRAGMA_UNROLL_N(16)17:25
                           ^17:25
[ 94%] Building CXX object CMakeFiles/dwarfs.dir/src/dwarfs/fstypes.cpp.o17:25
[ 94%] Building CXX object CMakeFiles/dwarfs.dir/src/dwarfs/fs_section.cpp.o17:25
In file included from /Users/semaphore/.tebako/deps/src/_dwarfs_wr/deps/src/_dwarfs/src/dwarfs/filesystem_v2.cpp:37:17:26
In file included from /Users/semaphore/.tebako/deps/src/_dwarfs_wr/deps/src/_dwarfs/include/dwarfs/filesystem_v2.h:40:17:26
In file included from /Users/semaphore/.tebako/deps/src/_dwarfs_wr/deps/src/_dwarfs/include/dwarfs/metadata_types.h:34:17:26
In file included from /usr/local/include/thrift/lib/cpp2/frozen/FrozenUtil.h:26:17:26
In file included from /usr/local/include/thrift/lib/cpp2/protocol/Serializer.h:26:17:26
In file included from /usr/local/include/thrift/lib/cpp2/protocol/CompactProtocol.h:433:17:26
In file included from /usr/local/include/thrift/lib/cpp2/protocol/CompactProtocol-inl.h:22:17:26
In file included from /usr/local/include/thrift/lib/cpp/util/VarintUtils.h:83:17:26
/usr/local/include/thrift/lib/cpp/util/VarintUtils-inl.h:339:3: error: use of undeclared identifier 'FOLLY_PRAGMA_UNROLL_N'17:26
  FOLLY_PRAGMA_UNROLL_N(16)17:26
  ^17:26
/usr/local/include/thrift/lib/cpp/util/VarintUtils-inl.h:339:28: error: expected ';' after expression17:26
  FOLLY_PRAGMA_UNROLL_N(16)17:26
                           ^17:26
2 errors generated.17:26
make[9]: *** [CMakeFiles/dwarfs.dir/src/dwarfs/filesystem_extractor.cpp.o] Error 117:26
make[9]: *** Waiting for unfinished jobs....17:26
2 errors generated.17:27
make[9]: *** [CMakeFiles/dwarfs.dir/src/dwarfs/filesystem_v2.cpp.o] Error 117:27
make[8]: *** [CMakeFiles/dwarfs.dir/all] Error 217:27
make[7]: *** [all] Error 217:27
make[6]: *** [/Users/semaphore/.tebako/deps/src/_dwarfs_wr/deps/src/_dwarfs-stamp/_dwarfs-build] Error 217:27
make[5]: *** [CMakeFiles/_dwarfs.dir/all] Error 217:27
make[4]: *** [all] Error 217:27
make[3]: *** [/Users/semaphore/.tebako/deps/src/_dwarfs_wr-stamp/_dwarfs_wr-build] Error 217:27
make[2]: *** [CMakeFiles/_dwarfs_wr.dir/all] Error 217:27
make[1]: *** [CMakeFiles/setup.dir/rule] Error 217:27
make: *** [setup] Error 217:27
Tebako script failed: 'tebako setup' build step failed [102]

@d4rky-pl
Copy link
Contributor Author

Followup: the above issue does not happen when running tebako 0.12.9

@maxirmx maxirmx self-assigned this Feb 14, 2025
@maxirmx
Copy link
Member

maxirmx commented Feb 14, 2025

I guess it was

mkdir bin
echo "puts 'hello'" > bin/test
tebako press -R 3.2.4 -r bin -e test
chmod +x test
./test

It does not hang, it waits for input :) If I press ENTER it works

It happens only when I do gem install tebako when I run tebako from source it does not happen
When I run it on GHA it does not happen either even with gem install tebako

I will need some time to understand how did I get to this point

@maxirmx
Copy link
Member

maxirmx commented Feb 14, 2025

It is fixed by v0.12.12 (both gem and containers, all Ruby versions)
There was a bug that caused Ruby enter interactive mode on startup

Thank you for reporting

@maxirmx
Copy link
Member

maxirmx commented Feb 14, 2025

Hi @d4rky-pl,

You've been using Tebako for a few months and have helped us a lot—thank you!

I’d like to ask if you’d be willing to help us once again by writing a short post for the Tebako blog. We’d love to hear how Tebako has helped you tackle real-world Ruby deployment challenges.

Thank you for considering it!

cc @ronaldtse

@d4rky-pl
Copy link
Contributor Author

@maxirmx I'll be happy to do that but my schedule right is now is pretty packed. I'll keep it in mind and let you know when I have the time :)

@maxirmx
Copy link
Member

maxirmx commented Feb 19, 2025

@maxirmx I'll be happy to do that but my schedule right is now is pretty packed. I'll keep it in mind and let you know when I have the time :)

Thank you

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