Xikui Wang has uploaded a new change for review.

  https://asterix-gerrit.ics.uci.edu/1963

Change subject: [NO ISSUE][ING] Prevent start feed without connection
......................................................................

[NO ISSUE][ING] Prevent start feed without connection

- user model changes: no
- storage format changes: no
- interface changes: no

Details:
1. Add condition check for connection existence in start feed.
2. Remove useless/unassigned variable in RSS feed.

Change-Id: Ic6715b3983ee8a0bb042ef5f34f30381c99466da
---
M 
asterixdb/asterix-app/src/main/java/org/apache/asterix/app/translator/QueryTranslator.java
M 
asterixdb/asterix-common/src/main/java/org/apache/asterix/common/exceptions/ErrorCode.java
M asterixdb/asterix-common/src/main/resources/asx_errormsg/en.properties
M 
asterixdb/asterix-external-data/src/main/java/org/apache/asterix/external/parser/RSSParser.java
4 files changed, 7 insertions(+), 3 deletions(-)


  git pull ssh://asterix-gerrit.ics.uci.edu:29418/asterixdb 
refs/changes/63/1963/1

diff --git 
a/asterixdb/asterix-app/src/main/java/org/apache/asterix/app/translator/QueryTranslator.java
 
b/asterixdb/asterix-app/src/main/java/org/apache/asterix/app/translator/QueryTranslator.java
index b97c014..188dde8 100644
--- 
a/asterixdb/asterix-app/src/main/java/org/apache/asterix/app/translator/QueryTranslator.java
+++ 
b/asterixdb/asterix-app/src/main/java/org/apache/asterix/app/translator/QueryTranslator.java
@@ -2056,6 +2056,9 @@
                     metadataProvider.getMetadataTxnContext());
             List<FeedConnection> feedConnections = MetadataManager.INSTANCE
                     
.getFeedConections(metadataProvider.getMetadataTxnContext(), dataverseName, 
feedName);
+            if (feedConnections.size() == 0) {
+                throw new 
CompilationException(ErrorCode.FEED_START_FEED_WITHOUT_CONNECTION, feedName);
+            }
             for (FeedConnection feedConnection : feedConnections) {
                 // what if the dataset is in a different dataverse
                 String fqName = feedConnection.getDataverseName() + "." + 
feedConnection.getDatasetName();
diff --git 
a/asterixdb/asterix-common/src/main/java/org/apache/asterix/common/exceptions/ErrorCode.java
 
b/asterixdb/asterix-common/src/main/java/org/apache/asterix/common/exceptions/ErrorCode.java
index 143f7d1..09a8f58 100644
--- 
a/asterixdb/asterix-common/src/main/java/org/apache/asterix/common/exceptions/ErrorCode.java
+++ 
b/asterixdb/asterix-common/src/main/java/org/apache/asterix/common/exceptions/ErrorCode.java
@@ -230,6 +230,7 @@
     public static final int FEED_STOPPED_WHILE_WAITING_FOR_A_NEW_RECORD = 3108;
     public static final int METADATA_DROP_FUCTION_IN_USE = 3109;
     public static final int FEED_FAILED_WHILE_GETTING_A_NEW_RECORD = 3110;
+    public static final int FEED_START_FEED_WITHOUT_CONNECTION = 3111;
 
     // Lifecycle management errors
     public static final int DUPLICATE_PARTITION_ID = 4000;
diff --git 
a/asterixdb/asterix-common/src/main/resources/asx_errormsg/en.properties 
b/asterixdb/asterix-common/src/main/resources/asx_errormsg/en.properties
index 715c27d..c865cb3 100644
--- a/asterixdb/asterix-common/src/main/resources/asx_errormsg/en.properties
+++ b/asterixdb/asterix-common/src/main/resources/asx_errormsg/en.properties
@@ -217,8 +217,9 @@
 3106 = %1$s is not registered
 3107 = Active Notification Handler is already suspended
 3108 = Feed stopped while waiting for a new record
-3109 = Function %1$s is being used. It cannot be dropped.
+3109 = Function %1$s is being used. It cannot be dropped
 3110 = Feed failed while reading a new record
+3111 = Feed %1$s is not connected to any dataset
 
 # Lifecycle management errors
 4000 = Partition id %1$d for node %2$s already in use by node %3$s
diff --git 
a/asterixdb/asterix-external-data/src/main/java/org/apache/asterix/external/parser/RSSParser.java
 
b/asterixdb/asterix-external-data/src/main/java/org/apache/asterix/external/parser/RSSParser.java
index b6c2221..e260083 100644
--- 
a/asterixdb/asterix-external-data/src/main/java/org/apache/asterix/external/parser/RSSParser.java
+++ 
b/asterixdb/asterix-external-data/src/main/java/org/apache/asterix/external/parser/RSSParser.java
@@ -33,7 +33,6 @@
 
 public class RSSParser implements IRecordDataParser<SyndEntry> {
     private long id = 0;
-    private String idPrefix;
     private AMutableString[] mutableFields;
     private String[] tupleFieldValues;
     private AMutableRecord mutableRecord;
@@ -51,7 +50,7 @@
     @Override
     public void parse(IRawRecord<? extends SyndEntry> record, DataOutput out) 
throws HyracksDataException {
         SyndEntry entry = record.get();
-        tupleFieldValues[0] = idPrefix + ":" + id;
+        tupleFieldValues[0] = String.valueOf(id);
         tupleFieldValues[1] = entry.getTitle();
         tupleFieldValues[2] = entry.getDescription().getValue();
         tupleFieldValues[3] = entry.getLink();

-- 
To view, visit https://asterix-gerrit.ics.uci.edu/1963
To unsubscribe, visit https://asterix-gerrit.ics.uci.edu/settings

Gerrit-MessageType: newchange
Gerrit-Change-Id: Ic6715b3983ee8a0bb042ef5f34f30381c99466da
Gerrit-PatchSet: 1
Gerrit-Project: asterixdb
Gerrit-Branch: master
Gerrit-Owner: Xikui Wang <[email protected]>

Reply via email to