A multiplatform synchronous C API in which operations are accomplished in a few simple function calls is provided for the 5800 system. The API calls include operations for storing, retrieving, deleting, and querying of data and metadata records. Multiple threads are supported, and operations block until they complete.
You must call hc_init (once per process) and hc_session_create_ez (once per thread) prior to making any other API calls.
All functions in the 5800 system C API return an hc_err. Any value other than HCERR_OK indicates failure.
This section discusses the following topics for the 5800 system synchronous C API.
This release of the synchronous C API contains the following changes:
Handling is added for storing, retrieving and querying the following new metadata types:
char — for Latin 1 character set
unicode
binary
date
time
timestamp
Query and queryplus are merged
Prepared statements (pstmts) are introduced to handle values of queries that cannot be placed inline, and a new query is introduced to handle them.
The following new functions have been added to the API:
The following functions have changed in the API:
The following functions and types have been removed from the API:
hc_query_plus_result_set_t
hc_query_plus_ez
hc_qprs_next_ez
hc_qprs_free
This release of the synchronous C API is subject to the following limitations:
Changes to the metadata schema at the server are only detected at the client at the next call to hc_session_create_ez.
The values returned by hc_session_get_platform_result will not be updated properly after calls to the functions hc_retrieve_ez and hc_delete_ez.
When using the C API, the maximum metadata size of a data item stored using either hc_store_both_ez or hc_store_metadata_ez is limited to approximately 76300 bytes. The exact maximum metadata size depends on many factors and should not be relied on. This limitation does not apply to metadata stored using the Java API.