You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@ignite.apache.org by ak...@apache.org on 2016/02/29 15:27:16 UTC

[1/6] ignite git commit: IGNITE-843 Fixed speed of very large data (more than 300 domains and caches) + lazy init.

Repository: ignite
Updated Branches:
  refs/heads/ignite-2612 59530acbb -> 45fa19ac9


IGNITE-843 Fixed speed of very large data (more than 300 domains and caches) + lazy init.


Project: http://git-wip-us.apache.org/repos/asf/ignite/repo
Commit: http://git-wip-us.apache.org/repos/asf/ignite/commit/cb1d79dd
Tree: http://git-wip-us.apache.org/repos/asf/ignite/tree/cb1d79dd
Diff: http://git-wip-us.apache.org/repos/asf/ignite/diff/cb1d79dd

Branch: refs/heads/ignite-2612
Commit: cb1d79dd52bfbc0153781c4d882d9b4aa33105e3
Parents: aaf139b
Author: Dmitriyff <dm...@gmail.com>
Authored: Fri Feb 26 17:30:29 2016 +0700
Committer: Alexey Kuznetsov <ak...@apache.org>
Committed: Fri Feb 26 17:30:29 2016 +0700

----------------------------------------------------------------------
 .../ui-ace-java/ui-ace-java.directive.js        |  4 ++-
 .../ui-ace-xml/ui-ace-xml.directive.js          |  4 ++-
 .../configuration/summary/summary.controller.js | 11 ++++++
 .../main/js/views/configuration/summary.jade    | 38 ++++++--------------
 4 files changed, 27 insertions(+), 30 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/ignite/blob/cb1d79dd/modules/control-center-web/src/main/js/app/directives/ui-ace-java/ui-ace-java.directive.js
