[
https://issues.apache.org/jira/browse/SOLR-15676?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17425078#comment-17425078
]
Christine Poerschke edited comment on SOLR-15676 at 10/6/21, 4:47 PM:
----------------------------------------------------------------------
Some additional info:
* _"Requested N updates from ... but retrieved N-x"_ logging mentioned above,
the code locations are:
**
[https://github.com/apache/lucene-solr/blob/releases/lucene-solr/8.10.0/solr/core/src/java/org/apache/solr/update/PeerSync.java#L495]
**
[https://github.com/apache/lucene-solr/blob/releases/lucene-solr/8.10.0/solr/core/src/java/org/apache/solr/update/PeerSyncWithLeader.java#L264]
* [~rwhaddad] had identified
[https://webcache.googleusercontent.com/search?q=cache:ygsRBgQXwlAJ:https://lucene.472066.n3.nabble.com/Leader-election-failure-due-to-duplicate-records-in-tlog-td4464141.html+&cd=11&hl=en&ct=clnk&gl=uk]
as reporting a similar issue and I think this might be the same report as
https://issues.apache.org/jira/browse/SOLR-9207?focusedCommentId=17212621&page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#comment-17212621
on SOLR-9207 ticket.
* From log observation with the [https://github.com/apache/solr/pull/329]
change in place and code reading I think
{{UpdateLog.RecentUpdates.getVersions}} can also return duplicate versions
** if (a) multiple tlogs contain the same version and/or
** if (b) one tlog contains the same version twice
*** which it seems can happen if the version is buffered-and-replayed as well
as replicated from the leader, but I haven't yet been able to produce this in a
test scenario,
*** but I note that the {{RealTimeGetComponent.resolveVersionRanges}}
implementation which is called for the {{RealTimeGetComponent.getUpdates}}
functionality guards against both the caller requesting the same version twice
as well as againsts the available versions containing duplicates:
[https://github.com/apache/lucene-solr/blob/releases/lucene-solr/8.10.0/solr/core/src/java/org/apache/solr/handler/component/RealTimeGetComponent.java#L1328]
** https://github.com/apache/solr/pull/331 proposes to change the
{{UpdateLog.RecentUpdates.getVersions}} method so that it does not return
duplicate versions.
https://github.com/apache/solr/pull/329 and
https://github.com/apache/solr/pull/331 potentially could/should be combined
into a single pull request.
was (Author: cpoerschke):
Some additional info:
* _"Requested N updates from ... but retrieved N-x"_ logging mentioned above,
the code locations are:
**
[https://github.com/apache/lucene-solr/blob/releases/lucene-solr/8.10.0/solr/core/src/java/org/apache/solr/update/PeerSync.java#L495]
**
[https://github.com/apache/lucene-solr/blob/releases/lucene-solr/8.10.0/solr/core/src/java/org/apache/solr/update/PeerSyncWithLeader.java#L264]
* [~rwhaddad] had identified
[https://webcache.googleusercontent.com/search?q=cache:ygsRBgQXwlAJ:https://lucene.472066.n3.nabble.com/Leader-election-failure-due-to-duplicate-records-in-tlog-td4464141.html+&cd=11&hl=en&ct=clnk&gl=uk]
as reporting a similar issue and I think this might be the same report as
https://issues.apache.org/jira/browse/SOLR-9207?focusedCommentId=17212621&page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#comment-17212621
on SOLR-9207 ticket.
* From log observation with the [https://github.com/apache/solr/pull/329]
change in place and code reading I think
{{UpdateLog.RecentUpdates.getVersions}} can also return duplicate versions
** if (a) multiple tlogs contain the same version and/or
** if (b) one tlog contains the same version twice
*** which it seems can happen if the version is buffered-and-replayed as well
as replicated from the leader, but I haven't yet been able to produce this in a
test scenario,
*** but I note that the {{RealTimeGetComponent.resolveVersionRanges}}
implementation which is called for the {{RealTimeGetComponent.getUpdates}}
functionality guards against both the caller requesting the same version twice
as well as againsts the available versions containing duplicates:
[https://github.com/apache/lucene-solr/blob/releases/lucene-solr/8.10.0/solr/core/src/java/org/apache/solr/handler/component/RealTimeGetComponent.java#L1328]
> PeerSync failure due to RealTimeGetComponent.getUpdates returning duplicate
> DBQs
> --------------------------------------------------------------------------------
>
> Key: SOLR-15676
> URL: https://issues.apache.org/jira/browse/SOLR-15676
> Project: Solr
> Issue Type: Bug
> Components: replication (java)
> Reporter: Christine Poerschke
> Assignee: Christine Poerschke
> Priority: Minor
> Time Spent: 40m
> Remaining Estimate: 0h
>
> please see comments for details
--
This message was sent by Atlassian Jira
(v8.3.4#803005)
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]