summaryrefslogtreecommitdiff
path: root/plugins
AgeCommit message (Collapse)Author
2010-01-12Major refactoring of queue handlers to support running multiple sites in one ↵Brion Vibber
daemon. Key changes: * Initialization code moved from common.php to StatusNet class; can now switch configurations during runtime. * As a consequence, configuration files must now be idempotent... Be careful with constant, function or class definitions. * Control structure for daemons/QueueManager/QueueHandler has been refactored; the run loop is now managed by IoMaster run via scripts/queuedaemon.php IoManager subclasses are woken to handle socket input or polling, and may cover multiple sites. * Plugins can implement notice queue handlers more easily by registering a QueueHandler class; no more need to add a daemon. The new QueueDaemon runs from scripts/queuedaemon.php: * This replaces most of the old *handler.php scripts; they've been refactored to the bare handler classes. * Spawns multiple child processes to spread load; defaults to CPU count on Linux and Mac OS X systems, or override with --threads=N * When multithreaded, child processes are automatically respawned on failure. * Threads gracefully shut down and restart when passing a soft memory limit (defaults to 90% of memory_limit), limiting damage from memory leaks. * Support for UDP-based monitoring: http://www.gitorious.org/snqmon Rough control flow diagram: QueueDaemon -> IoMaster -> IoManager QueueManager [listen or poll] -> QueueHandler XmppManager [ping & keepalive] XmppConfirmManager [poll updates] Todo: * Respawning features not currently available running single-threaded. * When running single-site, configuration changes aren't picked up. * New sites or config changes affecting queue subscriptions are not yet handled without a daemon restart. * SNMP monitoring output to integrate with general tools (nagios, ganglia) * Convert XMPP confirmation message sends to use stomp queue instead of polling * Convert xmppdaemon.php to IoManager? * Convert Twitter status, friends import polling daemons to IoManager * Clean up some error reporting and failure modes * May need to adjust queue priorities for best perf in backlog/flood cases Detailed code history available in my daemon-work branch: http://www.gitorious.org/~brion/statusnet/brion-fixes/commits/daemon-work
2010-01-12Actually skip the pingback if XML-RPC extension is missing, instead of ↵Brion Vibber
considering it then trying anyway and dying of a fatal error. :)
2010-01-11dos -> unix line endings on CasAuthentication's CAS libraryBrion Vibber
2010-01-11Apparently, I can't spell my family name.Sarven Capadisli
2010-01-11Merge branch 'sessionidparam' into 0.9.xEvan Prodromou
Conflicts: lib/command.php
2010-01-11inject session before redirect for openid finish loginEvan Prodromou
2010-01-09i18n in the imap pluginCraig Andrews
2010-01-09Add version information to a bunch of pluginsCraig Andrews
2010-01-08Add an IMAP daemon so StatusNet can process incoming user posts via ↵Craig Andrews
catch-all mailbox (in addition to the pre-existing script alias method)
2010-01-08persistent connection flag, default false on cliEvan Prodromou
2010-01-08Updated RealtimePlugin to use core json2.jsSarven Capadisli
2010-01-08Updated plugin info for PoweredByStatusNetSarven Capadisli
2010-01-08Mapstraction PluginVersionEvan Prodromou
2010-01-08PluginVersion for WikiHashtagsEvan Prodromou
2010-01-08Merge branch '0.9.x' of git@gitorious.org:statusnet/mainline into 0.9.xEvan Prodromou
2010-01-08add versions for url-shortener pluginsEvan Prodromou
2010-01-08Add version info for Facebook, TwitterBridge and RSSCloud pluginsZach Copley
2010-01-07add version information to GeoURLEvan Prodromou
2010-01-07add version information to LinkbackEvan Prodromou
2010-01-07add version information to GoogleAnalyticsEvan Prodromou
2010-01-07add version information to MemcachePluginEvan Prodromou
2010-01-07add version information to PiwikAnalyticsPluginEvan Prodromou
2010-01-07add version info to the Template pluginEvan Prodromou
2010-01-07add version info to OpenID pluginEvan Prodromou
2010-01-07Add version info to the CacheLog pluginEvan Prodromou
2010-01-07add version info to SamplePluginEvan Prodromou
2010-01-07add version information to Geonames pluginEvan Prodromou
2010-01-06Merge branch '0.9.x' of git@gitorious.org:statusnet/mainline into 0.9.xEvan Prodromou
2010-01-06pass through keys() as keyTypes() for UserFlagEvan Prodromou
2010-01-06...and drop the unnecessary &reference from child class pkeyGet() overrides.Brion Vibber
2010-01-06The structure return by parse_url is an associative array, not an object.Craig Andrews
2010-01-06Remove erroneous call to parent::onInitializePlugin()Craig Andrews
2010-01-06Fix for broken profile flag admin UI: delete stray flag entries when users ↵Brion Vibber
are deleted so broken entries don't litter the lookups. * added ProfileDeleteRelated event to match UserDeleteRelated, to allow plugins to add extra related tables on profile deletion * UserFlagPlugin: deleting flags when target profile is deleted * UserFlagPlugin: deleting flags when flagging user is deleted * UserFlagPlugin: fix for autoloader -- class names are case-insensitive. We may get lowercase class names coming in at times, such as when creating DB objects programatically from a table name. Note that any already-existing bogus entries need to be removed from the database: select * from user_flag_profile where (select id from profile where id=profile_id) is null; select * from user_flag_profile where (select id from user where id=user_id) is null;
2010-01-06Removed unnecessary internal styleSarven Capadisli
2010-01-06Some better log msgsZach Copley
2010-01-05Fix subscription path in link elementZach Copley
2010-01-05Some phpcs cleanupZach Copley
2010-01-05Comment out the LoggingAggregator businessZach Copley
2010-01-05Reject subscription requests for handlers that don't support http-postZach Copley
2010-01-05Added a bunch of function commment blocksZach Copley
2010-01-05Added intial READMEZach Copley
2010-01-05Add an RSSCloud queue handler daemonZach Copley
2010-01-05Notifier works, and bad subscriptions are deleted properly now.Zach Copley
2010-01-05Plugin now checks notify handlers before registering subscriptionsZach Copley
2010-01-05Better .ini info for RSSCloud subscriptionZach Copley
2010-01-05Make dummy aggregator handle RSSCloud challenge/response with domain parameterZach Copley
2010-01-05Set modified column correctly.Zach Copley
2010-01-05Fixed DB_DataObject to return the right keys info for a compoundZach Copley
key & fix ini output
2010-01-05Add a table and DB_DataObject class for storing cloud subscriptionsZach Copley
2010-01-05Queue notices for rssCloudZach Copley