You are viewing a plain text version of this content. The canonical link for it is here.
Posted to user@ignite.apache.org by ronyjohn <ro...@gmail.com> on 2017/03/22 04:30:32 UTC

Query execution is too long warning while running Yardstick-ignite

Hi All,
  I am getting query too slow warning message while running Yardstick-ignite
benchmark. Not sure why indexed query is slow here. 
machine configurations is 4 core CPU with 16 GB ram. 
Topology snapshot [ver=1, servers=1, clients=0, CPUs=4, heap=3.5GB]
 


WARNING: Query execution is too long [time=4659 ms, sql='SELECT
"query".PERSON._KEY __C0,
"query".PERSON._VAL __C1
FROM "query".PERSON
WHERE (SALARY >= ?1) AND (SALARY <= ?2)', plan=
SELECT
    "query".PERSON._KEY AS __C0,
    "query".PERSON._VAL AS __C1
FROM "query".PERSON
    /* "query"."salary_idx": SALARY >= ?1
        AND SALARY <= ?2
     */
WHERE (SALARY >= ?1)
    AND (SALARY <= ?2)
, parameters=[1.343909556640499E8, 1.343919556640499E8]]


Any suggestions?






--
View this message in context: http://apache-ignite-users.70518.x6.nabble.com/Query-execution-is-too-long-warning-while-running-Yardstick-ignite-tp11348.html
Sent from the Apache Ignite Users mailing list archive at Nabble.com.

Re: Query execution is too long warning while running Yardstick-ignite

Posted by ronyjohn <ro...@gmail.com>.
Great result. When I changed  thread count to *8* as per your suggestion,
'long running' warning messages  disappeared. Thank you so much for your
promt support.
 



--
View this message in context: http://apache-ignite-users.70518.x6.nabble.com/Query-execution-is-too-long-warning-while-running-Yardstick-ignite-tp11348p11530.html
Sent from the Apache Ignite Users mailing list archive at Nabble.com.

Re: Query execution is too long warning while running Yardstick-ignite

Posted by Nikolai Tikhonov <nt...@apache.org>.
Also could you decrease count of thread to 8 and check that will you have
long running queries? For it need to change -t argument:

set CONFIGS=^
-cfg %SCRIPT_DIR%\..\config\ignite-localhost-config.xml -b 1 -w 60 -d 300
*-t**8* --server -sm PRIMARY_SYNC -dn IgniteSqlQueryBenchmark -sn
IgniteNode -ds
sql-query-1-backup^

On Tue, Mar 28, 2017 at 8:12 PM, Nikolai Tikhonov <nt...@apache.org>
wrote:

> Hmm... It's strange. Could you share log files and results-* folders?
>
> On Tue, Mar 28, 2017 at 9:47 AM, ronyjohn <ro...@gmail.com> wrote:
>
>> Yes I got same kind of message from ThroughputLatencyProbe.csv file.
>>
>> --Probe dump file for probe:
>> org.yardstickframework.probes.ThroughputLatencyProbe@12941d84 (class
>> org.yardstickframework.probes.ThroughputLatencyProbe)
>> --Created Tue Mar 28 12:00:45 IST 2017
>> --Benchmark config: BenchmarkConfiguration [memberId='-1',
>> driverNames='[IgniteSqlQueryBenchmark]', serverName='IgniteNode',
>> threads=64, duration=300, warmup=60,
>> dfltProbeClsNames=[ThroughputLatencyProbe, PercentileProbe],
>> propsFileName='..\config\benchmark-win.properties',
>> packages=[org.yardstickframework, org.apache.ignite.yardstick],
>> cmdArgs=[--outputFolder, results-3-01-115824, -cfg,
>> D:\dev\workspace\yardstick-ignite-master\bin\..\config\ignit
>> e-localhost-config.xml,
>> -b, 1, -w, 60, -d, 300, -t, 64, --server, -sm, PRIMARY_SYNC, -dn,
>> IgniteSqlQueryBenchmark, -sn, IgniteNode, -ds, sql-query-1-backup,
>> --config,
>> ..\config\benchmark-win.properties], probeWriter='null', customProps={=:
>> Note that each benchmark is set to run for 300 seconds (5 mins) with
>> warm-up
>> set to 60 seconds (1 minute).,
>> BENCHMARK_PACKAGES=org.yardstickframework,org.apache.ignite.yardstick,
>> -cfg=%SCRIPT_DIR%..configignite-localhost-config.xml -b 1 -w 60 -d 300
>> -t 64
>> --server -sm PRIMARY_SYNC -dn IgniteSqlQueryBenchmark -sn IgniteNode -ds
>> sql-query-1-backup^, set=CONFIGS=^}, shutdownHook=true,
>> currentFolder=null,
>> scriptsFolder=null, logsFolder=null, outputFolder=results-3-01-115824,
>> outputWriter=java.io.PrintStream@777817c0,
>> errorWriter=java.io.PrintStream@6d5f7b86, descriptions=[sql-query-1-back
>> up],
>> hostName=]
>> --Description: sql-query-1-backup
>>
>> Also I did same way as you did to execute script.
>>
>> For you information, my machine is windows 7 with i5 4 core machine
>> 3.20Ghz
>> and 16 GB RAM.
>>
>>
>>
>> --
>> View this message in context: http://apache-ignite-users.705
>> 18.x6.nabble.com/Query-execution-is-too-long-warning-while-
>> running-Yardstick-ignite-tp11348p11484.html
>> Sent from the Apache Ignite Users mailing list archive at Nabble.com.
>>
>
>

