Merge branch 'ignite-1.8.5' into ignite-1.9.2
Project: http://git-wip-us.apache.org/repos/asf/ignite/repo Commit: http://git-wip-us.apache.org/repos/asf/ignite/commit/27fbb7a7 Tree: http://git-wip-us.apache.org/repos/asf/ignite/tree/27fbb7a7 Diff: http://git-wip-us.apache.org/repos/asf/ignite/diff/27fbb7a7 Branch: refs/heads/ignite-4932 Commit: 27fbb7a70f2b4bb7e180d55e19dee374f6a34be3 Parents: a54b7c6 2e6bc44 Author: dkarachentsev <[email protected]> Authored: Mon Apr 3 09:41:26 2017 +0300 Committer: dkarachentsev <[email protected]> Committed: Mon Apr 3 09:41:26 2017 +0300 ---------------------------------------------------------------------- .../internal/jdbc2/JdbcConnectionSelfTest.java | 34 ++ .../jdbc/AbstractJdbcPojoQuerySelfTest.java | 169 +++++ .../jdbc/JdbcPojoLegacyQuerySelfTest.java | 44 ++ .../ignite/jdbc/JdbcPojoQuerySelfTest.java | 56 ++ .../jdbc/suite/IgniteJdbcDriverTestSuite.java | 4 + .../org/apache/ignite/IgniteJdbcDriver.java | 11 +- .../configuration/IgniteConfiguration.java | 30 + .../ignite/internal/GridKernalContext.java | 7 + .../ignite/internal/GridKernalContextImpl.java | 11 + .../apache/ignite/internal/IgniteKernal.java | 2 + .../org/apache/ignite/internal/IgnitionEx.java | 16 + .../ignite/internal/jdbc2/JdbcConnection.java | 50 +- .../ignite/internal/jdbc2/JdbcQueryTask.java | 2 +- .../ignite/internal/jdbc2/JdbcQueryTaskV2.java | 2 +- .../managers/communication/GridIoManager.java | 2 + .../managers/communication/GridIoPolicy.java | 5 +- .../query/jdbc/GridCacheQueryJdbcTask.java | 4 +- .../continuous/GridContinuousProcessor.java | 3 +- .../internal/processors/pool/PoolProcessor.java | 10 +- .../processors/query/GridQueryProcessor.java | 2 +- .../processors/service/GridServiceProxy.java | 10 + .../task/GridTaskThreadContextKey.java | 7 +- .../processors/task/GridTaskWorker.java | 16 +- .../ignite/spi/collision/CollisionSpi.java | 11 +- .../resources/META-INF/classnames.properties | 17 +- .../ignite/custom/DummyEventFilterFactory.java | 47 ++ .../ContinuousQueryPeerClassLoadingTest.java | 142 +++++ .../services/ServiceThreadPoolSelfTest.java | 133 ++++ .../junits/GridTestKernalContext.java | 1 + .../testsuites/IgniteKernalSelfTestSuite.java | 2 + .../IgniteCacheObjectKeyIndexingSelfTest.java | 124 ++++ .../IgniteCacheQuerySelfTestSuite2.java | 2 + .../IgniteCacheQuerySelfTestSuite3.java | 2 + modules/web-console/backend/app/agent.js | 50 +- modules/web-console/backend/app/browser.js | 36 +- modules/web-console/backend/app/settings.js | 8 +- modules/web-console/backend/index.js | 10 - modules/web-console/frontend/.eslintrc | 1 + modules/web-console/frontend/.gitignore | 1 + modules/web-console/frontend/app/app.config.js | 12 +- modules/web-console/frontend/app/app.js | 18 +- .../activities-user-dialog.tpl.pug | 36 ++ .../components/activities-user-dialog/index.js | 2 +- .../form-field-datepicker.pug | 59 ++ .../app/components/input-dialog/index.js | 24 + .../input-dialog/input-dialog.controller.js | 35 ++ .../input-dialog/input-dialog.service.js | 88 +++ .../input-dialog/input-dialog.tpl.pug | 39 ++ .../list-of-registered-users/index.js | 4 +- .../list-of-registered-users.column-defs.js | 48 +- .../list-of-registered-users.controller.js | 194 ++++-- .../list-of-registered-users.scss | 28 + .../list-of-registered-users.tpl.pug | 72 +++ .../ui-grid-header/ui-grid-header.scss | 7 + .../ui-grid-header/ui-grid-header.tpl.pug | 29 + .../ui-grid-settings/ui-grid-settings.jade | 33 - .../ui-grid-settings/ui-grid-settings.pug | 33 + .../ui-grid-settings/ui-grid-settings.scss | 45 ++ .../app/directives/centered/centered.css | 37 -- .../directives/centered/centered.directive.js | 2 +- .../app/directives/centered/centered.scss | 37 ++ .../information/information.directive.js | 4 +- .../app/directives/information/information.jade | 20 - .../app/directives/information/information.pug | 20 + .../ui-ace-docker/ui-ace-docker.directive.js | 4 +- .../directives/ui-ace-docker/ui-ace-docker.jade | 31 - .../directives/ui-ace-docker/ui-ace-docker.pug | 31 + .../ui-ace-java/ui-ace-java.directive.js | 4 +- .../app/directives/ui-ace-java/ui-ace-java.jade | 22 - .../app/directives/ui-ace-java/ui-ace-java.pug | 22 + .../ui-ace-pojos/ui-ace-pojos.directive.js | 4 +- .../directives/ui-ace-pojos/ui-ace-pojos.jade | 40 -- .../directives/ui-ace-pojos/ui-ace-pojos.pug | 40 ++ .../ui-ace-pom/ui-ace-pom.directive.js | 4 +- .../app/directives/ui-ace-pom/ui-ace-pom.jade | 17 - .../app/directives/ui-ace-pom/ui-ace-pom.pug | 17 + .../ui-ace-sharp/ui-ace-sharp.directive.js | 4 +- .../directives/ui-ace-sharp/ui-ace-sharp.jade | 22 - .../directives/ui-ace-sharp/ui-ace-sharp.pug | 22 + .../ui-ace-spring/ui-ace-spring.directive.js | 4 +- .../directives/ui-ace-spring/ui-ace-spring.jade | 17 - .../directives/ui-ace-spring/ui-ace-spring.pug | 17 + .../frontend/app/helpers/jade/form.jade | 28 - .../frontend/app/helpers/jade/form.pug | 28 + .../helpers/jade/form/form-field-checkbox.jade | 38 -- .../helpers/jade/form/form-field-checkbox.pug | 38 ++ .../helpers/jade/form/form-field-datalist.jade | 51 -- .../helpers/jade/form/form-field-datalist.pug | 51 ++ .../app/helpers/jade/form/form-field-down.jade | 18 - .../app/helpers/jade/form/form-field-down.pug | 18 + .../helpers/jade/form/form-field-dropdown.jade | 51 -- .../helpers/jade/form/form-field-dropdown.pug | 51 ++ .../helpers/jade/form/form-field-feedback.jade | 32 - .../helpers/jade/form/form-field-feedback.pug | 32 + .../app/helpers/jade/form/form-field-label.jade | 23 - .../app/helpers/jade/form/form-field-label.pug | 23 + .../helpers/jade/form/form-field-number.jade | 53 -- .../app/helpers/jade/form/form-field-number.pug | 53 ++ .../helpers/jade/form/form-field-password.jade | 47 -- .../helpers/jade/form/form-field-password.pug | 47 ++ .../app/helpers/jade/form/form-field-text.jade | 64 -- .../app/helpers/jade/form/form-field-text.pug | 64 ++ .../app/helpers/jade/form/form-field-up.jade | 18 - .../app/helpers/jade/form/form-field-up.pug | 18 + .../app/helpers/jade/form/form-group.jade | 23 - .../app/helpers/jade/form/form-group.pug | 23 + .../frontend/app/helpers/jade/mixins.jade | 609 ------------------- .../frontend/app/helpers/jade/mixins.pug | 609 +++++++++++++++++++ .../frontend/app/modules/agent/agent.module.js | 14 +- .../modules/branding/header-logo.directive.js | 4 +- .../app/modules/branding/header-logo.jade | 18 - .../app/modules/branding/header-logo.pug | 18 + .../branding/powered-by-apache.directive.js | 4 +- .../app/modules/branding/powered-by-apache.jade | 18 - .../app/modules/branding/powered-by-apache.pug | 18 + .../frontend/app/modules/demo/Demo.module.js | 3 +- .../app/modules/dialog/dialog.factory.js | 2 +- .../frontend/app/modules/dialog/dialog.jade | 26 - .../frontend/app/modules/dialog/dialog.tpl.pug | 26 + .../getting-started/GettingStarted.provider.js | 3 +- .../frontend/app/modules/loading/loading.css | 73 --- .../app/modules/loading/loading.directive.js | 8 +- .../frontend/app/modules/loading/loading.jade | 23 - .../frontend/app/modules/loading/loading.pug | 23 + .../frontend/app/modules/loading/loading.scss | 73 +++ .../frontend/app/modules/nodes/Nodes.service.js | 4 +- .../app/modules/nodes/nodes-dialog.jade | 35 -- .../app/modules/nodes/nodes-dialog.tpl.pug | 35 ++ .../app/modules/sql/notebook.controller.js | 4 +- .../frontend/app/modules/sql/sql.controller.js | 119 +++- .../frontend/app/modules/sql/sql.module.js | 19 +- .../frontend/app/modules/states/admin.state.js | 4 +- .../app/modules/states/configuration.state.js | 23 +- .../states/configuration/caches/affinity.pug | 82 +++ .../configuration/caches/client-near-cache.jade | 50 -- .../configuration/caches/client-near-cache.pug | 50 ++ .../configuration/caches/concurrency.jade | 65 -- .../states/configuration/caches/concurrency.pug | 65 ++ .../states/configuration/caches/general.jade | 69 --- .../states/configuration/caches/general.pug | 69 +++ .../states/configuration/caches/memory.jade | 109 ---- .../states/configuration/caches/memory.pug | 108 ++++ .../configuration/caches/near-cache-client.jade | 51 -- .../configuration/caches/near-cache-client.pug | 51 ++ .../configuration/caches/near-cache-server.jade | 52 -- .../configuration/caches/near-cache-server.pug | 52 ++ .../configuration/caches/node-filter.jade | 59 -- .../states/configuration/caches/node-filter.pug | 59 ++ .../states/configuration/caches/query.jade | 114 ---- .../states/configuration/caches/query.pug | 114 ++++ .../states/configuration/caches/rebalance.jade | 66 -- .../states/configuration/caches/rebalance.pug | 66 ++ .../states/configuration/caches/statistics.jade | 39 -- .../states/configuration/caches/statistics.pug | 39 ++ .../states/configuration/caches/store.jade | 250 -------- .../states/configuration/caches/store.pug | 250 ++++++++ .../states/configuration/clusters/atomic.jade | 54 -- .../states/configuration/clusters/atomic.pug | 54 ++ .../configuration/clusters/attributes.jade | 57 -- .../configuration/clusters/attributes.pug | 57 ++ .../states/configuration/clusters/binary.jade | 77 --- .../states/configuration/clusters/binary.pug | 77 +++ .../configuration/clusters/cache-key-cfg.jade | 50 -- .../configuration/clusters/cache-key-cfg.pug | 50 ++ .../configuration/clusters/checkpoint.jade | 86 --- .../configuration/clusters/checkpoint.pug | 86 +++ .../configuration/clusters/checkpoint/fs.jade | 66 -- .../configuration/clusters/checkpoint/fs.pug | 66 ++ .../configuration/clusters/checkpoint/jdbc.jade | 48 -- .../configuration/clusters/checkpoint/jdbc.pug | 48 ++ .../configuration/clusters/checkpoint/s3.jade | 178 ------ .../configuration/clusters/checkpoint/s3.pug | 178 ++++++ .../configuration/clusters/collision.jade | 63 -- .../states/configuration/clusters/collision.pug | 63 ++ .../clusters/collision/custom.jade | 24 - .../configuration/clusters/collision/custom.pug | 24 + .../clusters/collision/fifo-queue.jade | 27 - .../clusters/collision/fifo-queue.pug | 27 + .../clusters/collision/job-stealing.jade | 63 -- .../clusters/collision/job-stealing.pug | 63 ++ .../clusters/collision/priority-queue.jade | 42 -- .../clusters/collision/priority-queue.pug | 42 ++ .../configuration/clusters/communication.jade | 100 --- .../configuration/clusters/communication.pug | 100 +++ .../configuration/clusters/connector.jade | 104 ---- .../states/configuration/clusters/connector.pug | 104 ++++ .../configuration/clusters/deployment.jade | 237 -------- .../configuration/clusters/deployment.pug | 237 ++++++++ .../configuration/clusters/discovery.jade | 88 --- .../states/configuration/clusters/discovery.pug | 88 +++ .../states/configuration/clusters/events.jade | 68 --- .../states/configuration/clusters/events.pug | 68 +++ .../states/configuration/clusters/failover.jade | 73 --- .../states/configuration/clusters/failover.pug | 73 +++ .../states/configuration/clusters/general.jade | 76 --- .../states/configuration/clusters/general.pug | 76 +++ .../clusters/general/discovery/cloud.jade | 134 ---- .../clusters/general/discovery/cloud.pug | 134 ++++ .../clusters/general/discovery/google.jade | 38 -- .../clusters/general/discovery/google.pug | 38 ++ .../clusters/general/discovery/jdbc.jade | 31 - .../clusters/general/discovery/jdbc.pug | 31 + .../clusters/general/discovery/multicast.jade | 99 --- .../clusters/general/discovery/multicast.pug | 99 +++ .../clusters/general/discovery/s3.jade | 27 - .../clusters/general/discovery/s3.pug | 27 + .../clusters/general/discovery/shared.jade | 23 - .../clusters/general/discovery/shared.pug | 23 + .../clusters/general/discovery/vm.jade | 79 --- .../clusters/general/discovery/vm.pug | 79 +++ .../clusters/general/discovery/zookeeper.jade | 85 --- .../clusters/general/discovery/zookeeper.pug | 85 +++ .../bounded-exponential-backoff.jade | 27 - .../retrypolicy/bounded-exponential-backoff.pug | 27 + .../discovery/zookeeper/retrypolicy/custom.jade | 24 - .../discovery/zookeeper/retrypolicy/custom.pug | 24 + .../retrypolicy/exponential-backoff.jade | 27 - .../retrypolicy/exponential-backoff.pug | 27 + .../zookeeper/retrypolicy/forever.jade | 22 - .../discovery/zookeeper/retrypolicy/forever.pug | 22 + .../zookeeper/retrypolicy/n-times.jade | 25 - .../discovery/zookeeper/retrypolicy/n-times.pug | 25 + .../zookeeper/retrypolicy/one-time.jade | 23 - .../zookeeper/retrypolicy/one-time.pug | 23 + .../zookeeper/retrypolicy/until-elapsed.jade | 25 - .../zookeeper/retrypolicy/until-elapsed.pug | 25 + .../states/configuration/clusters/igfs.jade | 38 -- .../states/configuration/clusters/igfs.pug | 38 ++ .../configuration/clusters/load-balancing.jade | 107 ---- .../configuration/clusters/load-balancing.pug | 107 ++++ .../states/configuration/clusters/logger.jade | 66 -- .../states/configuration/clusters/logger.pug | 66 ++ .../configuration/clusters/logger/custom.jade | 25 - .../configuration/clusters/logger/custom.pug | 25 + .../configuration/clusters/logger/log4j.jade | 50 -- .../configuration/clusters/logger/log4j.pug | 50 ++ .../configuration/clusters/logger/log4j2.jade | 39 -- .../configuration/clusters/logger/log4j2.pug | 39 ++ .../configuration/clusters/marshaller.jade | 76 --- .../configuration/clusters/marshaller.pug | 76 +++ .../states/configuration/clusters/metrics.jade | 51 -- .../states/configuration/clusters/metrics.pug | 51 ++ .../states/configuration/clusters/odbc.jade | 48 -- .../states/configuration/clusters/odbc.pug | 48 ++ .../states/configuration/clusters/ssl.jade | 110 ---- .../states/configuration/clusters/ssl.pug | 110 ++++ .../states/configuration/clusters/swap.jade | 72 --- .../states/configuration/clusters/swap.pug | 72 +++ .../states/configuration/clusters/thread.jade | 48 -- .../states/configuration/clusters/thread.pug | 48 ++ .../states/configuration/clusters/time.jade | 47 -- .../states/configuration/clusters/time.pug | 47 ++ .../configuration/clusters/transactions.jade | 69 --- .../configuration/clusters/transactions.pug | 69 +++ .../states/configuration/domains/general.jade | 52 -- .../states/configuration/domains/general.pug | 52 ++ .../states/configuration/domains/query.jade | 172 ------ .../states/configuration/domains/query.pug | 172 ++++++ .../states/configuration/domains/store.jade | 127 ---- .../states/configuration/domains/store.pug | 127 ++++ .../modules/states/configuration/igfs/dual.jade | 42 -- .../modules/states/configuration/igfs/dual.pug | 42 ++ .../states/configuration/igfs/fragmentizer.jade | 43 -- .../states/configuration/igfs/fragmentizer.pug | 43 ++ .../states/configuration/igfs/general.jade | 57 -- .../states/configuration/igfs/general.pug | 57 ++ .../modules/states/configuration/igfs/ipc.jade | 60 -- .../modules/states/configuration/igfs/ipc.pug | 60 ++ .../modules/states/configuration/igfs/misc.jade | 108 ---- .../modules/states/configuration/igfs/misc.pug | 108 ++++ .../states/configuration/igfs/secondary.jade | 45 -- .../states/configuration/igfs/secondary.pug | 45 ++ .../configuration/summary/summary.controller.js | 5 + .../frontend/app/modules/states/errors.state.js | 4 +- .../app/modules/states/password.state.js | 6 +- .../app/modules/states/profile.state.js | 4 +- .../frontend/app/modules/states/signin.state.js | 2 +- .../frontend/app/primitives/badge/index.scss | 36 ++ .../frontend/app/primitives/index.js | 19 + .../frontend/app/primitives/tabs/index.scss | 73 +++ .../frontend/app/services/Clone.service.js | 64 -- .../frontend/app/services/Confirm.service.js | 4 +- .../app/services/ConfirmBatch.service.js | 4 +- .../frontend/controllers/caches-controller.js | 14 +- .../frontend/controllers/clusters-controller.js | 6 +- .../frontend/controllers/domains-controller.js | 16 +- .../frontend/controllers/igfs-controller.js | 10 +- .../frontend/gulpfile.babel.js/paths.js | 28 +- .../frontend/gulpfile.babel.js/tasks/build.js | 2 +- .../frontend/gulpfile.babel.js/tasks/bundle.js | 8 +- .../frontend/gulpfile.babel.js/tasks/jade.js | 49 -- .../frontend/gulpfile.babel.js/tasks/watch.js | 5 +- .../gulpfile.babel.js/webpack/common.js | 292 ++++----- .../webpack/environments/development.js | 90 ++- .../webpack/environments/production.js | 41 +- .../webpack/environments/test.js | 52 +- .../frontend/gulpfile.babel.js/webpack/index.js | 4 +- modules/web-console/frontend/package.json | 60 +- .../frontend/public/stylesheets/style.scss | 13 +- .../frontend/test/e2e/exampe.test.js | 4 +- .../frontend/test/karma.conf.babel.js | 7 +- .../frontend/test/protractor.conf.js | 16 +- .../frontend/test/unit/JavaTransformer.test.js | 2 +- .../frontend/test/unit/JavaTypes.test.js | 137 ++--- .../frontend/test/unit/SharpTransformer.test.js | 2 +- .../test/unit/SpringTransformer.test.js | 2 +- .../frontend/test/unit/SqlTypes.test.js | 7 +- .../frontend/test/unit/UserAuth.test.js | 4 +- .../frontend/test/unit/Version.test.js | 1 + .../test/unit/defaultName.filter.test.js | 27 +- modules/web-console/frontend/views/403.jade | 22 - modules/web-console/frontend/views/403.tpl.pug | 22 + modules/web-console/frontend/views/404.jade | 22 - modules/web-console/frontend/views/404.tpl.pug | 22 + modules/web-console/frontend/views/base.jade | 22 - modules/web-console/frontend/views/base.pug | 22 + .../frontend/views/configuration/caches.jade | 55 -- .../frontend/views/configuration/caches.tpl.pug | 55 ++ .../frontend/views/configuration/clusters.jade | 68 --- .../views/configuration/clusters.tpl.pug | 68 +++ .../views/configuration/domains-import.jade | 170 ------ .../views/configuration/domains-import.tpl.pug | 170 ++++++ .../frontend/views/configuration/domains.jade | 66 -- .../views/configuration/domains.tpl.pug | 66 ++ .../frontend/views/configuration/igfs.jade | 51 -- .../frontend/views/configuration/igfs.tpl.pug | 51 ++ .../frontend/views/configuration/sidebar.jade | 29 - .../views/configuration/sidebar.tpl.pug | 29 + .../summary-project-structure.jade | 27 - .../summary-project-structure.tpl.pug | 28 + .../views/configuration/summary-tabs.jade | 25 - .../views/configuration/summary-tabs.pug | 25 + .../frontend/views/configuration/summary.jade | 90 --- .../views/configuration/summary.tpl.pug | 90 +++ .../frontend/views/includes/footer.jade | 23 - .../frontend/views/includes/footer.pug | 23 + .../frontend/views/includes/header.jade | 52 -- .../frontend/views/includes/header.pug | 52 ++ modules/web-console/frontend/views/index.jade | 47 -- modules/web-console/frontend/views/index.pug | 47 ++ modules/web-console/frontend/views/reset.jade | 48 -- .../web-console/frontend/views/reset.tpl.pug | 48 ++ .../frontend/views/settings/admin.jade | 25 - .../frontend/views/settings/admin.tpl.pug | 25 + .../frontend/views/settings/profile.jade | 76 --- .../frontend/views/settings/profile.tpl.pug | 76 +++ modules/web-console/frontend/views/signin.jade | 163 ----- .../web-console/frontend/views/signin.tpl.pug | 163 +++++ .../frontend/views/sql/cache-metadata.jade | 40 -- .../frontend/views/sql/cache-metadata.tpl.pug | 40 ++ .../frontend/views/sql/chart-settings.jade | 40 -- .../frontend/views/sql/chart-settings.tpl.pug | 40 ++ .../frontend/views/sql/notebook-new.jade | 33 - .../frontend/views/sql/notebook-new.tpl.pug | 33 + .../frontend/views/sql/paragraph-rate.jade | 31 - .../frontend/views/sql/paragraph-rate.tpl.pug | 31 + modules/web-console/frontend/views/sql/sql.jade | 278 --------- .../web-console/frontend/views/sql/sql.tpl.pug | 291 +++++++++ .../views/templates/agent-download.jade | 50 -- .../views/templates/agent-download.tpl.pug | 50 ++ .../frontend/views/templates/alert.jade | 21 - .../frontend/views/templates/alert.tpl.pug | 21 + .../frontend/views/templates/batch-confirm.jade | 34 -- .../views/templates/batch-confirm.tpl.pug | 34 ++ .../frontend/views/templates/clone.jade | 39 -- .../frontend/views/templates/confirm.jade | 33 - .../frontend/views/templates/confirm.tpl.pug | 33 + .../frontend/views/templates/demo-info.jade | 47 -- .../frontend/views/templates/demo-info.tpl.pug | 47 ++ .../frontend/views/templates/dropdown.jade | 24 - .../frontend/views/templates/dropdown.tpl.pug | 24 + .../views/templates/getting-started.jade | 34 -- .../views/templates/getting-started.tpl.pug | 34 ++ .../frontend/views/templates/message.jade | 28 - .../frontend/views/templates/message.tpl.pug | 28 + .../frontend/views/templates/pagination.jade | 32 - .../frontend/views/templates/select.jade | 26 - .../frontend/views/templates/select.tpl.pug | 26 + .../views/templates/validation-error.jade | 25 - .../views/templates/validation-error.tpl.pug | 25 + .../demo/service/DemoCachesLoadService.java | 26 + .../config/benchmark-multicast.properties | 4 +- .../test-max-int-values-offheap.properties | 14 +- 383 files changed, 10593 insertions(+), 8918 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/ignite/blob/27fbb7a7/modules/clients/src/test/java/org/apache/ignite/jdbc/suite/IgniteJdbcDriverTestSuite.java ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/ignite/blob/27fbb7a7/modules/core/src/main/java/org/apache/ignite/IgniteJdbcDriver.java ---------------------------------------------------------------------- diff --cc modules/core/src/main/java/org/apache/ignite/IgniteJdbcDriver.java index 9790b8f,c511d5f..0ee41c0 --- a/modules/core/src/main/java/org/apache/ignite/IgniteJdbcDriver.java +++ b/modules/core/src/main/java/org/apache/ignite/IgniteJdbcDriver.java @@@ -292,21 -292,9 +292,24 @@@ public class IgniteJdbcDriver implement /** Distributed joins parameter name. */ private static final String PARAM_DISTRIBUTED_JOINS = "distributedJoins"; + /** Transactions allowed parameter name. */ + private static final String PARAM_TX_ALLOWED = "transactionsAllowed"; + + /** DML streaming parameter name. */ + private static final String PARAM_STREAMING = "streaming"; + + /** DML streaming auto flush frequency. */ + private static final String PARAM_STREAMING_FLUSH_FREQ = "streamingFlushFrequency"; + + /** DML streaming node buffer size. */ + private static final String PARAM_STREAMING_PER_NODE_BUF_SIZE = "streamingPerNodeBufferSize"; + + /** DML streaming parallel operations per node. */ + private static final String PARAM_STREAMING_PER_NODE_PAR_OPS = "streamingPerNodeParallelOperations"; + + /** Whether DML streaming will overwrite existing cache entries. */ - private static final String PARAM_STREAMING_ALLOW_OVERWRITE = "streamingAllowOverwrite"; ++ private static final String PARAM_STREAMING_ALLOW_OVERWRITE = "streamingAllowOverwrite"; + /** Hostname property name. */ public static final String PROP_HOST = PROP_PREFIX + "host"; @@@ -328,21 -316,9 +331,24 @@@ /** Distributed joins property name. */ public static final String PROP_DISTRIBUTED_JOINS = PROP_PREFIX + PARAM_DISTRIBUTED_JOINS; + /** Transactions allowed property name. */ + public static final String PROP_TX_ALLOWED = PROP_PREFIX + PARAM_TX_ALLOWED; + + /** DML streaming property name. */ + public static final String PROP_STREAMING = PROP_PREFIX + PARAM_STREAMING; + + /** DML stream auto flush frequency property name. */ + public static final String PROP_STREAMING_FLUSH_FREQ = PROP_PREFIX + PARAM_STREAMING_FLUSH_FREQ; + + /** DML stream node buffer size property name. */ + public static final String PROP_STREAMING_PER_NODE_BUF_SIZE = PROP_PREFIX + PARAM_STREAMING_PER_NODE_BUF_SIZE; + + /** DML stream parallel operations per node property name. */ + public static final String PROP_STREAMING_PER_NODE_PAR_OPS = PROP_PREFIX + PARAM_STREAMING_PER_NODE_PAR_OPS; + + /** Whether DML streaming will overwrite existing cache entries. */ + public static final String PROP_STREAMING_ALLOW_OVERWRITE = PROP_PREFIX + PARAM_STREAMING_ALLOW_OVERWRITE; + /** Cache name property name. */ public static final String PROP_CFG = PROP_PREFIX + "cfg"; http://git-wip-us.apache.org/repos/asf/ignite/blob/27fbb7a7/modules/core/src/main/java/org/apache/ignite/internal/GridKernalContext.java ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/ignite/blob/27fbb7a7/modules/core/src/main/java/org/apache/ignite/internal/GridKernalContextImpl.java ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/ignite/blob/27fbb7a7/modules/core/src/main/java/org/apache/ignite/internal/IgniteKernal.java ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/ignite/blob/27fbb7a7/modules/core/src/main/java/org/apache/ignite/internal/jdbc2/JdbcConnection.java ---------------------------------------------------------------------- diff --cc modules/core/src/main/java/org/apache/ignite/internal/jdbc2/JdbcConnection.java index 4244602,dc3fe7f..c431a04 --- a/modules/core/src/main/java/org/apache/ignite/internal/jdbc2/JdbcConnection.java +++ b/modules/core/src/main/java/org/apache/ignite/internal/jdbc2/JdbcConnection.java @@@ -77,11 -73,7 +77,12 @@@ import static org.apache.ignite.IgniteJ import static org.apache.ignite.IgniteJdbcDriver.PROP_DISTRIBUTED_JOINS; import static org.apache.ignite.IgniteJdbcDriver.PROP_LOCAL; import static org.apache.ignite.IgniteJdbcDriver.PROP_NODE_ID; + import static org.apache.ignite.IgniteJdbcDriver.PROP_TX_ALLOWED; +import static org.apache.ignite.IgniteJdbcDriver.PROP_STREAMING; +import static org.apache.ignite.IgniteJdbcDriver.PROP_STREAMING_ALLOW_OVERWRITE; +import static org.apache.ignite.IgniteJdbcDriver.PROP_STREAMING_FLUSH_FREQ; +import static org.apache.ignite.IgniteJdbcDriver.PROP_STREAMING_PER_NODE_BUF_SIZE; +import static org.apache.ignite.IgniteJdbcDriver.PROP_STREAMING_PER_NODE_PAR_OPS; /** * JDBC connection implementation. @@@ -127,21 -119,12 +128,27 @@@ public class JdbcConnection implements /** Distributed joins flag. */ private boolean distributedJoins; + /** Transactions allowed flag. */ + private boolean txAllowed; + + /** Current transaction isolation. */ + private int txIsolation; + + /** Make this connection streaming oriented, and prepared statements - data streamer aware. */ + private final boolean stream; + + /** Auto flush frequency for streaming. */ + private final long streamFlushTimeout; + + /** Node buffer size for data streamer. */ + private final int streamNodeBufSize; + + /** Parallel ops count per node for data streamer. */ + private final int streamNodeParOps; + + /** Allow overwrites for duplicate keys on streamed {@code INSERT}s. */ + private final boolean streamAllowOverwrite; + /** Statements. */ final Set<JdbcStatement> statements = new HashSet<>(); @@@ -158,19 -141,12 +165,20 @@@ this.url = url; - this.cacheName = props.getProperty(PROP_CACHE); - this.locQry = Boolean.parseBoolean(props.getProperty(PROP_LOCAL)); - this.collocatedQry = Boolean.parseBoolean(props.getProperty(PROP_COLLOCATED)); - this.distributedJoins = Boolean.parseBoolean(props.getProperty(PROP_DISTRIBUTED_JOINS)); + cacheName = props.getProperty(PROP_CACHE); + locQry = Boolean.parseBoolean(props.getProperty(PROP_LOCAL)); + collocatedQry = Boolean.parseBoolean(props.getProperty(PROP_COLLOCATED)); + distributedJoins = Boolean.parseBoolean(props.getProperty(PROP_DISTRIBUTED_JOINS)); + txAllowed = Boolean.parseBoolean(props.getProperty(PROP_TX_ALLOWED)); + stream = Boolean.parseBoolean(props.getProperty(PROP_STREAMING)); + streamAllowOverwrite = Boolean.parseBoolean(props.getProperty(PROP_STREAMING_ALLOW_OVERWRITE)); + streamFlushTimeout = Long.parseLong(props.getProperty(PROP_STREAMING_FLUSH_FREQ, "0")); + streamNodeBufSize = Integer.parseInt(props.getProperty(PROP_STREAMING_PER_NODE_BUF_SIZE, + String.valueOf(IgniteDataStreamer.DFLT_PER_NODE_BUFFER_SIZE))); + streamNodeParOps = Integer.parseInt(props.getProperty(PROP_STREAMING_PER_NODE_PAR_OPS, + String.valueOf(IgniteDataStreamer.DFLT_MAX_PARALLEL_OPS))); + String nodeIdProp = props.getProperty(PROP_NODE_ID); if (nodeIdProp != null) @@@ -516,21 -500,10 +532,21 @@@ if (resSetConcurrency != CONCUR_READ_ONLY) throw new SQLFeatureNotSupportedException("Invalid concurrency (updates are not supported)."); - if (resSetHoldability != HOLD_CURSORS_OVER_COMMIT) + if (!txAllowed && resSetHoldability != HOLD_CURSORS_OVER_COMMIT) throw new SQLFeatureNotSupportedException("Invalid holdability (transactions are not supported)."); - JdbcPreparedStatement stmt = new JdbcPreparedStatement(this, sql); + JdbcPreparedStatement stmt; + + if (!stream) + stmt = new JdbcPreparedStatement(this, sql); + else { + PreparedStatement nativeStmt = prepareNativeStatement(sql); + + IgniteDataStreamer<?, ?> streamer = ((IgniteEx) ignite).context().query().createStreamer(cacheName, + nativeStmt, streamFlushTimeout, streamNodeBufSize, streamNodeParOps, streamAllowOverwrite); + + stmt = new JdbcStreamedPreparedStatement(this, sql, streamer, nativeStmt); + } statements.add(stmt); http://git-wip-us.apache.org/repos/asf/ignite/blob/27fbb7a7/modules/core/src/main/java/org/apache/ignite/internal/managers/communication/GridIoManager.java ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/ignite/blob/27fbb7a7/modules/core/src/main/java/org/apache/ignite/internal/processors/continuous/GridContinuousProcessor.java ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/ignite/blob/27fbb7a7/modules/core/src/main/java/org/apache/ignite/internal/processors/query/GridQueryProcessor.java ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/ignite/blob/27fbb7a7/modules/core/src/main/java/org/apache/ignite/internal/processors/task/GridTaskWorker.java ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/ignite/blob/27fbb7a7/modules/core/src/main/resources/META-INF/classnames.properties ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/ignite/blob/27fbb7a7/modules/indexing/src/test/java/org/apache/ignite/testsuites/IgniteCacheQuerySelfTestSuite2.java ---------------------------------------------------------------------- diff --cc modules/indexing/src/test/java/org/apache/ignite/testsuites/IgniteCacheQuerySelfTestSuite2.java index a0db90c,923a79c..e3f89fe --- a/modules/indexing/src/test/java/org/apache/ignite/testsuites/IgniteCacheQuerySelfTestSuite2.java +++ b/modules/indexing/src/test/java/org/apache/ignite/testsuites/IgniteCacheQuerySelfTestSuite2.java @@@ -18,21 -18,42 +18,22 @@@ package org.apache.ignite.testsuites; import junit.framework.TestSuite; -import org.apache.ignite.internal.processors.cache.CacheLocalQueryDetailMetricsSelfTest; -import org.apache.ignite.internal.processors.cache.CacheLocalQueryMetricsSelfTest; -import org.apache.ignite.internal.processors.cache.CacheOffheapBatchIndexingSingleTypeTest; -import org.apache.ignite.internal.processors.cache.CachePartitionedQueryDetailMetricsDistributedSelfTest; -import org.apache.ignite.internal.processors.cache.CachePartitionedQueryDetailMetricsLocalSelfTest; -import org.apache.ignite.internal.processors.cache.CachePartitionedQueryMetricsDistributedSelfTest; -import org.apache.ignite.internal.processors.cache.CachePartitionedQueryMetricsLocalSelfTest; -import org.apache.ignite.internal.processors.cache.CacheQueryNewClientSelfTest; -import org.apache.ignite.internal.processors.cache.CacheQueryOffheapEvictDataLostTest; -import org.apache.ignite.internal.processors.cache.CacheReplicatedQueryDetailMetricsDistributedSelfTest; -import org.apache.ignite.internal.processors.cache.CacheReplicatedQueryDetailMetricsLocalSelfTest; -import org.apache.ignite.internal.processors.cache.CacheReplicatedQueryMetricsDistributedSelfTest; -import org.apache.ignite.internal.processors.cache.CacheReplicatedQueryMetricsLocalSelfTest; import org.apache.ignite.internal.processors.cache.CacheScanPartitionQueryFallbackSelfTest; -import org.apache.ignite.internal.processors.cache.CacheSqlQueryValueCopySelfTest; -import org.apache.ignite.internal.processors.cache.GridCacheQueryIndexingDisabledSelfTest; -import org.apache.ignite.internal.processors.cache.IgniteCacheFieldsQueryNoDataSelfTest; -import org.apache.ignite.internal.processors.cache.IgniteCacheNoClassQuerySelfTest; +import org.apache.ignite.internal.processors.cache.IgniteCacheCrossCacheJoinRandomTest; + import org.apache.ignite.internal.processors.cache.IgniteCacheObjectKeyIndexingSelfTest; -import org.apache.ignite.internal.processors.cache.IgniteCacheP2pUnmarshallingQueryErrorTest; -import org.apache.ignite.internal.processors.cache.SqlFieldsQuerySelfTest; -import org.apache.ignite.internal.processors.cache.distributed.near.IgniteCacheAtomicFieldsQuerySelfTest; -import org.apache.ignite.internal.processors.cache.distributed.near.IgniteCacheAtomicNearEnabledFieldsQuerySelfTest; -import org.apache.ignite.internal.processors.cache.distributed.near.IgniteCacheDistributedQueryCancelSelfTest; +import org.apache.ignite.internal.processors.cache.IgniteCacheOffheapTieredMultithreadedSelfTest; +import org.apache.ignite.internal.processors.cache.IgniteCachePartitionedQueryMultiThreadedSelfTest; +import org.apache.ignite.internal.processors.cache.IgniteCacheQueryEvictsMultiThreadedSelfTest; +import org.apache.ignite.internal.processors.cache.IgniteCacheQueryMultiThreadedOffHeapTieredSelfTest; +import org.apache.ignite.internal.processors.cache.IgniteCacheQueryMultiThreadedSelfTest; +import org.apache.ignite.internal.processors.cache.IgniteCacheQueryOffheapEvictsMultiThreadedSelfTest; +import org.apache.ignite.internal.processors.cache.IgniteCacheQueryOffheapMultiThreadedSelfTest; +import org.apache.ignite.internal.processors.cache.IgniteCacheSqlQueryMultiThreadedSelfTest; +import org.apache.ignite.internal.processors.cache.distributed.near.IgniteCacheClientQueryReplicatedNodeRestartSelfTest; import org.apache.ignite.internal.processors.cache.distributed.near.IgniteCacheDistributedQueryStopOnCancelOrTimeoutSelfTest; -import org.apache.ignite.internal.processors.cache.distributed.near.IgniteCachePartitionedFieldsQueryP2PEnabledSelfTest; -import org.apache.ignite.internal.processors.cache.distributed.near.IgniteCachePartitionedFieldsQuerySelfTest; -import org.apache.ignite.internal.processors.cache.distributed.near.IgniteCacheQueryStopOnCancelOrTimeoutDistributedJoinSelfTest; -import org.apache.ignite.internal.processors.cache.distributed.replicated.IgniteCacheReplicatedFieldsQueryP2PEnabledSelfTest; -import org.apache.ignite.internal.processors.cache.distributed.replicated.IgniteCacheReplicatedFieldsQuerySelfTest; -import org.apache.ignite.internal.processors.cache.local.IgniteCacheLocalFieldsQuerySelfTest; -import org.apache.ignite.internal.processors.cache.local.IgniteCacheLocalQueryCancelOrTimeoutSelfTest; -import org.apache.ignite.internal.processors.cache.query.GridCacheSwapScanQuerySelfTest; -import org.apache.ignite.internal.processors.query.h2.sql.BaseH2CompareQueryTest; -import org.apache.ignite.internal.processors.query.h2.sql.H2CompareBigQueryTest; -import org.apache.ignite.spi.communication.tcp.GridOrderedMessageCancelSelfTest; +import org.apache.ignite.internal.processors.cache.distributed.near.IgniteCacheQueryNodeFailTest; +import org.apache.ignite.internal.processors.cache.distributed.near.IgniteCacheQueryNodeRestartSelfTest; +import org.apache.ignite.internal.processors.cache.distributed.near.IgniteCacheQueryNodeRestartSelfTest2; import org.apache.ignite.testframework.IgniteTestSuite; /** @@@ -46,21 -67,61 +47,22 @@@ public class IgniteCacheQuerySelfTestSu public static TestSuite suite() throws Exception { TestSuite suite = new IgniteTestSuite("Ignite Cache Queries Test Suite 2"); - // Scan queries. + suite.addTestSuite(IgniteCacheQueryMultiThreadedSelfTest.class); + suite.addTestSuite(IgniteCacheQueryMultiThreadedOffHeapTieredSelfTest.class); + suite.addTestSuite(IgniteCacheQueryOffheapMultiThreadedSelfTest.class); + suite.addTestSuite(IgniteCacheOffheapTieredMultithreadedSelfTest.class); + suite.addTestSuite(IgniteCacheQueryEvictsMultiThreadedSelfTest.class); + suite.addTestSuite(IgniteCacheQueryOffheapEvictsMultiThreadedSelfTest.class); + suite.addTestSuite(IgniteCacheCrossCacheJoinRandomTest.class); + suite.addTestSuite(IgniteCacheClientQueryReplicatedNodeRestartSelfTest.class); + suite.addTestSuite(IgniteCacheQueryNodeFailTest.class); + suite.addTestSuite(IgniteCacheQueryNodeRestartSelfTest.class); + suite.addTestSuite(IgniteCacheQueryNodeRestartSelfTest2.class); + suite.addTestSuite(IgniteCacheSqlQueryMultiThreadedSelfTest.class); + suite.addTestSuite(IgniteCachePartitionedQueryMultiThreadedSelfTest.class); suite.addTestSuite(CacheScanPartitionQueryFallbackSelfTest.class); - - // Fields queries. - suite.addTestSuite(SqlFieldsQuerySelfTest.class); - suite.addTestSuite(IgniteCacheLocalFieldsQuerySelfTest.class); - suite.addTestSuite(IgniteCacheReplicatedFieldsQuerySelfTest.class); - suite.addTestSuite(IgniteCacheReplicatedFieldsQueryP2PEnabledSelfTest.class); - suite.addTestSuite(IgniteCachePartitionedFieldsQuerySelfTest.class); - suite.addTestSuite(IgniteCacheAtomicFieldsQuerySelfTest.class); - suite.addTestSuite(IgniteCacheAtomicNearEnabledFieldsQuerySelfTest.class); - suite.addTestSuite(IgniteCachePartitionedFieldsQueryP2PEnabledSelfTest.class); - suite.addTestSuite(IgniteCacheFieldsQueryNoDataSelfTest.class); - - suite.addTestSuite(GridCacheQueryIndexingDisabledSelfTest.class); - - suite.addTestSuite(GridCacheSwapScanQuerySelfTest.class); - - suite.addTestSuite(GridOrderedMessageCancelSelfTest.class); - - suite.addTestSuite(CacheQueryOffheapEvictDataLostTest.class); - - // Ignite cache and H2 comparison. - suite.addTestSuite(BaseH2CompareQueryTest.class); - suite.addTestSuite(H2CompareBigQueryTest.class); - - // Cache query metrics. - suite.addTestSuite(CacheLocalQueryMetricsSelfTest.class); - suite.addTestSuite(CachePartitionedQueryMetricsDistributedSelfTest.class); - suite.addTestSuite(CachePartitionedQueryMetricsLocalSelfTest.class); - suite.addTestSuite(CacheReplicatedQueryMetricsDistributedSelfTest.class); - suite.addTestSuite(CacheReplicatedQueryMetricsLocalSelfTest.class); - - // Cache query metrics. - suite.addTestSuite(CacheLocalQueryDetailMetricsSelfTest.class); - suite.addTestSuite(CachePartitionedQueryDetailMetricsDistributedSelfTest.class); - suite.addTestSuite(CachePartitionedQueryDetailMetricsLocalSelfTest.class); - suite.addTestSuite(CacheReplicatedQueryDetailMetricsDistributedSelfTest.class); - suite.addTestSuite(CacheReplicatedQueryDetailMetricsLocalSelfTest.class); - - // Unmarshalling query test. - suite.addTestSuite(IgniteCacheP2pUnmarshallingQueryErrorTest.class); - suite.addTestSuite(IgniteCacheNoClassQuerySelfTest.class); - - // Cancellation. suite.addTestSuite(IgniteCacheDistributedQueryStopOnCancelOrTimeoutSelfTest.class); - suite.addTestSuite(IgniteCacheDistributedQueryCancelSelfTest.class); - suite.addTestSuite(IgniteCacheLocalQueryCancelOrTimeoutSelfTest.class); - suite.addTestSuite(IgniteCacheQueryStopOnCancelOrTimeoutDistributedJoinSelfTest.class); - - // Other. - suite.addTestSuite(CacheQueryNewClientSelfTest.class); - suite.addTestSuite(CacheOffheapBatchIndexingSingleTypeTest.class); - suite.addTestSuite(CacheSqlQueryValueCopySelfTest.class); + suite.addTestSuite(IgniteCacheObjectKeyIndexingSelfTest.class); return suite; } http://git-wip-us.apache.org/repos/asf/ignite/blob/27fbb7a7/modules/indexing/src/test/java/org/apache/ignite/testsuites/IgniteCacheQuerySelfTestSuite3.java ---------------------------------------------------------------------- diff --cc modules/indexing/src/test/java/org/apache/ignite/testsuites/IgniteCacheQuerySelfTestSuite3.java index 07125a6,6b2fea0..a4594ee --- a/modules/indexing/src/test/java/org/apache/ignite/testsuites/IgniteCacheQuerySelfTestSuite3.java +++ b/modules/indexing/src/test/java/org/apache/ignite/testsuites/IgniteCacheQuerySelfTestSuite3.java @@@ -34,7 -34,7 +34,8 @@@ import org.apache.ignite.internal.proce import org.apache.ignite.internal.processors.cache.query.continuous.CacheKeepBinaryIterationTest; import org.apache.ignite.internal.processors.cache.query.continuous.CacheKeepBinaryIterationStoreEnabledTest; import org.apache.ignite.internal.processors.cache.query.continuous.CacheKeepBinaryIterationSwapEnabledTest; +import org.apache.ignite.internal.processors.cache.query.continuous.ClientReconnectContinuousQueryTest; + import org.apache.ignite.internal.processors.cache.query.continuous.ContinuousQueryPeerClassLoadingTest; import org.apache.ignite.internal.processors.cache.query.continuous.ContinuousQueryRemoteFilterMissingInClassPathSelfTest; import org.apache.ignite.internal.processors.cache.query.continuous.GridCacheContinuousQueryAtomicNearEnabledSelfTest; import org.apache.ignite.internal.processors.cache.query.continuous.GridCacheContinuousQueryAtomicOffheapTieredTest; @@@ -124,7 -124,7 +125,8 @@@ public class IgniteCacheQuerySelfTestSu suite.addTestSuite(CacheKeepBinaryIterationNearEnabledTest.class); suite.addTestSuite(IgniteCacheContinuousQueryBackupQueueTest.class); suite.addTestSuite(IgniteCacheContinuousQueryNoUnsubscribeTest.class); + suite.addTestSuite(ContinuousQueryPeerClassLoadingTest.class); + suite.addTestSuite(ClientReconnectContinuousQueryTest.class); return suite; } http://git-wip-us.apache.org/repos/asf/ignite/blob/27fbb7a7/modules/yardstick/config/benchmark-multicast.properties ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/ignite/blob/27fbb7a7/modules/yardstick/config/test-max-int-values-offheap.properties ---------------------------------------------------------------------- diff --cc modules/yardstick/config/test-max-int-values-offheap.properties index 838986d,fb501d7..834be56 --- a/modules/yardstick/config/test-max-int-values-offheap.properties +++ b/modules/yardstick/config/test-max-int-values-offheap.properties @@@ -22,13 -22,13 +22,13 @@@ # Uncomment to enable concurrent garbage collection (GC) if you encounter long GC pauses. JVM_OPTS=${JVM_OPTS}" \ - -Xms8g \ - -Xmx8g \ - -Xloggc:./gc${now0}.log \ - -XX:+PrintGCDetails \ - -verbose:gc \ - -XX:+UseParNewGC \ - -XX:+UseConcMarkSweepGC \ - -Xms8g \ - -Xmx8g \ - -Xloggc:./gc${now0}.log \ - -XX:+PrintGCDetails \ - -verbose:gc \ - -XX:+UseParNewGC \ - -XX:+UseConcMarkSweepGC \ ++ -Xms8g \ ++ -Xmx8g \ ++ -Xloggc:./gc${now0}.log \ ++ -XX:+PrintGCDetails \ ++ -verbose:gc \ ++ -XX:+UseParNewGC \ ++ -XX:+UseConcMarkSweepGC \ " # List of default probes.
