[GitHub] zeppelin issue #2687: [ZEPPELIN-3077] Cron scheduler is easy to get stuck wh...

2017-12-13 Thread kjmrknsn
Github user kjmrknsn commented on the issue:

https://github.com/apache/zeppelin/pull/2687
  
Travis CI turned to green by merging 
https://github.com/apache/zeppelin/pull/2703 to my branch: 
https://travis-ci.org/kjmrknsn/zeppelin/builds/315898589

I would be glad if this PR would be merged.


---


[GitHub] zeppelin issue #2687: [ZEPPELIN-3077] Cron scheduler is easy to get stuck wh...

2017-12-07 Thread kjmrknsn
Github user kjmrknsn commented on the issue:

https://github.com/apache/zeppelin/pull/2687
  
@felixcheung Thanks for your reviewing.

> to be explicitly, let's add manually -> manually by an user opening this 
notebook

I fixed it. (I used a correct phrase of `a user`.)

Thanks.


---


[GitHub] zeppelin issue #2676: [ZEPPELIN-3048] Add the option which prevents paragrap...

2017-12-07 Thread kjmrknsn
Github user kjmrknsn commented on the issue:

https://github.com/apache/zeppelin/pull/2676
  
@tinkoff-dwh The folder level permission looks nice. However, in my 
company's use case, we'd like to make a notebook readable for many users and 
restrict the user who can edit it only to the cron executing user when the cron 
schedule is set to it.


---


[GitHub] zeppelin issue #2687: [ZEPPELIN-3077] Cron scheduler is easy to get stuck wh...

2017-12-07 Thread kjmrknsn
Github user kjmrknsn commented on the issue:

https://github.com/apache/zeppelin/pull/2687
  
I'd be glad if any committers would review this PR.


---


[GitHub] zeppelin issue #2658: [ZEPPELIN-3042] updating jgit to support post-commit h...

2017-12-01 Thread kjmrknsn
Github user kjmrknsn commented on the issue:

https://github.com/apache/zeppelin/pull/2658
  
I sent a PR to fix this issue: https://github.com/apache/zeppelin/pull/2693


---


[GitHub] zeppelin pull request #2693: Downgrade JGit from 4.9.0 to 4.5.4

2017-12-01 Thread kjmrknsn
GitHub user kjmrknsn opened a pull request:

https://github.com/apache/zeppelin/pull/2693

Downgrade JGit from 4.9.0 to 4.5.4

### What is this PR for?
The version of JGit was updated to 4.9.0 at 
https://github.com/apache/zeppelin/pull/2658. 

However, this version is not support Java 7 and Travis CI test always fails 
now: https://travis-ci.org/kjmrknsn/zeppelin/builds/310104872

To fix this issue, downgrade JGit from 4.9.0 to 4.5.4 which is the latest 
JGit version which supports Java 7: 
https://projects.eclipse.org/projects/technology.jgit.

I confirmed that Travis CI test passed with JGit 4.5.4: 
https://travis-ci.org/kjmrknsn/zeppelin/builds/310107611

Now, all PRs to Zeppelin fails CI, so it's preferable that this PR is 
merged soon. 


### What type of PR is it?
[Bug Fix]

### Todos

### What is the Jira issue?

### How should this be tested?
I confirmed that Travis CI test passed with JGit 4.5.4: 
https://travis-ci.org/kjmrknsn/zeppelin/builds/310107611

### Screenshots (if appropriate)

### Questions:
* Does the licenses files need update? Yes. 
zeppelin-distribution/src/bin_license/LICENSE was updated at this PR.
* Is there breaking changes for older versions? No.
* Does this needs documentation? No.


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

$ git pull https://github.com/kjmrknsn/zeppelin ci-test-against-jgit-4.5.4

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

https://github.com/apache/zeppelin/pull/2693.patch

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

This closes #2693


commit 27b08c9d0a938dbe1e70ed27c4e6f1ba21c4dafd
Author: Keiji Yoshida <kjmrk...@gmail.com>
Date:   2017-12-01T15:55:06Z

CI Test against JGit 4.5.4




---


[GitHub] zeppelin issue #2658: [ZEPPELIN-3042] updating jgit to support post-commit h...

2017-12-01 Thread kjmrknsn
Github user kjmrknsn commented on the issue:

https://github.com/apache/zeppelin/pull/2658
  
@kokes I confirmed that CI test against JGit 4.9.0 always fails and one 
against JGit 4.5.4 passed.

## JGit 4.9.0
* comimt: 
https://github.com/kjmrknsn/zeppelin/commit/2afba274c83d4e9f4527fcde41e09c7707c89a4c
* CI test result: https://travis-ci.org/kjmrknsn/zeppelin/builds/310104872

## JGit: 4.5.4
* commit: 
https://github.com/kjmrknsn/zeppelin/commit/27b08c9d0a938dbe1e70ed27c4e6f1ba21c4dafd
* CI test result: https://travis-ci.org/kjmrknsn/zeppelin/builds/310107611 

So, I think JGit version should be 4.5.4, which is the latest version for 
Java 7: https://projects.eclipse.org/projects/technology.jgit


---


[GitHub] zeppelin issue #2658: [ZEPPELIN-3042] updating jgit to support post-commit h...

