Conversation
lbergelson
commented
Dec 21, 2018
- updating google-cloud-nio from 0.62.0 -> 0.74.0
- fixes confusing gcloud warning about end user credentials that was output on every start up
- improves WARNING: Failed to detect whether we are running on Google Compute Engine. #5447 by reducing the warning to an info
|
@lbergelson looks like |
|
The warning -> info change is from googleapis/google-auth-library-java#199 It should be in 0.75 I think... This includes two other prs that I made to fix other output issues in the auth library which made it into the 0.74 release. |
|
The only way to test would be scraping the logs, which we could do... but it seems gross. |
|
Yeah, probably not worth it. |
cmnbroad
left a comment
There was a problem hiding this comment.
Ok, thx for the updates. LGTM once tests pass.
|
There seems to be a change in how gcs recognizes directories that breaks things Something in Previously: Weirdly, without the slash it's now true where previously it wasn't... @jean-philippe-martin This seems related to googleapis/google-cloud-java#3775 |
|
Toggling the psuedodirs option doesn't seem to fix the problem... |
|
That certainly looks like a bug! I'm off for a few days but will take a look when I return. |
|
@lbergelson The situation is rather odd: you seem to have both a file and a folder named " $ gsutil ls gs://hellbender/test/resources/parallel_copy/
gs://hellbender/test/resources/parallel_copy/
gs://hellbender/test/resources/parallel_copy/bar.txt
gs://hellbender/test/resources/parallel_copy/foo.txtThe file exists and is empty. For evidence, observe that I can cat the file (note how it behaves differently from normal folders): $ gsutil cat gs://hellbender/test/resources/
CommandException: No URLs matched: gs://hellbender/test/resources/
$ gsutil cat gs://hellbender/test/resources/parallel_copy/
$So NIO is technically correct, |
|
The issue linked above indicates a way you could have ended in this twilight zone: apparently this is the default behavior of the GCS web UI and its "create folder" button. (As you can see in there, we're already working on a fix that will make .isDirectory return true in this case). |
|
@lbergelson Should this PR be closed? It seems like we'll need a PR to bump us to a different gcloud release that fixes the issue you ran into here. |
|
I've bumped this to 0.78.0 which includes a fix for the directory issue, it's not JP's fix so we'll see if it works as expected... |
Codecov Report
@@ Coverage Diff @@
## master #5546 +/- ##
===============================================
+ Coverage 87.037% 87.038% +0.001%
Complexity 31728 31728
===============================================
Files 1943 1943
Lines 146193 146194 +1
Branches 16141 16141
===============================================
+ Hits 127242 127244 +2
Misses 13064 13064
+ Partials 5887 5886 -1
|
aedbbf8 to
c69f957
Compare
|
Bleh... the newest version is broken in a worse way. They fixed a bug where some service providers weren't being shaded correctly, but it broke the shadow jar by accidentally shading the service provider for the actual FileSystemProvider. |
|
I opened a new issue to track this new bug here: googleapis/google-cloud-java#4403 Hopefully this is an easy fix. |
|
A fix for the shading issue has been merged into google-cloud-java, but is not yet released. |
|
Does that mean 4.1 is still going to use the NIO fork from your personal repo? |
|
@ldgauthier No, we've been on the official google-cloud-java release for a long time now -- our fork is long dead. We're just trying to update to the latest version to fix some edge-case issues with empty files in GCS buckets, but it's not a blocker for the 4.1 release. |
|
Excellent! I will update my GATK dockers soon and then I won't have to look at that message any more either. |
* updating google-cloud-nio from 0.62.0 -> 0.74.0 * fixes confusing gcloud warning about end user credentials that was output on every start up * improves #5447 by reducing the warning to an info
this includes a potential fix for the directory issue
c69f957 to
8e0b529
Compare
droazen
left a comment
There was a problem hiding this comment.
👍 one comment, then good to merge
| // enable requester pays and indicate who pays | ||
| builder = builder.autoDetectRequesterPays(true).userProject(requesterProject); | ||
| } | ||
| builder.usePseudoDirectories(true); |
There was a problem hiding this comment.
Can you add a comment explaining what this does?