---
metadata:
  - name: generator
    content: Diplodoc Platform v5.50.6
alternate:
  - https://ydb.tech/docs/en/contributor/load-actors-pdisk-log.md?version=main
  - https://ydb.tech/docs/ru/contributor/load-actors-pdisk-log.md?version=main
sourcePath: en/core/contributor/load-actors-pdisk-log.md
---
> **Documentation Index:** Fetch the complete configuration index at https://ydb.tech/docs/en/llms.txt

# PDiskLogLoad

All VDisks hosted on a certain PDisk log data about their own performance to the common PDisk log. VDisks gradually delete their obsolete data at the beginning of the log to free up disk space. Sometimes, after one VDisk completes logging data and before another one starts logging it, a section with useless obsolete data may appear. In this case, such data is deleted automatically, and the PDiskLogLoad actor will perform a test to check whether such an operation is running correctly.

<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd"><svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" version="1.1" width="751px" height="491px" viewBox="-0.5 -0.5 751 491" style="background-color: rgb(255, 255, 255);"><defs/><g><rect x="0" y="0" width="750" height="490" fill="none" stroke="none" pointer-events="all"/><rect x="500" y="220.62" width="40" height="20" fill="#6c8ebf" stroke="rgb(0, 0, 0)" pointer-events="all"/><rect x="420" y="220.62" width="80" height="20" fill="#6c8ebf" stroke="#000000" pointer-events="all"/><path d="M 470 160.62 L 465 160.62 Q 460 160.62 460 170.62 L 460 190 Q 460 200 455 200 L 452.5 200 Q 450 200 455 200 L 457.5 200 Q 460 200 460 210 L 460 229.37 Q 460 239.37 465 239.37 L 470 239.37" fill="none" stroke="rgb(0, 0, 0)" stroke-miterlimit="10" transform="translate(460,0)scale(-1,1)translate(-460,0)rotate(90,460,200)" pointer-events="all"/><rect x="430" y="160.62" width="60" height="30" fill="none" stroke="none" pointer-events="all"/><g transform="translate(-0.5 -0.5)"><switch><foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 58px; height: 1px; padding-top: 176px; margin-left: 431px;"><div data-drawio-colors="color: rgb(0, 0, 0); " style="box-sizing: border-box; font-size: 0px; text-align: center;"><div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;">SizeInterval<br/>VDisk1</div></div></div></foreignObject><text x="460" y="179" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px" text-anchor="middle">SizeInterv...</text></switch></g><path d="M 530 200 L 510 200" fill="none" stroke="rgb(0, 0, 0)" stroke-width="2" stroke-miterlimit="10" stroke-dasharray="2 6" pointer-events="stroke"/><path d="M 490 90 L 485 90 Q 480 90 480 100 L 480 140 Q 480 150 475 150 L 472.5 150 Q 470 150 475 150 L 477.5 150 Q 480 150 480 160 L 480 200 Q 480 210 485 210 L 490 210" fill="none" stroke="rgb(0, 0, 0)" stroke-miterlimit="10" transform="translate(480,0)scale(-1,1)translate(-480,0)rotate(90,480,150)" pointer-events="all"/><rect x="425" y="110.93" width="110" height="30" fill="none" stroke="none" pointer-events="all"/><g transform="translate(-0.5 -0.5)"><switch><foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 108px; height: 1px; padding-top: 126px; margin-left: 426px;"><div data-drawio-colors="color: rgb(0, 0, 0); " style="box-sizing: border-box; font-size: 0px; text-align: center;"><div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;">BurstSize VDisk1</div></div></div></foreignObject><text x="480" y="130" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px" text-anchor="middle">BurstSize VDisk1</text></switch></g><path d="M 529.54 2.65 L 524.54 2.65 Q 519.54 2.65 519.54 12.65 L 519.54 91.56 Q 519.54 101.56 514.54 101.56 L 512.04 101.56 Q 509.54 101.56 514.54 101.56 L 517.04 101.56 Q 519.54 101.56 519.54 111.56 L 519.54 190.47 Q 519.54 200.47 524.54 200.47 L 529.54 200.47" fill="none" stroke="rgb(0, 0, 0)" stroke-miterlimit="10" transform="translate(519.54,0)scale(-1,1)translate(-519.54,0)rotate(90,519.54,101.56)" pointer-events="all"/><rect x="490" y="60" width="60" height="30" fill="none" stroke="none" pointer-events="all"/><g transform="translate(-0.5 -0.5)"><switch><foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 58px; height: 1px; padding-top: 75px; margin-left: 491px;"><div data-drawio-colors="color: rgb(0, 0, 0); " style="box-sizing: border-box; font-size: 0px; text-align: center;"><div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;">BurstInterval<br/>VDisk1</div></div></div></foreignObject><text x="520" y="79" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px" text-anchor="middle">BurstInter...</text></switch></g><path d="M 550 -70 L 545 -70 Q 540 -70 540 -60 L 540 40 Q 540 50 535 50 L 532.5 50 Q 530 50 535 50 L 537.5 50 Q 540 50 540 60 L 540 160 Q 540 170 545 170 L 550 170" fill="none" stroke="rgb(0, 0, 0)" stroke-miterlimit="10" transform="translate(540,0)scale(-1,1)translate(-540,0)rotate(90,540,50)" pointer-events="all"/><path d="M 650 139.8 L 630 139.8" fill="none" stroke="rgb(0, 0, 0)" stroke-width="2" stroke-miterlimit="10" stroke-dasharray="2 6" pointer-events="stroke"/><rect x="472.81" y="19.99" width="134.37" height="30" fill="none" stroke="none" pointer-events="all"/><g transform="translate(-0.5 -0.5)"><switch><foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 132px; height: 1px; padding-top: 35px; margin-left: 474px;"><div data-drawio-colors="color: rgb(0, 0, 0); " style="box-sizing: border-box; font-size: 0px; text-align: center;"><div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;">StorageDuration VDisk1</div></div></div></foreignObject><text x="540" y="39" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px" text-anchor="middle">StorageDuration VDisk1</text></switch></g><rect x="540" y="220.62" width="80" height="20" fill="#dae8fc" stroke="#000000" pointer-events="all"/><rect x="620" y="220.62" width="40" height="20" fill="#6c8ebf" stroke="rgb(0, 0, 0)" pointer-events="all"/><rect x="100" y="240.62" width="40" height="20" fill="#82b366" stroke="rgb(0, 0, 0)" pointer-events="all"/><rect x="20" y="240.62" width="80" height="20" fill="#82b366" stroke="#000000" pointer-events="all"/><rect x="140" y="240.62" width="280" height="20" fill="#f5f5f5" stroke="#000000" pointer-events="all"/><path d="M 70 240.62 L 65 240.62 Q 60 240.62 60 250.62 L 60 269.99 Q 60 279.99 55 279.99 L 52.5 279.99 Q 50 279.99 55 279.99 L 57.5 279.99 Q 60 279.99 60 289.99 L 60 309.37 Q 60 319.37 65 319.37 L 70 319.37" fill="none" stroke="rgb(0, 0, 0)" stroke-miterlimit="10" transform="translate(60,0)scale(-1,1)translate(-60,0)rotate(-90,60,279.99)" pointer-events="all"/><rect x="30" y="275" width="60" height="58.75" fill="none" stroke="none" pointer-events="all"/><g transform="translate(-0.5 -0.5)"><switch><foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 58px; height: 1px; padding-top: 304px; margin-left: 31px;"><div data-drawio-colors="color: rgb(0, 0, 0); " style="box-sizing: border-box; font-size: 0px; text-align: center;"><div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;">SizeInterval<br/>VDisk2</div></div></div></foreignObject><text x="60" y="308" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px" text-anchor="middle">SizeInterv...</text></switch></g><path d="M 130 279.8 L 110 279.8" fill="none" stroke="rgb(0, 0, 0)" stroke-width="2" stroke-miterlimit="10" stroke-dasharray="2 6" pointer-events="stroke"/><path d="M 90 270.62 L 85 270.62 Q 80 270.62 80 280.62 L 80 320.62 Q 80 330.62 75 330.62 L 72.5 330.62 Q 70 330.62 75 330.62 L 77.5 330.62 Q 80 330.62 80 340.62 L 80 380.62 Q 80 390.62 85 390.62 L 90 390.62" fill="none" stroke="rgb(0, 0, 0)" stroke-miterlimit="10" transform="translate(80,0)scale(-1,1)translate(-80,0)rotate(-90,80,330.62)" pointer-events="all"/><path d="M 310.93 100.93 L 305.93 100.93 Q 300.93 100.93 300.93 110.93 L 300.93 370.93 Q 300.93 380.93 295.93 380.93 L 293.43 380.93 Q 290.93 380.93 295.93 380.93 L 298.43 380.93 Q 300.93 380.93 300.93 390.93 L 300.93 650.93 Q 300.93 660.93 305.93 660.93 L 310.93 660.93" fill="none" stroke="rgb(0, 0, 0)" stroke-miterlimit="10" transform="translate(300.93,0)scale(-1,1)translate(-300.93,0)rotate(-90,300.93,380.93)" pointer-events="all"/><rect x="270.93" y="390.62" width="60" height="30" fill="none" stroke="none" pointer-events="all"/><g transform="translate(-0.5 -0.5)"><switch><foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 58px; height: 1px; padding-top: 406px; margin-left: 272px;"><div data-drawio-colors="color: rgb(0, 0, 0); " style="box-sizing: border-box; font-size: 0px; text-align: center;"><div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;">BurstInterval<br/>VDisk2</div></div></div></foreignObject><text x="301" y="409" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px" text-anchor="middle">BurstInter...</text></switch></g><path d="M 349.7 110.93 L 344.7 110.93 Q 339.7 110.93 339.7 120.93 L 339.7 420.93 Q 339.7 430.93 334.7 430.93 L 332.2 430.93 Q 329.7 430.93 334.7 430.93 L 337.2 430.93 Q 339.7 430.93 339.7 440.93 L 339.7 740.93 Q 339.7 750.93 344.7 750.93 L 349.7 750.93" fill="none" stroke="rgb(0, 0, 0)" stroke-miterlimit="10" transform="translate(339.7,0)scale(-1,1)translate(-339.7,0)rotate(-90,339.7,430.93)" pointer-events="all"/><path d="M 627.82 329.83 L 607.82 329.83" fill="none" stroke="rgb(0, 0, 0)" stroke-width="2" stroke-miterlimit="10" stroke-dasharray="2 6" pointer-events="stroke"/><rect x="272.52" y="440.93" width="134.37" height="30" fill="none" stroke="none" pointer-events="all"/><g transform="translate(-0.5 -0.5)"><switch><foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 132px; height: 1px; padding-top: 456px; margin-left: 274px;"><div data-drawio-colors="color: rgb(0, 0, 0); " style="box-sizing: border-box; font-size: 0px; text-align: center;"><div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;">StorageDuration VDisk2</div></div></div></foreignObject><text x="340" y="460" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px" text-anchor="middle">StorageDuration VDisk2</text></switch></g><rect x="25" y="339.37" width="110" height="30" fill="none" stroke="none" pointer-events="all"/><g transform="translate(-0.5 -0.5)"><switch><foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 108px; height: 1px; padding-top: 354px; margin-left: 26px;"><div data-drawio-colors="color: rgb(0, 0, 0); " style="box-sizing: border-box; font-size: 0px; text-align: center;"><div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;">BurstSize VDisk2</div></div></div></foreignObject><text x="80" y="358" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px" text-anchor="middle">BurstSize VDisk2</text></switch></g><rect x="580" y="240.62" width="80" height="20" fill="#82b366" stroke="rgb(0, 0, 0)" pointer-events="all"/><rect x="420" y="240.62" width="160" height="20" fill="#d5e8d4" stroke="#000000" pointer-events="all"/><path d="M 290 60.62 L 285 60.62 Q 280 60.62 280 70.62 L 280 190 Q 280 200 275 200 L 272.5 200 Q 270 200 275 200 L 277.5 200 Q 280 200 280 210 L 280 329.37 Q 280 339.37 285 339.37 L 290 339.37" fill="none" stroke="rgb(0, 0, 0)" stroke-miterlimit="10" transform="translate(280,0)scale(-1,1)translate(-280,0)rotate(90,280,200)" pointer-events="all"/><rect x="210" y="160.62" width="140" height="30" fill="none" stroke="none" pointer-events="all"/><g transform="translate(-0.5 -0.5)"><switch><foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 138px; height: 1px; padding-top: 176px; margin-left: 211px;"><div data-drawio-colors="color: rgb(0, 0, 0); " style="box-sizing: border-box; font-size: 0px; text-align: center;"><div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;">Data that is being deleted</div></div></div></foreignObject><text x="280" y="179" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px" text-anchor="middle">Data that is being dele...</text></switch></g><path d="M 20 239.87 L 678.33 239.87 L 678.33 230.62 L 700 240.62 L 678.33 250.62 L 678.33 241.37 L 20 241.37 Z" fill="#000000" stroke="#000000" stroke-miterlimit="10" pointer-events="all"/><rect x="670" y="190.62" width="60" height="30" fill="none" stroke="none" pointer-events="all"/><g transform="translate(-0.5 -0.5)"><switch><foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 58px; height: 1px; padding-top: 206px; margin-left: 671px;"><div data-drawio-colors="color: rgb(0, 0, 0); " style="box-sizing: border-box; font-size: 0px; text-align: center;"><div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;">Timeline,<br/>bytes</div></div></div></foreignObject><text x="700" y="209" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px" text-anchor="middle">Timeline,...</text></switch></g></g><switch><g requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"/><a transform="translate(0,-5)" xlink:href="https://www.diagrams.net/doc/faq/svg-export-text-problems" target="_blank"><text text-anchor="middle" font-size="10px" x="50%" y="100%">Text is not SVG - cannot display</text></a></switch></svg>