2017-12-01 Thread kjmrknsn
Github user kjmrknsn commented on the issue:

https://github.com/apache/zeppelin/pull/2658
  
And it seems that this change causes the failure of the test 
https://travis-ci.org/kokes/zeppelin/jobs/299146854 because Zeppelin process 
didn't respond to any requests.


---


[GitHub] zeppelin issue #2658: [ZEPPELIN-3042] updating jgit to support post-commit h...

2017-12-01 Thread kjmrknsn
Github user kjmrknsn commented on the issue:

https://github.com/apache/zeppelin/pull/2658
  
I noticed that the JGit minimum execution environment became Java 8 from 
JGit 4.6. 

https://projects.eclipse.org/projects/technology.jgit/releases/4.6
> Update JGit minimum execution environment to JavaSE-1.8

When I ran Zeppelin by Java 7, the following message was shown and Zeppelin 
could not be launched.

```
Caused by: java.lang.UnsupportedClassVersionError: 
org/eclipse/jgit/lib/Repository : Unsupported major.minor version 52.0
at java.lang.ClassLoader.defineClass1(Native Method)
at java.lang.ClassLoader.defineClass(ClassLoader.java:803)
at 
java.security.SecureClassLoader.defineClass(SecureClassLoader.java:142)
at java.net.URLClassLoader.defineClass(URLClassLoader.java:442)
at java.net.URLClassLoader.access$100(URLClassLoader.java:64)
at java.net.URLClassLoader$1.run(URLClassLoader.java:354)
at java.net.URLClassLoader$1.run(URLClassLoader.java:348)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(URLClassLoader.java:347)
at java.lang.ClassLoader.loadClass(ClassLoader.java:425)
at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:312)
at java.lang.ClassLoader.loadClass(ClassLoader.java:358)
at java.lang.Class.forName0(Native Method)
at java.lang.Class.forName(Class.java:195)
at 
org.apache.zeppelin.notebook.repo.NotebookRepoSync.(NotebookRepoSync.java:80)
at 
org.apache.zeppelin.server.ZeppelinServer.(ZeppelinServer.java:127)
at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native 
Method)
at 
sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:57)
at 
sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
at java.lang.reflect.Constructor.newInstance(Constructor.java:526)
at 
org.glassfish.hk2.utilities.reflection.ReflectionHelper.makeMe(ReflectionHelper.java:1350)
at org.jvnet.hk2.internal.Utilities.justCreate(Utilities.java:1009)
... 30 more
```

Is it OK for Zeppelin not to support Java 7?


---


[GitHub] zeppelin issue #2676: [ZEPPELIN-3048] Add the option which prevents paragrap...

2017-11-30 Thread kjmrknsn
Github user kjmrknsn commented on the issue:

https://github.com/apache/zeppelin/pull/2676
  
@felixcheung @Leemoonsoo 

Then, how about the following solution which fixes this and #2671 together?

* Add the `zeppelin.notebook.cron.secure` property to Zeppelin 
Configuration.
* If `zeppelin.notebook.cron.secure` is set to `true`, 
   * A cron executing user cannot be set to other users than the login user
   * If a cron schedule is set to a notebook, its owners and writers are 
demoted to runners and the login user becomes its owner and writer.


---


[GitHub] zeppelin issue #2676: [ZEPPELIN-3048] Add the option which prevents paragrap...

2017-11-28 Thread kjmrknsn
Github user kjmrknsn commented on the issue:

https://github.com/apache/zeppelin/pull/2676
  
@Leemoonsoo 

> In case of a note is cron scheduled and doesn't want anyone else edit the 
notebook other than the cron execution user, wouldn't 'owner' of note remove 
users from 'writers' and add them in 'readers'?

Yes, ideally, every Zeppelin user should do so. However, it's not realistic 
to force every Zeppelin user to do so because almost all of them do not realize 
this kind of security issue, it takes a huge effort to do so if there are a lot 
of users and notebooks, or they might forget to do so. Thus, it is reasonable 
and secure to do this kind of permission control at the Zeppelin system side 
not the Zeppelin user side.


---


[GitHub] zeppelin issue #2687: [ZEPPELIN-3077] Cron scheduler is easy to get stuck wh...

2017-11-28 Thread kjmrknsn
Github user kjmrknsn commented on the issue:

https://github.com/apache/zeppelin/pull/2687
  
@felixcheung I added the documentation page 
`docs/usage/other_features/cron_scheduler.md` to this PR. I also added the 
explanation about this documentation to the `Questions:` section of the top 
comment of this PR. Thanks.


---


[GitHub] zeppelin issue #2687: [ZEPPELIN-3077] Cron scheduler is easy to get stuck wh...

2017-11-27 Thread kjmrknsn
Github user kjmrknsn commented on the issue:

https://github.com/apache/zeppelin/pull/2687
  
`logger.info("execution ... ");` has been changed to 
`logger.warn("execution ... ");`. Thanks.


---


[GitHub] zeppelin issue #2687: [ZEPPELIN-3077] Cron scheduler is easy to get stuck wh...

2017-11-27 Thread kjmrknsn
Github user kjmrknsn commented on the issue:

https://github.com/apache/zeppelin/pull/2687
  
@felixcheung 

> so if someone has a lot of notebook scheduled and running (from such 
schedule) at the same time, would it also cause quartz to run out of thread?

