Closed jgebal closed 4 years ago
This issue has been automatically marked as stale because it has not had recent activity. It will be closed if no further activity occurs. Thank you for your contributions.
@jgebal Did you encounter any issues related to this? On Oracle 19 we are seeing odd behavior. When a function returns a record the result is always an empty object {}. Is this related? Thanks
Not sure. I'm not using ruby-plsql for quite some time now.
@jgebal I'm curious. What alternative are you using?
I'm using utPLSQL v3 It is using rspec-like expectations syntax in pure PLSQL.
There is no alternative for us to use. The linked issue shows the new metadata catalogs to select. I have planned to adapt ruby-plsql to 19c in September since we do the upgrade in our product then.
Jacek Gębal notifications@github.com schrieb am Mi., 15. Juli 2020, 03:25:
I'm using utPLSQL v3 http://utplsql.org It is using rspec-like expectations syntax in pure PLSQL.
— You are receiving this because you are subscribed to this thread. Reply to this email directly, view it on GitHub https://github.com/rsim/ruby-plsql/issues/183#issuecomment-658492326, or unsubscribe https://github.com/notifications/unsubscribe-auth/ABBE2CCY7MACTC72QMIYXQTR3UARXANCNFSM4JSZNB7Q .
@bpom how did you "adapt ruby-plsql to 19c" . could you please share the details?
@AvneetBaweja which details do you need? You can review the pull request #196
As a summary: for records, associative arrays and cursors the metadata are now selected from all_plsql_types, all_plsql_coll_types, all_plsql_type_attrs instead of all_arguments since Oracle has removed the entries for such types in 18c
Hello @bpom and @yahonda
I see that the changes usder this pull reqyuest has been released into latest version of ruby-plsql gem.
I have installed the required gems on my machine but i am not able to work with complex datatypes in oracle 19c.
here is my list of gems LOCAL GEMS
bigdecimal (default: 1.2.8) builder (3.2.4) bundler (2.2.25) did_you_mean (1.0.0) diff-lcs (1.4.4) io-console (default: 0.4.5) json (default: 1.8.3) mini_portile2 (2.1.0) minitest (5.8.5) net-telnet (0.1.1) nokogiri (1.6.8.1 x64-mingw32) power_assert (0.2.6) psych (default: 2.1.0) rake (10.4.2) rdoc (default: 4.2.1) rspec (3.10.0) rspec-core (3.10.1) rspec-expectations (3.10.1) rspec-mocks (3.10.2) rspec-support (3.10.2) rspec_junit_formatter (0.4.1, 0.2.3) ruby-oci8 (2.2.8 x64-mingw32, 2.2.4 x64-mingw32) ruby-plsql (0.8.0, 0.7.1) ruby-plsql-spec (0.5.0) rubygems-update (3.2.25) test-unit (3.1.5) thor (0.19.4)
And this is the error i am getting when trying to run a package function. 1) control_sheets GIVEN a call to get_param_value WHEN parameter array is empty it returns null Failure/Error: plsql.control_sheet.get_param_value(nil,-1)
OCIError:
ORA-00911: invalid character
ORA-06512: at line 4
stmt.c:267:in oci8lib_230.so
./spec/unit/controlSheetTest.rb:213:in `block (3 levels) in <top (required)>'
./spec/spec_helper.rb:80:in `block (2 levels) in <top (required)>'
The exact call works in 11g oracle . Could you please help me here. Thanks
Seems like the support for PL/SQL records, Collections will no longer work with ruby-plsql on Oracle 18c and above.
Oracle has changed the content of
ALL_ARGUMENTS
data-dictionary. https://github.com/jOOQ/jOOQ/issues/7861