Open
Conversation
…hema; the type owner should take precedence
…hema; the type owner should take precedence
# Conflicts: # lib/plsql/procedure.rb
"timestamp(6) with local timezone"; before 18c, this was represented as "timestamp with local timezone"
# Conflicts: # lib/plsql/procedure.rb
… a schema-level table type
This was referenced Oct 27, 2021
Collaborator
|
Could you please break this pull request into smaller pieces? |
|
Using this for a year with Rails 5.2 and 18c, now upgraded Rails to v7.0, still works. |
Collaborator
|
Thank you for this contribution. There are several valuable fixes here for Oracle 18c and later. To make it easier to review and merge, we are splitting the changes into smaller, focused pull requests with tests:
We will reference this PR from each one. |
yahonda
added a commit
to yahonda/ruby-plsql
that referenced
this pull request
Apr 13, 2026
Oracle 18c and later reports the data type as "TIMESTAMP(6) WITH LOCAL TIME ZONE" in ALL_TAB_COLS, whereas older versions used "TIMESTAMP WITH LOCAL TIME ZONE". Normalize to the standard form to avoid type conversion errors. Based on rsim#208 Co-Authored-By: Jochen Schug <4573581+joschug@users.noreply.github.com> Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
yahonda
added a commit
to yahonda/ruby-plsql
that referenced
this pull request
Apr 13, 2026
When querying ALL_TAB_COLS for table/view type parameters, hidden columns (e.g., those created by functional indexes) were included in the field definitions. Filter them out with hidden_column != 'YES'. Based on rsim#208 Co-Authored-By: Jochen Schug <4573581+joschug@users.noreply.github.com> Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
yahonda
added a commit
to yahonda/ruby-plsql
that referenced
this pull request
Apr 13, 2026
The get_field_definitions and get_element_definition methods used @schema_name when querying type metadata from ALL_PLSQL_TYPE_ATTRS, ALL_TAB_COLS, ALL_PLSQL_COLL_TYPES, and ALL_COLL_TYPES. This fails when a procedure parameter references a type owned by a different schema. Use argument_metadata[:type_owner] instead. Based on rsim#208 Co-Authored-By: Jochen Schug <4573581+joschug@users.noreply.github.com> Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
This was referenced Apr 13, 2026
yahonda
added a commit
to yahonda/ruby-plsql
that referenced
this pull request
Apr 13, 2026
Use ALL_TAB_COLUMNS instead of ALL_TAB_COLS when querying column definitions for table/view type parameters. ALL_TAB_COLUMNS excludes hidden columns (e.g., those created by functional indexes) by default, and is available in all supported Oracle versions including 11g. Based on rsim#208 Co-Authored-By: Jochen Schug <4573581+joschug@users.noreply.github.com> Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
yahonda
added a commit
to yahonda/ruby-plsql
that referenced
this pull request
Apr 13, 2026
Use ALL_TAB_COLUMNS instead of ALL_TAB_COLS when querying column definitions for table/view type parameters. ALL_TAB_COLUMNS excludes hidden columns (e.g., those created by functional indexes) by default, and is available in all supported Oracle versions including 11g. Based on rsim#208 Co-Authored-By: Jochen Schug <4573581+joschug@users.noreply.github.com> Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
yahonda
added a commit
to yahonda/ruby-plsql
that referenced
this pull request
Apr 13, 2026
Use ALL_TAB_COLUMNS instead of ALL_TAB_COLS when querying column definitions for table/view type parameters. ALL_TAB_COLUMNS excludes hidden columns (e.g., those created by functional indexes) by default, and is available in all supported Oracle versions including 11g. Based on rsim#208 Co-Authored-By: Jochen Schug <4573581+joschug@users.noreply.github.com> Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
yahonda
added a commit
to yahonda/ruby-plsql
that referenced
this pull request
Apr 13, 2026
Use ALL_TAB_COLUMNS instead of ALL_TAB_COLS when querying column definitions for table/view type parameters. ALL_TAB_COLUMNS excludes hidden columns (e.g., those created by functional indexes) by default, and is available in all supported Oracle versions including 11g. Based on rsim#208 Co-Authored-By: Jochen Schug <4573581+joschug@users.noreply.github.com> Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
yahonda
added a commit
to yahonda/ruby-plsql
that referenced
this pull request
Apr 13, 2026
Use ALL_TAB_COLUMNS instead of ALL_TAB_COLS when querying column definitions for table/view type parameters. ALL_TAB_COLUMNS excludes hidden columns (e.g., those created by functional indexes) by default, and is available in all supported Oracle versions including 11g. Based on rsim#208 Co-Authored-By: Jochen Schug <4573581+joschug@users.noreply.github.com> Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
yahonda
added a commit
to yahonda/ruby-plsql
that referenced
this pull request
Apr 13, 2026
Temporarily revert to ALL_TAB_COLS (without hidden column filter) to confirm the new test detects hidden columns. If the test fails, the fix (switching to ALL_TAB_COLUMNS) is validated. Based on rsim#208 Co-Authored-By: Jochen Schug <4573581+joschug@users.noreply.github.com> Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
yahonda
added a commit
to yahonda/ruby-plsql
that referenced
this pull request
Apr 13, 2026
Use ALL_TAB_COLUMNS instead of ALL_TAB_COLS when querying column definitions for table/view type parameters. ALL_TAB_COLUMNS excludes hidden columns (e.g., those created by functional indexes) by default, and is available in Oracle 11g and newer. Based on rsim#208 Co-Authored-By: Jochen Schug <4573581+joschug@users.noreply.github.com> Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
This fixes #204, #207 and probably #200.