Repository: zeppelin
Updated Branches:
refs/heads/master 9fe99bc78 -> c884a5113
ZEPPELIN-1108 ] Doesn't work autocompletion for Postgresql interpreter
### What is this PR for?
Doesn't work autocompletion for postgresql interpreter
'Completion' There is a problem with the return type of implementation.
```
org.apache.zeppelin.interpreter.InterpreterException:
org.apache.thrift.transport.TTransportException
at
org.apache.zeppelin.interpreter.remote.RemoteInterpreter.completion(RemoteInterpreter.java:396)
at
org.apache.zeppelin.interpreter.LazyOpenInterpreter.completion(LazyOpenInterpreter.java:122)
at org.apache.zeppelin.notebook.Paragraph.completion(Paragraph.java:216)
at org.apache.zeppelin.notebook.Note.completion(Note.java:488)
at
org.apache.zeppelin.socket.NotebookServer.completion(NotebookServer.java:729)
at
org.apache.zeppelin.socket.NotebookServer.onMessage(NotebookServer.java:202)
at
org.apache.zeppelin.socket.NotebookSocket.onWebSocketText(NotebookSocket.java:56)
at
org.eclipse.jetty.websocket.common.events.JettyListenerEventDriver.onTextMessage(JettyListenerEventDriver.java:128)
at
org.eclipse.jetty.websocket.common.message.SimpleTextMessage.messageComplete(SimpleTextMessage.java:69)
at
org.eclipse.jetty.websocket.common.events.AbstractEventDriver.appendMessage(AbstractEventDriver.java:65)
at
org.eclipse.jetty.websocket.common.events.JettyListenerEventDriver.onTextFrame(JettyListenerEventDriver.java:122)
at
org.eclipse.jetty.websocket.common.events.AbstractEventDriver.incomingFrame(AbstractEventDriver.java:161)
at
org.eclipse.jetty.websocket.common.WebSocketSession.incomingFrame(WebSocketSession.java:309)
at
org.eclipse.jetty.websocket.common.extensions.ExtensionStack.incomingFrame(ExtensionStack.java:214)
at
org.eclipse.jetty.websocket.common.Parser.notifyFrame(Parser.java:220)
at org.eclipse.jetty.websocket.common.Parser.parse(Parser.java:258)
at
org.eclipse.jetty.websocket.common.io.AbstractWebSocketConnection.readParse(AbstractWebSocketConnection.java:632)
at
org.eclipse.jetty.websocket.common.io.AbstractWebSocketConnection.onFillable(AbstractWebSocketConnection.java:480)
at
org.eclipse.jetty.io.AbstractConnection$2.run(AbstractConnection.java:544)
at
org.eclipse.jetty.util.thread.QueuedThreadPool.runJob(QueuedThreadPool.java:635)
at
org.eclipse.jetty.util.thread.QueuedThreadPool$3.run(QueuedThreadPool.java:555)
at java.lang.Thread.run(Thread.java:745)
Caused by: org.apache.thrift.transport.TTransportException
at
org.apache.thrift.transport.TIOStreamTransport.read(TIOStreamTransport.java:132)
at org.apache.thrift.transport.TTransport.readAll(TTransport.java:86)
at
org.apache.thrift.protocol.TBinaryProtocol.readAll(TBinaryProtocol.java:429)
at
org.apache.thrift.protocol.TBinaryProtocol.readI32(TBinaryProtocol.java:318)
at
org.apache.thrift.protocol.TBinaryProtocol.readMessageBegin(TBinaryProtocol.java:219)
at org.apache.thrift.TServiceClient.receiveBase(TServiceClient.java:69)
at
org.apache.zeppelin.interpreter.thrift.RemoteInterpreterService$Client.recv_completion(RemoteInterpreterService.java:346)
at
org.apache.zeppelin.interpreter.thrift.RemoteInterpreterService$Client.completion(RemoteInterpreterService.java:330)
at
org.apache.zeppelin.interpreter.remote.RemoteInterpreter.completion(RemoteInterpreter.java:392)
```
### What type of PR is it?
Bug Fix
### What is the Jira issue?
https://issues.apache.org/jira/browse/ZEPPELIN-1108
### How should this be tested?
try to completion for Postgresql interpreter paragraph.
```
%psql
SELET * F (ctrl + shift + space)
```
### Screenshots (if appropriate)

