You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@kylin.apache.org by li...@apache.org on 2015/01/31 12:59:55 UTC

[01/11] incubator-kylin git commit: rm deprecated code about timezone

Repository: incubator-kylin
Updated Branches:
  refs/heads/staging 6aa240a8b -> f17523389


rm deprecated code about timezone


Project: http://git-wip-us.apache.org/repos/asf/incubator-kylin/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-kylin/commit/88dff352
Tree: http://git-wip-us.apache.org/repos/asf/incubator-kylin/tree/88dff352
Diff: http://git-wip-us.apache.org/repos/asf/incubator-kylin/diff/88dff352

Branch: refs/heads/staging
Commit: 88dff3528737e2f624e2a27688f6779f63e71fc0
Parents: 6a9d6cf
Author: jiazhong <ji...@ebay.com>
Authored: Thu Jan 22 19:27:28 2015 -0800
Committer: jiazhong <ji...@ebay.com>
Committed: Thu Jan 22 19:27:28 2015 -0800

----------------------------------------------------------------------
 webapp/app/index.html              | 1 -
 webapp/app/js/controllers/admin.js | 2 +-
 webapp/app/js/controllers/page.js  | 3 +--
 3 files changed, 2 insertions(+), 4 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/incubator-kylin/blob/88dff352/webapp/app/index.html
----------------------------------------------------------------------
diff --git a/webapp/app/index.html b/webapp/app/index.html
index 124ed52..f3cf21a 100644
--- a/webapp/app/index.html
+++ b/webapp/app/index.html
@@ -93,7 +93,6 @@
 <script src="js/services/message.js"></script>
 <script src="js/services/access.js"></script>
 <script src="js/services/admin.js"></script>
-<script src="js/services/kylinProperties.js"></script>
 <script src="js/services/auth.js"></script>
 <script src="js/services/cubeDesc.js"></script>
 <script src="js/services/cubes.js"></script>

http://git-wip-us.apache.org/repos/asf/incubator-kylin/blob/88dff352/webapp/app/js/controllers/admin.js
----------------------------------------------------------------------
diff --git a/webapp/app/js/controllers/admin.js b/webapp/app/js/controllers/admin.js
index 3a40bf5..8b7317d 100644
--- a/webapp/app/js/controllers/admin.js
+++ b/webapp/app/js/controllers/admin.js
@@ -1,6 +1,6 @@
 'use strict';
 
