Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
165 changes: 165 additions & 0 deletions docs/src/main/draw.io/delta/views/passivation.drawio
Original file line number Diff line number Diff line change
@@ -0,0 +1,165 @@
<mxfile host="app.diagrams.net" agent="Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:131.0) Gecko/20100101 Firefox/131.0" version="24.8.3">
<diagram id="C5RBs43oDa-KdzZeNtuy" name="Page-1">
<mxGraphModel dx="875" dy="501" grid="1" gridSize="10" guides="1" tooltips="1" connect="1" arrows="1" fold="1" page="1" pageScale="1" pageWidth="827" pageHeight="1169" math="0" shadow="0">
<root>
<mxCell id="WIyWlLk6GJQsqaUBKTNV-0" />
<mxCell id="WIyWlLk6GJQsqaUBKTNV-1" parent="WIyWlLk6GJQsqaUBKTNV-0" />
<mxCell id="dJcEcIP1LmpaNdM1S7pa-61" value="" style="rounded=1;whiteSpace=wrap;html=1;strokeColor=#67AB9F;strokeWidth=3;" vertex="1" parent="WIyWlLk6GJQsqaUBKTNV-1">
<mxGeometry x="420" y="70" width="570" height="390" as="geometry" />
</mxCell>
<mxCell id="dJcEcIP1LmpaNdM1S7pa-59" value="" style="rounded=1;whiteSpace=wrap;html=1;strokeColor=#FFB570;strokeWidth=3;" vertex="1" parent="WIyWlLk6GJQsqaUBKTNV-1">
<mxGeometry x="20" y="70" width="360" height="390" as="geometry" />
</mxCell>
<mxCell id="WIyWlLk6GJQsqaUBKTNV-2" value="" style="rounded=0;html=1;jettySize=auto;orthogonalLoop=1;fontSize=11;endArrow=block;endFill=0;endSize=8;strokeWidth=1;shadow=0;labelBackgroundColor=none;edgeStyle=orthogonalEdgeStyle;" parent="WIyWlLk6GJQsqaUBKTNV-1" source="WIyWlLk6GJQsqaUBKTNV-3" target="WIyWlLk6GJQsqaUBKTNV-6" edge="1">
<mxGeometry relative="1" as="geometry" />
</mxCell>
<mxCell id="WIyWlLk6GJQsqaUBKTNV-3" value="Pulling new data" style="rounded=1;whiteSpace=wrap;html=1;fontSize=12;glass=0;strokeWidth=1;shadow=0;fillColor=#dae8fc;strokeColor=#6c8ebf;" parent="WIyWlLk6GJQsqaUBKTNV-1" vertex="1">
<mxGeometry x="80" y="110" width="120" height="40" as="geometry" />
</mxCell>
<mxCell id="WIyWlLk6GJQsqaUBKTNV-4" value="Yes" style="rounded=0;html=1;jettySize=auto;orthogonalLoop=1;fontSize=11;endArrow=block;endFill=0;endSize=8;strokeWidth=1;shadow=0;labelBackgroundColor=none;edgeStyle=orthogonalEdgeStyle;entryX=0.5;entryY=0;entryDx=0;entryDy=0;" parent="WIyWlLk6GJQsqaUBKTNV-1" source="WIyWlLk6GJQsqaUBKTNV-6" target="dJcEcIP1LmpaNdM1S7pa-23" edge="1">
<mxGeometry y="20" relative="1" as="geometry">
<mxPoint as="offset" />
<mxPoint x="150" y="340" as="targetPoint" />
</mxGeometry>
</mxCell>
<mxCell id="WIyWlLk6GJQsqaUBKTNV-5" value="No" style="edgeStyle=orthogonalEdgeStyle;rounded=0;html=1;jettySize=auto;orthogonalLoop=1;fontSize=11;endArrow=block;endFill=0;endSize=8;strokeWidth=1;shadow=0;labelBackgroundColor=none;" parent="WIyWlLk6GJQsqaUBKTNV-1" source="WIyWlLk6GJQsqaUBKTNV-6" target="WIyWlLk6GJQsqaUBKTNV-7" edge="1">
<mxGeometry y="10" relative="1" as="geometry">
<mxPoint as="offset" />
</mxGeometry>
</mxCell>
<mxCell id="dJcEcIP1LmpaNdM1S7pa-2" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;exitX=0;exitY=0.5;exitDx=0;exitDy=0;entryX=0;entryY=0.5;entryDx=0;entryDy=0;endArrow=block;endFill=0;" edge="1" parent="WIyWlLk6GJQsqaUBKTNV-1" target="WIyWlLk6GJQsqaUBKTNV-3">
<mxGeometry relative="1" as="geometry">
<mxPoint x="90" y="360" as="sourcePoint" />
<Array as="points">
<mxPoint x="50" y="360" />
<mxPoint x="50" y="130" />
</Array>
</mxGeometry>
</mxCell>
<mxCell id="WIyWlLk6GJQsqaUBKTNV-6" value="New data detected ?" style="rhombus;whiteSpace=wrap;html=1;shadow=0;fontFamily=Helvetica;fontSize=12;align=center;strokeWidth=1;spacing=6;spacingTop=-4;fillColor=#ffe6cc;strokeColor=#d79b00;" parent="WIyWlLk6GJQsqaUBKTNV-1" vertex="1">
<mxGeometry x="90" y="200" width="100" height="80" as="geometry" />
</mxCell>
<mxCell id="dJcEcIP1LmpaNdM1S7pa-4" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;exitX=0.5;exitY=0;exitDx=0;exitDy=0;entryX=1;entryY=0.5;entryDx=0;entryDy=0;endArrow=block;endFill=0;" edge="1" parent="WIyWlLk6GJQsqaUBKTNV-1" source="WIyWlLk6GJQsqaUBKTNV-7" target="WIyWlLk6GJQsqaUBKTNV-3">
<mxGeometry relative="1" as="geometry" />
</mxCell>
<mxCell id="WIyWlLk6GJQsqaUBKTNV-7" value="Wait for a given interval" style="rounded=1;whiteSpace=wrap;html=1;fontSize=12;glass=0;strokeWidth=1;shadow=0;fillColor=#dae8fc;strokeColor=#6c8ebf;" parent="WIyWlLk6GJQsqaUBKTNV-1" vertex="1">
<mxGeometry x="240" y="220" width="120" height="40" as="geometry" />
</mxCell>
<mxCell id="dJcEcIP1LmpaNdM1S7pa-23" value="Process and index data" style="rounded=1;whiteSpace=wrap;html=1;fontSize=12;glass=0;strokeWidth=1;shadow=0;fillColor=#dae8fc;strokeColor=#6c8ebf;" vertex="1" parent="WIyWlLk6GJQsqaUBKTNV-1">
<mxGeometry x="80" y="340" width="120" height="40" as="geometry" />
</mxCell>
<mxCell id="dJcEcIP1LmpaNdM1S7pa-24" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;exitX=0.5;exitY=1;exitDx=0;exitDy=0;" edge="1" parent="WIyWlLk6GJQsqaUBKTNV-1" source="dJcEcIP1LmpaNdM1S7pa-23" target="dJcEcIP1LmpaNdM1S7pa-23">
<mxGeometry relative="1" as="geometry" />
</mxCell>
<mxCell id="dJcEcIP1LmpaNdM1S7pa-25" value="" style="rounded=0;html=1;jettySize=auto;orthogonalLoop=1;fontSize=11;endArrow=block;endFill=0;endSize=8;strokeWidth=1;shadow=0;labelBackgroundColor=none;edgeStyle=orthogonalEdgeStyle;" edge="1" parent="WIyWlLk6GJQsqaUBKTNV-1" source="dJcEcIP1LmpaNdM1S7pa-26" target="dJcEcIP1LmpaNdM1S7pa-30">
<mxGeometry relative="1" as="geometry" />
</mxCell>
<mxCell id="dJcEcIP1LmpaNdM1S7pa-26" value="Pulling new data" style="rounded=1;whiteSpace=wrap;html=1;fontSize=12;glass=0;strokeWidth=1;shadow=0;fillColor=#dae8fc;strokeColor=#6c8ebf;" vertex="1" parent="WIyWlLk6GJQsqaUBKTNV-1">
<mxGeometry x="497" y="114" width="120" height="40" as="geometry" />
</mxCell>
<mxCell id="dJcEcIP1LmpaNdM1S7pa-27" value="Yes" style="rounded=0;html=1;jettySize=auto;orthogonalLoop=1;fontSize=11;endArrow=block;endFill=0;endSize=8;strokeWidth=1;shadow=0;labelBackgroundColor=none;edgeStyle=orthogonalEdgeStyle;entryX=0.5;entryY=0;entryDx=0;entryDy=0;" edge="1" parent="WIyWlLk6GJQsqaUBKTNV-1" source="dJcEcIP1LmpaNdM1S7pa-30" target="dJcEcIP1LmpaNdM1S7pa-33">
<mxGeometry y="20" relative="1" as="geometry">
<mxPoint as="offset" />
<mxPoint x="567" y="405" as="targetPoint" />
</mxGeometry>
</mxCell>
<mxCell id="dJcEcIP1LmpaNdM1S7pa-28" value="No" style="edgeStyle=orthogonalEdgeStyle;rounded=0;html=1;jettySize=auto;orthogonalLoop=1;fontSize=11;endArrow=block;endFill=0;endSize=8;strokeWidth=1;shadow=0;labelBackgroundColor=none;entryX=0;entryY=0.5;entryDx=0;entryDy=0;" edge="1" parent="WIyWlLk6GJQsqaUBKTNV-1" source="dJcEcIP1LmpaNdM1S7pa-30" target="dJcEcIP1LmpaNdM1S7pa-35">
<mxGeometry y="10" relative="1" as="geometry">
<mxPoint as="offset" />
</mxGeometry>
</mxCell>
<mxCell id="dJcEcIP1LmpaNdM1S7pa-29" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;exitX=0;exitY=0.5;exitDx=0;exitDy=0;entryX=0;entryY=0.5;entryDx=0;entryDy=0;endArrow=block;endFill=0;" edge="1" parent="WIyWlLk6GJQsqaUBKTNV-1" target="dJcEcIP1LmpaNdM1S7pa-26" source="dJcEcIP1LmpaNdM1S7pa-33">
<mxGeometry relative="1" as="geometry">
<mxPoint x="507" y="364" as="sourcePoint" />
<Array as="points">
<mxPoint x="467" y="425" />
<mxPoint x="467" y="134" />
</Array>
</mxGeometry>
</mxCell>
<mxCell id="dJcEcIP1LmpaNdM1S7pa-30" value="New data detected ?" style="rhombus;whiteSpace=wrap;html=1;shadow=0;fontFamily=Helvetica;fontSize=12;align=center;strokeWidth=1;spacing=6;spacingTop=-4;fillColor=#ffe6cc;strokeColor=#d79b00;" vertex="1" parent="WIyWlLk6GJQsqaUBKTNV-1">
<mxGeometry x="507" y="265" width="100" height="80" as="geometry" />
</mxCell>
<mxCell id="dJcEcIP1LmpaNdM1S7pa-31" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;exitX=0.5;exitY=0;exitDx=0;exitDy=0;entryX=1;entryY=0.5;entryDx=0;entryDy=0;endArrow=block;endFill=0;" edge="1" parent="WIyWlLk6GJQsqaUBKTNV-1" source="dJcEcIP1LmpaNdM1S7pa-32" target="dJcEcIP1LmpaNdM1S7pa-26">
<mxGeometry relative="1" as="geometry" />
</mxCell>
<mxCell id="dJcEcIP1LmpaNdM1S7pa-32" value="Wait for a given interval" style="rounded=1;whiteSpace=wrap;html=1;fontSize=12;glass=0;strokeWidth=1;shadow=0;fillColor=#dae8fc;strokeColor=#6c8ebf;" vertex="1" parent="WIyWlLk6GJQsqaUBKTNV-1">
<mxGeometry x="647" y="154" width="120" height="40" as="geometry" />
</mxCell>
<mxCell id="dJcEcIP1LmpaNdM1S7pa-33" value="Process and index data" style="rounded=1;whiteSpace=wrap;html=1;fontSize=12;glass=0;strokeWidth=1;shadow=0;fillColor=#dae8fc;strokeColor=#6c8ebf;" vertex="1" parent="WIyWlLk6GJQsqaUBKTNV-1">
<mxGeometry x="497" y="405" width="120" height="40" as="geometry" />
</mxCell>
<mxCell id="dJcEcIP1LmpaNdM1S7pa-34" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;exitX=0.5;exitY=1;exitDx=0;exitDy=0;" edge="1" parent="WIyWlLk6GJQsqaUBKTNV-1" source="dJcEcIP1LmpaNdM1S7pa-33" target="dJcEcIP1LmpaNdM1S7pa-33">
<mxGeometry relative="1" as="geometry" />
</mxCell>
<mxCell id="dJcEcIP1LmpaNdM1S7pa-36" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;exitX=0.5;exitY=0;exitDx=0;exitDy=0;entryX=0.5;entryY=1;entryDx=0;entryDy=0;endArrow=block;endFill=0;" edge="1" parent="WIyWlLk6GJQsqaUBKTNV-1" source="dJcEcIP1LmpaNdM1S7pa-35" target="dJcEcIP1LmpaNdM1S7pa-32">
<mxGeometry relative="1" as="geometry" />
</mxCell>
<mxCell id="dJcEcIP1LmpaNdM1S7pa-37" value="Yes" style="edgeLabel;html=1;align=center;verticalAlign=middle;resizable=0;points=[];" vertex="1" connectable="0" parent="dJcEcIP1LmpaNdM1S7pa-36">
<mxGeometry x="-0.1831" y="-2" relative="1" as="geometry">
<mxPoint as="offset" />
</mxGeometry>
</mxCell>
<mxCell id="dJcEcIP1LmpaNdM1S7pa-35" value="&lt;div&gt;Is project&amp;nbsp;&lt;/div&gt;&lt;div&gt;active ?&lt;/div&gt;" style="rhombus;whiteSpace=wrap;html=1;shadow=0;fontFamily=Helvetica;fontSize=12;align=center;strokeWidth=1;spacing=6;spacingTop=-4;fillColor=#ffe6cc;strokeColor=#d79b00;" vertex="1" parent="WIyWlLk6GJQsqaUBKTNV-1">
<mxGeometry x="657" y="265" width="100" height="80" as="geometry" />
</mxCell>
<mxCell id="dJcEcIP1LmpaNdM1S7pa-42" value="Passivated" style="rounded=1;whiteSpace=wrap;html=1;fontSize=12;glass=0;strokeWidth=1;shadow=0;fillColor=#dae8fc;strokeColor=#6c8ebf;" vertex="1" parent="WIyWlLk6GJQsqaUBKTNV-1">
<mxGeometry x="808" y="285" width="120" height="40" as="geometry" />
</mxCell>
<mxCell id="dJcEcIP1LmpaNdM1S7pa-47" value="&lt;div&gt;Is project&amp;nbsp;&lt;/div&gt;&lt;div&gt;active ?&lt;/div&gt;" style="rhombus;whiteSpace=wrap;html=1;shadow=0;fontFamily=Helvetica;fontSize=12;align=center;strokeWidth=1;spacing=6;spacingTop=-4;fillColor=#ffe6cc;strokeColor=#d79b00;" vertex="1" parent="WIyWlLk6GJQsqaUBKTNV-1">
<mxGeometry x="818" y="134" width="100" height="80" as="geometry" />
</mxCell>
<mxCell id="dJcEcIP1LmpaNdM1S7pa-50" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;exitX=1;exitY=0.5;exitDx=0;exitDy=0;entryX=0;entryY=0.5;entryDx=0;entryDy=0;endArrow=block;endFill=0;" edge="1" parent="WIyWlLk6GJQsqaUBKTNV-1" source="dJcEcIP1LmpaNdM1S7pa-35" target="dJcEcIP1LmpaNdM1S7pa-42">
<mxGeometry relative="1" as="geometry">
<mxPoint x="717" y="275" as="sourcePoint" />
<mxPoint x="717" y="204" as="targetPoint" />
</mxGeometry>
</mxCell>
<mxCell id="dJcEcIP1LmpaNdM1S7pa-51" value="No" style="edgeLabel;html=1;align=center;verticalAlign=middle;resizable=0;points=[];" vertex="1" connectable="0" parent="dJcEcIP1LmpaNdM1S7pa-50">
<mxGeometry x="-0.1831" y="-2" relative="1" as="geometry">
<mxPoint y="-13" as="offset" />
</mxGeometry>
</mxCell>
<mxCell id="dJcEcIP1LmpaNdM1S7pa-52" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;entryX=0.5;entryY=1;entryDx=0;entryDy=0;endArrow=block;endFill=0;" edge="1" parent="WIyWlLk6GJQsqaUBKTNV-1" target="dJcEcIP1LmpaNdM1S7pa-47">
<mxGeometry relative="1" as="geometry">
<mxPoint x="868" y="284" as="sourcePoint" />
<mxPoint x="717" y="204" as="targetPoint" />
</mxGeometry>
</mxCell>
<mxCell id="dJcEcIP1LmpaNdM1S7pa-53" value="Yes" style="edgeLabel;html=1;align=center;verticalAlign=middle;resizable=0;points=[];" vertex="1" connectable="0" parent="dJcEcIP1LmpaNdM1S7pa-52">
<mxGeometry x="-0.1831" y="-2" relative="1" as="geometry">
<mxPoint as="offset" />
</mxGeometry>
</mxCell>
<mxCell id="dJcEcIP1LmpaNdM1S7pa-54" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;entryX=0.5;entryY=0;entryDx=0;entryDy=0;endArrow=block;endFill=0;exitX=0.5;exitY=0;exitDx=0;exitDy=0;" edge="1" parent="WIyWlLk6GJQsqaUBKTNV-1" source="dJcEcIP1LmpaNdM1S7pa-47" target="dJcEcIP1LmpaNdM1S7pa-26">
<mxGeometry relative="1" as="geometry">
<mxPoint x="878" y="294" as="sourcePoint" />
<mxPoint x="878" y="224" as="targetPoint" />
</mxGeometry>
</mxCell>
<mxCell id="dJcEcIP1LmpaNdM1S7pa-55" value="Yes" style="edgeLabel;html=1;align=center;verticalAlign=middle;resizable=0;points=[];" vertex="1" connectable="0" parent="dJcEcIP1LmpaNdM1S7pa-54">
<mxGeometry x="-0.1831" y="-2" relative="1" as="geometry">
<mxPoint x="-39" y="-8" as="offset" />
</mxGeometry>
</mxCell>
<mxCell id="dJcEcIP1LmpaNdM1S7pa-56" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;entryX=1;entryY=0.5;entryDx=0;entryDy=0;endArrow=block;endFill=0;exitX=1;exitY=0.5;exitDx=0;exitDy=0;" edge="1" parent="WIyWlLk6GJQsqaUBKTNV-1" source="dJcEcIP1LmpaNdM1S7pa-47" target="dJcEcIP1LmpaNdM1S7pa-42">
<mxGeometry relative="1" as="geometry">
<mxPoint x="878" y="294" as="sourcePoint" />
<mxPoint x="878" y="224" as="targetPoint" />
</mxGeometry>
</mxCell>
<mxCell id="dJcEcIP1LmpaNdM1S7pa-57" value="No" style="edgeLabel;html=1;align=center;verticalAlign=middle;resizable=0;points=[];" vertex="1" connectable="0" parent="dJcEcIP1LmpaNdM1S7pa-56">
<mxGeometry x="-0.1831" y="-2" relative="1" as="geometry">
<mxPoint x="11" y="16" as="offset" />
</mxGeometry>
</mxCell>
<mxCell id="dJcEcIP1LmpaNdM1S7pa-60" value="Indexing without passivation" style="text;html=1;align=center;verticalAlign=middle;resizable=0;points=[];autosize=1;strokeColor=none;fillColor=none;fontColor=#FFB570;fontStyle=1" vertex="1" parent="WIyWlLk6GJQsqaUBKTNV-1">
<mxGeometry x="20" y="40" width="170" height="30" as="geometry" />
</mxCell>
<mxCell id="dJcEcIP1LmpaNdM1S7pa-62" value="Indexing with passivation" style="text;html=1;align=center;verticalAlign=middle;resizable=0;points=[];autosize=1;strokeColor=none;fillColor=none;fontColor=#67AB9F;fontStyle=1" vertex="1" parent="WIyWlLk6GJQsqaUBKTNV-1">
<mxGeometry x="425" y="40" width="160" height="30" as="geometry" />
</mxCell>
</root>
</mxGraphModel>
</diagram>
</mxfile>
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
8 changes: 8 additions & 0 deletions docs/src/main/paradox/docs/delta/api/graph-analytics-api.md
Original file line number Diff line number Diff line change
Expand Up @@ -17,6 +17,14 @@ Please visit @ref:[Authentication & authorization](authentication.md) section to

