SERPland Blog

Oracle Forms Source Control / Concurrency Control

· 813 words · 4 minutes to read

We’re using Oracle Forms source control outside of Forms. Currently we’re very happy with our VSS setup. So we are using Microsoft’s Visual Source Safe for Oracle Forms Source Control.

Generating *.fmb files out of Oracle Designer, we do a check in of fmb files after generation.

Also there’s a possibility to use ANT for SQL and fmb Forms deployment. Using VSS as Oracle Forms source control software, ANT can also check out specific fmb versions to deploy.

At the moment, some peole thing about migrating our Oracle Forms source control software from VSS to something new like SVN (Subversion). But this would be a major change on our developement approach. Currently, the developers were used to VSS with its pessimistic locking mechanism. New version control tools as Subversion are using optimistic locking instead. What’s the difference?


Concurrency control mechanisms 🔗


The main categories of Oracle Forms source control / concurrency control mechanisms are: 🔗

  • Optimistic - Delay the checking of whether a transaction meets the isolation and other integrity rules (e.g., serializability and recoverability) until its end, without blocking any of its (read, write) operations ("…and be optimistic about the rules being met…"), and then abort a transaction to prevent the violation, if the desired rules are to be violated upon its commit. An aborted transaction is immediately restarted and re-executed, which incurs an obvious overhead (versus executing it to the end only once). If not too many transactions are aborted, then being optimistic is usually a good strategy.
  • Pessimistic - Block an operation of a transaction, if it may cause violation of the rules, until the possibility of violation disappears. Blocking operations is typically involved with performance reduction.


Oracle Forms Source Control recommendation 🔗

Because *.fmb files are binary source files, I recommend using a pessimistic Oracle Forms source control tool like Microsoft Visual Source Safe (VSS). With binary files, no source version comparison is possilbe, also no branch-merche mechanism can work. Binary sources are “bad”, but no change, Oracle FMB files are binary.

When source files would be text files, I would recommend using an optimistic version control tool like Subversion (SVN).


Happy building with your Oracle Forms source control / revision control software.

Update 2024

Update on Oracle Forms Source Control Concurrency Control in 2021-2024 🔗

We are pleased to announce that in 2024, the use of Oracle Forms source control has evolved significantly since the original article in 2011. While the information provided about using Microsoft’s Visual Source Safe (VSS) for source control was valid at the time, there have been notable advancements in source control mechanisms and tools for Oracle Forms developers.

One major update is the shift towards utilizing more modern version control systems like Subversion (SVN) for managing Oracle Forms source code. The consideration of migrating from VSS to SVN mentioned in the previous text has been embraced by many development teams due to the enhanced features and flexibility offered by SVN. In 2024, SVN has become a popular choice for organizations looking to streamline their source control workflows and take advantage of optimistic locking mechanisms.

With SVN, developers can benefit from improved concurrency control mechanisms that allow for more efficient collaboration and code management. The use of optimistic locking enables developers to work on the same files simultaneously without the risk of conflicts, promoting smoother development processes and faster iterations.

Additionally, the integration of ANT for SQL and FMB Forms deployment has become more seamless with SVN, providing developers with a comprehensive solution for source control and deployment. This integration enhances the overall development lifecycle and ensures consistency in managing Oracle Forms projects.

In terms of integrity rules and isolation, SVN offers robust features to enforce compliance with rules such as serializability and recoverability. Developers can rely on SVN to maintain the integrity of their codebase and prevent violations through efficient transaction handling and conflict resolution mechanisms.

While Microsoft Visual Source Safe (VSS) served its purpose in the past, the transition to SVN has proven to be a significant improvement for Oracle Forms source control. The ability to perform source version comparisons, branch merges, and collaborate effectively on a shared codebase has made SVN a preferred choice for in 2024.

In conclusion, the landscape of Oracle Forms source control has evolved significantly over the years, with SVN emerging as a superior option for developers seeking a modern and efficient solution for managing their codebase. By leveraging SVN’s optimistic locking mechanisms and advanced features, development teams can elevate their source control practices and streamline their workflows effectively.

Update on Oracle Forms Source Control Concurrency Control: The information provided in the original text has been updated to reflect the current state of Oracle Forms source control mechanisms and tools in 2021-2024. The adoption of Subversion (SVN) and the benefits it offers for developers have been highlighted, showcasing the advancements in source control technology for Oracle Forms projects.