Обсуждение: out of memory

Поиск
Список
Период
Сортировка

out of memory

От
AI Rumman
Дата:
Whenever I run this query, I get out of memory error:


explain analyze
select
email_track.count AS "Emails_Access_Count",
activity.subject AS "Emails_Subject",
crmentity.crmid AS EntityId_crmentitycrmid
from
(select * from crmentity where deleted = 0 and createdtime between (now() - interval '6 month') and now() ) as crmentity
inner join
(select * from activity where  activitytype = 'Emails' and date_start between (now() - interval '6 month')  and now()) as activity
on crmentity.crmid=activity.activityid
inner join emaildetails on emaildetails.emailid = crmentity.crmid
inner join vantage_email_track on vantage_email_track.mailid=emaildetails.emailid
left join seactivityrel on seactivityrel.activityid = emaildetails.emailid

Re: out of memory

От
Anj Adu
Дата:
Can you provide these details

work_mem
How much physical memory there is on your system

Most out of memory errors are associated with a high work_mem setting

On Sun, Jun 13, 2010 at 6:25 AM, AI Rumman <rummandba@gmail.com> wrote:
> Whenever I run this query, I get out of memory error:
>
>
> explain analyze
> select
> email_track.count AS "Emails_Access_Count",
> activity.subject AS "Emails_Subject",
> crmentity.crmid AS EntityId_crmentitycrmid
> from
> (select * from crmentity where deleted = 0 and createdtime between (now() -
> interval '6 month') and now() ) as crmentity
> inner join
> (select * from activity where  activitytype = 'Emails' and date_start
> between (now() - interval '6 month')  and now()) as activity
> on crmentity.crmid=activity.activityid
> inner join emaildetails on emaildetails.emailid = crmentity.crmid
> inner join vantage_email_track on
> vantage_email_track.mailid=emaildetails.emailid
> left join seactivityrel on seactivityrel.activityid = emaildetails.emailid
>
>

Re: out of memory

От
Kenichiro Tanaka
Дата:
Hello

I think this SQL returns the following  error.

ERROR:  missing FROM-clause entry for table "email_track"
LINE 3: email_track.count AS "Emails_Access_Count",
         ^

For a fact ,this SQL does not have the "email_trac" table  in from-clause.

1)Is this SQL right?
2)If the SQL is right, can you write how make your table?
   I'd like to try your SQL.
3)What version do you use?

This is my test.

================================================================
--PostgreSQL8.4.4. for CentOS5.3
begin;

create schema email_track;
create table email_track.crmentity
(crmid int,
deleted int,
createdtime date);

create table email_track.activity
(activityid int,
activitytype varchar(100),
date_start date,
subject varchar(100));


create table email_track.emaildetails
(emailid int
);

create table email_track.vantage_email_track
(vantage_email_track int,
mailid int);

create table email_track.seactivityrel
(activityid int);

set search_path to email_track,public;



explain analyze
select
email_track.count AS "Emails_Access_Count",
activity.subject AS "Emails_Subject",
crmentity.crmid AS EntityId_crmentitycrmid
from
(select * from crmentity where deleted = 0 and createdtime between
(now() - interval '6 month') and now() ) as crmentity
inner join
(select * from activity where  activitytype = 'Emails' and date_start
between (now() - interval '6 month')  and now()) as activity
on crmentity.crmid=activity.activityid
inner join emaildetails on emaildetails.emailid = crmentity.crmid
inner join vantage_email_track on
vantage_email_track.mailid=emaildetails.emailid
left join seactivityrel on seactivityrel.activityid = emaildetails.emailid;


ERROR:  missing FROM-clause entry for table "email_track" at character 24
STATEMENT:  explain analyze
         select
         email_track.count AS "Emails_Access_Count",
         activity.subject AS "Emails_Subject",
         crmentity.crmid AS EntityId_crmentitycrmid
         from
         (select * from crmentity where deleted = 0 and createdtime
between (now() - interval '6 month') and now() ) as crmentity
         inner join
         (select * from activity where  activitytype = 'Emails' and
date_start between (now() - interval '6 month')  and now()) as activity
         on crmentity.crmid=activity.activityid
         inner join emaildetails on emaildetails.emailid = crmentity.crmid
         inner join vantage_email_track on
vantage_email_track.mailid=emaildetails.emailid
         left join seactivityrel on seactivityrel.activityid =
emaildetails.emailid;
ERROR:  missing FROM-clause entry for table "email_track"
LINE 3: email_track.count AS "Emails_Access_Count",
         ^

--can not reproduce.
abort;

================================================================

(2010/06/13 22:25), AI Rumman wrote:
> Whenever I run this query, I get out of memory error:
>
>
> explain analyze
> *select *
> email_track.count AS "Emails_Access_Count",
> activity.subject AS "Emails_Subject",
> crmentity.crmid AS EntityId_crmentitycrmid
> *from *
> (select * from crmentity where deleted = 0 and createdtime between
> (now() - interval '6 month') and now() ) as crmentity
> inner join
> (select * from activity where  activitytype = 'Emails' and date_start
> between (now() - interval '6 month')  and now()) as activity
> on crmentity.crmid=activity.activityid
> inner join emaildetails on emaildetails.emailid = crmentity.crmid
> inner join vantage_email_track on
> vantage_email_track.mailid=emaildetails.emailid
> left join seactivityrel on seactivityrel.activityid = emaildetails.emailid
>