Zen4Sync Data Model


Overview

Zen4SyncRepository is the database used by Zen4Sync.
It contains 45 tables split up into 7 different schemas.
If you are not familiar with the Zen4Sync vocabulary used throughout the page, please see the Zen4Sync glossary.

This page presents all the schemas and all the tables in these schemas.
For each table, descriptions of the columns are given.

Schemas

Admin

The Admin schema contains data related to the core information of Zen4Sync.

240196

clientSession

A Client Session represents a Zen4SyncClient execution on a Test Server.
The Client executes a Test Scenario as part of a Test Session.

Column Name Description
clientSession_id Unique Identifier of the Client Session.
clientSession_name Name of the Client Session. Useful for humans.
clientSession_testServerId Foreign key toward the Test Server on which the Client will run.
clientSession_testSessionId Foreign key toward the Test Session the Client is part of.
clientSession_enableLog Bit indicating if the Client will use log.
clientSession_scheduledStartDateTime Date and time of the execution start. Stored in international format.
clientSession_testScenarioId Foreign key toward the Test Scenario the Client will execute.
clientSession_readyToStart Bit indicating if the Client is ready to start. Ready to start means its console is running on the Test Server and it's waiting for the scheduledStartDateTime.
clientSession_readyToStartDateTime Date and time of the moment when the Client became ready to start.
clientSession_readyToStartDateTimeOnServer Date and time of the moment when the Client became ready to start, but using the Orchestrator time.
clientSession_processId Windiws process in which the Client runs on the Test Server.
clientSession_startDateTime Date and time of the beginning of the Test Scenario execution.
clientSession_startDateTimeOnServer Date and time of the beginning of the Test Scenario execution, but using the Orchestrator time.
clientSession_endDateTime Date and time of the end of the Test Scenario execution.
clientSession_endDateTimeOnServer Date and time of the end of the Test Scenario execution, but using the Orchestrator time.
clientSession_error If the Test Server could not start the Client, this column stores the error message.

testServer

A Test Server generates a Client Test Session Descriptor for each Client it has to run in a Test Session and then runs Clients.

Column Name Description
testServer_id Unique Identifier of the Test Server.
testServer_name Name of the Test Server.
testServer_hostName Host name of the Test Server.
testServer_wcfConfigSectionName Name of the WCF configuration section used by the Orchestrator to communicate with the Test Server. For more details see WCF communications configuration
testServer_loadSyncApplicationPath Path to the Zen4SyncClient.exe on the Test Server.
testServer_configFilesDirectory Path of the directory containing the Client Test Session Descriptors on the Test Server.
testServer_mefComponentRootDirectory The path to the root directory of the MEF components deployment. Will be used when Zen4Sync will automatically handle MEF components deployment. Forward compatibility, not implemented yet.

testSession

A Test Session consists in a number of Clients executing Test Scenarios on different Test Servers.

Column Name Description
testSession_id Unique Identifier of the Test Session.
testSession_name Name of the Test Session.
testSession_createdOn Creation date and time of the Test Session. Stored in universal time format.
testSession_testSessionCategoryId Foreign key toward the category of the Test Session.
testSession_testSessionStateId Foreign key toward the current state of the Test Session.

testSessionCategory

Test Sessions can be put in Categories. The Categories are created by the user.

Column Name Description
testSessionCategory_id Unique Identifier of the category.
testSessionCategory_name Name of the category.

testSessionState

Test Sessions can be in different states :
  • Planned : The Test Session properties are in the Zen4SyncRepository but no execution has started.
  • Waiting For Start : The Test Session has been launched, the Clients have been launched and are waiting for their scheduled start time to execute their Test Scenario.
  • In Progress : The Clients of the Test Session are currently executing their Test Scenarios.
  • Completed : The Test Session is over, all Clients have completed the execution of their Test Scenario.

Column Name Description
testSessionState_id Unique Identifier of the state.
testSessionState_name Name of the state.

sqlValueType

Zen4Sync sometimes needs to parse values extracted from the target databases of Test Sessions.
This table stores correspondance between SQL value types and .NET value types.
Knowing the SQL type of a value, Zen4Sync is then able to parse it into its equivalent .NET type.

Column Name Description
sqlValueType_id Unique Identifier of the type.
sqlValueType_sqlName Name of the SQL type.
sqlValueType_dotNetName Name of the .NET type.



Scenario

The Scenario schema stores data related to the Test Scenarios: what to execute and how did the execution go.

