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

Andrew Wong commented on KUDU-3154:
-----------------------------------

Some updates here, given that we have other Ranger tests that succeed in this 
environment, I had a hunch that the issue was due to the fact that the test 
doesn't post any policies before sending requests. So I updated the Ranger 
initialization with the following snippet in our test:
{code:java}
  Status InitializeRanger() {
    ranger_.reset(new MiniRanger("127.0.0.1"));                                 
                                                                                
                                                                                
                                                                                
                                                
    RETURN_NOT_OK(ranger_->Start());
    // Grant some policy to the user so the Ranger client policy refresher can
    // pick something up. In some environments the absense of policies can
    // cause the plugin to wait for a policy to appear.
    PolicyItem item;
    item.first.emplace_back("user");
    item.second.emplace_back(ActionPB::METADATA);
    AuthorizationPolicy policy;
    policy.databases.emplace_back("db");
    policy.tables.emplace_back("table");
    policy.items.emplace_back(std::move(item));
    RETURN_NOT_OK(ranger_->AddPolicy(std::move(policy)));
    RETURN_NOT_OK(ranger_->CreateClientConfig(test_dir_));
    client_.reset(new RangerClient(env_, metric_entity_));
    return client_->Start();
  }
{code}
And lo and behold, the test succeeds. This implies the differentiating factor 
is the existence of at least one policy being posted to the 
{{service/plugins/policies?deleteIfExists=true}} endpoint. I tried with a 
different user too; it doesn't seem to matter whether the user making the 
plugin request in the test has a policy or not.

This environment is using Ubuntu 14.04.6 LTS and the following Java version for 
both the Ranger server and plugin
{code:java}
java -version
openjdk version "1.8.0_222"
OpenJDK Runtime Environment (build 1.8.0_222-8u222-b10-1~14.04-b10)
OpenJDK 64-Bit Server VM (build 25.222-b10, mixed mode) {code}

> RangerClientTestBase.TestLogging sometimes fails
> ------------------------------------------------
>
>                 Key: KUDU-3154
>                 URL: https://issues.apache.org/jira/browse/KUDU-3154
>             Project: Kudu
>          Issue Type: Bug
>          Components: ranger, test
>    Affects Versions: 1.13.0
>            Reporter: Alexey Serbin
>            Priority: Major
>         Attachments: kudu-3154_jstacks.txt, ranger_client-test.txt, 
> ranger_client-test.txt.xz
>
>
> The {{RangerClientTestBase.TestLogging}} scenario of the 
> {{ranger_client-test}} sometimes fails (all types of builds) with error 
> message like below:
> {noformat}
> src/kudu/ranger/ranger_client-test.cc:398: Failure
> Failed                                                                        
>   
> Bad status: Timed out: timed out while in flight                              
>   
> I0620 07:06:02.907177  1140 server.cc:247] Received an EOF from the 
> subprocess  
> I0620 07:06:02.910923  1137 server.cc:317] get failed, inbound queue shut 
> down: Aborted:
> I0620 07:06:02.910964  1141 server.cc:380] outbound queue shut down: Aborted: 
>   
> I0620 07:06:02.910995  1138 server.cc:317] get failed, inbound queue shut 
> down: Aborted:
> I0620 07:06:02.910984  1139 server.cc:317] get failed, inbound queue shut 
> down: Aborted:
> {noformat}
> The log is attached.



--
This message was sent by Atlassian Jira
(v8.3.4#803005)

Reply via email to