ORA-01452: Cannot CREATE UNIQUE INDEX; Duplicate Keys Found


While creating the unique index on a table, got below error.

SQL> create unique index TEST_IDX on TEST5(EMPNO);
create unique index TEST_IDX on TEST5(EMPNO)
ERROR at line 1:
ORA-01452: cannot CREATE UNIQUE INDEX; duplicate keys found

Cause:- You tried to execute a CREATE UNIQUE INDEX statement on one or more columns that contain duplicate values.


Find the duplicate rows in the table and delete them.

Use below script to delete the duplicate rows

REM This (more...)

ORA-08104: This Index Object Is Being Online Built Or Rebuilt

This post is about “ORA-08104”.  We are going t learn how to solve this issue. Steps are mention below:-

While dropping an index, if you are facing ORA-08104 error, then you need to clean it using dbms_repair


SQL> drop index eric_icmsprod.SOTRAN00_IDX1;
drop index eric_icmsprod.SOTRAN00_IDX1
ERROR at line 1:
ORA-08104: this index object 94771 is being online built or rebuilt


you have not installed the patch for Bug 3805539 or (more...)

Storage Volumes and File System Layout in Oracle Cloud

This section provides information about the storage volumes and file system layout of a newly created database deployment on Oracle Database Cloud Service.

Compute Cloud Service Storage Volumes

When a Database Cloud Service deployment is created using the Oracle Database Cloud Service service level, the following storage volumes are created.

Storage Volume Description
bits 60 GB volume completely allocated to /u01 on the virtual machine.
boot 32 GB volume allocated to the following file system mounts on the virtual machine:

Attracting Visitors To Your Website

It’s not that easy to go from zero visitors to thousands of potential customers in an instant. But if you implement the right traffic-generating strategy, you can increase the number of visitors coming in to your website. If you can get enough traffic, that means you can generate sales. And you can check the main components in your salesto get more traffic and keep it coming.

Getting Instant and Cheap Traffic

The key (more...)

Explain usage of different users in Oracle Cloud

This article provides information about Linux user accounts that are provisioned on Oracle Database Cloud Service.

Every Database Cloud Service compute node is provisioned with the following operating system user accounts. Both compute nodes are provisioned with the following operating system user accounts.

  1. opc: The system administrator account you use with the sudo command to perform operations that require root-user access.
  2. oracle: The Oracle Database administrator account you use to access the system and perform non-root (more...)

Oracle 12c and PHP

This answers “How you connect PHP programs to an Oracle 12c multitenant database. This shows you how to connect your PHP programs to a user-defined Container Database (CDB) and Pluggable Database (PDB). It presupposes you know how to provision a PDB, and configure your Oracle listener.ora and tnsnames.ora files.

CDB Connection:

This assumes you already created a user-defined c##plsql CDB user, and granted an appropriate role or set of privileges to the (more...)

Docker-Swarm: Running a minimal webserver in a swarm

In my last posting to docker swarm i created a swarm on virtualbox with alpine linux with a hdd footprint of 290MB per node:
There are some tutorials out there with running a nginx or a java webserver in a container but >100MB for each node seems far to much for my tests.

So i decided to create a application which listens on port 8080 with netcat. I created a directory ncweb with ncweb.sh:

Jarvis Pizzeria: First step in Implementing the Order Processing, Interface Definition

| Dec 10, 2017
In a previous blog post we gave a functional description of the pizza preparation process. For this we used the image below. Till now we only have implemented the bottom part ‘the preparation of a single pizza’.
In this post we will do the next step. The preparation of a complete order, containing potentially multiple pizzas. We will do this in a separate process. So let's start by creating a new process in the preparation (more...)

LEAP#355 Snow Flake

When @LuckResistor announced the Snow Flake to the Boldport Club community, I knew I had to join in!

The Snow Flake is an Atmel SAM D ARM Cortex-M0-controlled LED ornament. I’ve just completed building the first Once I have built some more I will be able to experiment with co-ordinated operation, but even a single snowflake makes for an impressive display.

As always, all notes, schematics and code are in the Little Electronics & Arduino (more...)

ORA-29516: Aurora Assertion Failure: Assertion Failure


This post is for steps which solve ORA-29516.


If the java component is corrupted, then while executing java related packages, you may face below error.


You have set additional mount options on the shared memory device, /dev/shm, other than just the option named defaults.


select dbms_java.longname(‘TEST’) from dual;
select dbms_java.longname(‘TEST’) from dual
ERROR at line 1:
ORA-29516: Aurora assertion failure: Assertion failure at eox.c:359
Uncaught exception Root of (more...)

ORA-19588: Archived Log RECID Is No Longer Valid

As we know each and every problem have solutions. Let’s have a solution to the Error:- ORA-19588.