Yes, but I think jobs are queued and they will be executed when one of the 
quartz threads finish the current job.

Zeppelin administrators can change the number of the quartz threads whose 
default value is 10 by deploying the 
[quartz.properties](https://github.com/quartz-scheduler/quartz/blob/master/quartz-core/src/main/resources/org/quartz/quartz.properties)
 file on the Zeppelin classpath.


---


[GitHub] zeppelin issue #2687: [ZEPPELIN-3077] Cron scheduler is easy to get stuck wh...

2017-11-27 Thread kjmrknsn
Github user kjmrknsn commented on the issue:

https://github.com/apache/zeppelin/pull/2687
  
All of the CI tests were passed: 
https://travis-ci.org/kjmrknsn/zeppelin/builds/308212514


---


[GitHub] zeppelin issue #2687: [ZEPPELIN-3077] Cron scheduler is easy to get stuck wh...

2017-11-27 Thread kjmrknsn
Github user kjmrknsn commented on the issue:

https://github.com/apache/zeppelin/pull/2687
  
@Leemoonsoo Thanks for your checking and suggestion. I added a test case to 
`NotebookTest.java`.


---


[GitHub] zeppelin pull request #2687: [ZEPPELIN-3077] Cron scheduler is easy to get s...

2017-11-27 Thread kjmrknsn
GitHub user kjmrknsn opened a pull request:

https://github.com/apache/zeppelin/pull/2687

[ZEPPELIN-3077] Cron scheduler is easy to get stuck when one of the cron 
jobs takes long time or gets stuck

### What is this PR for?
The cron scheduler is easy to get stuck when one of the cron jobs takes 
long time or gets stuck.

I sometimes come across the issue that the cron scheduler stops working 
suddenly. According to the thread dump of ZeppelinServer, all of the 
DefaultQuartzScheduler_Worker threads were waiting for the job's completion and 
there was no thread to launch a new job.

Here is the contents of the thread dump:

```
"DefaultQuartzScheduler_Worker-10" #76 prio=5 os_prio=0 
tid=0x7fb41d3b4000 nid=0x1b521 sleeping[0x7fb3daef1000]
   java.lang.Thread.State: TIMED_WAITING (sleeping)
at java.lang.Thread.sleep(Native Method)
at 
org.apache.zeppelin.notebook.Notebook$CronJob.execute(Notebook.java:889)
at org.quartz.core.JobRunShell.run(JobRunShell.java:202)
at 
org.quartz.simpl.SimpleThreadPool$WorkerThread.run(SimpleThreadPool.java:573)
- locked <0xc0a7dbf0> (a java.lang.Object)

   Locked ownable synchronizers:
- None

"DefaultQuartzScheduler_Worker-9" #75 prio=5 os_prio=0 
tid=0x7fb41d3b2000 nid=0x1b520 waiting on condition [0x7fb3daff2000]
   java.lang.Thread.State: TIMED_WAITING (sleeping)
at java.lang.Thread.sleep(Native Method)
at 
org.apache.zeppelin.notebook.Notebook$CronJob.execute(Notebook.java:889)
at org.quartz.core.JobRunShell.run(JobRunShell.java:202)
at 
org.quartz.simpl.SimpleThreadPool$WorkerThread.run(SimpleThreadPool.java:573)
- locked <0xc0a7a470> (a java.lang.Object)

   Locked ownable synchronizers:
- None

...

"DefaultQuartzScheduler_Worker-2" #68 prio=5 os_prio=0 
tid=0x7fb41d3c8800 nid=0x1b519 waiting on condition [0x7fb3da473000]
   java.lang.Thread.State: TIMED_WAITING (sleeping)
at java.lang.Thread.sleep(Native Method)
at 
org.apache.zeppelin.notebook.Notebook$CronJob.execute(Notebook.java:889)
at org.quartz.core.JobRunShell.run(JobRunShell.java:202)
at 
org.quartz.simpl.SimpleThreadPool$WorkerThread.run(SimpleThreadPool.java:573)
- locked <0xc0a7a7b0> (a java.lang.Object)

   Locked ownable synchronizers:
- None

"DefaultQuartzScheduler_Worker-1" #67 prio=5 os_prio=0 
tid=0x7fb41d3cc800 nid=0x1b518 waiting on condition [0x7fb3da372000]
   java.lang.Thread.State: TIMED_WAITING (sleeping)
at java.lang.Thread.sleep(Native Method)
at 
org.apache.zeppelin.notebook.Notebook$CronJob.execute(Notebook.java:889)
at org.quartz.core.JobRunShell.run(JobRunShell.java:202)
at 
org.quartz.simpl.SimpleThreadPool$WorkerThread.run(SimpleThreadPool.java:573)
- locked <0xc0a7dd90> (a java.lang.Object)

   Locked ownable synchronizers:
- None
```

The above thread dump says that all of the worker threads get stuck at 
https://github.com/apache/zeppelin/blob/v0.7.3/zeppelin-zengine/src/main/java/org/apache/zeppelin/notebook/Notebook.java#L889.

One way to reproduce this kind of issue is creating a paragraph whose 
status is "READY" and "disable run". That makes the paragraph status "READY" 
permanently and `note.isTerminated()` never turns to `true`.

To fix this issue, the following two improvements has been made at this PR:

1. Remove the unnecessary `while (!note.isTerminated()) { ... }` block 
because the execution of all of the paragraphs is finished after 
`note.runAll()`.
2. Skip the cron execution if there is a running or pending paragraph. That 
prevents the Zeppelin cron scheduler from getting stuck by the long running 
paragraph whose execution duration is greater than the cron execution cycle.

### What type of PR is it?
[Improvement]

### Todos

### What is the Jira issue?
https://issues.apache.org/jira/browse/ZEPPELIN-3077

### How should this be tested?
* Tested manually.
1. The cron scheduler does not get stuck if there is a paragraph whose 
status is "READY" and "disable run".
2. The following message is printed on the log file when the cron job 
is launched while the previous cron job still has been running.
* `execution of the cron job is skipped because there is a running 
or pending paragraph (note id: X)`

### Screenshots (if appropriate)

### Questions:
* Does the licenses files need update? No.
* Is there breaking changes for older version

[GitHub] zeppelin issue #2682: [ZEPPELIN-3066] Make the welcome header of the homepag...

2017-11-22 Thread kjmrknsn
Github user kjmrknsn commented on the issue:

https://github.com/apache/zeppelin/pull/2682
  
@felixcheung 

> can you do a screen shot of anonymous access where only the header is 
shown?

I added the screen shots to the "How should this be tested?" section of the 
top comment.



---


[GitHub] zeppelin issue #2682: [ZEPPELIN-3066] Make the welcome header of the homepag...

2017-11-21 Thread kjmrknsn
Github user kjmrknsn commented on the issue:

https://github.com/apache/zeppelin/pull/2682
  
@Leemoonsoo We are also using the customizing homepage feature. However, in 
our company's use case, anonymous access is not allowed and the custom homepage 
notebook is shown to users only after they log in to Zeppelin. We would like to 
show a custom homepage to users who have not yet had their Zeppelin account 
(LDAP account) so that we can introduce them how to create their own Zeppelin 
account (LDAP account).


---


[GitHub] zeppelin issue #2677: [ZEPPELIN-3062] Removes ctrl+s default behavior from n...

2017-11-20 Thread kjmrknsn
Github user kjmrknsn commented on the issue:

https://github.com/apache/zeppelin/pull/2677
  
I tested that `Command` + `s` was ignored successfully on Mac.


---


[GitHub] zeppelin issue #2682: [ZEPPELIN-3066] Make the welcome header of the homepag...

2017-11-20 Thread kjmrknsn
Github user kjmrknsn commented on the issue:

https://github.com/apache/zeppelin/pull/2682
  
Travis CI status turned to green: 
https://travis-ci.org/kjmrknsn/zeppelin/builds/305087756


---


[GitHub] zeppelin pull request #2680: [ZEPPELIN-3066] Make the welcome header of the ...

2017-11-20 Thread kjmrknsn
Github user kjmrknsn closed the pull request at:

https://github.com/apache/zeppelin/pull/2680


---


[GitHub] zeppelin issue #2680: [ZEPPELIN-3066] Make the welcome header of the homepag...

2017-11-20 Thread kjmrknsn
Github user kjmrknsn commented on the issue:

https://github.com/apache/zeppelin/pull/2680
  
This PR is replaced with https://github.com/apache/zeppelin/pull/2682.


---


[GitHub] zeppelin pull request #2682: [ZEPPELIN-3066] Make the welcome header of the ...

2017-11-20 Thread kjmrknsn
GitHub user kjmrknsn opened a pull request:

https://github.com/apache/zeppelin/pull/2682

[ZEPPELIN-3066] Make the welcome header of the homepage for non login users 
customizable

### What is this PR for?
Make the welcome header of the homepage for non login users customizable.

In our company's use case, we would like to customize the contents of the 
welcome header of the homepage for non login users so that we can introduce how 
to create an LDAP account to login Zeppelin to them.

### What type of PR is it?
[Improvement]

### Todos

### What is the Jira issue?
https://issues.apache.org/jira/browse/ZEPPELIN-3066


### How should this be tested?
* Tested manually.
* I confirmed that the content of the HTML file whose path was set by 
`zeppelin.homescreen.header` was shown on the top of the home screen page.
* https://user-images.githubusercontent.com/31149688/33010922-953cec1a-ce1f-11e7-9aad-b7f953736036.png;>
* I also confirmed that if `zeppelin.homescreen.header` was not set, 
the default contents (`app/home/header.html`) was shown.
* https://user-images.githubusercontent.com/31149688/33010954-b59f5b64-ce1f-11e7-9b1b-481ee9ba207f.png;>

### Screenshots (if appropriate)

### Questions:
* Does the licenses files need update? No.
* Is there breaking changes for older versions? No.
* Does this needs documentation? Yes. 
`docs/setup/operation/configuration.md` was updated.


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

$ git pull https://github.com/kjmrknsn/zeppelin ZEPPELIN-3066-2

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

https://github.com/apache/zeppelin/pull/2682.patch

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

This closes #2682


commit c611526ed3c6d3c618e7435db22c95822f02ffbe
Author: Keiji Yoshida <kjmrk...@gmail.com>
Date:   2017-11-21T03:39:59Z

[ZEPPELIN-3066] Make the welcome header of the homepage for non login users 
customizable




---


[GitHub] zeppelin issue #2681: [ZEPPELIN-2995] "auto-restart interpreter on cron exec...

2017-11-20 Thread kjmrknsn
Github user kjmrknsn commented on the issue:

https://github.com/apache/zeppelin/pull/2681
  
@Leemoonsoo The unit test was added to `NotebookTest.java`. Thanks.


---


[GitHub] zeppelin issue #2681: [ZEPPELIN-2995] "auto-restart interpreter on cron exec...

2017-11-20 Thread kjmrknsn
Github user kjmrknsn commented on the issue:

https://github.com/apache/zeppelin/pull/2681
  
@Leemoonsoo I'll try to add a test. Thanks.


---


[GitHub] zeppelin issue #1302: [ZEPPELIN-1306] Interpreter restarts on a note.

2017-11-20 Thread kjmrknsn
Github user kjmrknsn commented on the issue:

https://github.com/apache/zeppelin/pull/1302
  
The bug that "auto-restart interpreter on cron execution" restarts all 
interpreters will be fixed by https://github.com/apache/zeppelin/pull/2681.


---


[GitHub] zeppelin pull request #2681: [ZEPPELIN-2995] "auto-restart interpreter on cr...

2017-11-20 Thread kjmrknsn
GitHub user kjmrknsn opened a pull request:

https://github.com/apache/zeppelin/pull/2681

[ZEPPELIN-2995] "auto-restart interpreter on cron execution" should restart 
interpreter to specific note, not all interpreters

### What is this PR for?
Make "auto-restart interpreter on cron execution" restart interpreter to 
specific note, not all interpreters.
This issue was reported by 
https://github.com/apache/zeppelin/pull/1302#issuecomment-336521420.

### What type of PR is it?
[Bug Fix]

### Todos

### What is the Jira issue?
* https://issues.apache.org/jira/browse/ZEPPELIN-2995

### How should this be tested?
* Tested Manually.
   * I confirmed that the "auto-restart interpreter on cron execution" 
feature restarted only the interpreters which are specific to the notebook.

### Screenshots (if appropriate)

### Questions:
* Does the licenses files need update? No.
* Is there breaking changes for older versions? No.
* Does this needs documentation? No.

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

$ git pull https://github.com/kjmrknsn/zeppelin ZEPPELIN-2995

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

https://github.com/apache/zeppelin/pull/2681.patch

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

This closes #2681


commit f7b528d390f4464e8011d22d9bed60e0ff176a09
Author: Keiji Yoshida <kjmrk...@gmail.com>
Date:   2017-11-20T13:54:39Z

[ZEPPELIN-2995] "auto-restart interpreter on cron execution" should restart 
interpreter to specific note, not all interpreters




---


[GitHub] zeppelin pull request #2680: [ZEPPELIN-3066] Make the welcome header of the ...

2017-11-20 Thread kjmrknsn
GitHub user kjmrknsn opened a pull request:

https://github.com/apache/zeppelin/pull/2680

[ZEPPELIN-3066] Make the welcome header of the homepage for non login users 
customizable

### What is this PR for?
Make the welcome header of the homepage for non login users customizable.

In our company's use case, we would like to customize the contents of the 
welcome header of the homepage for non login users so that we can introduce how 
to create an LDAP account to login Zeppelin to them.

### What type of PR is it?
[Improvement]

### Todos

### What is the Jira issue?
https://issues.apache.org/jira/browse/ZEPPELIN-3066


### How should this be tested?
* Tested manually.
* I confirmed that the content of the HTML file whose path was set by 
`zeppelin.homescreen.header` was shown on the top of the home screen page.
* https://user-images.githubusercontent.com/31149688/33010922-953cec1a-ce1f-11e7-9aad-b7f953736036.png;>
* I also confirmed that if `zeppelin.homescreen.header` was not set, 
the default contents (`app/home/header.html`) was shown.
* https://user-images.githubusercontent.com/31149688/33010954-b59f5b64-ce1f-11e7-9b1b-481ee9ba207f.png;>

### Screenshots (if appropriate)

### Questions:
* Does the licenses files need update? No.
* Is there breaking changes for older versions? No.
* Does this needs documentation? Yes. 
`docs/setup/operation/configuration.md` was updated.


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

$ git pull https://github.com/kjmrknsn/zeppelin ZEPPELIN-3066

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

https://github.com/apache/zeppelin/pull/2680.patch

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

This closes #2680


commit 3bc91488587152041bb2185c36682994a51a582f
Author: Keiji Yoshida <kjmrk...@gmail.com>
Date:   2017-11-20T04:58:39Z

[ZEPPELIN-3066] Make the welcome header of the homepage for non login users 
customizable




---


[GitHub] zeppelin issue #2676: [ZEPPELIN-3048] Add the option which prevents paragrap...

2017-11-18 Thread kjmrknsn
Github user kjmrknsn commented on the issue:

https://github.com/apache/zeppelin/pull/2676
  
@felixcheung I'm managing Zeppelin with a Hadoop cluster which data access 
control is introduced to via Apache Ranger because my company needs to control 
each data access to our Hadoop cluster strictly. I found only the following 2 
security issues about the Zeppelin cron scheduler: 

1. https://github.com/apache/zeppelin/pull/2671
2. https://github.com/apache/zeppelin/pull/2676 (This PR)

In my opinion, it's enough to fix these 2 issues instead of reconsider the 
whole access control of Zeppelin.


---


[GitHub] zeppelin issue #2671: [ZEPPELIN-3045] Add the option which prevents the cron...

2017-11-18 Thread kjmrknsn
Github user kjmrknsn commented on the issue:

https://github.com/apache/zeppelin/pull/2671
  
@felixcheung @zjffdu 

> we still want a check in the backend right, since this is a 
security/authentication issue.

OK, thanks.  So, I won't rewrite this PR to modify frontend. I'll reply to 
your review comments.



---


[GitHub] zeppelin issue #2671: [ZEPPELIN-3045] Add the option which prevents the cron...

2017-11-17 Thread kjmrknsn
Github user kjmrknsn commented on the issue:

https://github.com/apache/zeppelin/pull/2671
  
@felixcheung @zjffdu Thanks for your reviewing. I'll rewrite this PR to 
modify frontend instead of backend as @zjffdu said at the beginning of next 
week.


---


[GitHub] zeppelin issue #2671: [ZEPPELIN-3045] Add the option which prevents the cron...

2017-11-17 Thread kjmrknsn
Github user kjmrknsn commented on the issue:

https://github.com/apache/zeppelin/pull/2671
  
> Would it be much easier that we can just do not allow user to set cron 
executing user in frontend when this 
zeppelin.notebook.cronExecutingUser.loginUserOnly is true ? So that there would 
be less change in backend.

It seems nice. I'll try that later.


---


[GitHub] zeppelin pull request #2676: [ZEPPELIN-3048] Add the option which prevents p...

2017-11-16 Thread kjmrknsn
GitHub user kjmrknsn opened a pull request:

https://github.com/apache/zeppelin/pull/2676

[ZEPPELIN-3048] Add the option which prevents paragraphs from being edited 
while their notebook is cron scheduled

### What is this PR for?

Add the option which prevents paragraphs from being edited by users other 
than the cron executing user while their notebook is cron scheduled.

Now, the cron scheduled notebook's paragraphs can be edited by users who 
have the "writer" authority. That could cause a security issue when the Hadoop 
cluster has data access control (managed by Apache Ranger and so forth) because 
the "writer" users can abuse the access right of the "cron executing user" and 
can access the data which they ordinary cannot access by updating the 
paragraphs whose notebook is cron scheduled and its cron executing user is set 
to other users.

Thus, under the circumstances strict data access control is required, it is 
necessary to add the option to Zeppelin, that prevents paragraphs from being 
edited by users other than the cron executing user while their notebook is cron 
scheduled.

### What type of PR is it?
[Improvement]

### Todos

### What is the Jira issue?
https://issues.apache.org/jira/browse/ZEPPELIN-3048

### How should this be tested?
* Tested manually.
* I confirmed that when `zeppelin.notebook.cron.restrictEdit` was set 
to `true` and users other than the cron executing user tried to edit the 
paragraph whose interpreter was not on 
`zeppelin.notebook.cron.editableInterpreters`,  the "Insufficient privileged" 
dialog was shown and the paragraph was not updated.
* https://user-images.githubusercontent.com/31149688/32928980-55ea34ca-cb98-11e7-9798-af36f98a99d8.png;>


### Screenshots (if appropriate)

### Questions:
* Does the licenses files need update? No.
* Is there breaking changes for older versions? No.
* Does this needs documentation? Yes. 
`docs/setup/operation/configuration.md` was updated.

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

$ git pull https://github.com/kjmrknsn/zeppelin ZEPPELIN-3048

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

https://github.com/apache/zeppelin/pull/2676.patch

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

This closes #2676


commit c73c234e2783d038cb65c8e2545b6bc00119765e
Author: Keiji Yoshida <kjmrk...@gmail.com>
Date:   2017-11-16T06:37:27Z

[ZEPPELIN-3048] Add the option which prevents paragraphs from being edited 
while their notebook is cron scheduled




---


[GitHub] zeppelin issue #2671: [ZEPPELIN-3045] Add the option which prevents the cron...

2017-11-16 Thread kjmrknsn
Github user kjmrknsn commented on the issue:

https://github.com/apache/zeppelin/pull/2671
  
The default value of `zeppelin.notebook.cronExecutingUser.loginUserOnly` 
was changed to `true`. The Commits are squashed.


---


[GitHub] zeppelin issue #2673: [ZEPPELIN-3054] Update conf/shiro.ini.template so that...

2017-11-15 Thread kjmrknsn
Github user kjmrknsn commented on the issue:

https://github.com/apache/zeppelin/pull/2673
  
The build result on Travis CI turned to green: 
https://travis-ci.org/kjmrknsn/zeppelin/builds/302858138


---


[GitHub] zeppelin pull request #2673: [ZEPPELIN-3054] Update conf/shiro.ini.template ...

2017-11-15 Thread kjmrknsn
GitHub user kjmrknsn opened a pull request:

https://github.com/apache/zeppelin/pull/2673

[ZEPPELIN-3054] Update conf/shiro.ini.template so that non-admin users can 
restart interpreters on a notebook page

### What is this PR for?
On the default configuration of `conf/shiro.ini.template`, non admin users 
cannot restart interpreters on their notebook pages because the path 
`/api/interpreter/setting/restart/**` is not allowed to being accessed by non 
admin users.

https://user-images.githubusercontent.com/31149688/32875326-b0d1bf66-cada-11e7-98b7-6fd058cff3f6.png;>

It is convenient that all authenticated users can restart interpreters on 
their notebook pages by default, so the following line should be inserted into 
conf/shiro.ini.template:

```
/api/interpreter/setting/restart/** = authc
```

### What type of PR is it?
[Improvement]

### Todos

### What is the Jira issue?
https://issues.apache.org/jira/browse/ZEPPELIN-3054

### How should this be tested?
* Tested manually. I confirmed that non admin users can restart 
interpreters on a notebook page but still cannot access to the interpreter 
settings page by using `conf/shiro.ini.template`.

### Screenshots (if appropriate)

### Questions:
* Does the licenses files need update? No.
* Is there breaking changes for older versions? No.
* Does this needs documentation? No.

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

$ git pull https://github.com/kjmrknsn/zeppelin ZEPPELIN-3054

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

https://github.com/apache/zeppelin/pull/2673.patch

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

This closes #2673


commit 37e736d8b8981b52e48131661c22eebfd66f0868
Author: Keiji Yoshida <kjmrk...@gmail.com>
Date:   2017-11-16T05:28:43Z

[ZEPPELIN-3054] Update conf/shiro.ini.template so that non-admin users can 
restart interpreters on a notebook page




---


[GitHub] zeppelin pull request #2672: Fix typo (isNotebokPublic -> isNotebookPublic)

2017-11-15 Thread kjmrknsn
GitHub user kjmrknsn opened a pull request:

https://github.com/apache/zeppelin/pull/2672

Fix typo (isNotebokPublic -> isNotebookPublic)

### What is this PR for?
Fix typo (isNotebokPublic -> isNotebookPublic)

### What type of PR is it?
[Refactoring]

### Todos

### What is the Jira issue?

### How should this be tested?
* By unit tests

### Screenshots (if appropriate)

### Questions:
* Does the licenses files need update? No.
* Is there breaking changes for older versions? No.
* Does this needs documentation? No.


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

$ git pull https://github.com/kjmrknsn/zeppelin feature/fix-typo

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

https://github.com/apache/zeppelin/pull/2672.patch

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

This closes #2672


commit c131dd9c11d1c43abe8b4832a62e7c735ba8221b
Author: Keiji Yoshida <kjmrk...@gmail.com>
Date:   2017-11-15T16:30:29Z

Fix typo (isNotebokPublic -> isNotebookPublic)




---


[GitHub] zeppelin issue #2671: [ZEPPELIN-3045] Add the option which prevents the cron...

2017-11-15 Thread kjmrknsn
Github user kjmrknsn commented on the issue:

https://github.com/apache/zeppelin/pull/2671
  
The build result on Travis CI turned to green by rebuilding: 
https://travis-ci.org/kjmrknsn/zeppelin/builds/302473619


---


[GitHub] zeppelin issue #2667: [ZEPPELIN-3049] Add the notebook id and user name to t...

2017-11-14 Thread kjmrknsn
Github user kjmrknsn commented on the issue:

https://github.com/apache/zeppelin/pull/2667
  
@zjffdu OK. Thanks for your advice.


---


[GitHub] zeppelin issue #2667: [ZEPPELIN-3049] Add the notebook id and user name to t...

2017-11-14 Thread kjmrknsn
Github user kjmrknsn commented on the issue:

https://github.com/apache/zeppelin/pull/2667
  
CI via Jenkins is still pending but CI on Travis CI succeeded: 
https://travis-ci.org/kjmrknsn/zeppelin/builds/301840276


---


[GitHub] zeppelin pull request #2667: [ZEPPELIN-3049] Add the notebook id and user na...

2017-11-14 Thread kjmrknsn
GitHub user kjmrknsn opened a pull request:

https://github.com/apache/zeppelin/pull/2667

[ZEPPELIN-3049] Add the notebook id and user name to the paragraph running 
log

### What is this PR for?
Add the notebook id and user name to the paragraph running log so that 
Zeppelin administrators can check who ran which notebook's paragraph.


### What type of PR is it?
[Improvement]

### Todos

### What is the Jira issue?
* https://issues.apache.org/jira/browse/ZEPPELIN-3049

### How should this be tested?
* Tested manually
* I confirmed that the following logs are printed:
* `INFO [2017-11-14 17:19:36,917] ({pool-2-thread-2} 
Paragraph.java[jobRun]:381) - Run paragraph [paragraph_id: 
20171114-171822_2006383248, interpreter: md, note_id: 2CZQ23DM7, user: user1]`
* `INFO [2017-11-14 17:50:59,803] ({pool-2-thread-2} 
Paragraph.java[jobRun]:381) - Run paragraph [paragraph_id: 
20171101-170859_1328485804, interpreter: md, note_id: 2CYVGQ2WW, user: 
anonymous]`

### Screenshots (if appropriate)

### Questions:
* Does the licenses files need update? No
* Is there breaking changes for older versions? No
* Does this needs documentation? No

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

$ git pull https://github.com/kjmrknsn/zeppelin ZEPPELIN-3049

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

https://github.com/apache/zeppelin/pull/2667.patch

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

This closes #2667


commit 970256956a4357c6753ec281dad86b33cbd2d02b
Author: Keiji Yoshida <kjmrk...@gmail.com>
Date:   2017-11-14T07:50:55Z

[ZEPPELIN-3049] Add the notebook id and user name to the paragraph running 
log




---


[GitHub] zeppelin issue #2640: [ZEPPELIN-3022] The "Default Interpreter" select box o...

2017-11-02 Thread kjmrknsn
Github user kjmrknsn commented on the issue:

https://github.com/apache/zeppelin/pull/2640
  
@Leemoonsoo The builds are rerun and passed. Thanks.


---


[GitHub] zeppelin pull request #2640: [ZEPPELIN-3022] The "Default Interpreter" selec...

2017-11-01 Thread kjmrknsn
GitHub user kjmrknsn opened a pull request:

https://github.com/apache/zeppelin/pull/2640

[ZEPPELIN-3022] The "Default Interpreter" select box on the "Create new 
note" modal dialog has no contents when it is opened via the "Create new note" 
link on ${ZEPPELIN_HOME}/webapps/webapp/app/home/notebook.html

### What is this PR for?
The "Default Interpreter" select box on the "Create new note" modal dialog 
has no contents when it is opened via the "Create new note" link on $
{ZEPPELIN_HOME}/webapps/webapp/app/home/notebook.html.

Fix $
{ZEPPELIN_HOME}/webapps/webapp/app/home/notebook.html so that 
NoteCreateCtrl.getInterpreterSettings() is invoked when the "Create new note" 
link is clicked.

### What type of PR is it?
[Bug Fix]

### Todos

### What is the Jira issue?
* https://issues.apache.org/jira/browse/ZEPPELIN-3022

### How should this be tested?
* Tested manually
* Before: "Default Interpreter" select box has no options
* https://user-images.githubusercontent.com/31149688/32265997-daaad0ba-bf28-11e7-92d0-b0d53db25d7f.png;>
* After: "Default Interpreter" select box has options successfully
* https://user-images.githubusercontent.com/31149688/32266019-fcf4a5e2-bf28-11e7-8be3-7b02ace2d613.png;>

### Screenshots (if appropriate)

### Questions:
* Does the licenses files need update? No
* Is there breaking changes for older versions? No
* Does this needs documentation? No


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

$ git pull https://github.com/kjmrknsn/zeppelin ZEPPELIN-3022

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

https://github.com/apache/zeppelin/pull/2640.patch

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

This closes #2640


commit ef4031de439fe895c5ea29dae9a24a21c776573f
Author: Keiji Yoshida <kjmrk...@gmail.com>
Date:   2017-11-01T06:02:18Z

[ZEPPELIN-3022] The "Default Interpreter" select box on the "Create new 
note" modal dialog has no contents when it is opened via the "Create new note" 
link on ${ZEPPELIN_HOME}/webapps/webapp/app/home/notebook.html




---


[GitHub] zeppelin issue #2598: [ZEPPELIN-2950] Support Ceph as a notebook storage

2017-09-29 Thread kjmrknsn
Github user kjmrknsn commented on the issue:

https://github.com/apache/zeppelin/pull/2598
  
@Leemoonsoo Thanks for your review. I added the property of 
`ZEPPELIN_NOTEBOOK_S3_SIGNEROVERRIDE` to configuration.md: 
https://github.com/apache/zeppelin/pull/2598/files#diff-d86fb0bb17c918e22cb888ebfe0ff1cc

(Commits were squashed.)


---


[GitHub] zeppelin pull request #2598: Support Ceph as a notebook storage

2017-09-25 Thread kjmrknsn
GitHub user kjmrknsn opened a pull request:

https://github.com/apache/zeppelin/pull/2598

Support Ceph as a notebook storage

### What is this PR for?
Make Zeppelin support Ceph as a notebook storage.

Ceph has APIs which are compatible with AWS S3 APIs. However, it supports 
only AWS Signature V2 and GetObject requests of aws-sdk-java use V4 by default: 
https://github.com/aws/aws-sdk-java/issues/372

According to 
https://github.com/aws/aws-sdk-java/issues/372#issuecomment-137299691 , the 
Zeppelin configuration of `zeppelin.notebook.s3.signerOverride` is added to 
make the `signerOverride` field of a `ClientConfiguration` instance 
configurable.

### What type of PR is it?
[Improvement]

### Todos
* [ ] - Task

### What is the Jira issue?
* https://issues.apache.org/jira/browse/ZEPPELIN-2950

### How should this be tested?
Tested manually.

### Screenshots (if appropriate)

### Questions:
* Does the licenses files need update? No
* Is there breaking changes for older versions? No
* Does this needs documentation? No


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

$ git pull https://github.com/kjmrknsn/zeppelin feature/ceph-support

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

https://github.com/apache/zeppelin/pull/2598.patch

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

This closes #2598


commit 0fadb86db8055ee34d5bf401bedc3ceff3183d58
Author: Keiji Yoshida <kjmrk...@gmail.com>
Date:   2017-09-25T12:03:54Z

Support Ceph as a notebook storage




---