Skip to content

Conversation

@minahlee
Copy link
Member

What is this PR for?

If user specifies library path in interpreter dependency setting, even when the file on this path is updated, new file doesn't take effect on interpreter restart but does only when user clicks Edit -> Save.
The mechanism of dependency loading is copying all dependency libraries under local-repo/ {interpreterId} and add these directory to classpath of interpreter process. Zeppelin copies these dependencies either on Zeppelin startup or dependency saving/editing.

This PR checks if the library on specified local path is updated, and copy them to local-repo/ {interpreterId} on restart if there is change.

What type of PR is it?

Bug Fix & Improvement

What is the Jira issue?

ZEPPELIN-1482

How should this be tested?

  1. Download commons-csv-1.1.jar and commons-csv-1.2.jar to /my/path
  2. cp commons-csv-1.2.jar /my/path/commons-csv.jar
  3. Set dependency artifact of spark interpreter to /my/path/commons-csv.jar
  4. Run %spark import org.apache.commons.csv.CSVFormat.Predefined in paragraph and see if it runs without error
  5. cp commons-csv-1.1.jar /my/path/commons-csv.jar
  6. Restart spark interpreter
  7. Run %spark import org.apache.commons.csv.CSVFormat.Predefined in paragraph and see if error occurs.

Questions:

  • Does the licenses files need update? no
  • Is there breaking changes for older versions? no
  • Does this needs documentation? no

…em under local-repo/{interpreterId} on interpreter restart
@Leemoonsoo
Copy link
Member

Tested and LGTM

@minahlee
Copy link
Member Author

Merging if there is no more discussion

@asfgit asfgit closed this in c484619 Sep 27, 2016
asfgit pushed a commit that referenced this pull request Sep 27, 2016
If user specifies library path in interpreter dependency setting, even when the file on this path is updated, new file doesn't take effect on interpreter _restart_ but does only when user _clicks Edit -> Save._
The mechanism of dependency loading is copying all dependency libraries under `local-repo/
{interpreterId}` and add these directory to classpath of interpreter process. Zeppelin copies these dependencies either on Zeppelin startup or dependency saving/editing.

This PR checks if the library on specified local path is updated, and copy them to `local-repo/
{interpreterId}` on restart if there is change.

Bug Fix & Improvement

