[xiph-commits] r18481 - in branches/dir.xiph.org: . docs

balbinus at svn.xiph.org balbinus at svn.xiph.org
Sun Jul 29 11:35:14 PDT 2012


Author: balbinus
Date: 2012-07-29 11:35:14 -0700 (Sun, 29 Jul 2012)
New Revision: 18481

Added:
   branches/dir.xiph.org/docs/
   branches/dir.xiph.org/docs/apache-vhost.conf
   branches/dir.xiph.org/docs/apache2.conf
   branches/dir.xiph.org/docs/documentation.txt
   branches/dir.xiph.org/docs/memcached.conf
   branches/dir.xiph.org/docs/my.cnf
   branches/dir.xiph.org/docs/schema.sql
Removed:
   branches/dir.xiph.org/documentation.txt
Log:
Adding some config files for dir.xiph.org


Added: branches/dir.xiph.org/docs/apache-vhost.conf
===================================================================
--- branches/dir.xiph.org/docs/apache-vhost.conf	                        (rev 0)
+++ branches/dir.xiph.org/docs/apache-vhost.conf	2012-07-29 18:35:14 UTC (rev 18481)
@@ -0,0 +1,56 @@
+#NameVirtualHost *
+<VirtualHost *>
+	ServerName dir.xiph.org
+
+	KeepAlive Off
+	
+	DocumentRoot /var/www/dir.xiph.org
+	<Directory />
+		Options FollowSymLinks
+		AllowOverride None
+	</Directory>
+	<Directory /var/www/dir.xiph.org>
+		Options Indexes FollowSymLinks MultiViews
+		AllowOverride None
+		Order allow,deny
+		allow from all
+	</Directory>
+	
+	# Rewrite rules
+	RewriteEngine On
+	RewriteRule ^/cgi-bin/yp-cgi$ /cgi-bin/yp.php
+        RewriteCond %{QUERY_STRING} ^start=[0-9]*&num=[0-9]*&search=([^&]*)
+        RewriteRule ^/search$ /by_genre/%1 [L]
+	
+	# Logging
+	ErrorLog /var/log/apache2/dir-error.log
+	# Possible values include: debug, info, notice, warn, error, crit,
+	# alert, emerg.
+#	LogLevel debug
+#	CustomLog /var/log/apache2/dir-access.log combined
+	ServerSignature Off
+	
+	# Hide .svn dirs
+	<DirectoryMatch "^/.*/\.svn/">
+		Order deny,allow
+		Deny from all
+	</DirectoryMatch>
+	# The same goes for docs
+        <Location "/docs/">
+                Order deny,allow
+                Deny from all
+        </Location>
+	
+	# Expire header
+	ExpiresActive On
+	ExpiresByType text/css "access plus 1 month"
+	ExpiresByType image/png "access plus 1 month"
+	ExpiresByType text/html "access plus 1 month"
+	ExpiresByType application/xml "access plus 5 hours"
+	
+	# ETags
+	FileETag None
+
+        # Compression
+        AddOutputFilterByType DEFLATE text/html text/plain text/xml text/css application/xml text/xml application/x-javascript
+</VirtualHost>

