[GitHub] zeppelin pull request #2544: [ZEPPELIN-2724] Another Attempt to solve the de...
Github user sadhen closed the pull request at: https://github.com/apache/zeppelin/pull/2544 ---
[GitHub] zeppelin pull request #2539: [ZEPPELIN-2863] change notebook-authorization.j...
Github user sadhen closed the pull request at: https://github.com/apache/zeppelin/pull/2539 ---
[GitHub] zeppelin issue #2544: [ZEPPELIN-2724] Another Attempt to solve the dead lock...
Github user sadhen commented on the issue: https://github.com/apache/zeppelin/pull/2544 No, this PR is for the master, we recently upgraded from 0.6.0 to master. Still to be confirmed and verified. However, we are running my PR in production for over 50 analysts (we mainly use Zeppelin as a platform for analysts to write and run Spark SQL query). It works well. --- If your project is set up for it, you can reply to this email and have your reply appear on GitHub as well. If your project does not have this feature enabled and wishes so, or if the feature is enabled but not working, please contact infrastructure at infrastruct...@apache.org or file a JIRA ticket with INFRA. ---
[GitHub] zeppelin issue #2539: [ZEPPELIN-2863] change notebook-authorization.json and...
Github user sadhen commented on the issue: https://github.com/apache/zeppelin/pull/2539 @zjffdu It won't satisfy my need. You may understand my concerns when you start dockerizing Zeppelin. And these days, I encounter another dockerization problem. If I put interpreter and server processes all in one container, the interpreter process will run out of memory. My final solution is deploying interpreters elsewhere. ``` ERROR [2017-08-24 00:12:17,391] ({Thread-0} TThreadPoolServer.java[serve]:194) - ExecutorService threw error: java.lang.OutOfMemoryError: unable to create new native thread java.lang.OutOfMemoryError: unable to create new native thread at java.lang.Thread.start0(Native Method) at java.lang.Thread.start(Thread.java:714) at java.util.concurrent.ThreadPoolExecutor.addWorker(ThreadPoolExecutor.java:950) at java.util.concurrent.ThreadPoolExecutor.execute(ThreadPoolExecutor.java:1368) at org.apache.thrift.server.TThreadPoolServer.serve(TThreadPoolServer.java:168) at org.apache.zeppelin.interpreter.remote.RemoteInterpreterServer.run(RemoteInterpreterServer.java:104) INFO [2017-08-24 00:24:30,979] ({Thread-0} RemoteInterpreterServer.java[run]:103) - Starting remote interpreter server on port 40623 ``` --- If your project is set up for it, you can reply to this email and have your reply appear on GitHub as well. If your project does not have this feature enabled and wishes so, or if the feature is enabled but not working, please contact infrastructure at infrastruct...@apache.org or file a JIRA ticket with INFRA. ---
[GitHub] zeppelin pull request #2544: [ZEPPELIN-2724] Another Attempt to solve the de...
GitHub user sadhen opened a pull request: https://github.com/apache/zeppelin/pull/2544 [ZEPPELIN-2724] Another Attempt to solve the dead lock problem ### What is this PR for? https://github.com/apache/zeppelin/pull/2465 This is my attempt under the help with my colleague. We originally wrote the patch in Java 8 based on Zeppelin 0.6.0. Today, I rewrite this part in Java 7 based on Zeppelin master. I confirm the code I wrote for Zeppelin 0.6.0 solved the dead lock problem. We have over 80 websocket connections for several months and our Zeppelin 0.6.0 works well and didn't crash for websocket reason since we apply the patch. I will explain the patch in detail if necessary. ### What type of PR is it? [ Improvement ] ### Todos * [ ] - To be verified ### How should this be tested? Our QA wrote a python script, I will post it here later. ### 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/wacai/zeppelin websocket Alternatively you can review and apply these changes as the patch at: https://github.com/apache/zeppelin/pull/2544.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 #2544 commit 82ec4e0efc49daa60aed9f54bf42ff991a7873f9 Author: å¿å¬ <rend...@wacai.com> Date: 2017-08-15T13:44:47Z change notebook-authorization.json and interpreter.json to NotebookDir for dockerization commit be8877cb4323d8a4e76f4a15ec9675f00396a5f6 Author: å¿å¬ <rend...@wacai.com> Date: 2017-08-16T03:04:14Z update corresponding comments and configs commit 9e21f0e2518f1899fbd8c891b89d74ee03b1f9e8 Author: å¿å¬ <rend...@wacai.com> Date: 2017-08-16T03:22:55Z fix commit d7a6d71d9af011f9fd2ebf2be813a60b8118924b Author: å¿å¬ <rend...@wacai.com> Date: 2017-08-16T06:07:39Z fix unit test commit 6afb733515620bf0bd4a6b43abe6344ad24bdc16 Author: å¿å¬ <rend...@wacai.com> Date: 2017-08-16T06:29:27Z fix unit test on NoteInterpreterLoaderTest commit 58013e34cf298c7ba343a21742c809be3c95850a Author: å¿å¬ <rend...@wacai.com> Date: 2017-08-21T07:45:40Z some logging and make broadcast concurrent commit 3c017eca125cebb5a4dc1cf8406852d83420aee9 Author: å¿å¬ <rend...@wacai.com> Date: 2017-08-21T09:33:04Z refactor on noteSocketMap --- If your project is set up for it, you can reply to this email and have your reply appear on GitHub as well. If your project does not have this feature enabled and wishes so, or if the feature is enabled but not working, please contact infrastructure at infrastruct...@apache.org or file a JIRA ticket with INFRA. ---
[GitHub] zeppelin issue #2539: [ZEPPELIN-2863] change notebook-authorization.json and...
Github user sadhen commented on the issue: https://github.com/apache/zeppelin/pull/2539 @zjffdu Your solution didn't solve the problem in the quoted: `The critical part is that files under conf/ such as shiro.ini is part of the docker image and should be immutable.` Imaging the following use case, I have a base docker image, and two other end-point docker images. The base docker image consists of jars and a default configuration. And the end-point docker images just config the base image, that means for example image0 use CAS auth in `shiro.ini` and image1 use LDAP in `shiro.ini`. The immutable part of a deployment identifies a docker image. That is the charming part of docker. We should not modify the conf files in a mounted volume. If you keep this files in a mounted volume, you will never correctly start up zeppelin with ill configurations. This is my understanding of dockerization. If you don't agree with me, please downvote and I will not waste my time completing this PR. - TODOs: 1. provide an environment variable to tell Zeppelin where is the notebook dir. The variable should be prior to configs in `zeppelin-site.xml` (regardless of this pr, this would be nice feature for dockerization) 2. add some logic in `bin/*sh` for compat. --- If your project is set up for it, you can reply to this email and have your reply appear on GitHub as well. If your project does not have this feature enabled and wishes so, or if the feature is enabled but not working, please contact infrastructure at infrastruct...@apache.org or file a JIRA ticket with INFRA. ---
[GitHub] zeppelin issue #2539: [ZEPPELIN-2863] change notebook-authorization.json and...
Github user sadhen commented on the issue: https://github.com/apache/zeppelin/pull/2539 We deployed Zeppelin in K8S cluster, and are using volumes for persistence as you stated. A1. I will provide a solution later. A possible solution: mv the files in `conf/` if exists in `zeppelin.sh`. A2. Although `notebook` dir is version controlled, it is not relevant to this particular issue. Untracked files also lives well under version(git) controlled dir. - The critical part is that files under `conf/` such as `shiro.ini` is part of the docker image and should be immutable. But `notebook-authorization.json` and `interpreter.json` is mutable and is changed in user activities. They are different in nature. The differences: 1. `shiro.ini` is provided by admin and these two json is generated by Zeppelin itself 2. `shiro.ini` should be part of the docker image, two docker images with totally different `shiro.ini` behaves in a totally different way. It is part of the deployment but the json files are record of user activities. Why should we keep these in different dirs? Since volumes are dirs. And the two json files should be kept in a volume. --- If your project is set up for it, you can reply to this email and have your reply appear on GitHub as well. If your project does not have this feature enabled and wishes so, or if the feature is enabled but not working, please contact infrastructure at infrastruct...@apache.org or file a JIRA ticket with INFRA. ---
[GitHub] zeppelin pull request #2539: [ZEPPELIN-2863] change notebook-authorization.j...
GitHub user sadhen reopened a pull request: https://github.com/apache/zeppelin/pull/2539 [ZEPPELIN-2863] change notebook-authorization.json and interpreter.json to NotebookDir ### TODO + [ ] Fix travis ### What is this PR for? When dockerizing Zeppelin, we need to persist the mutable part of Zeppelin on storage out of docker (for example NFS). For this reason, notebook-authorization.json and interpreter.json should be persisted in Notebook Dir. ### What type of PR is it? [Improvement] ### What is the Jira issue? https://issues.apache.org/jira/browse/ZEPPELIN-2863 ### How should this be tested? Minor change, no need to test it. ### Screenshots (if appropriate) ### Questions: * Does the licenses files need update? No * Is there breaking changes for older versions? No * Does this needs documentation? Yes You can merge this pull request into a Git repository by running: $ git pull https://github.com/wacai/zeppelin ZEPPELIN-2863 Alternatively you can review and apply these changes as the patch at: https://github.com/apache/zeppelin/pull/2539.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 #2539 commit 82ec4e0efc49daa60aed9f54bf42ff991a7873f9 Author: å¿å¬ <rend...@wacai.com> Date: 2017-08-15T13:44:47Z change notebook-authorization.json and interpreter.json to NotebookDir for dockerization commit be8877cb4323d8a4e76f4a15ec9675f00396a5f6 Author: å¿å¬ <rend...@wacai.com> Date: 2017-08-16T03:04:14Z update corresponding comments and configs commit 9e21f0e2518f1899fbd8c891b89d74ee03b1f9e8 Author: å¿å¬ <rend...@wacai.com> Date: 2017-08-16T03:22:55Z fix commit d7a6d71d9af011f9fd2ebf2be813a60b8118924b Author: å¿å¬ <rend...@wacai.com> Date: 2017-08-16T06:07:39Z fix unit test commit c802f2c176a961abc4820dd093e4593de906f117 Author: å¿å¬ <rend...@wacai.com> Date: 2017-08-16T06:29:27Z fix unit test on NoteInterpreterLoaderTest --- If your project is set up for it, you can reply to this email and have your reply appear on GitHub as well. If your project does not have this feature enabled and wishes so, or if the feature is enabled but not working, please contact infrastructure at infrastruct...@apache.org or file a JIRA ticket with INFRA. ---
[GitHub] zeppelin pull request #2539: [ZEPPELIN-2863] change notebook-authorization.j...
Github user sadhen closed the pull request at: https://github.com/apache/zeppelin/pull/2539 --- If your project is set up for it, you can reply to this email and have your reply appear on GitHub as well. If your project does not have this feature enabled and wishes so, or if the feature is enabled but not working, please contact infrastructure at infrastruct...@apache.org or file a JIRA ticket with INFRA. ---
[GitHub] zeppelin issue #2539: [ZEPPELIN-2863] change notebook-authorization.json and...
Github user sadhen commented on the issue: https://github.com/apache/zeppelin/pull/2539 @1ambda `interpreter.json` and `notebook-authorization.json` will be changed during the use of Zeppelin. If the docker instance is killed and restarted, the updated json files will be lost. And logically the two json files are related to the note.json, and should be kept along side with them. Currently, this files are located under conf/ ,but other files under conf will not be changed thus we do not have to put them into the mounted NFS. --- If your project is set up for it, you can reply to this email and have your reply appear on GitHub as well. If your project does not have this feature enabled and wishes so, or if the feature is enabled but not working, please contact infrastructure at infrastruct...@apache.org or file a JIRA ticket with INFRA. ---
[GitHub] zeppelin pull request #2539: [ZEPPELIN-2863] change notebook-authorization.j...
GitHub user sadhen reopened a pull request: https://github.com/apache/zeppelin/pull/2539 [ZEPPELIN-2863] change notebook-authorization.json and interpreter.json to NotebookDir ### What is this PR for? When dockerizing Zeppelin, we need to persist the mutable part of Zeppelin on storage out of docker (for example NFS). For this reason, notebook-authorization.json and interpreter.json should be persisted in Notebook Dir. ### What type of PR is it? [Improvement] ### What is the Jira issue? https://issues.apache.org/jira/browse/ZEPPELIN-2863 ### How should this be tested? Minor change, no need to test it. ### Screenshots (if appropriate) ### Questions: * Does the licenses files need update? No * Is there breaking changes for older versions? No * Does this needs documentation? Yes You can merge this pull request into a Git repository by running: $ git pull https://github.com/wacai/zeppelin ZEPPELIN-2863 Alternatively you can review and apply these changes as the patch at: https://github.com/apache/zeppelin/pull/2539.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 #2539 commit 82ec4e0efc49daa60aed9f54bf42ff991a7873f9 Author: å¿å¬ <rend...@wacai.com> Date: 2017-08-15T13:44:47Z change notebook-authorization.json and interpreter.json to NotebookDir for dockerization --- If your project is set up for it, you can reply to this email and have your reply appear on GitHub as well. If your project does not have this feature enabled and wishes so, or if the feature is enabled but not working, please contact infrastructure at infrastruct...@apache.org or file a JIRA ticket with INFRA. ---
[GitHub] zeppelin pull request #2539: [ZEPPELIN-2863] change notebook-authorization.j...
Github user sadhen closed the pull request at: https://github.com/apache/zeppelin/pull/2539 --- If your project is set up for it, you can reply to this email and have your reply appear on GitHub as well. If your project does not have this feature enabled and wishes so, or if the feature is enabled but not working, please contact infrastructure at infrastruct...@apache.org or file a JIRA ticket with INFRA. ---
[GitHub] zeppelin pull request #2539: [ZEPPELIN-533] change notebook-authorization.js...
GitHub user sadhen opened a pull request: https://github.com/apache/zeppelin/pull/2539 [ZEPPELIN-533] change notebook-authorization.json and interpreter.json to NotebookDir ### What is this PR for? When dockerizing Zeppelin, we need to persist the mutable part of Zeppelin on storage out of docker (for example NFS). For this reason, notebook-authorization.json and interpreter.json should be persisted in Notebook Dir. ### What type of PR is it? [Improvement] ### What is the Jira issue? https://issues.apache.org/jira/browse/ZEPPELIN-2863 ### How should this be tested? Minor change, no need to test it. ### Screenshots (if appropriate) ### Questions: * Does the licenses files need update? No * Is there breaking changes for older versions? No * Does this needs documentation? Yes You can merge this pull request into a Git repository by running: $ git pull https://github.com/wacai/zeppelin ZEPPELIN-2863 Alternatively you can review and apply these changes as the patch at: https://github.com/apache/zeppelin/pull/2539.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 #2539 commit 82ec4e0efc49daa60aed9f54bf42ff991a7873f9 Author: å¿å¬ <rend...@wacai.com> Date: 2017-08-15T13:44:47Z change notebook-authorization.json and interpreter.json to NotebookDir for dockerization --- If your project is set up for it, you can reply to this email and have your reply appear on GitHub as well. If your project does not have this feature enabled and wishes so, or if the feature is enabled but not working, please contact infrastructure at infrastruct...@apache.org or file a JIRA ticket with INFRA. ---
[GitHub] zeppelin issue #319: ZEPPELIN-312: use threadpoll to do broadcast in zeppeli...
Github user sadhen commented on the issue: https://github.com/apache/zeppelin/pull/319 @Leemoonsoo the delivery orders do not matter. Since the call of broadcast on message 1 and the call of broadcast on message 2 would be processed one by one since `noteSocketMap` is synchronized. (in the latest code) --- If your project is set up for it, you can reply to this email and have your reply appear on GitHub as well. If your project does not have this feature enabled and wishes so, or if the feature is enabled but not working, please contact infrastructure at infrastruct...@apache.org or file a JIRA ticket with INFRA. ---