-KylinApp.controller('AdminCtrl', function ($scope,AdminService, CacheService, TableService,loadingRequest, MessageService, $modal,SweetAlert,kylinConfig) {
+KylinApp.controller('AdminCtrl', function ($scope,AdminService, CacheService, TableService,loadingRequest, MessageService, $modal,SweetAlert) {
     $scope.configStr = "";
     $scope.envStr = "";
 

http://git-wip-us.apache.org/repos/asf/incubator-kylin/blob/88dff352/webapp/app/js/controllers/page.js
----------------------------------------------------------------------
diff --git a/webapp/app/js/controllers/page.js b/webapp/app/js/controllers/page.js
index 733af5c..3fbf045 100644
--- a/webapp/app/js/controllers/page.js
+++ b/webapp/app/js/controllers/page.js
@@ -1,8 +1,7 @@
 'use strict';
 
-KylinApp.controller('PageCtrl', function ($scope, $q, AccessService,$modal, $location, $rootScope, $routeParams, $http, UserService,ProjectService,SweetAlert,$cookieStore,$log,kylinConfig) {
+KylinApp.controller('PageCtrl', function ($scope, $q, AccessService,$modal, $location, $rootScope, $routeParams, $http, UserService,ProjectService,SweetAlert,$cookieStore,$log) {
 
-     kylinConfig.init();
     $scope.header = {show: true};
     $scope.footer = {
         year: new Date().getFullYear(),


[08/11] incubator-kylin git commit: fix cube designer bug

Posted by li...@apache.org.
fix cube designer bug


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

Branch: refs/heads/staging
Commit: 193606021ce570339c6bb21f2c1578a74f783476
Parents: 69395e7
Author: jiazhong <ji...@ebay.com>
Authored: Mon Jan 26 18:40:00 2015 -0800
Committer: jiazhong <ji...@ebay.com>
Committed: Mon Jan 26 18:40:00 2015 -0800

----------------------------------------------------------------------
 webapp/app/js/controllers/cubeEdit.js  | 2 +-
 webapp/app/js/directives/directives.js | 3 ---
 2 files changed, 1 insertion(+), 4 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/incubator-kylin/blob/19360602/webapp/app/js/controllers/cubeEdit.js
----------------------------------------------------------------------
diff --git a/webapp/app/js/controllers/cubeEdit.js b/webapp/app/js/controllers/cubeEdit.js
index 94e92da..2875107 100644
--- a/webapp/app/js/controllers/cubeEdit.js
+++ b/webapp/app/js/controllers/cubeEdit.js
@@ -53,7 +53,7 @@ KylinApp.controller('CubeEditCtrl', function ($scope, $q, $routeParams, $locatio
     $scope.srcTablesInProject = [];
 
     $scope.getColumnsByTable = function (name) {
-        var temp = null;
+        var temp = [];
         angular.forEach($scope.srcTablesInProject, function (table) {
             if (table.name == name) {
                 temp = table.columns;

http://git-wip-us.apache.org/repos/asf/incubator-kylin/blob/19360602/webapp/app/js/directives/directives.js
----------------------------------------------------------------------
diff --git a/webapp/app/js/directives/directives.js b/webapp/app/js/directives/directives.js
index 723567f..264cb05 100644
--- a/webapp/app/js/directives/directives.js
+++ b/webapp/app/js/directives/directives.js
@@ -47,9 +47,6 @@ KylinApp.directive('kylinPagination', function ($parse, $q) {
 
             scope.reload = function () {
                 var length = scope.getLength(scope.data);
-                if(!length){
-                    return;
-                }
                 scope.loadFunc(0, scope.limit).then(function (dataLength) {
                     scope.data = $parse(attrs.data)(scope.$parent);
                     scope.hasMore = dataLength == scope.limit;


[04/11] incubator-kylin git commit: add first blog

Posted by li...@apache.org.
add first blog


Project: http://git-wip-us.apache.org/repos/asf/incubator-kylin/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-kylin/commit/501e2f2d
Tree: http://git-wip-us.apache.org/repos/asf/incubator-kylin/tree/501e2f2d
Diff: http://git-wip-us.apache.org/repos/asf/incubator-kylin/diff/501e2f2d

Branch: refs/heads/staging
Commit: 501e2f2db3ecc54e16743150084d15592120cb12
Parents: 6aa240a
Author: lukehan <lu...@apache.org>
Authored: Sun Jan 25 23:12:56 2015 +0800
Committer: lukehan <lu...@apache.org>
Committed: Sun Jan 25 23:12:56 2015 +0800

----------------------------------------------------------------------
 docs/website/_includes/header.cn.html           |   1 +
 docs/website/_includes/header.html              |   1 +
 docs/website/_layouts/post.html                 |  11 +-
 .../2015-01-20-welcome-to-jekyll.markdown       |  25 ---
 docs/website/_site/about/index.html             |   1 +
 docs/website/_site/blog/index.html              |  22 ++-
 docs/website/_site/cn/index.html                |   1 +
 docs/website/_site/community/index.html         |   1 +
 docs/website/_site/docs/index.html              |   1 +
 .../_site/docs/installation-content/index.html  |   1 +
 .../website/_site/docs/intro-content/index.html |   1 +
 docs/website/_site/feed.xml                     |  56 ++++---
 docs/website/_site/index.html                   |   1 +
 .../2015/01/21/welcome-to-jekyll/index.html     | 154 -------------------
 docs/website/blog/index.html                    |  21 ++-
 15 files changed, 90 insertions(+), 208 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/incubator-kylin/blob/501e2f2d/docs/website/_includes/header.cn.html
----------------------------------------------------------------------
diff --git a/docs/website/_includes/header.cn.html b/docs/website/_includes/header.cn.html
index db999d6..7c45568 100644
--- a/docs/website/_includes/header.cn.html
+++ b/docs/website/_includes/header.cn.html
@@ -30,6 +30,7 @@
           <li><a href="/community" >社区</a></li>
           <li><a href="/blog">博客</li>
           <li><a href="/about" >关于</a></li>
+          <li><a href="/" >English</a></li>
       </ul>
       
 

http://git-wip-us.apache.org/repos/asf/incubator-kylin/blob/501e2f2d/docs/website/_includes/header.html
----------------------------------------------------------------------
diff --git a/docs/website/_includes/header.html b/docs/website/_includes/header.html
index 9e792b5..0968b2f 100644
--- a/docs/website/_includes/header.html
+++ b/docs/website/_includes/header.html
@@ -30,6 +30,7 @@
           <li><a href="/community" >Community</a></li>
           <li><a href="/blog">Blog</li>
           <li><a href="/about" >About</a></li>
+          <li><a href="/cn" >中文版</a></li>
       </ul>
       
 

http://git-wip-us.apache.org/repos/asf/incubator-kylin/blob/501e2f2d/docs/website/_layouts/post.html
----------------------------------------------------------------------
diff --git a/docs/website/_layouts/post.html b/docs/website/_layouts/post.html
index a2b4e52..0574e66 100644
--- a/docs/website/_layouts/post.html
+++ b/docs/website/_layouts/post.html
@@ -1,15 +1,20 @@
 ---
 layout: default
 ---
-<div class="post">
+
+<div class="post" style=" padding:2em 4em 4em 4em">
 
   <header class="post-header">
     <h1 class="post-title">{{ page.title }}</h1>
-    <p class="post-meta">{{ page.date | date: "%b %-d, %Y" }}{% if page.author %} • {{ page.author }}{% endif %}{% if page.meta %} • {{ page.meta }}{% endif %}</p>
+    <p class="post-meta" >{{ page.date | date: "%b %-d, %Y" }}{% if page.author %} • {{ page.author }}{% endif %}{% if page.meta %} • {{ page.meta }}{% endif %}</p>
   </header>
 
-  <article class="post-content">
+  <article class="post-content" >
     {{ content }}
   </article>
 
 </div>
+
+
+
+

http://git-wip-us.apache.org/repos/asf/incubator-kylin/blob/501e2f2d/docs/website/_posts/2015-01-20-welcome-to-jekyll.markdown
----------------------------------------------------------------------
diff --git a/docs/website/_posts/2015-01-20-welcome-to-jekyll.markdown b/docs/website/_posts/2015-01-20-welcome-to-jekyll.markdown
deleted file mode 100644
index a6e43bd..0000000
--- a/docs/website/_posts/2015-01-20-welcome-to-jekyll.markdown
+++ /dev/null
@@ -1,25 +0,0 @@
----
-layout: post
-title:  "Welcome to Jekyll!"
-date:   2015-01-20 21:52:58
-categories: jekyll update
----
-You’ll find this post in your `_posts` directory. Go ahead and edit it and re-build the site to see your changes. You can rebuild the site in many different ways, but the most common way is to run `jekyll serve`, which launches a web server and auto-regenerates your site when a file is updated.
-
-To add new posts, simply add a file in the `_posts` directory that follows the convention `YYYY-MM-DD-name-of-post.ext` and includes the necessary front matter. Take a look at the source for this post to get an idea about how it works.
-
-Jekyll also offers powerful support for code snippets:
-
-{% highlight ruby %}
-def print_hi(name)
-  puts "Hi, #{name}"
-end
-print_hi('Tom')
-#=> prints 'Hi, Tom' to STDOUT.
-{% endhighlight %}
-
-Check out the [Jekyll docs][jekyll] for more info on how to get the most out of Jekyll. File all bugs/feature requests at [Jekyll’s GitHub repo][jekyll-gh]. If you have questions, you can ask them on [Jekyll’s dedicated Help repository][jekyll-help].
-
-[jekyll]:      http://jekyllrb.com
-[jekyll-gh]:   https://github.com/jekyll/jekyll
-[jekyll-help]: https://github.com/jekyll/jekyll-help

http://git-wip-us.apache.org/repos/asf/incubator-kylin/blob/501e2f2d/docs/website/_site/about/index.html
----------------------------------------------------------------------
diff --git a/docs/website/_site/about/index.html b/docs/website/_site/about/index.html
index ce63fbb..1b5ef8e 100644
--- a/docs/website/_site/about/index.html
+++ b/docs/website/_site/about/index.html
@@ -79,6 +79,7 @@
           <li><a href="/community" >Community</a></li>
           <li><a href="/blog">Blog</li>
           <li><a href="/about" >About</a></li>
+          <li><a href="/cn" >中文版</a></li>
       </ul>
       
 

http://git-wip-us.apache.org/repos/asf/incubator-kylin/blob/501e2f2d/docs/website/_site/blog/index.html
----------------------------------------------------------------------
diff --git a/docs/website/_site/blog/index.html b/docs/website/_site/blog/index.html
index b957de3..9225c84 100644
--- a/docs/website/_site/blog/index.html
+++ b/docs/website/_site/blog/index.html
@@ -79,6 +79,7 @@
           <li><a href="/community" >Community</a></li>
           <li><a href="/blog">Blog</li>
           <li><a href="/about" >About</a></li>
+          <li><a href="/cn" >中文版</a></li>
       </ul>
       
 
@@ -96,14 +97,27 @@
       <div class="container" >
         <h4 class="section-title"><span> Kylin Technical Blog </span></h4>
          <!-- second-->
-  <div class="row">
-          <div class="col-sm-12 col-md-12">
+          <div id="content-container" class="animated fadeIn">
             <div >
+            <!--
             <p class="aboutkylin" style="font-size:1.2em">Comming Soon...</p>
-           
+            -->
+             <ul class="post-list">
+            
+            <li>
+            <!--
+            <span align="left" class="content-header">Jan 26, 2015</span>
+            -->
+        <h2 align="left">
+          <a class="post-link" href="/blog/2015/01/26/introduce-data-model/">Introduce Data Model of Cube Designer</a>
+        </h2>
+      </li>
+    
+  </ul>
+
+  <p class="rss-subscribe">subscribe <a href="/feed.xml">via RSS</a></p>
           </div>
         </div>
-         </div>
       </div>
       <!-- /container --> 
       

http://git-wip-us.apache.org/repos/asf/incubator-kylin/blob/501e2f2d/docs/website/_site/cn/index.html
----------------------------------------------------------------------
diff --git a/docs/website/_site/cn/index.html b/docs/website/_site/cn/index.html
index 5572354..35e111d 100644
--- a/docs/website/_site/cn/index.html
+++ b/docs/website/_site/cn/index.html
@@ -79,6 +79,7 @@
           <li><a href="/community" >社区</a></li>
           <li><a href="/blog">博客</li>
           <li><a href="/about" >关于</a></li>
+          <li><a href="/" >English</a></li>
       </ul>
       
 

http://git-wip-us.apache.org/repos/asf/incubator-kylin/blob/501e2f2d/docs/website/_site/community/index.html
----------------------------------------------------------------------
diff --git a/docs/website/_site/community/index.html b/docs/website/_site/community/index.html
index 5fa5b91..00dc1d7 100644
--- a/docs/website/_site/community/index.html
+++ b/docs/website/_site/community/index.html
@@ -79,6 +79,7 @@
           <li><a href="/community" >Community</a></li>
           <li><a href="/blog">Blog</li>
           <li><a href="/about" >About</a></li>
+          <li><a href="/cn" >中文版</a></li>
       </ul>
       
 

http://git-wip-us.apache.org/repos/asf/incubator-kylin/blob/501e2f2d/docs/website/_site/docs/index.html
----------------------------------------------------------------------
diff --git a/docs/website/_site/docs/index.html b/docs/website/_site/docs/index.html
index 17b6ec9..8c30648 100644
--- a/docs/website/_site/docs/index.html
+++ b/docs/website/_site/docs/index.html
@@ -79,6 +79,7 @@
           <li><a href="/community" >Community</a></li>
           <li><a href="/blog">Blog</li>
           <li><a href="/about" >About</a></li>
+          <li><a href="/cn" >中文版</a></li>
       </ul>
       
 

http://git-wip-us.apache.org/repos/asf/incubator-kylin/blob/501e2f2d/docs/website/_site/docs/installation-content/index.html
----------------------------------------------------------------------
diff --git a/docs/website/_site/docs/installation-content/index.html b/docs/website/_site/docs/installation-content/index.html
index 838c512..a43b724 100644
--- a/docs/website/_site/docs/installation-content/index.html
+++ b/docs/website/_site/docs/installation-content/index.html
@@ -79,6 +79,7 @@
           <li><a href="/community" >Community</a></li>
           <li><a href="/blog">Blog</li>
           <li><a href="/about" >About</a></li>
+          <li><a href="/cn" >中文版</a></li>
       </ul>
       
 

http://git-wip-us.apache.org/repos/asf/incubator-kylin/blob/501e2f2d/docs/website/_site/docs/intro-content/index.html
----------------------------------------------------------------------
diff --git a/docs/website/_site/docs/intro-content/index.html b/docs/website/_site/docs/intro-content/index.html
index 6283274..db6e5e9 100644
--- a/docs/website/_site/docs/intro-content/index.html
+++ b/docs/website/_site/docs/intro-content/index.html
@@ -79,6 +79,7 @@
           <li><a href="/community" >Community</a></li>
           <li><a href="/blog">Blog</li>
           <li><a href="/about" >About</a></li>
+          <li><a href="/cn" >中文版</a></li>
       </ul>
       
 

http://git-wip-us.apache.org/repos/asf/incubator-kylin/blob/501e2f2d/docs/website/_site/feed.xml
----------------------------------------------------------------------
diff --git a/docs/website/_site/feed.xml b/docs/website/_site/feed.xml
index 75e7ab1..7c8b0ad 100644
--- a/docs/website/_site/feed.xml
+++ b/docs/website/_site/feed.xml
@@ -5,35 +5,55 @@
     <description>Apache Kylin Home</description>
     <link>http://kyli.io/</link>
     <atom:link href="http://kyli.io/feed.xml" rel="self" type="application/rss+xml"/>
-    <pubDate>Fri, 23 Jan 2015 10:55:31 +0800</pubDate>
-    <lastBuildDate>Fri, 23 Jan 2015 10:55:31 +0800</lastBuildDate>
+    <pubDate>Sun, 25 Jan 2015 23:08:46 +0800</pubDate>
+    <lastBuildDate>Sun, 25 Jan 2015 23:08:46 +0800</lastBuildDate>
     <generator>Jekyll v2.5.3</generator>
     
       <item>
-        <title>Welcome to Jekyll!</title>
-        <description>&lt;p&gt;You’ll find this post in your &lt;code&gt;_posts&lt;/code&gt; directory. Go ahead and edit it and re-build the site to see your changes. You can rebuild the site in many different ways, but the most common way is to run &lt;code&gt;jekyll serve&lt;/code&gt;, which launches a web server and auto-regenerates your site when a file is updated.&lt;/p&gt;
+        <title>Introduce Data Model of Cube Designer</title>
+        <description>&lt;h3 id=&quot;background&quot;&gt;Background&lt;/h3&gt;
+&lt;p&gt;In previous version (before v0.6.4), Kylin introduced a GUI tool called Cube Designer for user (we called this role as &lt;strong&gt;Cube Modeler&lt;/strong&gt;) to architect OLAP Cube with dimensions, measures and other settings. It works well for most of the features but still not user friendly yet: &lt;/p&gt;
 
-&lt;p&gt;To add new posts, simply add a file in the &lt;code&gt;_posts&lt;/code&gt; directory that follows the convention &lt;code&gt;YYYY-MM-DD-name-of-post.ext&lt;/code&gt; and includes the necessary front matter. Take a look at the source for this post to get an idea about how it works.&lt;/p&gt;
+&lt;ol&gt;
+  &lt;li&gt;A user has to add dimension one by one, considering there are 20+ even 50+ dimensions, the entire process is really boring. &lt;/li&gt;
+  &lt;li&gt;Each dimension requires define join condition between fact table and lookup table which even already be defined in previous dimensions many times.&lt;/li&gt;
+  &lt;li&gt;Less validation check, especially for Hierarchy and Derived dimension, there are many exceptions in further steps which blocked many people to save the cube definition without any idea about the issue.&lt;/li&gt;
+  &lt;li&gt;Save/Next buttons are confusing user to click which one for real next step or just save current dimension settings&lt;/li&gt;
+&lt;/ol&gt;
 
-&lt;p&gt;Jekyll also offers powerful support for code snippets:&lt;/p&gt;
+&lt;h3 id=&quot;data-model-of-cube-designer&quot;&gt;Data Model of Cube Designer&lt;/h3&gt;
+&lt;p&gt;With the feedback from our internal users and external community, we have came up one idea and would like to introduce a new concept (widely known in Data Warehouse and Business Intelligence domain): Data Model: a data model organises data elements and standardises how the data elements relate to one another.&lt;a href=&quot;http://en.wikipedia.org/wiki/Data_model&quot;&gt;Wikipedia&lt;/a&gt;. In Kylin, it using &lt;a href=&quot;http://en.wikipedia.org/wiki/Star_schema&quot;&gt;Star Schema&lt;/a&gt; as Data Model, which is the simplest style of data warehouse schema. The star schema consists of a few “fact tables” (possibly only one, justifying the name) referencing any number of “dimension tables”. It actually already there behind dimensions and measures and now just come to first step to define the relationship between different tables before create each dimension. 
+Now (after v0.6.4), to create a cube will follow below steps:&lt;/p&gt;
 
-&lt;div class=&quot;highlight&quot;&gt;&lt;pre&gt;&lt;code class=&quot;language-ruby&quot; data-lang=&quot;ruby&quot;&gt;&lt;span class=&quot;k&quot;&gt;def&lt;/span&gt; &lt;span class=&quot;nf&quot;&gt;print_hi&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;nb&quot;&gt;name&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;)&lt;/span&gt;
-  &lt;span class=&quot;nb&quot;&gt;puts&lt;/span&gt; &lt;span class=&quot;s2&quot;&gt;&amp;quot;Hi, &lt;/span&gt;&lt;span class=&quot;si&quot;&gt;#{&lt;/span&gt;&lt;span class=&quot;nb&quot;&gt;name&lt;/span&gt;&lt;span class=&quot;si&quot;&gt;}&lt;/span&gt;&lt;span class=&quot;s2&quot;&gt;&amp;quot;&lt;/span&gt;
-&lt;span class=&quot;k&quot;&gt;end&lt;/span&gt;
-&lt;span class=&quot;n&quot;&gt;print_hi&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;s1&quot;&gt;&amp;#39;Tom&amp;#39;&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;)&lt;/span&gt;
-&lt;span class=&quot;c1&quot;&gt;#=&amp;gt; prints &amp;#39;Hi, Tom&amp;#39; to STDOUT.&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
+&lt;ol&gt;
+  &lt;li&gt;Define data model first: pick up one fact table and then add other lookup tables (with their join conditions). The data mode must be presents as Star Schema.&lt;/li&gt;
+  &lt;li&gt;Then add dimensions, since all join conditions already presented in data model, each dimension could be more easy to create, just need to know what’s kind of type: normal, hierarchy and derived (will have another blog to introduce them). There’s also one helper called &lt;em&gt;Auto Generator&lt;/em&gt; to help generate many dimensions within simple clicks.&lt;/li&gt;
+  &lt;li&gt;Then define measures and others as previous cube designer did&lt;/li&gt;
+&lt;/ol&gt;
 
-&lt;p&gt;Check out the &lt;a href=&quot;http://jekyllrb.com&quot;&gt;Jekyll docs&lt;/a&gt; for more info on how to get the most out of Jekyll. File all bugs/feature requests at &lt;a href=&quot;https://github.com/jekyll/jekyll&quot;&gt;Jekyll’s GitHub repo&lt;/a&gt;. If you have questions, you can ask them on &lt;a href=&quot;https://github.com/jekyll/jekyll-help&quot;&gt;Jekyll’s dedicated Help repository&lt;/a&gt;.&lt;/p&gt;
+&lt;h3 id=&quot;benefits&quot;&gt;Benefits&lt;/h3&gt;
+&lt;ol&gt;
+  &lt;li&gt;A data model is very easy to communicate between different roles and teams. Most of cases it just mapping to real database table relationship, like from Hive tables&lt;/li&gt;
+  &lt;li&gt;More easy to create dimensions and measures based on the data model&lt;/li&gt;
+  &lt;li&gt;Friendly error message with enhanced validation check when save cube&lt;/li&gt;
+&lt;/ol&gt;
+
+&lt;h3 id=&quot;whats-next&quot;&gt;What’s Next&lt;/h3&gt;
+&lt;p&gt;After this refactor, Kylin is now be able to introduce more powerful features, the major idea is to using different storages to serve same data model:&lt;/p&gt;
+
+&lt;ul&gt;
+  &lt;li&gt;&lt;strong&gt;Logical Model&lt;/strong&gt;: A Data Model presents logical data structure like Star Schema beyond data tables with more business meaning&lt;/li&gt;
+  &lt;li&gt;&lt;strong&gt;Physical Model&lt;/strong&gt;: define how the underlying data to be stored in persistent system, like HBase. There are already two of them: MOLAP (current Kylin version) and InvertedIndex (coming with 0.7.x release). And it also easy to extend to support others without change the Logical Model.&lt;/li&gt;
+  &lt;li&gt;A new GUI of Cube Designer to support above is on the way.&lt;/li&gt;
+&lt;/ul&gt;
 
 </description>
-        <pubDate>Wed, 21 Jan 2015 05:52:58 +0800</pubDate>
-        <link>http://kyli.io/jekyll/update/2015/01/21/welcome-to-jekyll/</link>
-        <guid isPermaLink="true">http://kyli.io/jekyll/update/2015/01/21/welcome-to-jekyll/</guid>
-        
+        <pubDate>Mon, 26 Jan 2015 06:28:00 +0800</pubDate>
+        <link>http://kyli.io/blog/2015/01/26/introduce-data-model/</link>
+        <guid isPermaLink="true">http://kyli.io/blog/2015/01/26/introduce-data-model/</guid>
         
-        <category>jekyll</category>
         
-        <category>update</category>
+        <category>blog</category>
         
       </item>
     

http://git-wip-us.apache.org/repos/asf/incubator-kylin/blob/501e2f2d/docs/website/_site/index.html
----------------------------------------------------------------------
diff --git a/docs/website/_site/index.html b/docs/website/_site/index.html
index 97c3f54..37823b7 100644
--- a/docs/website/_site/index.html
+++ b/docs/website/_site/index.html
@@ -79,6 +79,7 @@
           <li><a href="/community" >Community</a></li>
           <li><a href="/blog">Blog</li>
           <li><a href="/about" >About</a></li>
+          <li><a href="/cn" >中文版</a></li>
       </ul>
       
 

http://git-wip-us.apache.org/repos/asf/incubator-kylin/blob/501e2f2d/docs/website/_site/jekyll/update/2015/01/21/welcome-to-jekyll/index.html
----------------------------------------------------------------------
diff --git a/docs/website/_site/jekyll/update/2015/01/21/welcome-to-jekyll/index.html b/docs/website/_site/jekyll/update/2015/01/21/welcome-to-jekyll/index.html
deleted file mode 100644
index db30b7f..0000000
--- a/docs/website/_site/jekyll/update/2015/01/21/welcome-to-jekyll/index.html
+++ /dev/null
@@ -1,154 +0,0 @@
-<!DOCTYPE html>
-<html>
-
-  <head>
-  <meta charset="utf-8">
-  <meta http-equiv="X-UA-Compatible" content="IE=edge">
-  <meta name="viewport" content="width=device-width, initial-scale=1">
-
-  <title>Kylin.IO | Welcome to Jekyll!</title>
-  <meta name="description" content="You’ll find this post in your _posts directory. Go ahead and edit it and re-build the site to see your changes. You can rebuild the site in many different wa...">
-  <meta name="author"      content="Kylin.IO">
-  <link rel="shortcut icon" href="fav.png" type="image/png">
-
-
-
-<link rel="stylesheet" href="/assets/css/animate.css">
-<!-- Bootstrap -->
-<link rel="stylesheet" href="/assets/css/bootstrap.min.css">
-
-<!-- Fonts -->
-<link rel="stylesheet" href="http://fonts.googleapis.com/css?family=Alice|Open+Sans:400,300,700">
-
-<!-- Icons -->
-<link rel="stylesheet" href="/assets/css/font-awesome.min.css">
-
-  <!-- Custom styles -->
-  <link rel="stylesheet" href="/assets/css/styles.css">
-
-  <link rel="canonical" href="http://kyli.io/jekyll/update/2015/01/21/welcome-to-jekyll/">
-  <link rel="alternate" type="application/rss+xml" title="kylin.io" href="http://kyli.io/feed.xml" />
-
-<!--[if lt IE 9]> <script src="assets/js/html5shiv.js"></script> <![endif]-->
-<script>
-  (function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
-  (i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
-  m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
-  })(window,document,'script','//www.google-analytics.com/analytics.js','ga');
-
-  ga('create', 'UA-55534813-1', 'auto');
-  ga('send', 'pageview');
-
-
-</script>
-
-</head>
-
-
-  <body>
-
-    <header id="header" >
-  <div id="head" class="parallax" parallax-speed="3" >
-    <div id="logo" class="text-center"> <img class="img-circle" id="circlelogo" src="/assets/images/kylin_logo.jpg"> <span class="title" >Apache Kylin</span> <span class="tagline">Extreme OLAP Engine for Big Data<br>
-      </span> 
-      <!--
-       <div id="download"><a href="https://github.com/KylinOLAP/Kylin/releases">DOWNLOAD</a></div>
-       -->
-       </div>
-  </div>
-
-  <!-- Main Menu -->
-  <nav class="navbar navbar-default" role="navigation" id="nav-wrapper">
-  <div class="container-fluid" id="nav">
-    <!-- Brand and toggle get grouped for better mobile display -->
-    <div class="navbar-header">
-      <button type="button" class="navbar-toggle collapsed" data-toggle="collapse" data-target="#bs-example-navbar-collapse-1">
-        <span class="sr-only">Toggle navigation</span>
-        <span class="icon-bar"></span>
-        <span class="icon-bar"></span>
-        <span class="icon-bar"></span>
-      </button>
-     
-    </div>
-
-    <!-- Collect the nav links, forms, and other content for toggling -->
-    <div class="collapse navbar-collapse" id="bs-example-navbar-collapse-1">
-      <ul class="nav navbar-nav">
-     <li><a href="/"><b>Home</b></a></li>
-          <li><a href="/docs" >Docs</a></li>
-          <li><a href="/community" >Community</a></li>
-          <li><a href="/blog">Blog</li>
-          <li><a href="/about" >About</a></li>
-      </ul>
-      
-
-    </div><!-- /.navbar-collapse -->
-  </div><!-- /.container-fluid -->
-</nav>
- </header>
-
-
-    <div class="page-content">
-      <div class="wrapper">
-        <div class="post">
-
-  <header class="post-header">
-    <h1 class="post-title">Welcome to Jekyll!</h1>
-    <p class="post-meta">Jan 21, 2015</p>
-  </header>
-
-  <article class="post-content">
-    <p>You’ll find this post in your <code>_posts</code> directory. Go ahead and edit it and re-build the site to see your changes. You can rebuild the site in many different ways, but the most common way is to run <code>jekyll serve</code>, which launches a web server and auto-regenerates your site when a file is updated.</p>
-
-<p>To add new posts, simply add a file in the <code>_posts</code> directory that follows the convention <code>YYYY-MM-DD-name-of-post.ext</code> and includes the necessary front matter. Take a look at the source for this post to get an idea about how it works.</p>
-
-<p>Jekyll also offers powerful support for code snippets:</p>
-
-<div class="highlight"><pre><code class="language-ruby" data-lang="ruby"><span class="k">def</span> <span class="nf">print_hi</span><span class="p">(</span><span class="nb">name</span><span class="p">)</span>
-  <span class="nb">puts</span> <span class="s2">&quot;Hi, </span><span class="si">#{</span><span class="nb">name</span><span class="si">}</span><span class="s2">&quot;</span>
-<span class="k">end</span>
-<span class="n">print_hi</span><span class="p">(</span><span class="s1">&#39;Tom&#39;</span><span class="p">)</span>
-<span class="c1">#=&gt; prints &#39;Hi, Tom&#39; to STDOUT.</span></code></pre></div>
-
-<p>Check out the <a href="http://jekyllrb.com">Jekyll docs</a> for more info on how to get the most out of Jekyll. File all bugs/feature requests at <a href="https://github.com/jekyll/jekyll">Jekyll’s GitHub repo</a>. If you have questions, you can ask them on <a href="https://github.com/jekyll/jekyll-help">Jekyll’s dedicated Help repository</a>.</p>
-
-
-  </article>
-
-</div>
-
-      </div>
-    </div>
-
-    <footer id="underfooter">
-  <div class="container">
-    <div class="row">
-      <div class="col-md-12 widget" >
-        <div class="widget-body" style="text-align:center">
-          <ul class="icons">
-            <li><a href="https://www.linkedin.com/groups/KylinOLAP-6785709?home=&gid=6785709&trk=anet_ug_hm" target="_blank" class="fa fa-linkedin fa-lg"></a></li>
-            <li><a href="https://twitter.com/debashis_saha/status/519612003443146752" target="_blank" class="fa fa-twitter fa-lg"></a></li>
-            <li><a href="https://www.facebook.com/kylinio?skip_nax_wizard=true&ref_type=logout_gear" target="_blank" class="fa fa-facebook fa-lg"></a></li>
-            <li><a href="https://plus.google.com/communities/101138166999680123468" target="_blank" class="fa fa-google-plus fa-lg"></a></li>
-            <li><a href="https://github.com/KylinOLAP/Kylin" target="_blank" class="fa fa-github-alt fa-lg"></a></li>
-            <!--  <li><a href="#" class="fa fa-weibo fa-lg"></a></li>
-         <li><a href="#" class="fa fa-weixin fa-lg"></a></li>-->
-          </ul>
-          <p style="text-align:center" > Copyright ©2014 <a href="http://kylin.io">Kylin.io</a> All Rights Reserved. | From <a href="http://www.ebayinc.com/">eBay Inc.</a> |<a href="#">back to top</a><br>
-          </p>
-        </div>
-      </div>
-    </div>
-    <!-- /row of widgets --> 
-
-  </div>
-  <div></div>
-  
-</footer>
-
-  <script src="/assets/js/jquery-1.9.1.min.js"></script> 
-  <script src="/assets/js/bootstrap.min.js"></script> 
-  <script src="/assets/js/main.js"></script>
-  </body>
-
-</html>

http://git-wip-us.apache.org/repos/asf/incubator-kylin/blob/501e2f2d/docs/website/blog/index.html
----------------------------------------------------------------------
diff --git a/docs/website/blog/index.html b/docs/website/blog/index.html
index 0fc5a3b..6db414f 100644
--- a/docs/website/blog/index.html
+++ b/docs/website/blog/index.html
@@ -10,14 +10,27 @@ title: Blog
       <div class="container" >
         <h4 class="section-title"><span> Kylin Technical Blog </span></h4>
          <!-- second-->
-  <div class="row">
-          <div class="col-sm-12 col-md-12">
+          <div id="content-container" class="animated fadeIn">
             <div >
+            <!--
             <p class="aboutkylin" style="font-size:1.2em">Comming Soon...</p>
-           
+            -->
+             <ul class="post-list">
+            {% for post in site.posts %}
+            <li>
+            <!--
+            <span align="left" class="content-header">{{ post.date | date: "%b %-d, %Y" }}</span>
+            -->
+        <h2 align="left">
+          <a class="post-link" href="{{ post.url | prepend: site.baseurl }}">{{ post.title }}</a>
+        </h2>
+      </li>
+    {% endfor %}
+  </ul>
+
+  <p class="rss-subscribe">subscribe <a href="{{ "/feed.xml" | prepend: site.baseurl }}">via RSS</a></p>
           </div>
         </div>
-         </div>
       </div>
       <!-- /container --> 
       


[05/11] incubator-kylin git commit: Merge branch 'staging' of https://github.com/KylinOLAP/Kylin into staging

Posted by li...@apache.org.
Merge branch 'staging' of https://github.com/KylinOLAP/Kylin into staging


Project: http://git-wip-us.apache.org/repos/asf/incubator-kylin/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-kylin/commit/52f7f1bc
Tree: http://git-wip-us.apache.org/repos/asf/incubator-kylin/tree/52f7f1bc
Diff: http://git-wip-us.apache.org/repos/asf/incubator-kylin/diff/52f7f1bc

Branch: refs/heads/staging
Commit: 52f7f1bcbd263d9f15966744ce2791855873c715
Parents: cb8be90 501e2f2
Author: jiazhong <ji...@ebay.com>
Authored: Sun Jan 25 23:16:06 2015 -0800
Committer: jiazhong <ji...@ebay.com>
Committed: Sun Jan 25 23:16:06 2015 -0800

----------------------------------------------------------------------
 .../_base.scssc                                 | Bin 0 -> 33622 bytes
 .../_layout.scssc                               | Bin 0 -> 42995 bytes
 .../_syntax-highlighting.scssc                  | Bin 0 -> 40029 bytes
 docs/website/_includes/head.cn.html             |  42 ++++
 docs/website/_includes/header.cn.html           |  40 ++++
 docs/website/_includes/header.html              |   1 +
 docs/website/_layouts/default-cn.html           |  23 ++
 docs/website/_layouts/post.html                 |  11 +-
 .../2015-01-20-welcome-to-jekyll.markdown       |  25 --
 docs/website/_site/about/index.html             |   1 +
 docs/website/_site/blog/index.html              |  22 +-
 docs/website/_site/cn/index.html                | 239 +++++++++++++++++++
 docs/website/_site/community/index.html         |   1 +
 docs/website/_site/docs/index.html              |   1 +
 .../_site/docs/installation-content.html        | 139 -----------
 .../_site/docs/installation-content/index.html  | 140 +++++++++++
 docs/website/_site/docs/intro-content.html      | 177 --------------
 .../website/_site/docs/intro-content/index.html | 178 ++++++++++++++
 docs/website/_site/feed.xml                     |  56 +++--
 docs/website/_site/index.html                   |  47 ++--
 .../update/2015/01/21/welcome-to-jekyll.html    | 154 ------------
 docs/website/blog/index.html                    |  21 +-
 docs/website/index.cn.md                        | 116 +++++++++
 docs/website/index.html                         | 116 ---------
 docs/website/index.md                           | 116 +++++++++
 25 files changed, 1003 insertions(+), 663 deletions(-)
----------------------------------------------------------------------



[03/11] incubator-kylin git commit: Merge branch 'staging' of https://github.com/KylinOLAP/Kylin into staging

Posted by li...@apache.org.
Merge branch 'staging' of https://github.com/KylinOLAP/Kylin into staging


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

Branch: refs/heads/staging
Commit: cb8be90617ab2c986cc41e0ba105144293c712e4
Parents: c048ba1 9feb25a
Author: jiazhong <ji...@ebay.com>
Authored: Fri Jan 23 00:19:13 2015 -0800
Committer: jiazhong <ji...@ebay.com>
Committed: Fri Jan 23 00:19:13 2015 -0800

----------------------------------------------------------------------
 kylin.sh          | 2 +-
 package.sh        | 2 +-
 sandbox_deploy.sh | 2 +-
 3 files changed, 3 insertions(+), 3 deletions(-)
----------------------------------------------------------------------



[11/11] incubator-kylin git commit: KYLIN-581 when get jobs filter by cube name, compare the full name

Posted by li...@apache.org.
KYLIN-581 when get jobs filter by cube name, compare the full name


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

Branch: refs/heads/staging
Commit: f17523389fb97972a3c74e4fea3e713b71f494cc
Parents: 49df68a
Author: qianhao.zhou <qi...@ebay.com>
Authored: Thu Jan 29 12:25:07 2015 +0800
Committer: qianhao.zhou <qi...@ebay.com>
Committed: Thu Jan 29 12:25:07 2015 +0800

----------------------------------------------------------------------
 job/src/main/java/com/kylinolap/job/JobDAO.java | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/incubator-kylin/blob/f1752338/job/src/main/java/com/kylinolap/job/JobDAO.java
----------------------------------------------------------------------
diff --git a/job/src/main/java/com/kylinolap/job/JobDAO.java b/job/src/main/java/com/kylinolap/job/JobDAO.java
index b9fb688..a184a6a 100644
--- a/job/src/main/java/com/kylinolap/job/JobDAO.java
+++ b/job/src/main/java/com/kylinolap/job/JobDAO.java
@@ -96,7 +96,7 @@ public class JobDAO {
         ArrayList<JobInstance> result = new ArrayList<JobInstance>();
         for (JobInstance job : allJobs) {
             if (job != null) {
-                if (job.getRelatedCube().toLowerCase().contains(cubeName.toLowerCase())) {
+                if (job.getRelatedCube().equalsIgnoreCase(cubeName)) {
                     result.add(job);
                 }
             }


[06/11] incubator-kylin git commit: hide create proj in prod

Posted by li...@apache.org.
hide create proj in prod


Project: http://git-wip-us.apache.org/repos/asf/incubator-kylin/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-kylin/commit/69395e74
Tree: http://git-wip-us.apache.org/repos/asf/incubator-kylin/tree/69395e74
Diff: http://git-wip-us.apache.org/repos/asf/incubator-kylin/diff/69395e74

Branch: refs/heads/staging
Commit: 69395e7442683f81e43a02475b6e0da84defebda
Parents: 52f7f1b
Author: jiazhong <ji...@ebay.com>
Authored: Mon Jan 26 00:36:31 2015 -0800
Committer: jiazhong <ji...@ebay.com>
Committed: Mon Jan 26 00:36:31 2015 -0800

----------------------------------------------------------------------
 .../java/com/kylinolap/rest/DebugTomcat.java    |  9 +++--
 webapp/app/index.html                           |  1 +
 webapp/app/js/controllers/page.js               |  5 ++-
 webapp/app/js/directives/directives.js          |  3 ++
 webapp/app/js/services/kylinProperties.js       | 39 ++++++++++++++++++++
 webapp/app/partials/cubes/cubes.html            |  2 +-
 webapp/app/partials/home.html                   |  2 +-
 webapp/app/partials/projects/projects.html      |  2 +-
 webapp/app/partials/query/query.html            |  2 +-
 webapp/app/partials/tables/source_metadata.html |  2 +-
 10 files changed, 58 insertions(+), 9 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/incubator-kylin/blob/69395e74/server/src/main/java/com/kylinolap/rest/DebugTomcat.java
----------------------------------------------------------------------
diff --git a/server/src/main/java/com/kylinolap/rest/DebugTomcat.java b/server/src/main/java/com/kylinolap/rest/DebugTomcat.java
index ea5813d..87028ec 100644
--- a/server/src/main/java/com/kylinolap/rest/DebugTomcat.java
+++ b/server/src/main/java/com/kylinolap/rest/DebugTomcat.java
@@ -38,7 +38,10 @@ public class DebugTomcat {
 
         ClasspathUtil.addClasspath(new File("../examples/test_case_data/sandbox").getAbsolutePath());
         String webBase = new File("../webapp/app").getAbsolutePath();
-        String apiBase = new File("src/main/webapp").getAbsolutePath();
+//        String apiBase = new File("src/main/webapp").getAbsolutePath();
+        if (new File(webBase, "WEB-INF").exists() == false) {
+            throw new RuntimeException("In order to launch Kylin web app from IDE, please make a symblink from webapp/app/WEB-INF to server/src/main/webapp/WEB-INF");
+        }
 
         Tomcat tomcat = new Tomcat();
         tomcat.setPort(port);
@@ -49,8 +52,8 @@ public class DebugTomcat {
         AprLifecycleListener listener = new AprLifecycleListener();
         server.addLifecycleListener(listener);
 
-        tomcat.addWebapp("/kylin", apiBase);
-        Context webContext = tomcat.addWebapp("/", webBase);
+//        tomcat.addWebapp("/kylin", apiBase);
+        Context webContext = tomcat.addWebapp("/kylin", webBase);
         ErrorPage notFound = new ErrorPage();
         notFound.setErrorCode(404);
         notFound.setLocation("/index.html");

http://git-wip-us.apache.org/repos/asf/incubator-kylin/blob/69395e74/webapp/app/index.html
----------------------------------------------------------------------
diff --git a/webapp/app/index.html b/webapp/app/index.html
index f3cf21a..b1fb25a 100644
--- a/webapp/app/index.html
+++ b/webapp/app/index.html
@@ -90,6 +90,7 @@
 <script src="js/directives/directives.js"></script>
 <script src="js/factories/graph.js"></script>
 <script src="js/services/cache.js"></script>
+<script src="js/services/kylinProperties.js"></script>
 <script src="js/services/message.js"></script>
 <script src="js/services/access.js"></script>
 <script src="js/services/admin.js"></script>

http://git-wip-us.apache.org/repos/asf/incubator-kylin/blob/69395e74/webapp/app/js/controllers/page.js
----------------------------------------------------------------------
diff --git a/webapp/app/js/controllers/page.js b/webapp/app/js/controllers/page.js
index 3fbf045..6419517 100644
--- a/webapp/app/js/controllers/page.js
+++ b/webapp/app/js/controllers/page.js
@@ -1,6 +1,9 @@
 'use strict';
 
-KylinApp.controller('PageCtrl', function ($scope, $q, AccessService,$modal, $location, $rootScope, $routeParams, $http, UserService,ProjectService,SweetAlert,$cookieStore,$log) {
+KylinApp.controller('PageCtrl', function ($scope, $q, AccessService,$modal, $location, $rootScope, $routeParams, $http, UserService,ProjectService,SweetAlert,$cookieStore,$log,kylinConfig) {
+
+    kylinConfig.init();
+    $scope.kylinConfig = kylinConfig;
 
     $scope.header = {show: true};
     $scope.footer = {

http://git-wip-us.apache.org/repos/asf/incubator-kylin/blob/69395e74/webapp/app/js/directives/directives.js
----------------------------------------------------------------------
diff --git a/webapp/app/js/directives/directives.js b/webapp/app/js/directives/directives.js
index 264cb05..723567f 100644
--- a/webapp/app/js/directives/directives.js
+++ b/webapp/app/js/directives/directives.js
@@ -47,6 +47,9 @@ KylinApp.directive('kylinPagination', function ($parse, $q) {
 
             scope.reload = function () {
                 var length = scope.getLength(scope.data);
+                if(!length){
+                    return;
+                }
                 scope.loadFunc(0, scope.limit).then(function (dataLength) {
                     scope.data = $parse(attrs.data)(scope.$parent);
                     scope.hasMore = dataLength == scope.limit;

http://git-wip-us.apache.org/repos/asf/incubator-kylin/blob/69395e74/webapp/app/js/services/kylinProperties.js
----------------------------------------------------------------------
diff --git a/webapp/app/js/services/kylinProperties.js b/webapp/app/js/services/kylinProperties.js
new file mode 100644
index 0000000..787aa71
--- /dev/null
+++ b/webapp/app/js/services/kylinProperties.js
@@ -0,0 +1,39 @@
+/**
+* Created by jiazhong on 2015/1/19.
+*/
+KylinApp.service('kylinConfig', function(AdminService,$log) {
+    var _config;
+    var timezone;
+    var deployEnv;
+    this.init = function (){
+        AdminService.config({}, function(config){
+            _config = config.config;
+        },function(e){
+            $log.error("failed to load kylin.properties"+e);
+        });
+    };
+
+    this.getProperty = function(name){
+        var keyIndex = _config.indexOf(name);
+        var keyLength = name.length;
+        var partialResult = _config.substr(keyIndex);
+        var preValueIndex = partialResult.indexOf("=");
+        var sufValueIndex = partialResult.indexOf("\n");
+        return partialResult.substring(preValueIndex+1,sufValueIndex);
+
+    }
+
+    this.getTimeZone = function(){
+        if(!this.timezone){
+            this.timezone = this.getProperty("kylin.rest.timezone").trim();
+        }
+        return this.timezone;
+    }
+
+    this.getDeployEnv = function(){
+        if(!this.deployEnv){
+            this.deployEnv = this.getProperty("deploy.env").trim();
+        }
+        return this.deployEnv.toUpperCase();
+    }
+});

http://git-wip-us.apache.org/repos/asf/incubator-kylin/blob/69395e74/webapp/app/partials/cubes/cubes.html
----------------------------------------------------------------------
diff --git a/webapp/app/partials/cubes/cubes.html b/webapp/app/partials/cubes/cubes.html
index 21954e0..46b6931 100644
--- a/webapp/app/partials/cubes/cubes.html
+++ b/webapp/app/partials/cubes/cubes.html
@@ -13,7 +13,7 @@
                 </select>
                 <!--Project-->
                 <a class="btn btn-xs btn-info" href="projects" tooltip="Manage Project"><i class="fa fa-gears"></i></a>
-                <a class="btn btn-xs btn-primary" style="width: 29px" ng-if="userService.hasRole('ROLE_MODELER')"  tooltip="Add Project" ng-click="toCreateProj()">
+                <a class="btn btn-xs btn-primary" style="width: 29px" ng-if="userService.hasRole('ROLE_ADMIN')||userService.hasRole('ROLE_MODELER')&&kylinConfig.getDeployEnv()!=='PROD'"  tooltip="Add Project" ng-click="toCreateProj()">
                     <i class="fa fa-plus"></i>
                 </a>
             </div>

http://git-wip-us.apache.org/repos/asf/incubator-kylin/blob/69395e74/webapp/app/partials/home.html
----------------------------------------------------------------------
diff --git a/webapp/app/partials/home.html b/webapp/app/partials/home.html
index 2e2c933..9977101 100644
--- a/webapp/app/partials/home.html
+++ b/webapp/app/partials/home.html
@@ -1,6 +1,6 @@
 <!--Big Background Image-->
 <div class="bg-holder">
-    <img src="/image/Himg.png" />
+    <img src="image/Himg.png" />
 </div>
 
 <!--Carousel Part-->

http://git-wip-us.apache.org/repos/asf/incubator-kylin/blob/69395e74/webapp/app/partials/projects/projects.html
----------------------------------------------------------------------
diff --git a/webapp/app/partials/projects/projects.html b/webapp/app/partials/projects/projects.html
index 6a27e2c..c7642e0 100644
--- a/webapp/app/partials/projects/projects.html
+++ b/webapp/app/partials/projects/projects.html
@@ -1,5 +1,5 @@
 <div class="page-header">
-    <button class="btn btn-primary btn-sm" ng-if="userService.hasRole('ROLE_MODELER')" ng-click="toCreateProj()"><i class="fa fa-plus"></i> Project</button>
+    <button class="btn btn-primary btn-sm" ng-if="userService.hasRole('ROLE_ADMIN')||userService.hasRole('ROLE_MODELER')&&kylinConfig.getDeployEnv()!=='PROD'" ng-click="toCreateProj()"><i class="fa fa-plus"></i> Project</button>
 </div>
 
 <div ng-if="!loading && projects.length == 0">

http://git-wip-us.apache.org/repos/asf/incubator-kylin/blob/69395e74/webapp/app/partials/query/query.html
----------------------------------------------------------------------
diff --git a/webapp/app/partials/query/query.html b/webapp/app/partials/query/query.html
index 71dd33e..4ea775f 100644
--- a/webapp/app/partials/query/query.html
+++ b/webapp/app/partials/query/query.html
@@ -12,7 +12,7 @@
             </select>
             <!--Project-->
             <a class="btn btn-xs btn-info" href="projects" tooltip="Manage Project"><i class="fa fa-gears"></i></a>
-            <a class="btn btn-xs btn-primary" style="width: 29px" tooltip="Add Project" ng-click="toCreateProj()">
+            <a class="btn btn-xs btn-primary" ng-if="userService.hasRole('ROLE_ADMIN')||userService.hasRole('ROLE_MODELER')&&kylinConfig.getDeployEnv()!=='PROD'" style="width: 29px" tooltip="Add Project" ng-click="toCreateProj()">
                 <i class="fa fa-plus"></i>
             </a>
         </div>

http://git-wip-us.apache.org/repos/asf/incubator-kylin/blob/69395e74/webapp/app/partials/tables/source_metadata.html
----------------------------------------------------------------------
diff --git a/webapp/app/partials/tables/source_metadata.html b/webapp/app/partials/tables/source_metadata.html
index d1d18f6..71eaada 100644
--- a/webapp/app/partials/tables/source_metadata.html
+++ b/webapp/app/partials/tables/source_metadata.html
@@ -12,7 +12,7 @@
             </select>
             <!--Project-->
             <a class="btn btn-xs btn-info" href="projects" tooltip="Manage Project"><i class="fa fa-gears"></i></a>
-            <a class="btn btn-xs btn-primary" style="width: 29px" tooltip="Add Project" ng-click="toCreateProj()">
+            <a class="btn btn-xs btn-primary" ng-if="userService.hasRole('ROLE_ADMIN')||userService.hasRole('ROLE_MODELER')&&kylinConfig.getDeployEnv()!=='PROD'" style="width: 29px" tooltip="Add Project" ng-click="toCreateProj()">
                 <i class="fa fa-plus"></i>
             </a>
 


[02/11] incubator-kylin git commit: rm kylinconfig in front

Posted by li...@apache.org.
rm kylinconfig in front


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

Branch: refs/heads/staging
Commit: c048ba19d3c96da038f101855961c02b35193a38
Parents: 88dff35
Author: jiazhong <ji...@ebay.com>
Authored: Thu Jan 22 21:54:22 2015 -0800
Committer: jiazhong <ji...@ebay.com>
Committed: Thu Jan 22 21:54:22 2015 -0800

----------------------------------------------------------------------
 webapp/app/js/services/kylinProperties.js | 23 -----------------------
 1 file changed, 23 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/incubator-kylin/blob/c048ba19/webapp/app/js/services/kylinProperties.js
----------------------------------------------------------------------
diff --git a/webapp/app/js/services/kylinProperties.js b/webapp/app/js/services/kylinProperties.js
deleted file mode 100644
index f1142b7..0000000
--- a/webapp/app/js/services/kylinProperties.js
+++ /dev/null
@@ -1,23 +0,0 @@
-/**
- * Created by jiazhong on 2015/1/15.
- */
-KylinApp.service('kylinConfig', function(AdminService,$log) {
-    var _config;
-    this.init = function (){
-        AdminService.config({}, function(config){
-            _config = config.config;
-        },function(e){
-            $log.error("failed to load kylin.properties"+e);
-        });
-    };
-
-    this.getProperty = function(name){
-        var keyIndex = _config.indexOf(name);
-        var keyLength = name.length;
-        var partialResult = _config.substr(keyIndex+keyLength);
-        var preValueIndex = partialResult.indexOf("=");
-        var sufValueIndex = partialResult.indexOf("\r\n");
-        return partialResult.substr(preValueIndex+1,sufValueIndex);
-
-    }
-});
\ No newline at end of file


[09/11] incubator-kylin git commit: Merge pull request #401 from janzhongi/staging

Posted by li...@apache.org.
Merge pull request #401 from janzhongi/staging

fix cube designer bug

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

Branch: refs/heads/staging
Commit: ccf8703a68baf08305e4c3ae971b69d1de4375f4
Parents: 612fb89 1936060
Author: Zhong,Jian <ji...@ebay.com>
Authored: Mon Jan 26 18:40:57 2015 -0800
Committer: Zhong,Jian <ji...@ebay.com>
Committed: Mon Jan 26 18:40:57 2015 -0800

----------------------------------------------------------------------
 webapp/app/js/controllers/cubeEdit.js  | 2 +-
 webapp/app/js/directives/directives.js | 3 ---
 2 files changed, 1 insertion(+), 4 deletions(-)
----------------------------------------------------------------------



[10/11] incubator-kylin git commit: add error log for FactDistinctColumnsJob.java

Posted by li...@apache.org.
add error log for FactDistinctColumnsJob.java


Project: http://git-wip-us.apache.org/repos/asf/incubator-kylin/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-kylin/commit/49df68a1
Tree: http://git-wip-us.apache.org/repos/asf/incubator-kylin/tree/49df68a1
Diff: http://git-wip-us.apache.org/repos/asf/incubator-kylin/diff/49df68a1

Branch: refs/heads/staging
Commit: 49df68a1e27e1d08c10b66d655431a5abc7fa8fd
Parents: ccf8703
Author: qianhao.zhou <qi...@ebay.com>
Authored: Tue Jan 27 14:18:01 2015 +0800
Committer: qianhao.zhou <qi...@ebay.com>
Committed: Tue Jan 27 14:18:01 2015 +0800

----------------------------------------------------------------------
 .../com/kylinolap/job/cmd/JavaHadoopCmd.java    |  6 +++-
 .../kylinolap/job/hadoop/AbstractHadoopJob.java | 38 ++++++++++++--------
 .../job/hadoop/cube/FactDistinctColumnsJob.java |  1 +
 3 files changed, 29 insertions(+), 16 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/incubator-kylin/blob/49df68a1/job/src/main/java/com/kylinolap/job/cmd/JavaHadoopCmd.java
----------------------------------------------------------------------
diff --git a/job/src/main/java/com/kylinolap/job/cmd/JavaHadoopCmd.java b/job/src/main/java/com/kylinolap/job/cmd/JavaHadoopCmd.java
index 12b4d2c..69fdf60 100644
--- a/job/src/main/java/com/kylinolap/job/cmd/JavaHadoopCmd.java
+++ b/job/src/main/java/com/kylinolap/job/cmd/JavaHadoopCmd.java
@@ -16,6 +16,7 @@
 
 package com.kylinolap.job.cmd;
 
+import org.apache.commons.lang3.StringUtils;
 import org.apache.hadoop.util.ToolRunner;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
@@ -56,7 +57,10 @@ public class JavaHadoopCmd implements IJobCommand {
             output.appendOutput(e.getLocalizedMessage());
             output.setExitCode(-1);
         }
-
+        final String errorLog = job.getErrorLog();
+        if (!StringUtils.isEmpty(errorLog)) {
+            output.appendOutput(errorLog);
+        }
         output.appendOutput("Command execute return code " + output.getExitCode());
 
         if (output.getExitCode() != 0) {

http://git-wip-us.apache.org/repos/asf/incubator-kylin/blob/49df68a1/job/src/main/java/com/kylinolap/job/hadoop/AbstractHadoopJob.java
----------------------------------------------------------------------
diff --git a/job/src/main/java/com/kylinolap/job/hadoop/AbstractHadoopJob.java b/job/src/main/java/com/kylinolap/job/hadoop/AbstractHadoopJob.java
index 81769e1..94ced88 100644
--- a/job/src/main/java/com/kylinolap/job/hadoop/AbstractHadoopJob.java
+++ b/job/src/main/java/com/kylinolap/job/hadoop/AbstractHadoopJob.java
@@ -19,13 +19,16 @@ package com.kylinolap.job.hadoop;
  * @author George Song (ysong1)
  * 
  */
-import java.io.File;
-import java.io.IOException;
-import java.io.InputStream;
-import java.util.ArrayList;
-import java.util.HashMap;
-import java.util.Map;
 
+import com.kylinolap.common.KylinConfig;
+import com.kylinolap.common.persistence.ResourceStore;
+import com.kylinolap.common.util.StringSplitter;
+import com.kylinolap.cube.CubeInstance;
+import com.kylinolap.cube.CubeSegment;
+import com.kylinolap.job.JobInstance;
+import com.kylinolap.job.exception.JobException;
+import com.kylinolap.job.tools.OptionsHelper;
+import com.kylinolap.metadata.model.schema.TableDesc;
 import org.apache.commons.cli.Option;
 import org.apache.commons.cli.OptionBuilder;
 import org.apache.commons.cli.Options;
@@ -47,15 +50,10 @@ import org.apache.hadoop.util.ToolRunner;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
-import com.kylinolap.common.KylinConfig;
-import com.kylinolap.common.persistence.ResourceStore;
-import com.kylinolap.common.util.StringSplitter;
-import com.kylinolap.cube.CubeInstance;
-import com.kylinolap.cube.CubeSegment;
-import com.kylinolap.job.JobInstance;
-import com.kylinolap.job.exception.JobException;
-import com.kylinolap.job.tools.OptionsHelper;
-import com.kylinolap.metadata.model.schema.TableDesc;
+import java.io.*;
+import java.util.ArrayList;
+import java.util.HashMap;
+import java.util.Map;
 
 @SuppressWarnings("static-access")
 public abstract class AbstractHadoopJob extends Configured implements Tool {
@@ -90,6 +88,16 @@ public abstract class AbstractHadoopJob extends Configured implements Tool {
         optionsHelper.printUsage(getClass().getSimpleName(), options);
     }
 
+    private final StringWriter stringWriter = new StringWriter();
+
+    public final void addErrorLog(Exception ex) {
+        ex.printStackTrace(new PrintWriter(stringWriter));
+    }
+
+    public final String getErrorLog() {
+        return stringWriter.toString();
+    }
+
     public Option[] getOptions() {
         return optionsHelper.getOptions();
     }

http://git-wip-us.apache.org/repos/asf/incubator-kylin/blob/49df68a1/job/src/main/java/com/kylinolap/job/hadoop/cube/FactDistinctColumnsJob.java
----------------------------------------------------------------------
diff --git a/job/src/main/java/com/kylinolap/job/hadoop/cube/FactDistinctColumnsJob.java b/job/src/main/java/com/kylinolap/job/hadoop/cube/FactDistinctColumnsJob.java
index 556f690..c85a5d4 100644
--- a/job/src/main/java/com/kylinolap/job/hadoop/cube/FactDistinctColumnsJob.java
+++ b/job/src/main/java/com/kylinolap/job/hadoop/cube/FactDistinctColumnsJob.java
@@ -81,6 +81,7 @@ public class FactDistinctColumnsJob extends AbstractHadoopJob {
         } catch (Exception e) {
             printUsage(options);
             log.error(e.getLocalizedMessage(), e);
+            addErrorLog(e);
             return 2;
         }
 


[07/11] incubator-kylin git commit: Merge pull request #400 from janzhongi/staging

Posted by li...@apache.org.
Merge pull request #400 from janzhongi/staging

not allow user create cube/project in PROD,add config to kylin.propertie...

Project: http://git-wip-us.apache.org/repos/asf/incubator-kylin/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-kylin/commit/612fb89c
Tree: http://git-wip-us.apache.org/repos/asf/incubator-kylin/tree/612fb89c
Diff: http://git-wip-us.apache.org/repos/asf/incubator-kylin/diff/612fb89c

Branch: refs/heads/staging
Commit: 612fb89cc408286f4e3b804d36a15cd99a356ec7
Parents: 501e2f2 69395e7
Author: Zhong,Jian <ji...@ebay.com>
Authored: Mon Jan 26 18:22:29 2015 -0800
Committer: Zhong,Jian <ji...@ebay.com>
Committed: Mon Jan 26 18:22:29 2015 -0800

----------------------------------------------------------------------
 .../java/com/kylinolap/rest/DebugTomcat.java    |  9 ++++---
 webapp/app/index.html                           |  2 +-
 webapp/app/js/controllers/admin.js              |  2 +-
 webapp/app/js/controllers/page.js               |  4 ++-
 webapp/app/js/directives/directives.js          |  3 +++
 webapp/app/js/services/kylinProperties.js       | 28 +++++++++++++++-----
 webapp/app/partials/cubes/cubes.html            |  2 +-
 webapp/app/partials/home.html                   |  2 +-
 webapp/app/partials/projects/projects.html      |  2 +-
 webapp/app/partials/query/query.html            |  2 +-
 webapp/app/partials/tables/source_metadata.html |  2 +-
 11 files changed, 41 insertions(+), 17 deletions(-)
----------------------------------------------------------------------