Infinite Graph use a federated database which is the highest level in the Objectivity/DB storage hierarchy. It is the unit of administrative control for a “federation” of associated databases and contains the data model, or schema, that describes all classes of objects stored in these databases.

The federation is created automatically by your Infinite Graph application when you call the GraphFactory.create() method.

[sourcecode language=”java” wraplines=”false”]

GraphFactory.create() causes the Infinite Graph federation to be created on disk at the location specified by the properties file.

The federation initially consists of the Federation database file itself (ending with the .fdb extension) and a bootstrap file (ends with the .boot extension). The bootstrap file is referenced in properties file and is also used by the command line tools to identify the Infinite Graph federation. As your Infinite Graph application executes database files containing your data are automatically added to the federation. These database files are identified by the (.db extension).

When it comes to deleting the Infinite Graph federation you have two possibilities:

  1. Call the GraphFactory.delete() method from within your application. This will throw an exception if any application is still holding locks to the federation that you are trying to delete.

    [sourcecode language=”java” wraplines=”false”]

  2. Execute the oodeletefd tool from the command line.
  3. oodeletefd -force <bootFile Name>

    oodeletefd will remove the federated database, bootfile and all associated database files. The -force flag instructs oodeletefd to execute with requesting user verification. oodeletefd will fail to execute if active applications are using the federation or if an application has terminated abnormally and left locks and journal files in place. In this case, you need to perform cleanup using the oocleanup utility and then re try oodeletefd.