- 26 Aug, 1996 3 commits
-
-
Marc G. Fournier authored
-
Marc G. Fournier authored
submitted by: Dan McGuirk
-
Marc G. Fournier authored
-
- 24 Aug, 1996 3 commits
-
-
Marc G. Fournier authored
In a catalog class that has a "name" type attribute, UPDATEing of an instance of that class may destroy all of the attributes of that instance that are stored as or after the "name" attribute. This is caused by the alignment value of the "name" type being set to "double" in Class pg_type, but "integer" in Class pg_attribute. Postgres constructs a tuple using double alignment, but interprets it using integer alignment. The fix is to change the alignment to integer in pg_type. Note that this corrects the problem for new Postgres systems. Existing databases already contain the error and it can't easily be repaired because this very bug prevents updating the class that contains it. -- Bryan Henderson Phone 408-227-6803 San Jose, California
-
Marc G. Fournier authored
It adds a WITH OIDS option to the copy command, which allows dumping and loading of oids. If a copy command tried to load in an oid that is greater than its current system max oid, the system max oid is incremented. No checking is done to see if other backends are running and have cached oids. pg_dump as its first step when using the -o (oid) option, will copy in a dummy row to set the system max oid value so as rows are loaded in, they are certain to be lower than the system oid. pg_dump now creates indexes at the end to speed loading Submitted by: Bruce Momjian <maillist@candle.pha.pa.us>
-
Marc G. Fournier authored
This presumably corrects a problem of initdb failing on systems that have an awk that is sensitive to this. -- Bryan Henderson Phone 408-227-6803 San Jose, California
-
- 21 Aug, 1996 7 commits
-
-
Marc G. Fournier authored
|record, by a small patch to libpq++? At least until the |feature that will allow dumped oid's to be re-loaded into |a database becomes available, I need access to the oids |of newly created records... To this end, I have written a |three-line wrapper for the PQoidStatus function in libpq and |named this wrapper OidStatus() (I'd appreciate suggestions for |a name that would better fit into the general naming scheme). | |Regards, | |Ernst |
-
Marc G. Fournier authored
When you try to do any UPDATE of the catalog class pg_class, such as to change ownership of a class, the backend crashes. This is really two serial bugs: 1) there is a hardcoded copy of the schema of pg_class in the postgres program, and it doesn't match the actual class that initdb creates in the database; 2) Parts of postgres determine whether to pass an attribute value by value or by reference based on the attbyval attribute of the attribute in class pg_attribute. Other parts of postgres have it hardcoded. For the relacl[] attribute in class pg_class, attbyval does not match the hardcoded expectation. The fix is to correct the hardcoded schema for pg_attribute and to change the fetchatt macro so it ignores attbyval for all variable length attributes. The fix also adds a bunch of logic documentation and extends genbki.sh so it allows source files to contain such documentation. -- Bryan Henderson Phone 408-227-6803 San Jose, California
-
Marc G. Fournier authored
-
Marc G. Fournier authored
-
Marc G. Fournier authored
-
Marc G. Fournier authored
-
Julian Assange authored
-
- 20 Aug, 1996 1 commit
-
-
Marc G. Fournier authored
-
- 19 Aug, 1996 8 commits
-
-
Marc G. Fournier authored
-
Marc G. Fournier authored
```yaml below my signature, there are a coupls of diffs and files in a shell archive, which were needed to build postgres95 1.02 on Siemens Nixdorfs MIPS based SINIX systems. Except for the compiler switches "-W0" and "-LD-Blargedynsym" these diffs should also apply for other SVR4 based systems. The changes in "Makefile.global" and "genbki.sh" can probably be ignored (I needed gawk, to make the script run). There is one bugfix thou. In "src/backend/parser/sysfunc.c" the function in this file didn't honor the EUROPEAN_DATES ifdef. ``` Submitted by: Frank Ridderbusch <ridderbusch.pad@sni.de>
-
Marc G. Fournier authored
-Kurt
-
Marc G. Fournier authored
-Kurt
-
Marc G. Fournier authored
Here's a couple more small fixes that I've made to make my runtime checker happy with the code. More along the lines of those that I sent in the past, ie, a pointer to an array != the name of an array. The last patch is that I mailed about yesterday -- I got two replies of "do it", so it's done. As far as I can tell, however, the function in question is never called by pg95, so either way it can't hurt... From: "Kurt J. Lidl" <lidl@va.pubnix.com>
-
Marc G. Fournier authored
When you connect to a database with PQsetdb, as with psql, depending on how your uninitialized variables are set, you can get a failure with a "There is no connection to the backend" message. The fix is to move a call to PQexec() from inside connectDB() to PQsetdb() after connectDB() returns to PQsetdb(). That way a connection doesn't have to be already established in order to establish it! From: bryanh@giraffe.netgate.net (Bryan Henderson)
-
Marc G. Fournier authored
fixed the spelling of 'nonexistent' in a few places...
-
Marc G. Fournier authored
| |This patch fixes a backend crash that happens sometimes when you try to |join on a field that contains NULL in some rows. Postgres tries to |compute a hash value of the field you're joining on, but when the field |is NULL, the pointer it thinks is pointing to the data is really just |pointing to random memory. This forces the hash value of NULL to be 0. | |It seems that nothing matches NULL on joins, even other NULL's (with or |without this patch). Is that what's supposed to happen? |
-
- 18 Aug, 1996 1 commit
-
-
Marc G. Fournier authored
-
- 17 Aug, 1996 1 commit
-
-
Marc G. Fournier authored
Found/submittd by David Bennett
-
- 15 Aug, 1996 3 commits
-
-
Marc G. Fournier authored
Submitted by: Dan McGuirk <mcguirk@indirect.com>
-
Marc G. Fournier authored
CLUSTER command couldn't rename correctly the new created heap relation. The table base name resulted in some "temp_XXXX" instead of the correct base name. Submitted by: Dirk Koeser <koeser@informatik.uni-rostock.de>
-
Marc G. Fournier authored
Postgres is not able to cluster a relation on which an rtree index is defined. Postmaster gives the following error message: Too Large Allocation Request("!(0 < (size) && (size) <= (0xfffffff)):size=0 [0x0]", File:"/export/home/postgres/src/backend/utils/mmgr/mcxt.c", Line: 220) !(0 <(size) && (size) <= (0xfffffff)) (0) [No such file or directory] Submitted by: Dirk Koeser <koeser@informatik.uni-rostock.de>
-
- 14 Aug, 1996 8 commits
-
-
Marc G. Fournier authored
|Here is a fix for the psql alignment problem. It turns out that libpq |was trying to determine if the column contained only numeric values so |it could right justify it. The 'e' values were taked as exponient |values and all columns were considered numeric. | |The patch excludes 'e' and 'E' as being valid first-column numeric |values. | Submitted by: Bruce...
-
Marc G. Fournier authored
pg_dump and load to 2.0. I haven't gotten any feedback on whether people want it, so I am submitting it for others to decide. I would recommend an install in 1.02.1. I had said that the 2.0 pg_dump could dump a 1.02.1 database, but I was wrong. The copy is actually performed by the backend, and the 2.0 database will not be able to read 1.02.1 databases because of the new system columns. This patch does several things. It copies nulls out as \N, so they can be distinguished from '' strings. It fixes a problem where backslashes in the input stream were not output as double-backslashes. Without this patch, backslashes copied out were deleted upon input, or interpreted as special characters. Third, input is now terminated by backslash-period. This can not be part of a normal input stream. I tested this by creating a database with all sorts of nulls, backslash, and period fields and dumped the database and reloaded into a new database and compared them. Submitted by: Bruce
-
Marc G. Fournier authored
pg_dump and load to 2.0. I haven't gotten any feedback on whether people want it, so I am submitting it for others to decide. I would recommend an install in 1.02.1. I had said that the 2.0 pg_dump could dump a 1.02.1 database, but I was wrong. The copy is actually performed by the backend, and the 2.0 database will not be able to read 1.02.1 databases because of the new system columns. This patch does several things. It copies nulls out as \N, so they can be distinguished from '' strings. It fixes a problem where backslashes in the input stream were not output as double-backslashes. Without this patch, backslashes copied out were deleted upon input, or interpreted as special characters. Third, input is now terminated by backslash-period. This can not be part of a normal input stream. I tested this by creating a database with all sorts of nulls, backslash, and period fields and dumped the database and reloaded into a new database and compared them. Submitted by: Bruce
-
Marc G. Fournier authored
and found out that one of the patches is a show stopper for compiling under a strict ansi package. Please make sure the following fix makes it into the 1.02.1 release... Thanks. -Kurt
-
Marc G. Fournier authored
getting semaphore or shared memory errors. Submitted by: bryanh@giraffe.netgate.net (Bryan Henderson)
-
Marc G. Fournier authored
|We're all too familiar with psql's "no response from backend" message. |Users can't tell what this means, and psql continues prompting for |commands after it even though the backend is dead and no commands can |succeed. It eventually dies on a signal when the dead socket fills |up. I extended the message to offer a better explanation and made |psql exit when it finds the backend is dead. | |I also added a short message and newline when the user does a ctl-D so |it doesn't mess up the terminal display. | | Submitted by: Bryan Henderson <bryanh@giraffe.netgate.net>
-
Marc G. Fournier authored
don't indicate that the libpq.a library is a dependency of all the /bin programs. So if the library changes, the /bin programs don't get remade. Submitted by: Bryan Henderson <bryanh@giraffe.netgate.net>
-
Marc G. Fournier authored
directory. The code that looks for the pg_hba file doesn't use it, though, so the postmaster uses the wrong pg_hba file. Also, when the postmaster looks in one directory and the user thinks it is looking in another directory, the error messages don't give enough information to solve the problem. I extended the error message for this. Submitted by: Bryan Henderson <bryanh@giraffe.netgate.net>
-
- 13 Aug, 1996 5 commits
-
-
Marc G. Fournier authored
does 2 things: 1) Make it hard to not notice the make failed. (As you recall, someone on the mailing list had this problem. I've had it to some extent myself). The 1.02 make files continue with the next subdirectory when a make in a subdirectory fails. The patch makes the make stop in the conventional way when a submake fails. It also adds a reassuring message when the make succeeds and adds a note to the INSTALL file to expect it. 2) Include loader flags on all invocations of the linker. The 1.02 make files omit the $(LDFLAGS) on some of the linker invocations. On my system, I need one of those flags just to make it invoke the proper version of the compiler/linker, so LDFLAGS has to be everywhere. Submitted by: Bryan Henderson <bryanh@giraffe.netgate.net>
-
Marc G. Fournier authored
Submitted by: darcy@druid.druid.com (D'Arcy J.M. Cain)
-
Marc G. Fournier authored
Attached is a patch to allow libpq to determine if a field is null. This is needed because text fields will return a PQgetlength() of 0 whether it is '' or NULL. There is even a comment in the source noting the fact. I have changed the value of the 'len' field for NULL result fields. If the field is null, the len is set to -1 (NULL_LEN). I have changed PQgetlength() to return a 0 length for both '' and NULL. A new function PQgetisnull() returns true or false for NULL. The only risk is to applications that do not use the suggested PQgetlength() call, but read the result 'len' field directly. As this is not recommended, I think we are safe here. A separate documentation patch will be sent. Submitted by: Bruce Momjian <maillist@candle.pha.pa.us>
-
Marc G. Fournier authored
Submitted by: Andrew Martin <martin@biochemistry.ucl.ac.uk>
-
Marc G. Fournier authored
Here's a small patch that my run-time checker whines about incessantly. The justification for the patch is along the lines of passing a NULL is allowed if you have an arguement that is a *POINTER* to something, but if the arguement is an array reference, it's not really a "pointer", so it can't be NULL. If you question this, I refer you to <URL:http://www.va.pubnix.com/staff/djm/lore/arrays-are-not-pointers> Anyways, here's the patch: -Kurt Submitted by: "Kurt J. Lidl" <lidl@va.pubnix.com>
-