247380

activity

An activity is the smallest piece of work for a Zen4Snyc Client.
As described in the Zen4SyncPhilosophy, Zen4Sync comes with several activity types.

Column Name Description
activity_id Unique Identifier of the Activity.
activity_testScenarioId Test Scenario ID the Activity belongs to.
activity_activityTypeId The Activity Type of the referenced Activity Item.
activity_activityItemId The actual Activity Item that will be executed.
activity_executionOrder The execution order of the Activity in the Test Scenario.
activity_preWaitingTimeInSeconds Time to wait before executing the Activity Item.
activity_postWaitingTimeInSeconds Time to wait after executing the Activity Item.

activityContext

Column Name Description
activityContext_id
activityContext_activityId
activityContext_clientSessionId
activityContext_contextItemId
activityContext_overridingData

activityHistory

Column Name Description
activityHistory_id
activityHistory_activityId
activityHistory_startDateTime
activityHistory_startDateTimeOnServer
activityHistory_endDateTime
activityHistory_endDateTimeOnServer
activityHistory_error
activityHistory_clientSessionId

activityType

Column Name Description
activityType_id
activityType_name

testScenario

A Test Scenario is a chaining of Activities.
It allows to specify a waiting time before and after each Activity execution.
It will be executed by Clients during a Test Session.

Column Name Description
testScenario_id Unique Identifier of the Test Scenario.
testScenario_name User-friendly name of the Test Scenario.



MergeSync

The MergeSync schemas stores data related to the Merge Synchronization activity.
It allows to specify all the properties of a Merge Synchronization.

The implentation of the synchronization relies on the SqlCeReplication .NET object.
The Zen4SyncRepository database contains all the data necessary to fully configure the SqlCeReplication object.
The following tables give references to the SqlCeReplication properties through MSDN documentation.

247378

syncSession

The syncSession table stores data related to a Merge Synchronization session.

Column Name Description
syncSession_id Unique Identifier of the synchronization.
syncSession_compressionLevel CompressionLevel
syncSession_connectionRetryTimeout ConnectionRetryTimeout
syncSession_connectTimeout ConnectTimeout
syncSession_exchangeTypeId ExchangeType. Foreign key toward the exchange type that will be used for the synchronization - see exchangeType table.
syncSession_hostName HostName. Generic HostName used for the synchronization if a client does not specify one. If a client specifies a specific HostName, the generic HostName is ignored.
syncSession_loginTimeout LoginTimeout
syncSession_postSyncCleanup PostSyncCleanup. Stored as a Bit, use 1 or 0.
syncSession_publication Publication
syncSession_queryTimeout QueryTimeout
syncSession_receiveTimeout ReveiveTimeout
syncSession_sendTimeout SendTimeout
syncSession_snapshotTransferTypeId SnapshotTransferType. Foreign key toward the type of snapshot transfer used - see snapshotTransferType table).
syncSession_publisherId Foreign key toward the publisher used for the synchronization - see publisher table.
syncSession_distributorId Foreign key toward the distributor used for the synchronization - see distributor table.
syncSession_internetId Foreign key toward the IIS server used for the synchronization - see internet table.

distributor

The distributor table stores data about the distributor of a SQL Server Merge Replication Architecture.

Column Name Description
distributor_id Unique Identifier of the distributor.
distributor_name Distributor
distributor_address DistributorAddress
distributor_login DistributorLogin. Use NULL is no login is needed.
distributor_password DistributorPassword. Use NULL if no password is needed.
distributor_networkTypeId DistributorNetwork. Foreign key toward the Network properties used to access the distributor - see networkType table.
distributor_securityTypeId DistributorSecurityMode. Foreign key toward the Security policy used to access the distributor - see SecurityType table.
distributor_profileName ProfileName

publisher

The publisher table stores data related to the publisher of a SQL Server Merge Replication Architecture.

Column Name Description
publisher_id Unique Identifier of the publisher.
publisher_name Publisher
publisher_address PublisherAddress
publisher_database PublisherDatabase
publisher_login PublisherLogin. Use NULL if no login is needed.
publisher_password PublisherPassword. Use NULL if no password is needed.
publisher_networkTypeId PublisherNetwork. Foreign key toward the Network properties used to access the publisher - see networkType table.
publisher_securityTypeId PublisherSecurityMode. Foreign key toward the Security policy used to access the publisher - see securityType table.

subscriber

The subscriber table stores data about a Subscriber of the synchronization.

