actions_max_stack
aggregator_allowed_html_tags
allow_insecure_uploads
cache_inc
filter_allowed_protocols
forum_block_num_active
forum_block_num_new
front_page_output
locale_cache_strings
menu_default_active_menus
mime_extension_mapping
search_tag_weights
session_inc
session_write_interval
simpletest_clear_results
taxonomy_terms_per_page_admin
update_fetch_url

I will work on this but there are quite a number of which even I never even heard of...

Comments

sun’s picture

Awesome. Tracking.

douggreen’s picture

search_tag_weights stores the scoring weights for various HTML tags, used by the search engine. For example, <H1> tags currently have a high weight, of 25; a savvy site admin could give <H1> tags either greater or lessor importance by changing these values in the database or in settings.php. This variable has been around for some time. And while I see no harm in it, I'm unaware of anyone who uses this; and further, with the #145242: refactor search node_rank with hook_node_rank scoring factors allowing other scoring factors, I don't see this getting much use.

jvandyk’s picture

Because of the nature of actions, there is a possibility that you might have an action that calls an action that calls an action that calls an action...and you might get into an infinite loop.

actions_do() tracks the number of recursive calls to itself in the $stack variable, which is incremented at the beginning of actions_do() and decremented at the end of actions_do(). So if you have $stack going up and up, it may mean danger.

$actions_max_stack is the highest number of recursive calls to actions_do() that will be allowed before Drupal decides that infinite recursion is taking place and aborts. The default value for $actions_max_stack is 35. If $actions_max_stack is exceeded, Drupal will abort and write the following watchdog entry:

Stack overflow: too many calls to actions_do(). Aborting to prevent infinite recursion.

jvandyk’s picture

By default, Drupal keeps track of user access time using the access field of the users table. That is, at the end of a request, Drupal updates the current user's access field with a current timestamp.

The problem is that on a high-traffic Drupal site, the users table gets very busy. A horde of requests are being completed so lots of updates to the users table need to happen. But at the same time, at the beginning of each request the users table is being joined to the sessions table, so the users table needs to be used then, too. Thus access to the users table becomes a bottleneck.

One way to avoid the bottleneck is to do updates to the access field of the users table less often. That is what $session_write_interval does. By default it is 180 seconds. That means "if fewer than 180 seconds have elapsed since this user's last visit, skip the updating of the access field of the users table."

If you absolutely must track a user's exact access time, you can set this to 0 and the writes will always happen.

drewish’s picture

mime_extension_mapping is used by file_get_mimetype() to allow for sites to have alternate extension => mime type mappings.

Bojhan’s picture

Thanks, tracking as well.

alex_b’s picture

You can remove aggregator_allowed_html_tags from the list. A past patch accidentally removed the form for it, I've created an issue: #486246: Bring back form for aggregator_allowed_html_tags

sun’s picture

Issue tags: +API clean-up

Tagging for feature freeze.

lilou’s picture

lilou’s picture

lilou’s picture

Issue tags: +d7variables

Tag

webchick’s picture

Marked #620650: Create a variables.php for documenting hidden variables a duplicate.

We have a globals.php for documenting global variables. A variables.php would make sense alongside it.

dawehner’s picture

Most of the variables can be associated with a certain core module.
What about a new group variables in the .api.php files?

/**
 * @addtogroup variables
 * @{
 */
Spleshka’s picture

Spent some time and get list of non-UI variables. Suppose we can now add it to documentation, what do you think?

Variable name Default value
404_fast_paths_exclude /\/(?:styles)\//
404_fast_paths /\.(?:txt|png|gif|jpe?g|css|js|ico|swf|flv|cgi|bat|pl|dll|exe|asp)$/i
404_fast_html <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML+RDFa 1.0//EN" "http://www.w3.org/MarkUp/DTD/xhtml-rdfa-1.dtd"><html xmlns="http://www.w3.org/1999/xhtml"><head><title>404 Not Found</title></head><body><h1>Not Found</h1><p>The requested URL "@path" was not found on this server.</p></body></html>
actions_max_stack 35
admin_compact_mode FALSE
allow_authorize_operations TRUE
allow_insecure_uploads 0
blocked_ips NULL
cache_backends array()
cache_class_[CACHE-BIN] NULL
cache_default_class DrupalDatabaseCache
comment_maintain_node_statistics TRUE
contact_threshold_limit 5
contact_threshold_window 3600
cron_key drupal
css_gzip_compression TRUE
drupal_http_request_function FALSE
drupal_js_version_query_string v=
drupal_private_key 0
drupal_stale_file_threshold 2592000
drupal_weight_select_max DRUPAL_WEIGHT_SELECT_MAX
field_purge_batch_size 10
field_storage_default field_sql_storage
file_chmod_directory 0775
file_chmod_file 0644
file_description_length 128
file_description_type textfield
file_icon_directory drupal_get_path('module', 'file') . '/icons'
filter_allowed_protocols array('ftp', 'http', 'https', 'irc', 'mailto', 'news', 'nntp', 'rtsp', 'sftp', 'ssh', 'tel', 'telnet', 'webcal')
https FALSE
image_allow_insecure_derivatives FALSE
image_style_preview_image drupal_get_path('module', 'image') . '/sample.png'
install_profile standard
js_gzip_compression TRUE
language_native_enabled TRUE
locale_cache_length 75
locale_cache_strings 1
locale_custom_strings_[LANGCODE] array()
locale_field_language_fallback TRUE
locale_js_directory languages
lock_inc includes/lock.inc
mail_line_endings MAIL_LINE_ENDINGS
mail_system array('default-system' => 'DefaultMailSystem')
maintenance_theme NULL
maximum_replication_lag 300
menu_inc includes/menu.inc
omit_vary_cookie NULL
page_cache_invoke_hooks TRUE
page_cache_without_database NULL
password_count_log2 DRUPAL_HASH_COUNT
password_inc includes/password.inc
path_inc includes/path.inc
proxy_server ''
proxy_port 8080
proxy_username ''
proxy_password ''
proxy_user_agent ''
proxy_exceptions array('127.0.0.1', 'localhost')
reverse_proxy 0
reverse_proxy_header HTTP_X_FORWARDED_FOR
reverse_proxy_addresses array()
queue_class_[QUEUE-NAME] NULL
queue_default_class SystemQueue
queue_default_reliable_class SystemQueue
search_and_or_limit 7
search_tag_weights array('h1' => 25, 'h2' => 18, 'h3' => 15, 'h4' => 12, 'h5' => 9, 'h6' => 6, 'u' => 3, 'b' => 3, 'i' => 3, 'strong' => 3, 'em' => 3, 'a' =>10)
session_inc includes/session.inc
session_write_interval 180
shortcut_max_slots 7
taxonomy_maintain_index_table TRUE
taxonomy_override_selector FALSE
taxonomy_terms_per_page_admin 100
theme_link TRUE
tracker_batch_size 1000
translation_language_type LANGUAGE_TYPE_INTERFACE
update_fetch_url UPDATE_DEFAULT_URL
update_max_fetch_attempts UPDATE_MAX_FETCH_ATTEMPTS
update_max_fetch_time UPDATE_MAX_FETCH_TIME
user_failed_login_identifier_uid_only FALSE
user_failed_login_ip_limit 50
user_failed_login_ip_window 3600
user_failed_login_user_limit 5
user_failed_login_user_window 21600
user_password_reset_timeout 86400
andypost’s picture

Version: 7.x-dev » 8.x-dev

Suppose current branch is 8

Spleshka’s picture

Version: 8.x-dev » 7.x-dev

@andypost,

This variables are for 7.x.