Skip to Main Content

ORDS, SODA & JSON in the Database

Announcement

For appeals, questions and feedback about Oracle Forums, please email oracle-forums-moderators_us@oracle.com. Technical questions should be asked in the appropriate category. Thank you!

Bug: ORDS 3.0.9.348.07.16 CURSOR expression not allowed

Olafur TFeb 9 2017 — edited Feb 14 2017

Hi,

Just noticed this bug after upgrading to the latest ORDS. (3.0.9.348.07.16)

It use to be that even though the service module had a pagination of X, you could override it on the handler level with 0 and use cursor expression within the SQL.

After upgrading these services fail with a 500 error, * Error during evaluation of resource template: GET ............, SQL Error Code: 22.902, SQL Error Message: Ora-22902: Cursor expression not allowed.

So ORDS seems to be ignoring pagination=0 on the handler level and looking at what is set on the module level.

Only way past this is to set the module to 0 and then manually fix every GET handler under every single template that needs to have the pagination set.

Very easy to test and confirm:

Create a module with pagination=25,

Create a template + GET handler (Query)

Query:

select cursor (    select rownum

                     from dual

               connect by rownum <= 10)

          as test1

  from dual

Set pagination = 0,

This will result in an error and only way to fix it is to change the module's default pagination to Zero

Regards

Oli

Comments
Locked Post
New comments cannot be posted to this locked post.
Post Details
Locked on Mar 14 2017
Added on Feb 9 2017
2 comments
491 views