Sparksee 6.1.0
Database Class Reference

Database class. More...

#include <Database.h>

Inheritance diagram for Database:
Inheritance graph
Collaboration diagram for Database:
Collaboration graph

Public Member Functions

virtual ~Database ()
 Destructor.
const std::wstring & GetAlias () const
 Gets the alias of the Database.
const std::wstring & GetPath () const
 Gets the path of the Database.
SessionNewSession ()
 Creates a new Session.
void EnableRollback ()
 Enables the rollback mechanism.
void DisableRollback ()
 Disables the rollback mechanism.
void GetStatistics (DatabaseStatistics &stats)
 Gets Database statistics.
int32_t GetCacheMaxSize ()
 Gets the cache maximum size (in MB).
void SetCacheMaxSize (int32_t megaBytes)
 Sets the cache maximum size (in MB).
void FixCurrentCacheMaxSize ()
 Sets the cache maximum size to the current cache size in use.
void DumpSchema (const std::wstring &filePath)
 Dump the database schema to the given file using the Sparksee scripting format.
void RedoPrecommitted (int64_t txId)
 Redo a pending precommitted transaction recovered.
void AddQueryStreamManager (QueryStreamManager &queryStreamManager)
 Add a QueryStreamManager to the database.

Friends

class Sparksee
class Graph

Detailed Description

Database class.

All the data of the Database is stored into a persistent file which just can be created or open through a Sparksee instance.

Also, all the manipulation of a Database must be done by means of a Session which can be initiated from a Database instance.

Multiple Databases do not share the memory, that is there is no negotiation among them. In those cases, memory must be prefixed for each Database. To do that, use the SPARKSEEConfig.

Author
Sparsity Technologies http://www.sparsity-technologies.com

Member Function Documentation

◆ AddQueryStreamManager()

void Database::AddQueryStreamManager ( QueryStreamManager & queryStreamManager)

Add a QueryStreamManager to the database.

The user is responsible of keeping the manager alive for the duration of the Database. The Managers will be used in reverse order of addition while searching for a matching Stream.

Parameters
queryStreamManager[In] A reference to a QueryStreamManager

◆ GetAlias()

const std::wstring & Database::GetAlias ( ) const
inline

Gets the alias of the Database.

Returns
The alias of the Database.

◆ GetCacheMaxSize()

int32_t Database::GetCacheMaxSize ( )

Gets the cache maximum size (in MB).

Returns
Returns the current cache max size.

◆ GetPath()

const std::wstring & Database::GetPath ( ) const
inline

Gets the path of the Database.

Returns
The path of the Database.

◆ GetStatistics()

void Database::GetStatistics ( DatabaseStatistics & stats)

Gets Database statistics.

Parameters
stats[out] The DatabaseStatistics instance.

◆ NewSession()

Session * Database::NewSession ( )

Creates a new Session.

Returns
A new Session instance.

◆ RedoPrecommitted()

void Database::RedoPrecommitted ( int64_t txId)

Redo a pending precommitted transaction recovered.

YOU SHOULD NOT USE THIS METHOD. This method only exists for a specific service.

◆ SetCacheMaxSize()

void Database::SetCacheMaxSize ( int32_t megaBytes)

Sets the cache maximum size (in MB).

0 means unlimited which is all the physical memory of the computer minus a small margin.

Parameters
megaBytes[in] The new cache max size.

The documentation for this class was generated from the following file: