You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@airavata.apache.org by sc...@apache.org on 2015/05/31 23:23:22 UTC
[11/13] airavata git commit: Removing Error Details from
ExperimentSummary object and improving the searchExperiments method
http://git-wip-us.apache.org/repos/asf/airavata/blob/7bc175fe/airavata-api/airavata-client-sdks/airavata-cpp-sdk/src/main/resources/lib/airavata/experimentModel_types.cpp
----------------------------------------------------------------------
diff --git a/airavata-api/airavata-client-sdks/airavata-cpp-sdk/src/main/resources/lib/airavata/experimentModel_types.cpp b/airavata-api/airavata-client-sdks/airavata-cpp-sdk/src/main/resources/lib/airavata/experimentModel_types.cpp
index 34e4aa6..1789d5e 100644
--- a/airavata-api/airavata-client-sdks/airavata-cpp-sdk/src/main/resources/lib/airavata/experimentModel_types.cpp
+++ b/airavata-api/airavata-client-sdks/airavata-cpp-sdk/src/main/resources/lib/airavata/experimentModel_types.cpp
@@ -55,6 +55,24 @@ const char* _kExperimentStateNames[] = {
};
const std::map<int, const char*> _ExperimentState_VALUES_TO_NAMES(::apache::thrift::TEnumIterator(11, _kExperimentStateValues, _kExperimentStateNames), ::apache::thrift::TEnumIterator(-1, NULL, NULL));
+int _kExperimentSearchFieldsValues[] = {
+ ExperimentSearchFields::EXPERIMENT_NAME,
+ ExperimentSearchFields::EXPERIMENT_DESC,
+ ExperimentSearchFields::APPLICATION_ID,
+ ExperimentSearchFields::FROM_DATE,
+ ExperimentSearchFields::TO_DATE,
+ ExperimentSearchFields::STATUS
+};
+const char* _kExperimentSearchFieldsNames[] = {
+ "EXPERIMENT_NAME",
+ "EXPERIMENT_DESC",
+ "APPLICATION_ID",
+ "FROM_DATE",
+ "TO_DATE",
+ "STATUS"
+};
+const std::map<int, const char*> _ExperimentSearchFields_VALUES_TO_NAMES(::apache::thrift::TEnumIterator(6, _kExperimentSearchFieldsValues, _kExperimentSearchFieldsNames), ::apache::thrift::TEnumIterator(-1, NULL, NULL));
+
int _kWorkflowNodeStateValues[] = {
WorkflowNodeState::INVOKED,
WorkflowNodeState::EXECUTING,
@@ -3221,8 +3239,8 @@ void swap(Experiment &a, Experiment &b) {
swap(a.__isset, b.__isset);
}
-const char* ExperimentSummary::ascii_fingerprint = "44FD485ABF32F5EB94D6F393F51241B6";
-const uint8_t ExperimentSummary::binary_fingerprint[16] = {0x44,0xFD,0x48,0x5A,0xBF,0x32,0xF5,0xEB,0x94,0xD6,0xF3,0x93,0xF5,0x12,0x41,0xB6};
+const char* ExperimentSummary::ascii_fingerprint = "A1A9DDD1C0AA5DEEDC8413E553960BEF";
+const uint8_t ExperimentSummary::binary_fingerprint[16] = {0xA1,0xA9,0xDD,0xD1,0xC0,0xAA,0x5D,0xEE,0xDC,0x84,0x13,0xE5,0x53,0x96,0x0B,0xEF};
uint32_t ExperimentSummary::read(::apache::thrift::protocol::TProtocol* iprot) {
@@ -3312,26 +3330,6 @@ uint32_t ExperimentSummary::read(::apache::thrift::protocol::TProtocol* iprot) {
xfer += iprot->skip(ftype);
}
break;
- case 9:
- if (ftype == ::apache::thrift::protocol::T_LIST) {
- {
- this->errors.clear();
- uint32_t _size123;
- ::apache::thrift::protocol::TType _etype126;
- xfer += iprot->readListBegin(_etype126, _size123);
- this->errors.resize(_size123);
- uint32_t _i127;
- for (_i127 = 0; _i127 < _size123; ++_i127)
- {
- xfer += this->errors[_i127].read(iprot);
- }
- xfer += iprot->readListEnd();
- }
- this->__isset.errors = true;
- } else {
- xfer += iprot->skip(ftype);
- }
- break;
default:
xfer += iprot->skip(ftype);
break;
@@ -3392,19 +3390,6 @@ uint32_t ExperimentSummary::write(::apache::thrift::protocol::TProtocol* oprot)
xfer += this->experimentStatus.write(oprot);
xfer += oprot->writeFieldEnd();
}
- if (this->__isset.errors) {
- xfer += oprot->writeFieldBegin("errors", ::apache::thrift::protocol::T_LIST, 9);
- {
- xfer += oprot->writeListBegin(::apache::thrift::protocol::T_STRUCT, static_cast<uint32_t>(this->errors.size()));
- std::vector<ErrorDetails> ::const_iterator _iter128;
- for (_iter128 = this->errors.begin(); _iter128 != this->errors.end(); ++_iter128)
- {
- xfer += (*_iter128).write(oprot);
- }
- xfer += oprot->writeListEnd();
- }
- xfer += oprot->writeFieldEnd();
- }
xfer += oprot->writeFieldStop();
xfer += oprot->writeStructEnd();
return xfer;
@@ -3420,7 +3405,6 @@ void swap(ExperimentSummary &a, ExperimentSummary &b) {
swap(a.description, b.description);
swap(a.applicationId, b.applicationId);
swap(a.experimentStatus, b.experimentStatus);
- swap(a.errors, b.errors);
swap(a.__isset, b.__isset);
}
http://git-wip-us.apache.org/repos/asf/airavata/blob/7bc175fe/airavata-api/airavata-client-sdks/airavata-cpp-sdk/src/main/resources/lib/airavata/experimentModel_types.h
----------------------------------------------------------------------
diff --git a/airavata-api/airavata-client-sdks/airavata-cpp-sdk/src/main/resources/lib/airavata/experimentModel_types.h b/airavata-api/airavata-client-sdks/airavata-cpp-sdk/src/main/resources/lib/airavata/experimentModel_types.h
index 3f7f2b7..46fcc09 100644
--- a/airavata-api/airavata-client-sdks/airavata-cpp-sdk/src/main/resources/lib/airavata/experimentModel_types.h
+++ b/airavata-api/airavata-client-sdks/airavata-cpp-sdk/src/main/resources/lib/airavata/experimentModel_types.h
@@ -54,6 +54,19 @@ struct ExperimentState {
extern const std::map<int, const char*> _ExperimentState_VALUES_TO_NAMES;
+struct ExperimentSearchFields {
+ enum type {
+ EXPERIMENT_NAME = 0,
+ EXPERIMENT_DESC = 1,
+ APPLICATION_ID = 2,
+ FROM_DATE = 3,
+ TO_DATE = 4,
+ STATUS = 5
+ };
+};
+
+extern const std::map<int, const char*> _ExperimentSearchFields_VALUES_TO_NAMES;
+
struct WorkflowNodeState {
enum type {
INVOKED = 0,
@@ -2008,19 +2021,18 @@ class Experiment {
void swap(Experiment &a, Experiment &b);
typedef struct _ExperimentSummary__isset {
- _ExperimentSummary__isset() : creationTime(false), description(false), applicationId(false), experimentStatus(false), errors(false) {}
+ _ExperimentSummary__isset() : creationTime(false), description(false), applicationId(false), experimentStatus(false) {}
bool creationTime;
bool description;
bool applicationId;
bool experimentStatus;
- bool errors;
} _ExperimentSummary__isset;
class ExperimentSummary {
public:
- static const char* ascii_fingerprint; // = "44FD485ABF32F5EB94D6F393F51241B6";
- static const uint8_t binary_fingerprint[16]; // = {0x44,0xFD,0x48,0x5A,0xBF,0x32,0xF5,0xEB,0x94,0xD6,0xF3,0x93,0xF5,0x12,0x41,0xB6};
+ static const char* ascii_fingerprint; // = "A1A9DDD1C0AA5DEEDC8413E553960BEF";
+ static const uint8_t binary_fingerprint[16]; // = {0xA1,0xA9,0xDD,0xD1,0xC0,0xAA,0x5D,0xEE,0xDC,0x84,0x13,0xE5,0x53,0x96,0x0B,0xEF};
ExperimentSummary() : experimentID(), projectID(), creationTime(0), userName(), name(), description(), applicationId() {
}
@@ -2035,7 +2047,6 @@ class ExperimentSummary {
std::string description;
std::string applicationId;
ExperimentStatus experimentStatus;
- std::vector<ErrorDetails> errors;
_ExperimentSummary__isset __isset;
@@ -2075,11 +2086,6 @@ class ExperimentSummary {
__isset.experimentStatus = true;
}
- void __set_errors(const std::vector<ErrorDetails> & val) {
- errors = val;
- __isset.errors = true;
- }
-
bool operator == (const ExperimentSummary & rhs) const
{
if (!(experimentID == rhs.experimentID))
@@ -2106,10 +2112,6 @@ class ExperimentSummary {
return false;
else if (__isset.experimentStatus && !(experimentStatus == rhs.experimentStatus))
return false;
- if (__isset.errors != rhs.__isset.errors)
- return false;
- else if (__isset.errors && !(errors == rhs.errors))
- return false;
return true;
}
bool operator != (const ExperimentSummary &rhs) const {
http://git-wip-us.apache.org/repos/asf/airavata/blob/7bc175fe/airavata-api/airavata-client-sdks/airavata-php-sdk/src/main/resources/lib/Airavata/API/Airavata.php
----------------------------------------------------------------------
diff --git a/airavata-api/airavata-client-sdks/airavata-php-sdk/src/main/resources/lib/Airavata/API/Airavata.php b/airavata-api/airavata-client-sdks/airavata-php-sdk/src/main/resources/lib/Airavata/API/Airavata.php
index 5702c9f..4a509b2 100644
--- a/airavata-api/airavata-client-sdks/airavata-php-sdk/src/main/resources/lib/Airavata/API/Airavata.php
+++ b/airavata-api/airavata-client-sdks/airavata-php-sdk/src/main/resources/lib/Airavata/API/Airavata.php
@@ -15786,10 +15786,10 @@ class Airavata_searchExperiments_args {
3 => array(
'var' => 'filters',
'type' => TType::MAP,
- 'ktype' => TType::STRING,
+ 'ktype' => TType::I32,
'vtype' => TType::STRING,
'key' => array(
- 'type' => TType::STRING,
+ 'type' => TType::I32,
),
'val' => array(
'type' => TType::STRING,
@@ -15866,9 +15866,9 @@ class Airavata_searchExperiments_args {
$xfer += $input->readMapBegin($_ktype129, $_vtype130, $_size128);
for ($_i132 = 0; $_i132 < $_size128; ++$_i132)
{
- $key133 = '';
+ $key133 = 0;
$val134 = '';
- $xfer += $input->readString($key133);
+ $xfer += $input->readI32($key133);
$xfer += $input->readString($val134);
$this->filters[$key133] = $val134;
}
@@ -15920,11 +15920,11 @@ class Airavata_searchExperiments_args {
}
$xfer += $output->writeFieldBegin('filters', TType::MAP, 3);
{
- $output->writeMapBegin(TType::STRING, TType::STRING, count($this->filters));
+ $output->writeMapBegin(TType::I32, TType::STRING, count($this->filters));
{
foreach ($this->filters as $kiter135 => $viter136)
{
- $xfer += $output->writeString($kiter135);
+ $xfer += $output->writeI32($kiter135);
$xfer += $output->writeString($viter136);
}
}
http://git-wip-us.apache.org/repos/asf/airavata/blob/7bc175fe/airavata-api/airavata-client-sdks/airavata-php-sdk/src/main/resources/lib/Airavata/Model/Workspace/Experiment/Types.php
----------------------------------------------------------------------
diff --git a/airavata-api/airavata-client-sdks/airavata-php-sdk/src/main/resources/lib/Airavata/Model/Workspace/Experiment/Types.php b/airavata-api/airavata-client-sdks/airavata-php-sdk/src/main/resources/lib/Airavata/Model/Workspace/Experiment/Types.php
index 753dc13..4b53e09 100644
--- a/airavata-api/airavata-client-sdks/airavata-php-sdk/src/main/resources/lib/Airavata/Model/Workspace/Experiment/Types.php
+++ b/airavata-api/airavata-client-sdks/airavata-php-sdk/src/main/resources/lib/Airavata/Model/Workspace/Experiment/Types.php
@@ -44,6 +44,23 @@ final class ExperimentState {
);
}
+final class ExperimentSearchFields {
+ const EXPERIMENT_NAME = 0;
+ const EXPERIMENT_DESC = 1;
+ const APPLICATION_ID = 2;
+ const FROM_DATE = 3;
+ const TO_DATE = 4;
+ const STATUS = 5;
+ static public $__names = array(
+ 0 => 'EXPERIMENT_NAME',
+ 1 => 'EXPERIMENT_DESC',
+ 2 => 'APPLICATION_ID',
+ 3 => 'FROM_DATE',
+ 4 => 'TO_DATE',
+ 5 => 'STATUS',
+ );
+}
+
final class WorkflowNodeState {
const INVOKED = 0;
const EXECUTING = 1;
@@ -4111,7 +4128,6 @@ class ExperimentSummary {
public $description = null;
public $applicationId = null;
public $experimentStatus = null;
- public $errors = null;
public function __construct($vals=null) {
if (!isset(self::$_TSPEC)) {
@@ -4149,15 +4165,6 @@ class ExperimentSummary {
'type' => TType::STRUCT,
'class' => '\Airavata\Model\Workspace\Experiment\ExperimentStatus',
),
- 9 => array(
- 'var' => 'errors',
- 'type' => TType::LST,
- 'etype' => TType::STRUCT,
- 'elem' => array(
- 'type' => TType::STRUCT,
- 'class' => '\Airavata\Model\Workspace\Experiment\ErrorDetails',
- ),
- ),
);
}
if (is_array($vals)) {
@@ -4185,9 +4192,6 @@ class ExperimentSummary {
if (isset($vals['experimentStatus'])) {
$this->experimentStatus = $vals['experimentStatus'];
}
- if (isset($vals['errors'])) {
- $this->errors = $vals['errors'];
- }
}
}
@@ -4267,24 +4271,6 @@ class ExperimentSummary {
$xfer += $input->skip($ftype);
}
break;
- case 9:
- if ($ftype == TType::LST) {
- $this->errors = array();
- $_size133 = 0;
- $_etype136 = 0;
- $xfer += $input->readListBegin($_etype136, $_size133);
- for ($_i137 = 0; $_i137 < $_size133; ++$_i137)
- {
- $elem138 = null;
- $elem138 = new \Airavata\Model\Workspace\Experiment\ErrorDetails();
- $xfer += $elem138->read($input);
- $this->errors []= $elem138;
- }
- $xfer += $input->readListEnd();
- } else {
- $xfer += $input->skip($ftype);
- }
- break;
default:
$xfer += $input->skip($ftype);
break;
@@ -4341,23 +4327,6 @@ class ExperimentSummary {
$xfer += $this->experimentStatus->write($output);
$xfer += $output->writeFieldEnd();
}
- if ($this->errors !== null) {
- if (!is_array($this->errors)) {
- throw new TProtocolException('Bad type in structure.', TProtocolException::INVALID_DATA);
- }
- $xfer += $output->writeFieldBegin('errors', TType::LST, 9);
- {
- $output->writeListBegin(TType::STRUCT, count($this->errors));
- {
- foreach ($this->errors as $iter139)
- {
- $xfer += $iter139->write($output);
- }
- }
- $output->writeListEnd();
- }
- $xfer += $output->writeFieldEnd();
- }
$xfer += $output->writeFieldStop();
$xfer += $output->writeStructEnd();
return $xfer;
http://git-wip-us.apache.org/repos/asf/airavata/blob/7bc175fe/airavata-api/airavata-client-sdks/airavata-python-sdk/src/main/resources/lib/apache/airavata/api/Airavata.py
----------------------------------------------------------------------
diff --git a/airavata-api/airavata-client-sdks/airavata-python-sdk/src/main/resources/lib/apache/airavata/api/Airavata.py b/airavata-api/airavata-client-sdks/airavata-python-sdk/src/main/resources/lib/apache/airavata/api/Airavata.py
index 8f6142c..6378dad 100644
--- a/airavata-api/airavata-client-sdks/airavata-python-sdk/src/main/resources/lib/apache/airavata/api/Airavata.py
+++ b/airavata-api/airavata-client-sdks/airavata-python-sdk/src/main/resources/lib/apache/airavata/api/Airavata.py
@@ -516,7 +516,7 @@ class Iface:
@param userName
Username of the requested user
@param filters
- map of multiple filter criteria. keys has to be camel case field values eg. experimentName
+ map of multiple filter criteria.
@param limit
Amount of results to be fetched
@param offset
@@ -3564,7 +3564,7 @@ class Client(Iface):
@param userName
Username of the requested user
@param filters
- map of multiple filter criteria. keys has to be camel case field values eg. experimentName
+ map of multiple filter criteria.
@param limit
Amount of results to be fetched
@param offset
@@ -16209,7 +16209,7 @@ class searchExperiments_args:
None, # 0
(1, TType.STRING, 'gatewayId', None, None, ), # 1
(2, TType.STRING, 'userName', None, None, ), # 2
- (3, TType.MAP, 'filters', (TType.STRING,None,TType.STRING,None), None, ), # 3
+ (3, TType.MAP, 'filters', (TType.I32,None,TType.STRING,None), None, ), # 3
(4, TType.I32, 'limit', None, None, ), # 4
(5, TType.I32, 'offset', None, None, ), # 5
)
@@ -16245,7 +16245,7 @@ class searchExperiments_args:
self.filters = {}
(_ktype129, _vtype130, _size128 ) = iprot.readMapBegin()
for _i132 in xrange(_size128):
- _key133 = iprot.readString();
+ _key133 = iprot.readI32();
_val134 = iprot.readString();
self.filters[_key133] = _val134
iprot.readMapEnd()
@@ -16281,9 +16281,9 @@ class searchExperiments_args:
oprot.writeFieldEnd()
if self.filters is not None:
oprot.writeFieldBegin('filters', TType.MAP, 3)
- oprot.writeMapBegin(TType.STRING, TType.STRING, len(self.filters))
+ oprot.writeMapBegin(TType.I32, TType.STRING, len(self.filters))
for kiter135,viter136 in self.filters.items():
- oprot.writeString(kiter135)
+ oprot.writeI32(kiter135)
oprot.writeString(viter136)
oprot.writeMapEnd()
oprot.writeFieldEnd()
http://git-wip-us.apache.org/repos/asf/airavata/blob/7bc175fe/airavata-api/airavata-client-sdks/airavata-python-sdk/src/main/resources/lib/apache/airavata/model/workspace/experiment/ttypes.py
----------------------------------------------------------------------
diff --git a/airavata-api/airavata-client-sdks/airavata-python-sdk/src/main/resources/lib/apache/airavata/model/workspace/experiment/ttypes.py b/airavata-api/airavata-client-sdks/airavata-python-sdk/src/main/resources/lib/apache/airavata/model/workspace/experiment/ttypes.py
index 3ffe2b2..e446c56 100644
--- a/airavata-api/airavata-client-sdks/airavata-python-sdk/src/main/resources/lib/apache/airavata/model/workspace/experiment/ttypes.py
+++ b/airavata-api/airavata-client-sdks/airavata-python-sdk/src/main/resources/lib/apache/airavata/model/workspace/experiment/ttypes.py
@@ -60,6 +60,32 @@ class ExperimentState:
"UNKNOWN": 10,
}
+class ExperimentSearchFields:
+ EXPERIMENT_NAME = 0
+ EXPERIMENT_DESC = 1
+ APPLICATION_ID = 2
+ FROM_DATE = 3
+ TO_DATE = 4
+ STATUS = 5
+
+ _VALUES_TO_NAMES = {
+ 0: "EXPERIMENT_NAME",
+ 1: "EXPERIMENT_DESC",
+ 2: "APPLICATION_ID",
+ 3: "FROM_DATE",
+ 4: "TO_DATE",
+ 5: "STATUS",
+ }
+
+ _NAMES_TO_VALUES = {
+ "EXPERIMENT_NAME": 0,
+ "EXPERIMENT_DESC": 1,
+ "APPLICATION_ID": 2,
+ "FROM_DATE": 3,
+ "TO_DATE": 4,
+ "STATUS": 5,
+ }
+
class WorkflowNodeState:
INVOKED = 0
EXECUTING = 1
@@ -2902,7 +2928,6 @@ class ExperimentSummary:
- description
- applicationId
- experimentStatus
- - errors
"""
thrift_spec = (
@@ -2915,10 +2940,9 @@ class ExperimentSummary:
(6, TType.STRING, 'description', None, None, ), # 6
(7, TType.STRING, 'applicationId', None, None, ), # 7
(8, TType.STRUCT, 'experimentStatus', (ExperimentStatus, ExperimentStatus.thrift_spec), None, ), # 8
- (9, TType.LIST, 'errors', (TType.STRUCT,(ErrorDetails, ErrorDetails.thrift_spec)), None, ), # 9
)
- def __init__(self, experimentID=None, projectID=None, creationTime=None, userName=None, name=None, description=None, applicationId=None, experimentStatus=None, errors=None,):
+ def __init__(self, experimentID=None, projectID=None, creationTime=None, userName=None, name=None, description=None, applicationId=None, experimentStatus=None,):
self.experimentID = experimentID
self.projectID = projectID
self.creationTime = creationTime
@@ -2927,7 +2951,6 @@ class ExperimentSummary:
self.description = description
self.applicationId = applicationId
self.experimentStatus = experimentStatus
- self.errors = errors
def read(self, iprot):
if iprot.__class__ == TBinaryProtocol.TBinaryProtocolAccelerated and isinstance(iprot.trans, TTransport.CReadableTransport) and self.thrift_spec is not None and fastbinary is not None:
@@ -2979,17 +3002,6 @@ class ExperimentSummary:
self.experimentStatus.read(iprot)
else:
iprot.skip(ftype)
- elif fid == 9:
- if ftype == TType.LIST:
- self.errors = []
- (_etype136, _size133) = iprot.readListBegin()
- for _i137 in xrange(_size133):
- _elem138 = ErrorDetails()
- _elem138.read(iprot)
- self.errors.append(_elem138)
- iprot.readListEnd()
- else:
- iprot.skip(ftype)
else:
iprot.skip(ftype)
iprot.readFieldEnd()
@@ -3032,13 +3044,6 @@ class ExperimentSummary:
oprot.writeFieldBegin('experimentStatus', TType.STRUCT, 8)
self.experimentStatus.write(oprot)
oprot.writeFieldEnd()
- if self.errors is not None:
- oprot.writeFieldBegin('errors', TType.LIST, 9)
- oprot.writeListBegin(TType.STRUCT, len(self.errors))
- for iter139 in self.errors:
- iter139.write(oprot)
- oprot.writeListEnd()
- oprot.writeFieldEnd()
oprot.writeFieldStop()
oprot.writeStructEnd()
http://git-wip-us.apache.org/repos/asf/airavata/blob/7bc175fe/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/workspace/experiment/ExperimentSummary.java
----------------------------------------------------------------------
diff --git a/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/workspace/experiment/ExperimentSummary.java b/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/workspace/experiment/ExperimentSummary.java
index c30e4ea..b1a1630 100644
--- a/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/workspace/experiment/ExperimentSummary.java
+++ b/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/workspace/experiment/ExperimentSummary.java
@@ -60,7 +60,6 @@ import org.slf4j.LoggerFactory;
private static final org.apache.thrift.protocol.TField DESCRIPTION_FIELD_DESC = new org.apache.thrift.protocol.TField("description", org.apache.thrift.protocol.TType.STRING, (short)6);
private static final org.apache.thrift.protocol.TField APPLICATION_ID_FIELD_DESC = new org.apache.thrift.protocol.TField("applicationId", org.apache.thrift.protocol.TType.STRING, (short)7);
private static final org.apache.thrift.protocol.TField EXPERIMENT_STATUS_FIELD_DESC = new org.apache.thrift.protocol.TField("experimentStatus", org.apache.thrift.protocol.TType.STRUCT, (short)8);
- private static final org.apache.thrift.protocol.TField ERRORS_FIELD_DESC = new org.apache.thrift.protocol.TField("errors", org.apache.thrift.protocol.TType.LIST, (short)9);
private static final Map<Class<? extends IScheme>, SchemeFactory> schemes = new HashMap<Class<? extends IScheme>, SchemeFactory>();
static {
@@ -76,7 +75,6 @@ import org.slf4j.LoggerFactory;
private String description; // optional
private String applicationId; // optional
private ExperimentStatus experimentStatus; // optional
- private List<ErrorDetails> errors; // optional
/** The set of fields this struct contains, along with convenience methods for finding and manipulating them. */
@SuppressWarnings("all") public enum _Fields implements org.apache.thrift.TFieldIdEnum {
@@ -87,8 +85,7 @@ import org.slf4j.LoggerFactory;
NAME((short)5, "name"),
DESCRIPTION((short)6, "description"),
APPLICATION_ID((short)7, "applicationId"),
- EXPERIMENT_STATUS((short)8, "experimentStatus"),
- ERRORS((short)9, "errors");
+ EXPERIMENT_STATUS((short)8, "experimentStatus");
private static final Map<String, _Fields> byName = new HashMap<String, _Fields>();
@@ -119,8 +116,6 @@ import org.slf4j.LoggerFactory;
return APPLICATION_ID;
case 8: // EXPERIMENT_STATUS
return EXPERIMENT_STATUS;
- case 9: // ERRORS
- return ERRORS;
default:
return null;
}
@@ -163,7 +158,7 @@ import org.slf4j.LoggerFactory;
// isset id assignments
private static final int __CREATIONTIME_ISSET_ID = 0;
private byte __isset_bitfield = 0;
- private _Fields optionals[] = {_Fields.CREATION_TIME,_Fields.DESCRIPTION,_Fields.APPLICATION_ID,_Fields.EXPERIMENT_STATUS,_Fields.ERRORS};
+ private _Fields optionals[] = {_Fields.CREATION_TIME,_Fields.DESCRIPTION,_Fields.APPLICATION_ID,_Fields.EXPERIMENT_STATUS};
public static final Map<_Fields, org.apache.thrift.meta_data.FieldMetaData> metaDataMap;
static {
Map<_Fields, org.apache.thrift.meta_data.FieldMetaData> tmpMap = new EnumMap<_Fields, org.apache.thrift.meta_data.FieldMetaData>(_Fields.class);
@@ -183,9 +178,6 @@ import org.slf4j.LoggerFactory;
new org.apache.thrift.meta_data.FieldValueMetaData(org.apache.thrift.protocol.TType.STRING)));
tmpMap.put(_Fields.EXPERIMENT_STATUS, new org.apache.thrift.meta_data.FieldMetaData("experimentStatus", org.apache.thrift.TFieldRequirementType.OPTIONAL,
new org.apache.thrift.meta_data.StructMetaData(org.apache.thrift.protocol.TType.STRUCT, ExperimentStatus.class)));
- tmpMap.put(_Fields.ERRORS, new org.apache.thrift.meta_data.FieldMetaData("errors", org.apache.thrift.TFieldRequirementType.OPTIONAL,
- new org.apache.thrift.meta_data.ListMetaData(org.apache.thrift.protocol.TType.LIST,
- new org.apache.thrift.meta_data.StructMetaData(org.apache.thrift.protocol.TType.STRUCT, ErrorDetails.class))));
metaDataMap = Collections.unmodifiableMap(tmpMap);
org.apache.thrift.meta_data.FieldMetaData.addStructMetaDataMap(ExperimentSummary.class, metaDataMap);
}
@@ -233,13 +225,6 @@ import org.slf4j.LoggerFactory;
if (other.isSetExperimentStatus()) {
this.experimentStatus = new ExperimentStatus(other.experimentStatus);
}
- if (other.isSetErrors()) {
- List<ErrorDetails> __this__errors = new ArrayList<ErrorDetails>(other.errors.size());
- for (ErrorDetails other_element : other.errors) {
- __this__errors.add(new ErrorDetails(other_element));
- }
- this.errors = __this__errors;
- }
}
public ExperimentSummary deepCopy() {
@@ -257,7 +242,6 @@ import org.slf4j.LoggerFactory;
this.description = null;
this.applicationId = null;
this.experimentStatus = null;
- this.errors = null;
}
public String getExperimentID() {
@@ -443,44 +427,6 @@ import org.slf4j.LoggerFactory;
}
}
- public int getErrorsSize() {
- return (this.errors == null) ? 0 : this.errors.size();
- }
-
- public java.util.Iterator<ErrorDetails> getErrorsIterator() {
- return (this.errors == null) ? null : this.errors.iterator();
- }
-
- public void addToErrors(ErrorDetails elem) {
- if (this.errors == null) {
- this.errors = new ArrayList<ErrorDetails>();
- }
- this.errors.add(elem);
- }
-
- public List<ErrorDetails> getErrors() {
- return this.errors;
- }
-
- public void setErrors(List<ErrorDetails> errors) {
- this.errors = errors;
- }
-
- public void unsetErrors() {
- this.errors = null;
- }
-
- /** Returns true if field errors is set (has been assigned a value) and false otherwise */
- public boolean isSetErrors() {
- return this.errors != null;
- }
-
- public void setErrorsIsSet(boolean value) {
- if (!value) {
- this.errors = null;
- }
- }
-
public void setFieldValue(_Fields field, Object value) {
switch (field) {
case EXPERIMENT_ID:
@@ -547,14 +493,6 @@ import org.slf4j.LoggerFactory;
}
break;
- case ERRORS:
- if (value == null) {
- unsetErrors();
- } else {
- setErrors((List<ErrorDetails>)value);
- }
- break;
-
}
}
@@ -584,9 +522,6 @@ import org.slf4j.LoggerFactory;
case EXPERIMENT_STATUS:
return getExperimentStatus();
- case ERRORS:
- return getErrors();
-
}
throw new IllegalStateException();
}
@@ -614,8 +549,6 @@ import org.slf4j.LoggerFactory;
return isSetApplicationId();
case EXPERIMENT_STATUS:
return isSetExperimentStatus();
- case ERRORS:
- return isSetErrors();
}
throw new IllegalStateException();
}
@@ -705,15 +638,6 @@ import org.slf4j.LoggerFactory;
return false;
}
- boolean this_present_errors = true && this.isSetErrors();
- boolean that_present_errors = true && that.isSetErrors();
- if (this_present_errors || that_present_errors) {
- if (!(this_present_errors && that_present_errors))
- return false;
- if (!this.errors.equals(that.errors))
- return false;
- }
-
return true;
}
@@ -810,16 +734,6 @@ import org.slf4j.LoggerFactory;
return lastComparison;
}
}
- lastComparison = Boolean.valueOf(isSetErrors()).compareTo(other.isSetErrors());
- if (lastComparison != 0) {
- return lastComparison;
- }
- if (isSetErrors()) {
- lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.errors, other.errors);
- if (lastComparison != 0) {
- return lastComparison;
- }
- }
return 0;
}
@@ -907,16 +821,6 @@ import org.slf4j.LoggerFactory;
}
first = false;
}
- if (isSetErrors()) {
- if (!first) sb.append(", ");
- sb.append("errors:");
- if (this.errors == null) {
- sb.append("null");
- } else {
- sb.append(this.errors);
- }
- first = false;
- }
sb.append(")");
return sb.toString();
}
@@ -1046,25 +950,6 @@ import org.slf4j.LoggerFactory;
org.apache.thrift.protocol.TProtocolUtil.skip(iprot, schemeField.type);
}
break;
- case 9: // ERRORS
- if (schemeField.type == org.apache.thrift.protocol.TType.LIST) {
- {
- org.apache.thrift.protocol.TList _list152 = iprot.readListBegin();
- struct.errors = new ArrayList<ErrorDetails>(_list152.size);
- for (int _i153 = 0; _i153 < _list152.size; ++_i153)
- {
- ErrorDetails _elem154;
- _elem154 = new ErrorDetails();
- _elem154.read(iprot);
- struct.errors.add(_elem154);
- }
- iprot.readListEnd();
- }
- struct.setErrorsIsSet(true);
- } else {
- org.apache.thrift.protocol.TProtocolUtil.skip(iprot, schemeField.type);
- }
- break;
default:
org.apache.thrift.protocol.TProtocolUtil.skip(iprot, schemeField.type);
}
@@ -1124,20 +1009,6 @@ import org.slf4j.LoggerFactory;
oprot.writeFieldEnd();
}
}
- if (struct.errors != null) {
- if (struct.isSetErrors()) {
- oprot.writeFieldBegin(ERRORS_FIELD_DESC);
- {
- oprot.writeListBegin(new org.apache.thrift.protocol.TList(org.apache.thrift.protocol.TType.STRUCT, struct.errors.size()));
- for (ErrorDetails _iter155 : struct.errors)
- {
- _iter155.write(oprot);
- }
- oprot.writeListEnd();
- }
- oprot.writeFieldEnd();
- }
- }
oprot.writeFieldStop();
oprot.writeStructEnd();
}
@@ -1172,10 +1043,7 @@ import org.slf4j.LoggerFactory;
if (struct.isSetExperimentStatus()) {
optionals.set(3);
}
- if (struct.isSetErrors()) {
- optionals.set(4);
- }
- oprot.writeBitSet(optionals, 5);
+ oprot.writeBitSet(optionals, 4);
if (struct.isSetCreationTime()) {
oprot.writeI64(struct.creationTime);
}
@@ -1188,15 +1056,6 @@ import org.slf4j.LoggerFactory;
if (struct.isSetExperimentStatus()) {
struct.experimentStatus.write(oprot);
}
- if (struct.isSetErrors()) {
- {
- oprot.writeI32(struct.errors.size());
- for (ErrorDetails _iter156 : struct.errors)
- {
- _iter156.write(oprot);
- }
- }
- }
}
@Override
@@ -1210,7 +1069,7 @@ import org.slf4j.LoggerFactory;
struct.setUserNameIsSet(true);
struct.name = iprot.readString();
struct.setNameIsSet(true);
- BitSet incoming = iprot.readBitSet(5);
+ BitSet incoming = iprot.readBitSet(4);
if (incoming.get(0)) {
struct.creationTime = iprot.readI64();
struct.setCreationTimeIsSet(true);
@@ -1228,20 +1087,6 @@ import org.slf4j.LoggerFactory;
struct.experimentStatus.read(iprot);
struct.setExperimentStatusIsSet(true);
}
- if (incoming.get(4)) {
- {
- org.apache.thrift.protocol.TList _list157 = new org.apache.thrift.protocol.TList(org.apache.thrift.protocol.TType.STRUCT, iprot.readI32());
- struct.errors = new ArrayList<ErrorDetails>(_list157.size);
- for (int _i158 = 0; _i158 < _list157.size; ++_i158)
- {
- ErrorDetails _elem159;
- _elem159 = new ErrorDetails();
- _elem159.read(iprot);
- struct.errors.add(_elem159);
- }
- }
- struct.setErrorsIsSet(true);
- }
}
}
http://git-wip-us.apache.org/repos/asf/airavata/blob/7bc175fe/airavata-api/thrift-interface-descriptions/airavataAPI.thrift
----------------------------------------------------------------------
diff --git a/airavata-api/thrift-interface-descriptions/airavataAPI.thrift b/airavata-api/thrift-interface-descriptions/airavataAPI.thrift
index 97506b6..fd5c085 100644
--- a/airavata-api/thrift-interface-descriptions/airavataAPI.thrift
+++ b/airavata-api/thrift-interface-descriptions/airavataAPI.thrift
@@ -510,14 +510,14 @@ service Airavata {
* @param userName
* Username of the requested user
* @param filters
- * map of multiple filter criteria. keys has to be camel case field values eg. experimentName
+ * map of multiple filter criteria.
* @param limit
* Amount of results to be fetched
* @param offset
* The starting point of the results to be fetched
*/
list<experimentModel.ExperimentSummary> searchExperiments(1: required string gatewayId,
- 2: required string userName, 3: map<string, string> filters,
+ 2: required string userName, 3: map<experimentModel.ExperimentSearchFields, string> filters,
4: required i32 limit, 5: required i32 offset)
throws (1: airavataErrors.InvalidRequestException ire,
2: airavataErrors.AiravataClientException ace,
http://git-wip-us.apache.org/repos/asf/airavata/blob/7bc175fe/airavata-api/thrift-interface-descriptions/experimentModel.thrift
----------------------------------------------------------------------
diff --git a/airavata-api/thrift-interface-descriptions/experimentModel.thrift b/airavata-api/thrift-interface-descriptions/experimentModel.thrift
index 51aaca7..d0d50f9 100644
--- a/airavata-api/thrift-interface-descriptions/experimentModel.thrift
+++ b/airavata-api/thrift-interface-descriptions/experimentModel.thrift
@@ -72,6 +72,15 @@ enum ExperimentState {
UNKNOWN
}
+enum ExperimentSearchFields {
+ EXPERIMENT_NAME,
+ EXPERIMENT_DESC,
+ APPLICATION_ID,
+ FROM_DATE,
+ TO_DATE,
+ STATUS
+}
+
struct ExperimentStatus {
1: required ExperimentState experimentState,
2: optional i64 timeOfStateChange
@@ -399,5 +408,4 @@ struct ExperimentSummary {
6: optional string description,
7: optional string applicationId,
8: optional ExperimentStatus experimentStatus,
- 9: optional list<ErrorDetails> errors
}
http://git-wip-us.apache.org/repos/asf/airavata/blob/7bc175fe/modules/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/model/ErrorDetail.java
----------------------------------------------------------------------
diff --git a/modules/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/model/ErrorDetail.java b/modules/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/model/ErrorDetail.java
index 9d1d21e..f4d3b64 100644
--- a/modules/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/model/ErrorDetail.java
+++ b/modules/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/model/ErrorDetail.java
@@ -62,15 +62,15 @@ public class ErrorDetail implements Serializable {
private String jobId;
- @ManyToOne(cascade= CascadeType.MERGE)
+ @ManyToOne(fetch = FetchType.LAZY, cascade= CascadeType.MERGE)
@JoinColumn(name = "EXPERIMENT_ID")
private Experiment experiment;
- @ManyToOne(cascade= CascadeType.MERGE)
+ @ManyToOne(fetch = FetchType.LAZY, cascade= CascadeType.MERGE)
@JoinColumn(name = "TASK_ID")
private TaskDetail task;
- @ManyToOne(cascade= CascadeType.MERGE)
+ @ManyToOne(fetch = FetchType.LAZY, cascade= CascadeType.MERGE)
@JoinColumn(name = "NODE_INSTANCE_ID")
private WorkflowNodeDetail nodeDetails;
http://git-wip-us.apache.org/repos/asf/airavata/blob/7bc175fe/modules/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/model/Experiment.java
----------------------------------------------------------------------
diff --git a/modules/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/model/Experiment.java b/modules/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/model/Experiment.java
index f1555f5..35416b5 100644
--- a/modules/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/model/Experiment.java
+++ b/modules/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/model/Experiment.java
@@ -74,10 +74,10 @@ public class Experiment implements Serializable {
@JoinColumn(name = "EXECUTION_USER", referencedColumnName = "USER_NAME")
private Users user;
- @OneToMany(mappedBy = "experiment")
+ @OneToMany(fetch=FetchType.LAZY, mappedBy = "experiment")
private Collection<ErrorDetail> errorDetails;
- @OneToMany(mappedBy = "experiment")
+ @OneToMany(fetch=FetchType.LAZY, mappedBy = "experiment")
private Collection<Status> statuses;
public String getExpId() {
http://git-wip-us.apache.org/repos/asf/airavata/blob/7bc175fe/modules/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/model/Status.java
----------------------------------------------------------------------
diff --git a/modules/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/model/Status.java b/modules/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/model/Status.java
index 4783af5..e0b84a1 100644
--- a/modules/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/model/Status.java
+++ b/modules/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/model/Status.java
@@ -52,19 +52,19 @@ public class Status implements Serializable {
@Column(name = "STATUS_TYPE")
private String statusType;
- @ManyToOne(cascade= CascadeType.MERGE)
+ @ManyToOne(fetch = FetchType.LAZY, cascade= CascadeType.MERGE)
@JoinColumn(name = "EXPERIMENT_ID")
private Experiment experiment;
- @ManyToOne(cascade= CascadeType.MERGE)
+ @ManyToOne(fetch = FetchType.LAZY, cascade= CascadeType.MERGE)
@JoinColumn(name = "TASK_ID")
private TaskDetail task;
- @ManyToOne(cascade= CascadeType.MERGE)
+ @ManyToOne(fetch = FetchType.LAZY, cascade= CascadeType.MERGE)
@JoinColumn(name = "NODE_INSTANCE_ID")
private WorkflowNodeDetail node;
- @ManyToOne(cascade= CascadeType.MERGE)
+ @ManyToOne(fetch = FetchType.LAZY, cascade= CascadeType.MERGE)
@JoinColumn(name = "TRANSFER_ID")
private DataTransferDetail transferDetail;
http://git-wip-us.apache.org/repos/asf/airavata/blob/7bc175fe/modules/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/resources/ExperimentSummaryResource.java
----------------------------------------------------------------------
diff --git a/modules/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/resources/ExperimentSummaryResource.java b/modules/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/resources/ExperimentSummaryResource.java
index 0e54f80..fe4fbd0 100644
--- a/modules/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/resources/ExperimentSummaryResource.java
+++ b/modules/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/resources/ExperimentSummaryResource.java
@@ -41,7 +41,6 @@ public class ExperimentSummaryResource extends AbstractResource {
private String description;
private String applicationId;
- private List<ErrorDetailResource> errorDetails;
private StatusResource status;
@Override
@@ -125,14 +124,6 @@ public class ExperimentSummaryResource extends AbstractResource {
this.applicationId = applicationId;
}
- public List<ErrorDetailResource> getErrorDetails() {
- return errorDetails;
- }
-
- public void setErrorDetails(List<ErrorDetailResource> errorDetails) {
- this.errorDetails = errorDetails;
- }
-
public StatusResource getStatus() {
return status;
}
http://git-wip-us.apache.org/repos/asf/airavata/blob/7bc175fe/modules/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/resources/Utils.java
----------------------------------------------------------------------
diff --git a/modules/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/resources/Utils.java b/modules/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/resources/Utils.java
index 5c68bd4..24b4049 100644
--- a/modules/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/resources/Utils.java
+++ b/modules/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/resources/Utils.java
@@ -31,10 +31,8 @@ import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import java.net.URI;
-import java.util.ArrayList;
import java.util.Collection;
import java.util.Iterator;
-import java.util.List;
public class Utils {
@@ -500,26 +498,6 @@ public class Utils {
experimentSummaryResource.setDescription(o.getExpDesc());
experimentSummaryResource.setApplicationId(o.getApplicationId());
- if(o.getErrorDetails()!=null) {
- List<ErrorDetailResource> errorDetailResourceList = new ArrayList();
- for (ErrorDetail err : o.getErrorDetails()) {
- ErrorDetailResource errorDetailResource = new ErrorDetailResource();
- errorDetailResource.setErrorId(err.getErrorID());
- errorDetailResource.setJobId(err.getJobId());
- errorDetailResource.setCreationTime(o.getCreationTime());
- if (err.getActualErrorMsg() != null) {
- errorDetailResource.setActualErrorMsg(new String(err.getActualErrorMsg()));
- }
- errorDetailResource.setUserFriendlyErrorMsg(err.getUserFriendlyErrorMsg());
- errorDetailResource.setTransientPersistent(err.isTransientPersistent());
- errorDetailResource.setErrorCategory(err.getErrorCategory());
- errorDetailResource.setCorrectiveAction(err.getCorrectiveAction());
- errorDetailResource.setActionableGroup(err.getActionableGroup());
- errorDetailResourceList.add(errorDetailResource);
- }
- experimentSummaryResource.setErrorDetails(errorDetailResourceList);
- }
-
Collection<Status> statusList = o.getStatuses();
if(statusList != null && statusList.size()>0){
Iterator<Status> statusIterator = statusList.iterator();
http://git-wip-us.apache.org/repos/asf/airavata/blob/7bc175fe/modules/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/resources/WorkerResource.java
----------------------------------------------------------------------
diff --git a/modules/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/resources/WorkerResource.java b/modules/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/resources/WorkerResource.java
index ed7166f..4744de9 100644
--- a/modules/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/resources/WorkerResource.java
+++ b/modules/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/resources/WorkerResource.java
@@ -31,6 +31,10 @@ import org.apache.airavata.registry.cpi.RegistryException;
import org.apache.airavata.registry.cpi.ResultOrderType;
import org.apache.airavata.registry.cpi.utils.Constants;
import org.apache.airavata.registry.cpi.utils.StatusType;
+import org.apache.openjpa.persistence.OpenJPAPersistence;
+import org.apache.openjpa.persistence.OpenJPAQuery;
+import org.apache.openjpa.persistence.jdbc.FetchMode;
+import org.apache.openjpa.persistence.jdbc.JDBCFetchPlan;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
@@ -621,12 +625,16 @@ public class WorkerResource extends AbstractResource {
List<ExperimentSummaryResource> result = new ArrayList();
EntityManager em = null;
try {
- String query = "SELECT e FROM Experiment e " +
- "LEFT JOIN e.statuses s LEFT JOIN FETCH e.errorDetails LEFT JOIN FETCH e.statuses WHERE ";
+ String query;
if(filters.get(StatusConstants.STATE) != null) {
+ query = "SELECT e FROM Experiment e " +
+ "JOIN e.statuses s LEFT JOIN FETCH e.statuses WHERE " +
+ "s.statusType='" + StatusType.EXPERIMENT + "' AND ";
String experimentState = ExperimentState.valueOf(filters.get(StatusConstants.STATE)).toString();
- query += "s.state='" + experimentState + "' " +
- "AND s.statusType='" + StatusType.EXPERIMENT + "' AND ";
+ query += "s.state='" + experimentState + "' AND ";
+ }else{
+ query = "SELECT e FROM Experiment e " +
+ "LEFT JOIN FETCH e.statuses WHERE ";
}
if(toTime != null && fromTime != null && toTime.after(fromTime)){
@@ -670,6 +678,9 @@ public class WorkerResource extends AbstractResource {
}else{
q = em.createQuery(query);
}
+ OpenJPAQuery kq = OpenJPAPersistence.cast(q);
+ JDBCFetchPlan fetch = (JDBCFetchPlan) kq.getFetchPlan();
+ fetch.setEagerFetchMode(FetchMode.JOIN);
List resultList = q.getResultList();
for (Object o : resultList) {
http://git-wip-us.apache.org/repos/asf/airavata/blob/7bc175fe/modules/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/utils/ThriftDataModelConversion.java
----------------------------------------------------------------------
diff --git a/modules/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/utils/ThriftDataModelConversion.java b/modules/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/utils/ThriftDataModelConversion.java
index 2282a7e..53b3919 100644
--- a/modules/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/utils/ThriftDataModelConversion.java
+++ b/modules/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/utils/ThriftDataModelConversion.java
@@ -148,10 +148,6 @@ public class ThriftDataModelConversion {
if (experimentStatus != null){
experimentSummary.setExperimentStatus(getExperimentStatus(experimentStatus));
}
- List<ErrorDetailResource> errorDetails = experimentSummaryResource.getErrorDetails();
- if (errorDetails!= null && !errorDetails.isEmpty()){
- experimentSummary.setErrors(getErrorDetailList(errorDetails));
- }
return experimentSummary;
}
return null;