Murtadha Hubail has uploaded a new change for review.

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

Change subject: [NO ISSUE][OTH] Add Creation Time to Client Request
......................................................................

[NO ISSUE][OTH] Add Creation Time to Client Request

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

Details:
- Add creation time to ClientRequest to identify when the
  request was acknowledged by the CC.
- Allow Receptionist extensions to throw exceptions as
  specified by the IReceptionist API.
- Add convention method in ResourceReference to get the
  resource's fully qualified dataset name.
- Fix typo in metadata provider method name.

Change-Id: Ib45b5bec8bb2f127aa1263d4f7ac4f8e2e368208
---
M 
asterixdb/asterix-algebra/src/main/java/org/apache/asterix/translator/ClientRequest.java
M 
asterixdb/asterix-algebra/src/main/java/org/apache/asterix/translator/Receptionist.java
M 
asterixdb/asterix-common/src/main/java/org/apache/asterix/common/storage/ResourceReference.java
M 
asterixdb/asterix-metadata/src/main/java/org/apache/asterix/metadata/declared/MetadataProvider.java
4 files changed, 13 insertions(+), 3 deletions(-)


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

diff --git 
a/asterixdb/asterix-algebra/src/main/java/org/apache/asterix/translator/ClientRequest.java
 
b/asterixdb/asterix-algebra/src/main/java/org/apache/asterix/translator/ClientRequest.java
index 155b817..c19bb02 100644
--- 
a/asterixdb/asterix-algebra/src/main/java/org/apache/asterix/translator/ClientRequest.java
+++ 
b/asterixdb/asterix-algebra/src/main/java/org/apache/asterix/translator/ClientRequest.java
@@ -28,6 +28,7 @@
 
 public class ClientRequest extends BaseClientRequest {
 
+    protected final long creationTime = System.nanoTime();
     protected final Thread executor;
     protected final String statement;
     protected final String clientContextId;
@@ -70,6 +71,10 @@
         }
     }
 
+    public long getCreationTime() {
+        return creationTime;
+    }
+
     @Override
     protected ObjectNode asJson() {
         ObjectNode json = super.asJson();
diff --git 
a/asterixdb/asterix-algebra/src/main/java/org/apache/asterix/translator/Receptionist.java
 
b/asterixdb/asterix-algebra/src/main/java/org/apache/asterix/translator/Receptionist.java
index 52aab20..ec4fb6f 100644
--- 
a/asterixdb/asterix-algebra/src/main/java/org/apache/asterix/translator/Receptionist.java
+++ 
b/asterixdb/asterix-algebra/src/main/java/org/apache/asterix/translator/Receptionist.java
@@ -27,6 +27,7 @@
 import org.apache.asterix.common.api.ISchedulableClientRequest;
 import org.apache.asterix.common.api.RequestReference;
 import org.apache.http.HttpHeaders;
+import org.apache.hyracks.api.exceptions.HyracksDataException;
 import org.apache.hyracks.http.api.IServletRequest;
 import org.apache.hyracks.util.NetworkUtil;
 
@@ -48,12 +49,12 @@
     }
 
     @Override
-    public IClientRequest requestReceived(ICommonRequestParameters 
requestParameters) {
+    public IClientRequest requestReceived(ICommonRequestParameters 
requestParameters) throws HyracksDataException {
         return new ClientRequest(requestParameters);
     }
 
     @Override
-    public void ensureSchedulable(ISchedulableClientRequest 
schedulableRequest) {
+    public void ensureSchedulable(ISchedulableClientRequest 
schedulableRequest) throws HyracksDataException {
         // currently we don't have any restrictions
     }
 }
diff --git 
a/asterixdb/asterix-common/src/main/java/org/apache/asterix/common/storage/ResourceReference.java
 
b/asterixdb/asterix-common/src/main/java/org/apache/asterix/common/storage/ResourceReference.java
index a24bf72..ae949fe 100644
--- 
a/asterixdb/asterix-common/src/main/java/org/apache/asterix/common/storage/ResourceReference.java
+++ 
b/asterixdb/asterix-common/src/main/java/org/apache/asterix/common/storage/ResourceReference.java
@@ -105,6 +105,10 @@
         return 
Integer.parseInt(partition.substring(StorageConstants.PARTITION_DIR_PREFIX.length()));
     }
 
+    public String getDatasetFullyQualifiedName() {
+        return dataverse + '.' + dataset;
+    }
+
     @Override
     public boolean equals(Object o) {
         if (this == o) {
diff --git 
a/asterixdb/asterix-metadata/src/main/java/org/apache/asterix/metadata/declared/MetadataProvider.java
 
b/asterixdb/asterix-metadata/src/main/java/org/apache/asterix/metadata/declared/MetadataProvider.java
index adfaa89..7b93b6b 100644
--- 
a/asterixdb/asterix-metadata/src/main/java/org/apache/asterix/metadata/declared/MetadataProvider.java
+++ 
b/asterixdb/asterix-metadata/src/main/java/org/apache/asterix/metadata/declared/MetadataProvider.java
@@ -1632,7 +1632,7 @@
         txnAccessedDatasets.add(dataset);
     }
 
-    public Set<Dataset> getAccssedDatasets() {
+    public Set<Dataset> getAccessedDatasets() {
         return Collections.unmodifiableSet(txnAccessedDatasets);
     }
 }

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

Gerrit-MessageType: newchange
Gerrit-Change-Id: Ib45b5bec8bb2f127aa1263d4f7ac4f8e2e368208
Gerrit-PatchSet: 1
Gerrit-Project: asterixdb
Gerrit-Branch: master
Gerrit-Owner: Murtadha Hubail <[email protected]>

Reply via email to