You are viewing a plain text version of this content. The canonical link for it is here.
Posted to solr-user@lucene.apache.org by Rafał Radecki <ra...@gmail.com> on 2013/03/14 13:10:55 UTC

Solr 4.1 monitoring with /solr/replication?command=details - indexVersion?

Hi All.

I am monitoring two solr 4.1 solr instances in master-slave setup. On
both nodes I check url /solr/replication?command=details and parse it
to get:
- on master: if replication is enabled -> field replicationEnabled
- on slave: if replication is enabled -> field replicationEnabled
- on slave: if polling is disabled -> field isPollingDisabled
For solr 3.6 I've als used url:
solr/replication?command=indexversion
but for 4.1 it gives me different results on master and slave, on
slave the version is higher despite the fact that replication is
enabled, polling is enabled and in admin gui
/solr/#/collection1/replication I have: Index
Version	Gen	Size
Master:	
1363259808632
3
22.59 KB
Slave:	
1363259808632
3
22.59 KB
So as I see it master and slave have the same version of index despite
the fact that /solr/replication?command=indexversion gives:
- on master: <long name="indexversion">1363259808632</long>
- on slave: <long name="indexversion">1363259880360</long> -> higher value
Is this a bug?

Best regards,
Rafal Radecki.

Re: Solr 4.1 monitoring with /solr/replication?command=details - indexVersion?

Posted by Chris Hostetter <ho...@fucit.org>.
Deja-vu?

http://mail-archives.apache.org/mod_mbox/lucene-general/201303.mbox/%3CCAHd9_iR-HtNDu-3a9A5ekTFdb+5mo1eWVcu4Shp8AD=QtPqXyw@mail.gmail.com%3E

http://mail-archives.apache.org/mod_mbox/lucene-general/201303.mbox/%3Calpine.DEB.2.02.1303081644040.5502@frisbee%3E

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


: Date: Fri, 15 Mar 2013 11:43:05 +0100
: From: Rafał Radecki <ra...@gmail.com>
: Reply-To: solr-user@lucene.apache.org
: To: solr-user@lucene.apache.org
: Subject: Re: Solr 4.1 monitoring with /solr/replication?command=details -
:     indexVersion?
: 
: I use http and get /solr/replication?command=indexversion urls to get
: index versions on master and slave. The replication works fine but
: index versions from /solr/replication?command=indexversion differ.
: 
: Best regards,
: Rafal.
: 
: 2013/3/14 Mark Miller <ma...@gmail.com>:
: > What calls are you using to get the versions? Or is it the admin UI?
: >
: > Also can you add any details about your setup - if this is a problem, we need to duplicate it in one of our unit tests.
: >
: > Also, is it affecting proper replication in any way that you can tell.
: >
: > - Mark
: >
: > On Mar 14, 2013, at 11:12 AM, richardg <ri...@dvdempire.com> wrote:
: >
: >> I believe this is the same issue as described, I'm running 4.2 and as you can
: >> see my slave is a couple versions ahead of the master (all three slaves show
: >> the same behavior).  This was never the case until I upgraded from 4.0 to
: >> 4.2.
: >>
: >> Master:
: >> 1363272681951
: >> 93
: >> 1,022.31 MB
: >> Slave:
: >> 1363273274085
: >> 95
: >> 1,022.31 MB
: >>
: >>
: >>
: >> --
: >> View this message in context: http://lucene.472066.n3.nabble.com/Solr-4-1-monitoring-with-solr-replication-command-details-indexVersion-tp4047329p4047380.html
: >> Sent from the Solr - User mailing list archive at Nabble.com.
: >
: 

-Hoss

Re: Solr 4.1 monitoring with /solr/replication?command=details - indexVersion?

Posted by Rafał Radecki <ra...@gmail.com>.
Yes, this is solr 4.1.