While taking RMAN backup, got below error.

RMAN-00571: ===========================================================
RMAN-00569: =============== ERROR MESSAGE STACK FOLLOWS ===============
RMAN-00571: ===========================================================
RMAN-03009: failure of backup command on t4 channel at 05/01/2017 03:18:01
ORA-19588: archived log RECID 143154 STAMP 942443843 is no longer valid

Cause: The indicated record has been marked as deleted. This indicates that the corresponding file has either been (more...)

Type Dependent Tree

While trying to explain a student question about Oracle object types, it seemed necessary to show how to write a dependency tree. I did some poking around and found there wasn’t a convenient script at hand. So, I decided to write one.

This assumes the following Oracle object types, which don’t have any formal methods (methods are always provided by PL/SQL or Java language implementations):

( base_id  NUMBER  (more...)

RMAN-20035: Invalid High RECID In Rman Catalog

We are going to learn about the steps which we use to solve issues RMAN-20035. 



we face RMAN-20035: invalid high RECID  after connecting to catalog database.


executing command: SET COMMAND ID
starting full resync of recovery catalog
RMAN-00571: ===========================================================
RMAN-00569: =============== ERROR MESSAGE STACK FOLLOWS ===============
RMAN-00571: ===========================================================
RMAN-03002: failure of set command at 07/27/2016 10:54:19
RMAN-03014: implicit resync of recovery catalog failed

on default channel at 07/27/2016 10:54:19
RMAN-20035: invalid (more...)

Steps For Optimizing Your Website

People use search engines like Google when looking for products or brands these days. In fact, 60 percent of consumers take advantage of Google search just to find what they exactly want, and more than 80 percent of online search results lead to in-store visits as well as sales. So if you want to receive massive traffic and increase your sales, optimizing your website is the perfect solution.

Optimized Website, A Business Owner’s Priority

Search (more...)

SQL*Plus tips #8: How to read the output of dbms_output without “serveroutput on”

When “serveroutput” is enabled, SQL*Plus executes “BEGIN DBMS_OUTPUT.GET_LINES(:LINES, :NUMLINES); END;” after each command.
That’s why I don’t like when it is always enabled: it adds extra calls and round-trips and it is inconvenient when I want to get a plan of the last executed query:

SQL> set serverout on;
SQL> select * from dual;


SQL> select * from table(dbms_xplan.display_cursor('','','allstats last'));

SQL_ID  9babjv8yq8ru3, child number 0

BEGIN  (more...)

https for IIS on IaaS – the basics

More a quick reference for me than anything else - these are the steps to enable https for iis on IaaS in Azure (well or anywhere for that matter) - this will use a 'proper' certificate from a certifying authority to stop all those warnings you get with self certified ones.

So here are the quick steps - in this case i have a server called testssl this is in an azure domain called mycompany. (more...)

ORA-00027: Cannot Kill Current Session

A login session is one of the most common problems while we are working on the huge amount of data with multiple users.  This post explains about those steps which we use to kill the session.


ORA-00027: cannot kill the current session, the error comes, when you are trying to kill your current session, which is not allowed.


Get the sid and serial# for the current session.

SQL> select username,inst_id, sid, serial# FROM (more...)

Generic error(Failed Jdk Version Is Incompatible.Please Use A Jdk Version With Opatchauto)

While running the opatchauto command in oracle grid you may face the jdk version error as below. We are going to learn about the steps which we use to solve this issue.

root # /crsapp/app/oracle/product/grid12c/OPatch/opatchauto apply /softdump/12C_GRIDSOFT/PATCH/22191349 -analyze -ocmrf /softdump/12C_GRIDSOFT/PATCH/grid.rsp 
OPatch Automation Tool
Copyright (c)2014, Oracle Corporation. All rights reserved.

OPatchauto Version :
OUI Version :
Running from : /crsapp/app/oracle/product/grid12c

opatchauto log file: /crsapp/app/oracle/product/grid12c/cfgtoollogs/opatchauto/22191349/opatch_gi_2016-04-06_09-27-57_analyze. (more...)

Substitutable Columns

Oracle’s substitutable columns are interesting and substantially different than Oracle’s nested tables. The benefit of substitutable columns is that you can create one for an object type or any subtypes of that object type. Unfortunately, you can’t create the same behavior with nested tables because Oracle’s implementation of collection types are always final data types and you can’t extend their behaviors.

The Oracle Database has three types of collections. Two are SQL scoped collection types (more...)

Alexa Push Notifications via Reminders

From the first day I got the Amazon Echo in December 2014 I looked for more interesting ways to interact with it. Before the Alexa team released an official API, I came up with a rather creative way to control things . It was not perfect since I had to add things to the “todo” list and then poll private APIs for changes. A few months later the official API came and things have been (more...)