Re: Query execution is too long warning while running Yardstick-ignite

Posted by Nikolai Tikhonov <nt...@apache.org>.
Hmm... It's strange. Could you share log files and results-* folders?

On Tue, Mar 28, 2017 at 9:47 AM, ronyjohn <ro...@gmail.com> wrote:

> Yes I got same kind of message from ThroughputLatencyProbe.csv file.
>
> --Probe dump file for probe:
> org.yardstickframework.probes.ThroughputLatencyProbe@12941d84 (class
> org.yardstickframework.probes.ThroughputLatencyProbe)
> --Created Tue Mar 28 12:00:45 IST 2017
> --Benchmark config: BenchmarkConfiguration [memberId='-1',
> driverNames='[IgniteSqlQueryBenchmark]', serverName='IgniteNode',
> threads=64, duration=300, warmup=60,
> dfltProbeClsNames=[ThroughputLatencyProbe, PercentileProbe],
> propsFileName='..\config\benchmark-win.properties',
> packages=[org.yardstickframework, org.apache.ignite.yardstick],
> cmdArgs=[--outputFolder, results-3-01-115824, -cfg,
> D:\dev\workspace\yardstick-ignite-master\bin\..\config\
> ignite-localhost-config.xml,
> -b, 1, -w, 60, -d, 300, -t, 64, --server, -sm, PRIMARY_SYNC, -dn,
> IgniteSqlQueryBenchmark, -sn, IgniteNode, -ds, sql-query-1-backup,
> --config,
> ..\config\benchmark-win.properties], probeWriter='null', customProps={=:
> Note that each benchmark is set to run for 300 seconds (5 mins) with
> warm-up
> set to 60 seconds (1 minute).,
> BENCHMARK_PACKAGES=org.yardstickframework,org.apache.ignite.yardstick,
> -cfg=%SCRIPT_DIR%..configignite-localhost-config.xml -b 1 -w 60 -d 300 -t
> 64
> --server -sm PRIMARY_SYNC -dn IgniteSqlQueryBenchmark -sn IgniteNode -ds
> sql-query-1-backup^, set=CONFIGS=^}, shutdownHook=true, currentFolder=null,
> scriptsFolder=null, logsFolder=null, outputFolder=results-3-01-115824,
> outputWriter=java.io.PrintStream@777817c0,
> errorWriter=java.io.PrintStream@6d5f7b86, descriptions=[sql-query-1-
> backup],
> hostName=]
> --Description: sql-query-1-backup
>
> Also I did same way as you did to execute script.
>
> For you information, my machine is windows 7 with i5 4 core machine 3.20Ghz
> and 16 GB RAM.
>
>
>
> --
> View this message in context: http://apache-ignite-users.
> 70518.x6.nabble.com/Query-execution-is-too-long-warning-
> while-running-Yardstick-ignite-tp11348p11484.html
> Sent from the Apache Ignite Users mailing list archive at Nabble.com.
>

Re: Query execution is too long warning while running Yardstick-ignite

Posted by ronyjohn <ro...@gmail.com>.
Yes I got same kind of message from ThroughputLatencyProbe.csv file.

