By separate package, I mean a distinct Gradle module with a separate set of
dependencies.
I know about the movement away from Perfkit and I plan to create Jenkins
jobs utilizing only Gradle tasks for the tests.
Lukasz, should I add you as a reviewer for the pull request?

Thank you for the resources.
Michal

On Mon, Jul 15, 2019 at 3:50 PM Lukasz Cwik <lc...@google.com> wrote:

> When do you mean by separate package?
>
> Most of our perf tests are integrated with PerfkitBenchmarker such as our
> JDBC benchmark[1] and Python BigQuery benchmark[2] and point to a specific
> IT class/method that contains the benchmarks.
>
> Note that there was a recent discussion about moving away from
> PerfkitBenchmarker though and it would be good to follow up with Lukasz
> Gajowy about it since he has done a bunch of the existing benchmarks[3].
>
> Finally, there were some docs about benchmarking on our design docs[4]
> page that may provide additional details[5, 6].
>
> 1:
> https://github.com/apache/beam/blob/master/.test-infra/jenkins/job_PerformanceTests_JDBC.groovy
> 2:
> https://github.com/apache/beam/blob/master/.test-infra/jenkins/job_PerformanceTests_BigQueryIO_Python.groovy
> 3:
> https://lists.apache.org/thread.html/dab1c093799248787e8b75e63b66d7389b594b649a4d9a4a5db1cfbb@%3Cdev.beam.apache.org%3E
> 4: https://beam.apache.org/contribute/design-documents/
> 5:
> https://docs.google.com/document/d/1dA-5s6OHiP_cz-NRAbwapoKF5MEC1wKps4A5tFbIPKE
> 6:
> https://docs.google.com/document/d/1Cb7XVmqe__nA_WCrriAifL-3WCzbZzV4Am5W_SkQLeA
>
> On Mon, Jul 15, 2019 at 8:03 AM Michał Walenia <michal.wale...@polidea.com>
> wrote:
>
>> Thanks for the information. I don't think that the task you mentioned
>> fits my case - I want to run a performance test on a real service and
>> running it with a battery of other tests doesn't make much sense to me.
>> It's similar to the case of other integration tests that are excluded
>> from the task you linked.
>> Is keeping the test in a separate package viable in your opinion?
>>
>> Thanks!
>> Michal
>>
>> On Fri, Jul 12, 2019 at 3:45 PM Lukasz Cwik <lc...@google.com> wrote:
>>
>>> Yes, there is a dependency between Dataflow -> GCP IOs and this is
>>> expected since Dataflow depends on parts of those implementations for its
>>> own execution purposes. We definitely don't want GCP IOs depending on
>>> Dataflow since we would like users of other runners to still be able to use
>>> GCP IOs without bringing in Dataflow specific dependencies.
>>>
>>> There is already a test definition inside of the Dataflow runner package
>>> that is meant to run integration tests defined in the GCP IO package named
>>> googleCloudPlatformLegacyWorkerIntegrationTest[1] task, does this fit your
>>> needs?
>>>
>>> 1:
>>> https://github.com/apache/beam/blob/0fce2b88660f52dae638697e1472aa108c982ae6/runners/google-cloud-dataflow-java/build.gradle#L318
>>>
>>> On Fri, Jul 12, 2019 at 5:17 AM Michał Walenia <
>>> michal.wale...@polidea.com> wrote:
>>>
>>>> Hi all,
>>>> recently when I was trying to implement a performance test of
>>>> BigQueryIO, I ran into an issue when trying to run the test on Dataflow.
>>>> The problem was that I encountered a circular dependency when compiling
>>>> the tests. I added the test in org.apache.beam.sdk.io.gcp.bigquery package,
>>>> so I also needed to add DataflowRunner as a dependency in order to launch
>>>> the test. The error was that DataflowRunner package depends on
>>>> org.apache.beam.sdk.io.gcp.bigquery package (for example in [1]).
>>>> Should it be like that?
>>>> For now, in order to solve the problem, I intend to move the
>>>> performance test to its own package in my PR [2] I am wondering about the
>>>> right approach to this - shouldn’t we decouple the DataflowRunner code from
>>>> IOs? If not, what’s the reason behind the way the modules are organized?
>>>> I noticed that 5 tests are excluded from the integrationTest task in
>>>> io.google-cloud-platform.bigquery build.gradle file [3]. Are they
>>>> launched on Dataflow anywhere? I couldn’t find their usage except for the
>>>> exclusions.
>>>>
>>>> [1] PubSubIO translations section in DataflowRunner.java
>>>> <https://github.com/apache/beam/blob/0fce2b88660f52dae638697e1472aa108c982ae6/runners/google-cloud-dataflow-java/src/main/java/org/apache/beam/runners/dataflow/DataflowRunner.java#L1104>
>>>> [2] My PR <https://github.com/apache/beam/pull/9041>
>>>> [3] DefaultCoderCloudObjectTranslatorRegistrar
>>>> <https://github.com/apache/beam/blob/0fce2b88660f52dae638697e1472aa108c982ae6/runners/google-cloud-dataflow-java/src/main/java/org/apache/beam/runners/dataflow/util/DefaultCoderCloudObjectTranslatorRegistrar.java#L45>
>>>>
>>>> Best regards
>>>> Michal
>>>>
>>>> --
>>>>
>>>> Michał Walenia
>>>> Polidea <https://www.polidea.com/> | Software Engineer
>>>>
>>>> M: +48 791 432 002 <+48791432002>
>>>> E: michal.wale...@polidea.com
>>>>
>>>> Unique Tech
>>>> Check out our projects! <https://www.polidea.com/our-work>
>>>>
>>>
>>
>> --
>>
>> Michał Walenia
>> Polidea <https://www.polidea.com/> | Software Engineer
>>
>> M: +48 791 432 002 <+48791432002>
>> E: michal.wale...@polidea.com
>>
>> Unique Tech
>> Check out our projects! <https://www.polidea.com/our-work>
>>
>

-- 

Michał Walenia
Polidea <https://www.polidea.com/> | Software Engineer

M: +48 791 432 002 <+48791432002>
E: michal.wale...@polidea.com

Unique Tech
Check out our projects! <https://www.polidea.com/our-work>

Reply via email to