- 13 4月, 2000 1 次提交
-
-
由 Bruce Momjian 提交于
-
- 12 4月, 2000 2 次提交
-
-
由 Bruce Momjian 提交于
-
由 Bruce Momjian 提交于
-
- 11 4月, 2000 1 次提交
-
-
由 Tom Lane 提交于
whether to do fsync or not, and if so (which should be seldom) just do the fsync immediately. This way we need not build data structures in md.c/fd.c for blind writes.
-
- 09 4月, 2000 1 次提交
-
-
由 Tom Lane 提交于
as a shared dirtybit for each shared buffer. The shared dirtybit still controls writing the buffer, but the local bit controls whether we need to fsync the buffer's file. This arrangement fixes a bug that allowed some required fsyncs to be missed, and should improve performance as well. For more info see my post of same date on pghackers.
-
- 08 4月, 2000 1 次提交
-
-
由 Thomas G. Lockhart 提交于
<a.joubert@albourne.com>.
-
- 07 4月, 2000 1 次提交
-
-
由 Thomas G. Lockhart 提交于
Add a random number generator and seed setter (random(), SET SEED) Fix up the interval*float8 math to carry partial months into the time field. Add float8*interval so we have symmetry in the available math. Fix the parser and define.c to accept SQL92 types as field arguments. Fix the parser to accept SQL92 types for CREATE TYPE, etc. This is necessary to allow... Bit/varbit support in contrib/bit cleaned up to compile and load cleanly. Still needs some work before final release. Implement the "SOME" keyword as a synonym for "ANY" per SQL92. Implement ascii(text), ichar(int4), repeat(text,int4) to help support the ODBC driver. Enable the TRUNCATE() function mapping in the ODBC driver.
-
- 05 4月, 2000 1 次提交
-
-
由 Tom Lane 提交于
would crash, due to premature invocation of SetQuerySnapshot(). Clean up problems with handling of multiple queries by splitting pg_parse_and_plan into two routines. The old code would not, for example, do the right thing with END; SELECT... submitted in one query string when it had been in transaction abort state, because it'd decide to skip planning the SELECT before it had executed the END. New arrangement is simpler and doesn't force caller to plan if only parse+rewrite is needed.
-
- 04 4月, 2000 1 次提交
-
-
由 Tom Lane 提交于
WHERE in a place where it can be part of a nestloop inner indexqual. As the code stood, it put the same physical sub-Plan node into both indxqual and indxqualorig of the IndexScan plan node. That confused later processing in the optimizer (which expected that tracing the subPlan list would visit each subplan node exactly once), and would probably have blown up in the executor if the planner hadn't choked first. Fix by making the 'fixed' indexqual be a complete deep copy of the original indexqual, rather than trying to share nodes below the topmost operator node. This had further ramifications though, because we were making the aforesaid list of sub-Plan nodes during SS_process_sublinks which is run before construction of the 'fixed' indexqual, meaning that the copy of the sub-Plan didn't show up in that list. Fix by rearranging logic so that the sub-Plan list is built by the final set_plan_references pass, not in SS_process_sublinks. This may sound like a mess, but it's actually a good deal cleaner now than it was before, because we are no longer dependent on the assumption that planning will never make a copy of a sub-Plan node.
-
- 31 3月, 2000 1 次提交
-
-
由 Tom Lane 提交于
In the event of an elog() while the mode was set to immediate write, there was no way for it to be set back to the normal delayed write. The mechanism was a waste of space and cycles anyway, since the only user was varsup.c, which could perfectly well call FlushBuffer directly. Now it does just that, and the notion of a write mode is gone.
-
- 30 3月, 2000 1 次提交
-
-
由 Tom Lane 提交于
'#include <string>' work in the local C++ compiler.
-
- 28 3月, 2000 1 次提交
-
-
由 Thomas G. Lockhart 提交于
-
- 25 3月, 2000 1 次提交
-
-
由 Tom Lane 提交于
-
- 24 3月, 2000 2 次提交
-
-
由 Tom Lane 提交于
Clean up grotty coding in them, too. AFAICS from the CVS logs, these have been broken since Postgres95, so I'm not going to insist on an initdb to fix them now...
-
由 Bruce Momjian 提交于
easy (maybe dumb) fix for 5 in attachment define.patch greetings, Andreas
-
- 23 3月, 2000 1 次提交
-
-
由 Tom Lane 提交于
costs using the inner path's parent->rows count as the number of tuples processed per inner scan iteration. This is wrong when we are using an inner indexscan with indexquals based on join clauses, because the rows count in a Relation node reflects the selectivity of the restriction clauses for that rel only. Upshot was that if join clause was very selective, we'd drastically overestimate the true cost of the join. Fix is to calculate correct output-rows estimate for an inner indexscan when the IndexPath node is created and save it in the path node. Change of path node doesn't require initdb, since path nodes don't appear in saved rules.
-
- 21 3月, 2000 1 次提交
-
-
由 Tom Lane 提交于
to simplify constant expressions and expand SubLink nodes into SubPlans is done in a separate routine subquery_planner() that calls union_planner(). We formerly did most of this work in query_planner(), but that's the wrong place because it may never see the real targetlist. Splitting union_planner into two routines also allows us to avoid redundant work when union_planner is invoked recursively for UNION and inheritance cases. Upshot is that it is now possible to do something like select float8(count(*)) / (select count(*) from int4_tbl) from int4_tbl group by f1; which has never worked before.
-
- 20 3月, 2000 3 次提交
-
-
由 Bruce Momjian 提交于
-
由 Bruce Momjian 提交于
-
由 Tom Lane 提交于
Fix inadequate parenthesization in several other macros.
-
- 19 3月, 2000 3 次提交
-
-
由 Tom Lane 提交于
incorrect descriptions of a couple of log-related functions. I will not force an initdb for this, but log() on a numeric won't work until you do one...
-
由 Bruce Momjian 提交于
-
由 Tom Lane 提交于
-
- 17 3月, 2000 2 次提交
- 16 3月, 2000 2 次提交
-
-
由 Tom Lane 提交于
actually a type-coercion problem. If you have a function defined on class A, and class B inherits from A, then the function ought to work on class B as well --- but coerce_type didn't know that. Now it does.
-
由 Tom Lane 提交于
mark query as having subselects if a subselect was added from a rule WHERE condition (as opposed to a rule action). Also, fix adjustment of varlevelsup so that it actually has some prospect of working when inserting an expression containing a subselect into a subquery.
-
- 15 3月, 2000 2 次提交
-
-
由 Tom Lane 提交于
so that the fmgr lookup only has to happen once per index scan and not once per tuple. Seems to save 5% or so of CPU time for an indexscan.
-
由 Thomas G. Lockhart 提交于
Implement TIME WITH TIME ZONE type (timetz internal type). Remap length() for character strings to CHAR_LENGTH() for SQL92 and to remove the ambiguity with geometric length() functions. Keep length() for character strings for backward compatibility. Shrink stored views by removing internal column name list from visible rte. Implement min(), max() for time and timetz data types. Implement conversion of TIME to INTERVAL. Implement abs(), mod(), fac() for the int8 data type. Rename some math functions to generic names: round(), sqrt(), cbrt(), pow(), etc. Rename NUMERIC power() function to pow(). Fix int2 factorial to calculate result in int4. Enhance the Oracle compatibility function translate() to work with string arguments (from Edwin Ramirez). Modify pg_proc system table to remove OID holes.
-
- 09 3月, 2000 1 次提交
-
-
由 Hiroshi Inoue 提交于
They are #ifdef'd. Add -D_DROP_COLUMN_HACK__ compile option to evaluate it.
-
- 08 3月, 2000 1 次提交
-
-
由 Bruce Momjian 提交于
1) adds NetBSD shared lib support on both ELF and a.out platforms 2) replaces "-L$(LIBPQDIR) -lpq" with "$(LIBPQ)" defined in Makefile.global. This makes it much easier to build stuff in the source tree after you've already installed the libraries. 3) adds TEMPLATEDIR in Makefile.global that indicates where the database templates are stored. This separates the template files from real libraries that are installed in $(LIBDIR). 4) changes include order of <readline/readline.h> and <readline.h>. The latest GNU readline installs its headers under a readline subdirectory. In addition to applying the patch below the following files need to be copied: backend/port/dynloader: bsd.h -> netbsd.h bsd.c -> netbsd.c include/port: bsd.h -> netbsd.h makefiles: Makefile.bsd -> Makefile.netbsd It would be great to see this incorporated into the source tree before the 7.0 release is cut. Thanks! -- Johnny C. Lam <lamj@stat.cmu.edu>
-
- 05 3月, 2000 1 次提交
-
-
由 Peter Eisentraut 提交于
Completed psql's \? help
-
- 01 3月, 2000 1 次提交
-
-
由 Tom Lane 提交于
as independent clauses in the grammar. analyze.c takes care of putting the data where it belongs and complaining about invalid combinations. Also, make TEMP (and TEMPORARY) non-reserved words.
-
- 28 2月, 2000 1 次提交
-
-
由 Tom Lane 提交于
-
- 27 2月, 2000 3 次提交
-
-
由 Jan Wieck 提交于
into lztext. Jan
-
由 Tom Lane 提交于
relcache entry's reference count is zero.
-
由 Tom Lane 提交于
such as bpchar(char_expression, N), and pull out the attrtypmod that the function is coercing to. This allows correct deduction of the column type in examples such as CREATE VIEW v AS SELECT f1::char(8) FROM tbl; Formerly we labeled v's column as char-of-unknown-length not char(8). Also, this change causes the parser not to insert a redundant length coercion function if the user has explicitly casted an INSERT or UPDATE expression to the right length.
-
- 26 2月, 2000 1 次提交
-
-
由 Tom Lane 提交于
it's a good idea to choose the directory size based on the expected number of entries. But ShmemInitHash was using a hard-wired constant. Boo hiss. This accounts for recent report of postmaster failure when asking for 64K or more buffers.
-
- 25 2月, 2000 1 次提交
-
-
由 Bruce Momjian 提交于
-
- 24 2月, 2000 1 次提交
-
-
由 Tom Lane 提交于
as a unary minus operator for numeric. Now that long numeric constants will get converted to NUMERIC in early parsing, it's essential to have numeric->int8 conversion to avoid 'can't convert' errors on undecorated int8 constants. Threw in the rest for completeness while I was in the area. I did not force an initdb for this, since the system will still run without the new pg_proc/pg_operator entries. Possibly I should've.
-