--Probe dump file for probe:
org.yardstickframework.probes.ThroughputLatencyProbe@12941d84 (class
org.yardstickframework.probes.ThroughputLatencyProbe)
--Created Tue Mar 28 12:00:45 IST 2017
--Benchmark config: BenchmarkConfiguration [memberId='-1',
driverNames='[IgniteSqlQueryBenchmark]', serverName='IgniteNode',
threads=64, duration=300, warmup=60,
dfltProbeClsNames=[ThroughputLatencyProbe, PercentileProbe],
propsFileName='..\config\benchmark-win.properties',
packages=[org.yardstickframework, org.apache.ignite.yardstick],
cmdArgs=[--outputFolder, results-3-01-115824, -cfg,
D:\dev\workspace\yardstick-ignite-master\bin\..\config\ignite-localhost-config.xml,
-b, 1, -w, 60, -d, 300, -t, 64, --server, -sm, PRIMARY_SYNC, -dn,
IgniteSqlQueryBenchmark, -sn, IgniteNode, -ds, sql-query-1-backup, --config,
..\config\benchmark-win.properties], probeWriter='null', customProps={=:
Note that each benchmark is set to run for 300 seconds (5 mins) with warm-up
set to 60 seconds (1 minute).,
BENCHMARK_PACKAGES=org.yardstickframework,org.apache.ignite.yardstick,
-cfg=%SCRIPT_DIR%..configignite-localhost-config.xml -b 1 -w 60 -d 300 -t 64
--server -sm PRIMARY_SYNC -dn IgniteSqlQueryBenchmark -sn IgniteNode -ds
sql-query-1-backup^, set=CONFIGS=^}, shutdownHook=true, currentFolder=null,
scriptsFolder=null, logsFolder=null, outputFolder=results-3-01-115824,
outputWriter=java.io.PrintStream@777817c0,
errorWriter=java.io.PrintStream@6d5f7b86, descriptions=[sql-query-1-backup],
hostName=]
--Description: sql-query-1-backup

Also I did same way as you did to execute script.

For you information, my machine is windows 7 with i5 4 core machine 3.20Ghz
and 16 GB RAM.



--
View this message in context: http://apache-ignite-users.70518.x6.nabble.com/Query-execution-is-too-long-warning-while-running-Yardstick-ignite-tp11348p11484.html
Sent from the Apache Ignite Users mailing list archive at Nabble.com.

Re: Query execution is too long warning while running Yardstick-ignite

Posted by Nikolai Tikhonov <nt...@apache.org>.
I've run benchmark on my laptop and doesn't see long running queries. Les't
verify that we use the same configs and scripts. Could you share the first
lines from ThroughputLacencyProbe.cvs? I got the following:

--Probe dump file for probe:
org.yardstickframework.probes.ThroughputLatencyProbe@911788a (class
org.yardstickframework.probes.ThroughputLatencyProbe)
--Created Mon Mar 27 19:06:03 MSK 2017
--Benchmark config: BenchmarkConfiguration [memberId='-1',
driverNames='[IgniteSqlQueryBenchmark]', serverName='IgniteNode',
threads=64, duration=300, warmup=60,
dfltProbeClsNames=[ThroughputLatencyProbe, PercentileProbe],
propsFileName='.\config\benchmark-win.properties',
packages=[org.yardstickframework, org.apache.ignite.yardstick],
cmdArgs=[--outputFolder, results-3.01-190539, -cfg,
D:\projects\double\incubator-ignite\modules\yardstick\target\assembly\bin\..\config\ignite-localhost-config.xml,
-b, 1, -w, 60, -d, 300, -t, 64, --server, -sm, PRIMARY_SYNC, -dn,
IgniteSqlQueryBenchmark, -sn, IgniteNode, -ds, sql-query-1-backup,
--config, .\config\benchmark-win.properties], probeWriter='null',
customProps={=: Note that each benchmark is set to run for 300 seconds (5
min) with warm-up set to 60 seconds (1 minute).,
-cfg=%SCRIPT_DIR%..configignite-localhost-config.xml -b 1 -w 60 -d 300 -t
64 --server -sm PRIMARY_SYNC -dn IgniteSqlQueryBenchmark -sn IgniteNode -ds
sql-query-1-backup, set=CONFIGS=^,
BENCHMARK_PACKAGES=org.yardstickframework,org.apache.ignite.yardstick},
shutdownHook=true, currentFolder=null, scriptsFolder=null, logsFolder=null,
outputFolder=results-3.01-190539, outputWriter=java.io.PrintStream@2c3cd755,
errorWriter=java.io.PrintStream@22fb3ca2,
descriptions=[sql-query-1-backup], hostName=]
--Description: sql-query-1-backup