Added: branches/dir.xiph.org/docs/apache2.conf
===================================================================
--- branches/dir.xiph.org/docs/apache2.conf	                        (rev 0)
+++ branches/dir.xiph.org/docs/apache2.conf	2012-07-29 18:35:14 UTC (rev 18481)
@@ -0,0 +1,295 @@
+#
+# Based upon the NCSA server configuration files originally by Rob McCool.
+#
+# This is the main Apache server configuration file.  It contains the
+# configuration directives that give the server its instructions.
+# See http://httpd.apache.org/docs/2.2/ for detailed information about
+# the directives.
+#
+# Do NOT simply read the instructions in here without understanding
+# what they do.  They're here only as hints or reminders.  If you are unsure
+# consult the online docs. You have been warned.  
+#
+# The configuration directives are grouped into three basic sections:
+#  1. Directives that control the operation of the Apache server process as a
+#     whole (the 'global environment').
+#  2. Directives that define the parameters of the 'main' or 'default' server,
+#     which responds to requests that aren't handled by a virtual host.
+#     These directives also provide default values for the settings
+#     of all virtual hosts.
+#  3. Settings for virtual hosts, which allow Web requests to be sent to
+#     different IP addresses or hostnames and have them handled by the
+#     same Apache server process.
+#
+# Configuration and logfile names: If the filenames you specify for many
+# of the server's control files begin with "/" (or "drive:/" for Win32), the
+# server will use that explicit path.  If the filenames do *not* begin
+# with "/", the value of ServerRoot is prepended -- so "/var/log/apache2/foo.log"
+# with ServerRoot set to "" will be interpreted by the
+# server as "//var/log/apache2/foo.log".
+#
+
+### Section 1: Global Environment
+#
+# The directives in this section affect the overall operation of Apache,
+# such as the number of concurrent requests it can handle or where it
+# can find its configuration files.
+#
+
+#
+# ServerRoot: The top of the directory tree under which the server's
+# configuration, error, and log files are kept.
+#
+# NOTE!  If you intend to place this on an NFS (or otherwise network)
+# mounted filesystem then please read the LockFile documentation (available
+# at <URL:http://httpd.apache.org/docs-2.1/mod/mpm_common.html#lockfile>);
+# you will save yourself a lot of trouble.
+#
+# Do NOT add a slash at the end of the directory path.
+#
+ServerRoot "/etc/apache2"
+
+#
+# The accept serialization lock file MUST BE STORED ON A LOCAL DISK.
+#
+#<IfModule !mpm_winnt.c>
+#<IfModule !mpm_netware.c>
+LockFile /var/lock/apache2/accept.lock
+#</IfModule>
+#</IfModule>
+
+#
+# PidFile: The file in which the server should record its process
+# identification number when it starts.
+#
+PidFile /var/run/apache2.pid
+
+#
+# Timeout: The number of seconds before receives and sends time out.
+#
+Timeout 10
+
+#
+# KeepAlive: Whether or not to allow persistent connections (more than
+# one request per connection). Set to "Off" to deactivate.
+#
+KeepAlive On
+
+#
+# MaxKeepAliveRequests: The maximum number of requests to allow
+# during a persistent connection. Set to 0 to allow an unlimited amount.
+# We recommend you leave this number high, for maximum performance.
+#
+MaxKeepAliveRequests 100
+
+#
+# KeepAliveTimeout: Number of seconds to wait for the next request from the
+# same client on the same connection.
+#
+KeepAliveTimeout 2
+
+##
+## Server-Pool Size Regulation (MPM specific)
+## 
+
+# prefork MPM
+# StartServers: number of server processes to start
+# MinSpareServers: minimum number of server processes which are kept spare
+# MaxSpareServers: maximum number of server processes which are kept spare
+# MaxClients: maximum number of server processes allowed to start
+# MaxRequestsPerChild: maximum number of requests a server process serves
+<IfModule mpm_prefork_module>
+    StartServers          5
+    MinSpareServers      10
+    MaxSpareServers      30
+    MaxClients          150
+    MaxRequestsPerChild   0
+</IfModule>
+
+# worker MPM
+# StartServers: initial number of server processes to start
+# MaxClients: maximum number of simultaneous client connections
+# MinSpareThreads: minimum number of worker threads which are kept spare
+# MaxSpareThreads: maximum number of worker threads which are kept spare
+# ThreadsPerChild: constant number of worker threads in each server process
+# MaxRequestsPerChild: maximum number of requests a server process serves
+<IfModule mpm_worker_module>
+    StartServers          2
+    MaxClients          150
+    MinSpareThreads      25
+    MaxSpareThreads      75 
+    ThreadsPerChild      25
+    MaxRequestsPerChild   0
+</IfModule>
+
+User www-data
+Group www-data
+
+#
+# AccessFileName: The name of the file to look for in each directory
+# for additional configuration directives.  See also the AllowOverride
+# directive.
+#
+
+#AccessFileName .htaccess
+
+#
+# The following lines prevent .htaccess and .htpasswd files from being 
+# viewed by Web clients. 
+#
+<Files ~ "^\.ht">
+    Order allow,deny
+    Deny from all
+</Files>
+
+#
+# DefaultType is the default MIME type the server will use for a document
+# if it cannot otherwise determine one, such as from filename extensions.
+# If your server contains mostly text or HTML documents, "text/plain" is
+# a good value.  If most of your content is binary, such as applications
+# or images, you may want to use "application/octet-stream" instead to
+# keep browsers from trying to display binary files as though they are
+# text.
+#
+DefaultType text/plain
+
+
+#
+# HostnameLookups: Log the names of clients or just their IP addresses
+# e.g., www.apache.org (on) or 204.62.129.132 (off).
+# The default is off because it'd be overall better for the net if people
+# had to knowingly turn this feature on, since enabling it means that
+# each client request will result in AT LEAST one lookup request to the
+# nameserver.
+#
+HostnameLookups Off
+
+# ErrorLog: The location of the error log file.
+# If you do not specify an ErrorLog directive within a <VirtualHost>
+# container, error messages relating to that virtual host will be
+# logged here.  If you *do* define an error logfile for a <VirtualHost>
+# container, that host's errors will be logged there and not here.
+#
+ErrorLog /var/log/apache2/error.log
+
+#
+# LogLevel: Control the number of messages logged to the error_log.
+# Possible values include: debug, info, notice, warn, error, crit,
+# alert, emerg.
+#
+LogLevel warn
+
+# Include module configuration:
+Include /etc/apache2/mods-enabled/*.load
+Include /etc/apache2/mods-enabled/*.conf
+
+# Include all the user configurations:
+Include /etc/apache2/httpd.conf
+
+# Include ports listing
+Include /etc/apache2/ports.conf
+
+#
+# The following directives define some format nicknames for use with
+# a CustomLog directive (see below).
+#
+LogFormat "%h %l %u %t \"%r\" %>s %b \"%{Referer}i\" \"%{User-Agent}i\"" combined
+LogFormat "%h %l %u %t \"%r\" %>s %b" common
+LogFormat "%{Referer}i -> %U" referer
+LogFormat "%{User-agent}i" agent
+
+#
+# ServerTokens
+# This directive configures what you return as the Server HTTP response
+# Header. The default is 'Full' which sends information about the OS-Type
+# and compiled in modules.
+# Set to one of:  Full | OS | Minor | Minimal | Major | Prod
+# where Full conveys the most information, and Prod the least.
+#
+ServerTokens Full
+
+#
+# Optionally add a line containing the server version and virtual host
+# name to server-generated pages (internal error documents, FTP directory 
+# listings, mod_status and mod_info output etc., but not CGI generated 
+# documents or custom error documents).
+# Set to "EMail" to also include a mailto: link to the ServerAdmin.
+# Set to one of:  On | Off | EMail
+#
+ServerSignature On
+
+
+
+#
+# Customizable error responses come in three flavors:
+# 1) plain text 2) local redirects 3) external redirects
+#
+# Some examples:
+#ErrorDocument 500 "The server made a boo boo."
+#ErrorDocument 404 /missing.html
+#ErrorDocument 404 "/cgi-bin/missing_handler.pl"
+#ErrorDocument 402 http://www.example.com/subscription_info.html
+#
+
+#
+# Putting this all together, we can internationalize error responses.
+#
+# We use Alias to redirect any /error/HTTP_<error>.html.var response to
+# our collection of by-error message multi-language collections.  We use 
+# includes to substitute the appropriate text.
+#
+# You can modify the messages' appearance without changing any of the
+# default HTTP_<error>.html.var files by adding the line:
+#
+#   Alias /error/include/ "/your/include/path/"
+#
+# which allows you to create your own set of files by starting with the
+# /usr/share/apache2/error/include/ files and copying them to /your/include/path/, 
+# even on a per-VirtualHost basis.  The default include files will display
+# your Apache version number and your ServerAdmin email address regardless
+# of the setting of ServerSignature.
+#
+# The internationalized error documents require mod_alias, mod_include
+# and mod_negotiation.  To activate them, uncomment the following 30 lines.
+
+#    Alias /error/ "/usr/share/apache2/error/"
+#
+#    <Directory "/usr/share/apache2/error">
+#        AllowOverride None
+#        Options IncludesNoExec
+#        AddOutputFilter Includes html
+#        AddHandler type-map var
+#        Order allow,deny
+#        Allow from all
+#        LanguagePriority en cs de es fr it nl sv pt-br ro
+#        ForceLanguagePriority Prefer Fallback
+#    </Directory>
+#
+#    ErrorDocument 400 /error/HTTP_BAD_REQUEST.html.var
+#    ErrorDocument 401 /error/HTTP_UNAUTHORIZED.html.var
+#    ErrorDocument 403 /error/HTTP_FORBIDDEN.html.var
+#    ErrorDocument 404 /error/HTTP_NOT_FOUND.html.var
+#    ErrorDocument 405 /error/HTTP_METHOD_NOT_ALLOWED.html.var
+#    ErrorDocument 408 /error/HTTP_REQUEST_TIME_OUT.html.var
+#    ErrorDocument 410 /error/HTTP_GONE.html.var
+#    ErrorDocument 411 /error/HTTP_LENGTH_REQUIRED.html.var
+#    ErrorDocument 412 /error/HTTP_PRECONDITION_FAILED.html.var
+#    ErrorDocument 413 /error/HTTP_REQUEST_ENTITY_TOO_LARGE.html.var
+#    ErrorDocument 414 /error/HTTP_REQUEST_URI_TOO_LARGE.html.var
+#    ErrorDocument 415 /error/HTTP_UNSUPPORTED_MEDIA_TYPE.html.var
+#    ErrorDocument 500 /error/HTTP_INTERNAL_SERVER_ERROR.html.var
+#    ErrorDocument 501 /error/HTTP_NOT_IMPLEMENTED.html.var
+#    ErrorDocument 502 /error/HTTP_BAD_GATEWAY.html.var
+#    ErrorDocument 503 /error/HTTP_SERVICE_UNAVAILABLE.html.var
+#    ErrorDocument 506 /error/HTTP_VARIANT_ALSO_VARIES.html.var
+
+
+
+# Include of directories ignores editors' and dpkg's backup files,
+# see README.Debian for details.
+
+# Include generic snippets of statements
+Include /etc/apache2/conf.d/
+
+# Include the virtual host configurations:
+Include /etc/apache2/sites-enabled/

Copied: branches/dir.xiph.org/docs/documentation.txt (from rev 18480, branches/dir.xiph.org/documentation.txt)
===================================================================
--- branches/dir.xiph.org/docs/documentation.txt	                        (rev 0)
+++ branches/dir.xiph.org/docs/documentation.txt	2012-07-29 18:35:14 UTC (rev 18481)
@@ -0,0 +1,20 @@
+inc:
+ * class.db.php: MySQL connection + querying
+ * class.izterator*.php: resultset iterator + factory (=> migrate to SPL?)
+ * class.mc.php: Memcache connection + querying (probably useless)
+ * class.mountpoint.php: a mountpoint (== stream), linking to 1+ server
+ * class.server.php: an instance of a mountpoint on a particular Icecast server
+ * class.sphinxApi.php: Sphinx connection + querying
+ * class.tag.php: a genre tag
+ * class.ypclient.php: test client class + load test code
+ * inc.db.php: initializes the database connection
+ * inc.mc.php: initializes the memcache connection
+ * inc.templating.php: initializes the templating system (Smarty)
+ * lib.apilog.php: API logging (not in use currently)
+ * lib.dir.php: helper functions (directory-specific, fixme: not in a class)
+ * lib.errors.php: error handling (mail)
+ * lib.genfile.php: generated files (file cache of heavy queries)
+ * lib.statslog.php: Stats logging (not in use currently)
+ * lib.utils.php: helper functions (generic)
+ * lib.uuidgend.php: generation of UUIDs (for SIDs)
+ * prepend.php: loads all the other files (even if they're not really needed :/)

Added: branches/dir.xiph.org/docs/memcached.conf
===================================================================
--- branches/dir.xiph.org/docs/memcached.conf	                        (rev 0)
+++ branches/dir.xiph.org/docs/memcached.conf	2012-07-29 18:35:14 UTC (rev 18481)
@@ -0,0 +1,49 @@
+# memcached default config file
+# 2003 - Jay Bonci <jaybonci at debian.org>
+# This configuration file is read by the start-memcached script provided as
+# part of the Debian GNU/Linux distribution. 
+
+# Run memcached as a daemon. This command is implied, and is not needed for the
+# daemon to run. See the README.Debian that comes with this package for more
+# information.
+-d
+
+# Log memcached's output to /var/log/memcached
+logfile /var/log/memcached.log
+
+# Be verbose
+# -v
+
+# Be even more verbose (print client commands as well)
+# -vv
+
+# Start with a cap of 64 megs of memory. It's reasonable, and the daemon default
+# Note that the daemon will grow to this size, but does not start out holding this much
+# memory
+-m 64
+
+# Default connection port is 11211
+-p 11211 
+
+# Run the daemon as root. The start-memcached will default to running as root if no
+# -u command is present in this config file
+-u nobody
+
+# Specify which IP address to listen on. The default is to listen on all IP addresses
+# This parameter is one of the only security measures that memcached has, so make sure
+# it's listening on a firewalled interface.
+-l 127.0.0.1
+
+# Limit the number of simultaneous incoming connections. The daemon default is 1024
+# -c 1024
+
+# Lock down all paged memory. Consult with the README and homepage before you do this
+# -k
+
+# Return error when memory is exhausted (rather than removing items)
+# -M
+
+# Maximize core file limit
+# -r
+
+-f 1.15

Added: branches/dir.xiph.org/docs/my.cnf
===================================================================
--- branches/dir.xiph.org/docs/my.cnf	                        (rev 0)
+++ branches/dir.xiph.org/docs/my.cnf	2012-07-29 18:35:14 UTC (rev 18481)
@@ -0,0 +1,148 @@
+#
+# The MySQL database server configuration file.
+#
+# You can copy this to one of:
+# - "/etc/mysql/my.cnf" to set global options,
+# - "~/.my.cnf" to set user-specific options.
+# 
+# One can use all long options that the program supports.
+# Run program with --help to get a list of available options and with
+# --print-defaults to see which it would actually understand and use.
+#
+# For explanations see
+# http://dev.mysql.com/doc/mysql/en/server-system-variables.html
+
+# This will be passed to all mysql clients
+# It has been reported that passwords should be enclosed with ticks/quotes
+# escpecially if they contain "#" chars...
+# Remember to edit /etc/mysql/debian.cnf when changing the socket location.
+[client]
+port		= 3306
+socket		= /var/run/mysqld/mysqld.sock
+
+# Here is entries for some specific programs
+# The following values assume you have at least 32M ram
+
+# This was formally known as [safe_mysqld]. Both versions are currently parsed.
+[mysqld_safe]
+socket		= /var/run/mysqld/mysqld.sock
+nice		= 0
+
+[mysqld]
+#
+# * Basic Settings
+#
+user		= mysql
+pid-file	= /var/run/mysqld/mysqld.pid
+socket		= /var/run/mysqld/mysqld.sock
+port		= 3306
+basedir		= /usr
+datadir		= /var/lib/mysql
+tmpdir		= /tmp
+language	= /usr/share/mysql/english
+skip-external-locking
+#
+# Instead of skip-networking the default is now to listen only on
+# localhost which is more compatible and is not less secure.
+bind-address		= 127.0.0.1
+#
+# * Fine Tuning
+#
+key_buffer		= 64M
+max_allowed_packet	= 2M
+thread_stack		= 128K
+thread_cache_size	= 10
+max_connections         = 100
+table_cache             = 64
+max_heap_table_size 	= 64M
+#thread_concurrency     = 10
+#sort_buffer_size	= 512K
+#net_buffer_length	= 8K
+#read_buffer_size	= 256K
+#read_rnd_buffer_size	= 512K
+#myisam_sort_buffer_size	= 8M
+#
+# * Query Cache Configuration
+#
+query_cache_limit       = 0 #1M
+query_cache_size        = 0 #16M
+query_cache_type	= 0
+#
+# * Logging and Replication
+#
+# Both location gets rotated by the cronjob.
+# Be aware that this log type is a performance killer.
+#log		= /var/log/mysql/mysql.log
+#
+# Error logging goes to syslog. This is a Debian improvement :)
+#
+# Here you can see queries with especially long duration
+log_slow_queries	= /var/log/mysql/mysql-slow.log
+long_query_time = 1
+#log-queries-not-using-indexes
+#
+# The following can be used as easy to replay backup logs or for replication.
+# note: if you are setting up a replication slave, see README.Debian about
+#       other settings you may need to change.
+#server-id		= 1
+#log_bin			= /var/log/mysql/mysql-bin.log
+# WARNING: Using expire_logs_days without bin_log crashes the server! See README.Debian!
+#expire_logs_days	= 1
+#max_binlog_size         = 100M
+#binlog_do_db		= include_database_name
+#binlog_ignore_db	= include_database_name
+#
+# * BerkeleyDB
+#
+# Using BerkeleyDB is now discouraged as its support will cease in 5.1.12.
+skip-bdb
+#
+# * InnoDB
+#
+# InnoDB is enabled by default with a 10MB datafile in /var/lib/mysql/.
+# Read the manual for more InnoDB related options. There are many!
+# You might want to disable InnoDB to shrink the mysqld process by circa 100MB.
+#skip-innodb
+innodb_flush_log_at_trx_commit = 0
+#
+# * Security Features
+#
+# Read the manual, too, if you want chroot!
+# chroot = /var/lib/mysql/
+#
+# For generating SSL certificates I recommend the OpenSSL GUI "tinyca".
+#
+# ssl-ca=/etc/mysql/cacert.pem
+# ssl-cert=/etc/mysql/server-cert.pem
+# ssl-key=/etc/mysql/server-key.pem
+
+
+
+[mysqldump]
+quick
+quote-names
+max_allowed_packet	= 16M
+
+[mysql]
+#no-auto-rehash	# faster start of mysql but no tab completition
+
+[isamchk]
+key_buffer		= 16M
+
+#
+# * NDB Cluster
+#
+# See /usr/share/doc/mysql-server-*/README.Debian for more information.
+#
+# The following configuration is read by the NDB Data Nodes (ndbd processes)
+# not from the NDB Management Nodes (ndb_mgmd processes).
+#
+# [MYSQL_CLUSTER]
+# ndb-connectstring=127.0.0.1
+
+
+#
+# * IMPORTANT: Additional settings that can override those from this file!
+#
+!includedir /etc/mysql/conf.d/
+

