Events Made Easy › Forums › Bug fixed or feature request implemented › Past and Future Calendar Range Limits
- This topic has 4 replies, 2 voices, and was last updated 13 years, 9 months ago by Franky.
-
AuthorPosts
-
Sun 13 Feb 2011 at 22:38 #42537AnonymousInactive
I have EME installed at an off-line test site, at some new off-line websites I am developing, and in a directory at a very active live website. Thursday afternoon I linked from that live website to the WordPress installation in its directory.
Throughout that night and most of Friday I received repeated alerts that the Apache web server serving the live installation had crashed and been automatically restarted by the operating system. When I had time to troubleshoot the problem I found the Apache error.log contained many cycles like this:
[Fri Feb 11 13:34:36 2011] [notice] Apache/2.2.17 (Win32) configured -- resuming normal operations
[Fri Feb 11 13:34:36 2011] [notice] Server built: Oct 18 2010 01:58:12
[Fri Feb 11 13:34:36 2011] [notice] Parent: Created child process 2320
[Fri Feb 11 13:34:37 2011] [notice] Digest: generating secret for digest authentication ...
[Fri Feb 11 13:34:37 2011] [notice] Digest: done
[Fri Feb 11 13:34:37 2011] [notice] Child 2320: Child process is running
[Fri Feb 11 13:34:37 2011] [notice] Child 2320: Acquired the start mutex.
[Fri Feb 11 13:34:37 2011] [notice] Child 2320: Starting 500 worker threads.
[Fri Feb 11 13:34:37 2011] [notice] Child 2320: Starting thread to listen on port 80.
[Fri Feb 11 19:03:07 2011] [warn] Server ran out of threads to serve requests. Consider raising the ThreadsPerChild setting
[Fri Feb 11 19:08:25 2011] [notice] Parent: Received shutdown signal -- Shutting down the server.
[Fri Feb 11 19:08:25 2011] [notice] Child 2320: Exit event signaled. Child process is ending.
[Fri Feb 11 19:08:26 2011] [notice] Child 2320: Released the start mutex
[Fri Feb 11 19:08:40 2011] [notice] Child 2320: All worker threads have exited.
[Fri Feb 11 19:08:45 2011] [notice] Parent: Child process exited successfully.
[Fri Feb 11 19:09:56 2011] [notice] Apache/2.2.17 (Win32) configured -- resuming normal operationsThe default Apache ThreadsPerChild setting is 50. However, that server is configured to run with 500 worker threads because the site is active enough that 200 or so are sometimes needed during peak activity periods and Apache is able to use that many running under Windows with lots of memory.
If the server had crashed and restarted only a time or two I would have thought the website was just abnormally busy for some reason, but it was happening every few hours. A look at the server access.log immediately showed the problem. Search bots were going to EME calendars and following thousands of past and future links in rapid succession until Apache ran out of either worker threads or memory and crashed. One search bot created more than 100MB of access.log entries following EME calendar links before the server crashed. I have had to temporarily disable WordPress at that site until the problem is fixed.
There needs to be a reasonable limit on the number of past and future months that can be accessed by means of calendar navigation links (maybe 12, 24 or selectable in the settings?). A nice additional feature would be automatic deletion or export of event data beyond the past calendar time limit so SQL databases will not continue to grow forever to monster sizes.
Sun 13 Feb 2011 at 22:56 #46784FrankyKeymasterHmmm … I see the problem here. But while I understand the issue, I can’t agree with the solution: sometimes people will want to “look ahead” years in the future (for example birthdays or so), past events are another thing.
The best thing to do would be to stop search bots to follow links to past/future events.
But while I think that’s the best solution, it’s very difficult to implement: the only place would be the robots.txt file, but manipulating this from within a php thing (like wordpress) doesn’t seem right to me … so I must agree on your solution here: stop access to future/past events after x months.
So: not a bug, but a feature request 🙂
Sun 13 Feb 2011 at 23:36 #46785AnonymousInactiveThis seems like a bug to me, because EME as currently designed will cause any web server with public internet access to repeatedly crash. Current users may not know that is happening, because most web servers are configured to automatically restart, but that isn’t a reasonable mode of normal operation.
Most bots ignore robots.txt restrictions. Major search engine bots honor them, but there are many thousands of bots that ignore them and there is no practical way to block them all other than to not give them links to follow.
Providing past and future limit settings on the Event Manager Options page would accommodate users wanting to have calendars extend long into the past or future while making it practical to use EME on the public internet.
Sun 13 Feb 2011 at 23:55 #46786AnonymousInactiveAnother solution would be to have EME navigation links skip behind or ahead to the next month, if any, with data and to stop providing links when the data runs out. That might be confusing to users expecting next months instead of months years in the past or future, but would avoid the need for hard time limits.
Mon 14 Feb 2011 at 21:21 #46787FrankyKeymasterThis has been implemented in trunk: no more paging after the period if no events exist that are older/newer.
-
AuthorPosts
- The forum ‘Bug fixed or feature request implemented’ is closed to new topics and replies.