Commit Graph

902 Commits

Author SHA1 Message Date
Bruce Momjian
a7d417cc2f Fix problems with pg_dump for iheritance, sequences, archive tables. 1997-07-23 17:15:13 +00:00
Bruce Momjian
69e5d63839 AIX nm fix from Gerhard 1997-07-13 19:52:10 +00:00
Bruce Momjian
a11ad874e4 Fix for assembler from Yoshihiko ICHIKAWA 1997-07-10 02:32:51 +00:00
Bruce Momjian
3b7ee8f5f9 Allow underscores in user names. 1997-07-10 02:27:27 +00:00
Bruce Momjian
a5d80cb0cf Date-type fixes from Tatsuo Ishii 1997-07-08 22:06:46 +00:00
Thomas G. Lockhart
3ded6fd511 Fix code to do the right thing with mixed-endian clients and servers. 1997-07-01 00:32:27 +00:00
Thomas G. Lockhart
8507ddb9c6 Use common parser and encoder for timestamp data type.
Remove older date and time code (retain NEW_DATE_CODE and NEW_TIME_CODE).
Use common encoder for date and time.
Fix datetime +/- timespan math bug.
1997-07-01 00:22:46 +00:00
Bruce Momjian
43deb7a45f Fox case-sensitivity for \d and allow trailing ; on backslash commands. 1997-06-29 17:29:28 +00:00
Vadim B. Mikheev
eb9c8e0a59 _hash_first: release buf & metabuf if no tuples found for a key. 1997-06-28 05:45:40 +00:00
Bruce Momjian
c2010d8e4d fix for initdb --debug core dump, from Tatsuo Ishii 1997-06-25 21:12:19 +00:00
Thomas G. Lockhart
1f4f4534a0 Use the standard date/time encoder rather than strftime() for output.
This allows use of the DateStyle session variable.
1997-06-23 14:56:15 +00:00
Thomas G. Lockhart
01264e84ba Modify EncodeDateTime() to suppress trailing ".00" in seconds field.
This matches the behavior of the original formatting for abstime.
Repair datetime + timespan date arithmetic for year boundaries.
 From patch submitted by Dave Skinner.
1997-06-23 14:50:56 +00:00
Thomas G. Lockhart
d9bccec0d2 Expunge code not enabled with USE_NEW_DATE and USE_NEW_TIME #defines. 1997-06-23 14:47:26 +00:00
Thomas G. Lockhart
2f09dd9958 Fix broken parsing for lists of options. Apparently broken when support was
added for keyword=value options.
1997-06-20 17:17:03 +00:00
Thomas G. Lockhart
3cef45d330 Fix leap year and month boundary arithmetic for datetime +/- timespan;
the problem only manifests itself when adding years/months and hours
 when the hours:minutes:seconds pushes over midnight.
Fix interpretation of times with explicit timezone when the timezone is
 in daylight savings time and is not the default timezone.
Allow interpretation of explicit timezone when it is specified as two words:
 <standard time> DST". For example, "MET DST" (Middle European Time Daylight
 Savings Time). This syntax is found in the zic package on Linux boxes at least.
1997-06-20 17:12:54 +00:00
Vadim B. Mikheev
41882fde34 setVarAttrLenForCreateTable(): use varnoold/varoattno instead of
varno/varattno.
1997-06-13 03:24:26 +00:00
Vadim B. Mikheev
0f576413bc Fix replace_agg_clause() for unary operators. 1997-06-12 17:26:15 +00:00
Vadim B. Mikheev
7540eda8f4 Someone forgot about aligning in fastgetiattr()... 1997-06-12 15:41:52 +00:00
Vadim B. Mikheev
9392a19196 Datum *idatum;
^
1997-06-12 15:39:44 +00:00
Vadim B. Mikheev
1561684a2d Compare 'char' and 'text' lexicographically. 1997-06-11 05:20:05 +00:00
Vadim B. Mikheev
0346ab7175 Lexicographically compare 'char' and 'text'. 1997-06-11 05:18:02 +00:00
Vadim B. Mikheev
dee872de5c geqo_rel_paths(): compute_joinrel_size() shouldn't be called
for non-JoinPath path! So now we have:
    if ( IsA_JoinPath (cheapest) )
        rel->size = compute_joinrel_size(cheapest);
1997-06-11 02:44:12 +00:00
Marc G. Fournier
90d0cf0000 From: Robert Bruccoleri <bruc@bms.com>
Subject: [PORTS] Patches for Irix 6.4

I have worked out how to compile PostgreSQL on Irix 6.4 using the -n32 compiler
mode and version 7.1 of the C compiler. (The n32 compiler use 32 bits
addressing,
but allows access to all the instructions in the MIPS4 instruction set.)
There were several problems:

1) The ld command is not referenced as a macro in all the Makefiles. On
this platform, you have to include -n32 on all the ld commands. Makefiles
were changed as needed.

3) Lots of warnings are generated from the compiler. Since the regression
tests worked OK, I didn't attempt to fix them. If anyone wants the compilation
log, please let me know, and I'll email it to you.

The version of postgresql was 970602. Here is Makefile.custom:

