- 13 Sep, 1999 1 commit
- 
- 
Tom Lane authoredconditions. There are some pretty bogus heuristics in prepqual.c that try to decide whether to output CNF or DNF format; they need to be replaced, likely. Right now the code is probably too willing to choose DNF form, which might hurt performance in some cases that used to work OK. But at least we have a foundation to build on. 
 
- 
- 12 Sep, 1999 3 commits
- 
- 
Marc G. Fournier authoredMake sure both SRCH_INC and SRCH_LIB are checked for existances and added to the CPPFLAGS/LDFLAGS variables... 
- 
Marc G. Fournier authored
- 
Tom Lane authoredin or_normalize, remove detection of duplicate subexpressions (since it's highly unlikely to be worth the amount of time it takes), and introduce a dnfify() entry point so that unintelligible backwards logic in UNION processing can be eliminated. This is just an intermediate step --- next thing is to look at not forcing the qual into CNF form when it would be better off in DNF form. 
 
- 
- 11 Sep, 1999 4 commits
- 
- 
Tom Lane authoredand pg_server_to_client. Eliminate copy.c's restriction on the length of a single attribute. 
- 
Tom Lane authored
- 
Tom Lane authoredarbitrarily long strings, and frontends should cope gracefully. Goes along with long query and long error message changes... 
- 
Tom Lane authoredThis change seems necessary in conjunction with long queries, and it cleans up some bogosity in connection with long EXPLAIN texts anyway. Note that current libpq will accept any length error message (at least until it runs out of memory); prior versions have a limit of 8K, but will cleanly discard excess error text, so there shouldn't be any big compatibility problems with old clients. 
 
- 
- 10 Sep, 1999 1 commit
- 
- 
Thomas G. Lockhart authored
 
- 
- 09 Sep, 1999 5 commits
- 
- 
Bruce Momjian authored
- 
Tom Lane authoredtransaction abort --- before it only worked if there was exactly one level of allocation context stacked in the blank portal. Now it does the right thing for any depth, including zero... 
- 
Tom Lane authoredexpired messages before concluding that we really have buffer overflow. 
- 
Tom Lane authoredcluttering the log file... 
- 
Tom Lane authoredwas rejecting negative attnums as bogus, which of course they are not. Add code to get_attdisbursion to produce a useful value for OID attribute, since VACUUM does not store stats for system attributes. Also, repair bug that's been in eqjoinsel for a long time: it was taking the max of the two columns' disbursions, whereas it should use the min. 
 
- 
- 08 Sep, 1999 2 commits
- 07 Sep, 1999 5 commits
- 
- 
Tom Lane authoredwhen reach end of pattern before end of text. Improve code comments. 
- 
Tom Lane authored
- 
Bruce Momjian authored
- 
Tom Lane authoredspace consumption in pull_args, and avoid doing the full CNF transform on operands of operator clauses, where it's really not particularly helpful. This answers the TODO item about large numbers of OR clauses, at least partially. I was able to do a ten-thousand-OR-clause query with about 20Mb memory consumption ... it took an obscenely long time, but it worked... 
- 
Tom Lane authoredcorrects flex myinput() routine so that it doesn't assume there is only one bufferload of data. We still have the issue of getting rid of YY_USES_REJECT so that the scanner can cope with tokens larger than its initial buffer size. 
 
- 
- 06 Sep, 1999 6 commits
- 
- 
Tom Lane authoredpsql.c seems clean of query length restrictions now. 
- 
Tom Lane authoredbefore comparison; if fields being joined are different widths then hashing will yield wrong answer. Also, remove hashjoinable mark from all uses of array_eq, because array structures may have padding bytes between elements and the pad bytes are of uncertain content. This could be revisited if array code is cleaned up. Modify opr_sanity regress test to complain if array_eq operator is marked hashjoinable. 
- 
Tom Lane authoredoffended my aesthestic sensibility that there was so much unreadable code doing so little. Rewritten code is about half the size, faster, and (I hope) much more intelligible. 
- 
Tom Lane authoredcurrent transaction) are not flushed by shared-cache-inval reset message. SI reset actually works now, for probably the first time in a long time. I was able to run initdb and regression tests with a 16-element SI message array, with a lot of NOTICE: cache state reset messages but no crashes. 
- 
Tom Lane authoredsystem tables, but actually there are only 6 --- see RelationInitialize. Kinda makes you wonder how long ago this code was last executed... 
- 
Bruce Momjian authored
 
- 
- 05 Sep, 1999 3 commits
- 
- 
Tom Lane authoredautomatically create the file, except during bootstrap mode where that seems to be necessary. 
- 
Tom Lane authoredWe can't support these properly, since once the relation's physical files are unlinked, there's no way to roll back the transaction. I suppose we could postpone the unlink till transaction commit, but then what of BEGIN; DROP TABLE foo; CREATE TABLE foo; ? The code does allow dropping a table/index created in the current transaction block, however, since the post-abort state would be that the table doesn't exist anyway. 
- 
Tom Lane authored
 
- 
- 04 Sep, 1999 8 commits
- 
- 
Bruce Momjian authored
- 
Bruce Momjian authored
- 
Tom Lane authoredreal name before doing lookup. We only want to index temp tables by their real names in the relcache, to ensure there's not more than one relcache entry for them. 
- 
Tom Lane authoredto be deleted. 
- 
Tom Lane authoredpg_class tuple during ALTER TABLE ADD COLUMN. 
- 
Bruce Momjian authored
- 
Tom Lane authoredhas positive refcount, it is rebuilt from pg_class data. This ensures that relcache entries will track changes made by other backends. Formerly, a shared inval report would just be ignored if it happened to arrive while the relcache entry was in use. Also, fix relcache to reset ref counts to zero during transaction abort. Finally, change LockRelation() so that it checks for shared inval reports after obtaining the lock. In this way, once any kind of lock has been obtained on a rel, we can trust the relcache entry to be up-to-date. 
- 
Tom Lane authoredthe SInval spinlock while it is calling the passed invalFunction or resetFunction. This is necessary to avoid deadlock with lmgr change; InvalidateSharedInvalid can be called recursively now. It should be a good performance improvement anyway --- holding a spinlock for more than a very short interval is a no-no. 
 
- 
- 03 Sep, 1999 2 commits
- 
- 
Thomas G. Lockhart authoredistm that this would be a job for configure. Most modern OSes actually use perl5 by default ;) 
- 
Byron Nikolaidis authored
 
-