2013/3/20 Mark Miller <ma...@gmail.com>:
> Hmm, I'd have to look, but first to make, this subject says 4.1?
>
> In 4.1 the slave will be ahead because it commits after installing the index. In 4.2 it shouldn't.
>
> Your on?
>
> - Mark
>
> On Mar 20, 2013, at 4:03 AM, Rafał Radecki <ra...@gmail.com> wrote:
>
>> Thanks for the info.
>> I understand that the latest "replicateable" version of index may
>> differ from the actual version of index on master/slave.
>> But why when I use
>> /solr/replication?command=indexversion
>>
>> On master:
>>
>> <response>
>> <lst name="responseHeader">
>> <int name="status">0</int>
>> <int name="QTime">0</int>
>> </lst>
>> <long name="indexversion">1363263304585</long>
>> <long name="generation">4</long>
>> </response>
>>
>> And on slave:
>>
>> <response>
>> <lst name="responseHeader">
>> <int name="status">0</int>
>> <int name="QTime">1</int>
>> </lst>
>> <long name="indexversion">1363263600323</long>
>> <long name="generation">5</long>
>> </response>
>>
>> Why do I get higher version on slave than on master?
>>
>> The page https://wiki.apache.org/solr/SolrReplication states:
>> "Get the latest replicateable index on master:
>> http://master_host:port/solr/replication?command=indexversion" -> ok,
>> returns latest replicatable index version
>> "Get version number of the index:
>> http://host:port/solr/replication?command=indexversion" -> for me it
>> means that on slave I should get actual index version and not an index
>> version appropriate for replication (it is a slave, it should not be
>> the source of replication)
>> Yes, it is confusing overall :)
>>
>> My question is: how to get actual index version on master and slave
>> for monitoring purpose? I can use: /solr/replication?command=details
>>
>> On master:
>>
>> <response>
>> <lst name="responseHeader">
>> <int name="status">0</int>
>> <int name="QTime">1</int>
>> </lst>
>> <lst name="details">
>> <str name="indexSize">22.59 KB</str>
>> <str name="indexPath">/usr/share/solr/data/index/</str>
>> <arr name="commits">
>> <lst>
>> <long name="indexVersion">1363263304585</long>
>> <long name="generation">4</long>
>> <arr name="filelist">
>> <str>_2_Lucene41_0.pos</str>
>> <str>_2.si</str>
>> <str>_2_Lucene41_0.tim</str>
>> <str>_2.fdt</str>
>> <str>_2_Lucene41_0.doc</str>
>> <str>_2_Lucene41_0.tip</str>
>> <str>_2.fdx</str>
>> <str>_2.tvx</str>
>> <str>_2.fnm</str>
>> <str>_2_nrm.cfe</str>
>> <str>_2.tvd</str>
>> <str>_2_Lucene41_0.pay</str>
>> <str>_2_nrm.cfs</str>
>> <str>_2.tvf</str>
>> <str>segments_4</str>
>> </arr>
>> </lst>
>> </arr>
>> <str name="isMaster">true</str>
>> <str name="isSlave">false</str>
>> <long name="indexVersion">1363263304585</long>
>> <long name="generation">4</long>
>> <lst name="master">
>> <str name="confFiles">schema.xml,stopwords.txt</str>
>> <arr name="replicateAfter">
>> <str>commit</str>
>> <str>startup</str>
>> </arr>
>> <str name="replicationEnabled">true</str>
>> <long name="replicatableGeneration">4</long>
>> </lst>
>> </lst>
>> <str name="WARNING">
>> This response format is experimental. It is likely to change in the future.
>> </str>
>> </response>
>>
>> On slave:
>>
>> <response>
>> <lst name="responseHeader">
>> <int name="status">0</int>
>> <int name="QTime">25</int>
>> </lst>
>> <lst name="details">
>> <str name="indexSize">22.59 KB</str>
>> <str name="indexPath">/usr/share/solr/data/index/</str>
>> <arr name="commits">
>> <lst>
>> <long name="indexVersion">1363263600323</long>
>> <long name="generation">5</long>
>> <arr name="filelist">
>> <str>_2_Lucene41_0.pos</str>
>> <str>_2.si</str>
>> <str>_2_Lucene41_0.tim</str>
>> <str>_2.fdt</str>
>> <str>_2_Lucene41_0.doc</str>
>> <str>_2_Lucene41_0.tip</str>
>> <str>_2.fdx</str>
>> <str>_2.tvx</str>
>> <str>_2.fnm</str>
>> <str>_2_nrm.cfe</str>
>> <str>_2.tvd</str>
>> <str>_2_Lucene41_0.pay</str>
>> <str>_2_nrm.cfs</str>
>> <str>segments_5</str>
>> <str>_2.tvf</str>
>> </arr>
>> </lst>
>> </arr>
>> <str name="isMaster">false</str>
>> <str name="isSlave">true</str>
>> <long name="indexVersion">1363263304585</long>
>> <long name="generation">4</long>
>> <lst name="slave">
>> <lst name="masterDetails">
>> <str name="indexSize">22.59 KB</str>
>> <str name="indexPath">/usr/share/solr/data/index/</str>
>> <arr name="commits">
>> <lst>
>> <long name="indexVersion">1363263304585</long>
>> <long name="generation">4</long>
>> <arr name="filelist">
>> <str>_2_Lucene41_0.pos</str>
>> <str>_2.si</str>
>> <str>_2_Lucene41_0.tim</str>
>> <str>_2.fdt</str>
>> <str>_2_Lucene41_0.doc</str>
>> <str>_2_Lucene41_0.tip</str>
>> <str>_2.fdx</str>
>> <str>_2.tvx</str>
>> <str>_2.fnm</str>
>> <str>_2_nrm.cfe</str>
>> <str>_2.tvd</str>
>> <str>_2_Lucene41_0.pay</str>
>> <str>_2_nrm.cfs</str>
>> <str>_2.tvf</str>
>> <str>segments_4</str>
>> </arr>
>> </lst>
>> </arr>
>> <str name="isMaster">true</str>
>> <str name="isSlave">false</str>
>> <long name="indexVersion">1363263304585</long>
>> <long name="generation">4</long>
>> <lst name="master">
>> <str name="confFiles">schema.xml,stopwords.txt</str>
>> <arr name="replicateAfter">
>> <str>commit</str>
>> <str>startup</str>
>> </arr>
>> <str name="replicationEnabled">true</str>
>> <long name="replicatableGeneration">4</long>
>> </lst>
>> </lst>
>> <str name="masterUrl">http://172.18.19.204:8080/solr</str>
>> <str name="pollInterval">00:00:60</str>
>> <str name="nextExecutionAt">Wed Mar 20 08:48:00 CET 2013</str>
>> <str name="indexReplicatedAt">Thu Mar 14 13:20:00 CET 2013</str>
>> <arr name="indexReplicatedAtList">
>> <str>Thu Mar 14 13:20:00 CET 2013</str>
>> <str>Thu Mar 14 13:19:00 CET 2013</str>
>> <str>Thu Mar 14 12:18:00 CET 2013</str>
>> <str>Thu Mar 14 12:17:00 CET 2013</str>
>> <str>Fri Mar 08 14:55:00 CET 2013</str>
>> <str>Fri Mar 08 14:50:52 CET 2013</str>
>> <str>Fri Mar 08 14:32:00 CET 2013</str>
>> </arr>
>> <str name="timesIndexReplicated">7</str>
>> <str name="lastCycleBytesDownloaded">23212</str>
>> <str name="previousCycleTimeInSeconds">0</str>
>> <str name="currentDate">Wed Mar 20 08:47:03 CET 2013</str>
>> <str name="isPollingDisabled">false</str>
>> <str name="isReplicating">false</str>
>> </lst>
>> </lst>
>> <str name="WARNING">
>> This response format is experimental. It is likely to change in the future.
>> </str>
>> </response>
>>
>> Which line with "indexVersion" should I use?
>>
>> Best regards,
>> Rafal Radecki.
>>
>>
>> 2013/3/19 Mark Miller <ma...@gmail.com>:
>>>
>>> On Mar 15, 2013, at 6:43 AM, Rafał Radecki <ra...@gmail.com> wrote:
>>>
>>>> I use http and get /solr/replication?command=indexversion urls to get
>>>> index versions on master and slave. The replication works fine but
>>>> index versions from /solr/replication?command=indexversion differ.
>>>
>>> I think thats normal - it's a little misleading, but the replication index version is that of the most recent 'replicatable' commit point. That is determined by things like replicate on startup, replicate on commit, etc.
>>>
>>> These are very likely to be different from mater to slave.
>>>
>>> -  Mark
>

