Re: [HACKERS] Beta2?

Started by Tatsuo Ishiiover 26 years ago6 messages
#1Tatsuo Ishii
t-ishii@sra.co.jp

Sorry for the delay.

Tatsuo Ishii <t-ishii@sra.co.jp> writes:

o It is repoted that NetBSD/m68k has bee broken since you put the
alignment stuff into configure, I'm not sure though.

More info. Install and initdb are ok. But destroydb and createdb never
works. NetBSD/macppc 1.4_ALPHA has no problem.

Hmm. What numbers is configure producing for the various ALIGNOF
values? (Look in config.h.)

#define ALIGNOF_SHORT 2
#define ALIGNOF_INT 2
#define ALIGNOF_LONG 2
#define ALIGNOF_LONG_LONG_INT 2
#define ALIGNOF_DOUBLE 2
#define MAXIMUM_ALIGNOF 2

What exactly happens when you try a
createdb? Can you connect to the template1 database and do SQL stuff
after initdb, without having done a createdb?

"psql template1" gets coredumped. But 6.4.2 clients can connect to the
backend. Seems something going wrong with libpq stuffs.
---
Tatsuo Ishii

#2Tom Lane
tgl@sss.pgh.pa.us
In reply to: Tatsuo Ishii (#1)

Tatsuo Ishii <t-ishii@sra.co.jp> writes:

o It is repoted that NetBSD/m68k has bee broken since you put the
alignment stuff into configure, I'm not sure though.

Hmm. What numbers is configure producing for the various ALIGNOF
values? (Look in config.h.)

#define ALIGNOF_SHORT 2
#define ALIGNOF_INT 2
#define ALIGNOF_LONG 2
#define ALIGNOF_LONG_LONG_INT 2
#define ALIGNOF_DOUBLE 2
#define MAXIMUM_ALIGNOF 2

OK, I guess that's reasonable for m68k hardware. I wonder whether
anything is assuming that MAXALIGN is at least 4...

What exactly happens when you try a
createdb? Can you connect to the template1 database and do SQL stuff
after initdb, without having done a createdb?

"psql template1" gets coredumped. But 6.4.2 clients can connect to the
backend. Seems something going wrong with libpq stuffs.

Do you mean that psql itself (not the backend) is coredumping? Can you
provide a backtrace from the corefile?

regards, tom lane

#3Tatsuo Ishii
t-ishii@sra.co.jp
In reply to: Tom Lane (#2)

#define ALIGNOF_SHORT 2
#define ALIGNOF_INT 2
#define ALIGNOF_LONG 2
#define ALIGNOF_LONG_LONG_INT 2
#define ALIGNOF_DOUBLE 2
#define MAXIMUM_ALIGNOF 2

OK, I guess that's reasonable for m68k hardware. I wonder whether
anything is assuming that MAXALIGN is at least 4...

What exactly happens when you try a
createdb? Can you connect to the template1 database and do SQL stuff
after initdb, without having done a createdb?

"psql template1" gets coredumped. But 6.4.2 clients can connect to the
backend. Seems something going wrong with libpq stuffs.

Do you mean that psql itself (not the backend) is coredumping? Can you
provide a backtrace from the corefile?

Yes, but I do not have the backtrace handy since that was reported
from a guy, not by me.

BTW, from interfaces/libpq/fe-exec.c:

* Requirements for correct function are:
* PGRESULT_ALIGN_BOUNDARY >= sizeof(pointer)
* to ensure the initial pointer in a block is not overwritten.
[snip]
#define PGRESULT_ALIGN_BOUNDARY MAXIMUM_ALIGNOF /* from configure */

I wonder there seems to be a problem if MAXIMUM_ALIGNOF == 2?
---
Tatsuo Ishii

#4Tom Lane
tgl@sss.pgh.pa.us
In reply to: Tatsuo Ishii (#3)

Tatsuo Ishii <t-ishii@sra.co.jp> writes:

OK, I guess that's reasonable for m68k hardware. I wonder whether
anything is assuming that MAXALIGN is at least 4...

BTW, from interfaces/libpq/fe-exec.c:
* Requirements for correct function are:
* PGRESULT_ALIGN_BOUNDARY >= sizeof(pointer)
* to ensure the initial pointer in a block is not overwritten.
[snip]
#define PGRESULT_ALIGN_BOUNDARY MAXIMUM_ALIGNOF /* from configure */

I think you've spotted the problem, all right. I'll see what I can do
about it...

regards, tom lane

#5Tom Lane
tgl@sss.pgh.pa.us
In reply to: Tom Lane (#4)

Tatsuo Ishii <t-ishii@sra.co.jp> writes:

I wonder there seems to be a problem if MAXIMUM_ALIGNOF == 2?

Fixed, I think. Please ask your friend to try again with latest
sources.

regards, tom lane

#6Tatsuo Ishii
t-ishii@sra.co.jp
In reply to: Tom Lane (#5)

Tatsuo Ishii <t-ishii@sra.co.jp> writes:

I wonder there seems to be a problem if MAXIMUM_ALIGNOF == 2?

Fixed, I think. Please ask your friend to try again with latest
sources.

Thanks! I'll let my friend know.
--
Tatsuo Ishii