KBI 310220 The Dangers of Using CodeBase

Version

Argent Extended Technology — All versions

Date

6 Sep 2010

Summary

In Argent’s opinion, CodeBase is a lightweight SQL engine. Its performance and stability are very similar to Access – fine for simple evaluations, but not for production.

Technical Background

CodeBase is used as the default database for Argent XT, to avoid the politics of getting permissions to create a SQL Server or Oracle database from the DB team for an evaluation — CodeBase enables us to complete the installation in under 10 minutes.

In 2006, Argent changed its policy on CodeBase, and disallows evaluation databases to be used with a production key — for all new Argent products, SQL Server or Oracle must be used.

However, there are a small number of older customers who may still be using CodeBase for their production environment today, so Customers can – and do – use CodeBase for their production environments, which is a very bad idea.

CodeBase should never be used for production.

Security and Data Corruption

CodeBase consists of a number of flat files that are easy to access – by anyone and by any product…

And therein lies the rub – any user or program can easily create havoc with the flat files used by CodeBase.

This includes anti-virus and fancy backup routines.

Limitations

When a CodeBase backend is used, each product has a 100 MB limit.

In today’s systems where hardware is more affordable, and virtualization is king, 100 MB can literally be reached in a matter of days.

Resolution

If you find a Customer using CodeBase, recommend in the strongest possible terms they move to an enterprise database, in other words, SQL Server or Oracle.