Re: Solr 4.1 monitoring with /solr/replication?command=details - indexVersion?

Posted by Mark Miller <ma...@gmail.com>.
Hmm, I'd have to look, but first to make, this subject says 4.1?

In 4.1 the slave will be ahead because it commits after installing the index. In 4.2 it shouldn't.

Your on?

- Mark

On Mar 20, 2013, at 4:03 AM, Rafał Radecki <ra...@gmail.com> wrote:

> Thanks for the info.
> I understand that the latest "replicateable" version of index may
> differ from the actual version of index on master/slave.
> But why when I use
> /solr/replication?command=indexversion
> 
> On master:
> 
> <response>
> <lst name="responseHeader">
> <int name="status">0</int>
> <int name="QTime">0</int>
> </lst>
> <long name="indexversion">1363263304585</long>
> <long name="generation">4</long>
> </response>
> 
> And on slave:
> 
> <response>
> <lst name="responseHeader">
> <int name="status">0</int>
> <int name="QTime">1</int>
> </lst>
> <long name="indexversion">1363263600323</long>
> <long name="generation">5</long>
> </response>
> 
> Why do I get higher version on slave than on master?
> 
> The page https://wiki.apache.org/solr/SolrReplication states:
> "Get the latest replicateable index on master:
> http://master_host:port/solr/replication?command=indexversion" -> ok,
> returns latest replicatable index version
> "Get version number of the index:
> http://host:port/solr/replication?command=indexversion" -> for me it
> means that on slave I should get actual index version and not an index
> version appropriate for replication (it is a slave, it should not be
> the source of replication)
> Yes, it is confusing overall :)
> 
> My question is: how to get actual index version on master and slave
> for monitoring purpose? I can use: /solr/replication?command=details
> 
> On master:
> 
> <response>
> <lst name="responseHeader">
> <int name="status">0</int>
> <int name="QTime">1</int>
> </lst>
> <lst name="details">
> <str name="indexSize">22.59 KB</str>
> <str name="indexPath">/usr/share/solr/data/index/</str>
> <arr name="commits">
> <lst>
> <long name="indexVersion">1363263304585</long>
> <long name="generation">4</long>
> <arr name="filelist">
> <str>_2_Lucene41_0.pos</str>
> <str>_2.si</str>
> <str>_2_Lucene41_0.tim</str>
> <str>_2.fdt</str>
> <str>_2_Lucene41_0.doc</str>
> <str>_2_Lucene41_0.tip</str>
> <str>_2.fdx</str>
> <str>_2.tvx</str>
> <str>_2.fnm</str>
> <str>_2_nrm.cfe</str>
> <str>_2.tvd</str>
> <str>_2_Lucene41_0.pay</str>
> <str>_2_nrm.cfs</str>
> <str>_2.tvf</str>
> <str>segments_4</str>
> </arr>
> </lst>
> </arr>
> <str name="isMaster">true</str>
> <str name="isSlave">false</str>
> <long name="indexVersion">1363263304585</long>
> <long name="generation">4</long>
> <lst name="master">
> <str name="confFiles">schema.xml,stopwords.txt</str>
> <arr name="replicateAfter">
> <str>commit</str>
> <str>startup</str>
> </arr>
> <str name="replicationEnabled">true</str>
> <long name="replicatableGeneration">4</long>
> </lst>
> </lst>
> <str name="WARNING">
> This response format is experimental. It is likely to change in the future.
> </str>
> </response>
> 
> On slave:
> 
> <response>
> <lst name="responseHeader">
> <int name="status">0</int>
> <int name="QTime">25</int>
> </lst>
> <lst name="details">
> <str name="indexSize">22.59 KB</str>
> <str name="indexPath">/usr/share/solr/data/index/</str>
> <arr name="commits">
> <lst>
> <long name="indexVersion">1363263600323</long>
> <long name="generation">5</long>
> <arr name="filelist">
> <str>_2_Lucene41_0.pos</str>
> <str>_2.si</str>
> <str>_2_Lucene41_0.tim</str>
> <str>_2.fdt</str>
> <str>_2_Lucene41_0.doc</str>
> <str>_2_Lucene41_0.tip</str>
> <str>_2.fdx</str>
> <str>_2.tvx</str>
> <str>_2.fnm</str>
> <str>_2_nrm.cfe</str>
> <str>_2.tvd</str>
> <str>_2_Lucene41_0.pay</str>
> <str>_2_nrm.cfs</str>
> <str>segments_5</str>
> <str>_2.tvf</str>
> </arr>
> </lst>
> </arr>
> <str name="isMaster">false</str>
> <str name="isSlave">true</str>
> <long name="indexVersion">1363263304585</long>
> <long name="generation">4</long>
> <lst name="slave">
> <lst name="masterDetails">
> <str name="indexSize">22.59 KB</str>
> <str name="indexPath">/usr/share/solr/data/index/</str>
> <arr name="commits">
> <lst>
> <long name="indexVersion">1363263304585</long>
> <long name="generation">4</long>
> <arr name="filelist">
> <str>_2_Lucene41_0.pos</str>
> <str>_2.si</str>
> <str>_2_Lucene41_0.tim</str>
> <str>_2.fdt</str>
> <str>_2_Lucene41_0.doc</str>
> <str>_2_Lucene41_0.tip</str>
> <str>_2.fdx</str>
> <str>_2.tvx</str>
> <str>_2.fnm</str>
> <str>_2_nrm.cfe</str>
> <str>_2.tvd</str>
> <str>_2_Lucene41_0.pay</str>
> <str>_2_nrm.cfs</str>
> <str>_2.tvf</str>
> <str>segments_4</str>
> </arr>
> </lst>
> </arr>
> <str name="isMaster">true</str>
> <str name="isSlave">false</str>
> <long name="indexVersion">1363263304585</long>
> <long name="generation">4</long>
> <lst name="master">
> <str name="confFiles">schema.xml,stopwords.txt</str>
> <arr name="replicateAfter">
> <str>commit</str>
> <str>startup</str>
> </arr>
> <str name="replicationEnabled">true</str>
> <long name="replicatableGeneration">4</long>
> </lst>
> </lst>
> <str name="masterUrl">http://172.18.19.204:8080/solr</str>
> <str name="pollInterval">00:00:60</str>
> <str name="nextExecutionAt">Wed Mar 20 08:48:00 CET 2013</str>
> <str name="indexReplicatedAt">Thu Mar 14 13:20:00 CET 2013</str>
> <arr name="indexReplicatedAtList">
> <str>Thu Mar 14 13:20:00 CET 2013</str>
> <str>Thu Mar 14 13:19:00 CET 2013</str>
> <str>Thu Mar 14 12:18:00 CET 2013</str>
> <str>Thu Mar 14 12:17:00 CET 2013</str>
> <str>Fri Mar 08 14:55:00 CET 2013</str>
> <str>Fri Mar 08 14:50:52 CET 2013</str>
> <str>Fri Mar 08 14:32:00 CET 2013</str>
> </arr>
> <str name="timesIndexReplicated">7</str>
> <str name="lastCycleBytesDownloaded">23212</str>
> <str name="previousCycleTimeInSeconds">0</str>
> <str name="currentDate">Wed Mar 20 08:47:03 CET 2013</str>
> <str name="isPollingDisabled">false</str>
> <str name="isReplicating">false</str>
> </lst>
> </lst>
> <str name="WARNING">
> This response format is experimental. It is likely to change in the future.
> </str>
> </response>
> 
> Which line with "indexVersion" should I use?
> 
> Best regards,
> Rafal Radecki.
> 
> 
> 2013/3/19 Mark Miller <ma...@gmail.com>:
>> 
>> On Mar 15, 2013, at 6:43 AM, Rafał Radecki <ra...@gmail.com> wrote:
>> 
>>> I use http and get /solr/replication?command=indexversion urls to get
>>> index versions on master and slave. The replication works fine but
>>> index versions from /solr/replication?command=indexversion differ.
>> 
>> I think thats normal - it's a little misleading, but the replication index version is that of the most recent 'replicatable' commit point. That is determined by things like replicate on startup, replicate on commit, etc.
>> 
>> These are very likely to be different from mater to slave.
>> 
>> -  Mark


