Here's another data point.  To work around this issue, I am converting all 
non-null _version_ values to the constant 1 on the way into Solr.  As a result, 
updates work fine.

Immediately after the update+commit, a /select?q=*:* returns the _version_ 
value of 1498715798795976700 for id == '553d0f5d320c4321b13f4312ff907218'.

Looking in solr.log, however, the LogUpdateProcessor displays the following:
DEBUG - 2015-04-17 16:06:04.918; 
org.apache.solr.update.processor.LogUpdateProcessor; PRE_UPDATE FINISH 
{versions=true&wt=javabin&version=2}
INFO  - 2015-04-17 16:06:04.918; org.apache.solr.update.LoggingInfoStream; 
[DW][commitScheduler-12-thread-1]: commitScheduler-12-thread-1 finishFullFlush 
success=true

INFO  - 2015-04-17 16:06:04.918; 
org.apache.solr.update.processor.LogUpdateProcessor; [bb] webapp=/solr 
path=/update params={versions=true&wt=javabin&version=2} 
{add=[553d0f5d320c4321b13f4312ff907218 (1498715798795976704), ... ]} 0 15

Note: 1498715798795976700 is returned from the update to SolrJ with 
versions=true.

I.e. the last two digits disagree, with the client showing only zeroes.   So, 
yes, it appears some truncation is taking place.   But it looks to be upstream 
from my client code (which is seeing the same thing as the Admin UI).

I am running 4.10.3 on 64-bit Windows desktop.   Java is jdk1.7.0_67, 64-bit.

-----Original Message-----
From: Reitzel, Charles [mailto:charles.reit...@tiaa-cref.org] 
Sent: Friday, April 17, 2015 11:37 AM
To: solr-user@lucene.apache.org
Subject: RE: Spurious _version_ conflict?

Thanks for getting back.   Something like that crossed my mind but I checked 
the values on the way into SolrJ SolrInputDocument match the values printed in 
the Admin Query interface and they both match the expected value in the error 
message exactly.

Besides the difference is only in the last few bits ...

Error executing update: version conflict for 553d0f5d320c4321b13f4312ff907218 
expected=1498643112821522400 actual=1498643112821522432

Note, all my _version_ values have zeroes in the last two digits.  But, again, 
there is agreement between the Admin UI and every stage of my client (from 
query in my REST service, to REST client in browser, back to update in my REST 
service).

-----Original Message-----
From: Chris Hostetter [mailto:hossman_luc...@fucit.org] 
Sent: Thursday, April 16, 2015 5:04 PM
To: solr-user@lucene.apache.org
Subject: Re: Spurious _version_ conflict?


: I notice that the expected value in the error message matches both what
: I pass in and the index contents.  But the actual value in the error
: message is different only in the last (low order) two digits.  
: Consistently.

what does your client code look like?  Are you sure you aren't being bit by a 
JSON parsing library that can't handle long values and winds up truncating them?

https://issues.apache.org/jira/browse/SOLR-6364



-Hoss
http://www.lucidworks.com/

*************************************************************************
This e-mail may contain confidential or privileged information.
If you are not the intended recipient, please notify the sender immediately and 
then delete it.

TIAA-CREF
*************************************************************************


*************************************************************************
This e-mail may contain confidential or privileged information.
If you are not the intended recipient, please notify the sender immediately and 
then delete it.

TIAA-CREF
*************************************************************************

Reply via email to