CUSTOM_COPT = -O2 -n32
MK_NO_LORDER = 1
LD = ld -n32
CC += -n32
1997-06-11 01:13:10 +00:00
Marc G. Fournier
4ea3844680 From: "Brian E. Gallew" <geek+@cmu.edu>
Subject: Re: [PORTS] Re: [PATCHES] DG/UX 5.4R11 patches

Comments in boot.sed break DG/UX port
1997-06-11 01:05:48 +00:00
Bruce Momjian
fb5be867ef LO patches for loimport/loexport from Raymond Toy 1997-06-10 13:01:32 +00:00
Vadim B. Mikheev
f4161503e6 if ( rel->size <= 0 )
rel->size = compute_rel_size(rel);
1997-06-10 07:55:47 +00:00
Vadim B. Mikheev
cbb4213af4 if ( new_rel->size <= 0 )
new_rel->size = compute_rel_size(new_rel);
1997-06-10 07:53:55 +00:00
Vadim B. Mikheev
71b3e93c50 Duplicates handling... 1997-06-10 07:28:50 +00:00
Bruce Momjian
858f35510e Cleanup on xinv# table names. 1997-06-07 17:34:35 +00:00
Bruce Momjian
51b03770d7 avoid xinv* table name conflict with large objects. 1997-06-07 05:19:06 +00:00
Marc G. Fournier
e318022e1a From: "D'Arcy J.M. Cain" <darcy@druid.net>
Subject: [PATCHES] backend/storage/ipc/shmem.c

  - strname is only used if assert checking is on
1997-06-06 22:04:04 +00:00
Marc G. Fournier
0f94738c33 From: "D'Arcy J.M. Cain" <darcy@druid.net>
Subject: [PATCHES] backend/lib/fstack.c

  - The FixedStackIsValid so obviously needs to be a macro
  - FixedStackContains only called if assert checking on
1997-06-06 22:02:37 +00:00
Bruce Momjian
a089cdd9d3 lowercase large object table name fix. 1997-06-06 03:41:16 +00:00
Vadim B. Mikheev
e3d2f1f35d gimme_tree(): got rid of compute_rel_size() -
compute_joinrel_size already called by geqo_rel_paths.
1997-06-06 03:18:02 +00:00
Vadim B. Mikheev
c8a38d5d97 Added check is new item successfuly inserted to a page or not. 1997-06-06 03:11:46 +00:00
Marc G. Fournier
15da18508f From: Phil Nelson <phil@cs.wwu.edu>
Subject: [PATCHES] Added support for NetBSD/pc532.
1997-06-06 01:37:23 +00:00
Marc G. Fournier
c0178f27a2 From: "D'Arcy J.M. Cain" <darcy@druid.net>
Subject: [HACKERS] src.original/./backend/lib/fstack.c

Another change I suggested.  I bracket an unused function and add a
return to quiet the compiler.  In addition I added an internal
consistency check.
1997-06-06 00:38:17 +00:00
Marc G. Fournier
f50b103ce1 From: "D'Arcy J.M. Cain" <darcy@druid.net>
Subject: [HACKERS] backend/optimizer/geqo/geqo_erx.c

I sent these changes in with a bunch of others.  Some were folded in but
others, like these, were not.  I am not sure why so I am resending this
to the developers list by itself for discussion.

The readon why I suggest these changes is that the compiler can't tell
that minimum_count is initialized before it is used.  The tests that I
add in here will cause an immediate error if it doesn't.  As the comments
below suggest, if it is 100% guaranteed that the variable will always
be initialized then how this is so should be commented here.  I don't
know how much strain the actual test puts on the performance but if it
isn't too much then maybe leave it in for absolute safety anyway.

There are also a few returns just to stop warnings.
1997-06-06 00:37:23 +00:00
Bruce Momjian
a668b7ac2d Fix for large objects and case sensitivity, from Raymond Toy. 1997-06-05 22:59:45 +00:00
Vadim B. Mikheev
11073bee5c allpaths.c:find_join_paths(): compute_rel_size() shouldn't be called
for join-relations. Sizes already computed by
prune_rel_paths():compute_joinrel_size().

joinrels.c:
<                   if ( _use_right_sided_plans_ )
---
>                   if ( _use_right_sided_plans_ &&
>                               length (outer_rel->relids) > 1 )

 - r_plans are useful when outer_rel is join-relation... It
decreases the size of search space...
1997-06-05 09:33:52 +00:00
Vadim B. Mikheev
9c6cdb4d7b heap_destroy() now calls RelationForgetRelation() to really flush
the relation from the relcache.
1997-06-04 08:59:22 +00:00
Vadim B. Mikheev
ded4650642 New func RelationForgetRelation();
*         RelationFlushRelation + if the relation is local then get rid of
 *         the relation descriptor from the newly created relation list.