Re: Solr 4.1 monitoring with /solr/replication?command=details - indexVersion?

Posted by Rafał Radecki <ra...@gmail.com>.
Thanks for the info.
I understand that the latest "replicateable" version of index may
differ from the actual version of index on master/slave.
But why when I use
/solr/replication?command=indexversion

On master:

<response>
<lst name="responseHeader">
<int name="status">0</int>
<int name="QTime">0</int>
</lst>
<long name="indexversion">1363263304585</long>
<long name="generation">4</long>
</response>

And on slave:

<response>
<lst name="responseHeader">
<int name="status">0</int>
<int name="QTime">1</int>
</lst>
<long name="indexversion">1363263600323</long>
<long name="generation">5</long>
</response>

Why do I get higher version on slave than on master?

The page https://wiki.apache.org/solr/SolrReplication states:
"Get the latest replicateable index on master:
http://master_host:port/solr/replication?command=indexversion" -> ok,
returns latest replicatable index version
"Get version number of the index:
http://host:port/solr/replication?command=indexversion" -> for me it
means that on slave I should get actual index version and not an index
version appropriate for replication (it is a slave, it should not be
the source of replication)
Yes, it is confusing overall :)

My question is: how to get actual index version on master and slave
for monitoring purpose? I can use: /solr/replication?command=details

