<!-- 
RSS generated by JIRA (8.20.10#820010-sha1:ace47f9899e9ee25d7157d59aa17ab06aee30d3d) at Wed Feb 07 19:57:04 UTC 2024

It is possible to restrict the fields that are returned in this document by specifying the 'field' parameter in your request.
For example, to request only the issue key and summary append 'field=key&field=summary' to the URL of your request.
-->
<rss version="0.92" >
<channel>
    <title>OpenDaylight JIRA</title>
    <link>https://jira.opendaylight.org</link>
    <description>This file is an XML representation of an issue</description>
    <language>en-us</language>    <build-info>
        <version>8.20.10</version>
        <build-number>820010</build-number>
        <build-date>22-06-2022</build-date>
    </build-info>


<item>
            <title>[CONTROLLER-2043] Circuit breaker timeout with BGP and tell-based protocol</title>
                <link>https://jira.opendaylight.org/browse/CONTROLLER-2043</link>
                <project id="10113" key="CONTROLLER">controller</project>
                    <description>&lt;p&gt;We are hitting this problem:&lt;/p&gt;

&lt;div class=&quot;preformatted panel&quot; style=&quot;border-width: 1px;&quot;&gt;&lt;div class=&quot;preformattedContent panelContent&quot;&gt;
&lt;pre&gt;2022-04-24T06:12:59,752 | ERROR | opendaylight-cluster-data-akka.actor.default-dispatcher-17 | Shard                            | 284 - org.opendaylight.controller.repackaged-akka - 5.0.2 | Failed to persist event type [org.opendaylight.controller.cluster.raft.persisted.SimpleReplicatedLogEntry] with sequence number [262218] for persistenceId [member-1-shard-default-config].
akka.pattern.CircuitBreaker$$anon$13: Circuit Breaker Timed out.
2022-04-24T06:12:59,767 | INFO  | opendaylight-cluster-data-shard-dispatcher-31 | Shard                            | 289 - org.opendaylight.controller.sal-clustering-commons - 5.0.2 | Stopping Shard member-1-shard-default-config
&lt;/pre&gt;
&lt;/div&gt;&lt;/div&gt;

&lt;p&gt;in BGP test suite:&lt;br/&gt;
&lt;a href=&quot;https://s3-logs.opendaylight.org/logs/releng/vex-yul-odl-jenkins-1/bgpcep-csit-1node-bgp-ingest-all-sulfur/216/odl_1/odl1_karaf.log.gz&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;https://s3-logs.opendaylight.org/logs/releng/vex-yul-odl-jenkins-1/bgpcep-csit-1node-bgp-ingest-all-sulfur/216/odl_1/odl1_karaf.log.gz&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Previous versions work out fine, except they end up saving snapshot only at the 160K mark due to using ask-based protocol, which uses fewer persistence entries.&lt;/p&gt;</description>
                <environment></environment>
        <key id="35717">CONTROLLER-2043</key>
            <summary>Circuit breaker timeout with BGP and tell-based protocol</summary>
                <type id="10104" iconUrl="https://jira.opendaylight.org/secure/viewavatar?size=xsmall&amp;avatarId=10303&amp;avatarType=issuetype">Bug</type>
                                            <priority id="1" iconUrl="https://jira.opendaylight.org/images/icons/priorities/blocker.svg">Highest</priority>
                        <status id="10003" iconUrl="https://jira.opendaylight.org/images/icons/status_generic.gif" description="">Confirmed</status>
                    <statusCategory id="2" key="new" colorName="blue-gray"/>
                                    <resolution id="-1">Unresolved</resolution>
                                        <assignee username="-1">Unassigned</assignee>
                                    <reporter username="rovarga">Robert Varga</reporter>
                        <labels>
                            <label>pt</label>
                    </labels>
                <created>Sun, 24 Apr 2022 10:39:21 +0000</created>
                <updated>Tue, 16 Jan 2024 09:23:48 +0000</updated>
                                            <version>5.0.0</version>
                    <version>5.0.2</version>
                    <version>5.0.3</version>
                    <version>5.0.5</version>
                                    <fixVersion>10.0.0</fixVersion>
                    <fixVersion>9.0.1</fixVersion>
                                    <component>clustering</component>
                        <due></due>
                            <votes>0</votes>
                                    <watches>2</watches>
                                                                                                                <comments>
                            <comment id="71002" author="rovarga" created="Sun, 24 Apr 2022 12:03:49 +0000"  >&lt;p&gt;This looks like a reproducible failure, as the same entry fails here:&lt;br/&gt;
&lt;a href=&quot;https://s3-logs.opendaylight.org/logs/releng/vex-yul-odl-jenkins-1/bgpcep-csit-1node-bgp-ingest-all-sulfur/212/odl_1/odl1_karaf.log.gz&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;https://s3-logs.opendaylight.org/logs/releng/vex-yul-odl-jenkins-1/bgpcep-csit-1node-bgp-ingest-all-sulfur/212/odl_1/odl1_karaf.log.gz&lt;/a&gt;&lt;br/&gt;
&lt;a href=&quot;https://s3-logs.opendaylight.org/logs/releng/vex-yul-odl-jenkins-1/bgpcep-csit-1node-bgp-ingest-all-sulfur/213/odl_1/odl1_karaf.log.gz&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;https://s3-logs.opendaylight.org/logs/releng/vex-yul-odl-jenkins-1/bgpcep-csit-1node-bgp-ingest-all-sulfur/213/odl_1/odl1_karaf.log.gz&lt;/a&gt;&lt;/p&gt;</comment>
                            <comment id="71003" author="rovarga" created="Sun, 24 Apr 2022 14:37:01 +0000"  >&lt;p&gt;Debugs are not turning up anything, really:&lt;/p&gt;
&lt;div class=&quot;preformatted panel&quot; style=&quot;border-width: 1px;&quot;&gt;&lt;div class=&quot;preformattedContent panelContent&quot;&gt;
&lt;pre&gt;2022-04-24T12:09:50,035 | INFO  | opendaylight-cluster-data-shard-dispatcher-23 | Shard                            | 289 - org.opendaylight.controller.sal-clustering-commons - 5.0.2 | member-1-shard-default-config: SaveSnapshotSuccess received for snapshot, sequenceNr: 240000
2022-04-24T12:09:50,041 | DEBUG | opendaylight-cluster-data-akka.actor.default-dispatcher-17 | SegmentedJournalActor            | 286 - org.opendaylight.controller.sal-akka-segmented-journal - 5.0.2 | member-1-shard-default-config: delete messages DeleteMessagesTo{toSequenceNr=240000}
2022-04-24T12:09:50,041 | DEBUG | opendaylight-cluster-data-akka.actor.default-dispatcher-17 | SegmentedJournalActor            | 286 - org.opendaylight.controller.sal-akka-segmented-journal - 5.0.2 | member-1-shard-default-config: adjusted delete to 240000
2022-04-24T12:09:50,041 | DEBUG | opendaylight-cluster-data-akka.actor.default-dispatcher-17 | SegmentedJournalActor            | 286 - org.opendaylight.controller.sal-akka-segmented-journal - 5.0.2 | member-1-shard-default-config: deleting entries up to 240000
2022-04-24T12:09:50,041 | DEBUG | opendaylight-cluster-data-akka.actor.default-dispatcher-17 | SegmentedJournalActor            | 286 - org.opendaylight.controller.sal-akka-segmented-journal - 5.0.2 | member-1-shard-default-config: compaction started
2022-04-24T12:09:50,041 | DEBUG | opendaylight-cluster-data-akka.actor.default-dispatcher-17 | SegmentedJournalActor            | 286 - org.opendaylight.controller.sal-akka-segmented-journal - 5.0.2 | member-1-shard-default-config: compaction finished
2022-04-24T12:10:30,351 | ERROR | opendaylight-cluster-data-akka.actor.default-dispatcher-17 | Shard                            | 284 - org.opendaylight.controller.repackaged-akka - 5.0.2 | Failed to persist event type [org.opendaylight.controller.cluster.raft.persisted.SimpleReplicatedLogEntry] with sequence number [262218] for persistenceId [member-1-shard-default-config].
akka.pattern.CircuitBreaker$$anon$13: Circuit Breaker Timed out.
&lt;/pre&gt;
&lt;/div&gt;&lt;/div&gt;</comment>
                            <comment id="71004" author="rovarga" created="Sun, 24 Apr 2022 20:57:29 +0000"  >&lt;p&gt;Trace logs are not much better:&lt;/p&gt;

&lt;div class=&quot;preformatted panel&quot; style=&quot;border-width: 1px;&quot;&gt;&lt;div class=&quot;preformattedContent panelContent&quot;&gt;
&lt;pre&gt;2022-04-24T18:16:44,045 | TRACE | opendaylight-cluster-data-akka.persistence.dispatchers.default-plugin-dispatcher-52 | SegmentedFileJournal             | 286 - org.opendaylight.controller.sal-akka-segmented-journal - 5.0.2 | Sending WriteMessages{requests=[AtomicWrite(List(PersistentRepr(member-1-shard-default-config,262213,5ca0c0d4-05cd-427a-83a0-66b9a281224b,0,None)))]} to Actor[akka://opendaylight-cluster-data/system/akka.persistence.journal.segmented-file/$o#-1890472742]
2022-04-24T18:16:44,046 | TRACE | opendaylight-cluster-data-akka.persistence.dispatchers.default-plugin-dispatcher-52 | SegmentedFileJournal             | 286 - org.opendaylight.controller.sal-akka-segmented-journal - 5.0.2 | Sending WriteMessages{requests=[AtomicWrite(List(PersistentRepr(member-1-shard-default-config,262214,5ca0c0d4-05cd-427a-83a0-66b9a281224b,0,None)))]} to Actor[akka://opendaylight-cluster-data/system/akka.persistence.journal.segmented-file/$o#-1890472742]
2022-04-24T18:16:44,047 | TRACE | opendaylight-cluster-data-akka.persistence.dispatchers.default-plugin-dispatcher-52 | SegmentedFileJournal             | 286 - org.opendaylight.controller.sal-akka-segmented-journal - 5.0.2 | Sending WriteMessages{requests=[AtomicWrite(List(PersistentRepr(member-1-shard-default-config,262215,5ca0c0d4-05cd-427a-83a0-66b9a281224b,0,None)))]} to Actor[akka://opendaylight-cluster-data/system/akka.persistence.journal.segmented-file/$o#-1890472742]
2022-04-24T18:16:44,048 | TRACE | opendaylight-cluster-data-akka.persistence.dispatchers.default-plugin-dispatcher-52 | SegmentedFileJournal             | 286 - org.opendaylight.controller.sal-akka-segmented-journal - 5.0.2 | Sending WriteMessages{requests=[AtomicWrite(List(PersistentRepr(member-1-shard-default-config,262216,5ca0c0d4-05cd-427a-83a0-66b9a281224b,0,None)))]} to Actor[akka://opendaylight-cluster-data/system/akka.persistence.journal.segmented-file/$o#-1890472742]
2022-04-24T18:16:44,048 | TRACE | opendaylight-cluster-data-akka.persistence.dispatchers.default-plugin-dispatcher-52 | SegmentedFileJournal             | 286 - org.opendaylight.controller.sal-akka-segmented-journal - 5.0.2 | Sending WriteMessages{requests=[AtomicWrite(List(PersistentRepr(member-1-shard-default-config,262217,5ca0c0d4-05cd-427a-83a0-66b9a281224b,0,None)))]} to Actor[akka://opendaylight-cluster-data/system/akka.persistence.journal.segmented-file/$o#-1890472742]
2022-04-24T18:16:44,050 | TRACE | opendaylight-cluster-data-akka.persistence.dispatchers.default-plugin-dispatcher-52 | SegmentedFileJournal             | 286 - org.opendaylight.controller.sal-akka-segmented-journal - 5.0.2 | Sending WriteMessages{requests=[AtomicWrite(List(PersistentRepr(member-1-shard-default-config,262218,5ca0c0d4-05cd-427a-83a0-66b9a281224b,0,None)))]} to Actor[akka://opendaylight-cluster-data/system/akka.persistence.journal.segmented-file/$o#-1890472742]
2022-04-24T18:16:54,074 | ERROR | opendaylight-cluster-data-akka.actor.default-dispatcher-18 | Shard                            | 284 - org.opendaylight.controller.repackaged-akka - 5.0.2 | Failed to persist event type [org.opendaylight.controller.cluster.raft.persisted.SimpleReplicatedLogEntry] with sequence number [262218] for persistenceId [member-1-shard-default-config].
akka.pattern.CircuitBreaker$$anon$13: Circuit Breaker Timed out.
&lt;/pre&gt;
&lt;/div&gt;&lt;/div&gt;
&lt;p&gt;It looks as though the appender just seizes up after being happy with 260K+ entries at a rate of 1000+ appends/s. I have added more trace points, added toString() to payload implementations and upgraded atomix. We&apos;ll retry this with 5.0.3.&lt;/p&gt;</comment>
                            <comment id="71006" author="rovarga" created="Tue, 26 Apr 2022 14:41:29 +0000"  >&lt;p&gt;Okay, it seems we are narrowing this down to Atomix:&lt;/p&gt;
&lt;div class=&quot;preformatted panel&quot; style=&quot;border-width: 1px;&quot;&gt;&lt;div class=&quot;preformattedContent panelContent&quot;&gt;
&lt;pre&gt;2022-04-26T11:51:17,379 | TRACE | opendaylight-cluster-data-akka.persistence.dispatchers.default-plugin-dispatcher-52 | SegmentedFileJournal             | 285 - org.opendaylight.controller.sal-akka-segmented-journal - 5.0.3 | Sending WriteMessages{requests=[AtomicWrite(List(PersistentRepr(member-1-shard-default-config,262217,7dfbbdb1-71ba-467d-868f-73ab4924eb12,0,None)))]} to Actor[akka://opendaylight-cluster-data/system/akka.persistence.journal.segmented-file/$t#1258880154]
2022-04-26T11:51:17,380 | TRACE | opendaylight-cluster-data-akka.actor.default-dispatcher-15 | DataJournalV0                    | 285 - org.opendaylight.controller.sal-akka-segmented-journal - 5.0.3 | member-1-shard-default-config: append 0/1: 262216 items at mark 1
2022-04-26T11:51:17,380 | TRACE | opendaylight-cluster-data-akka.actor.default-dispatcher-15 | DataJournalV0                    | 285 - org.opendaylight.controller.sal-akka-segmented-journal - 5.0.3 | member-1-shard-default-config: starting append of ApplyJournalEntries [toIndex=131107]
2022-04-26T11:51:17,380 | TRACE | opendaylight-cluster-data-akka.actor.default-dispatcher-15 | DataJournalV0                    | 285 - org.opendaylight.controller.sal-akka-segmented-journal - 5.0.3 | member-1-shard-default-config: finished append of ApplyJournalEntries [toIndex=131107] with 147 bytes at 262217
2022-04-26T11:51:17,382 | TRACE | opendaylight-cluster-data-akka.persistence.dispatchers.default-plugin-dispatcher-52 | SegmentedFileJournal             | 285 - org.opendaylight.controller.sal-akka-segmented-journal - 5.0.3 | Sending WriteMessages{requests=[AtomicWrite(List(PersistentRepr(member-1-shard-default-config,262218,7dfbbdb1-71ba-467d-868f-73ab4924eb12,0,None)))]} to Actor[akka://opendaylight-cluster-data/system/akka.persistence.journal.segmented-file/$t#1258880154]
2022-04-26T11:51:17,382 | TRACE | opendaylight-cluster-data-akka.actor.default-dispatcher-15 | DataJournalV0                    | 285 - org.opendaylight.controller.sal-akka-segmented-journal - 5.0.3 | member-1-shard-default-config: append 0/1: 262217 items at mark 1
2022-04-26T11:51:17,383 | TRACE | opendaylight-cluster-data-akka.actor.default-dispatcher-15 | DataJournalV0                    | 285 - org.opendaylight.controller.sal-akka-segmented-journal - 5.0.3 | member-1-shard-default-config: starting append of SimpleReplicatedLogEntry [index=131108, term=1, payload=Simple{size=823}]
2022-04-26T11:51:27,400 | ERROR | opendaylight-cluster-data-akka.actor.default-dispatcher-19 | Shard                            | 283 - org.opendaylight.controller.repackaged-akka - 5.0.3 | Failed to persist event type [org.opendaylight.controller.cluster.raft.persisted.SimpleReplicatedLogEntry] with sequence number [262218] for persistenceId [member-1-shard-default-config].
&lt;/pre&gt;
&lt;/div&gt;&lt;/div&gt;

&lt;p&gt;This corresponds to a CommitTransactionPayload, nothing special. We have persisted a similar payload just before:&lt;/p&gt;

&lt;div class=&quot;preformatted panel&quot; style=&quot;border-width: 1px;&quot;&gt;&lt;div class=&quot;preformattedContent panelContent&quot;&gt;
&lt;pre&gt;2022-04-26T11:51:17,375 | TRACE | opendaylight-cluster-data-akka.persistence.dispatchers.default-plugin-dispatcher-52 | SegmentedFileJournal             | 285 - org.opendaylight.controller.sal-akka-segmented-journal - 5.0.3 | Sending WriteMessages{requests=[AtomicWrite(List(PersistentRepr(member-1-shard-default-config,262213,7dfbbdb1-71ba-467d-868f-73ab4924eb12,0,None)))]} to Actor[akka://opendaylight-cluster-data/system/akka.persistence.journal.segmented-file/$t#1258880154]
2022-04-26T11:51:17,376 | TRACE | opendaylight-cluster-data-akka.actor.default-dispatcher-15 | DataJournalV0                    | 285 - org.opendaylight.controller.sal-akka-segmented-journal - 5.0.3 | member-1-shard-default-config: append 0/1: 262212 items at mark 1
2022-04-26T11:51:17,376 | TRACE | opendaylight-cluster-data-akka.actor.default-dispatcher-15 | DataJournalV0                    | 285 - org.opendaylight.controller.sal-akka-segmented-journal - 5.0.3 | member-1-shard-default-config: starting append of SimpleReplicatedLogEntry [index=131106, term=1, payload=Simple{size=823}]
2022-04-26T11:51:17,376 | TRACE | opendaylight-cluster-data-akka.actor.default-dispatcher-15 | DataJournalV0                    | 285 - org.opendaylight.controller.sal-akka-segmented-journal - 5.0.3 | member-1-shard-default-config: finished append of SimpleReplicatedLogEntry [index=131106, term=1, payload=Simple{size=823}] with 1096 bytes at 262213
&lt;/pre&gt;
&lt;/div&gt;&lt;/div&gt;</comment>
                            <comment id="71007" author="rovarga" created="Tue, 26 Apr 2022 17:38:09 +0000"  >&lt;p&gt;Alright, so some more evidence is here:&lt;/p&gt;

&lt;div class=&quot;preformatted panel&quot; style=&quot;border-width: 1px;&quot;&gt;&lt;div class=&quot;preformattedContent panelContent&quot;&gt;
&lt;pre&gt;022-04-26T11:51:17,382 | TRACE | opendaylight-cluster-data-akka.persistence.dispatchers.default-plugin-dispatcher-52 | SegmentedFileJournal             | 285 - org.opendaylight.controller.sal-akka-segmented-journal - 5.0.3 | Sending WriteMessages{requests=[AtomicWrite(List(PersistentRepr(member-1-shard-default-config,262218,7dfbbdb1-71ba-467d-868f-73ab4924eb12,0,None)))]} to Actor[akka://opendaylight-cluster-data/system/akka.persistence.journal.segmented-file/$t#1258880154]
2022-04-26T11:51:27,400 | ERROR | opendaylight-cluster-data-akka.actor.default-dispatcher-19 | Shard                            | 283 - org.opendaylight.controller.repackaged-akka - 5.0.3 | Failed to persist event type [org.opendaylight.controller.cluster.raft.persisted.SimpleReplicatedLogEntry] with sequence number [262218] for persistenceId [member-1-shard-default-config].
2022-04-26T11:52:22,301 | TRACE | opendaylight-cluster-data-akka.actor.default-dispatcher-15 | DataJournalV0                    | 285 - org.opendaylight.controller.sal-akka-segmented-journal - 5.0.3 | member-1-shard-default-config: finished append of SimpleReplicatedLogEntry [index=131108, term=1, payload=Simple{size=823}] with 1096 bytes at 262218
&lt;/pre&gt;
&lt;/div&gt;&lt;/div&gt;

&lt;p&gt;So the append took good 65 seconds to complete, but eventually it did complete. Unfortunately we do not store node performance data, so I do not have a smoking gun. What I suspect is happening that we are facing a segmented file rotation.&lt;br/&gt;
Looking at the numbers:&lt;/p&gt;
&lt;ul class=&quot;alternate&quot; type=&quot;square&quot;&gt;
	&lt;li&gt;we have a 128MiB journal (134 217 728 bytes)&lt;/li&gt;
	&lt;li&gt;we have written 262217 entries worth with 132 119 382 bytes of data&lt;/li&gt;
	&lt;li&gt;each entry contains additional 8 bytes of book keeping (length + crc32), for a total of 2 097 736 bytes&lt;/li&gt;
	&lt;li&gt;hence we have 134 217 694 bytes stored&lt;/li&gt;
&lt;/ul&gt;


&lt;p&gt;So indeed we are now flushing current segment and allocating a new one. We might be looking at flushing ~128MiB down to storage, which has unknown performance characteristics, but the driver node peaks at 9827 blocks written per second &amp;#8211; which amounts to a rather underwhelming performance of 4.8MiB/s. &lt;/p&gt;</comment>
                            <comment id="71008" author="rovarga" created="Tue, 26 Apr 2022 18:43:27 +0000"  >&lt;p&gt;So we are already performing a flush() after each write, so I am at a loss as to what is taking 65 seconds: allocation of a new file? its mapping into memory?&lt;/p&gt;</comment>
                            <comment id="71009" author="rovarga" created="Tue, 26 Apr 2022 18:51:43 +0000"  >&lt;p&gt;So the next step here is to create a unit test for SegmentedFileJournal which performs something akin to the failure scenario.&lt;br/&gt;
Take SegmentedFileJournalTest as how-to for a new test. The test should:&lt;/p&gt;
&lt;ul class=&quot;alternate&quot; type=&quot;square&quot;&gt;
	&lt;li&gt;set up a new journal with default parameters (128MiB segments, 16MiB message size)&lt;/li&gt;
	&lt;li&gt;write 1 million 1KiB messages into it, timing each write with a Stopwatch&lt;/li&gt;
	&lt;li&gt;assert that each write takes less than 5 seconds&lt;/li&gt;
&lt;/ul&gt;


&lt;p&gt;1M x 1KiB == 1GiB + overhead, which means we should hit segment changeover 8 times.&lt;/p&gt;

&lt;p&gt;Once we have that, we can see if we can make it fail during local runs and if so, what exactly is the operation that takes so horribly long. If not, we will have something to throw at CSIT worker nodes to see how they react to it.&lt;/p&gt;</comment>
                            <comment id="71720" author="rovarga" created="Sun, 4 Dec 2022 20:18:40 +0000"  >&lt;p&gt;&lt;a href=&quot;https://jira.opendaylight.org/browse/CONTROLLER-2056&quot; title=&quot;Minimize serialization proxy names in controller.datastore.persisted&quot; class=&quot;issue-link&quot; data-issue-key=&quot;CONTROLLER-2056&quot;&gt;&lt;del&gt;CONTROLLER-2056&lt;/del&gt;&lt;/a&gt; lowers payload serialization overheads. &lt;a href=&quot;https://jira.opendaylight.org/browse/CONTROLLER-2064&quot; title=&quot;Switch to using RaftVersion.ARGON&quot; class=&quot;issue-link&quot; data-issue-key=&quot;CONTROLLER-2064&quot;&gt;&lt;del&gt;CONTROLLER-2064&lt;/del&gt;&lt;/a&gt; lowers baseline journal entry sizes. Both of these should improve the number of entries we can write out before having to rotate.&lt;/p&gt;</comment>
                            <comment id="71946" author="rovarga" created="Thu, 26 Jan 2023 15:18:58 +0000"  >&lt;p&gt;So we get a bit more:&lt;/p&gt;

&lt;p&gt;&lt;a href=&quot;https://s3-logs.opendaylight.org/logs/releng/vex-yul-odl-jenkins-1/bgpcep-csit-1node-bgp-ingest-all-argon/119/odl_1/odl1_karaf.log.gz&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;https://s3-logs.opendaylight.org/logs/releng/vex-yul-odl-jenkins-1/bgpcep-csit-1node-bgp-ingest-all-argon/119/odl_1/odl1_karaf.log.gz&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;now fails at:&lt;/p&gt;
&lt;div class=&quot;preformatted panel&quot; style=&quot;border-width: 1px;&quot;&gt;&lt;div class=&quot;preformattedContent panelContent&quot;&gt;
&lt;pre&gt;2023-01-26T12:46:58,006 | ERROR | opendaylight-cluster-data-akka.actor.default-dispatcher-20 | Shard                            | 265 - org.opendaylight.controller.repackaged-akka - 7.0.2 | Failed to persist event type [org.opendaylight.controller.cluster.raft.persisted.SimpleReplicatedLogEntry] with sequence number [313062] for persistenceId [member-1-shard-default-config].
akka.pattern.CircuitBreaker$$anon$13: Circuit Breaker Timed out.&lt;/pre&gt;
&lt;/div&gt;&lt;/div&gt;
&lt;p&gt;i.e. we get to entry 313062 instead of 262218 for the same journal (~19% improvement), and process 178203 routes instead of 165485 (~8% more), being very close to the target of 180000.&lt;/p&gt;</comment>
                            <comment id="71947" author="rovarga" created="Thu, 26 Jan 2023 15:25:18 +0000"  >&lt;p&gt;Good news is that now openflowplugin-csit-3node-clustering-bulkomatic-only does not fail, i.e. it just fits into the log before rotation.&lt;/p&gt;</comment>
                            <comment id="71949" author="rovarga" created="Mon, 30 Jan 2023 19:36:14 +0000"  >&lt;p&gt;I think there is another part which might be worthwhile to optimize: &lt;a href=&quot;https://github.com/opendaylight/controller/blob/master/opendaylight/md-sal/sal-akka-segmented-journal/src/main/java/org/opendaylight/controller/akka/segjournal/DataJournalEntrySerializer.java#L49-L50&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;here&lt;/a&gt; we are writing two Strings, both of which seem to be good candidates for simpler representation.&lt;/p&gt;

&lt;p&gt;What we really need to do first, though, is get hold of a segmented-file directory contents from CSIT.&lt;/p&gt;

&lt;p&gt;So the next step is to run either BGP or OFP-bulkomatic tests locally.&lt;/p&gt;</comment>
                            <comment id="71969" author="rovarga" created="Tue, 7 Feb 2023 15:51:35 +0000"  >&lt;p&gt;Looking at a fresh log (from feature:install odl-netconf-mdsal), it seems the UUID part is there, we have &quot;&lt;font color=&quot;#000000&quot;&gt;4ceb3db5-5148-414a-a2c7-cdeae7c8d56&lt;/font&gt;&quot; repeating 33 times, which in turn matches the number of &quot;&lt;font color=&quot;#000000&quot;&gt;org.opendaylight.controller.cluster.raft.persisted.*&lt;/font&gt;&quot; objects persisted &#8211; i.e. the number of entries in that journal. So that&apos;s 33x35=1155 bytes we could perhaps squash to a definition + a WritableObject.writeLong() &#8211; potentially bringing that down to 35+2+32*2=103 bytes.&lt;/p&gt;

&lt;p&gt;The other part is that we keep on repeating those cluster.raft.persisted object names &#8211; I suspect we could take control of those as well IFF we ditch Kryo and create a custom ObjectOutputStream &#8211; similar in some regards to &#160;io.netty.handler.codec.serialization.CompactObjectOutputStream.&lt;/p&gt;

&lt;p&gt;Yet another part is that the payloads persisted repeat &#8211; &quot;&lt;font color=&quot;#000000&quot;&gt;org.opendaylight.controller.cluster.datastore.persisted.CT&lt;/font&gt;&quot; (i.e. CommitTransaction) repeats a number of times. This is coming from CDS itself, hence the custom OOS should be pluggable even without ditching Kryo.&lt;/p&gt;</comment>
                            <comment id="72012" author="JIRAUSER14508" created="Wed, 15 Feb 2023 12:05:48 +0000"  >&lt;p&gt;I run locally these tests:&lt;br/&gt;
integration/test/csit/suites/bgpcep/bgpclustering/singlepeer_pc_shm_300kroutes.robot&lt;br/&gt;
integration/test/csit/suites/bgpcep/bgpingest/singlepeer_prefixcount.robot&lt;br/&gt;
integration/test/csit/suites/bgpcep/bgpingest/singlepeer_changecount.robot&lt;/p&gt;

&lt;p&gt;with&lt;br/&gt;
feature:install odl-restconf odl-jolokia odl-bgpcep-data-change-counter odl-bgpcep-bgp odl-bgpcep-bgp-config-example&lt;/p&gt;

&lt;p&gt;Will attach segmented-journal from karaf &lt;span class=&quot;nobr&quot;&gt;&lt;a href=&quot;https://jira.opendaylight.org/secure/attachment/18602/18602_segmented-journal.tar.xz&quot; title=&quot;segmented-journal.tar.xz attached to CONTROLLER-2043&quot;&gt;segmented-journal.tar.xz&lt;sup&gt;&lt;img class=&quot;rendericon&quot; src=&quot;https://jira.opendaylight.org/images/icons/link_attachment_7.gif&quot; height=&quot;7&quot; width=&quot;7&quot; align=&quot;absmiddle&quot; alt=&quot;&quot; border=&quot;0&quot;/&gt;&lt;/sup&gt;&lt;/a&gt;&lt;/span&gt; &lt;/p&gt;</comment>
                    </comments>
                <issuelinks>
                            <issuelinktype id="10000">
                    <name>Blocks</name>
                                                                <inwardlinks description="is blocked by">
                                        <issuelink>
            <issuekey id="37804">CONTROLLER-2089</issuekey>
        </issuelink>
                            </inwardlinks>
                                    </issuelinktype>
                            <issuelinktype id="10003">
                    <name>Relates</name>
                                            <outwardlinks description="relates to">
                                        <issuelink>
            <issuekey id="36404">CONTROLLER-2056</issuekey>
        </issuelink>
            <issuelink>
            <issuekey id="36417">CONTROLLER-2064</issuekey>
        </issuelink>
            <issuelink>
            <issuekey id="36723">CONTROLLER-2071</issuekey>
        </issuelink>
                            </outwardlinks>
                                                                <inwardlinks description="relates to">
                                        <issuelink>
            <issuekey id="35426">CONTROLLER-2037</issuekey>
        </issuelink>
            <issuelink>
            <issuekey id="34933">CONTROLLER-2026</issuekey>
        </issuelink>
            <issuelink>
            <issuekey id="35828">CONTROLLER-2044</issuekey>
        </issuelink>
                            </inwardlinks>
                                    </issuelinktype>
                    </issuelinks>
                <attachments>
                            <attachment id="18507" name="data-1.log.xz" size="22008" author="rovarga" created="Tue, 7 Feb 2023 15:53:52 +0000"/>
                            <attachment id="18602" name="segmented-journal.tar.xz" size="65940" author="SamoSchneider" created="Wed, 15 Feb 2023 12:05:32 +0000"/>
                            <attachment id="18506" name="vim-data-1-log.png" size="539468" author="rovarga" created="Tue, 7 Feb 2023 15:52:46 +0000"/>
                    </attachments>
                <subtasks>
                    </subtasks>
                <customfields>
                                                                            <customfield id="customfield_11400" key="com.atlassian.jira.plugins.jira-development-integration-plugin:devsummary">
                        <customfieldname>Development</customfieldname>
                        <customfieldvalues>
                            
                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                <customfield id="customfield_10000" key="com.pyxis.greenhopper.jira:gh-lexo-rank">
                        <customfieldname>Rank</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>0|i0428v:</customfieldvalue>

                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                </customfields>
    </item>
</channel>
</rss>