[JBoss JIRA] Created: (TEIID-751) SDO_WITHIN_DISTANCE function of Oracle Spatial Connector is pushing string literal to data source
by Larry O'Leary (JIRA)
SDO_WITHIN_DISTANCE function of Oracle Spatial Connector is pushing string literal to data source
-------------------------------------------------------------------------------------------------
Key: TEIID-751
URL: https://jira.jboss.org/jira/browse/TEIID-751
Project: Teiid
Issue Type: Bug
Components: JDBC Connector
Affects Versions: 6.1.0, 6.0.0
Reporter: Larry O'Leary
Assignee: Larry O'Leary
Priority: Minor
Fix For: 6.2.0
Executing a query which uses the SDO_WITHIN_DISTANCE function in criteria results in an invalid query being sent to Oracle.
Query:
SELECT RECORD_ID FROM OraSpatialSrcTable WHERE sdo_within_distance(MARKER, '(SDO_GEOMETRY(2001, 8307, MDSYS.SDO_POINT_TYPE(90.0, -45.0, NULL), NULL, NULL))', "DISTANCE=25.0 UNIT=NAUT_MILE") = 'TRUE'
Results In Exception:
ERROR <com.metamatrix.core|0> [MetaMatrix][Oracle JDBC Driver][Oracle]ORA-29900: operator binding does not exist
ORA-06553: PLS-306: wrong number or types of arguments in call to 'SDO_WITHIN_DISTANCE'
Executing statement:
SELECT ORASPATIALSRCTABLE.RECORD_ID FROM ORASPATIALSRCTABLE WHERE SDO_WITHIN_DISTANCE(ORASPATIALSRCTABLE.MARKER, '(SDO_GEOMETRY(2001, 8307, MDSYS.SDO_POINT_TYPE(90.0, -45.0, NULL), NULL, NULL))', 'DISTANCE=25.0 UNIT=NAUT_MILE') = TRUE
java.sql.SQLException: [MetaMatrix][Oracle JDBC Driver][Oracle]ORA-29900: operator binding does not exist
ORA-06553: PLS-306: wrong number or types of arguments in call to 'SDO_WITHIN_DISTANCE'
at com.metamatrix.common.util.exception.SQLExceptionUnroller.unRollException(SQLExceptionUnroller.java:43)
at com.metamatrix.connector.jdbc.JDBCBaseExecution.createError(JDBCBaseExecution.java:147)
at com.metamatrix.connector.jdbc.JDBCBaseExecution.createAndLogError(JDBCBaseExecution.java:103)
at com.metamatrix.connector.jdbc.JDBCQueryExecution.execute(JDBCQueryExecution.java:89)
at com.metamatrix.dqp.internal.datamgr.impl.ConnectorWorker.processNewRequest(ConnectorWorker.java:274)
at com.metamatrix.dqp.internal.datamgr.impl.ConnectorWorker.processBatchRequest(ConnectorWorker.java:165)
at com.metamatrix.dqp.internal.datamgr.impl.ConnectorWorker.process(ConnectorWorker.java:139)
at com.metamatrix.common.queue.QueueWorker.run(QueueWorker.java:51)
The exception is due to the second parameter of SDO_WITHIN_DISTANCE being escaped as a string.
The expected query should be:
SELECT ORASPATIALSRCTABLE.RECORD_ID FROM ORASPATIALSRCTABLE WHERE SDO_WITHIN_DISTANCE(ORASPATIALSRCTABLE.MARKER, (SDO_GEOMETRY(2001, 8307, MDSYS.SDO_POINT_TYPE(90.0, -45.0, NULL), NULL, NULL)), 'DISTANCE=25.0 UNIT=NAUT_MILE') = TRUE
In the above query the first parameter was an element of type String. If the first parameter was of type Object, the function is rewritten correctly. This appears to be primarily due to the function signatures of sdo_within_distance and the query rewriter performing an implicit convert on the second parameter to make it match the function signature of String, Object, String rather than Object, String, String.
--
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: https://jira.jboss.org/jira/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira
14 years, 1 month
[JBoss JIRA] Created: (TEIID-1231) Model visibility should only refer to whether entries are in metadata
by Steve Hawkins (JIRA)
Model visibility should only refer to whether entries are in metadata
---------------------------------------------------------------------
Key: TEIID-1231
URL: https://jira.jboss.org/browse/TEIID-1231
Project: Teiid
Issue Type: Quality Risk
Components: Query Engine
Affects Versions: 7.1.1
Reporter: Steve Hawkins
Assignee: Steve Hawkins
Fix For: 7.1.1
Visibility should only apply to whether a table/model shows up in the system tables and should have nothing to do with whether it can be accessed.
If a designer user wants to make a model non-accessable with the ease of the visibility mechansim, then they should create a data role ("default") that does not have permissions for model. Our roles would then need a boolean attribute (any-authenticated) to denote that any authenticated user has the role.
Designer/JOPR will also need to add support for the "any-authenticated" attribute.
--
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: https://jira.jboss.org/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira
14 years, 2 months