Added: branches/dir.xiph.org/docs/schema.sql
===================================================================
--- branches/dir.xiph.org/docs/schema.sql	                        (rev 0)
+++ branches/dir.xiph.org/docs/schema.sql	2012-07-29 18:35:14 UTC (rev 18481)
@@ -0,0 +1,156 @@
+-- MySQL dump 10.11
+--
+-- Host: localhost    Database: dir_xiph_org
+-- ------------------------------------------------------
+-- Server version	5.0.45-Debian_1ubuntu3.3-log
+
+/*!40101 SET @OLD_CHARACTER_SET_CLIENT=@@CHARACTER_SET_CLIENT */;
+/*!40101 SET @OLD_CHARACTER_SET_RESULTS=@@CHARACTER_SET_RESULTS */;
+/*!40101 SET @OLD_COLLATION_CONNECTION=@@COLLATION_CONNECTION */;
+/*!40101 SET NAMES utf8 */;
+/*!40103 SET @OLD_TIME_ZONE=@@TIME_ZONE */;
+/*!40103 SET TIME_ZONE='+00:00' */;
+/*!40014 SET @OLD_UNIQUE_CHECKS=@@UNIQUE_CHECKS, UNIQUE_CHECKS=0 */;
+/*!40014 SET @OLD_FOREIGN_KEY_CHECKS=@@FOREIGN_KEY_CHECKS, FOREIGN_KEY_CHECKS=0 */;
+/*!40101 SET @OLD_SQL_MODE=@@SQL_MODE, SQL_MODE='NO_AUTO_VALUE_ON_ZERO' */;
+/*!40111 SET @OLD_SQL_NOTES=@@SQL_NOTES, SQL_NOTES=0 */;
+
+--
+-- Table structure for table `media_type`
+--
+
+DROP TABLE IF EXISTS `media_type`;
+CREATE TABLE `media_type` (
+  `id` int(10) unsigned NOT NULL,
+  `media_type_name` varchar(255) collate utf8_unicode_ci NOT NULL,
+  `media_type_url` varchar(255) collate utf8_unicode_ci NOT NULL,
+  PRIMARY KEY  (`id`),
+  KEY `media_type_url` (`media_type_url`)
+) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
+
+--
+-- Table structure for table `mountpoint`
+--
+
+DROP TABLE IF EXISTS `mountpoint`;
+CREATE TABLE `mountpoint` (
+  `id` int(10) unsigned NOT NULL auto_increment,
+  `stream_name` varchar(255) collate utf8_unicode_ci NOT NULL,
+  `description` varchar(255) collate utf8_unicode_ci default NULL,
+  `url` varchar(255) collate utf8_unicode_ci default NULL,
+  `listeners` int(10) unsigned NOT NULL,
+  `max_listeners` int(10) unsigned default NULL,
+  `current_song` char(255) collate utf8_unicode_ci default NULL,
+  `media_type_id` int(10) unsigned default NULL,
+  `bitrate` varchar(25) collate utf8_unicode_ci default NULL,
+  `channels` tinyint(3) unsigned default NULL,
+  `samplerate` mediumint(8) unsigned default NULL,
+  `cluster_password` varchar(255) collate utf8_unicode_ci default NULL,
+  PRIMARY KEY  (`id`),
+  KEY `cluster_password` (`cluster_password`),
+  KEY `stream_name` (`stream_name`),
+  KEY `listeners` (`listeners`),
+  KEY `fk_media_type` (`media_type_id`,`listeners`)
+) ENGINE=InnoDB AUTO_INCREMENT=3829469 DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
+
+DELIMITER ;;
+/*!50003 SET SESSION SQL_MODE="" */;;
+/*!50003 CREATE */ /*!50017 DEFINER=`root`@`localhost` */ /*!50003 TRIGGER `cascade_listeners_on_delete_mountpoint` AFTER DELETE ON `mountpoint` FOR EACH ROW DELETE FROM mountpoint_data WHERE mountpoint_id = OLD.id */;;
+
+DELIMITER ;
+/*!50003 SET SESSION SQL_MODE=@OLD_SQL_MODE */;
+
+--
+-- Table structure for table `mountpoint_data`
+--
+
+DROP TABLE IF EXISTS `mountpoint_data`;
+CREATE TABLE `mountpoint_data` (
+  `mountpoint_id` int(10) unsigned NOT NULL,
+  `listeners` int(11) NOT NULL,
+  `current_song` char(255) default NULL,
+  PRIMARY KEY  (`mountpoint_id`),
+  KEY `listeners` (`listeners`)
+) ENGINE=MEMORY DEFAULT CHARSET=utf8;
+
+--
+-- Table structure for table `mountpoints_tags`
+--
+
+DROP TABLE IF EXISTS `mountpoints_tags`;
+CREATE TABLE `mountpoints_tags` (
+  `mountpoint_id` int(10) unsigned NOT NULL,
+  `tag_id` int(10) unsigned NOT NULL,
+  PRIMARY KEY  (`mountpoint_id`,`tag_id`)
+) ENGINE=MEMORY DEFAULT CHARSET=latin1;
+
+--
+-- Table structure for table `server`
+--
+
+DROP TABLE IF EXISTS `server`;
+CREATE TABLE `server` (
+  `id` int(10) unsigned NOT NULL auto_increment,
+  `mountpoint_id` int(10) unsigned NOT NULL,
+  `sid` char(36) character set ascii NOT NULL,
+  `listen_url` char(255) character set latin1 NOT NULL,
+  `listeners` int(10) unsigned NOT NULL,
+  `max_listeners` int(10) unsigned default NULL,
+  `current_song` char(255) default NULL,
+  `checked` tinyint(3) unsigned NOT NULL default '0',
+  `checked_at` timestamp NULL default NULL,
+  `last_touched_at` timestamp NOT NULL default CURRENT_TIMESTAMP on update CURRENT_TIMESTAMP,
+  `last_touched_from` int(10) unsigned NOT NULL,
+  PRIMARY KEY  (`id`),
+  UNIQUE KEY `listen_url` (`listen_url`),
+  KEY `sid` (`sid`),
+  KEY `mountpoint_id` (`mountpoint_id`)
+) ENGINE=MEMORY AUTO_INCREMENT=45458591 DEFAULT CHARSET=utf8;
+
+DELIMITER ;;
+/*!50003 SET SESSION SQL_MODE="" */;;
+/*!50003 CREATE */ /*!50017 DEFINER=`root`@`localhost` */ /*!50003 TRIGGER `cascade_listeners_on_insert` AFTER INSERT ON `server` FOR EACH ROW UPDATE `mountpoint` AS m SET m.`listeners` = m.`listeners` + NEW.`listeners`, m.`max_listeners` = m.`max_listeners` + NEW.`max_listeners` WHERE m.`id` = NEW.`mountpoint_id` */;;
+
+/*!50003 SET SESSION SQL_MODE="" */;;
+/*!50003 CREATE */ /*!50017 DEFINER=`root`@`localhost` */ /*!50003 TRIGGER `cascade_listeners_on_update` AFTER UPDATE ON `server` FOR EACH ROW UPDATE `mountpoint` AS m SET m.`listeners` = m.`listeners` - OLD.`listeners` + NEW.`listeners`, m.`max_listeners` = m.`max_listeners` - OLD.`max_listeners` + NEW.`max_listeners`, m.`current_song` = NEW.`current_song` WHERE m.`id` = NEW.`mountpoint_id` */;;
+
+/*!50003 SET SESSION SQL_MODE="" */;;
+/*!50003 CREATE */ /*!50017 DEFINER=`root`@`localhost` */ /*!50003 TRIGGER `cascade_listeners_on_delete` AFTER DELETE ON `server` FOR EACH ROW UPDATE `mountpoint` AS m SET m.`listeners` = m.`listeners` - OLD.`listeners`, m.`max_listeners` = m.`max_listeners` - OLD.`max_listeners` WHERE m.`id` = OLD.`mountpoint_id` */;;
+
+DELIMITER ;
+/*!50003 SET SESSION SQL_MODE=@OLD_SQL_MODE */;
+
+--
+-- Table structure for table `tag`
+--
+
+DROP TABLE IF EXISTS `tag`;
+CREATE TABLE `tag` (
+  `id` int(10) unsigned NOT NULL auto_increment,
+  `tag_name` varchar(20) collate utf8_unicode_ci default NULL,
+  PRIMARY KEY  (`id`),
+  UNIQUE KEY `tag_name` (`tag_name`)
+) ENGINE=MEMORY AUTO_INCREMENT=8339 DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
+
+--
+-- Table structure for table `tag_cloud`
+--
+
+DROP TABLE IF EXISTS `tag_cloud`;
+CREATE TABLE `tag_cloud` (
+  `tag_id` int(10) unsigned NOT NULL,
+  `tag_usage` int(11) NOT NULL,
+  PRIMARY KEY  (`tag_id`),
+  KEY `tag_usage` (`tag_usage`)
+) ENGINE=MEMORY DEFAULT CHARSET=latin1;
+/*!40103 SET TIME_ZONE=@OLD_TIME_ZONE */;
+
+/*!40101 SET SQL_MODE=@OLD_SQL_MODE */;
+/*!40014 SET FOREIGN_KEY_CHECKS=@OLD_FOREIGN_KEY_CHECKS */;
+/*!40014 SET UNIQUE_CHECKS=@OLD_UNIQUE_CHECKS */;
+/*!40101 SET CHARACTER_SET_CLIENT=@OLD_CHARACTER_SET_CLIENT */;
+/*!40101 SET CHARACTER_SET_RESULTS=@OLD_CHARACTER_SET_RESULTS */;
+/*!40101 SET COLLATION_CONNECTION=@OLD_COLLATION_CONNECTION */;
+/*!40111 SET SQL_NOTES=@OLD_SQL_NOTES */;
+
+-- Dump completed on 2012-07-29 18:29:25