----------------------------------------------------------------------
diff --git a/modules/control-center-web/src/main/js/app/directives/ui-ace-java/ui-ace-java.directive.js b/modules/control-center-web/src/main/js/app/directives/ui-ace-java/ui-ace-java.directive.js
index 072ac8f..2ba0b15 100644
--- a/modules/control-center-web/src/main/js/app/directives/ui-ace-java/ui-ace-java.directive.js
+++ b/modules/control-center-web/src/main/js/app/directives/ui-ace-java/ui-ace-java.directive.js
@@ -101,8 +101,10 @@ export default ['igniteUiAceJava', ['GeneratorJava', (generator) => {
             scope.$watch('cfg', (data) => ctrl.data = render(data), true);
         }
 
+        const noDeepWatch = !(typeof attrs.noDeepWatch !== 'undefined');
+
         // Setup watchers.
-        scope.$watch('cluster', (data) => ctrl.data = render(data), true);
+        scope.$watch('cluster', (data) => ctrl.data = render(data), noDeepWatch);
     };
 
     return {

http://git-wip-us.apache.org/repos/asf/ignite/blob/cb1d79dd/modules/control-center-web/src/main/js/app/directives/ui-ace-xml/ui-ace-xml.directive.js
----------------------------------------------------------------------
diff --git a/modules/control-center-web/src/main/js/app/directives/ui-ace-xml/ui-ace-xml.directive.js b/modules/control-center-web/src/main/js/app/directives/ui-ace-xml/ui-ace-xml.directive.js
index 6b6e1df..e421135 100644
--- a/modules/control-center-web/src/main/js/app/directives/ui-ace-xml/ui-ace-xml.directive.js
+++ b/modules/control-center-web/src/main/js/app/directives/ui-ace-xml/ui-ace-xml.directive.js
@@ -101,8 +101,10 @@ export default ['igniteUiAceXml', ['GeneratorXml', (generator) => {
             scope.$watch('cfg', (data) => ctrl.data = render(data), true);
         }
 
+        const noDeepWatch = !(typeof attrs.noDeepWatch !== 'undefined');
+
         // Setup watchers.
-        scope.$watch('cluster', (data) => ctrl.data = render(data), true);
+        scope.$watch('cluster', (data) => ctrl.data = render(data), noDeepWatch);
     };
 
     return {

http://git-wip-us.apache.org/repos/asf/ignite/blob/cb1d79dd/modules/control-center-web/src/main/js/app/modules/states/configuration/summary/summary.controller.js
----------------------------------------------------------------------
diff --git a/modules/control-center-web/src/main/js/app/modules/states/configuration/summary/summary.controller.js b/modules/control-center-web/src/main/js/app/modules/states/configuration/summary/summary.controller.js
index 48d7b83..068a03c 100644
--- a/modules/control-center-web/src/main/js/app/modules/states/configuration/summary/summary.controller.js
+++ b/modules/control-center-web/src/main/js/app/modules/states/configuration/summary/summary.controller.js
@@ -15,6 +15,7 @@
  * limitations under the License.
  */
 
+import _ from 'lodash';
 import JSZip from 'jszip';
 
 export default [
@@ -26,6 +27,14 @@ export default [
 
         Resource.read().then(({clusters}) => {
             $scope.clusters = clusters;
+            $scope.clustersMap = {};
+            $scope.clustersView = _.map(clusters, (item) => {
+                const { _id, name } = item;
+
+                $scope.clustersMap[_id] = item;
+
+                return { _id, name };
+            });
 
             $loading.finish('loading');
 
@@ -186,6 +195,8 @@ export default [
             if (!cluster)
                 return;
 
+            cluster = $scope.clustersMap[cluster._id];
+
             ctrl.cluster = cluster;
 
             $scope.cluster = cluster;

http://git-wip-us.apache.org/repos/asf/ignite/blob/cb1d79dd/modules/control-center-web/src/main/js/views/configuration/summary.jade
----------------------------------------------------------------------
diff --git a/modules/control-center-web/src/main/js/views/configuration/summary.jade b/modules/control-center-web/src/main/js/views/configuration/summary.jade
index 176c483..538f7d9 100644
--- a/modules/control-center-web/src/main/js/views/configuration/summary.jade
+++ b/modules/control-center-web/src/main/js/views/configuration/summary.jade
@@ -33,26 +33,8 @@ mixin ignite-form-field-tooltip(message)
             | You have no clusters configured. Please configure them #[a(ui-sref='base.configuration.clusters') here].
 
         div(ng-show='clusters && clusters.length > 0')
-            .padding-bottom-dflt
-                table.links
-                    thead
-                        tr
-                            th
-                                lable.labelHeader.labelFormField clusters:
-                                .col-sm-3.pull-right(style='padding: 0')
-                                    input.form-control(type='text' ng-model='clusterName' placeholder='Filter clusters...' value='')
-                    tbody
-                        tr
-                            td
-                                .scrollable-y(ng-show='(clusters | byName:clusterName).length > 0' style='max-height: 200px')
-                                    table
-                                        tbody
-                                            tr(ng-repeat='row in (clusters | byName:clusterName) track by row._id' ignite-bs-affix-update)
-                                                td
-                                                    a(ng-class='{active: row._id == selectedItem._id}' on-click-focus='clusterName' ng-click='selectItem(row)') {{$index + 1}}) {{row.name}}
-                                label.placeholder(ng-show='(clusters | byName:clusterName).length == 0') No clusters found
-
-            div(ng-show='selectedItem && (clusters | byName:clusterName).length')
+            +main-table('clusters', 'clustersView', 'clusterName', 'selectItem(row)', '{{$index + 1}}) {{row.name}}', 'name')
+            div(ng-show='selectedItem && tableVisibleRow(displayedRows, selectedItem)')
                 .padding-top-dflt(bs-affix)
                     button.btn.btn-primary(id='download' ng-click='downloadConfiguration()' bs-tooltip='' data-title='Download project' data-placement='bottom') Download project
                     .btn.btn-primary(bs-tooltip='' data-title='Preview generated project structure' data-placement='bottom')
@@ -72,13 +54,13 @@ mixin ignite-form-field-tooltip(message)
                             ignite-ui-ace-tabs.summary-tabs
                                 div(bs-tabs data-bs-active-pane="tabsServer.activeTab" template='configuration/summary-tabs.html')
                                     div(bs-pane title='XML')
-                                        ignite-ui-ace-xml(ng-if='tabsServer.activeTab == 0 || tabsServer.init[0]' ng-init='tabsServer.init[0] = true' data-cluster='cluster')
+                                        ignite-ui-ace-xml(ng-if='tabsServer.activeTab == 0 || tabsServer.init[0]' ng-init='tabsServer.init[0] = true' data-cluster='cluster' data-no-deep-watch)
                                     div(bs-pane title='Java')
-                                        ignite-ui-ace-java(ng-if='tabsServer.activeTab == 1 || tabsServer.init[1]' ng-init='tabsServer.init[1] = true' data-cluster='cluster')
+                                        ignite-ui-ace-java(ng-if='tabsServer.activeTab == 1 || tabsServer.init[1]' ng-init='tabsServer.init[1] = true' data-cluster='cluster' data-no-deep-watch)
                                     div(bs-pane title='POM')
-                                        ignite-ui-ace-pom(ng-if='tabsServer.activeTab == 2 || tabsServer.init[2]' ng-init='tabsServer.init[2] = true' data-cluster='cluster')
+                                        ignite-ui-ace-pom(ng-if='tabsServer.activeTab == 2 || tabsServer.init[2]' ng-init='tabsServer.init[2] = true' data-cluster='cluster' data-no-deep-watch)
                                     div(bs-pane title='Dockerfile')
-                                        ignite-ui-ace-docker(ng-if='tabsServer.activeTab == 3 || tabsServer.init[3]' ng-init='tabsServer.init[3] = true' data-cluster='cluster' ng-model='ctrl.data.docker')
+                                        ignite-ui-ace-docker(ng-if='tabsServer.activeTab == 3 || tabsServer.init[3]' ng-init='tabsServer.init[3] = true' data-cluster='cluster'  data-no-deep-watch ng-model='ctrl.data.docker')
 
                     .panel.panel-default
                         .panel-heading(role='tab' bs-collapse-toggle)
@@ -152,10 +134,10 @@ mixin ignite-form-field-tooltip(message)
                             .summary-tabs(ignite-ui-ace-tabs)
                                 div(bs-tabs data-bs-active-pane="tabsClient.activeTab" template='configuration/summary-tabs.html')
                                     div(bs-pane title='XML')
-                                        ignite-ui-ace-xml(ng-if='tabsClient.activeTab == 0 || tabsClient.init[0]' ng-init='tabsClient.init[0] = true' data-cluster='cluster' data-cluster-cfg='#{nearCfg}')
+                                        ignite-ui-ace-xml(ng-if='tabsClient.activeTab == 0 || tabsClient.init[0]' ng-init='tabsClient.init[0] = true' data-cluster='cluster' data-no-deep-watch data-cluster-cfg='#{nearCfg}')
                                     div(bs-pane title='Java')
-                                        ignite-ui-ace-java(ng-if='tabsClient.activeTab == 1 || tabsClient.init[1]' ng-init='tabsClient.init[1] = true' data-cluster='cluster' data-cluster-cfg='#{nearCfg}')
+                                        ignite-ui-ace-java(ng-if='tabsClient.activeTab == 1 || tabsClient.init[1]' ng-init='tabsClient.init[1] = true' data-cluster='cluster' data-no-deep-watch data-cluster-cfg='#{nearCfg}')
                                     div(bs-pane title='POM')
-                                        ignite-ui-ace-pom(ng-if='tabsClient.activeTab == 2 || tabsClient.init[2]' ng-init='tabsClient.init[2] = true' data-cluster='cluster')
+                                        ignite-ui-ace-pom(ng-if='tabsClient.activeTab == 2 || tabsClient.init[2]' ng-init='tabsClient.init[2] = true' data-cluster='cluster' data-no-deep-watch)
                                     div(bs-pane title='POJO' ng-if='cluster | hasPojo')
-                                        ignite-ui-ace-pojos(ng-if='tabsClient.activeTab == 3 || tabsClient.init[3]' ng-init='tabsClient.init[3] = true' data-cluster='cluster' ng-model='ctrl.data.pojos')
+                                        ignite-ui-ace-pojos(ng-if='tabsClient.activeTab == 3 || tabsClient.init[3]' ng-init='tabsClient.init[3] = true' data-cluster='cluster' data-no-deep-watch ng-model='ctrl.data.pojos')


[3/6] ignite git commit: IGNITE-2713 Added resource folder to project structure.

Posted by ak...@apache.org.
IGNITE-2713 Added resource folder to project structure.


Project: http://git-wip-us.apache.org/repos/asf/ignite/repo
Commit: http://git-wip-us.apache.org/repos/asf/ignite/commit/f045f538
Tree: http://git-wip-us.apache.org/repos/asf/ignite/tree/f045f538
Diff: http://git-wip-us.apache.org/repos/asf/ignite/diff/f045f538

Branch: refs/heads/ignite-2612
Commit: f045f5386f9dc873a67cf8587921172a78c55b85
Parents: cb1d79d
Author: vsisko <vs...@gridgain.com>
Authored: Mon Feb 29 12:04:30 2016 +0700
Committer: AKuznetsov <ak...@gridgain.com>
Committed: Mon Feb 29 12:04:30 2016 +0700

----------------------------------------------------------------------
 .../configuration/summary/summary.controller.js | 26 ++++++++++++++------
 1 file changed, 19 insertions(+), 7 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/ignite/blob/f045f538/modules/control-center-web/src/main/js/app/modules/states/configuration/summary/summary.controller.js
----------------------------------------------------------------------
diff --git a/modules/control-center-web/src/main/js/app/modules/states/configuration/summary/summary.controller.js b/modules/control-center-web/src/main/js/app/modules/states/configuration/summary/summary.controller.js
index 068a03c..d4e3e98 100644
--- a/modules/control-center-web/src/main/js/app/modules/states/configuration/summary/summary.controller.js
+++ b/modules/control-center-web/src/main/js/app/modules/states/configuration/summary/summary.controller.js
@@ -90,6 +90,14 @@ export default [
             ]
         };
 
+        const resourcesFolder = {
+            type: 'folder',
+            name: 'resources',
+            children: [
+                { type: 'file', name: 'secret.properties' }
+            ]
+        };
+
         const javaFolder = {
             type: 'folder',
             name: 'java',
@@ -109,6 +117,12 @@ export default [
 
         const srvCfg = { type: 'file', name: 'server.xml' };
 
+        const mainFolder = {
+            type: 'folder',
+            name: 'main',
+            children: [javaFolder]
+        };
+
         const projectStructureRoot = {
             type: 'folder',
             name: 'project.zip',
@@ -128,13 +142,7 @@ export default [
                 {
                     type: 'folder',
                     name: 'src',
-                    children: [
-                        {
-                            type: 'folder',
-                            name: 'main',
-                            children: [javaFolder]
-                        }
-                    ]
+                    children: [mainFolder]
                 },
                 { type: 'file', name: '.dockerignore' },
                 { type: 'file', name: 'Dockerfile' },
@@ -205,8 +213,12 @@ export default [
 
             sessionStorage.summarySelectedId = $scope.clusters.indexOf(cluster);
 
+            mainFolder.children = [javaFolder];
             javaFolder.children = [javaConfigFolder, javaStartupFolder];
 
+            if ($generatorCommon.secretPropertiesNeeded(cluster))
+                mainFolder.children.push(resourcesFolder);
+
             if ($generatorCommon.dataForExampleConfigured(cluster))
                 javaFolder.children.push(exampleFolder);
 


[2/6] ignite git commit: Merge branch 'ignite-843-rc2' of https://git-wip-us.apache.org/repos/asf/ignite into ignite-2612

Posted by ak...@apache.org.
Merge branch 'ignite-843-rc2' of https://git-wip-us.apache.org/repos/asf/ignite into ignite-2612


Project: http://git-wip-us.apache.org/repos/asf/ignite/repo
Commit: http://git-wip-us.apache.org/repos/asf/ignite/commit/3b84bd03
Tree: http://git-wip-us.apache.org/repos/asf/ignite/tree/3b84bd03
Diff: http://git-wip-us.apache.org/repos/asf/ignite/diff/3b84bd03

Branch: refs/heads/ignite-2612
Commit: 3b84bd030e037677513d8135f623fd5e033468e6
Parents: 59530ac cb1d79d
Author: AKuznetsov <ak...@gridgain.com>
Authored: Mon Feb 29 10:17:32 2016 +0700
Committer: AKuznetsov <ak...@gridgain.com>
Committed: Mon Feb 29 10:17:32 2016 +0700

----------------------------------------------------------------------
 .../ui-ace-java/ui-ace-java.directive.js        |  4 ++-
 .../ui-ace-xml/ui-ace-xml.directive.js          |  4 ++-
 .../configuration/summary/summary.controller.js | 11 ++++++
 .../main/js/views/configuration/summary.jade    | 38 ++++++--------------
 4 files changed, 27 insertions(+), 30 deletions(-)
----------------------------------------------------------------------



[6/6] ignite git commit: Merge branch 'ignite-843-rc2' of https://git-wip-us.apache.org/repos/asf/ignite into ignite-2612

Posted by ak...@apache.org.
Merge branch 'ignite-843-rc2' of https://git-wip-us.apache.org/repos/asf/ignite into ignite-2612


Project: http://git-wip-us.apache.org/repos/asf/ignite/repo
Commit: http://git-wip-us.apache.org/repos/asf/ignite/commit/45fa19ac
Tree: http://git-wip-us.apache.org/repos/asf/ignite/tree/45fa19ac
Diff: http://git-wip-us.apache.org/repos/asf/ignite/diff/45fa19ac

Branch: refs/heads/ignite-2612
Commit: 45fa19ac9138117c9d440300bcd2a994c04d9868
Parents: acc99a7 440aa00
Author: AKuznetsov <ak...@gridgain.com>
Authored: Mon Feb 29 21:26:50 2016 +0700
Committer: AKuznetsov <ak...@gridgain.com>
Committed: Mon Feb 29 21:26:50 2016 +0700

----------------------------------------------------------------------
 .../configuration/summary/summary.controller.js | 35 ++++++++++++++++----
 1 file changed, 28 insertions(+), 7 deletions(-)
----------------------------------------------------------------------



[5/6] ignite git commit: IGNITE-2612 WIP Rework to Angular directives.

Posted by ak...@apache.org.
IGNITE-2612 WIP Rework to Angular directives.


Project: http://git-wip-us.apache.org/repos/asf/ignite/repo
Commit: http://git-wip-us.apache.org/repos/asf/ignite/commit/acc99a7a
Tree: http://git-wip-us.apache.org/repos/asf/ignite/tree/acc99a7a
Diff: http://git-wip-us.apache.org/repos/asf/ignite/diff/acc99a7a

Branch: refs/heads/ignite-2612
Commit: acc99a7a4c40369a9aad6b045a27d6b2d3ac8d82
Parents: 3b84bd0
Author: AKuznetsov <ak...@gridgain.com>
Authored: Mon Feb 29 10:56:13 2016 +0700
Committer: AKuznetsov <ak...@gridgain.com>
Committed: Mon Feb 29 21:26:03 2016 +0700

----------------------------------------------------------------------
 .../control-center-web/src/main/js/.eslintrc    |   2 +-
 .../configuration/caches/concurrency.jade       |  89 ++++++-----
 .../states/configuration/caches/memory.jade     |  21 +++
 .../states/configuration/caches/query.jade      |   2 +
 .../states/configuration/caches/rebalance.jade  | 153 ++++++++++++-------
 .../configuration/caches/server-near-cache.jade |   6 +-
 .../states/configuration/caches/statistics.jade |  75 +++------
 .../states/configuration/caches/store.jade      |  71 ++-------
 8 files changed, 201 insertions(+), 218 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/ignite/blob/acc99a7a/modules/control-center-web/src/main/js/.eslintrc
----------------------------------------------------------------------
diff --git a/modules/control-center-web/src/main/js/.eslintrc b/modules/control-center-web/src/main/js/.eslintrc
index 0341ed7..5b1d475 100644
--- a/modules/control-center-web/src/main/js/.eslintrc
+++ b/modules/control-center-web/src/main/js/.eslintrc
@@ -57,7 +57,7 @@ rules:
     generator-star-spacing: 0
     guard-for-in: 1
     handle-callback-err: 0
-    id-length: [2, {"min": 1, "max": 50}]
+    id-length: [2, {"min": 1, "max": 60}]
     indent: [2, 4, {"SwitchCase": 1}]
     key-spacing: [2, { "beforeColon": false, "afterColon": true }]
     lines-around-comment: 0

http://git-wip-us.apache.org/repos/asf/ignite/blob/acc99a7a/modules/control-center-web/src/main/js/app/modules/states/configuration/caches/concurrency.jade
----------------------------------------------------------------------
diff --git a/modules/control-center-web/src/main/js/app/modules/states/configuration/caches/concurrency.jade b/modules/control-center-web/src/main/js/app/modules/states/configuration/caches/concurrency.jade
index f1a58d1..4c437d3 100644
--- a/modules/control-center-web/src/main/js/app/modules/states/configuration/caches/concurrency.jade
+++ b/modules/control-center-web/src/main/js/app/modules/states/configuration/caches/concurrency.jade
@@ -20,6 +20,8 @@ form.panel.panel-default(name='concurrency' novalidate)
     .panel-heading(bs-collapse-toggle)
         ignite-form-panel-chevron
         label Concurrency control
+        ignite-form-field-tooltip.tipLabel
+            | Cache concurrent usage settings
         ignite-form-revert
     .panel-collapse(role='tabpanel' bs-collapse-target id='concurrency')
         .panel-body
@@ -27,65 +29,68 @@ form.panel.panel-default(name='concurrency' novalidate)
                 .settings-row
                     ignite-form-field
                         ignite-form-field-label
-                            | Name:
+                            | Max async operations:
                         ignite-form-field-tooltip
-                            | Cache name
-                        ignite-form-field-input-text(
-                            data-id='cacheName'
-                            data-name='cacheName'
-                            data-ng-model='#{model}.name'
-                            data-ng-required='true'
-                            data-placeholder='Input name'
+                            | Maximum number of allowed concurrent asynchronous operations#[br]
+                            | If 0 then number of concurrent asynchronous operations is unlimited
+                        ignite-form-field-input-number(
+                            data-id='maxConcurrentAsyncOperations'
+                            data-name='maxConcurrentAsyncOperations'
+                            data-ng-model='#{model}.maxConcurrentAsyncOperations'
+                            data-placeholder='500'
+                            data-min='0'
                         )
                 .settings-row
                     ignite-form-field
                         ignite-form-field-label
-                            | Clusters: #[a(ui-sref='base.configuration.clusters({id: #{model}._id})') (add)]
+                            | Default lock timeout:
                         ignite-form-field-tooltip
-                            | Associate clusters with the current cache
-                        ignite-form-field-dropdown(
-                            data-id='clusters'
-                            data-name='clusters'
-                            data-options='clusters'
-                            data-multiple='true'
-                            data-ng-model='#{model}.clusters'
-                            data-ng-disabled='!clusters.length'
-                            data-placeholder='{{ clusters.length ? "Choose clusters": "No clusters configured" }}'
+                            | Default lock acquisition timeout
+                            | If 0 then lock acquisition will never timeout
+                        ignite-form-field-input-number(
+                            data-id='defaultLockTimeout'
+                            data-name='defaultLockTimeout'
+                            data-ng-model='#{model}.defaultLockTimeout'
+                            data-placeholder='0'
+                            data-min='0'
                         )
-                .settings-row
+                .settings-row(ng-hide='#{model}.atomicityMode === "TRANSACTIONAL"')
                     ignite-form-field
                         ignite-form-field-label
-                            | Domain models: #[a(ui-sref='base.configuration.domains({id: #{model}._id})') (add)]
+                            | Entry versioning:
                         ignite-form-field-tooltip
-                            | Associate clusters with the current cache
+                            | Write ordering mode determines which node assigns the write version, sender or the primary node:
+                            ul: li CLOCK - in this mode write versions are assigned on a sender node which generally leads to better performance
+                                li PRIMARY - in this mode version is assigned only on primary node. This means that sender will only send write request to primary node, which in turn will assign write version and forward it to backups
                         ignite-form-field-dropdown(
-                            data-id='domains'
-                            data-name='domains'
-                            data-options='domains'
-                            data-multiple='true'
-                            data-ng-model='#{model}.domains'
-                            data-ng-disabled='!domains.length'
-                            data-placeholder='{{ domains.length ? "Choose domain models": "No domain models configured" }}'
+                            data-id='atomicWriteOrderMode'
+                            data-name='atomicWriteOrderMode'
+                            data-options='[\
+                                {value: "CLOCK", label: "CLOCK"},\
+                                {value: "PRIMARY", label: "PRIMARY"}\
+                            ]'
+                            data-ng-model='#{model}.atomicWriteOrderMode'
+                            data-placeholder='Choose versioning'
                         )
                 .settings-row
                     ignite-form-field
                         ignite-form-field-label
-                            | Cache mode:
+                            | Write synchronization mode:
                         ignite-form-field-tooltip
-                            | Cache modes:
-                            ul: li Partitioned - in this mode the overall key set will be divided into partitions and all partitions will be split equally between participating nodes
-                                li Replicated - in this mode all the keys are distributed to all participating nodes
-                                li Local - in this mode caches residing on different grid nodes will not know about each other
+                            | Write synchronization mode:
+                            ul: li FULL_SYNC - Ignite will wait for write or commit replies from all nodes
+                                li FULL_ASYNC - Ignite will not wait for write or commit responses from participating nodes
+                                li PRIMARY_SYNC - Makes sense for PARTITIONED mode. Ignite will wait for write or commit to complete on primary node
                         ignite-form-field-dropdown(
-                        data-id='cacheMode'
-                        data-name='cacheMode'
-                        data-options='[\
-                            {value: "LOCAL", label: "LOCAL"},\
-                            {value: "REPLICATED", label: "REPLICATED"},\
-                            {value: "PARTITIONED", label: "PARTITIONED"}\
-                        ]'
-                        data-ng-model='#{model}.cacheMode'
-                        data-placeholder='PARTITIONED'
+                            data-id='writeSynchronizationMode'
+                            data-name='writeSynchronizationMode'
+                            data-options='[\
+                                {value: "FULL_SYNC", label: "FULL_SYNC"},\
+                                {value: "FULL_ASYNC", label: "FULL_ASYNC"},\
+                                {value: "PRIMARY_SYNC", label: "PRIMARY_SYNC"}\
+                            ]'
+                            data-ng-model='#{model}.writeSynchronizationMode'
+                            data-placeholder='PRIMARY_SYNC'
                         )
             ignite-ui-ace.col-sm-6
                 .preview-panel(ng-init='mode = false')

http://git-wip-us.apache.org/repos/asf/ignite/blob/acc99a7a/modules/control-center-web/src/main/js/app/modules/states/configuration/caches/memory.jade
----------------------------------------------------------------------
diff --git a/modules/control-center-web/src/main/js/app/modules/states/configuration/caches/memory.jade b/modules/control-center-web/src/main/js/app/modules/states/configuration/caches/memory.jade
index f7b4473..533a6ad 100644
--- a/modules/control-center-web/src/main/js/app/modules/states/configuration/caches/memory.jade
+++ b/modules/control-center-web/src/main/js/app/modules/states/configuration/caches/memory.jade
@@ -72,6 +72,27 @@ form.panel.panel-default(name='memory' novalidate)
                 .settings-row
                     ignite-form-field
                         ignite-form-field-label
+                            | Eviction policy:
+                        ignite-form-field-tooltip
+                            | Optional cache eviction policy#[br]
+                            | Must be set for entries to be evicted from on-heap to off-heap or swap
+                        ignite-form-field-dropdown(
+                            data-id='kind'
+                            data-name='kind'
+                            data-options='[\
+                                {value: "LRU", label: "LRU"},\
+                                {value: "FIFO", label: "FIFO"},\
+                                {value: "SORTED", label: "Sorted"},\
+                                {value: undefined, label: "Not set"}\
+                            ]'
+                            data-ng-model='#{model}.evictionPolicy.kind'
+                        )
+                    span(ng-if='#{model}.evictionPolicy.kind')
+                        a.customize(ng-show='__.expanded' ng-click='__.expanded = false') Hide settings
+                        a.customize(ng-hide='__.expanded' ng-click='__.expanded = true') Show settings
+                .settings-row
+                    ignite-form-field
+                        ignite-form-field-label
                             | Start size:
                         ignite-form-field-tooltip
                             | Initial cache size which will be used to pre-create internal hash table after start

http://git-wip-us.apache.org/repos/asf/ignite/blob/acc99a7a/modules/control-center-web/src/main/js/app/modules/states/configuration/caches/query.jade
----------------------------------------------------------------------
diff --git a/modules/control-center-web/src/main/js/app/modules/states/configuration/caches/query.jade b/modules/control-center-web/src/main/js/app/modules/states/configuration/caches/query.jade
index 943fe48..13bb53c 100644
--- a/modules/control-center-web/src/main/js/app/modules/states/configuration/caches/query.jade
+++ b/modules/control-center-web/src/main/js/app/modules/states/configuration/caches/query.jade
@@ -57,6 +57,8 @@ form.panel.panel-default(name='query' novalidate)
     .panel-heading(bs-collapse-toggle)
         ignite-form-panel-chevron
         label Queries & Indexing
+        ignite-form-field-tooltip.tipLabel
+            | Cache queries settings
         ignite-form-revert
     .panel-collapse(role='tabpanel' bs-collapse-target id='query')
         .panel-body

http://git-wip-us.apache.org/repos/asf/ignite/blob/acc99a7a/modules/control-center-web/src/main/js/app/modules/states/configuration/caches/rebalance.jade
----------------------------------------------------------------------
diff --git a/modules/control-center-web/src/main/js/app/modules/states/configuration/caches/rebalance.jade b/modules/control-center-web/src/main/js/app/modules/states/configuration/caches/rebalance.jade
index 9016235..d6ad8f1 100644
--- a/modules/control-center-web/src/main/js/app/modules/states/configuration/caches/rebalance.jade
+++ b/modules/control-center-web/src/main/js/app/modules/states/configuration/caches/rebalance.jade
@@ -16,10 +16,12 @@
 
 - var model = 'backupItem'
 
-form.panel.panel-default(name='rebalance' novalidate)
+form.panel.panel-default(name='rebalance' novalidate ng-hide='#{model}.cacheMode == "LOCAL"')
     .panel-heading(bs-collapse-toggle)
         ignite-form-panel-chevron
         label Rebalance
+        ignite-form-field-tooltip.tipLabel
+            | Cache rebalance settings
         ignite-form-revert
     .panel-collapse(role='tabpanel' bs-collapse-target id='rebalance')
         .panel-body
@@ -27,66 +29,101 @@ form.panel.panel-default(name='rebalance' novalidate)
                 .settings-row
                     ignite-form-field
                         ignite-form-field-label
-                            | Name:
+                            | Mode:
                         ignite-form-field-tooltip
-                            | Cache name
-                        ignite-form-field-input-text(
-                            data-id='cacheName'
-                            data-name='cacheName'
-                            data-ng-model='#{model}.name'
-                            data-ng-required='true'
-                            data-placeholder='Input name'
-                        )
-                .settings-row
-                    ignite-form-field
-                        ignite-form-field-label
-                            | Clusters: #[a(ui-sref='base.configuration.clusters({id: #{model}._id})') (add)]
-                        ignite-form-field-tooltip
-                            | Associate clusters with the current cache
-                        ignite-form-field-dropdown(
-                            data-id='clusters'
-                            data-name='clusters'
-                            data-options='clusters'
-                            data-multiple='true'
-                            data-ng-model='#{model}.clusters'
-                            data-ng-disabled='!clusters.length'
-                            data-placeholder='{{ clusters.length ? "Choose clusters": "No clusters configured" }}'
-                        )
-                .settings-row
-                    ignite-form-field
-                        ignite-form-field-label
-                            | Domain models: #[a(ui-sref='base.configuration.domains({id: #{model}._id})') (add)]
-                        ignite-form-field-tooltip
-                            | Associate clusters with the current cache
-                        ignite-form-field-dropdown(
-                            data-id='domains'
-                            data-name='domains'
-                            data-options='domains'
-                            data-multiple='true'
-                            data-ng-model='#{model}.domains'
-                            data-ng-disabled='!domains.length'
-                            data-placeholder='{{ domains.length ? "Choose domain models": "No domain models configured" }}'
-                        )
-                .settings-row
-                    ignite-form-field
-                        ignite-form-field-label
-                            | Cache mode:
-                        ignite-form-field-tooltip
-                            | Cache modes:
-                            ul: li Partitioned - in this mode the overall key set will be divided into partitions and all partitions will be split equally between participating nodes
-                                li Replicated - in this mode all the keys are distributed to all participating nodes
-                                li Local - in this mode caches residing on different grid nodes will not know about each other
+                            | Rebalance modes:
+                            ul: li Synchronous - in this mode distributed caches will not start until all necessary data is loaded from other available grid nodes
+                                li Asynchronous - in this mode distributed caches will start immediately and will load all necessary data from other available grid nodes in the background
+                                li None - in this mode no rebalancing will take place which means that caches will be either loaded on demand from persistent store whenever data is accessed, or will be populated explicitly
                         ignite-form-field-dropdown(
-                        data-id='cacheMode'
-                        data-name='cacheMode'
-                        data-options='[\
-                            {value: "LOCAL", label: "LOCAL"},\
-                            {value: "REPLICATED", label: "REPLICATED"},\
-                            {value: "PARTITIONED", label: "PARTITIONED"}\
-                        ]'
-                        data-ng-model='#{model}.cacheMode'
-                        data-placeholder='PARTITIONED'
+                            data-id='rebalanceModes'
+                            data-name='rebalanceModes'
+                            data-options='[\
+                                {value: "SYNC", label: "SYNC"},\
+                                {value: "ASYNC", label: "ASYNC"},\
+                                {value: "NONE", label: "NONE"}\
+                            ]'
+                            data-ng-model='#{model}.rebalanceModes'
+                            data-placeholder='ASYNC'
                         )
+                    .settings-row
+                        ignite-form-field
+                            ignite-form-field-label
+                                | Batch size:
+                            ignite-form-field-tooltip
+                                | Size (in bytes) to be loaded within a single rebalance message#[br]
+                                | Rebalancing algorithm will split total data set on every node into multiple batches prior to sending data
+                            ignite-form-field-input-number(
+                                data-id='rebalanceBatchSize'
+                                data-name='rebalanceBatchSize'
+                                data-ng-model='#{model}.rebalanceBatchSize'
+                                data-placeholder='512 * 1024'
+                                data-min='1'
+                            )
+                    .settings-row
+                        ignite-form-field
+                            ignite-form-field-label
+                                | Batches prefetch count:
+                            ignite-form-field-tooltip
+                                | Number of batches generated by supply node at rebalancing start
+                            ignite-form-field-input-number(
+                                data-id='rebalanceBatchesPrefetchCount'
+                                data-name='rebalanceBatchesPrefetchCount'
+                                data-ng-model='#{model}.rebalanceBatchesPrefetchCount'
+                                data-placeholder='2'
+                                data-min='1'
+                            )
+                    .settings-row
+                        ignite-form-field
+                            ignite-form-field-label
+                                | Order:
+                            ignite-form-field-tooltip
+                                | If cache rebalance order is positive, rebalancing for this cache will be started only when rebalancing for all caches with smaller rebalance order (except caches with rebalance order 0) will be completed
+                            ignite-form-field-input-number(
+                                data-id='rebalanceOrder'
+                                data-name='rebalanceOrder'
+                                data-ng-model='#{model}.rebalanceOrder'
+                                data-placeholder='0'
+                            )
+                    .settings-row
+                        ignite-form-field
+                            ignite-form-field-label
+                                | Delay:
+                            ignite-form-field-tooltip
+                                | Delay in milliseconds upon a node joining or leaving topology (or crash) after which rebalancing should be started automatically
+                            ignite-form-field-input-number(
+                                data-id='rebalanceDelay'
+                                data-name='rebalanceDelay'
+                                data-ng-model='#{model}.rebalanceDelay'
+                                data-placeholder='0'
+                                data-min='0'
+                            )
+                    .settings-row
+                        ignite-form-field
+                            ignite-form-field-label
+                                | Timeout:
+                            ignite-form-field-tooltip
+                                | Rebalance timeout in milliseconds
+                            ignite-form-field-input-number(
+                                data-id='rebalanceTimeout'
+                                data-name='rebalanceTimeout'
+                                data-ng-model='#{model}.rebalanceTimeout'
+                                data-placeholder='10000'
+                                data-min='0'
+                            )
+                    .settings-row
+                        ignite-form-field
+                            ignite-form-field-label
+                                | Throttle:
+                            ignite-form-field-tooltip
+                                | Time in milliseconds to wait between rebalance messages to avoid overloading of CPU or network
+                            ignite-form-field-input-number(
+                                data-id='rebalanceThrottle'
+                                data-name='rebalanceThrottle'
+                                data-ng-model='#{model}.rebalanceThrottle'
+                                data-placeholder='0'
+                                data-min='0'
+                            )
             ignite-ui-ace.col-sm-6
                 .preview-panel(ng-init='mode = false')
                     .preview-legend

http://git-wip-us.apache.org/repos/asf/ignite/blob/acc99a7a/modules/control-center-web/src/main/js/app/modules/states/configuration/caches/server-near-cache.jade
----------------------------------------------------------------------
diff --git a/modules/control-center-web/src/main/js/app/modules/states/configuration/caches/server-near-cache.jade b/modules/control-center-web/src/main/js/app/modules/states/configuration/caches/server-near-cache.jade
index 2b89823..c08e4b5 100644
--- a/modules/control-center-web/src/main/js/app/modules/states/configuration/caches/server-near-cache.jade
+++ b/modules/control-center-web/src/main/js/app/modules/states/configuration/caches/server-near-cache.jade
@@ -19,7 +19,11 @@
 form.panel.panel-default(name='server-near-cache' novalidate)
     .panel-heading(bs-collapse-toggle)
         ignite-form-panel-chevron
-        label Store
+        label Server near cache
+        ignite-form-field-tooltip.tipLabel
+            | Near cache settings#[br]
+            | Near cache is a small local cache that stores most recently or most frequently accessed data#[br]
+            | Should be used in case when it is impossible to send computations to remote nodes
         ignite-form-revert
     .panel-collapse(role='tabpanel' bs-collapse-target id='server-near-cache')
         .panel-body

http://git-wip-us.apache.org/repos/asf/ignite/blob/acc99a7a/modules/control-center-web/src/main/js/app/modules/states/configuration/caches/statistics.jade
----------------------------------------------------------------------
diff --git a/modules/control-center-web/src/main/js/app/modules/states/configuration/caches/statistics.jade b/modules/control-center-web/src/main/js/app/modules/states/configuration/caches/statistics.jade
index 5fddfcb..e512cbf 100644
--- a/modules/control-center-web/src/main/js/app/modules/states/configuration/caches/statistics.jade
+++ b/modules/control-center-web/src/main/js/app/modules/states/configuration/caches/statistics.jade
@@ -19,74 +19,33 @@
 form.panel.panel-default(name='store' novalidate)
     .panel-heading(bs-collapse-toggle)
         ignite-form-panel-chevron
-        label Store
+        label Statistics
+        ignite-form-field-tooltip.tipLabel
+            | Cache statistics and management settings
         ignite-form-revert
     .panel-collapse(role='tabpanel' bs-collapse-target id='store')
         .panel-body
             .col-sm-6
                 .settings-row
-                    ignite-form-field
-                        ignite-form-field-label
-                            | Name:
-                        ignite-form-field-tooltip
-                            | Cache name
-                        ignite-form-field-input-text(
-                            data-id='cacheName'
-                            data-name='cacheName'
-                            data-ng-model='#{model}.name'
-                            data-ng-required='true'
-                            data-placeholder='Input name'
+                    ignite-form-field.checkbox
+                        ignite-form-field-input-checkbox(
+                            data-id='statisticsEnabled'
+                            data-name='statisticsEnabled'
+                            data-ng-model='#{model}.statisticsEnabled'
                         )
-                .settings-row
-                    ignite-form-field
-                        ignite-form-field-label
-                            | Clusters: #[a(ui-sref='base.configuration.clusters({id: #{model}._id})') (add)]
+                        | Statistics enabled
                         ignite-form-field-tooltip
-                            | Associate clusters with the current cache
-                        ignite-form-field-dropdown(
-                            data-id='clusters'
-                            data-name='clusters'
-                            data-options='clusters'
-                            data-multiple='true'
-                            data-ng-model='#{model}.clusters'
-                            data-ng-disabled='!clusters.length'
-                            data-placeholder='{{ clusters.length ? "Choose clusters": "No clusters configured" }}'
-                        )
+                            | Flag indicating whether statistics gathering is enabled on a cache
                 .settings-row
-                    ignite-form-field
-                        ignite-form-field-label
-                            | Domain models: #[a(ui-sref='base.configuration.domains({id: #{model}._id})') (add)]
-                        ignite-form-field-tooltip
-                            | Associate clusters with the current cache
-                        ignite-form-field-dropdown(
-                            data-id='domains'
-                            data-name='domains'
-                            data-options='domains'
-                            data-multiple='true'
-                            data-ng-model='#{model}.domains'
-                            data-ng-disabled='!domains.length'
-                            data-placeholder='{{ domains.length ? "Choose domain models": "No domain models configured" }}'
+                    ignite-form-field.checkbox
+                        ignite-form-field-input-checkbox(
+                            data-id='managementEnabled'
+                            data-name='managementEnabled'
+                            data-ng-model='#{model}.managementEnabled'
                         )
-                .settings-row
-                    ignite-form-field
-                        ignite-form-field-label
-                            | Cache mode:
+                        | Management enabled
                         ignite-form-field-tooltip
-                            | Cache modes:
-                            ul: li Partitioned - in this mode the overall key set will be divided into partitions and all partitions will be split equally between participating nodes
-                                li Replicated - in this mode all the keys are distributed to all participating nodes
-                                li Local - in this mode caches residing on different grid nodes will not know about each other
-                        ignite-form-field-dropdown(
-                        data-id='cacheMode'
-                        data-name='cacheMode'
-                        data-options='[\
-                            {value: "LOCAL", label: "LOCAL"},\
-                            {value: "REPLICATED", label: "REPLICATED"},\
-                            {value: "PARTITIONED", label: "PARTITIONED"}\
-                        ]'
-                        data-ng-model='#{model}.cacheMode'
-                        data-placeholder='PARTITIONED'
-                        )
+                            | Flag indicating whether management is enabled on this cache
             ignite-ui-ace.col-sm-6
                 .preview-panel(ng-init='mode = false')
                     .preview-legend

http://git-wip-us.apache.org/repos/asf/ignite/blob/acc99a7a/modules/control-center-web/src/main/js/app/modules/states/configuration/caches/store.jade
----------------------------------------------------------------------
diff --git a/modules/control-center-web/src/main/js/app/modules/states/configuration/caches/store.jade b/modules/control-center-web/src/main/js/app/modules/states/configuration/caches/store.jade
index 5fddfcb..380c108 100644
--- a/modules/control-center-web/src/main/js/app/modules/states/configuration/caches/store.jade
+++ b/modules/control-center-web/src/main/js/app/modules/states/configuration/caches/store.jade
@@ -20,73 +20,28 @@ form.panel.panel-default(name='store' novalidate)
     .panel-heading(bs-collapse-toggle)
         ignite-form-panel-chevron
         label Store
+        ignite-form-field-tooltip.tipLabel
+            | Cache store settings
         ignite-form-revert
     .panel-collapse(role='tabpanel' bs-collapse-target id='store')
         .panel-body
             .col-sm-6
                 .settings-row
-                    ignite-form-field
-                        ignite-form-field-label
-                            | Name:
-                        ignite-form-field-tooltip
-                            | Cache name
-                        ignite-form-field-input-text(
-                            data-id='cacheName'
-                            data-name='cacheName'
-                            data-ng-model='#{model}.name'
-                            data-ng-required='true'
-                            data-placeholder='Input name'
+                    ignite-form-field.checkbox
+                        ignite-form-field-input-checkbox(
+                            data-id='storeKeepBinary'
+                            data-name='storeKeepBinary'
+                            data-ng-model='#{model}.storeKeepBinary'
                         )
-                .settings-row
-                    ignite-form-field
-                        ignite-form-field-label
-                            | Clusters: #[a(ui-sref='base.configuration.clusters({id: #{model}._id})') (add)]
+                        | Keep binary in store
                         ignite-form-field-tooltip
-                            | Associate clusters with the current cache
-                        ignite-form-field-dropdown(
-                            data-id='clusters'
-                            data-name='clusters'
-                            data-options='clusters'
-                            data-multiple='true'
-                            data-ng-model='#{model}.clusters'
-                            data-ng-disabled='!clusters.length'
-                            data-placeholder='{{ clusters.length ? "Choose clusters": "No clusters configured" }}'
-                        )
+                            | Flag indicating that CacheStore implementation is working with binary objects instead of Java objects
                 .settings-row
-                    ignite-form-field
-                        ignite-form-field-label
-                            | Domain models: #[a(ui-sref='base.configuration.domains({id: #{model}._id})') (add)]
-                        ignite-form-field-tooltip
-                            | Associate clusters with the current cache
-                        ignite-form-field-dropdown(
-                            data-id='domains'
-                            data-name='domains'
-                            data-options='domains'
-                            data-multiple='true'
-                            data-ng-model='#{model}.domains'
-                            data-ng-disabled='!domains.length'
-                            data-placeholder='{{ domains.length ? "Choose domain models": "No domain models configured" }}'
-                        )
+
                 .settings-row
-                    ignite-form-field
-                        ignite-form-field-label
-                            | Cache mode:
-                        ignite-form-field-tooltip
-                            | Cache modes:
-                            ul: li Partitioned - in this mode the overall key set will be divided into partitions and all partitions will be split equally between participating nodes
-                                li Replicated - in this mode all the keys are distributed to all participating nodes
-                                li Local - in this mode caches residing on different grid nodes will not know about each other
-                        ignite-form-field-dropdown(
-                        data-id='cacheMode'
-                        data-name='cacheMode'
-                        data-options='[\
-                            {value: "LOCAL", label: "LOCAL"},\
-                            {value: "REPLICATED", label: "REPLICATED"},\
-                            {value: "PARTITIONED", label: "PARTITIONED"}\
-                        ]'
-                        data-ng-model='#{model}.cacheMode'
-                        data-placeholder='PARTITIONED'
-                        )
+
+                .settings-row
+
             ignite-ui-ace.col-sm-6
                 .preview-panel(ng-init='mode = false')
                     .preview-legend


[4/6] ignite git commit: IGNITE-843 Fixed download.

Posted by ak...@apache.org.
IGNITE-843 Fixed download.


Project: http://git-wip-us.apache.org/repos/asf/ignite/repo
Commit: http://git-wip-us.apache.org/repos/asf/ignite/commit/440aa002
Tree: http://git-wip-us.apache.org/repos/asf/ignite/tree/440aa002
Diff: http://git-wip-us.apache.org/repos/asf/ignite/diff/440aa002

Branch: refs/heads/ignite-2612
Commit: 440aa002a9b550b154c0575ae6f9a8a86e6850fb
Parents: f045f53
Author: Andrey <an...@gridgain.com>
Authored: Mon Feb 29 13:50:25 2016 +0700
Committer: Andrey <an...@gridgain.com>
Committed: Mon Feb 29 13:50:25 2016 +0700

----------------------------------------------------------------------
 .../states/configuration/summary/summary.controller.js      | 9 +++++++++
 1 file changed, 9 insertions(+)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/ignite/blob/440aa002/modules/control-center-web/src/main/js/app/modules/states/configuration/summary/summary.controller.js
----------------------------------------------------------------------
diff --git a/modules/control-center-web/src/main/js/app/modules/states/configuration/summary/summary.controller.js b/modules/control-center-web/src/main/js/app/modules/states/configuration/summary/summary.controller.js
index d4e3e98..c62dc82 100644
--- a/modules/control-center-web/src/main/js/app/modules/states/configuration/summary/summary.controller.js
+++ b/modules/control-center-web/src/main/js/app/modules/states/configuration/summary/summary.controller.js
@@ -265,6 +265,12 @@ export default [
 
             const zip = new JSZip();
 
+            if (!ctrl.data)
+                ctrl.data = {};
+
+            if (!ctrl.data.docker)
+                ctrl.data.docker = $generatorDocker.clusterDocker(cluster, 'latest');
+
             zip.file('Dockerfile', ctrl.data.docker);
             zip.file('.dockerignore', $generatorDocker.ignoreFile());
 
@@ -302,6 +308,9 @@ export default [
             zip.file('README.txt', $generatorReadme.readme().asString());
             zip.file('jdbc-drivers/README.txt', $generatorReadme.readmeJdbc().asString());
 
+            if (!ctrl.data.pojos)
+                ctrl.data.pojos = $generatorJava.pojos(cluster.caches);
+
             for (const pojo of ctrl.data.pojos) {
                 if (pojo.keyClass && JavaTypes.nonBuiltInClass(pojo.keyType))
                     zip.file(srcPath + pojo.keyType.replace(/\./g, '/') + '.java', pojo.keyClass);