1
0
mirror of https://github.com/postgres/postgres.git synced 2025-07-07 00:36:50 +03:00
Commit Graph

23613 Commits

Author SHA1 Message Date
8962ec4bc4 flowchart update 1998-08-05 19:14:23 +00:00
4f4953152d flowchart update 1998-08-05 19:01:58 +00:00
7260ad7fd9 Fix for \d index display. 1998-08-05 16:23:40 +00:00
a1627a1d64 From: David Hartwig <daybee@bellatlantic.net>
I have attached a patch to allow GROUP BY and/or ORDER BY function or
expressions.  Note worthy items:

1. The expression or function need not be in the target list.
Example:
            SELECT  name FROM foo GROUP BY lower(name);

2.   Simplified the grammar to use expressions only.

3.  Cleaned up earlier patch in this area to make use of existing
utility functions.

3.  Reduced some of the members in the SortGroupBy parse node.   The
original data members were redundant with the new expression node.
(MUST do a "make clean" now)

4.  Added a new parse node "JoinUsing".   The JOIN USING clause was
overloading this SortGroupBy structure.   With the afore mentioned
reduction of members, the two clauses lost all their commonality.

5.  A bug still exist where, if a function or expression is GROUPed BY,
and an aggregate function does not include a attribute from the
expression or function, the backend crashes.   (or something like
that)   The bug pre-dates this patch.    Example:

    SELECT lower(a) AS lowcase, count(b) FROM foo GROUP BY lowcase;
                 *** BOOM  ***

    --Also when not in target list
    SELECT  count(b) FROM foo GROUP BY lower(a);
                *** BOOM  AGAIN ***
1998-08-05 04:49:19 +00:00
186aeb1d67 From: Dr. Michael Meskes <meskes@online-club.de>
So this should finally get cursors working. There was an ugly bug in it.
1998-08-05 04:47:54 +00:00
1c9a125096 OR processing cleanup. 1998-08-04 18:42:39 +00:00
f26e1d39be Add Indices display to \d command. 1998-08-04 18:29:41 +00:00
0b44238841 Fix encoding grammer problem. 1998-08-04 17:37:48 +00:00
d9be0ff432 MergeSort was sometimes called mergejoin and was confusing. Now
it is now only mergejoin.
1998-08-04 16:44:31 +00:00
7db9ea5c1e EXPLAIN VERBOSE prints the plan, and now pretty-prints the plan to
the postmaster log file.
1998-08-04 15:00:28 +00:00
f71b671bd5 Make EXPLAIN show output more clearly. 1998-08-04 04:50:15 +00:00
c8b42a6151 Update flow chart. 1998-08-04 00:42:14 +00:00
439a2af0bc Update mark/reset index code for multiple indexes, (OR code).
Thanks for Vadim for fixes.
1998-08-03 19:41:35 +00:00
21ad8695ca Fix typo in man pages. 1998-08-03 05:54:30 +00:00
b88e9784b6 Cleanup of OR processing. 1998-08-03 05:49:24 +00:00
7665e7b0a8 Allows the following query to succeed: "SELECT NULL ORDER BY 1;"
There are three or four cases in transformSortClause() and I had fixed
only one case for UNION. A second case is now fixed, in the same way; I
assigned INT4OID to the column type for the "won't actually happen"
sort. Didn't want to skip the code entirely, since the backend needs to
_try_ a sort to get the NULLs right. I'm not certain under what
circumstances the other cases are invoked and these are not yet
fixed up, though perhaps they don't need to be...
1998-08-02 13:34:26 +00:00
39844ac2c3 Fix for OR handling with multiple indexes. 1998-08-02 07:10:38 +00:00
34aecb3557 run autoconf 1998-08-02 00:34:05 +00:00
b942928bd1 Fix MULTIBYTE typo. 1998-08-02 00:21:39 +00:00
77cce4e278 Fix duplicate inside initdb.sh 1998-08-01 22:57:41 +00:00
2c6b370e64 Cleanup of OR fix. 1998-08-01 22:44:55 +00:00
0a2e5cdfc9 Allow index use with OR clauses. 1998-08-01 22:12:13 +00:00
0668aa8817 Adrian Hall reported a problem to me that snprintf() doesn't exist in, at
least, Solaris 2.5.1.  We use it in backend/utils/adt/int8.c.

Add a check to configure so that we see if it exists or not, and, if not,
compile in snprintf.c from backend/port, which was taken from, and falls under
the same Berkeley license as us, the FreeBSD libc/stdio ...
1998-08-01 19:30:29 +00:00
0d78e8c112 Lmgr cleanup, new locking modes for LLL. 1998-08-01 15:26:38 +00:00
83d3626b1f Matching clauses to functional indices was broken, now fixed. 1998-07-31 15:10:40 +00:00
f73fc6eb29 Fix scan adjustment. 1998-07-30 05:05:05 +00:00
be8300b18f Use Snapshot in heap access methods. 1998-07-27 19:38:40 +00:00
f7f989c990 Missed a few files in the last round of commits from Tatsuo, as well
as needed to run autoconf ...
1998-07-27 03:21:58 +00:00
5979d73841 From: t-ishii@sra.co.jp
As Bruce mentioned, this is due to the conflict among changes we made.
Included patches should fix the problem(I changed all MB to
MULTIBYTE). Please let me know if you have further problem.

