OGSA-DAI contains functionality that collects statistics on the use of OGSA-DAI and forwards this to the OGSA-DAI team. This is enabled by default in the release. For information on the statistics collected and how to disable this functionality please see Section 5.1, “Usage statistics”.
OGSA-DAI 3.0 is a complete rewrite of OGSA-DAI 2.2. A list of the changes made, why and advice on upgrading applications is given in Appendix N, Upgrading from OGSA-DAI 2.2.
java.sql APIs (in which
both additional methods and classes have been added) from earlier
versions of Java. The OGSA-DAI team may release a Java 1.6 patch in
the near future.
setenv scripts don't set
CLASSPATHs correctly under Cygwin.
table-name tag in WebRowSet XML
is empty in results produced by Oracle or SQLServer. This is a problem
of the JDBC drivers that do not provide table names in the metadata of
a java.sql.ResultSet.
littleblackbook while DB2
returns LITTLEBLACKBOOK.
java.sql.SQLExceptions from database
drivers to identify problems caused by a client (e.g. a
syntactically-incorrect SQL query) and those due to server-side
failures (e.g. loss of connection to a database).
org.gjt.mm.mysql.Driver
from the
mysql-connector-java-5.0.5
driver JAR in conjunction with MySQL version mysql-4.1.20-1.RHEL4.1 running on
Red Hat.
Even though they had provided the database name as part of the
database connection URL, e.g.
jdbc:mysql://localhost:3306/dbnameThey had to specify the database name in their queries also, e.g.
SELECT * FROM dbname.table
java.lang.OutOfMemoryError errors on
the OGSA-DAI server. See Chapter 22, Best practice.
java.lang.OutOfMemoryError. This can
be avoided by creating a data source and streaming the query data into
this (via the WriteToDataSource activity) then pulling the data back
to a client via a data source service. See Chapter 22, Best practice.
uk.org.ogsadai.common.msgs.DAILogger
methods can sometimes log the wrong line numbers. Searching the logs
will usually reveal where the problem actually arose.
deliverFromGridFTP and
deliverToGridFTP in a request
the transfer will fail.
uk.org.ogsadai.activity.sql.SQLBagActivity uk.org.ogsadai.activity.sql.SQLResilientActivity uk.org.ogsadai.activity.pipeline.AutomaticTeeuse hard-coded activity names to identify the activity or activities in sub-workflows they splice into workflows. This means that you should take care when renaming activities exposed by resources, especially block activities. This problem will be most likely manifested as an unsupported activity error.
IMAGE column type is not
currently supported.
deliverFromGridFTP and
deliverToGridFTP do not allow the
setting of certain GridFTP parameters.
org.xmldb.api.base.ResourceSet
object.
When building an OGSA-DAI Axis WAR file the service WSDL is customised to include the host and port on which Tomcat is running (which you specify at the command-line when building the WAR).
While OGSA-DAI WAR files can be dropped into Tomcats running on other hosts or ports and the services will be usable using OGSA-DAI clients, any attempt to use the service WSDL may run into problems as the WSDL will contain the host and port originally specified when the WAR was built. To work round this you can either:
schema/ogsadai/axis-specific-wsdl/*/*_service_service.wsdl files and then reZIP the WAR.
destroy operation. It is a no-op.
The default OGSA-DAI resource and activity managers
uk.org.ogsadai.activity.SimpleActivityManager uk.org.ogsadai.resource.SimpleResourceManager
cache activity specifications and resources in in-memory hash tables. They do not check for changes in any persisted configuration associated with the activity specifications or resources once the associated objects are in the cache.
uk.org.ogsadai.persistence.file.resource.SimpleFileResourceStateDAO
only handles the persistence and restoration of resource properties or
session state that are Strings.
uk.org.ogsadai.service.gt.resource.GTResourceProperty methods
add(X) clear() get(int) remove(Object) set(int, Object)are currently not supported. These would need to convert from XML fragments into objects.
uk.org.ogsadai.common.BinaryLob class
contains unimplemented methods which throw
java.lang.UnsupportedOperationException.
java.sql.ResultSet to XML
WebRowSet returns empty key-column and
map properties in the
properties element.
The following APIs may be assumed to be held stable for the forseeable future (12 months). Changes will only be made if a fundamental problem is encountered for a majority of users.
The following components may be subject to change in light of requirements for more functionality or bug fixes. We may release bug fixed components or new versions of existing components. These will not incur API changes however. Note also that these are components that implement OGSA-DAI extensibility points so are designed to be pluggable and replaceable in this way.
The following APIs and components may be viewed as "alpha" versions which will be subject to change:
This list outlines the activities supported in OGSA-DAI 3.0. Prior to release activities were subject to review. This review covered:
![]() | Note |
|---|---|
This review was not completed in time for the release. It is intended that at a suitable point after completion of this review updated user documentation and any updated activities (as a consequence of identified bugs, improvements to error handling, robustness or behaviour or to make conformant with the specification) will be released. |
| Name | Server-Side Class
Sub-packages of
| Client-Side Class
Sub-packages of
| Reviewed? |
|---|---|---|---|
| Block Activities | block. | block. | |
| ByteArraysResize | ByteArraysResizeActivity | ByteArraysResize | Yes |
| CharArraysResize | CharArraysResizeActivity | CharArraysResize | Yes |
| ControlledRepeat | ControlledRepeatActivity | ControlledRepeat | Yes |
| ListConcatenate | ListConcatenateActivity | ListConcatenate | Yes |
| ListControlledRepeat | ListControlledRepeatActivity | ListControlledRepeat | Yes |
| ListMultiply | ListMultiplyActivity | ListMultiply | - |
| Split | SplitActivity | Split | - |
| Tee | TeeActivity | Tee | Yes |
| ListRemove | ListRemoveActivity | ListRemove | Yes |
| Delivery Activities | delivery. | delivery. | |
| DeliverToDataSink | DeliverToDataSinkActivity | DeliverToDataSink | Yes |
| DeliverToFTP | DeliverToFTPActivity | DeliverToFTP | Yes |
| DeliverToGFTP | DeliverToGFTPActivity | DeliverToGFTP | Yes |
| DeliverToHTTP | DeliverToHTTPActivity | - | - |
| DeliverToRequestStatus | DeliverToRequestStatusActivity | DeliverToRequestStatus | Yes |
| DeliverToSession | DeliverToSessionActivity | DeliverToSession | - |
| DeliverToSMTP | DeliverToSMTPActivity | DeliverToSMTP | Yes |
| ObtainFromFTP | ObtainFromFTPActivity | ObtainFromFTP | Yes |
| ObtainFromGFTP | ObtainFromGFTPActivity | ObtainFromGFTP | Yes |
| ObtainFromHTTP | ObtainFromHTTPActivity | ObtainFromHTTP | - |
| ObtainFromSession | ObtainFromSessionActivity | ObtainFromSession | - |
| ObtainFromDataSource | ObtainFromDataSourceActivity | ObtainFromDataSource | Yes |
| ReadFromDataSink | ReadFromDataSinkActivity | ReadFromDataSink | Yes |
| WriteToDataSource | WriteToDataSourceActivity | WriteToDataSource | Yes |
| File Activities | file. | file. | |
| ReadFromFile | ReadFromFileActivity | ReadFromFile | Yes |
| ListDirectory | ListDirectoryActivity | ListDirectory | Yes |
| Management Activities | management. | management. | |
| CreateDataSink | CreateDataSinkActivity | CreateDataSink | Yes |
| CreateDataSource | CreateDataSourceActivity | CreateDataSource | Yes |
| CreateResourceGroup | CreateResourceGroupActivity | CreateResourceGroup | Yes |
| Relational Activities | sql. | sql. | |
| ExtractTableSchema | ExtractTableSchemaActivity | ExtractTableSchema | - |
| GetAvailableTable | GetAvailableTableActivity | GetAvailableTable | Yes |
| SQLBag | SQLBagActivity | SQLBag | Yes |
| SQLBulkLoadTuple | SQLBulkLoadTupleActivity | SQLBulkLoadTuple | Yes |
| SQLParameterisedQuery | SQLParameterisedQueryActivity | SQLParameterisedQuery | Yes |
| SQLParameterisedUpdate | SQLParameterisedUpdateActivity | SQLParameterisedUpdate | Yes |
| SQLQuery | SQLQueryActivity | SQLQuery | Yes |
| SQLResilient | SQLResilientActivity | SQLResilient | Yes |
| SQLUpdate | SQLUpdateActivity | SQLUpdate | Yes |
| Transformation Activities | transform. | transform. | |
| CSVToTuple | CSVToTupleActivity | CSVToTuple | Yes |
| NumberToStringActivity | NumberToStringActivity | - | - |
| StringConcatenateActivity | StringConcatenateActivity | - | - |
| StringTokenizeActivity | StringTokenizeActivity | - | - |
| TupleProjection | TupleProjectionActivity | TupleProjection | Yes |
| TupleSimpleMerge | TupleSimpleMergeActivity | TupleSimpleMerge | Yes |
| TupleSplit | TupleSplitActivity | TupleSplit | Yes |
| TupleToCSV | TupleToCSVActivity | TupleToCSV | Yes |
| TableMetadataToXMLCharArrays | TableMetadataToXMLCharArraysActivity | TableMetadataToXMLCharArrays | - |
| TupleToWebRowSetCharArrays | TupleToWebRowSetCharArraysActivity | TupleToWebRowSetCharArrays | Yes |
| WebRowSetCharacterDataToTuple | WebRowSetCharacterDataToTupleActivity | WebRowSetCharacterDataToTuple | Yes |
| Utility Activities | util. | util. | |
| ActivityUserErrorProducer | ActivityUserErrorProducerActivity | ActivityUserErrorProducer | - |
| CloneableObjectProducer | CloneableObjectProducerActivity | CloneableObjectProducer | - |
| Counter | CounterActivity | Counter | - |
| DQPPattern | DQPPatternActivity | DQPPattern | - |
| Echo | EchoActivity | Echo | Yes |
| HashCode | HashCodeActivity | HashCode | Yes |
| ReadString | ReadStringActivity | ReadString | Yes |
| Sleep | SleepActivity | Sleep | Yes |
| Timestamp | TimestampActivity | Timestamp | Yes |
| XSLTransform | XSLTransformActivity | XSLTransform | Yes |
| XMLDB Activities | xmldb. | xmldb. | |
| XMLListCollections | XMLListCollectionsActivity | XMLListCollections | Yes |
| XMLListResources | XMLListResourcesActivity | XMLListResources | Yes |
| XPathQuery | XPathQueryActivity | XPathQuery | Yes |
| XQuery | XQueryActivity | XQuery | Yes |
Table 4.1. Status of activities in OGSA-DAI 3.0
OGSA-DAI 3.0 has been tested as follows. All tests are run on Linux Red Hat 9 under Java 1.4.2_12 and using Apache ANT 1.6.5.
| Release | Unit tests | Database specific tests | Release build tests | Client-server tests |
|---|---|---|---|---|
| OGSA-DAI 3.0 GT 4.0.5 | Yes | Yes | Yes | Yes - this includes security-related tests |
Table 4.2. Tested platforms and databases
Database-specific tests have been run upon all the databases listed in Chapter 3, Data resource products. Client-server tests were run using MySQL, eXist and file system resources.
OGSA-DAI services are compliant with the version of WSRF currently bundled with Globus Toolkit 4.0.5. From the Globus Toolkit user doc core facts ( http://www.globus.org/toolkit/docs/4.0/common/javawscore/JavaWSCoreFacts.html) these are
"...the 2004/06 OASIS WSRF and WSN working draft specifications (with minor fixes to the 1.2-draft-01 published schemas and with the March 2004 version of the WS-Addressing specification)"