On master:

<response>
<lst name="responseHeader">
<int name="status">0</int>
<int name="QTime">1</int>
</lst>
<lst name="details">
<str name="indexSize">22.59 KB</str>
<str name="indexPath">/usr/share/solr/data/index/</str>
<arr name="commits">
<lst>
<long name="indexVersion">1363263304585</long>
<long name="generation">4</long>
<arr name="filelist">
<str>_2_Lucene41_0.pos</str>
<str>_2.si</str>
<str>_2_Lucene41_0.tim</str>
<str>_2.fdt</str>
<str>_2_Lucene41_0.doc</str>
<str>_2_Lucene41_0.tip</str>
<str>_2.fdx</str>
<str>_2.tvx</str>
<str>_2.fnm</str>
<str>_2_nrm.cfe</str>
<str>_2.tvd</str>
<str>_2_Lucene41_0.pay</str>
<str>_2_nrm.cfs</str>
<str>_2.tvf</str>
<str>segments_4</str>
</arr>
</lst>
</arr>
<str name="isMaster">true</str>
<str name="isSlave">false</str>
<long name="indexVersion">1363263304585</long>
<long name="generation">4</long>
<lst name="master">
<str name="confFiles">schema.xml,stopwords.txt</str>
<arr name="replicateAfter">
<str>commit</str>
<str>startup</str>
</arr>
<str name="replicationEnabled">true</str>
<long name="replicatableGeneration">4</long>
</lst>
</lst>
<str name="WARNING">
This response format is experimental. It is likely to change in the future.
</str>
</response>