1997-06-04 08:56:51 +00:00
Thomas G. Lockhart
06ea3c9a24 Add upgradepath(), isoldpath(), upgradepoly() and revertpoly() to allow
migration from pre-v6.1 geometric data types.
Only allow new input syntax for paths and polygons.
1997-06-03 14:01:22 +00:00
Thomas G. Lockhart
fe74581fa0 Use finite() macro if available to check returns from pow() and exp(). 1997-06-03 13:58:06 +00:00
Thomas G. Lockhart
93ac35f06c Fix a few DATEDEBUG print statements. 1997-06-03 13:56:32 +00:00
Vadim B. Mikheev
fa940fda67 cc1: warnings being treated as errors
dt.c: In function `timespan2tm':
dt.c:1722: warning: unused variable `funit'
dt.c:1722: warning: unused variable `iunit'

-> got rid of them.
1997-06-03 06:32:56 +00:00
Vadim B. Mikheev
b46e5b5281 SET geqo TO 'on' restores _use_geqo_rels_ to GEQO_RELS, not
to last specified with 'on' #.
What is better ?
1997-06-03 06:29:31 +00:00
Vadim B. Mikheev
f1cf69c080 cc1: warnings being treated as errors
remove.c: In function `RemoveAggregate':
remove.c:413: warning: unused variable `typename'

-> got rid of it.
1997-06-03 06:23:24 +00:00
Vadim B. Mikheev
2f8c2e997b Fix deleted tuples re-incarnation possible when vacuum transaction
start time equal to tuple->t_tmax.

Privent shrinking if there are tuples modifyed by running transactions
(it concerns system relations only, currently).
1997-06-03 01:29:26 +00:00
Vadim B. Mikheev
5b5c83f9e7 Oracle like currval behaviour. 1997-06-02 11:22:52 +00:00
Vadim B. Mikheev
05404562fb Use GEQO if _use_geqo_ is TRUE and # of relations is >= _use_geqo_rels_
(both are settable via SET geqo TO ...).
1997-06-02 11:14:40 +00:00
Vadim B. Mikheev
cda886fd06 SET var TO 'a=b'
^^ is supported by get_token now.
(SET geqo TO 'on=XXX' works now).
1997-06-02 11:00:57 +00:00
Bruce Momjian
afb089d4a4 Put back old lines. 1997-06-01 04:16:16 +00:00
Bruce Momjian
93b03649d4 Cleanup for AIX from Darren. 1997-06-01 03:39:28 +00:00
Bruce Momjian
8bc7439ccf Enable GEQO for more than six tables, from Martin. 1997-06-01 02:56:00 +00:00
Bruce Momjian
c3a960ad8a Fix for SELECT * INTO TABLE for char(), varchar() fields. 1997-05-31 16:52:19 +00:00
Vadim B. Mikheev
ad01dd270d If there is no table in RangeTable for colname then
elog (WARN, "attribute %s not found", colname);
1997-05-31 07:10:25 +00:00
Vadim B. Mikheev
139858e699 If we have to split leaf page in the chain of duplicates
then we try to look at our right sibling first, but not farther,
as it was in yesterday fix.
1997-05-31 06:35:56 +00:00
Vadim B. Mikheev
3f5834fb8c Fix duplicates handling. 1997-05-30 18:35:40 +00:00
Thomas G. Lockhart
43b6f1e678 Clean up support for USE_POSIX_TIME, ! HAVE_INT_TIMEZONE machines.
Remove references to modf() which is buggy on some platforms (Sparc/Linux).
1997-05-30 15:02:51 +00:00
Marc G. Fournier
cf88367751 From: David Friend <dfriend@atlsci.atlsci.com>
Subject: [PATCHES] pqcomprim.c patch

This is the patch by Robert Bruccoleri to fix the endian problem.
(Actually, it's the reverse of his patch.  He must have gotten the
order wrong.)
1997-05-26 00:26:56 +00:00
Marc G. Fournier
ca746f512d -m <arg> -M weren't setup properly in getopts()...
These are undocumented in the man pages though...should they be removed?

Reported by: "A. Duursma" <it@portsite.nl>
1997-05-25 15:37:15 +00:00
Thomas G. Lockhart
ac534bee01 Clean up redundant tests for valid pointers in geometric types.
Fix up decoder field masks for timespan and reltime.
1997-05-23 05:24:53 +00:00
Vadim B. Mikheev
d865228807 AllocateFile():
fdleft = pg_nofile() - allocatedFiles - nfile;
looks more realistic, but too noisy -
   fdleft = pg_nofile() - allocatedFiles;
restored.
1997-05-23 02:56:48 +00:00
Vadim B. Mikheev
c9be1bccc1 RelationPurgeLocalRelation():
/*
             * RelationFlushRelation () below will flush relation information
             * from the cache. We must call smgrclose to flush relation
             * information from SMGR & FMGR, too. We assume that for temp
             * relations smgrunlink is already called by heap_destroyr
             * and we skip smgrclose for them.          - vadim 05/22/97
             */
            smgrclose(reln->rd_rel->relsmgr, reln);

 - it avoids memory leaks in SMGR & VFD.

RelationFlushRelation():
   there is no more call FileInvalidate(RelationGetSystemPort(relation));
   - invalid (FileInvalidate() expects File, not SMGR' fd)
   - unuseful anyway.
1997-05-22 17:24:20 +00:00
Vadim B. Mikheev
19269069dc 1. Fix md memory leak:
mdunlink() and mdclose() (too !!!) now free MdfdVec for relation
   and add it to free list, so it may be re-used for another relation
   later.
2. Fix VFD-manager memory leak (found by Massimo ... and me):
   mdunlink() has to call FileUnlink() to free allocation for fileName
   and add the Vfd slot to the free list.
1997-05-22 17:08:35 +00:00
Vadim B. Mikheev
ff8ce5230d 1. Cleanup (no more FreeFd - unuseful; others).
2. FreeFile() has to do nothing with nfile (# of files opened
   by VFD manager).
1997-05-22 16:51:19 +00:00
Vadim B. Mikheev
737ab85cc0 1. Pass GISTENTRYs to giststate->penaltyFn by pointers, not by vals.
2. Re-initialize keys in gistrescan (if gist used in inner scan).
1997-05-22 16:01:33 +00:00
Marc G. Fournier
4800abc7c1 From: Darren King <aixssd!darrenk@abs.net>
To: pgsql-patches@postgreSQL.org
Subject: [PATCHES] DROP AGGREGATE gram.y typo...


Somehow I dropped a comma in the gram.y part (line 129) of my
patch for drop aggregate.  Here's a correct patch for gram.y.

PS. I hope I got the right comma, manually applied :) (scrappy)
1997-05-22 00:24:07 +00:00
Marc G. Fournier
5e7c0a0b9a From: Darren King <aixssd!darrenk@abs.net>
Subject: [PATCHES] DROP AGGREGATE patch/fix.


Here's a patch that fixes the DROP AGGREGATE command to delete
the desired aggregate for a specific type.
1997-05-22 00:17:24 +00:00
Marc G. Fournier
24ed6d604d From: Darren King <aixssd!darrenk@abs.net>
Subject: [PATCHES] AIX make patch resubmitted.

Misc patches for AIX from Darren:

1)  New src/makefiles/Makefile.aix  This patch should only be
    applied if the following patch (4) is applied to backend/Makefile!
    Still looking into having configure determine the last line to do
    the shared link.  The 325 code will work for 41, so I put that in
    as the default.  Included a commented out 41 line for completeness.

*and*

4)  Patch the backend Makefile.  I've reviewed this patch with respect to the
    other ports that use MAKE_EXPORTS (svr4 and univel) as closely as I could
    and I don't see where it will break them.  If it does, please let me know
    and I'll rework it somehow.
1997-05-22 00:11:29 +00:00
Marc G. Fournier
3e871388b5 From: Darren King <aixssd!darrenk@abs.net>
Subject: [PATCHES] Re: [PORTS] AIX 6.1 fixes...

Here are the patches for the two things that wouldn't make it thru the AIX
compiler.  The geo_ops.c change is harmless I believe.  The nbtcompare.c patch
fixes me, but I don't know about any other ports.  Maybe wait on that one
until Vadim decides what to do about the unsigned vs signed chars varlena
issue.
1997-05-22 00:07:30 +00:00
Vadim B. Mikheev
92ab5dc2b5 Little memmory leak in RelationFlushRelation() in freeing
relation->rd_att (relation' TupleDesc).
1997-05-20 11:41:38 +00:00
Vadim B. Mikheev
5f893a1e32 Shouldn't we use palloc instead of malloc ?
Because of
 *      resetpsort  - resets (frees) malloc'd memory for an aborted Xaction
 *
 *      Not implemented yet.
1997-05-20 11:35:50 +00:00
Vadim B. Mikheev
e7f7cf4a1c 1. LocalBufferSync(): set nextFreeLocalBuf to 0 - we're freeing
all local buffers @ xact commit, so accordingly nextFreeLocalBuf
   is first local buffer now.
   It helps to avoid unnecessary local buffer allocations in LocalBufferAlloc()
   latter ("memmory leaks" in 'order by').
2. ResetLocalBufferPool() lost allocated local buffers:

   memset(LocalBufferDescriptors, 0, sizeof(BufferDesc) * NLocBuffer);

   (local buffers leak @ xact aborts).
1997-05-20 11:30:32 +00:00
Vadim B. Mikheev
4a8c3dddc3 Consider right-sided plans if _use_right_sided_plans_ is true. 1997-05-20 10:37:26 +00:00
Vadim B. Mikheev
c4ab256383 New VAR r_plans added to enable turn ON/OFF
using right-sided plans.
1997-05-20 10:31:42 +00:00
Vadim B. Mikheev
0f67fb46f6 Initialize internal keys if rtree used in inner scan. 1997-05-20 10:29:30 +00:00
Bruce Momjian
a1157deb57 Added fcvt() prot for bsdi.
Made PQsetdb() and PQfnumber() case-insensitive.
Removed attempt to set table ownership via pg_dumpall.
1997-05-20 03:39:02 +00:00
Marc G. Fournier
6ea80b470b From: Olaf Mittelstaedt <MSTAEDT@va-sigi.va.fh-ulm.de>
Minor patches to geo_ops.c to clean up compile under AIX 4.1.3
1997-05-19 03:49:39 +00:00
Edmund Mergl
0c67d28a08 added const declaration E.Mergl 1997-05-17 16:23:06 +00:00
Thomas G. Lockhart
5bc1024225 Remove troublesome type coersions from the char8 return statements.
Noted in trying to port to AIX.
1997-05-17 06:20:34 +00:00
Thomas G. Lockhart
51e0fe5c88 Improve informational messages for "show" command responses. 1997-05-16 07:24:13 +00:00
Thomas G. Lockhart
e35b759fed Fix datetime and abstime conversions to and from date.
Bring optional new-storage date and time up to date and test.
This new storage format should fix the "Sparc gcc -O2 bug".
(Enable new code with USE_NEW_DATE and USE_NEW_TIME in dt.h)
1997-05-16 07:19:50 +00:00
Thomas G. Lockhart
9fd868d16a Rename new float and int conversion routines to avoid conflicts with
system calls on AIX (and probably other machines too).
1997-05-14 04:35:10 +00:00
Thomas G. Lockhart
1e790e207f Fix return value for tm2datetime to properly indicate failure. 1997-05-13 04:26:07 +00:00
Vadim B. Mikheev
3e248edf43 Added _readAggreg() to work with T_Aggreg type. 1997-05-12 07:17:23 +00:00
Thomas G. Lockhart
64d9b50893 Fix timezone manipulation code to avoid crashes on some machines.
Add type conversion functions for floating point numbers.
Check for zero in unary minus floating point code (IEEE allows an
 explicit negative zero which looks ugly in a query result!).
Ensure circle type has non-negative radius.
1997-05-11 15:11:47 +00:00
Bruce Momjian
91f4df2f2c Fix typechecking problem pointed out by Thomas. 1997-05-08 02:45:53 +00:00
Marc G. Fournier
505a4709e2 From: Erich Stamberger <eberger@gewi.kfunigraz.ac.at>
Subject: [PATCHES] oracle_compat functions core dumping on NULL-fields
1997-05-07 02:46:45 +00:00
Thomas G. Lockhart
d464e31593 Remove valid pointer checks for returns from palloc() since palloc() will not
return if storage is not allocated. Ref: Vadim 97/05/01
1997-05-06 07:27:51 +00:00
Thomas G. Lockhart
fad56c5211 Change LOread() and LOwrite() to loread() and lowrite() to allow use
by case-insensitive SQL parser.
1997-05-06 07:16:21 +00:00
Vadim B. Mikheev
13f41aa90b mdcreate():
fd = FileNameOpenFile(path, O_RDWR|O_CREAT|O_EXCL, 0600);

    /*
     *  If the file already exists and is empty, we pretend that the
     *  create succeeded.  During bootstrap processing, we skip that check,
     *  because pg_time, pg_variable, and pg_log get created before their
     *  .bki file entries are processed.
     *
>    *  As the result of this pretence it was possible to have in
>    *  pg_class > 1 records with the same relname. Actually, it
>    *  should be fixed in upper levels, too, but... -  vadim 05/06/97
>    */
1997-05-06 02:03:20 +00:00
Vadim B. Mikheev
b45128f1c3 Kill re-incarnated bug arround
Assert ( --Vnpages > 0 );
	and
Assert ( --Fnpages > 0 );
1997-05-05 10:01:02 +00:00
Vadim B. Mikheev
c3b51e0d67 Bug: backend crashes in btbeginscan()->btrescan()->_bt_orderkeys()
when btree used in innerscan with run-time key which value
passed by pointer.

Fix: keys ordering stuff moved to _bt_first().

Pointed by Thomas Lockhart.
1997-05-05 03:41:19 +00:00
Vadim B. Mikheev
fe91ceb62b Fix old bug in _hash_first() for scan without keys:
if 1st bucket chain is empty then need to continue scan in the rest buckets.
1997-04-30 06:31:16 +00:00
Vadim B. Mikheev
3055eeff93 More informative NOTICEs in tuple checks. 1997-04-30 03:05:43 +00:00
Vadim B. Mikheev
de97e7fae8 SET geqo TO ON|OFF 1997-04-29 04:38:58 +00:00
Vadim B. Mikheev
a4792bd3d6 #ifdef GEQO
bool _use_geqo_ = true;
#else
bool _use_geqo_ = false;
#endif

_use_geqo_ is settable via SET var TO ...
1997-04-29 04:37:22 +00:00
Vadim B. Mikheev
a1fbd470a9 Fix GroupBy: enable functions over aggregates and GroupBy-ed fields
in target list.
1997-04-29 04:32:50 +00:00
Marc G. Fournier
d938b755dc From: "D'Arcy J.M. Cain" <darcy@druid.net>
Subject: [HACKERS] Inputting money

I notice that I have to put single quotes around money amounts if there
is a decimal point in the value.  I appears to be happening because there
is something changing things like "123.45" to "123.450000" and the code
has a problem with that.  There may be a better way to fix this but here
is a simple change to cash.c that lets it accept trailing zeroes.
1997-04-28 16:15:13 +00:00
Thomas G. Lockhart
d831e9ce19 Change mixed-case routines to lower-case if referenced in pg_proc.h 1997-04-27 19:21:06 +00:00
Thomas G. Lockhart
812d5c9b68 Change mixed-case routines to lower-case if referenced in pg_proc.h
Add comparison operators to boolean and smaller/larger operators to datetime
and timespan. Fix int4 overflow math problem in timespan comparison operators.
1997-04-27 19:20:16 +00:00
Thomas G. Lockhart
ee2f8e0472 Modify references to function manager to use lower-case calls. 1997-04-27 19:16:44 +00:00
Marc G. Fournier
df77071773 Massive regression test patches from Thomas *woo hoo!* 1997-04-27 02:58:38 +00:00
Marc G. Fournier
094ec2d3f3 More timezone patches by Thomas:
Here are patches which should help fix timezone problems in the
datetime and abstime code. Also, I repatched varlena.c to add in
some comments and a little error checking on top of Vadim's earlier
repairs. There are slight mods to the circle data type to have the
distance operator between circles measure the distance between
closest points rather than between centers.
1997-04-25 18:40:50 +00:00
Marc G. Fournier
b8e376ceb9 From: "Pedro J. Lobo" <pjlobo@euitt.upm.es>
Subject: [PATCHES] Patches for compiling 6.1 on Digital Unix 3.2c

Attached to this message are the patches I needed to compile 6.1 cleanly
under Digital Unix 3.2c with DEC cc.

I hope these are the last ones. At least, the number of files needing a
patch has decreased noticeably since I sent my previous patches. Nice work
:-)

One of the patches is a bug fix, but I'm including it here anyway.

With these patches applied, the beast seems to work properly. However,
I've done only some preliminary tests. More on this later (but hopefully
before the April 30 deadline... :-)
1997-04-24 20:30:41 +00:00
Marc G. Fournier
79ee06c186 Fixes:
postgres backend processes end up as so called zombies. It seems that
only Linux a.out (libc.4.6.27) systems are affected.


By:

Wolfgang Roth <roth@statistik.uni-mannheim.de>
1997-04-24 20:27:46 +00:00
Vadim B. Mikheev
67712200f1 * Hack for non-functional btree npages estimation:
* npages = index_pages * selectivity_of_1st_attr_clause(s)
1997-04-24 16:07:14 +00:00
Vadim B. Mikheev
72d271177c Have to copyObject((void*)clauseinfo) for a relation'
joininfo (in add_join_clause_info_to_rels()) : clause may be
commutted later.
1997-04-24 16:04:23 +00:00
Vadim B. Mikheev
e349eb6e2c Bug (yet unfixed but not fatal) found: Re-moving index clauses from the
nestloop's join clauses doesn't work in some cases:
         *    1. fix_indxqual_references may change varattno-s in
         *       inner_indxqual;
         *    2. clauses may be commuted
1997-04-24 15:59:58 +00:00
Vadim B. Mikheev
a1ac1989cf Save Var' order in index_outerjoin_references(). 1997-04-24 15:54:52 +00:00
Vadim B. Mikheev
4ec8a148ed Add innercost to result in cost_hashjoin. 1997-04-24 15:49:30 +00:00
Vadim B. Mikheev
72b523d055 _bt_endpoint fixed: set currentItemData to Invalid if no result. 1997-04-24 15:46:44 +00:00
Vadim B. Mikheev
cd7206b2ab Enable to set _cpu_page_wight_ & _cpu_index_page_wight_ via
SET cost_heap(cost_index) TO ...
1997-04-24 15:41:37 +00:00
Marc G. Fournier
29a31fb7bc -Wno-error should only be enabled for gcc compilers, it seems 1997-04-24 13:25:07 +00:00
Marc G. Fournier
e9f37a7410 Somewhat backwards #ifdef's for HAVE_GETRUSAGE 1997-04-24 03:39:09 +00:00
Marc G. Fournier
08a5901ba1 Various patches not commited, plus a linux/sparc patch from
Satoshi Ishikawa <power@sekine.densi.gifu-u.ac.jp>
1997-04-24 02:35:39 +00:00
Marc G. Fournier
7a7a9b1a04 Change HAVE_RUSAGE to HAVE_GETRUSAGE, which is the more appropriate 1997-04-23 18:02:43 +00:00
Vadim B. Mikheev
3c461c8397 Analyze data only if specified and specified attrs only. 1997-04-23 06:28:48 +00:00
Vadim B. Mikheev
2fac94ec1a 1. SHOW/RESET var fixed.
2. vacuum() call changed (ANALYZE).
1997-04-23 06:09:36 +00:00
Vadim B. Mikheev
24d48db32d 1. SHOW/RESET var fixed.
2. New VACUUM syntax (ANALYZE ...).
1997-04-23 06:04:46 +00:00
Marc G. Fournier
4b5319129c To: Thomas Lockhart <Thomas.G.Lockhart@jpl.nasa.gov>
Subject: Re: [PATCHES] SET DateStyle patches

On Tue, 22 Apr 1997, Thomas Lockhart wrote:

> Some more patches! These (try to) finish implementing SET variable TO value
> for "DateStyle" (changed the name from simply "date" to be more descriptive).
> This is based on code from Martin and Bruce (?), which was easy to modify.
> The syntax is
>
> SET DateStyle TO 'iso'
> SET DateStyle TO 'postgres'
> SET DateStyle TO 'sql'
> SET DateStyle TO 'european'
> SET DateStyle TO 'noneuropean'
> SET DateStyle TO 'us'         (same as "noneuropean")
> SET DateStyle TO 'default'    (current same as "postgres,us")
>
> ("european" is just compared for the first 4 characters, and "noneuropean"
> is compared for the first 7 to allow less typing).
>
> Multiple arguments are allowed, so SET datestyle TO 'sql,euro' is valid.
>
> My mods also try to implement "SHOW variable" and "RESET variable", but
> that part just core dumps at the moment. I would guess that my errors
> are obvious to someone who knows what they are doing with the parser stuff,
> so if someone (Bruce and/or Martin??) could have it do the right thing
> we will have a more complete set of what we need.
>
> Also, I would like to have a floating point precision global variable to
> implement "SET precision TO 10" and perhaps "SET precision TO 10,2" for
> float8 and float4, but I don't know how to do that for integer types rather
> than strings. If someone is fixing the SHOW and RESET code, perhaps they can
> add some hooks for me to do the floats while they are at it.
>
> I've left some remnants of variable structures in the source code which
> I did not use in the interests of getting something working for v6.1.
> We'll have time to clean things up for the next release...
1997-04-23 03:18:27 +00:00
Marc G. Fournier
5514c1fa23 Add fcvt() as a check to configure so that we can get rid of the BSD44_derived
type check in numutils.c:ftoa()

Pointed out by: "Martin J. Laubach" <mjl@emsi.priv.at>
1997-04-22 17:47:42 +00:00
Marc G. Fournier
7c82b2e9c3 From: Thomas Lockhart <Thomas.G.Lockhart@jpl.nasa.gov>
Subject: [PATCHES] date/time timezone patches (mail bounced?)

Here are some hacks to get timezone behavior for the various time
data types to be compatible with v6.0. Although we have some hooks
already installed to get timezone info from the client to the
server, it still isn't clear if that can correctly transfer enough
timezone info to make the behavior the same as if timezone info
were derived from the server as is now the case. We certainly
won't resolve it in a day, so I think we are stuck with server-only
timezones for v6.1.
1997-04-22 17:36:57 +00:00
Marc G. Fournier
9e2a87b62d Major patch from Thomas Lockhart <Thomas.G.Lockhart@jpl.nasa.gov>
OK, here are a passel of patches for the geometric data types.
These add a "circle" data type, new operators and functions
for the existing data types, and change the default formats
for some of the existing types to make them consistant with
each other. Current formatting conventions (e.g. compatible
with v6.0 to allow dump/reload) are supported, but the new
conventions should be an improvement and we can eventually
drop the old conventions entirely.

For example, there are two kinds of paths (connected line segments),
open and closed, and the old format was

'(1,2,1,2,3,4)' for a closed path with two points (1,2) and (3,4)
'(0,2,1,2,3,4)' for an open path with two points (1,2) and (3,4)

Pretty arcane, huh? The new format for paths is

'((1,2),(3,4))' for a closed path with two points (1,2) and (3,4)
'[(1,2),(3,4)]' for an open path with two points (1,2) and (3,4)

For polygons, the old convention is

'(0,4,2,0,4,3)' for a triangle with points at (0,0),(4,4), and (2,3)

and the new convention is

'((0,0),(4,4),(2,3))' for a triangle with points at (0,0),(4,4), and (2,3)

Other data types which are also represented as lists of points
(e.g. boxes, line segments, and polygons) have similar representations
(they surround each point with parens).

For v6.1, any format which can be interpreted as the old style format
is decoded as such; we can remove that backwards compatibility but ugly
convention for v7.0. This will allow dump/reloads from v6.0.

These include some updates to the regression test files to change the test
for creating a data type from "circle" to "widget" to keep the test from
trashing the new builtin circle type.
1997-04-22 17:35:09 +00:00
Vadim B. Mikheev
051b4210e3 Fix for Hash and arrays 1997-04-22 03:32:38 +00:00
Vadim B. Mikheev
9f42a56a02 Fix for text_lt/text_le to avoid warnings if not def USE_LOCALE. 1997-04-21 04:31:53 +00:00
Vadim B. Mikheev
42e72503a1 #include <string.h> 1997-04-21 04:28:59 +00:00
Vadim B. Mikheev
f3054b24c2 Fix for -Wno-error 1997-04-21 04:26:47 +00:00
Marc G. Fournier
85a95b9b0d Here is the Mismatched input/output patch for tintervals as reported over
the last week on Hackers...(A coulpe of clippings of the final
verdict are included below + the diff).

From: Wayde Nie <niew@phoenix.cis.mcmaster.ca>
1997-04-20 21:49:17 +00:00
Vadim B. Mikheev
8466811335 Fix for -Wno-error 1997-04-18 08:57:39 +00:00
Vadim B. Mikheev
d6b8f637f9 CommitInfoNeedsSave[buffer - 1] = 0
added to WriteBuffer(), FlushBuffer(), WriteNoReleaseBuffer().
1997-04-18 08:30:08 +00:00
Vadim B. Mikheev
538f58c04c #ifdef BTREE_BUILD_STATS enables to get executor stats for btree
building.
1997-04-18 03:37:57 +00:00
Vadim B. Mikheev
949ab57c7a Declaration
static const char *num_word(Cash value);
moved here from cash.h
1997-04-18 02:55:54 +00:00
Vadim B. Mikheev
d3dfc664d0 PrintBufferUsage() changed to report about shared, local and direct
blocks transfferes.
1997-04-18 02:53:37 +00:00
Vadim B. Mikheev
55f5354380 Fix bttextcmp() to use unsigned char*.
#ifdef USE_LOCALE added.
1997-04-18 02:48:05 +00:00
Marc G. Fournier
cbaa98835c From: Raymond Toy <toy@rtp.ericsson.se>
Subject: [PATCHES] 970417:  some large object patches


Two patches here, made against 970417.  Both have to do with large
objects:

        1.  lobjfuncs was not initialized in PQconnectdb.  This causes
            failure later if large objects are used.  (Someone already
            caught this error in PQsetdb.)

        2.  Postgres functions lo_import and lo_export sometimes
            produce garbage for the file names because the filename
            strings aren't always terminated by \0.  (VARDATA isn't
            necessarily null terminated.)
1997-04-17 20:39:31 +00:00
Marc G. Fournier
8834795ebf From: Raymond Toy <toy@rtp.ericsson.se>
Subject: [PATCHES] 970417:  two more patches for large objects

Here are two more patches:

        1.  pg_getint doesn't properly set the status flag when
            calling pqGetShort or pqGetLong.  This is required when
            accessing large objects via libpq.  This, combined with
            problem 1 above causes postgres to crash when postgres
            tries to print out the message that the status was not
            good.

        2.  ExceptionalCondition crashes when called with detail =
            NULL.  This patch prevents dereferencing the NULL.
1997-04-17 20:38:26 +00:00
Marc G. Fournier
a1f229b19e From: "Martin J. Laubach" <mjl@CSlab.tuwien.ac.at>
Subject: [HACKERS] Patch: set date to euro/us postgres/iso/sql

  Here a patch that implements a SET date for use by the datetime
stuff. The syntax is

        SET date TO 'val[,val,...]'

  where val is us (us dates), euro (european dates), postgres,
iso or sql.

  Thomas is working on the integration in his datetime module.
I just needed to get the patch out before it went stale :)
1997-04-17 13:50:57 +00:00
Vadim B. Mikheev
a0d63ac98c The patch fixes a rare bug that may occur when one tries to vacuum a single
table. The table name is de-allocated by the CommitTransactionCommand()
in vc_init() before it is copied in VacRel.data and sometimes this causes
a SIGSEGV. My patch simply moves the strcpy before vc_init.

Submitted by Massimo Dal Zotto <dz@cs.unitn.it>.
1997-04-17 01:45:36 +00:00
Vadim B. Mikheev
4d985ea96b StreamConnection(): setsockopt (..., TCP_NODELAY, ...) added. 1997-04-16 06:25:13 +00:00
Vadim B. Mikheev
329fb11262 1. BTREE_VERSION_1: using bti_itup->t_tid as unique identifier for a given
index tuple (logical position within A LEVEL). bti_oid & bti_dummy
taken off from BTItemData.
2. Fix for multi-column indices (nbtsearch.c):
   _bt_binsrch() - for searches on internal pages having keysize <
	number of attrs we point at the last item < the scankey, not at the
	first item = the scankey;
   _bt_moveright() - if keysize < number of attrs we compare scankey with
	_last_ item on current page to decide should we move right or
	not.
1997-04-16 01:48:29 +00:00
Marc G. Fournier
5dcc9bef6e Patch for Solaris 2.5 from: adrian@waltham.harvard.net 1997-04-15 18:18:45 +00:00
Marc G. Fournier
6fd4e2b414 Various minor HP related patches from:
Morten Kjeldgaard <mok@monster.kemi.aau.dk>
1997-04-15 17:55:37 +00:00
Marc G. Fournier
9778b946e5 A small fix, where default: condition in case had not 'break;'...not required,
but, IMHO, cleaner
1997-04-15 17:46:52 +00:00
Marc G. Fournier
88d740462f From: Thomas Lockhart <Thomas.G.Lockhart@jpl.nasa.gov>
Subject: [HACKERS] Money integration patches

Here are patches to integrate the money data type. I have included
some math and aggregate functions and have made the locale support optional
by #ifdef USE_LOCALE bracketing of functions.

Modules affected are:
builtins.h.patch
cash.c.patch
cash.h.patch
main.c.patch
pg_aggregate.h.patch
pg_operator.h.patch
pg_proc.h.patch
pg_type.h.patch

I changed the data type to be pass-by-reference rather than by-value
to pave the way for a larger internal representation (64-bit ints?).
Also, I changed the tabbing of cash.c and cash.h to match most of
the other Postgres source code files (4 space indent, 8 spaces == 1 tab).

The locale stuff should be tested under another convention (Russian?)
but I don't know what the correct results should be so perhaps someone
else can give them a try. Will update docs and regression tests in
the next few days.
1997-04-15 17:41:44 +00:00
Marc G. Fournier
d8a300d867 2. The file /usr/local/pgsql/src/backend/lipq/pgcomprim.c has two
invalid macro definitions, the compiler complains about:

"pqcomprim.c", line 48.9: 1506-275 (S) Unexpected text ';' ignored.
"pqcomprim.c", line 61.9: 1506-275 (S) Unexpected text ';' ignored.

The ';' terminating the macro definition ntoh_s(n) on line 27 and
ntoh_l(n) on line 28 should be removed.


Pointed out by: Olaf Mittelstaedt <MSTAEDT@va-sigi.va.fh-ulm.de>
1997-04-15 17:25:47 +00:00
Marc G. Fournier
953ac7b55a Fix up the -Wno-error problem for non-gcc compilers
Pointed out by many many ppl
1997-04-15 17:24:26 +00:00
Marc G. Fournier
a69c5fc81a Add ccsym to tools to determine OS/compiler specific symbols
Change BSD44_derived to __FreeBSD__ in numutils.c (need to know what
NetBSD is referred to as...someone?)
1997-04-13 17:09:45 +00:00