[
https://issues.apache.org/jira/browse/SOLR-7605?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14572027#comment-14572027
]
Hoss Man commented on SOLR-7605:
--------------------------------
I'll spare everyone reading this a lot of boring details on how i made a ton of
stupid mistakes trying to reproduce this and just summarize the results:
* I captured an index produced by a shard during TestCloudPivotFacet
* after massaging the configs a bit and adding the lucene test-framework jar to
the classpath (because of the codecs used in the on disk index files), i was
able to run solr with that and confirm that the shard request produced three
bogus values of "0" for this field
* using hte same index+configs i confirmed that even a simple facet.field
request with facet.mincount=0 had the same problem
* optimizing the index made the problem go away -- suggesting that the root
cause was either related to having multiple segments (which should have failed
a lot more often) or to some details in the randomized codecs used to create
the initial index segments.
For the record, here are the steps i took to copy & run one of hte shards
produced by the test as a standlone solr instance...
* run a failing seed (22F85D14F0CCB183) with {{-Dtests.leavetmpdir=true}} to
keep the index on disk after ant finishes and then copy the whole J0 directory
to my ~/tmp dir
* massage the on disk configs so they worked with command line solr (test
harness does some weird stuff with where files live), include the
test-framework jar for the asserting codec, and eliminate some solr config
options that require randomization...{noformat}
hossman@tray:~/tmp/SOLR-7605_22F85D14F0CCB183$ mkdir manual_test_shard1
hossman@tray:~/tmp/SOLR-7605_22F85D14F0CCB183$ cp -r shard-1-001/solr.xml
manual_test_shard1
hossman@tray:~/tmp/SOLR-7605_22F85D14F0CCB183$ cp -r shard-1-001/collection1/
manual_test_shard1
hossman@tray:~/tmp/SOLR-7605_22F85D14F0CCB183$ touch
manual_test_shard1/collection1/core.properties
hossman@tray:~/tmp/SOLR-7605_22F85D14F0CCB183$ mkdir -p
manual_test_shard1/collection1/data/index
hossman@tray:~/tmp/SOLR-7605_22F85D14F0CCB183$ cp -r index-NIOFSDirectory-002/*
manual_test_shard1/collection1/data/index
hossman@tray:~/tmp/SOLR-7605_22F85D14F0CCB183$ cp
manual_test_shard1/collection1/conf/solrconfig-tlog.xml
manual_test_shard1/collection1/conf/solrconfig.xml
hossman@tray:~/tmp/SOLR-7605_22F85D14F0CCB183$ perl -pi -e 's/<(xi:include
href="solrconfig.snippet.*)>/<\!-- $1 -->/'
manual_test_shard1/collection1/conf/solrconfig.xml
hossman@tray:~/tmp/SOLR-7605_22F85D14F0CCB183$ perl -pi -e
's/"solr.MockTokenizerFactory"(
pattern="keyword")?/"solr.KeywordTokenizerFactory"/'
manual_test_shard1/collection1/conf/schema.xml
hossman@tray:~/tmp/SOLR-7605_22F85D14F0CCB183$ perl -pi -e
's/<(.*mock_.*)>/<!-- $1 -->/' manual_test_shard1/collection1/conf/schema.xml
hossman@tray:~/tmp/SOLR-7605_22F85D14F0CCB183$ perl -pi -e
's/<(\/?similarity.*)>/<!-- $1 -->/'
manual_test_shard1/collection1/conf/schema.xml
hossman@tray:~/tmp/SOLR-7605_22F85D14F0CCB183$ cp
~/lucene/dev/lucene/build/test-framework/lucene-test-framework-6.0.0-SNAPSHOT.jar
manual_test_shard1/collection1/lib/
{noformat}
* point solr at this new solr.solr.home dir...{noformat}
bin/solr -f -s ~/tmp/SOLR-7605_22F85D14F0CCB183/manual_test_shard1/
-Dsolr.directoryFactory=solr.NIOFSDirectoryFactory
{noformat}
* confirm this pivot shard query produces the wacky duplicate
results...{noformat}
http://localhost:8983/solr/collection1/select?distrib=false&fl=id&fl=score&shards.purpose=532&fsv=true&f.pivot_d.facet.limit=38&fq=id:[*+TO+894]&_test_min=188&shard.url=http://127.0.0.1:34360/collection1/|http://127.0.0.1:40939/collection1/&facet.pivot.mincount=188&stats=true&f.pivot_b1.facet.pivot.mincount=0&wt=xml&stats.field={!key%3Dsk1+tag%3Dst1,st2}pivot_tl&stats.field={!key%3Dsk2+tag%3Dst2,st3}pivot_i1&stats.field={!key%3Dsk3+tag%3Dst3,st4}pivot_z_s&f.dense_pivot_ti.facet.pivot.mincount=0&facet.pivot={!stats%3Dst3}pivot_d&facet.pivot=dense_pivot_ti,dense_pivot_i,pivot_b1&f.dense_pivot_i.facet.pivot.mincount=0&start=0&rows=0&f.dense_pivot_ti.facet.limit=38&facet.limit=13&q=*:*&f.pivot_b1.facet.limit=38&f.pivot_d.facet.pivot.mincount=0&NOW=1433289989278&isShard=true&facet=true&f.dense_pivot_i.facet.limit=38
{noformat}
* whittle down that query to it's simplest form, and sanity checking the data
in the index and confirm even basic faceting produces waky results...{noformat}
most trivial reduction of that query that still reproduces...
http://localhost:8983/solr/collection1/select?q=id:[*+TO+894]&wt=xml&facet.pivot.mincount=0&facet.pivot=dense_pivot_ti&start=0&rows=0&facet=true
Sanity check: no docs were indexed with that value...
http://localhost:8983/solr/collection1/select?q=dense_pivot_ti:0
http://localhost:8983/solr/collection1/select?fl=dense_pivot_ti&q=dense_pivot_ti:[0%20TO%200]
And stats confirms min value is "20"...
http://localhost:8983/solr/collection1/select?rows=0&q=*:*&stats=true&stats.field=dense_pivot_ti
But even regular (non pivot) faceting returns this same situation of "three 0
values" ...
http://localhost:8983/solr/collection1/select?rows=0&q=*:*&facet=true&facet.field=dense_pivot_ti
regardless of facet method...
http://localhost:8983/solr/collection1/select?rows=0&q=*:*&facet=true&facet.field=dense_pivot_ti&facet.method=enum
http://localhost:8983/solr/collection1/select?rows=0&q=*:*&facet=true&facet.field=dense_pivot_ti&facet.method=fc
http://localhost:8983/solr/collection1/select?rows=0&q=*:*&facet=true&facet.field=dense_pivot_ti&facet.method=fcs
{noformat}
* run optimize, and watch the problem magically go away: {noformat}
curl 'http://localhost:8983/solr/collection1/update?commit=true&optimize=true'
{noformat}
> TestCloudPivotFacet failures: Must not add duplicate PivotFacetValue with
> redundent inner value
> -----------------------------------------------------------------------------------------------
>
> Key: SOLR-7605
> URL: https://issues.apache.org/jira/browse/SOLR-7605
> Project: Solr
> Issue Type: Bug
> Reporter: Hoss Man
> Assignee: Hoss Man
>
> There have been two recent jenkins failures of TestCloudPivotFacet on both 5x
> and trunk with the same underlying cause...
> {noformat}
> <p>Problem accessing /collection1/select. Reason:
> <pre> java.lang.AssertionError: Must not add duplicate PivotFacetValue
> with redundent inner value</pre></p>
> {noformat}
> ..digging through mail logs, it looks like there have been a handful of these
> errors on different branches and os, with and w/o nightly, since April 1st of
> this year.
> The two recent seeds i tried (on trunk and 5x) reproduce - details to follow.
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]