You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@kudu.apache.org by "Marton Greber (Jira)" <ji...@apache.org> on 2023/04/11 16:43:00 UTC

[jira] [Updated] (KUDU-3470) Implement mini cluster for Python

     [ https://issues.apache.org/jira/browse/KUDU-3470?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Marton Greber updated KUDU-3470:
--------------------------------
    Description: 
The control shell concept has been introduced to simplify/unify the client testing (https://github.com/apache/kudu/commit/761ce10b797c4f6345f0b84cfe30bcc92e346893)
In Java a proper mini cluster has been implemented in MiniKuduCluster.java.
However in Python we only have a bare minimum cluster start/stop functionality, with the option of hard coded default flags. There are many deficiencies for example the inability to set custom flags on a per test case basis, customise/interact with the mini cluster in an easy way.

This came up during testing considerations for JWT support. This is tightly coupled to a proper mini cluster setup, as the mini cluster spins up the oidc. Furthermore the jwt cluster object is necessary to create the jwt: https://github.com/apache/kudu/blob/master/src/kudu/integration-tests/security-itest.cc#L537
During these operations protobuf is used, which is to this point not introduced to the Python testing infra (it uses JSON).


  was:
The control shell concept has been introduced to simplify/unify the client testing (https://github.com/apache/kudu/commit/761ce10b797c4f6345f0b84cfe30bcc92e346893)
In Java a proper mini cluster has been implemented in MiniKuduCluster.java.
However in Python we only have a bare minimum cluster start/stop functionality, with the option of hard coded default flags. There are many deficiencies for example the inability to set custom flags on a per test case basis, customise/interact with the mini cluster in an easy way.

This came up during testing considerations for JWT support. This is tightly coupled to a proper mini cluster setup, as the mini cluster spins up to oidc. Furthermore the jwt cluster object is necessary to create the jwt: https://github.com/apache/kudu/blob/master/src/kudu/integration-tests/security-itest.cc#L537
During these operations protobuf is used, which is to this point not introduced to the Python testing infra (it uses JSON).



> Implement mini cluster for Python
> ---------------------------------
>
>                 Key: KUDU-3470
>                 URL: https://issues.apache.org/jira/browse/KUDU-3470
>             Project: Kudu
>          Issue Type: Task
>            Reporter: Marton Greber
>            Priority: Major
>
> The control shell concept has been introduced to simplify/unify the client testing (https://github.com/apache/kudu/commit/761ce10b797c4f6345f0b84cfe30bcc92e346893)
> In Java a proper mini cluster has been implemented in MiniKuduCluster.java.
> However in Python we only have a bare minimum cluster start/stop functionality, with the option of hard coded default flags. There are many deficiencies for example the inability to set custom flags on a per test case basis, customise/interact with the mini cluster in an easy way.
> This came up during testing considerations for JWT support. This is tightly coupled to a proper mini cluster setup, as the mini cluster spins up the oidc. Furthermore the jwt cluster object is necessary to create the jwt: https://github.com/apache/kudu/blob/master/src/kudu/integration-tests/security-itest.cc#L537
> During these operations protobuf is used, which is to this point not introduced to the Python testing infra (it uses JSON).



--
This message was sent by Atlassian Jira
(v8.20.10#820010)