Skip to content

Library is not compatible with new oracledb 26.0.0 #261

Description

@oferdan

Hi,

I found that library is not compatible with new oracledb 26.0.0.

Robot Framework code:
DatabaseLibrary . Connect To Database oracledb db_name=${db_SID} db_user=${db_USERNAME} db_password=${db_PASSWORD} db_host=${db_IP} db_port=${db_PORT} db_charset=UTF-8

Copilot analysis:

Starting with oracledb 26.0.0, the driver added support for Connection.transaction_priority (tied to a new Oracle Database 23.26.2+ feature), and it reads a transaction-priority value from the server handshake during connect and tries to convert it into an internal TransactionPriority enum. When the target database doesn't support/return that value (any DB older than 23.26.2, or a mismatch during the thin-mode handshake), the driver ends up doing the equivalent of TransactionPriority(None), which raises:

ValueError: None is not a valid TransactionPriority

This is a client-side bug/regression in that new oracledb release, not something wrong with your Robot Framework code, db_charset, or connection parameters — db_charset isn't even forwarded to oracledb.connect() by DatabaseLibrary (I checked connection_manager.py — for the oracledb module branch, db_charset is simply parsed and then dropped; only user, password, and params are passed through).

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions