summaryrefslogtreecommitdiff
path: root/lib/default.php
AgeCommit message (Collapse)Author
2010-03-29Tweak to Eugene Crosser's patch to make transactions and acks configurable; ↵Brion Vibber
disabling them gets basic message delivery working under MorbidQ, and may help with RabbitMQ etc. I swapped the settings from negative to positive ($config['queue']['stomp_transactions'] = false rather than $config['queue']['stomp_no_transactions'] = true), gave them defaults (both on for best ActiveMQ experience), and added notes to the README about configuring them.
2010-03-29Add $config['db']['annotate_queries'] option to include caller ID comments ↵Brion Vibber
into queries. Comment can then be seen in process list, slow query logs on the server, aiding in tracking down unexpected slow queries. SELECT /* queuedaemon.php Ostatus_profile->processPost */ * FROM notice WHERE ( notice.uri = 'http://stormcloud.local/mublog2/notice/479' ) INSERT /* POST Notice::saveNew */ INTO notice (profile_id , content ....
2010-03-09Merge branch 'testing' into 0.9.xBrion Vibber
2010-03-08make API realm configurableEvan Prodromou
2010-03-04Merge branch 'testing' into 0.9.xBrion Vibber
Conflicts: db/08to09.sql
2010-03-04OStatus enabled by defaultEvan Prodromou
2010-03-04Merge commit 'origin/testing' into 0.9.xBrion Vibber
Conflicts: lib/action.php lib/adminpanelaction.php
2010-03-03Site-wide notice text admin panelZach Copley
2010-03-03Language setting fixes:Brion Vibber
- switch 'en_US' to 'en', fixes the "admin panel switches to Arabic" bug - tweak setting descriptions to clarify that most of the time we'll be using browser language - add a backend switch to disable language detection (should this be exposed to ui?)
2010-03-02Merge branch 'testing' of git@gitorious.org:statusnet/mainline into 0.9.xBrion Vibber
2010-03-01Remove un-needed config variable for enabling/disabling Twitter integrationZach Copley
2010-03-01Initial Twitter bridge admin panelZach Copley
2010-02-26Merge branch 'testing' into 0.9.xBrion Vibber
2010-02-25remove linkback from default pluginsEvan Prodromou
2010-02-21Pulling PubSubHubbub plugin out of default list for 0.9.x; not compatible ↵Brion Vibber
with recent changes to Atom feed generation for OStatus.
2010-02-21Merge branch 'testing' of gitorious.org:statusnet/mainline into 0.9.xBrion Vibber
2010-02-20Add a library to mint tag URIsEvan Prodromou
We've been making pretty crummy tag: URIs for a while. We should continue to favor HTTP URIs, since it's nice to be able to discover things about an object you've shared the ID of. Where that's not possible, this makes nicer tag URIs.
2010-02-17Merge branch 'master' into testingBrion Vibber
2010-02-17Queues: redid the breakout control model so we can start up and subscribe to ↵Brion Vibber
queues without running through the complete site list, which is ok at 1k sites but too slow at 10k. All breakout queues that we're going to need to listen to now need to be explicitly listed in $config['queue']['breakout']. Until XMPP is moved to component model, this setting will let the individual processes work with their own queues: $config['queue']['breakout'][] = 'xmpp/xmppout/' . $config['site']['nickname'];
2010-02-16Merge branch 'testing' into 0.9.xBrion Vibber
Conflicts: lib/iomaster.php
2010-02-16Merge branch 'master' into testingBrion Vibber
Conflicts: lib/stompqueuemanager.php
2010-02-16Stomp queue restructuring for mass scalability:Brion Vibber
- Multiplexing queues into groups and for multiple sites. - Sharing vs breakout configurable per site and per queue via $config['queue']['breakout'] - Detect how many times a message is redelivered, discard if it's killed too many daemons - count configurable with $config['queue']['max_retries'] - can dump the items to files in $config['queue']['dead_letter_dir'] Queue daemon memory & resource leak fixes: - avoid unnecessary reconnections to memcached server (switch persistent connections back in on second initialization, assuming it's child process) - monkey-patch for leaky .ini loads in DB_DataObject::databaseStructure() - was leaking 200k per active switch - applied leak fixes to Status_network as well, using intermediate base Safe_DataObject for both it and Memcache_DataObject Misc queue fixes: - correct handling of child processes exiting due to signal termination instead of regular exit - shutdown instead of infinite respawn loop if we're already past the soft memory limit at startup - Added --all option for xmppdaemon... still opens one xmpp connection per site that has xmpp active Cache updates: - add Cache::increment() method with native support for memcached atomic increment
2010-02-12Merge branch 'testing' of gitorious.org:statusnet/mainline into 0.9.xBrion Vibber
2010-02-11let files go to SSL dir tooEvan Prodromou
2010-02-11let backgrounds be put under SSLEvan Prodromou
2010-02-11put Javascript files under SSLEvan Prodromou
2010-02-11let avatars be served over SSLEvan Prodromou
2010-02-11default theme ssl to nullEvan Prodromou
2010-02-11Themes can be served from an SSL serverEvan Prodromou
2010-02-09Configurable delay between queuedaemon.php spawns/respawns to help stagger ↵Brion Vibber
out startups and subscriptions. Defaults to 1 second. $config['queue']['spawndelay'] = 1;
2010-02-09Configurable delay between queuedaemon.php spawns/respawns to help stagger ↵Brion Vibber
out startups and subscriptions. Defaults to 1 second. $config['queue']['spawndelay'] = 1;
2010-02-04Merge branch 'testing' of gitorious.org:statusnet/mainline into 0.9.xBrion Vibber
2010-02-04Add time-based cutoffs for public tag cloud, favorited lists to speed up ↵Brion Vibber
those queries. Defaulting to only looking at last 90 days of activity, can be adjusted up or down. $config['tag']['cutoff'] = 86400 * 90; $config['popular']['cutoff'] = 86400 * 90; Per-user and per-group tag clouds do not use the cutoff (and it doesn't help with indexing on them).
2010-01-31Merge branch 'testing' into 0.9.xEvan Prodromou
Conflicts: actions/apioauthauthorize.php
2010-01-31Add a robots.txt URL to the site rootEvan Prodromou
Adds a robots.txt file to the site root. Defaults defined by 'robotstxt' section of config. New events StartRobotsTxt and EndRobotsTxt to let plugins add information. Probably not useful if path is not /, but won't hurt anything, either.
2010-01-28Move sessions settings to its own panelZach Copley
2010-01-28Move sessions settings to its own panelZach Copley
2010-01-28Manual failover for stomp queues.Brion Vibber
If an array of multiple servers is put in $config['queue']['stomp_server'], enqueues will pick a random server to send to (failing over automatically if any are down). Queue handling daemons connect all servers so they get events no matter where they were delivered. In case of disconnection, daemons should now handle it gracefully and attempt to reconnect every 60 seconds or so, automatically resubscribing to all queues once it's back up. Can put to 'native' failover for reads as well by disabling $config['stomp']['manual_failover'] = false; but this is untested and may explode in addition to requiring that your ActiveMQ cluster actually be set up to handle its own data distribution. Additionally, can choose which queues to mark as persistent by setting $config['stomp']['persistent'] to an array of queue names.
2010-01-28Can now set $config['queue']['stomp_persistent'] = false; to explicitly ↵Brion Vibber
disable persistence when we queue items
2010-01-27Adds an emergency switch so we can run inbox distribution at save time ↵Brion Vibber
(bypassing 'distrib' queue) Set $config['queue']['inboxes'] = false to do so
2010-01-27Merge branch 'testing' into -1.9.xZach Copley
* testing: (130 commits) HTTP auth provided is evaluated even if it's not required Rename rc3to09.sql to rc3torc4.sql to avoid confusion if we add a last-minute change after this! Add new oauth tables and modifications to 'consumer' table for rc4 Centred leaderboard ad camelcase the uap param names move leaderboard to after the header Moved rectangle ad into aside and leaderboard to the right in header. Aligning wide skyscraper to the right instead of left CSS ids and classes fixed in UAPPlugin wrong height for rectangle in BlankAd Add the moved BlankAdPlugin make BlankAd dir and change to use a 1x1 image move BlankAdPlugin to its own dir Add BlankAdPlugin to test ad layout in different themes make uapplugin an abstract class move UAP plugin to core Lowercased switch cases in UAP Plugin Plugin for Universal Ad Package. Outputs four most widely used ad types. Add persistent:true property to Stomp messages so ActiveMQ doesn't decide to discard them even though persistence is enabled on the broker. :) (Thanks Aric!) quick fix: use common_path() on realtime update JS so it works with the new JS path code (will pull from main server for now) ... Conflicts: actions/apioauthaccesstoken.php actions/apioauthauthorize.php actions/apioauthrequesttoken.php actions/editapplication.php actions/newapplication.php lib/apiauth.php lib/queuemanager.php lib/router.php
2010-01-27Optionally set a separate Javascript server and pathEvan Prodromou
We have about 10-12 JavaScript pages per Web page. They usually are based on the same server as the Web pages, but since they're static files, it makes sense to offload them to a lite server that handles static files well. This commit lets you set a separate Javascript server and path for the default Javascript code in StatusNet. Squashed commit of the following: commit 139d1622fdafe5ad00c820224416d9021efc3234 Author: Evan Prodromou <evan@status.net> Date: Wed Jan 27 11:30:24 2010 -0500 modules that call htmloutputter::script() don't prescribe js/ path commit c6ca3174af73efed55eaed5ff1e2a3bdc77d2d87 Author: Evan Prodromou <evan@status.net> Date: Wed Jan 27 11:28:07 2010 -0500 configurable server and path for javascript files
2010-01-26New access admin panel for site registration settingsZach Copley
2010-01-26Control channel for queue daemons to request graceful shutdown, restart, or ↵Brion Vibber
update to listen to a newly added or reconfigured site. queuectl.php --update -s<site> queuectl.php --stop queuectl.php --restart Default control channel is /topic/statusnet-control. For external utilities to send a site update ping direct to the queue server, connect via Stomp and send a message formatted thus: update:<nickname> (Nickname here, *not* server hostname! The rest of the queues will be updated to use nicknames later.) Note that all currently-connected queue daemons will get these notifications, including both queuedaemon.php and xmppdaemon.php. (XMPP will ignore site update requests for sites that it's not handling.) Limitations: * only implemented for stomp queue manager so far * --update may not yet handle a changed server name properly * --restart won't reload PHP code files that were already loaded at startup. Still need to stop and restart the daemons from 'outside' when updating code base.
2010-01-26Single-user modeEvan Prodromou
New configuration options to define a single-user mode. This hides most of the "community" pages, like the public timeline and groups. The main user's timeline becomes the main page, and most other URLs are changed. Switching back and forth between 1-user and multi-user mode is probably hazardous. Squashed commit of the following: commit d814aa5c92d14a27a12baba7893f3f8bf63f1d08 Author: Evan Prodromou <evan@status.net> Date: Tue Jan 26 00:17:27 2010 -0500 don't show inbox and outbox in single-user mode commit 47f19b9523a7015d4c6e460b73ea32c839e00aa1 Author: Evan Prodromou <evan@status.net> Date: Tue Jan 26 00:15:22 2010 -0500 show correct URL for logo in single-user mode commit 552010cffc33eadbc512ec5a67619dbc2015239a Author: Evan Prodromou <evan@status.net> Date: Tue Jan 26 00:15:06 2010 -0500 make singleuser its own config section commit 786ab260a3ca172e57b555c75ca10946d8f258a1 Author: Evan Prodromou <evan@status.net> Date: Tue Jan 26 00:05:19 2010 -0500 make single-user mode work commit 5b21d7309b3a8dd5a4e0f29aea76f7897f1818b1 Author: Evan Prodromou <evan@status.net> Date: Mon Jan 25 23:45:55 2010 -0500 add single-user mode
2010-01-25Merge branch 'master' into 0.9.xEvan Prodromou
2010-01-24Workflow for registering new OAuth apps pretty much done.Zach Copley
2010-01-24defaults for nickname and wildcardEvan Prodromou
2010-01-24defaults for nickname and wildcardEvan Prodromou
2010-01-22XMPP queued output & initial retooling of DB queue manager to support ↵Brion Vibber
non-Notice objects. Queue handlers for XMPP individual & firehose output now send their XML stanzas to another output queue instead of connecting directly to the chat server. This lets us have as many general processing threads as we need, while all actual XMPP input and output go through a single daemon with a single connection open. This avoids problems with multiple connected resources: * multiple windows shown in some chat clients (psi, gajim, kopete) * extra load on server * incoming message delivery forwarding issues Database changes: * queue_item drops 'notice_id' in favor of a 'frame' blob. This is based on Craig Andrews' work branch to generalize queues to take any object, but conservatively leaving out the serialization for now. Table updater (preserves any existing queued items) in db/rc3to09.sql Code changes to watch out for: * Queue handlers should now define a handle() method instead of handle_notice() * QueueDaemon and XmppDaemon now share common i/o (IoMaster) and respawning thread management (RespawningDaemon) infrastructure. * The polling XmppConfirmManager has been dropped, as the message is queued directly when saving IM settings. * Enable $config['queue']['debug_memory'] to output current memory usage at each run through the event loop to watch for memory leaks To do: * Adapt XMPP i/o to component connection mode for multi-site support. * XMPP input can also be broken out to a queue, which would allow the actual notice save etc to be handled by general queue threads. * Make sure there are no problems with simply pushing serialized Notice objects to queues. * Find a way to improve interactive performance of the database-backed queue handler; polling is pretty painful to XMPP. * Possibly redo the way QueueHandlers are injected into a QueueManager. The grouping used to split out the XMPP output queue is a bit awkward. Conflicts: scripts/xmppdaemon.php