Column Name Description
subscriber_id Unique Identifier of the Subscriber.
subscriber_name Subscriber
subscriber_hostName HostName. Overrides the syncSession_hostName if specified. Use NULL to use the syncSession_hostName.
subscriber_connectionString SubscriberConnectionString.
subscriber_deleteSdfIfItExists Bit specifying if the sdf file of the client should be deleted before launching synchronization.
subscriber_sdfFileName Name of the sdf file.
subscriber_sdfFileDirectory Directory used to store the sdf file.
subscribervalidateTypeId Validate. Foreign key toward the Validate Type used - see validateType_ table.

internet

This table stores values used to set the internet* properties of the SqlCeReplication object.

Column Name Description
internet_id Unique Identifier of the Internet.
internet_name User-friendly name of the Internet.
internet_url InternetUrl
internet_login InternetLogin. Use NULL if no login is needed.
internet_password InternetPassword. Use NULL if no password is needed.
internet_proxyServer InternetProxyServer. Use NULL if no proxy server is needed.
internet_proxyLogin InternetProxyLogin. Use NULL if no login is needed.
internet_proxyPassword InternetProxyPassword. Use NULL if no password is needed.

networkType

Specifies the network protocol to use when setting the DistributorNetwork or PublisherNetwork properties of the SqlCeReplication object.
This table stores values equivalent to the NetworkType Enumeration

Column Name Description
networkType_id Unique Identifier of the Network Type.
networkType_name Name of the Network Type.

securityType

Specifies the security mode used when connecting to the Distributor or the Publisher.
This table stores values equivalent to the SecurityType Enumeration.

Column Name Description
securityType_id Unique Identifier of the Security Type.
securityType_name Name of the Security Type.

exchangeType

Specifies whether data is merged up to the Publisher only, or merge in both directions between the Publisher and the Subscriber.
This table stores values equivalent to the ExchangeType Enumeration.

Column Name Description
exchangeType_id Unique Identifier of the Exchange Type.
exchangeType_name Name of the Exchange Type.

snapshotTransferType

Controls how snapshot files are transferred from the Distributor to the computer running IIS.
This table stores values equivalent to the SnapshotTransferType Enumeration.

Column Name Description
snapshotTransferType_id Unique Identifier of the Snapshot Transfer Type.
snapshotTransferType_name Name of the Snapshot Transfer Type.

validateType

Specifies the type of data validation to perform.
This table stores values equivalent to the ValidateType Enumeration.

Column Name Description
validateType_id Unique Identifier of the Validate Type.
validateType_name Name of the Validate Type.

syncSessionContext

This table stores data allowing to assign a specific Subscriber to a Synchronization.

Column Name Description
syncSessionContext_id Unique Identifier of the Sync Session Context.
syncSessionContext_name User-friendly name of the Sync Session Context.
syncSessionContext_subscriberId Foreign key toward the Subscriber associated to the context - see subscriber table.


MEF

The MEF schema contains data related to the Zen4Sync MEF extension possibilities.
It stores data about which MEF components are deployed and where they are deployed.


247379

mefComponent

Stores generic data about a MEF component.

Column Name Description
mefComponent_id Unique Identifier of the MEF component.
mefComponent_name Name of the MEF component.

mefComponentVersion

Zen4Sync allows the user to deploy different versions of a single MEF component.
This table stores data about a specific version of a MEF component.

Column Name Description
mefComponentVersion_id Unique Identifier of the MEF component.
mefComponentVersion_mefComponentId Foreign key toward the MEF component.
mefComponentVersion_version Version number of the MEF component.
mefComponentVersion_dll varbinary(MAX) column storing the actual component's dll. This column is only used as a backup of the MEF component. It's not involved into MEF deployment.

mefDeployment

A MEF component has to be deployed on Test Servers. Deployed means accessible locally for the Test Server.

Column Name Description
mefDeployment_id Unique Identifier of the MEF Deployment.
mefDeployment_testServerId Foreign key toward the Test Server hosting the MEF Component.
mefDeployment_mefDeploymentDirectory Path to the directory where the MEF Component .exe has been deployed.
mefDeployment_mefComponentVersionId Foreign key toward the deployed version of the MEF Component.

mefExecution

A MEF Execution is the execution of a MEF Component by a Client as part of a Test Scenario.

Column Name Description
mefExecution_id Unique Identifier of the MEF Execution.
mefExecution_mefComponentVersionId Foreign key toward the MEF Component version to execute.
mefExecution_metadata XML data that will be given as a parameter of the Execute method of the MEF component.