On slave:

<response>
<lst name="responseHeader">
<int name="status">0</int>
<int name="QTime">25</int>
</lst>
<lst name="details">
<str name="indexSize">22.59 KB</str>
<str name="indexPath">/usr/share/solr/data/index/</str>
<arr name="commits">
<lst>
<long name="indexVersion">1363263600323</long>
<long name="generation">5</long>
<arr name="filelist">
<str>_2_Lucene41_0.pos</str>
<str>_2.si</str>
<str>_2_Lucene41_0.tim</str>
<str>_2.fdt</str>
<str>_2_Lucene41_0.doc</str>
<str>_2_Lucene41_0.tip</str>
<str>_2.fdx</str>
<str>_2.tvx</str>
<str>_2.fnm</str>
<str>_2_nrm.cfe</str>
<str>_2.tvd</str>
<str>_2_Lucene41_0.pay</str>
<str>_2_nrm.cfs</str>
<str>segments_5</str>
<str>_2.tvf</str>
</arr>
</lst>
</arr>
<str name="isMaster">false</str>
<str name="isSlave">true</str>
<long name="indexVersion">1363263304585</long>
<long name="generation">4</long>
<lst name="slave">
<lst name="masterDetails">
<str name="indexSize">22.59 KB</str>
<str name="indexPath">/usr/share/solr/data/index/</str>
<arr name="commits">
<lst>
<long name="indexVersion">1363263304585</long>
<long name="generation">4</long>
<arr name="filelist">
<str>_2_Lucene41_0.pos</str>
<str>_2.si</str>
<str>_2_Lucene41_0.tim</str>
<str>_2.fdt</str>
<str>_2_Lucene41_0.doc</str>
<str>_2_Lucene41_0.tip</str>
<str>_2.fdx</str>
<str>_2.tvx</str>
<str>_2.fnm</str>
<str>_2_nrm.cfe</str>
<str>_2.tvd</str>
<str>_2_Lucene41_0.pay</str>
<str>_2_nrm.cfs</str>
<str>_2.tvf</str>
<str>segments_4</str>
</arr>
</lst>
</arr>
<str name="isMaster">true</str>
<str name="isSlave">false</str>
<long name="indexVersion">1363263304585</long>
<long name="generation">4</long>
<lst name="master">
<str name="confFiles">schema.xml,stopwords.txt</str>
<arr name="replicateAfter">
<str>commit</str>
<str>startup</str>
</arr>
<str name="replicationEnabled">true</str>
<long name="replicatableGeneration">4</long>
</lst>
</lst>
<str name="masterUrl">http://172.18.19.204:8080/solr</str>
<str name="pollInterval">00:00:60</str>
<str name="nextExecutionAt">Wed Mar 20 08:48:00 CET 2013</str>
<str name="indexReplicatedAt">Thu Mar 14 13:20:00 CET 2013</str>
<arr name="indexReplicatedAtList">
<str>Thu Mar 14 13:20:00 CET 2013</str>
<str>Thu Mar 14 13:19:00 CET 2013</str>
<str>Thu Mar 14 12:18:00 CET 2013</str>
<str>Thu Mar 14 12:17:00 CET 2013</str>
<str>Fri Mar 08 14:55:00 CET 2013</str>
<str>Fri Mar 08 14:50:52 CET 2013</str>
<str>Fri Mar 08 14:32:00 CET 2013</str>
</arr>
<str name="timesIndexReplicated">7</str>
<str name="lastCycleBytesDownloaded">23212</str>
<str name="previousCycleTimeInSeconds">0</str>
<str name="currentDate">Wed Mar 20 08:47:03 CET 2013</str>
<str name="isPollingDisabled">false</str>
<str name="isReplicating">false</str>
</lst>
</lst>
<str name="WARNING">
This response format is experimental. It is likely to change in the future.
</str>
</response>

Which line with "indexVersion" should I use?

Best regards,
Rafal Radecki.


2013/3/19 Mark Miller <ma...@gmail.com>:
>
> On Mar 15, 2013, at 6:43 AM, Rafał Radecki <ra...@gmail.com> wrote:
>
>> I use http and get /solr/replication?command=indexversion urls to get
>> index versions on master and slave. The replication works fine but
>> index versions from /solr/replication?command=indexversion differ.
>
> I think thats normal - it's a little misleading, but the replication index version is that of the most recent 'replicatable' commit point. That is determined by things like replicate on startup, replicate on commit, etc.
>
> These are very likely to be different from mater to slave.
>
> -  Mark

