ObjectStore Collections C++ API Reference

Predefined TIX Exceptions

This section contains information on significant predefined exceptions. These exceptions are defined in client.hh and ostore.h, so they are automatically available to your programs.

Topics

Parent Exceptions

The following are parents in the exceptions object tree hierarchy. They are never signaled directly, but it can be useful to set up handlers for them in order to catch an entire set of errors.

ObjectStore exception inheritance hierarchy
The hierarchy is arranged as follows:

The ObjectStore exception facility itself is presented in Appendix A, Exception Facility, in ObjectStore C++ API Reference.

Predefined Exceptions

Collection Exceptions

The following exceptions descend from err_coll, which is a descendent of err_objectstore.

err_am. Error using indexes, for example, an attempt to add an index where a class mentioned in the path serving as index key cannot be found in the schema of the database containing the index (or the application schema, if the index is transient).

Can be signaled by:

err_coll. The parent of all collection exceptions.

err_coll_ambiguous.

not found in coll_class

err_coll_behavior_inconsistency. The representation policy was semantically inconsistent with regard to the collection object.

not found in coll_class.

err_coll_cannot_grow_collection. An attempt was made to grow a collection that could not be grown, usually because the grow_by or the grow_at parameter to collection creation specified no growth.

err_coll_cannot_mutate_collection. A collection could not be mutated into an alternate representation.

err_coll_dangling_pointer. A dangling pointer from a collection to a deleted object was detected, due to the presence of os_backptr during deletion of the containing object.

err_coll_duplicates. An attempt was made to duplicate an element in a collection.

os_collection::allow_duplicates

os_collection::change_behavior

os_collection::insert

os_collection::insert_after

os_Collection::insert

os_Collection::insert_after

os_Collection::insert_before

os_Collection::insert_first

err_coll_empty. The protocol expected a nonempty set, but was used on an empty set instead.

os_Array::create (pick)

os_array::create

err_coll_evolve. The root exception for collection evolution.

err_coll_evolve_not_implemented_yet. The unimplemented part of collection evolution.

err_coll_illegal_arg. An actual argument used in the collection protocol failed validation. The text of the report contains details regarding the specific argument.

err_coll_illegal_cast. An illegal cast operation was attempted.

err_coll_illegal_cursor.

err_coll_illegal_query_expression. Syntax/semantic analysis of the query text resulted in an error.

err_coll_illegal_update. An attempt was made to update a const collection through a cursor.

err_coll_internal. This exception is used to signal internal collection errors.

err_coll_internal_list. An error occurred in an internal list.

err_coll_none_qualifying. An error occurred in index lookup during scan.

err_coll_not_implemented_yet. For as-yet-unimplemented collection features.

err_coll_not_singleton. os_collection::only expected a singleton set, but the cardinality() != 1.

err_coll_not_ordered. The operation required that the collection be ordered, but it was not.

err_coll_not_supported. An attempt was made to use a collection subtype-specific protocol that was not supported by this particular subtype.

err_coll_null_cursor. The protocol expected a nonnull cursor for the particular operation.

err_coll_nulls. An attempt was made to insert a null element into a collection.

os_collection::allow_nulls

err_coll_out_of_range. A collection was accessed using an out-of-bounds array subscript.

err_coll_path_interp. An error in path interpretation occurred.

err_coll_query_bind. The query had free references, but these references were not bound at the * of the query. The report identifies the unbound variables.

err_coll_query_evaluate. An error occurred during evaluation of a query.

err_coll_scan. An error in scan occurred.

err_cursor. An error was made in cursor maintenance.

err_cursor_ambiguous. An error was made in cursor order specification.

err_cursor_not_implemented_yet. Unimplemented feature.

err_cursor_internal. An error in ordered iteration occurred.

err_illegal_index_path. An error occurred during translation of an index path expression.

err_index. An error occurred in an index.

err_index_duplicate_key. The uniqueness constraint on an index was violated.

err_index_evolve. An error occurred during the evolution of an index.

err_index_not_implemented_yet. For as-yet-unimplemented index evolution features.

err_index_invalid_ordering. An index was ordered in an invalid way.

err_index_wrong_kind. An unordered index was used for ordered iteration.

err_null_cursor. An attempt was made to operate on a null cursor.

err_object_init. Derived from err_objectstore, this exception can be caught by the application (as err_objectstore). This is the exception generated by all the error conditions that

err_open_iteration. An iteration open on mapping being deleted.

err_pset_no_cursor. Error in _Pset iteration.



[previous] [next]

Copyright © 1997 Object Design, Inc. All rights reserved.

Updated: 03/31/98 15:58:34