Also I've run this benchmarks with one node. How many node you used? Also I
run benchark by `.\bin\benchmark-manual-drivers-start.bat
.\config\benchmark-win.properties` How do you start?

On Fri, Mar 24, 2017 at 7:29 AM, ronyjohn <ro...@gmail.com> wrote:

> I executed in my windows machine. So the property file is
> benchmark-win.properties.
> Here I removed all benchmarks other than IgniteSqlQueryBenchmark.
>
> set CONFIGS=^
> -cfg %SCRIPT_DIR%\..\config\ignite-localhost-config.xml -b 1 -w 60 -d 300
> -t
> 64 --server -sm PRIMARY_SYNC -dn IgniteSqlQueryBenchmark -sn IgniteNode -ds
> sql-query-1-backup^
>
> Only change I did from default settings is '--client' to '--server'.
>
> During the run I got '302' times this 'WARNING: Query execution is too
> long'
> message in log.
>
> Wondering why this happened on indexed query fields.
>
>
>
>
>
>
>
>
> --
> View this message in context: http://apache-ignite-users.
> 70518.x6.nabble.com/Query-execution-is-too-long-warning-
> while-running-Yardstick-ignite-tp11348p11404.html
> Sent from the Apache Ignite Users mailing list archive at Nabble.com.
>

Re: Query execution is too long warning while running Yardstick-ignite

Posted by ronyjohn <ro...@gmail.com>.
I executed in my windows machine. So the property file is
benchmark-win.properties.
Here I removed all benchmarks other than IgniteSqlQueryBenchmark.

set CONFIGS=^
-cfg %SCRIPT_DIR%\..\config\ignite-localhost-config.xml -b 1 -w 60 -d 300 -t
64 --server -sm PRIMARY_SYNC -dn IgniteSqlQueryBenchmark -sn IgniteNode -ds
sql-query-1-backup^

Only change I did from default settings is '--client' to '--server'.

During the run I got '302' times this 'WARNING: Query execution is too long'
message in log.

Wondering why this happened on indexed query fields.




  



--
View this message in context: http://apache-ignite-users.70518.x6.nabble.com/Query-execution-is-too-long-warning-while-running-Yardstick-ignite-tp11348p11404.html
Sent from the Apache Ignite Users mailing list archive at Nabble.com.

Re: Query execution is too long warning while running Yardstick-ignite

Posted by Nikolai Tikhonov <nt...@apache.org>.
Thank you for additional information! I got that you used yardstick. Could
you share properties file which used?

On Thu, Mar 23, 2017 at 6:46 AM, ronyjohn <ro...@gmail.com> wrote:

> Basically I execute only  IgniteSqlQueryBenchmark from yardstick-ignite
> project.
> Following cache configuration used by this execution.
>
>  <bean class="org.apache.ignite.configuration.CacheConfiguration">
>                     <property name="name" value="query"/>
>
>                     <property name="cacheMode" value="PARTITIONED"/>
>
>                     <property name="atomicityMode" value="ATOMIC"/>
>
>                     <property name="swapEnabled" value="false"/>
>
>                     <property name="typeMetadata">
>                         <list>
>                             <bean
> class="org.apache.ignite.cache.CacheTypeMetadata">
>                                 <property name="keyType"
> value="java.lang.Integer"/>
>                                 <property name="valueType"
> value="org.apache.ignite.yardstick.cache.model.Organization"/>
>
>                                 <property name="ascendingFields">
>                                     <map>
>                                         <entry key="id"
> value="java.lang.Integer"/>
>                                         <entry key="name"
> value="java.lang.String"/>
>                                     </map>
>                                 </property>
>                             </bean>
>                             <bean
> class="org.apache.ignite.cache.CacheTypeMetadata">
>                                 <property name="keyType"
> value="java.lang.Integer"/>
>                                 <property name="valueType"
> value="org.apache.ignite.yardstick.cache.model.Person"/>
>
>                                 <property name="ascendingFields">
>                                     <map>
>                                         <entry key="id"
> value="java.lang.Integer"/>
>                                         <entry key="orgId"
> value="java.lang.Integer"/>
>                                         <entry key="salary"
> value="java.lang.Double"/>
>                                     </map>
>                                 </property>
>
>                                 <property name="queryFields">
>                                     <map>
>                                         <entry key="firstName"
> value="java.lang.String"/>
>                                         <entry key="lastName"
> value="java.lang.String"/>
>                                     </map>
>                                 </property>
>                             </bean>
>                         </list>
>                     </property>
>                 </bean>
>
>
>
> --
> View this message in context: http://apache-ignite-users.
> 70518.x6.nabble.com/Query-execution-is-too-long-warning-
> while-running-Yardstick-ignite-tp11348p11375.html
> Sent from the Apache Ignite Users mailing list archive at Nabble.com.
>