Deleted: branches/dir.xiph.org/documentation.txt
===================================================================
--- branches/dir.xiph.org/documentation.txt	2012-07-29 18:27:53 UTC (rev 18480)
+++ branches/dir.xiph.org/documentation.txt	2012-07-29 18:35:14 UTC (rev 18481)
@@ -1,20 +0,0 @@
-inc:
- * class.db.php: MySQL connection + querying
- * class.izterator*.php: resultset iterator + factory (=> migrate to SPL?)
- * class.mc.php: Memcache connection + querying (probably useless)
- * class.mountpoint.php: a mountpoint (== stream), linking to 1+ server
- * class.server.php: an instance of a mountpoint on a particular Icecast server
- * class.sphinxApi.php: Sphinx connection + querying
- * class.tag.php: a genre tag
- * class.ypclient.php: test client class + load test code
- * inc.db.php: initializes the database connection
- * inc.mc.php: initializes the memcache connection
- * inc.templating.php: initializes the templating system (Smarty)
- * lib.apilog.php: API logging (not in use currently)
- * lib.dir.php: helper functions (directory-specific, fixme: not in a class)
- * lib.errors.php: error handling (mail)
- * lib.genfile.php: generated files (file cache of heavy queries)
- * lib.statslog.php: Stats logging (not in use currently)
- * lib.utils.php: helper functions (generic)
- * lib.uuidgend.php: generation of UUIDs (for SIDs)
- * prepend.php: loads all the other files (even if they're not really needed :/)



More information about the commits mailing list