@@@

@@@ note

Graph analytics indexing routines are also subject to passivation.

Please visit @ref:[Passivation](views/index.md#passivation) section to learn more about it.

@@@

@@@ note { .warning }

The described endpoints are experimental and the responses structure might change in the future.
Expand Down
48 changes: 48 additions & 0 deletions docs/src/main/paradox/docs/delta/api/views/index.md
Original file line number Diff line number Diff line change
Expand Up @@ -159,6 +159,54 @@ Request
Response
: @@snip [view-list.json](../assets/views/list.json)

## Passivation

@@@ note

This feature remains experimental and is not enabled by default.

Its configuration and implementation is subject to change.

@@@

Before this feature, when an indexing routine linked to a view consumed every resource to index, it was
waiting for a fixed delay before attempting to pull eventual changes which may have happened during this interval.

As it was repeated for every indexing routine when a Nexus deployment has a multitude of projects and views, this ended up
with a overhead on the database.

Passivation allows to reduce an overhead by centralizing those calls with a process dedicated to look for eventual
changes in projects.

With passivation when a view is considered active and has indexed all available data, that is to say a change on one of its resources has been pushed
on a given interval (by default in the last `10 minutes` and configurable), it keeps the same approach and looks for eventual data at a given interval.

When there is no change in the last `10 minutes`, the view is marked as inactive and gets passivated, that is to say
it stops looking for eventual changes and relies on the dedicated process looking for eventual changes to wake it up when this one
detects a change.

![Passivation](../assets/views/passivation.png)

The process detecting project changes is divided in 2 parts:

* A writing part which is computing incrementally the maximum offset and modified date for every project in Nexus and saves it in
the primary store.
This part relies on @ref:[the state log](../../architecture.md#anatomy) and the incremental approach allows it to be a lot faster than a sql query or a materialized view
which can take seconds (or more) to execute.
* A reading part which reads back those values in the database and computes for the different projects if those are active or not.
This part is called by the different indexing routines so that they know if they have to get out of their passivation state.

The default configuration is defined @link:[here](https://github.com/BlueBrain/nexus/blob/master/delta/app/src/main/resources/app.conf#L54)
in the `elem-query` and `project-last-update` configuration keys.

The values defined there are quite conservative and when passivation is enabled, the different delays and intervals can be
reduced according to your needs (they should not be lower than `200ms` though):

* A shorter interval/delay will improve indexing speed but will increase the pressure on the primary store
* A longer one will on the other hand reduce the pressure on the primary store but will also reduce indexing speed



## Indexing failures

### Listing indexing failures
Expand Down
6 changes: 6 additions & 0 deletions docs/src/main/paradox/docs/releases/index.md
Original file line number Diff line number Diff line change
@@ -1,6 +1,7 @@
@@@ index

- @ref:[v1.11 Release Notes](v1.11-release-notes.md)
- @ref:[v1.10 To v1.11 Migration](v1.10-to-v1.11-migration.md)
- @ref:[v1.10 Release Notes](v1.10-release-notes.md)
- @ref:[v1.9 To v1.10 Migration](v1.9-to-v1.10-migration.md)
- @ref:[v1.9 Release Notes](v1.9-release-notes.md)
Expand Down Expand Up @@ -35,6 +36,11 @@ The items listed below are changes that have been made in this release that brea
-
@@@

### New features/enhancements

- @ref:[Conditional requests](../delta/api/conditional-requests.md)
- @ref:[Passivation](../delta/api/views/index.md#passivation)

## 1.10.0

### Breaking changes
Expand Down
Loading