[ZEPPELIN-1482](https://issues.apache.org/jira/browse/ZEPPELIN-1482)

1. Download commons-csv-1.1.jar and commons-csv-1.2.jar to /my/path
2. cp commons-csv-1.2.jar /my/path/commons-csv.jar
3. Set dependency artifact of spark interpreter to /my/path/commons-csv.jar
4. Run `%spark import org.apache.commons.csv.CSVFormat.Predefined` in paragraph and see if it runs without error
5. cp commons-csv-1.1.jar /my/path/commons-csv.jar
6. Restart spark interpreter
7. Run `%spark import org.apache.commons.csv.CSVFormat.Predefined` in paragraph and see if error occurs.

* Does the licenses files need update? no
* Is there breaking changes for older versions? no
* Does this needs documentation? no

Author: Mina Lee <[email protected]>

Closes #1453 from minahlee/ZEPPELIN-1482 and squashes the following commits:

ea11664 [Mina Lee] Check if dependency library on specified path has changed and copy them under local-repo/{interpreterId} on interpreter restart

(cherry picked from commit c484619)
Signed-off-by: Mina Lee <[email protected]>

Conflicts:
	zeppelin-zengine/src/main/java/org/apache/zeppelin/interpreter/InterpreterFactory.java
asfgit pushed a commit that referenced this pull request Sep 27, 2016
If user specifies library path in interpreter dependency setting, even when the file on this path is updated, new file doesn't take effect on interpreter _restart_ but does only when user _clicks Edit -> Save._
The mechanism of dependency loading is copying all dependency libraries under `local-repo/
{interpreterId}` and add these directory to classpath of interpreter process. Zeppelin copies these dependencies either on Zeppelin startup or dependency saving/editing.

This PR checks if the library on specified local path is updated, and copy them to `local-repo/
{interpreterId}` on restart if there is change.

Bug Fix & Improvement

[ZEPPELIN-1482](https://issues.apache.org/jira/browse/ZEPPELIN-1482)

1. Download commons-csv-1.1.jar and commons-csv-1.2.jar to /my/path
2. cp commons-csv-1.2.jar /my/path/commons-csv.jar
3. Set dependency artifact of spark interpreter to /my/path/commons-csv.jar
4. Run `%spark import org.apache.commons.csv.CSVFormat.Predefined` in paragraph and see if it runs without error
5. cp commons-csv-1.1.jar /my/path/commons-csv.jar
6. Restart spark interpreter
7. Run `%spark import org.apache.commons.csv.CSVFormat.Predefined` in paragraph and see if error occurs.

* Does the licenses files need update? no
* Is there breaking changes for older versions? no
* Does this needs documentation? no

Author: Mina Lee <[email protected]>

Closes #1453 from minahlee/ZEPPELIN-1482 and squashes the following commits:

ea11664 [Mina Lee] Check if dependency library on specified path has changed and copy them under local-repo/{interpreterId} on interpreter restart

(cherry picked from commit c484619)
Signed-off-by: Mina Lee <[email protected]>

Conflicts:
	zeppelin-zengine/src/main/java/org/apache/zeppelin/interpreter/InterpreterFactory.java
asfgit pushed a commit that referenced this pull request Sep 27, 2016
If user specifies library path in interpreter dependency setting, even when the file on this path is updated, new file doesn't take effect on interpreter _restart_ but does only when user _clicks Edit -> Save._
The mechanism of dependency loading is copying all dependency libraries under `local-repo/
{interpreterId}` and add these directory to classpath of interpreter process. Zeppelin copies these dependencies either on Zeppelin startup or dependency saving/editing.

This PR checks if the library on specified local path is updated, and copy them to `local-repo/
{interpreterId}` on restart if there is change.

Bug Fix & Improvement

[ZEPPELIN-1482](https://issues.apache.org/jira/browse/ZEPPELIN-1482)

1. Download commons-csv-1.1.jar and commons-csv-1.2.jar to /my/path
2. cp commons-csv-1.2.jar /my/path/commons-csv.jar
3. Set dependency artifact of spark interpreter to /my/path/commons-csv.jar
4. Run `%spark import org.apache.commons.csv.CSVFormat.Predefined` in paragraph and see if it runs without error
5. cp commons-csv-1.1.jar /my/path/commons-csv.jar
6. Restart spark interpreter
7. Run `%spark import org.apache.commons.csv.CSVFormat.Predefined` in paragraph and see if error occurs.

* Does the licenses files need update? no
* Is there breaking changes for older versions? no
* Does this needs documentation? no

Author: Mina Lee <[email protected]>

Closes #1453 from minahlee/ZEPPELIN-1482 and squashes the following commits:

ea11664 [Mina Lee] Check if dependency library on specified path has changed and copy them under local-repo/{interpreterId} on interpreter restart

(cherry picked from commit c484619)
Signed-off-by: Mina Lee <[email protected]>

Conflicts:
	zeppelin-zengine/src/main/java/org/apache/zeppelin/interpreter/InterpreterFactory.java
pedrozatta pushed a commit to pedrozatta/zeppelin that referenced this pull request Oct 27, 2016
### What is this PR for?
If user specifies library path in interpreter dependency setting, even when the file on this path is updated, new file doesn't take effect on interpreter _restart_ but does only when user _clicks Edit -> Save._
The mechanism of dependency loading is copying all dependency libraries under `local-repo/
{interpreterId}` and add these directory to classpath of interpreter process. Zeppelin copies these dependencies either on Zeppelin startup or dependency saving/editing.

This PR checks if the library on specified local path is updated, and copy them to `local-repo/
{interpreterId}` on restart if there is change.

### What type of PR is it?
Bug Fix & Improvement

### What is the Jira issue?
[ZEPPELIN-1482](https://issues.apache.org/jira/browse/ZEPPELIN-1482)

### How should this be tested?
1. Download commons-csv-1.1.jar and commons-csv-1.2.jar to /my/path
2. cp commons-csv-1.2.jar /my/path/commons-csv.jar
3. Set dependency artifact of spark interpreter to /my/path/commons-csv.jar
4. Run `%spark import org.apache.commons.csv.CSVFormat.Predefined` in paragraph and see if it runs without error
5. cp commons-csv-1.1.jar /my/path/commons-csv.jar
6. Restart spark interpreter
7. Run `%spark import org.apache.commons.csv.CSVFormat.Predefined` in paragraph and see if error occurs.

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

Author: Mina Lee <[email protected]>

Closes apache#1453 from minahlee/ZEPPELIN-1482 and squashes the following commits:

ea11664 [Mina Lee] Check if dependency library on specified path has changed and copy them under local-repo/{interpreterId} on interpreter restart
@minahlee minahlee deleted the ZEPPELIN-1482 branch November 2, 2016 04:54
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants