ProsePoint does not support table prefixes

Bug #288919 reported by saggers
4
Affects Status Importance Assigned to Milestone
ProsePoint
In Progress
High
bengtan

Bug Description

When I completed the installation without teh sample data. I received teh following message:

user warning: Unknown column 'node.nid' in 'field list' query: SELECT node.nid, node.vid FROM ladat_node LEFT JOIN ladat_node_revisions ON node.vid = node_revisions.vid WHERE node.type = 'channel' && node.status = 1 in C:\wamp\www\ladat\profiles\prosepoint\modules\prosepoint\prosepoint_channel\pp_ch.module on line 802.

I have not yet used teh site. I will do so now.

When I installed with the sample data, teh error message was much longer and teh site does not work properly. I gave up on it.

Thank you.

Revision history for this message
saggers (edward-sagar) wrote :

Using teh site, receive the same error message when I go into the channels manager and the editions manager. This seems to prevent the addition of further channels and editions (anyway I do not see how to add them on that page)

Revision history for this message
bengtan (bengtan) wrote :

Hi,

Thanks for your interest in ProsePoint.

Unfortunately, that query on line 802 has a bug in it. It doesn't support table prefixes (like 'ladat'). I have a suspicion there are other lines with the same problem.

It also means your database is possibly storing incorrect data.

At this point, you probably should reinstall and start again, as your database is suspect. You can either reinstall without a database prefix, or you can wait for the next ProsePoint version. (Or if you are familiar with patch files, I can supply a patch file with fixes). Either way, I recommend you reinstall.

On the second point, you create channels and editions on this page /?q=node/add, not from the Manager pages, although we'll add a link on the Manager pages for the next ProsePoint version.

Changed in prosepoint:
assignee: nobody → bengtan
status: New → Confirmed
bengtan (bengtan)
Changed in prosepoint:
importance: Undecided → High
Revision history for this message
saggers (edward-sagar) wrote : RE: [Bug 288919] Re: installation completion error message

Thank you for responding. I know something about patch files although I have never used one with Drupal. If you give me instructions I should be able to do it.

-----Original Message-----
From: <email address hidden> [mailto:<email address hidden>] On Behalf Of bengtan
Sent: 25 October 2008 01:34
To: <email address hidden>
Subject: [Bug 288919] Re: installation completion error message

Hi,

Thanks for your interest in ProsePoint.

Unfortunately, that query on line 802 has a bug in it. It doesn't
support table prefixes (like 'ladat'). I have a suspicion there are
other lines with the same problem.

It also means your database is possibly storing incorrect data.

At this point, you probably should reinstall and start again, as your
database is suspect. You can either reinstall without a database prefix,
or you can wait for the next ProsePoint version. (Or if you are familiar
with patch files, I can supply a patch file with fixes). Either way, I
recommend you reinstall.

On the second point, you create channels and editions on this page
/?q=node/add, not from the Manager pages, although we'll add a link on
the Manager pages for the next ProsePoint version.

** Changed in: prosepoint
     Assignee: (unassigned) => bengtan (bengtan)
       Status: New => Confirmed

--
installation completion error message
https://bugs.launchpad.net/bugs/288919
You received this bug notification because you are a direct subscriber
of the bug.

Status in ProsePoint, A newspaper and magazine content management system: Confirmed

Bug description:
When I completed the installation without teh sample data. I received teh following message:

user warning: Unknown column 'node.nid' in 'field list' query: SELECT node.nid, node.vid FROM ladat_node LEFT JOIN ladat_node_revisions ON node.vid = node_revisions.vid WHERE node.type = 'channel' && node.status = 1 in C:\wamp\www\ladat\profiles\prosepoint\modules\prosepoint\prosepoint_channel\pp_ch.module on line 802.

I have not yet used teh site. I will do so now.

When I installed with the sample data, teh error message was much longer and teh site does not work properly. I gave up on it.

Thank you.

Revision history for this message
bengtan (bengtan) wrote : Re: installation completion error message

Turns out the problem isn't as prevalent as I thought it might be. Line 802 is the only line that needs fixing for this type of error. So, if you feel up to hand patching some code, here are some instructions.

For the file C:\wamp\www\ladat\profiles\prosepoint\modules\prosepoint\prosepoint_channel\pp_ch.module, Line 802 says:

  $query_result = db_query("SELECT node.nid, node.vid FROM {node} LEFT JOIN {node_revisions} ON node.vid = node_revisions.vid WHERE node.type = '%s' && node.status = 1", 'channel');

Change that to

  $query_result = db_query("SELECT node.nid, node.vid FROM {node} node LEFT JOIN {node_revisions} node_revisions ON node.vid = node_revisions.vid WHERE node.type = '%s' && node.status = 1", 'channel');

When you do this, don't try typing in this code. Just copy and paste the entire line (and it is a single line even though the browser will line wrap it).

After you've done this, please visit either the Editions Manager or the Channels Manager to refresh some data.

If you don't want to hand patch code, you can wait for a couple of days when a bugfix release of ProsePoint will be made.

Oh, also, you don't have to reinstall the database. This source code fix (and the visit to the Channels or Edition Manager) should be sufficient.

Let me know how you go.

Revision history for this message
saggers (edward-sagar) wrote : RE: [Bug 288919] Re: installation completion error message

Thanks for this. I have changed the file, although I scrapped the original site and reinstalled prosepoint without a prefix. It now works fine. Should I use the altered pp_ch.module if I install on a live site? Or should I wait before using prosepoint on a live site?

Another question if I may. I have altered the css files in the tma directory and they are reflected using tma2. I am concerned that when I upgrade the installation, this will wipe out the changes I have made. Should I copy the tma and tma2 themes to sites/all/themes and make the changes there?

Edward

-----Original Message-----
From: <email address hidden> [mailto:<email address hidden>] On Behalf Of bengtan
Sent: 26 October 2008 06:26
To: <email address hidden>
Subject: [Bug 288919] Re: installation completion error message

Turns out the problem isn't as prevalent as I thought it might be. Line
802 is the only line that needs fixing for this type of error. So, if
you feel up to hand patching some code, here are some instructions.

For the file
C:\wamp\www\ladat\profiles\prosepoint\modules\prosepoint\prosepoint_channel\pp_ch.module,
Line 802 says:

  $query_result = db_query("SELECT node.nid, node.vid FROM {node} LEFT
JOIN {node_revisions} ON node.vid = node_revisions.vid WHERE node.type =
'%s' && node.status = 1", 'channel');

Change that to

  $query_result = db_query("SELECT node.nid, node.vid FROM {node} node
LEFT JOIN {node_revisions} node_revisions ON node.vid =
node_revisions.vid WHERE node.type = '%s' && node.status = 1",
'channel');

When you do this, don't try typing in this code. Just copy and paste the
entire line (and it is a single line even though the browser will line
wrap it).

After you've done this, please visit either the Editions Manager or the
Channels Manager to refresh some data.

If you don't want to hand patch code, you can wait for a couple of days
when a bugfix release of ProsePoint will be made.

Oh, also, you don't have to reinstall the database. This source code fix
(and the visit to the Channels or Edition Manager) should be sufficient.

Let me know how you go.

--
installation completion error message
https://bugs.launchpad.net/bugs/288919
You received this bug notification because you are a direct subscriber
of the bug.

Status in ProsePoint, A newspaper and magazine content management system: Confirmed

Bug description:
When I completed the installation without teh sample data. I received teh following message:

user warning: Unknown column 'node.nid' in 'field list' query: SELECT node.nid, node.vid FROM ladat_node LEFT JOIN ladat_node_revisions ON node.vid = node_revisions.vid WHERE node.type = 'channel' && node.status = 1 in C:\wamp\www\ladat\profiles\prosepoint\modules\prosepoint\prosepoint_channel\pp_ch.module on line 802.

I have not yet used teh site. I will do so now.

When I installed with the sample data, teh error message was much longer and teh site does not work properly. I gave up on it.

Thank you.

Revision history for this message
bengtan (bengtan) wrote : Re: installation completion error message

Hi,

That fix will be included in the next ProsePoint version, so it won't matter whether you use the altered file, or the original file. (Except that you have to use the altered file if you use a database table prefix, which you're not anymore)

If you make any changes to tma or tma2, they will be overwritten the next time you upgrade ProsePoint. Unless when you do the upgrade, you take care to preserve your css and related changes. That's probably not the best way to proceed.

I would suggest creating a new (drupal.org/project/zen) subtheme. Called it tma_ladat or something unique. Don't call it tma3, just in case there is a tma3 in the future :)

If you know what I'm talking about ... you can make your subtheme inherit directly from zen, or you can make it a subtheme of tma or tma2. Whichever suits you. At the moment tma2 is a subtheme of tma, tma is a subtheme of zen. If you don't know what I'm talking about, let me know and I'll see if I can point you to some more longer explanations. Either way, you'll probably need to get your hands dirty with some theming, which may be good or not so good in your opinion.

Revision history for this message
saggers (edward-sagar) wrote : RE: [Bug 288919] Re: installation completion error message

Thanks for this. I have been working my way through the new book Drupal 6 Themes. I will apply what I have learnt to make a new sub-theme.

-----Original Message-----
From: <email address hidden> [mailto:<email address hidden>] On Behalf Of bengtan
Sent: 26 October 2008 12:10
To: <email address hidden>
Subject: [Bug 288919] Re: installation completion error message

Hi,

That fix will be included in the next ProsePoint version, so it won't
matter whether you use the altered file, or the original file. (Except
that you have to use the altered file if you use a database table
prefix, which you're not anymore)

If you make any changes to tma or tma2, they will be overwritten the
next time you upgrade ProsePoint. Unless when you do the upgrade, you
take care to preserve your css and related changes. That's probably not
the best way to proceed.

I would suggest creating a new (drupal.org/project/zen) subtheme. Called
it tma_ladat or something unique. Don't call it tma3, just in case there
is a tma3 in the future :)

If you know what I'm talking about ... you can make your subtheme
inherit directly from zen, or you can make it a subtheme of tma or tma2.
Whichever suits you. At the moment tma2 is a subtheme of tma, tma is a
subtheme of zen. If you don't know what I'm talking about, let me know
and I'll see if I can point you to some more longer explanations. Either
way, you'll probably need to get your hands dirty with some theming,
which may be good or not so good in your opinion.

--
installation completion error message
https://bugs.launchpad.net/bugs/288919
You received this bug notification because you are a direct subscriber
of the bug.

Status in ProsePoint, A newspaper and magazine content management system: Confirmed

Bug description:
When I completed the installation without teh sample data. I received teh following message:

user warning: Unknown column 'node.nid' in 'field list' query: SELECT node.nid, node.vid FROM ladat_node LEFT JOIN ladat_node_revisions ON node.vid = node_revisions.vid WHERE node.type = 'channel' && node.status = 1 in C:\wamp\www\ladat\profiles\prosepoint\modules\prosepoint\prosepoint_channel\pp_ch.module on line 802.

I have not yet used teh site. I will do so now.

When I installed with the sample data, teh error message was much longer and teh site does not work properly. I gave up on it.

Thank you.

Revision history for this message
bengtan (bengtan) wrote : Re: installation completion error message

Hi,

If you're not scared of giving it a try, then great!

You probably want to also look at http://drupal.org/node/193318. I don't think subtheme-ing is a Drupal core feature. It's a feature of zen.

And yes, there is a copy of zen in ProsePoint (6.x-1.0beta2, to be exact) though you won't see it in the themes listing.

Revision history for this message
bengtan (bengtan) wrote :

ProsePoint 0.06 has been released which fixes this bug. Thank you.

Changed in prosepoint:
status: Confirmed → Fix Released
Revision history for this message
saggers (edward-sagar) wrote : RE: [Bug 288919] Re: installation completion error message

Hi

Two things (if you want me to go through the launchpad system, let me know).

First, on my monitor, when I open the Site configuration menu on the right hand side of the screen, the item Inserted media and images goes over to the next line and "images" hides "languages"

I wish to use the Editions system to break down the channel into categories. At the moment it only allows dates. Or is there some way I can do something else?

Thanks

Edward

-----Original Message-----
From: <email address hidden> [mailto:<email address hidden>] On Behalf Of bengtan
Sent: 26 October 2008 12:49
To: <email address hidden>
Subject: [Bug 288919] Re: installation completion error message

Hi,

If you're not scared of giving it a try, then great!

You probably want to also look at http://drupal.org/node/193318. I don't
think subtheme-ing is a Drupal core feature. It's a feature of zen.

And yes, there is a copy of zen in ProsePoint (6.x-1.0beta2, to be
exact) though you won't see it in the themes listing.

--
installation completion error message
https://bugs.launchpad.net/bugs/288919
You received this bug notification because you are a direct subscriber
of the bug.

Status in ProsePoint, A newspaper and magazine content management system: Confirmed

Bug description:
When I completed the installation without teh sample data. I received teh following message:

user warning: Unknown column 'node.nid' in 'field list' query: SELECT node.nid, node.vid FROM ladat_node LEFT JOIN ladat_node_revisions ON node.vid = node_revisions.vid WHERE node.type = 'channel' && node.status = 1 in C:\wamp\www\ladat\profiles\prosepoint\modules\prosepoint\prosepoint_channel\pp_ch.module on line 802.

I have not yet used teh site. I will do so now.

When I installed with the sample data, teh error message was much longer and teh site does not work properly. I gave up on it.

Thank you.

Revision history for this message
Pierre (pnissels) wrote :

SQL error in pp.admin.inc when prefixes are used.

Prefixes are needed on shared hosting, because the number of databases is restricted.
Drupal parses sql requests and adds the current prefix when needed, but Drupal needs to know when this needs to be done: every time a table name is written within brackets. A table name should therefore never be used "as is", like "node", but always between brackets, like "{node}".

Line 80 reads
    $result = db_query("SELECT COUNT(*) FROM {node} LEFT JOIN {content_type_story} ON node.vid = content_type_story.vid WHERE node.type = 'story' AND content_type_story.field_extended_status_value = '%s'", $value);

it should read instead
    $result = db_query("SELECT COUNT(*) FROM {node} LEFT JOIN {content_type_story} ON {node}.vid = {content_type_story}.vid WHERE {node}.type = 'story' AND {content_type_story}.field_extended_status_value = '%s'", $value);

Line 90 reads
  $result = db_query("SELECT COUNT(*) FROM {node} WHERE node.type = 'story'");

it should read instead
  $result = db_query("SELECT COUNT(*) FROM {node} WHERE {node}.type = 'story'");

I have done the changes on my installation, and it does work fine. If the correction could be delivered in a future patch, this would be great. I guess there are more places to look at.

Revision history for this message
bengtan (bengtan) wrote :

Hi Pierre,

Thank you for pointing this out. Your diagnosis is correct.

However, I think the following changes are better for pp.admin.inc:

Line 80:

    $result = db_query("SELECT COUNT(*) FROM {node} node LEFT JOIN {content_type_story} content_type_story ON node.vid = content_type_story.vid WHERE node.type = 'story' AND content_type_story.field_extended_status_value = '%s'", $value);

and Line 90:

  $result = db_query("SELECT COUNT(*) FROM {node} node WHERE node.type = 'story'");

because they are a bit easier to read.

Yes, I will check other queries for this problem, and incorporate a fix into a future release of ProsePoint.

Thank you.

Changed in prosepoint:
status: Fix Released → In Progress
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.