Hi Roman,

I have noticed a difference with different solr.xml config contents. It is
probably legit, but thought to let you know (tests run on fresh checkout as
of today).

As mentioned before, I have two cores configured in solr.xml. If the file
is:

[code]
<solr persistent="false">

  <!--
  adminPath: RequestHandler path to manage cores.
    If 'null' (or absent), cores will not be manageable via request handler
  -->
  <cores adminPath="/admin/cores" host="${host:}"
hostPort="${jetty.port:8983}" hostContext="${hostContext:solr}">
    <core name="metadata" instanceDir="metadata" />
    <core name="statements" instanceDir="statements" />
  </cores>
</solr>
[/code]

then the instruction:

python solrjmeter.py -a -x ./jmx/SolrQueryTest.jmx -q
./queries/demo/demo.queries -s localhost -p 8983 -a --durationInSecs 60 -R
cms -t /solr/statements -e statements -U 100

works just fine. If however the solr.xml has adminPath set to "/admin"
solrjmeter produces an error:

[error]
**ERROR**
  File "solrjmeter.py", line 1386, in <module>
    main(sys.argv)
  File "solrjmeter.py", line 1278, in main
    check_prerequisities(options)
  File "solrjmeter.py", line 375, in check_prerequisities
    error('Cannot find admin pages: %s, please report a bug' % apath)
  File "solrjmeter.py", line 66, in error
    traceback.print_stack()
Cannot find admin pages: http://localhost:8983/solr/admin, please report a
bug
[/error]

With both solr.xml configs the following url returns just fine:

http://localhost:8983/solr/statements/admin/system?wt=json

Regards,

Dmitry



On Wed, Aug 14, 2013 at 2:03 PM, Dmitry Kan <solrexp...@gmail.com> wrote:

