You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@geode.apache.org by "Owen Nichols (Jira)" <ji...@apache.org> on 2022/06/22 20:47:04 UTC

[jira] [Closed] (GEODE-9760) Partition Regions Gets Statistic Broken

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

Owen Nichols closed GEODE-9760.
-------------------------------

> Partition Regions Gets Statistic Broken
> ---------------------------------------
>
>                 Key: GEODE-9760
>                 URL: https://issues.apache.org/jira/browse/GEODE-9760
>             Project: Geode
>          Issue Type: Bug
>          Components: statistics
>    Affects Versions: 1.15.0
>            Reporter: Juan Ramos
>            Priority: Major
>             Fix For: 1.15.0
>
>         Attachments: workspace.zip
>
>
> The issue was introduced by [GEODE-8876|https://issues.apache.org/jira/browse/GEODE-8876]. After commit [5dde7d765c252ef20cfb16981b18e68903e32165|https://github.com/apache/geode/commit/5dde7d765c252ef20cfb16981b18e68903e32165], the {{CachePerfStats.gets}} statistic for {{PartitionRegion}} remains empty, even though {{get}} operations are executed on the region.
> I'm attaching a small scenario that reproduces the problem every single time when using any commit after the mentioned one.
> The {{reproduce.sh}} script:
> # Builds a small java client that creates 10000 entries into the configured region, and launches 5 threads to continuously execute the {{Region.get()}} operation for 60 seconds.
> # Starts a cluster with 1 locator and 3 servers.
> # Creates a partition region.
> # Launches the client application and waits for it to complete.
> # Prints the amount of gets operations/sec for the relevant region (VSD can be used here to inspect the values instead, the result is exactly the same).
> ---
> How to reproduce the problem:
> # Download the attached tar file.
> # Uncompress the file and update the {{GEMFIRE}} variable to use your local build of the latest Geode from {{develop}}.
> # Execute the {{reproduce.sh}} script and wait for it to finish.
> Once the execution is done, the output will show the following:
> {noformat}
> server-0.gfs:
>   gets operations/sec: samples=74 min=0 max=0 average=0 stddev=0 last=0
> server-1.gfs:
>   gets operations/sec: samples=74 min=0 max=0 average=0 stddev=0 last=0
> server-2.gfs:
>   gets operations/sec: samples=75 min=0 max=0 average=0 stddev=0 last=0
> {noformat}
> The above is clearly wrong, as the {{client}} application continuously executed the {{Region.get()}} operation using 5 threads for 60 seconds.
> If you execute a reverse apply of commit [5dde7d765c252ef20cfb16981b18e68903e32165|https://github.com/apache/geode/commit/5dde7d765c252ef20cfb16981b18e68903e32165] to undo the changes (use {{git show 5dde7d765c252ef20cfb16981b18e68903e32165 | git apply -R}}), re-build {{geode}} and execute the tests again the output, instead, will show the correct values:
> {noformat}
> server-0.gfs:
>   gets operations/sec: samples=75 min=0 max=22500.5 average=15252.61 stddev=7747.94 last=0
> server-1.gfs:
>   gets operations/sec: samples=75 min=0 max=22487.54 average=15241.54 stddev=7705.99 last=0
> server-2.gfs:
>   gets operations/sec: samples=75 min=0 max=22194.61 average=15459.16 stddev=7751.5 last=0
> {noformat}



--
This message was sent by Atlassian Jira
(v8.20.7#820007)