﻿id	summary	reporter	owner	description	type	status	component	version	severity	resolution	keywords	cc	stage	has_patch	needs_docs	needs_tests	needs_better_patch	easy	ui_ux
35225	Tests of ordering by JSON field fail in Oracle 21c	raydeal	nobody	"There are 2 tests that fail in Oracle 21c.


{{{
ERROR [0.011s]: test_order_by_key (db_functions.comparison.test_json_object.JSONObjectTests.test_order_by_key)
----------------------------------------------------------------------
Traceback (most recent call last):
  File ""/tests/django/tests/db_functions/comparison/test_json_object.py"", line 100, in test_order_by_key
    self.assertQuerySetEqual(qs, Author.objects.order_by(""alias""))
  File ""/tests/django/django/test/testcases.py"", line 1228, in assertQuerySetEqual
    return self.assertEqual(list(items), values, msg=msg)
                            ^^^^^^^^^^^
  File ""/tests/django/django/db/models/query.py"", line 400, in __iter__
    self._fetch_all()
  File ""/tests/django/django/db/models/query.py"", line 1928, in _fetch_all
    self._result_cache = list(self._iterable_class(self))
                         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File ""/tests/django/django/db/models/query.py"", line 123, in __iter__
    for row in compiler.results_iter(results):
  File ""/tests/django/django/db/models/sql/compiler.py"", line 1508, in apply_converters
    value = converter(value, expression, connection)
            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File ""/tests/django/django/db/backends/oracle/operations.py"", line 246, in convert_textfield_value
    value = value.read()
            ^^^^^^^^^^^^
  File ""/usr/local/lib/python3.12/site-packages/oracledb/lob.py"", line 130, in read
    return self._impl.read(offset, amount)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File ""src/oracledb/impl/thin/lob.pyx"", line 254, in oracledb.thin_impl.ThinLobImpl.read
  File ""src/oracledb/impl/thin/lob.pyx"", line 197, in oracledb.thin_impl.ThinLobImpl._process_message
  File ""src/oracledb/impl/thin/protocol.pyx"", line 425, in oracledb.thin_impl.Protocol._process_single_message
  File ""src/oracledb/impl/thin/protocol.pyx"", line 426, in oracledb.thin_impl.Protocol._process_single_message
  File ""src/oracledb/impl/thin/protocol.pyx"", line 419, in oracledb.thin_impl.Protocol._process_message
oracledb.exceptions.DatabaseError: ORA-24826: value LOB no longer available
Help: https://docs.oracle.com/error-help/db/ora-24826/
}}}


{{{
ERROR [0.010s]: test_order_by_nested_key (db_functions.comparison.test_json_object.JSONObjectTests.test_order_by_nested_key)
----------------------------------------------------------------------
Traceback (most recent call last):
  File ""/tests/django/tests/db_functions/comparison/test_json_object.py"", line 106, in test_order_by_nested_key
    self.assertQuerySetEqual(qs, Author.objects.order_by(""-alias""))
  File ""/tests/django/django/test/testcases.py"", line 1228, in assertQuerySetEqual
    return self.assertEqual(list(items), values, msg=msg)
                            ^^^^^^^^^^^
  File ""/tests/django/django/db/models/query.py"", line 400, in __iter__
    self._fetch_all()
  File ""/tests/django/django/db/models/query.py"", line 1928, in _fetch_all
    self._result_cache = list(self._iterable_class(self))
                         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File ""/tests/django/django/db/models/query.py"", line 123, in __iter__
    for row in compiler.results_iter(results):
  File ""/tests/django/django/db/models/sql/compiler.py"", line 1508, in apply_converters
    value = converter(value, expression, connection)
            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File ""/tests/django/django/db/backends/oracle/operations.py"", line 246, in convert_textfield_value
    value = value.read()
            ^^^^^^^^^^^^
  File ""/usr/local/lib/python3.12/site-packages/oracledb/lob.py"", line 130, in read
    return self._impl.read(offset, amount)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File ""src/oracledb/impl/thin/lob.pyx"", line 254, in oracledb.thin_impl.ThinLobImpl.read
  File ""src/oracledb/impl/thin/lob.pyx"", line 197, in oracledb.thin_impl.ThinLobImpl._process_message
  File ""src/oracledb/impl/thin/protocol.pyx"", line 425, in oracledb.thin_impl.Protocol._process_single_message
  File ""src/oracledb/impl/thin/protocol.pyx"", line 426, in oracledb.thin_impl.Protocol._process_single_message
  File ""src/oracledb/impl/thin/protocol.pyx"", line 419, in oracledb.thin_impl.Protocol._process_message
oracledb.exceptions.DatabaseError: ORA-24826: value LOB no longer available
Help: https://docs.oracle.com/error-help/db/ora-24826/
}}}

"	Cleanup/optimization	closed	Database layer (models, ORM)	5.0	Normal	needsinfo			Unreviewed	0	0	0	0	0	0