{% note info %}

This ad-hoc actor is used for testing specific functionality. This is not a load actor. It is designed to check whether something works properly.

{% endnote %}

## Actor parameters {#options}

<!-- source: en/_includes/load-actors-params.md -->
The basic actor parameters are described below. For the full list of parameters, see the [load_test.proto](https://github.com/ydb-platform/ydb/blob/main/ydb/core/protos/load_test.proto) file in the YDB Git repository.
<!-- endsource: en/_includes/load-actors-params.md -->

| Parameter          | Description                                                                                                                                                                                                                                                     |
|--------------------|-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| `PDiskId`          | ID of the Pdisk being loaded on the node.                                                                                                                                                                                                                       |
| `PDiskGuid`        | Globally unique ID of the PDisk being loaded.                                                                                                                                                                                                                   |
| `VDiskId`          | Parameters of the VDisk used to generate load.<ul><li>`GroupID`: Group ID.</li><li>`GroupGeneration`: Group generation.</li><li>`Ring`: Group ring ID.</li><li>`Domain`: Ring fail domain ID.</li><li>`VDisk`: Index of the VDisk in the fail domain.</li></ul> |
| `MaxInFlight`      | Number of simultaneously processed requests.                                                                                                                                                                                                                    |
| `SizeIntervalMin`  | Minimum size of log record in bytes.                                                                                                                                                                                                                            |
| `SizeIntervalMax`  | Maximum size of log record in bytes.                                                                                                                                                                                                                            |
| `BurstInterval`    | Interval between logging sessions in bytes.                                                                                                                                                                                                                     |
| `BurstSize`        | Total amount of data to log per session, in bytes.                                                                                                                                                                                                              |
| `StorageDuration`  | Virtual time in bytes. Indicates how long the VDisk should store its data in the log.                                                                                                                                                                           |
| `IsWardenlessTest` | Set it to `False` in case the PDiskReadLoad actor is run on the cluster; otherwise, e.g. when it is run during unit tests, set it to `True`.                                                                                                                    |

## Examples {#example}

The following actor simulates the performance of two VDisks. The first VDisk logs a message of `65536` bytes every `65536` bytes and deletes data that exceeds `1048576` bytes. The second one writes `1024` bytes as messages of `128` bytes every `2147483647` bytes and deletes data that exceeds `2147483647` bytes.

```proto
PDiskLogLoad: {
    Tag: 1
    PDiskId: 1
    PDiskGuid: 12345
    DurationSeconds: 60
    Workers: {
        VDiskId: {GroupID: 1 GroupGeneration: 5 Ring: 1 Domain: 1 VDisk: 1}
        MaxInFlight: 1
        SizeIntervalMin: 65536
        SizeIntervalMax: 65536
        BurstInterval: 65536
        BurstSize: 65536
        StorageDuration: 1048576
    }
    Workers: {
        VDiskId: {GroupID: 2 GroupGeneration: 5 Ring: 1 Domain: 1 VDisk: 1}
        MaxInFlight: 1
        SizeIntervalMin: 128
        SizeIntervalMax: 128
        BurstInterval: 2147483647
        BurstSize: 1024
        StorageDuration: 2147483647
    }
    IsWardenlessTest: false
}
```

The test passes if none of the cluster nodes got overloaded and the status of the PDisk in question is `Normal`. You can check this using the cluster Embedded UI.
