#?ini charset="iso-8859-1"?
# eZ Publish configuration file.
#
# NOTE: It is not recommended to edit this files directly, instead
#       a file in override should be created for setting the
#       values that is required for your site. Either create
#       a file called settings/override/dbschema.ini.append or
#       settings/override/dbschema.ini.append.php for more security
#       in non-virtualhost modes (the .php file may already be present
#       and can be used for this purpose).

[SchemaSettings]
SchemaPaths[]
SchemaPaths[mysql]=lib/ezdbschema/classes/ezmysqlschema.php
SchemaPaths[mysqli]=lib/ezdbschema/classes/ezmysqlschema.php
SchemaPaths[postgresql]=lib/ezdbschema/classes/ezpgsqlschema.php

SchemaHandlerClasses[]
SchemaHandlerClasses[mysql]=eZMysqlSchema
SchemaHandlerClasses[mysqli]=eZMysqlSchema
SchemaHandlerClasses[postgresql]=eZPgsqlSchema

[LintChecker]
# Limitations on names and identifiers in the database
# In general they should not exceed 30 which is the limit of Oracle

# Table name limit, is 30 minus 4, this reserves room for suffixes
TableLimit=26
FieldLimit=30
IndexLimit=30

# A list of tables which do not get their names checked.
# These are tables which are already in eZ Publish and
# cannot be changed in the 3.x series.
# They all have workarounds for the various DB handlers.
#
# Each entry is the table name
# e.g ezuser
IgnoredTables[]
IgnoredTables[]=ezcollab_item_participant_link
IgnoredTables[]=ezgeneral_digest_user_settings
IgnoredTables[]=eznotificationcollection_item
IgnoredTables[]=ezproductcollection_item_opt
IgnoredTables[]=ezsubtree_notification_rule

# A list of table + fields which do not get their names checked.
# These are fields which are already in eZ Publish and
# cannot be changed in the 3.x series.
# They all have workarounds for the various DB handlers.
#
# Each entry is the table name, a dot and the field name
# e.g ezuser.login
IgnoredFields[]
IgnoredFields[]=ezenumobjectvalue.contentobject_attribute_version
IgnoredFields[]=ezurl_object_link.contentobject_attribute_version

# A list of table + fields which do not get their syntax checked.
# These are fields which are already in eZ Publish and
# cannot be changed in the 3.x series.
# They all have workarounds for the various DB handlers.
#
# Each entry is the table name, a dot and the field name
# e.g ezuser.login
IgnoredFieldSyntax[]

# A list of indexes which do not get their names checked.
# These are indexes which are already in eZ Publish and
# cannot be changed in the 3.x series.
# They all have workarounds for the various DB handlers.
#
# Each entry is the index name
# e.g ezuser_role
IgnoredIndexes[]
IgnoredIndexes[]=ezcontentobject_attribute_co_id_ver_lang_code
IgnoredIndexes[]=ezcontentobject_attribute_contentobject_id
IgnoredIndexes[]=ezcontentobject_attribute_language_code
IgnoredIndexes[]=ezcontentobject_tree_path_ident
IgnoredIndexes[]=ezcobj_trash_path_ident
IgnoredIndexes[]=ezenumobjectvalue_co_attr_id_co_attr_ver
IgnoredIndexes[]=ezenumvalue_co_cl_attr_id_co_class_att_ver
IgnoredIndexes[]=ezmodule_run_workflow_process_id_s
IgnoredIndexes[]=ezoperation_memento_memento_key_main
IgnoredIndexes[]=ezproductcollection_item_contentobject_id
IgnoredIndexes[]=ezproductcollection_item_productcollection_id
IgnoredIndexes[]=ezproductcollection_item_opt_item_id
IgnoredIndexes[]=ezsearch_object_word_link_frequency
IgnoredIndexes[]=ezsearch_object_word_link_identifier
IgnoredIndexes[]=ezsearch_object_word_link_integer_value
IgnoredIndexes[]=ezsearch_object_word_link_object
IgnoredIndexes[]=ezsubtree_notification_rule_user_id
IgnoredIndexes[]=ezwaituntildateevalue_wf_ev_id_wf_ver

# Mapping of long words to short words
# This will be used whenever an identifier or name is to long
# each entry will be tried in order until the string is short enough.
# e.g. NameMap[notification]=notif
NameMap[]
# combined words that are really shortened
NameMap[enumobjectvalue]=enov
NameMap[enumvalue]=env
NameMap[waituntildateeval]=wude
NameMap[co_cl_attr_id_co_class_att_ver]=ccai_ccav

# General word shortening
NameMap[contentobject]=cobj
NameMap[content]=co
NameMap[object]=obj
NameMap[attribute]=attr
NameMap[version]=ver
NameMap[notification]=notif
NameMap[collection]=coll
NameMap[workflow]=wflw
NameMap[product]=prod
NameMap[participant]=part
NameMap[process]=prcs
NameMap[operation]=op
NameMap[memento]=mem
NameMap[search]=src
NameMap[integer]=int
NameMap[frequency]=frq
NameMap[general]=gen
NameMap[module]=mod
NameMap[value]=val
NameMap[link]=lnk
NameMap[user]=usr
NameMap[lang]=lng

# Transformation rules specific to MySQL
[mysql]
# Since we do not store length information fields in indexes yet we
# need to add/remove them for MySQL.
IndexTranslation[ezimagefile.ezimagefile_file]=filepath.mysql:length/200
IndexTranslation[eztrigger.eztrigger_fetch]=name.mysql:length/25;module_name.mysql:length/50;function_name.mysql:length/50
IndexTranslation[ezurlalias.ezurlalias_desturl]=destination_url.mysql:length/200
IndexTranslation[ezurlalias.ezurlalias_source_url]=source_url.mysql:length/255
IndexTranslation[ezcontentobject_tree.ezcontentobject_tree_path_ident]=path_identification_string.mysql:length/50
IndexTranslation[ezcontentobject_trash.ezcobj_trash_path_ident]=path_identification_string.mysql:length/50
IndexTranslation[ezimagefile.ezimagefile_file]=filepath.mysql:length/200
IndexTranslation[eztrigger.eztrigger_fetch]=name.mysql:length/25;module_name.mysql:length/50;function_name.mysql:length/50
IndexTranslation[eztrigger.eztrigger_def_id]=module_name.mysql:length/50;function_name.mysql:length/50
IndexTranslation[ezurlalias.ezurlalias_desturl]=destination_url.mysql:length/200
IndexTranslation[ezurlalias.ezurlalias_source_url]=source_url.mysql:length/255
IndexTranslation[ezurlalias_ml.ezurlalias_ml_text]=text.mysql:length/32
IndexTranslation[ezurlalias_ml.ezurlalias_ml_text_lang]=text.mysql:length/32
IndexTranslation[ezurlalias_ml.ezurlalias_ml_action]=action.mysql:length/32
IndexTranslation[ezurlalias_ml.ezurlalias_ml_par_txt]=text.mysql:length/32
IndexTranslation[ezurlalias_ml.ezurlalias_ml_par_lnk_txt]=text.mysql:length/32
IndexTranslation[ezurlalias_ml.ezurlalias_ml_par_act_id_lnk]=action.mysql:length/32
IndexTranslation[ezurlalias_ml.ezurlalias_ml_act_org]=action.mysql:length/32
IndexTranslation[ezurl.ezurl_url]=url.mysql:length/255

# Make sure this table has delayed key write set when dumping SQL
