Obsidian Tables: Difference between revisions
No edit summary |
No edit summary |
||
| (9 intermediate revisions by 2 users not shown) | |||
| Line 3: | Line 3: | ||
'''Note:''' Since Obsidian does not run jobs within the same connection or transaction as your jobs, there is no real need to run Obsidian within the same database or schema as your own application(s), though you may wish to do so to facilitate maintenance. | '''Note:''' Since Obsidian does not run jobs within the same connection or transaction as your jobs, there is no real need to run Obsidian within the same database or schema as your own application(s), though you may wish to do so to facilitate maintenance. | ||
Obsidian can be configured to use a [[Advanced_Configuration#Table Prefixes|table prefix]] when creating its tables. | |||
* custom_calendar | |||
* event_log | * event_log | ||
* event_subscriber | * event_subscriber | ||
* event_subscription | * event_subscription | ||
* global_job_config | |||
* job | * job | ||
* job_chain | * job_chain | ||
| Line 13: | Line 17: | ||
* job_conflict_config | * job_conflict_config | ||
* job_history | * job_history | ||
* job_history_config | |||
* job_history_chain | * job_history_chain | ||
* job_history_error | * job_history_error | ||
* job_history_interrupt | |||
* job_history_result | * job_history_result | ||
* job_running_host | * job_running_host | ||
* job_sub_mode_condition | |||
* job_subscription | |||
* job_subscription_job | |||
* job_subscription_mode | |||
* job_state | * job_state | ||
* notification | * notification | ||
* notif_template | |||
* notif_template_entity | |||
* operations_parameter | * operations_parameter | ||
* role | * role | ||
| Line 26: | Line 38: | ||
* user_cookie | * user_cookie | ||
* user_role | * user_role | ||
== Oracle Privileges == | |||
As of version 2.1, if you are not using the schema owner as your Obsidian database user, the following privileges will need to be granted to your database user: | |||
<pre> | |||
# For each Obsidian table... | |||
GRANT INSERT,SELECT,UPDATE,DELETE ON OBS_JOB TO OBSIDIAN_USER; | |||
# Required for alternate schema usage | |||
GRANT ALTER SESSION TO OBSIDIAN_USER; | |||
GRANT ANALYZE ANY TO OBSIDIAN_USER; | |||
GRANT ANALYZE ANY DICTIONARY TO OBSIDIAN_USER; | |||
</pre> | |||
== MS SQL Server Snapshot Isolation == | |||
For maximum compatibility and to avoid deadlocks, MS SQL Server should be configured to use [https://learn.microsoft.com/en-us/dotnet/framework/data/adonet/sql/snapshot-isolation-in-sql-server read committed snapshot isolation]. | |||
This can be enabled on your database by running the following commands: | |||
<pre> | |||
ALTER DATABASE MyDatabase SET ALLOW_SNAPSHOT_ISOLATION ON | |||
ALTER DATABASE MyDatabase SET READ_COMMITTED_SNAPSHOT ON | |||
</pre> | |||
Latest revision as of 14:56, 17 May 2023
Obsidian needs to create and manage the following tables in its target database. When sharing schemas between Obsidian and other applications, ensure there are no naming conflicts by reviewing this list.
Note: Since Obsidian does not run jobs within the same connection or transaction as your jobs, there is no real need to run Obsidian within the same database or schema as your own application(s), though you may wish to do so to facilitate maintenance.
Obsidian can be configured to use a table prefix when creating its tables.
- custom_calendar
- event_log
- event_subscriber
- event_subscription
- global_job_config
- job
- job_chain
- job_chain_mode
- job_chain_mode_condition
- job_configuration
- job_conflict_config
- job_history
- job_history_config
- job_history_chain
- job_history_error
- job_history_interrupt
- job_history_result
- job_running_host
- job_sub_mode_condition
- job_subscription
- job_subscription_job
- job_subscription_mode
- job_state
- notification
- notif_template
- notif_template_entity
- operations_parameter
- role
- semaphore
- sequence_manager
- suite_user
- user_cookie
- user_role
Oracle Privileges
As of version 2.1, if you are not using the schema owner as your Obsidian database user, the following privileges will need to be granted to your database user:
# For each Obsidian table... GRANT INSERT,SELECT,UPDATE,DELETE ON OBS_JOB TO OBSIDIAN_USER; # Required for alternate schema usage GRANT ALTER SESSION TO OBSIDIAN_USER; GRANT ANALYZE ANY TO OBSIDIAN_USER; GRANT ANALYZE ANY DICTIONARY TO OBSIDIAN_USER;
MS SQL Server Snapshot Isolation
For maximum compatibility and to avoid deadlocks, MS SQL Server should be configured to use read committed snapshot isolation.
This can be enabled on your database by running the following commands:
ALTER DATABASE MyDatabase SET ALLOW_SNAPSHOT_ISOLATION ON ALTER DATABASE MyDatabase SET READ_COMMITTED_SNAPSHOT ON