In the current sources, I see:

        for (lineoff = FirstOffsetNumber; lineoff <= max; lineoff++)

so it looks like we have this fixed.  You can check the 7.1RC1.


> 
> If PostgreSQL failed to compile on your computer or you found a bug that
> is likely to be specific to one platform then please fill out this form
> and e-mail it to [EMAIL PROTECTED]
> 
> To report any other bug, fill out the form below and e-mail it to
> [EMAIL PROTECTED]
> 
> If you not only found the problem but solved it and generated a patch
> then e-mail it to [EMAIL PROTECTED] instead.  Please use the
> command "diff -c" to generate the patch.
> 
> You may also enter a bug report at http://www.postgresql.org/ instead of
> e-mail-ing this form.
> 
> ============================================================================
>                         POSTGRESQL BUG REPORT TEMPLATE
> ============================================================================
> 
> 
> Your name             :       Alexis Wilke
> Your email address    :       [EMAIL PROTECTED]
> 
> 
> System Configuration
> ---------------------
>   Architecture (example: Intel Pentium)       : trust me, doesn't matter
> 
>   Operating System (example: Linux 2.0.26 ELF)        : trust me, doesn't matter
> 
>   PostgreSQL version (example: PostgreSQL-7.0):   since PostgreSQL-6.5.x
>                                                   and still in the code
> 
>   Compiler used (example:  gcc 2.8.0)         : trust me, doesn't matter
> 
> 
> Please enter a FULL description of your problem:
> ------------------------------------------------
> 
> It crashes when pg_database is too large. This is because
> the index is compare to max with <= instead of <. I already
> fixed the bug on my system. That's at line 
> 
> 
> 
> Please describe a way to repeat the problem.   Please try to provide a
> concise reproducible example, if at all possible: 
> ----------------------------------------------------------------------
> 
> Create many database (or create/destroy the same many times).
> 
> Once the pg_database is more than one page (is 16Kb or more) then it
> starts
> crashing. (may not crash on all systems, but trust me, my fix
> will work GREAT).
> 
> 
> 
> If you know how this problem might be fixed, list the solution below:
> ---------------------------------------------------------------------
> 
> Okay, so go in the following file:
> 
> ./src/backend/utils/misc/database.c
> 
> and move to the line #183 (V7.0.1)
> 
> There, fix the for() as is:
> 
>       for(i = 0; i < max; i++)
> 
> Why? Well, because 'i' starts at 0, therefore, you
> can't access the tuple number 'max'. If you look in
> other source files, you will quickly see that all
> these for() loops are starting with an index of
> 1 and use some special functions/macros to access
> the tuple data.
> 
> 
> 
> 
> 
> __________________________________________________
> Do You Yahoo!?
> Get email at your own domain with Yahoo! Mail. 
> http://personal.mail.yahoo.com/?.refer=text
> 
> ---------------------------(end of broadcast)---------------------------
> TIP 4: Don't 'kill -9' the postmaster
> 


-- 
  Bruce Momjian                        |  http://candle.pha.pa.us
  [EMAIL PROTECTED]               |  (610) 853-3000
  +  If your life is a hard drive,     |  830 Blythe Avenue
  +  Christ can be your backup.        |  Drexel Hill, Pennsylvania 19026

---------------------------(end of broadcast)---------------------------
TIP 6: Have you searched our list archives?

http://www.postgresql.org/search.mpl

Reply via email to