Re: Solr 4.1 monitoring with /solr/replication?command=details - indexVersion?

Posted by Mark Miller <ma...@gmail.com>.
On Mar 15, 2013, at 6:43 AM, Rafał Radecki <ra...@gmail.com> wrote:

> I use http and get /solr/replication?command=indexversion urls to get
> index versions on master and slave. The replication works fine but
> index versions from /solr/replication?command=indexversion differ.

I think thats normal - it's a little misleading, but the replication index version is that of the most recent 'replicatable' commit point. That is determined by things like replicate on startup, replicate on commit, etc.

These are very likely to be different from mater to slave.

-  Mark

Re: Solr 4.1 monitoring with /solr/replication?command=details - indexVersion?

Posted by Rafał Radecki <ra...@gmail.com>.
I use http and get /solr/replication?command=indexversion urls to get
index versions on master and slave. The replication works fine but
index versions from /solr/replication?command=indexversion differ.

Best regards,
Rafal.

2013/3/14 Mark Miller <ma...@gmail.com>:
> What calls are you using to get the versions? Or is it the admin UI?
>
> Also can you add any details about your setup - if this is a problem, we need to duplicate it in one of our unit tests.
>
> Also, is it affecting proper replication in any way that you can tell.
>
> - Mark
>
> On Mar 14, 2013, at 11:12 AM, richardg <ri...@dvdempire.com> wrote:
>
>> I believe this is the same issue as described, I'm running 4.2 and as you can
>> see my slave is a couple versions ahead of the master (all three slaves show
>> the same behavior).  This was never the case until I upgraded from 4.0 to
>> 4.2.
>>
>> Master:
>> 1363272681951
>> 93
>> 1,022.31 MB
>> Slave:
>> 1363273274085
>> 95
>> 1,022.31 MB
>>
>>
>>
>> --
>> View this message in context: http://lucene.472066.n3.nabble.com/Solr-4-1-monitoring-with-solr-replication-command-details-indexVersion-tp4047329p4047380.html
>> Sent from the Solr - User mailing list archive at Nabble.com.
>

Re: Solr 4.1 monitoring with /solr/replication?command=details - indexVersion?

Posted by Mark Miller <ma...@gmail.com>.
What calls are you using to get the versions? Or is it the admin UI?

Also can you add any details about your setup - if this is a problem, we need to duplicate it in one of our unit tests.

Also, is it affecting proper replication in any way that you can tell.

- Mark

On Mar 14, 2013, at 11:12 AM, richardg <ri...@dvdempire.com> wrote:

> I believe this is the same issue as described, I'm running 4.2 and as you can
> see my slave is a couple versions ahead of the master (all three slaves show
> the same behavior).  This was never the case until I upgraded from 4.0 to
> 4.2.
> 
> Master:	
> 1363272681951
> 93
> 1,022.31 MB
> Slave:	
> 1363273274085
> 95
> 1,022.31 MB
> 
> 
> 
> --
> View this message in context: http://lucene.472066.n3.nabble.com/Solr-4-1-monitoring-with-solr-replication-command-details-indexVersion-tp4047329p4047380.html
> Sent from the Solr - User mailing list archive at Nabble.com.


Re: Solr 4.1 monitoring with /solr/replication?command=details - indexVersion?

Posted by richardg <ri...@dvdempire.com>.
I believe this is the same issue as described, I'm running 4.2 and as you can
see my slave is a couple versions ahead of the master (all three slaves show
the same behavior).  This was never the case until I upgraded from 4.0 to
4.2.

Master:	
1363272681951
93
1,022.31 MB
Slave:	
1363273274085
95
1,022.31 MB



--
View this message in context: http://lucene.472066.n3.nabble.com/Solr-4-1-monitoring-with-solr-replication-command-details-indexVersion-tp4047329p4047380.html
Sent from the Solr - User mailing list archive at Nabble.com.

Re: Solr 4.1 monitoring with /solr/replication?command=details - indexVersion?

Posted by Mark Miller <ma...@gmail.com>.
On Mar 14, 2013, at 8:10 AM, Rafał Radecki <ra...@gmail.com> wrote:

> Is this a bug?

Yes, 4.1 had some replication issues just as you seem to describe here. It all should be fixed in 4.2 which is available now and is a simple upgrade.

- Mark

Re: Solr 4.1 monitoring with /solr/replication?command=details - indexVersion?

Posted by Rafał Radecki <ra...@gmail.com>.
In the output of:

/solr/replication?command=details

there is indexVersion mentioned many times:

