WSOD

iteego - July 7, 2009 - 04:32
Project:Taxonews
Version:6.x-1.x-dev
Component:Code
Category:support request
Priority:normal
Assigned:Unassigned
Status:by design
Description

Whenever this module is enabled and I click the blocks link i get a white screen. There is no text there usually to indicate what the error is. Once i disable the module. I can access my blocks interface fine. Kevin

#1

VM - July 7, 2009 - 04:36

WSOD is an apache error, have you checked yoru apache logs?

are you exhausting memory? (usually what a WSOD means in drupal)

#2

iteego - July 7, 2009 - 04:56

actually, there was a memory notice the first time it happened. however, i have a 256M memory limit. Is that not enough? i haven't had any memory problems with any other modules. Thanks. Kevin

#3

VM - July 7, 2009 - 05:19

depends on what your apache logs say if anything.

I'd run a phpinfo() and ensure that 256M is actually set

#4

fgm - July 7, 2009 - 07:23
Category:bug report» support request

FWIW the apache log is usually in /var/log/apache2/error_log by default.

Something to check is the number of terms in the vocabulary you chose to generate the blocks and the number of nodes for each of these terms. Can you confirm an order of magnitude for these numbers ? Remember that taxonews creates one block for each term in the vocabulary, so if you have large quantities of tagged content, you may run into memory exhaustion when displaying the blocks page, because there are just too many blocks for your configuration.

Also, you mention 6.x.dev, but there is a more recent 6.1.0 version, which is the one you should be using. Can you reproduce the problem on that version ?

Since the problem does not appear on our test system, setting to "support request" for now.

#5

iteego - July 8, 2009 - 03:48

hello,

I have many terms. I'm not sure how many but if it creates a block for every single term I can see why the memory would be shot. I think you should have the option in the setup to choose which terms to create blocks for or even better yet restrict it to vocabulary blocks only that would would show items tagged within a certain vocabulary regardless of the specific term. My guess is that most sites have a substantial numbers of terms and this will be problematic for many without some way of filtering the terms. Cheers, Kevin

#6

fgm - July 8, 2009 - 05:34
Status:active» by design

As described in the module documentation, Taxonews creates a block for each term in the vocabulary you designate in its settings as being the one to use: it is therefore your responsibility as the site admin to organize your data so that this selection makes actual sense.

Showing blocks by vocabulary instead of by term, as you suggest, is something you do very easily without the need for a specific module, for instance using a View like the one below and is not the purpose of this module, so I'm marking "by design". You can use the View below by importing it in Views, to achieve the result you suggest:

<?php
$view
= new view;
$view->name = 'vtaxo';
$view->description = '';
$view->tag = '';
$view->view_php = '';
$view->base_table = 'node';
$view->is_cacheable = FALSE;
$view->api_version = 2;
$view->disabled = FALSE; /* Edit this to true to make a default view disabled initially */
$handler = $view->new_display('default', 'Defaults', 'default');
$handler->override_option('fields', array(
 
'title' => array(
   
'label' => 'Title',
   
'alter' => array(
     
'alter_text' => 0,
     
'text' => '',
     
'make_link' => 0,
     
'path' => '',
     
'link_class' => '',
     
'alt' => '',
     
'prefix' => '',
     
'suffix' => '',
     
'help' => '',
     
'trim' => 0,
     
'max_length' => '',
     
'word_boundary' => 1,
     
'ellipsis' => 1,
     
'strip_tags' => 0,
     
'html' => 0,
    ),
   
'link_to_node' => 1,
   
'exclude' => 0,
   
'id' => 'title',
   
'table' => 'node',
   
'field' => 'title',
   
'relationship' => 'none',
  ),
));
$handler->override_option('filters', array(
 
'vid' => array(
   
'operator' => 'in',
   
'value' => array(
     
'1' => '1',
    ),
   
'group' => '0',
   
'exposed' => FALSE,
   
'expose' => array(
     
'operator' => FALSE,
     
'label' => '',
    ),
   
'id' => 'vid',
   
'table' => 'term_data',
   
'field' => 'vid',
   
'relationship' => 'none',
  ),
));
$handler->override_option('access', array(
 
'type' => 'none',
));
$handler->override_option('cache', array(
 
'type' => 'time',
 
'results_lifespan' => '3600',
 
'output_lifespan' => '3600',
));
$handler->override_option('distinct', 1);
$handler = $view->new_display('block', 'Block', 'block_1');
$handler->override_option('block_description', '');
$handler->override_option('block_caching', '8');
?>

 
 

Drupal is a registered trademark of Dries Buytaert.