> Hi Roman,
>
> This looks much better, thanks! The ordinary non-comarison mode works.
> I'll post here, if there are other findings.
>
> Thanks for quick turnarounds,
>
> Dmitry
>
>
> On Wed, Aug 14, 2013 at 1:32 AM, Roman Chyla <roman.ch...@gmail.com>wrote:
>
>> Hi Dmitry, oh yes, late night fixes... :) The latest commit should make it
>> work for you.
>> Thanks!
>>
>> roman
>>
>>
>> On Tue, Aug 13, 2013 at 3:37 AM, Dmitry Kan <solrexp...@gmail.com> wrote:
>>
>> > Hi Roman,
>> >
>> > Something bad happened in fresh checkout:
>> >
>> > python solrjmeter.py -a -x ./jmx/SolrQueryTest.jmx -q
>> > ./queries/demo/demo.queries -s localhost -p 8983 -a --durationInSecs 60
>> -R
>> > cms -t /solr/statements -e statements -U 100
>> >
>> > Traceback (most recent call last):
>> >   File "solrjmeter.py", line 1392, in <module>
>> >     main(sys.argv)
>> >   File "solrjmeter.py", line 1347, in main
>> >     save_into_file('before-test.json', simplejson.dumps(before_test))
>> >   File "/usr/lib/python2.7/dist-packages/simplejson/__init__.py", line
>> 286,
>> > in dumps
>> >     return _default_encoder.encode(obj)
>> >   File "/usr/lib/python2.7/dist-packages/simplejson/encoder.py", line
>> 226,
>> > in encode
>> >     chunks = self.iterencode(o, _one_shot=True)
>> >   File "/usr/lib/python2.7/dist-packages/simplejson/encoder.py", line
>> 296,
>> > in iterencode
>> >     return _iterencode(o, 0)
>> >   File "/usr/lib/python2.7/dist-packages/simplejson/encoder.py", line
>> 202,
>> > in default
>> >     raise TypeError(repr(o) + " is not JSON serializable")
>> > TypeError: <__main__.ForgivingValue object at 0x7fc6d4040fd0> is not
>> JSON
>> > serializable
>> >
>> >
>> > Regards,
>> >
>> > D.
>> >
>> >
>> > On Tue, Aug 13, 2013 at 8:10 AM, Roman Chyla <roman.ch...@gmail.com>
>> > wrote:
>> >
>> > > Hi Dmitry,
>> > >
>> > >
>> > >
>> > > On Mon, Aug 12, 2013 at 9:36 AM, Dmitry Kan <solrexp...@gmail.com>
>> > wrote:
>> > >
>> > > > Hi Roman,
>> > > >
>> > > > Good point. I managed to run the command with -C and double quotes:
>> > > >
>> > > > python solrjmeter.py -a -C "g1,cms" -c hour -x
>> ./jmx/SolrQueryTest.jmx
>> > > >
>> > > > As a result got several files (html, css, js, csv) in the running
>> > > directory
>> > > > (any way to specify where the output should be stored in this case?)
>> > > >
>> > >
>> > > i know it is confusing, i plan to change it - but later, now it is too
>> > busy
>> > > here...
>> > >
>> > >
>> > > >
>> > > > When I look onto the comparison dashboard, I see this:
>> > > >
>> > > > http://pbrd.co/17IRI0b
>> > > >
>> > >
>> > > two things: the tests probably took more than one hour to finish, so
>> they
>> > > are not aligned - try generating the comparison with '-c  14400'  (ie.
>> > > 4x3600 secs)
>> > >
>> > > the other thing: if you have only two datapoints, the dygraph will not
>> > show
>> > > anything - there must be more datapoints/measurements
>> > >
>> > >
>> > >
>> > > >
>> > > > One more thing: all the previous tests were run with softCommit
>> > disabled.
>> > > > After enabling it, the tests started to fail:
>> > > >
>> > > > $ python solrjmeter.py -a -x ./jmx/SolrQueryTest.jmx -q
>> > > > ./queries/demo/demo.queries -s localhost -p 8983 -a
>> --durationInSecs 60
>> > > -R
>> > > > g1 -t /solr/statements -e statements -U 100
>> > > > $ cd g1
>> > > > Reading results of the previous test
>> > > > $ cd 2013.08.12.16.32.48
>> > > > $ cd /home/dmitry/projects/lab/solrjmeter4/solrjmeter/g1
>> > > > $ mkdir 2013.08.12.16.33.02
>> > > > $ cd 2013.08.12.16.33.02
>> > > > $ cd /home/dmitry/projects/lab/solrjmeter4/solrjmeter/g1
>> > > > $ cd /home/dmitry/projects/lab/solrjmeter4/solrjmeter
>> > > > $ cd /home/dmitry/projects/lab/solrjmeter4/solrjmeter
>> > > > Traceback (most recent call last):
>> > > >   File "solrjmeter.py", line 1427, in <module>
>> > > >     main(sys.argv)
>> > > >   File "solrjmeter.py", line 1381, in main
>> > > >     before_test = harvest_details_about_montysolr(options)
>> > > >   File "solrjmeter.py", line 562, in harvest_details_about_montysolr
>> > > >     indexLstModified =
>> > cores_data['status'][cn]['index']['lastModified'],
>> > > > KeyError: 'lastModified'
>> > > >
>> > >
>> > > Thanks for letting me know, that info is probably not available in
>> this
>> > > situation - i've cooked st quick to fix it, please try the latest
>> commit
>> > > (hope it doesn't do more harm, i should get some sleep ..;))
>> > >
>> > > roman
>> > >
>> > >
>> > > >
>> > > > In case it matters:  Python 2.7.3, ubuntu, solr 4.3.1.
>> > > >
>> > > > Thanks,
>> > > >
>> > > > Dmitry
>> > > >
>> > > >
>> > > > On Thu, Aug 8, 2013 at 2:22 AM, Roman Chyla <roman.ch...@gmail.com>
>> > > wrote:
>> > > >
>> > > > > Hi Dmitry,
>> > > > > The command seems good. Are you sure your shell is not doing
>> > something
>> > > > > funny with the params? You could try:
>> > > > >
>> > > > > python solrjmeter.py -C "g1,foo" -c hour -x
>> ./jmx/SolrQueryTest.jmx
>> > -a
>> > > > >
>> > > > > where g1 and foo are results of the individual runs, ie. something
>> > that
>> > > > was
>> > > > > started and saved with '-R g1' and '-R foo' respectively
>> > > > >
>> > > > > so, for example, i have these comparisons inside
>> > > > > '/var/lib/montysolr/different-java-settings/solrjmeter', so I am
>> > > > generating
>> > > > > the comparison by:
>> > > > >
>> > > > > export
>> > > > >
>> SOLRJMETER_HOME=/var/lib/montysolr/different-java-settings/solrjmeter
>> > > > > python solrjmeter.py -C "g1,foo" -c hour -x
>> ./jmx/SolrQueryTest.jmx
>> > -a
>> > > > >
>> > > > >
>> > > > > roman
>> > > > >
>> > > > >
>> > > > > On Wed, Aug 7, 2013 at 10:03 AM, Dmitry Kan <solrexp...@gmail.com
>> >
>> > > > wrote:
>> > > > >
>> > > > > > Hi Roman,
>> > > > > >
>> > > > > > One more question. I tried to compare different runs (g1 vs cms)
>> > > using
>> > > > > the
>> > > > > > command below, but get an error. Should I attach some other
>> > param(s)?
>> > > > > >
>> > > > > >
>> > > > > > python solrjmeter.py -C g1,foo -c hour -x
>> ./jmx/SolrQueryTest.jmx
>> > > > > > **ERROR**
>> > > > > >   File "solrjmeter.py", line 1427, in <module>
>> > > > > >     main(sys.argv)
>> > > > > >   File "solrjmeter.py", line 1303, in main
>> > > > > >     check_options(options, args)
>> > > > > >   File "solrjmeter.py", line 185, in check_options
>> > > > > >     error("The folder '%s' does not exist" % rf)
>> > > > > >   File "solrjmeter.py", line 66, in error
>> > > > > >     traceback.print_stack()
>> > > > > > The folder '0' does not exist
>> > > > > >
>> > > > > > Dmitry
>> > > > > >
>> > > > > >
>> > > > > >
>> > > > > >
>> > > > > > On Wed, Aug 7, 2013 at 4:13 PM, Dmitry Kan <
>> solrexp...@gmail.com>
>> > > > wrote:
>> > > > > >
>> > > > > > > Hi Roman,
>> > > > > > >
>> > > > > > > Finally, this has worked! Thanks for quick support.
>> > > > > > >
>> > > > > > > The graphs look awesome. At least on the index sample :) It is
>> > > quite
>> > > > > easy
>> > > > > > > to setup and run + possible to run directly on the shard
>> server
>> > in
>> > > > > > > background mode.
>> > > > > > >
>> > > > > > > my test run was:
>> > > > > > >
>> > > > > > > python solrjmeter.py -a -x ./jmx/SolrQueryTest.jmx -q
>> > > > > > > ./queries/demo/demo.queries -s localhost -p 8983 -a
>> > > --durationInSecs
>> > > > 60
>> > > > > > -R
>> > > > > > > foo -t /solr/statements -e statements
>> > > > > > >
>> > > > > > > Thanks!
>> > > > > > >
>> > > > > > > Dmitry
>> > > > > > >
>> > > > > > >
>> > > > > > > On Wed, Aug 7, 2013 at 6:54 AM, Roman Chyla <
>> > roman.ch...@gmail.com
>> > > >
>> > > > > > wrote:
>> > > > > > >
>> > > > > > >> Hi Dmitry,
>> > > > > > >>
>> > > > > > >> I've modified the solrjmeter to retrieve data from under the
>> > core
>> > > > (the
>> > > > > > -t
>> > > > > > >> parameter) and the rest from the /solr/admin - I could test
>> it
>> > > only
>> > > > > > >> against
>> > > > > > >> 4.0, but it is there the same as 4.3 - it seems...so you can
>> try
>> > > the
>> > > > > > fresh
>> > > > > > >> checkout
>> > > > > > >>
>> > > > > > >> my test was: python solrjmeter.py -a -x
>> ./jmx/SolrQueryTest.jmx
>> > -t
>> > > > > > >> /solr/collection1 -R foo -q ./queries/demo/* -p 9002 -s
>> adsate
>> > > > > > >>
>> > > > > > >> Thanks!
>> > > > > > >>
>> > > > > > >> roman
>> > > > > > >>
>> > > > > > >>
>> > > > > > >> On Tue, Aug 6, 2013 at 9:46 AM, Dmitry Kan <
>> > solrexp...@gmail.com>
>> > > > > > wrote:
>> > > > > > >>
>> > > > > > >> > Hi,
>> > > > > > >> >
>> > > > > > >> > Thanks for the clarification, Shawn!
>> > > > > > >> >
>> > > > > > >> > So with this in mind, the following work:
>> > > > > > >> >
>> > > > > > >> > http://localhost:8983/solr/statements/admin/system?wt=json
>> > > > > > >> > http://localhost:8983/solr/statements/admin/mbeans?wt=json
>> > > > > > >> >
>> > > > > > >> > not copying their output to save space.
>> > > > > > >> >
>> > > > > > >> > Roman:
>> > > > > > >> >
>> > > > > > >> > is this something that should be set via -t parameter as
>> well?
>> > > > > > >> >
>> > > > > > >> > Dmitry
>> > > > > > >> >
>> > > > > > >> >
>> > > > > > >> >
>> > > > > > >> > On Tue, Aug 6, 2013 at 4:34 PM, Shawn Heisey <
>> > s...@elyograg.org
>> > > >
>> > > > > > wrote:
>> > > > > > >> >
>> > > > > > >> > > On 8/6/2013 6:17 AM, Dmitry Kan wrote:
>> > > > > > >> > > > Of three URLs you asked for, only the 3rd one gave
>> > response:
>> > > > > > >> > > <snip>
>> > > > > > >> > > > The rest report 404.
>> > > > > > >> > > >
>> > > > > > >> > > > On Mon, Aug 5, 2013 at 8:38 PM, Roman Chyla <
>> > > > > > roman.ch...@gmail.com>
>> > > > > > >> > > wrote:
>> > > > > > >> > > >
>> > > > > > >> > > >> Hi Dmitry,
>> > > > > > >> > > >> So I think the admin pages are different on your
>> version
>> > of
>> > > > > solr,
>> > > > > > >> what
>> > > > > > >> > > do
>> > > > > > >> > > >> you see when you request... ?
>> > > > > > >> > > >>
>> > > > > > >> > > >> http://localhost:8983/solr/admin/system?wt=json
>> > > > > > >> > > >> http://localhost:8983/solr/admin/mbeans?wt=json
>> > > > > > >> > > >> http://localhost:8983/solr/admin/cores?wt=json
>> > > > > > >> > >
>> > > > > > >> > > Unless you have a valid defaultCoreName set in your
>> > > (old-style)
>> > > > > > >> > > solr.xml, the first two URLs won't work, as you've
>> > discovered.
>> > > > > > >>  Without
>> > > > > > >> > > that valid defaultCoreName (or if you wanted info from a
>> > > > different
>> > > > > > >> > > core), you'd need to add a core name to the URL for them
>> to
>> > > > work.
>> > > > > > >> > >
>> > > > > > >> > > The third one, which works for you, is a global handler
>> for
>> > > > > > >> manipulating
>> > > > > > >> > > cores, so naturally it doesn't need a core name to
>> function.
>> > > >  The
>> > > > > > URL
>> > > > > > >> > > path for this handler is defined by solr.xml.
>> > > > > > >> > >
>> > > > > > >> > > Thanks,
>> > > > > > >> > > Shawn
>> > > > > > >> > >
>> > > > > > >> > >
>> > > > > > >> >
>> > > > > > >>
>> > > > > > >
>> > > > > > >
>> > > > > >
>> > > > >
>> > > >
>> > >
>> >
>>
>
>

Reply via email to