P.S. I did not include pathces to configure and gram.c to save the
file size(configure.in and gram.y modified).
1998-07-26 04:31:41 +00:00
74b30a3a1f I missed addding initdb.sh ... 1998-07-26 04:22:42 +00:00
e05aa52a55 Update flowchart. Add arrow. 1998-07-26 02:17:55 +00:00
01a651aaf9 Fix compile error. Make transaction/work optional on all transaction
statements.  More cleanups of psql help.  Fix for shift/reduce on
UNION in subselect.
1998-07-26 01:18:09 +00:00
d8d0aa019b Update psql help syntax to remove <> and uppercaese keywords. 1998-07-25 00:17:30 +00:00
8e2647a145 Add mention of actual SQL command to create*/destroy* commands. 1998-07-24 16:44:04 +00:00
22616fdc5d Add mention of SQL commands to create/destroy man pages. 1998-07-24 16:36:56 +00:00
253a294e9f Add mention of psql and template1 to create*, destroy* command
manual pages.
1998-07-24 16:10:19 +00:00
809fc91fdd Fix HAVING patch missing cast. 1998-07-24 15:54:10 +00:00
128d827d4b I'm sorry, but I think I introduced a little bug with my last patch.
Everyone using an [NOT] EXISTS subquery will have noticed that
already.

The bug is in "subselect.c" in the function "SS_process_sublinks()".

Here the whole function as it *SHOULD BE*:

Stephan
1998-07-24 04:03:10 +00:00
bf00bbb0c4 I really hope that I haven't missed anything in this one...
From: t-ishii@sra.co.jp

Attached are patches to enhance the multi-byte support.  (patches are
against 7/18 snapshot)

* determine encoding at initdb/createdb rather than compile time

Now initdb/createdb has an option to specify the encoding. Also, I
modified the syntax of CREATE DATABASE to accept encoding option. See
README.mb for more details.

For this purpose I have added new column "encoding" to pg_database.
Also pg_attribute and pg_class are changed to catch up the
modification to pg_database.  Actually I haved added pg_database_mb.h,
pg_attribute_mb.h and pg_class_mb.h. These are used only when MB is
enabled. The reason having separate files is I couldn't find a way to
use ifdef or whatever in those files. I have to admit it looks
ugly. No way.

* support for PGCLIENTENCODING when issuing COPY command

commands/copy.c modified.

* support for SQL92 syntax "SET NAMES"

See gram.y.

* support for LATIN2-5
* add UNICODE regression test case
* new test suite for MB

New directory test/mb added.

* clean up source files

Basic idea is to have MB's own subdirectory for easier maintenance.
These are include/mb and backend/utils/mb.
1998-07-24 03:32:46 +00:00
6e66468f3a Version 06-30-0248 1998-07-22 23:47:48 +00:00
2a67742412 Fix _lo_commit: core if LO memmory context was not created (LO were not used?) 1998-07-22 05:48:59 +00:00
5afe171443 VariableCache (next XID generator) is placed in shmem. 1998-07-21 06:17:39 +00:00
224a62c5b7 Update. 1998-07-21 04:48:31 +00:00
7f61f8a71f Update. 1998-07-21 04:19:44 +00:00
e0058b6172 Theses buffer leaks are caused by indexes that are kept open between
calls. Outside a transaction, the backend detects them as buffer
leaks; it sends a NOTICE, and frees them. This sometimes cause a
segmentation fault (at least on Linux). These indexes are initialized
on the first lo_read/lo_write/lo_tell call, and (normally) closed
on a lo_close call.  Thus the buffer leaks appear when lo direct
access functions are used, and not with lo_import/lo_export functions
(libpq version calls lo_close before ending the command, and the
backend version uses another path).

The included patches (against recent snapshot, and against 6.3.2)
cause indexes to be closed on transaction end (that is on explicit
'END' statment, or on command termination outside trasaction blocks),
thus preventing the buffer leaks while increasing performance inside
transactions. Some (all?) 'classic' memory leaks are also removed.

I hope it will be ok.

--- Pascal ANDRE, graduated from Ecole Centrale Paris andre@via.ecp.fr
1998-07-21 04:17:30 +00:00
7702d7aa4b target list fixes. 1998-07-20 21:18:35 +00:00
1d00134be4 makeTargetEntry cleanup. 1998-07-20 20:48:54 +00:00
61700b4089 Makefile removal of internal.c. 1998-07-20 20:01:48 +00:00
3dd2eabc53 Cleanup makeTargetEntry and remove internal.c. 1998-07-20 19:53:53 +00:00
97ac8f7ffc Use defines rather than constants for types. 1998-07-20 19:21:45 +00:00