Today I did random browsing of Oracle blogs and I found an interesting post about database 11gR2 new feature called Edition-Based Redefinition by Christian Antognini. Here is a link to the blog post. I recommend you to read the paper and browse documentation library for the further details.
Just after I started reading the post, I realized that my one more wish came true. With this new functionality, you can have various versions of a database object in the same database and Oracle will manage the versions based on its edition.
Now If I go back into the past and recall my experience with the version 9i, developers used to create different versions of their piece of work (PL/SQL code) and save in the same production database. As you can expect, It resulted in so many packages and procedures with dates (or change request number) appended with the names in the production schema. This sometimes resulted in delay in packages compilation times and wrong packages become live etc.
Previously we could keep different versions of a same object by saving them in different schemas, but with this new functionality you can have a hierarchy of versions V1, V2 etc.
Once again, Oracle has surprised me with their development. It seems someone in the Oracle development team is hearing my wishes. This is the second instance, when one of my desired feature had lately added to the kernel. First I wished to have a OS-like recycle bin in the database itself and Oracle had introduced in the version 10g onwards.
Now I think I should better document my desired features and wait for them to become true 🙂