Tested manually against Dell ECS
@twuebi can you check whether this change fixes your problem?
@twuebi can you check whether this change fixes your problem?
Hi, thanks for the fix, I'm not sure how to test, I tried building Trino on mac with m3 but it failed on the trino-docs step, is there a docker image available for this PR?
Following my analysis after stepping through the function with a debugger, the fix should work.
@twuebi you can build without trino-docs (it should work) by calling ./mvnw
with -pl "!:trino-docs"
Thanks, I managed to build trino now, but cannot build the docker image:
...
Running scriptlet: filesystem-3.16-5.el9.x86_64 68/68
rosetta error: Unable to open /proc/self/exe: 2
warning: %posttrans(filesystem-3.16-5.el9.x86_64) scriptlet failed, signal 5
Error in POSTTRANS scriptlet in rpm package filesystem
Running scriptlet: libstdc++-11.5.0-5.el9_5.x86_64 68/68
rosetta error: Unable to open /proc/self/exe: 2
...
Failed:
ca-certificates-2024.2.69_v8.0.303-91.4.el9_4.noarch
I also haven't gotten it to run on host:
trino-server/target/trino-server-476-SNAPSHOT/bin/launcher run --data-dir /tmp/trino
procname shim does not exist at location .../trino/core/trino-server/target/trino-server-476-SNAPSHOT/bin/darwin-arm64/libprocname.so
Error occurred during initialization of VM
Could not find agent library /usr/lib/trino/bin/libjvmkill.so in absolute path, with error: dlopen(/usr/lib/trino/bin/libjvmkill.so, 0x0001): tried: '/usr/lib/trino/bin/libjvmkill.so' (no such file), '/System/Volumes/Preboot/Cryptexes/OS/usr/lib/trino/bin/libjvmkill.so' (no such file), '/usr/lib/trino/bin/libjvmkill.so' (no such file, not in dyld cache)
I'm quite confident that your fix is working fine, if possible, could you go ahead and merge? I'll happily test once there's an image available. Otherwise, I'd also try suggestions to fix my build / run issues.
You can try to build only your architecture: ./core/docker/build.sh -a arm64
Thanks, that seems to work, I'll get back to you once I finished testing!
I've pushed docker images built from this PR to my own docker hub:
I've verified the fix, it works. I ran into some troubles where trino does not seem to send the X-Iceberg-Access-Delegation
header. Without changing the default of lakekeeper to vended-credentials
, I was hitting missing credentials in this check (io/trino/plugin/iceberg/IcebergMetadata.java:1285
), not sure if that was a recent change in trino:
try {
// S3 Tables internally assigns a unique location for each table
if (!isS3Tables(location.toString())) {
TrinoFileSystem fileSystem = fileSystemFactory.create(session.getIdentity(), transaction.table().io().properties());
if (!replace && fileSystem.listFiles(location).hasNext()) {
throw new TrinoException(ICEBERG_FILESYSTEM_ERROR, format("" +
"Cannot create a table on a non-empty location: %s, set 'iceberg.unique-table-location=true' in your Iceberg catalog properties " +
"to use unique table locations for every table.", location));
}
}
return newWritableTableHandle(tableMetadata.getTable(), transaction.table(), retryMode);
}
catch (IOException e) {
throw new TrinoException(ICEBERG_FILESYSTEM_ERROR, "Failed checking new table's location: " + location, e);
}
anyways, many thanks for fixing this bug & helping me to build the container.
@twuebi the second bug was actually related to iceberg 1.9.0 update (http client changes), credit goes to @chenjian2664 and @anusudarsan for fixing that :)
@twuebi the second bug was actually related to iceberg 1.9.0 update (http client changes), credit goes to @chenjian2664 and @anusudarsan for fixing that :)
Thanks a lot, just tested and it was indeed fixed by #25800!
@twuebi our internal testing caught that :)
Login to write a write a comment.
It's no longer needed since AWS SDK v2 added a LegacyMd5Plugin to ensure backward compatibility with S3-compliant storage.
Should fix #25780
Description
Additional context and related issues
Release notes
( ) This is not user-visible or is docs only, and no release notes are required.
( ) Release notes are required. Please propose a release note for me.
( ) Release notes are required, with the following suggested text: