From 794f866cecb7598c1537067cc1d932d95a86f439 Mon Sep 17 00:00:00 2001 From: Mariusz Felisiak Date: Thu, 13 Oct 2016 00:58:33 +0200 Subject: [PATCH] Fixed #27323 -- Optimized Oracle introspection by using USER_SEQUENCES instead of USER_CATALOG. --- django/db/backends/oracle/operations.py | 4 ++-- django/db/backends/oracle/schema.py | 4 ++-- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/django/db/backends/oracle/operations.py b/django/db/backends/oracle/operations.py index d30b093119..8191f89dd0 100644 --- a/django/db/backends/oracle/operations.py +++ b/django/db/backends/oracle/operations.py @@ -54,8 +54,8 @@ END; DECLARE i INTEGER; BEGIN - SELECT COUNT(*) INTO i FROM USER_CATALOG - WHERE TABLE_NAME = '%(sq_name)s' AND TABLE_TYPE = 'SEQUENCE'; + SELECT COUNT(1) INTO i FROM USER_SEQUENCES + WHERE SEQUENCE_NAME = '%(sq_name)s'; IF i = 0 THEN EXECUTE IMMEDIATE 'CREATE SEQUENCE "%(sq_name)s"'; END IF; diff --git a/django/db/backends/oracle/schema.py b/django/db/backends/oracle/schema.py index a10bb08e17..15d361bf7a 100644 --- a/django/db/backends/oracle/schema.py +++ b/django/db/backends/oracle/schema.py @@ -40,8 +40,8 @@ class DatabaseSchemaEditor(BaseDatabaseSchemaEditor): DECLARE i INTEGER; BEGIN - SELECT COUNT(*) INTO i FROM USER_CATALOG - WHERE TABLE_NAME = '%(sq_name)s' AND TABLE_TYPE = 'SEQUENCE'; + SELECT COUNT(1) INTO i FROM USER_SEQUENCES + WHERE SEQUENCE_NAME = '%(sq_name)s'; IF i = 1 THEN EXECUTE IMMEDIATE 'DROP SEQUENCE "%(sq_name)s"'; END IF;