[ 
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: issues-unsubscr...@solr.apache.org
For additional commands, e-mail: issues-h...@solr.apache.org

Reply via email to