mefExecutionContext

When executing a MEF Execution activity, a Client may need specific metadata.
This table stores these metadata.

Column Name Description
mefExecutionContext_id Unique Identifier of the context.
mefExecutionContext_name User-friendly name of the context.
mefExecutionContext_metadata XML data representing the context. These data will be passed as a parameter to the method executed by the MEF Component.

mefExecutionHistory


Column Name Description
mefExecutionHistory_id
mefExecutionHistory_activityHistoryId
mefExecutionHistory_metadata



SQLCEBackup


247381

sqlceBackup

Column Name Description
sqlceBackup_id

sqlceBackupContext

Column Name Description
sqlceBackupContext_id
sqlceBackupContext_name
sqlceBackupContext_sdfFileName
sqlceBackupContext_sdfFileDirectory

sqlceBackupHistory

Column Name Description
sqlceBackupHistory_id
sqlceBackupHistory_activityHistoryId
sqlceBackupHistory_sqlCeDatabase


SQCEExecution


247382

sqlceCheckData

Column Name Description
sqlceCheckData_id
sqlceCheckData_name
sqlceCheckData_sqlQuery
sqlceCheckData_expectedValue
sqlceCheckData_sqlValueTypeId

sqlceCheckDataContext

Column Name Description
sqlceCheckDataContext_id
sqlceCheckDataContext_name
sqlceCheckDataContext_connectionString
sqlceCheckDataContext_isEncryptedConnectionString

sqlceCheckDataParameter

Column Name Description
sqlceCheckDataParameter_id
sqlceCheckDataParameter_name
sqlceCheckDataParameter_value
sqlceCheckDataParameter_sqlValueTypeId
sqlceCheckDataParameter_sqlceCheckDataContextId

sqlceExecution

Column Name Description
sqlceExecution_id
sqlceExecution_name
sqlceExecution_sqlQuery

sqlceExecutionContext

Column Name Description
sqlceExecutionContext_id
sqlceExecutionContext_name
sqlceExecutionContext_connectionString
sqlceExecutionContext_isEncryptedConnectionString

sqlceExecutionHistory

Column Name Description
sqlceExecutionHistory_id
sqlceExecutionHistory_activityHistoryId
sqlceExecutionHistory_parameterName
sqlceExecutionHistory_parameterValue

sqlceExecutionParameter

Column Name Description
sqlceExecutionParameter_id
sqlceExecutionParameter_name
sqlceExecutionParameter_value
sqlceExecutionParameter_sqlValueTypeId
sqlceExecutionParameter_sqlceExecutionContextId


SQLServerExecution


247385

sqlServerCheckData

Column Name Description
sqlServerCheckData_id
sqlServerCheckData_name
sqlServerCheckData_sqlQuery
sqlServerCheckData_expectedValue
sqlServerCheckData_sqlValueTypeId

sqlServerCheckDataContext

Column Name Description
sqlServerCheckDataContext_id
sqlServerCheckDataContext_name
sqlServerCheckDataContext_connectionString
sqlServerCheckDataContext_isEncryptedConnectionString

sqlServerCheckDataParameter

Column Name Description
sqlServerCheckDataParameter_id
sqlServerCheckDataParameter_name
sqlServerCheckDataParameter_value
sqlServerCheckDataParameter_sqlValueTypeId
sqlServerCheckDataParameter_sqlServerCheckDataContext

sqlServerExecution

Column Name Description
sqlServerExecution_id
sqlServerExecution_name
sqlServerExecution_sqlQuery

sqlServerExecutionContext

Column Name Description
sqlServerExecutionContext_id
sqlServerExecutionContext_name
sqlServerExecutionContext_connectionString
sqlServerExecutionContext_isEncryptedConnectionString

sqlServerExecutionHistory

Column Name Description
sqlServerExecutionHistory_id
sqlServerExecutionHistory_activityHistoryId
sqlServerExecutionHistory_parameterName
sqlServerExecutionHistory_parameterValue

sqlServerExecutionParameter

Column Name Description
sqlServerExecutionParameter_id
sqlServerExecutionParameter_name
sqlServerExecutionParameter_value
sqlServerExecutionParameter_sqlValueTypeId
sqlServerExecutionParameter_sqlServerExecutionContextId


Last edited Jun 16, 2011 at 1:53 PM by Christophe_, version 59

Comments

No comments yet.