### Questions:
* Does the licenses files need update? no
* Is there breaking changes for older versions? no
* Does this needs documentation? no
Author: CloverHearts <[email protected]>
Closes #1126 from cloverhearts/bugfix/psql-completion and squashes the
following commits:
5931133 [CloverHearts] fixed test case for postgresql completion
bb24bc0 [CloverHearts] bug fixed auto completion for postgresql interpreter
Project: http://git-wip-us.apache.org/repos/asf/zeppelin/repo
Commit: http://git-wip-us.apache.org/repos/asf/zeppelin/commit/c884a511
Tree: http://git-wip-us.apache.org/repos/asf/zeppelin/tree/c884a511
Diff: http://git-wip-us.apache.org/repos/asf/zeppelin/diff/c884a511
Branch: refs/heads/master
Commit: c884a5113ebdd79a360084eeb0e800321ed5b471
Parents: 9fe99bc
Author: CloverHearts <[email protected]>
Authored: Tue Jul 5 00:48:13 2016 +0900
Committer: Alexander Bezzubov <[email protected]>
Committed: Wed Jul 6 14:50:55 2016 +0900
----------------------------------------------------------------------
.../apache/zeppelin/postgresql/PostgreSqlInterpreter.java | 8 ++++----
.../zeppelin/postgresql/PostgreSqlInterpreterTest.java | 4 +++-
2 files changed, 7 insertions(+), 5 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/zeppelin/blob/c884a511/postgresql/src/main/java/org/apache/zeppelin/postgresql/PostgreSqlInterpreter.java
----------------------------------------------------------------------
diff --git
a/postgresql/src/main/java/org/apache/zeppelin/postgresql/PostgreSqlInterpreter.java
b/postgresql/src/main/java/org/apache/zeppelin/postgresql/PostgreSqlInterpreter.java
index 2daa6af..fc9a37d 100644
---
a/postgresql/src/main/java/org/apache/zeppelin/postgresql/PostgreSqlInterpreter.java
+++
b/postgresql/src/main/java/org/apache/zeppelin/postgresql/PostgreSqlInterpreter.java
@@ -114,10 +114,10 @@ public class PostgreSqlInterpreter extends Interpreter {
private SqlCompleter sqlCompleter;
- private static final Function<CharSequence, String>
sequenceToStringTransformer =
- new Function<CharSequence, String>() {
- public String apply(CharSequence seq) {
- return seq.toString();
+ private static final Function<CharSequence, InterpreterCompletion>
sequenceToStringTransformer =
+ new Function<CharSequence, InterpreterCompletion>() {
+ public InterpreterCompletion apply(CharSequence seq) {
+ return new InterpreterCompletion(seq.toString(), seq.toString());
}
};
http://git-wip-us.apache.org/repos/asf/zeppelin/blob/c884a511/postgresql/src/test/java/org/apache/zeppelin/postgresql/PostgreSqlInterpreterTest.java
----------------------------------------------------------------------
diff --git
a/postgresql/src/test/java/org/apache/zeppelin/postgresql/PostgreSqlInterpreterTest.java
b/postgresql/src/test/java/org/apache/zeppelin/postgresql/PostgreSqlInterpreterTest.java
index 9c8eae1..69f81a4 100644
---
a/postgresql/src/test/java/org/apache/zeppelin/postgresql/PostgreSqlInterpreterTest.java
+++
b/postgresql/src/test/java/org/apache/zeppelin/postgresql/PostgreSqlInterpreterTest.java
@@ -35,6 +35,7 @@ import java.sql.SQLException;
import java.util.Properties;
import org.apache.zeppelin.interpreter.InterpreterResult;
+import org.apache.zeppelin.interpreter.thrift.InterpreterCompletion;
import org.junit.Before;
import org.junit.Test;
@@ -254,7 +255,8 @@ public class PostgreSqlInterpreterTest extends
BasicJDBCTestCaseAdapter {
public void testAutoCompletion() throws SQLException {
psqlInterpreter.open();
assertEquals(1, psqlInterpreter.completion("SEL", 0).size());
- assertEquals("SELECT ", psqlInterpreter.completion("SEL",
0).iterator().next());
+ InterpreterCompletion selectCompletion = new InterpreterCompletion("SELECT
", "SELECT ");
+ assertEquals(selectCompletion, psqlInterpreter.completion("SEL",
0).iterator().next());
assertEquals(0, psqlInterpreter.completion("SEL", 100).size());
}
}