<response>
<lst name="responseHeader">
<int name="status">0</int>
<int name="QTime">3</int>
</lst>
<lst name="details">
<str name="indexSize">22.59 KB</str>
<str name="indexPath">/usr/share/solr/data/index/</str>
<arr name="commits">
<lst>
<long name="indexVersion">1363259880360</long>
<long name="generation">4</long>
<arr name="filelist">
<str>_1.tvx</str>
<str>_1_nrm.cfs</str>
<str>_1_Lucene41_0.doc</str>
<str>_1_Lucene41_0.tim</str>
<str>_1_Lucene41_0.tip</str>
<str>_1.fnm</str>
<str>_1_nrm.cfe</str>
<str>_1.fdx</str>
<str>_1_Lucene41_0.pos</str>
<str>_1.tvf</str>
<str>_1.fdt</str>
<str>_1_Lucene41_0.pay</str>
<str>_1.si</str>
<str>_1.tvd</str>
<str>segments_4</str>
</arr>
</lst>
</arr>
<str name="isMaster">false</str>
<str name="isSlave">true</str>
<long name="indexVersion">1363259808632</long>
<long name="generation">3</long>
<lst name="slave">
<lst name="masterDetails">
<str name="indexSize">22.59 KB</str>
<str name="indexPath">/usr/share/solr/data/index/</str>
<arr name="commits">
<lst>
<long name="indexVersion">1363263304585</long>
<long name="generation">4</long>
<arr name="filelist">
<str>_2_Lucene41_0.pos</str>
<str>_2.si</str>
<str>_2_Lucene41_0.tim</str>
<str>_2.fdt</str>
<str>_2_Lucene41_0.doc</str>
<str>_2_Lucene41_0.tip</str>
<str>_2.fdx</str>
<str>_2.tvx</str>
<str>_2.fnm</str>
<str>_2_nrm.cfe</str>
<str>_2.tvd</str>
<str>_2_Lucene41_0.pay</str>
<str>_2_nrm.cfs</str>
<str>_2.tvf</str>
<str>segments_4</str>
</arr>
</lst>
</arr>
<str name="isMaster">true</str>
<str name="isSlave">false</str>
<long name="indexVersion">1363263304585</long>
<long name="generation">4</long>
<lst name="master">
<str name="confFiles">schema.xml,stopwords.txt</str>
<arr name="replicateAfter">
<str>commit</str>
<str>startup</str>
</arr>
<str name="replicationEnabled">false</str>
<long name="replicatableGeneration">4</long>
</lst>
</lst>
<str name="masterUrl">http://172.18.19.204:8080/solr</str>
<str name="pollInterval">00:00:60</str>
<str name="nextExecutionAt">Polling disabled</str>
<str name="indexReplicatedAt">Thu Mar 14 12:18:00 CET 2013</str>
<arr name="indexReplicatedAtList">
<str>Thu Mar 14 12:18:00 CET 2013</str>
<str>Thu Mar 14 12:17:00 CET 2013</str>
<str>Fri Mar 08 14:55:00 CET 2013</str>
<str>Fri Mar 08 14:50:52 CET 2013</str>
<str>Fri Mar 08 14:32:00 CET 2013</str>
</arr>
<str name="timesIndexReplicated">5</str>
<str name="lastCycleBytesDownloaded">23214</str>
<str name="previousCycleTimeInSeconds">0</str>
<str name="currentDate">Thu Mar 14 13:15:53 CET 2013</str>
<str name="isPollingDisabled">true</str>
<str name="isReplicating">false</str>
</lst>
</lst>
<str name="WARNING">
This response format is experimental. It is likely to change in the future.
</str>
</response>

Which one should be used? Is there any other way to monitor idex
version on master and slave?

Best regards,
Rafał Radecki.

2013/3/14 Rafał Radecki <ra...@gmail.com>:
> Hi All.
>
> I am monitoring two solr 4.1 solr instances in master-slave setup. On
> both nodes I check url /solr/replication?command=details and parse it
> to get:
> - on master: if replication is enabled -> field replicationEnabled
> - on slave: if replication is enabled -> field replicationEnabled
> - on slave: if polling is disabled -> field isPollingDisabled
> For solr 3.6 I've als used url:
> solr/replication?command=indexversion
> but for 4.1 it gives me different results on master and slave, on
> slave the version is higher despite the fact that replication is
> enabled, polling is enabled and in admin gui
> /solr/#/collection1/replication I have: Index
> Version Gen     Size
> Master:
> 1363259808632
> 3
> 22.59 KB
> Slave:
> 1363259808632
> 3
> 22.59 KB
> So as I see it master and slave have the same version of index despite
> the fact that /solr/replication?command=indexversion gives:
> - on master: <long name="indexversion">1363259808632</long>
> - on slave: <long name="indexversion">1363259880360</long> -> higher value
> Is this a bug?
>
> Best regards,
> Rafal Radecki.