[ 
https://issues.apache.org/jira/browse/TINKERPOP-1600?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15827516#comment-15827516
 ] 

ASF GitHub Bot commented on TINKERPOP-1600:
-------------------------------------------

Github user vtslab commented on the issue:

    https://github.com/apache/tinkerpop/pull/533
  
    Just undoing [this 
commit](https://github.com/apache/tinkerpop/pull/534/commits/62648242c6576b020d2dd2933b89b9d69e87fed0)
 in TINKERPOP-1566 and merging in TINKERPOP-1600 does not work for me, see 
below. I did not dig in yet, maybe you recognize what is happening. Other tests 
without serializeResultToString configured fail the same way. Btw, in my 
testing branch I renamed GremlinServerAuthKrb5IntegrateTest to 
GremlinServerAuthKrb5Test for faster testing.
    
    Tests run: 8, Failures: 0, Errors: 3, Skipped: 0, Time elapsed: 34.711 sec 
<<< FAILURE! - in org.apache.tinkerpop.gremlin.server.GremlinServerAuthKrb5Test
    
shouldAuthenticateWithSerializeResultToString(org.apache.tinkerpop.gremlin.server.GremlinServerAuthKrb5Test)
  Time elapsed: 5.611 sec  <<< ERROR!
    java.util.concurrent.ExecutionException: 
java.lang.IllegalArgumentException: Illegal base64 character 5b
        at 
java.util.concurrent.CompletableFuture.reportGet(CompletableFuture.java:357)
        at 
java.util.concurrent.CompletableFuture.get(CompletableFuture.java:1895)
        at 
org.apache.tinkerpop.gremlin.server.GremlinServerAuthKrb5Test.shouldAuthenticateWithSerializeResultToString(GremlinServerAuthKrb5Test.java:220)
    Caused by: java.lang.IllegalArgumentException: Illegal base64 character 5b
        at java.util.Base64$Decoder.decode0(Base64.java:714)
        at java.util.Base64$Decoder.decode(Base64.java:526)
        at java.util.Base64$Decoder.decode(Base64.java:549)
        at 
org.apache.tinkerpop.gremlin.driver.Handler$GremlinSaslAuthenticationHandler.channelRead0(Handler.java:119)
        at 
org.apache.tinkerpop.gremlin.driver.Handler$GremlinSaslAuthenticationHandler.channelRead0(Handler.java:67)
        at 
io.netty.channel.SimpleChannelInboundHandler.channelRead(SimpleChannelInboundHandler.java:105)



> Consistent use of base 64 encoded bytes for SASL negotiation
> ------------------------------------------------------------
>
>                 Key: TINKERPOP-1600
>                 URL: https://issues.apache.org/jira/browse/TINKERPOP-1600
>             Project: TinkerPop
>          Issue Type: Improvement
>          Components: driver, server
>    Affects Versions: 3.2.3
>            Reporter: stephen mallette
>            Assignee: stephen mallette
>             Fix For: 3.2.4
>
>
> Gremlin Server currently uses a mix of base 64 encoded bytes and byte arrays 
> for SASL negotiation. This can cause problems for certain serializers (like 
> toString serialization with gryo) as the byte array won't be respected. In an 
> effort to easily support virtually any serializer a switch to using just base 
> 64 string is probably best. 
> This can be done in such a way as to be backward compatible. The base64 SASL 
> value will be returned in the response message status attributes map in a key 
> called "sasl". The original byte array will continue to be returned in the 
> response message result. Eventually, we could phase out the byte array in the 
> result - perhaps with 3.3.0.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Reply via email to