You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@ignite.apache.org by "ASF GitHub Bot (JIRA)" <ji...@apache.org> on 2018/03/02 09:17:00 UTC

[jira] [Commented] (IGNITE-7866) TcpCommunicationSpi metrics causes cache operations slowdown

    [ https://issues.apache.org/jira/browse/IGNITE-7866?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16383378#comment-16383378 ] 

ASF GitHub Bot commented on IGNITE-7866:
----------------------------------------

GitHub user devozerov opened a pull request:

    https://github.com/apache/ignite/pull/3593

    IGNITE-7866

    

You can merge this pull request into a Git repository by running:

    $ git pull https://github.com/gridgain/apache-ignite ignite-7866

Alternatively you can review and apply these changes as the patch at:

    https://github.com/apache/ignite/pull/3593.patch

To close this pull request, make a commit to your master/trunk branch
with (at least) the following in the commit message:

    This closes #3593
    
----
commit 4925ffc10ce8e8287980eaec38b587512568a302
Author: Alexey Goncharuk <al...@...>
Date:   2018-01-17T12:26:03Z

    IGNITE-7453 Use GridUnsafe.cleanDirectBuffer in PageSnapshot

commit bcd68a058683b2f17b7ac60471b6e7aab3e4f6de
Author: Pavel Tupitsyn <pt...@...>
Date:   2018-01-17T12:38:20Z

    IGNITE-7301 .NET: Baseline topology
    
    This closes #3352

commit 66b96316a7775ce8a6e2ff4475185d5929e4998b
Author: devozerov <vo...@...>
Date:   2018-01-17T12:54:17Z

    Merge branch 'master' into ignite-2.4

commit 268481c1cf7fe57df24be130eb67c3e3a13afe01
Author: Alexey Goncharuk <al...@...>
Date:   2018-01-17T13:50:34Z

    IGNITE-7453 Use GridUnsafe.cleanDirectBuffer in WalStat

commit db0cd105719c8ae713b13b34d9dca0a8cd45d377
Author: Pavel Tupitsyn <pt...@...>
Date:   2018-01-17T14:05:25Z

    IGNITE-6776 .NET: Thin client: Add SQL & LINQ example
    
    This closes #3390

commit c214db879101aa5660e2a50b11cd20964c0bc114
Author: Andrey Gura <ag...@...>
Date:   2018-01-17T12:42:41Z

    ignite-7450 FileWriteAheadLogManager always uses RandomAccessFileIOFactory now

commit 75c27d5e49d7458e46eb46e6f87a445c3f1320ea
Author: Alexey Kuznetsov <ak...@...>
Date:   2018-01-18T02:25:19Z

    IGNITE-7274 Web Console: Support multiple statements on Queries screen.
    (cherry picked from commit 1926783)

commit 36cc822935387b2150e690c29bc6992dca0563f7
Author: Dmitriy Shabalin <dm...@...>
Date:   2018-01-18T04:49:08Z

    IGNITE-7306 Web Console: Fixed export data from tables.
    (cherry picked from commit 1bb60ec)

commit d753298b4012894b56f5c9218325211cd84a21d5
Author: Peter Ivanov <mr...@...>
Date:   2018-01-18T06:18:53Z

    IGNITE-7107 Apache Ignite RPM packages
    
    * added changelog to package specification
    
    This closes #3396

commit 63445893f1bc75dc9777184499f7eabc1d4e51b1
Author: Denis Mekhanikov <dm...@...>
Date:   2018-01-18T08:36:18Z

    IGNITE-3935 Use PeerDeployAware for streamer transformer - Fixes #3378.
    
    Signed-off-by: Alexey Goncharuk <al...@gmail.com>

commit f3f9f2a24b23027cf0c835140322e41a788932ae
Author: Pavel Tupitsyn <pt...@...>
Date:   2018-01-18T09:05:12Z

    IGNITE-7413 Fix SqlDmlExample
    
    This closes #3389

commit 1daa7c41bf1460a4d9a2b0c26a7a317f2fca3fb7
Author: Alexey Kuznetsov <ak...@...>
Date:   2018-01-18T10:14:53Z

    IGNITE-7461 UI tools: Actualized data storage configuration.
    (cherry picked from commit 577e632)

commit cf0080210d24d9dd8b057f959446fac5f8a4ca01
Author: dpavlov <dp...@...>
Date:   2018-01-18T10:53:29Z

    IGNITE-7380 Implemented pluggable Direct IO - Fixes #3226.
    
    Signed-off-by: Alexey Goncharuk <al...@gmail.com>

commit dd06d0bd7ef266bfbe156e858b312d1ac86e8982
Author: Pavel Tupitsyn <pt...@...>
Date:   2018-01-18T12:55:49Z

    IGNITE-7465 .NET: Fix SqlDdlExample failure with standalone node

commit 57479ec564e1761716da3d5f9feb7a64c396a9f9
Author: Pavel Tupitsyn <pt...@...>
Date:   2018-01-18T13:45:54Z

    .NET: Fix CacheLocalTest.TestTxDeadlockDetection

commit bd6be8a4653322905a3b63850c7e033ce3801ce5
Author: Pavel Tupitsyn <pt...@...>
Date:   2018-01-18T18:25:05Z

    .NET: Thin client: Fix OP_BINARY_TYPE_GET schema passing format

commit 97564d160586d6d57d300937e6b8877994e35fc7
Author: rkondakov <rk...@...>
Date:   2018-01-19T08:24:51Z

    IGNITE-6456: Ability to separately enable or disable JDBC, ODBC and thin client endpoints. This closes #3309.

commit d50274ca8875c9680c12e8786ac355a787ba95e0
Author: Yakov Zhdanov <yz...@...>
Date:   2018-01-18T17:57:17Z

    Javadoc enhancements - added @see

commit cb2d3cf22388ab19fb2d34ae5bdfc8f1b608db75
Author: Dmitriy Govorukhin <dm...@...>
Date:   2018-01-18T14:14:26Z

    IGNITE-7471 Use soft reference for checkpoint entry contents to avoid excessive memory usage

commit 3965923369870bb4e8e57e3332c1a1eb1e5f5ed3
Author: rkondakov <rk...@...>
Date:   2018-01-19T09:00:55Z

    IGNITE-6772: SQL exception messages became more informative. This closes #3342.

commit ba68cb0fa87f776fcd0499d030c333f182611f41
Author: devozerov <vo...@...>
Date:   2018-01-19T09:03:52Z

    Merge remote-tracking branch 'origin/ignite-2.4' into ignite-2.4

commit b54c0c8786bd74aa0abb208f537c29f0c4be4b1e
Author: tledkov-gridgain <tl...@...>
Date:   2018-01-19T09:09:34Z

    IGNITE-7248: JDBC: fixed schema resolution for streaming mode. This closes #3384.

commit 2f5997788ccff265a088921210f561985f640517
Author: Dmitriy Govorukhin <dm...@...>
Date:   2018-01-19T11:46:38Z

    IGNITE-7471 fix npe

commit 7adce10750704cc50cbf54fa7020aa3b20da87cb
Author: Oleg Ignatenko <oi...@...>
Date:   2018-01-19T11:59:01Z

    IGNITE-7454 Wrong package in IgniteExamplesMLTestSuite
    
    this closes #3393
    
    (cherry picked from commit cb1233a)

commit 25e91b60694c589d8bf50c63a0d898ca4180b428
Author: Pavel Tupitsyn <pt...@...>
Date:   2018-01-19T13:19:52Z

    IGNITE-7117 .NET: Improve IgniteHome resolver
    
    This closes #3402

commit bc6a08d94c26fd7ab12959aa27ca79fd818b65c7
Author: Alexey Kuznetsov <ak...@...>
Date:   2018-01-19T13:14:50Z

    IGNITE-3143 Fixed execution of VisorCoordinatorNodeTask via VisorGatewayTask.
    
    (cherry picked from commit 1ae1350)

commit 022ffe3efa931e10ed01d57138bf262853582134
Author: Alexey Goncharuk <al...@...>
Date:   2018-01-19T13:56:52Z

    master Using specific version of dependency plugin for compatibility tests

commit 52efb3d0e4249629e3039067a7472172489a0c99
Author: Alexey Goncharuk <al...@...>
Date:   2018-01-19T16:23:13Z

    master Fixed hanging test (missed notify)

commit ce2a30efa4216ab2efc28384a7bc72633f7a4e09
Author: Pavel Tupitsyn <pt...@...>
Date:   2018-01-22T13:04:18Z

    IGNITE-7477 .NET: Java 9 support
    
    This closes #3415

commit 167ef1022d7f92843c06695c97020d32959df19e
Author: Anton Vinogradov <av...@...>
Date:   2018-01-22T15:55:22Z

    IGNITE-6711 DataRegionMetrics#totalAllocatedPages is not valid after node restart
    
    Signed-off-by: Anton Vinogradov <av...@apache.org>
    
    (cherry picked from commit 326c19b)
    Signed-off-by: Anton Vinogradov <av...@apache.org>

----


> TcpCommunicationSpi metrics causes cache operations slowdown
> ------------------------------------------------------------
>
>                 Key: IGNITE-7866
>                 URL: https://issues.apache.org/jira/browse/IGNITE-7866
>             Project: Ignite
>          Issue Type: Task
>          Components: general
>    Affects Versions: 2.4
>            Reporter: Vladimir Ozerov
>            Assignee: Vladimir Ozerov
>            Priority: Major
>             Fix For: 2.4
>
>
> Extended TCP metrics were added as a part of IGNITE-6868 ticket. Unfortunately, they causes ~5-10% performance drop for cache operations when working in in-memory mode. Causes:
> 1) Contention on shared data structures (LongAdder, CMH)
> 2) A lot of string comparisons because we use class names to track particulat message types
> Suggested fix:
> 1) Move all processing to NIO threads
> 2) Introcduce thread-local state and update it from NIO threads
> 3) Metrics readers should merge state from all NIO threads
> 4) User {{Message}} type ID instead of class names
> 5) When returning final result we should use {{Class.getName()}} instead of {{Class.getSimpleName()}}



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)