Re: Query execution is too long warning while running Yardstick-ignite

Posted by ronyjohn <ro...@gmail.com>.
Basically I execute only  IgniteSqlQueryBenchmark from yardstick-ignite
project.
Following cache configuration used by this execution. 
 
 <bean class="org.apache.ignite.configuration.CacheConfiguration">
                    <property name="name" value="query"/>

                    <property name="cacheMode" value="PARTITIONED"/>

                    <property name="atomicityMode" value="ATOMIC"/>

                    <property name="swapEnabled" value="false"/>

                    <property name="typeMetadata">
                        <list>
                            <bean
class="org.apache.ignite.cache.CacheTypeMetadata">
                                <property name="keyType"
value="java.lang.Integer"/>
                                <property name="valueType"
value="org.apache.ignite.yardstick.cache.model.Organization"/>

                                <property name="ascendingFields">
                                    <map>
                                        <entry key="id"
value="java.lang.Integer"/>
                                        <entry key="name"
value="java.lang.String"/>
                                    </map>
                                </property>
                            </bean>
                            <bean
class="org.apache.ignite.cache.CacheTypeMetadata">
                                <property name="keyType"
value="java.lang.Integer"/>
                                <property name="valueType"
value="org.apache.ignite.yardstick.cache.model.Person"/>

                                <property name="ascendingFields">
                                    <map>
                                        <entry key="id"
value="java.lang.Integer"/>
                                        <entry key="orgId"
value="java.lang.Integer"/>
                                        <entry key="salary"
value="java.lang.Double"/>
                                    </map>
                                </property>

                                <property name="queryFields">
                                    <map>
                                        <entry key="firstName"
value="java.lang.String"/>
                                        <entry key="lastName"
value="java.lang.String"/>
                                    </map>
                                </property>
                            </bean>
                        </list>
                    </property>
                </bean>



--
View this message in context: http://apache-ignite-users.70518.x6.nabble.com/Query-execution-is-too-long-warning-while-running-Yardstick-ignite-tp11348p11375.html
Sent from the Apache Ignite Users mailing list archive at Nabble.com.

Re: Query execution is too long warning while running Yardstick-ignite

Posted by Nikolai Tikhonov <nt...@apache.org>.
Hi,

Which dataset did you use for this benchmark? Also could you share your
cache configuration?

On Wed, Mar 22, 2017 at 7:30 AM, ronyjohn <ro...@gmail.com> wrote:

> Hi All,
>   I am getting query too slow warning message while running
> Yardstick-ignite
> benchmark. Not sure why indexed query is slow here.
> machine configurations is 4 core CPU with 16 GB ram.
> Topology snapshot [ver=1, servers=1, clients=0, CPUs=4, heap=3.5GB]
>
>
>
> WARNING: Query execution is too long [time=4659 ms, sql='SELECT
> "query".PERSON._KEY __C0,
> "query".PERSON._VAL __C1
> FROM "query".PERSON
> WHERE (SALARY >= ?1) AND (SALARY <= ?2)', plan=
> SELECT
>     "query".PERSON._KEY AS __C0,
>     "query".PERSON._VAL AS __C1
> FROM "query".PERSON
>     /* "query"."salary_idx": SALARY >= ?1
>         AND SALARY <= ?2
>      */
> WHERE (SALARY >= ?1)
>     AND (SALARY <= ?2)
> , parameters=[1.343909556640499E8, 1.343919556640499E8]]
>
>
> Any suggestions?
>
>
>
>
>
>
> --
> View this message in context: http://apache-ignite-users.
> 70518.x6.nabble.com/Query-execution-is-too-long-warning-
> while-running-Yardstick-ignite-tp11348.html
> Sent from the Apache Ignite Users mailing list archive at Nabble.com.
>