Project

General

Profile

# Date Author Comment
12432 02/25/2014 09:55 AM Aaron Marcuse-Kubitza

bugfix: schemas/util.sql: mk_set_search_path(): debug_print_return_value() needs to be on mk_set_search_path(text), not mk_search_path(VARIADIC text[])

12431 02/25/2014 09:45 AM Aaron Marcuse-Kubitza

schemas/util.sql: mk_search_path(): use debug_print_return_value() because this function is used with EXECUTE rather than util.eval() (in order to affect the calling function), so the search_path would not otherwise be printed

12430 02/25/2014 09:39 AM Aaron Marcuse-Kubitza

schemas/util.sql: added debug_print_return_value()

12429 02/25/2014 09:34 AM Aaron Marcuse-Kubitza

schemas/util.sql: diff(text, text): support custom search_path because custom %== operators are usually not in the util schema

12428 02/25/2014 09:28 AM Aaron Marcuse-Kubitza

schemas/util.sql: diff(text, text): renamed IN params to be different from OUT params to support LANGUAGE plpgsql

12427 02/25/2014 09:04 AM Aaron Marcuse-Kubitza

bugfix: schemas/util.sql: diff(*): changed from STABLE to VOLATILE because these functions create tables

12424 02/25/2014 07:42 AM Aaron Marcuse-Kubitza

bugfix: schemas/util.sql: diff(text, text) and types that use its custom FULL JOIN matching: need to use separate operator %== for determining which records to put on the same row, so that the = filter for identical rows only excludes rows that are actually the same, not all rows with the same keys (which would usually remove all rows)

12423 02/25/2014 07:21 AM Aaron Marcuse-Kubitza

schemas/util.sql: added operator %== , which returns whether the map-keys of the compared values are the same

12420 02/25/2014 12:16 AM Aaron Marcuse-Kubitza

schemas/util.sql: diff(): support custom = operator for the table type (to FULL JOIN on only some columns). this requires casting to the base type, to avoid an ambiguity with the default = operator for record.

12419 02/24/2014 11:18 PM Aaron Marcuse-Kubitza

schemas/util.sql: remake_diff_table(): use util.quote_typed() instead of hardcoding the type

12413 02/24/2014 04:43 PM Aaron Marcuse-Kubitza

schemas/util.sql: added drop_relations_like()

12385 02/23/2014 07:23 PM Aaron Marcuse-Kubitza

schemas/util.sql: show_views_like(): take a schema regexp like util.show_relations_like(), to allow matching views in all schemas

12384 02/23/2014 07:19 PM Aaron Marcuse-Kubitza

schemas/util.sql: added str_equality_regexp(literal text)

12382 02/23/2014 06:50 PM Aaron Marcuse-Kubitza

schemas/util.sql: util.remake_diff_table(): don't force-re-create type_table. this allows type_table to be shared between multiple diff tables.

12378 02/23/2014 05:08 PM Aaron Marcuse-Kubitza

schemas/util.sql: added curr_func(func text, schema_anchor anyelement)

12377 02/23/2014 03:50 PM Aaron Marcuse-Kubitza

schemas/util.sql: removed unneeded regproc(regprocedure), regprocedure(regproc) because these can actually be directly cast to one another, not just via oid

12376 02/23/2014 03:47 PM Aaron Marcuse-Kubitza

schemas/util.sql: added quote_func_call()

12375 02/23/2014 03:22 PM Aaron Marcuse-Kubitza

schemas/util.sql: added regprocedure(text)

12374 02/23/2014 03:11 PM Aaron Marcuse-Kubitza

schemas/util.sql: func2regproc*(): removed func2* so that this has the format of a cast function (which it is)

12373 02/23/2014 03:10 PM Aaron Marcuse-Kubitza

schemas/util.sql: added func2regproc(regprocedure)

12372 02/23/2014 03:08 PM Aaron Marcuse-Kubitza

schemas/util.sql: added func2regprocedure(regproc)

12371 02/23/2014 02:51 PM Aaron Marcuse-Kubitza

schemas/util.sql: added quote_typed()

12370 02/23/2014 01:30 PM Aaron Marcuse-Kubitza

schemas/util.sql: remake_diff_table(): use util.append_comment() instead of util.set_comment() to allow other functions to add comments to the diff table

12369 02/23/2014 01:18 PM Aaron Marcuse-Kubitza

schemas/util.sql: added append_comment(regclass)

12368 02/23/2014 01:00 PM Aaron Marcuse-Kubitza

schemas/util.sql: added comment(oid)

12364 02/23/2014 12:03 PM Aaron Marcuse-Kubitza

fix: schemas/util.sql: drop_relation(text), rename_relation(text, text): appended _esc to params that should be passed in escaped, and _name to those that shouldn't

12363 02/23/2014 12:00 PM Aaron Marcuse-Kubitza

bugfix: schemas/util.sql: rename_relation(): need quote_ident() around to_

12362 02/23/2014 11:39 AM Aaron Marcuse-Kubitza

bugfix: schemas/util.sql: truncated_prefixed_name_regexp(): need to match the entire string, so that the regexp can be used with util.replace_suffix()

12361 02/23/2014 11:37 AM Aaron Marcuse-Kubitza

bugfix: schemas/util.sql: truncated_prefixed_name_regexp(): need to pass max_prefix_len to util.name_was_truncated() because although the name itself might not have been truncated, it might become truncated once prefixed

12360 02/23/2014 11:32 AM Aaron Marcuse-Kubitza

schemas/util.sql: name_was_truncated(): support max_prefix_len param to determine truncation of something that will be prefixed

12359 02/23/2014 11:22 AM Aaron Marcuse-Kubitza

fix: name_was_truncated(): should use util.namedatalen() instead of hardcoding the value

12358 02/22/2014 08:35 PM Aaron Marcuse-Kubitza

schemas/util.sql: replace_suffix(): support strings that have been truncated (eg. as a table name) due to the prepending of a prefix

12357 02/22/2014 08:32 PM Aaron Marcuse-Kubitza

schemas/util.sql: added truncated_prefixed_name_regexp()

12356 02/22/2014 08:12 PM Aaron Marcuse-Kubitza

schemas/util.sql: added rtrim_n()

12355 02/22/2014 07:58 PM Aaron Marcuse-Kubitza

schemas/util.sql: added name_was_truncated()

12354 02/22/2014 07:56 PM Aaron Marcuse-Kubitza

schemas/util.sql: added namedatalen()

12353 02/22/2014 07:21 PM Aaron Marcuse-Kubitza

schemas/util.sql: drop_relation(regclass), rename_relation(regclass): use util.qual_name() instead of ::text so that the schema qualifier is always included in the debug SQL

12350 02/22/2014 07:11 PM Aaron Marcuse-Kubitza

schemas/util.sql: added replace_suffix()

12349 02/22/2014 06:47 PM Aaron Marcuse-Kubitza

schemas/util.sql: added rename_relation(regclass/text, text)

12348 02/22/2014 06:23 PM Aaron Marcuse-Kubitza

fix: schemas/util.sql: drop_relation(): documented that it is actually not idempotent, because the regclass will not be valid after the relation is dropped

12347 02/22/2014 06:21 PM Aaron Marcuse-Kubitza

schemas/util.sql: drop_relation(relation text, type text): put type param first because it is usually constant

12346 02/22/2014 06:12 PM Aaron Marcuse-Kubitza

schemas/util.sql: drop_table(), drop_view(): use drop_relation(relation text, type text)

12345 02/22/2014 06:10 PM Aaron Marcuse-Kubitza

schemas/util.sql: drop_relation(regclass): use simpler drop_relation(relation text, type text)

12344 02/22/2014 06:06 PM Aaron Marcuse-Kubitza

schemas/util.sql: added relation_type(regclass)

12343 02/22/2014 06:04 PM Aaron Marcuse-Kubitza

schemas/util.sql: added drop_relation(relation text, type text)

12342 02/22/2014 06:01 PM Aaron Marcuse-Kubitza

bugfix: schemas/util.sql: drop_relation(): need to pass force param to util.drop_*()

12341 02/22/2014 05:50 PM Aaron Marcuse-Kubitza

schemas/util.sql: added relation_type_char(regclass)

12340 02/22/2014 05:50 PM Aaron Marcuse-Kubitza

bugfix: schemas/util.sql: relation_type(character): must use "char" type for single character, as character actually allows multiple characters. corrected return type.

12339 02/22/2014 05:47 PM Aaron Marcuse-Kubitza

schemas/util.sql: added relation_type(character)

12334 02/22/2014 03:35 PM Aaron Marcuse-Kubitza

schemas/util.sql: schema_matches(): should be IMMUTABLE, not STABLE, because it uses only parameter values

12333 02/22/2014 03:24 PM Aaron Marcuse-Kubitza

schemas/util.sql: added regexp_quote()

12332 02/22/2014 03:18 PM Aaron Marcuse-Kubitza

fix: schemas/util.sql: is_table(), is_view(): should be STABLE, not IMMUTABLE, because they reference tables

12331 02/22/2014 02:50 PM Aaron Marcuse-Kubitza

schemas/util.sql: added drop_relation()

12330 02/22/2014 02:41 PM Aaron Marcuse-Kubitza

schemas/util.sql: added is_table()

12329 02/22/2014 02:39 PM Aaron Marcuse-Kubitza

schemas/util.sql: added is_view()

12328 02/22/2014 02:23 PM Aaron Marcuse-Kubitza

bugfix: schemas/util.sql: show_views_like(): need to match the schema exactly, not via regexp like util.show_relations_like() does

12327 02/22/2014 02:14 PM Aaron Marcuse-Kubitza

schemas/util.sql: show_views_like(): use util.show_relations_like()

12326 02/22/2014 02:03 PM Aaron Marcuse-Kubitza

schemas/util.sql: show_views_like(): reversed argument order to match show_relations_like()

12325 02/22/2014 12:32 PM Aaron Marcuse-Kubitza

schemas/util.sql: added show_relations_like()

12324 02/22/2014 12:21 PM Aaron Marcuse-Kubitza

schemas/util.sql: added schema_matches()

12321 02/20/2014 07:12 PM Aaron Marcuse-Kubitza

schemas/util.sql: materialize_query(): ANALYZE the created table so that it has the correct estimated rowcount

12320 02/20/2014 07:08 PM Aaron Marcuse-Kubitza

schemas/util.sql: added analyze_()

12311 02/20/2014 08:41 AM Aaron Marcuse-Kubitza

schemas/util.sql: added raise_error_notice()

12308 02/18/2014 05:37 AM Aaron Marcuse-Kubitza

bugfix: schemas/util.sql: diff(text, text): also need to include only different rows when comparing single-row tables

12306 02/17/2014 08:59 PM Aaron Marcuse-Kubitza

schemas/util.sql: show_views_like(): added predictable ordering

12305 02/17/2014 08:54 PM Aaron Marcuse-Kubitza

schemas/util.sql: added show_views_like()

12304 02/17/2014 08:27 PM Aaron Marcuse-Kubitza

schemas/util.sql: added schema_oid()

12303 02/17/2014 06:45 PM Aaron Marcuse-Kubitza

schemas/util.sql: remake_diff_table(): add comment on the diff table showing how to view it in human-readable form. (the table unfortunately cannot be materialized in human-readable form, because this would create column name collisions between the two sides.)

12302 02/17/2014 06:38 PM Aaron Marcuse-Kubitza

schemas/util.sql: added set_comment()

12301 02/17/2014 06:25 PM Aaron Marcuse-Kubitza

schemas/util.sql: added eval2records()

12300 02/17/2014 05:48 PM Aaron Marcuse-Kubitza

fix: schemas/util.sql: diff(regclass, regclass): display single row tables side-by-side

12299 02/17/2014 05:46 PM Aaron Marcuse-Kubitza

schemas/util.sql: diff(text, text): implemented the single_row feature

12298 02/17/2014 05:40 PM Aaron Marcuse-Kubitza

schemas/util.sql: diff(text, text): added single_row param (not implemented yet, to make reading the svn diff easier). to view this svn diff, it is helpful to use WinMerge, which offers moved block detection (/README.TXT > WinMerge setup).

12297 02/17/2014 04:54 PM Aaron Marcuse-Kubitza

fix: schemas/util.sql: remake_diff_table(): util.diff() call: include explicit types on arguments to ensure that the correct diff() variant is used

12296 02/17/2014 04:32 PM Aaron Marcuse-Kubitza

schemas/util.sql: added has_single_row()

12293 02/17/2014 03:55 PM Aaron Marcuse-Kubitza

schemas/util.sql: added remake_diff_table()

12292 02/17/2014 03:51 PM Aaron Marcuse-Kubitza

schemas/util.sql: drop_*(): added force param to use CASCADE mode

12291 02/17/2014 03:28 PM Aaron Marcuse-Kubitza

fix: schemas/util.sql: diff(regclass, regclass): usage: col_type_null must actually be a shared base type of the tables

12290 02/17/2014 03:26 PM Aaron Marcuse-Kubitza

fix: schemas/util.sql: diff(regclass, regclass): usage: text arguments must be cast to regclass to bind the right variant of diff()

12289 02/17/2014 03:24 PM Aaron Marcuse-Kubitza

fix: schemas/util.sql: diff(regclass, regclass): renamed params to *_table because these actually can't be views, since views don't support inheritance

12288 02/17/2014 03:03 PM Aaron Marcuse-Kubitza

schemas/util.sql: added copy_struct()

12285 02/17/2014 01:54 PM Aaron Marcuse-Kubitza

schemas/util.sql: added inherit()

12284 02/17/2014 01:46 PM Aaron Marcuse-Kubitza

bugfix: schemas/util.sql: diff(): need to explicitly cast each side to the return type because this does not happen automatically even when an implicit cast is available

12283 02/17/2014 01:32 PM Aaron Marcuse-Kubitza

schemas/util.sql: renamed diff_views(), diff_any() to diff(...) because they are overloads of the same operation

12282 02/17/2014 01:22 PM Aaron Marcuse-Kubitza

schemas/util.sql: diff_any(): documented how to run EXPLAIN on the FULL JOIN query

12281 02/17/2014 01:19 PM Aaron Marcuse-Kubitza

schemas/util.sql: removed non-useful diff_queries() (it is not possible to match distinct `record` types to a common return type, so this would not have worked). use diff_views() instead.

12280 02/17/2014 01:14 PM Aaron Marcuse-Kubitza

bugfix: schemas/util.sql: diff_queries(), diff_views(): embed views verbatim as FROM items, so that the type of their corresponding columns is the view's rowtype. this is necessary in order to match the types of the columns to the return type (set by col_type_null).

12279 02/17/2014 12:52 PM Aaron Marcuse-Kubitza

schemas/util.sql: diff_cols(): renamed to diff_queries() because multiple columns are supported

12278 02/17/2014 12:26 PM Aaron Marcuse-Kubitza

fix: schemas/util.sql: diff_cols(): don't assume that each side will have one column, as many of our validations queries have multiple columns

12277 02/17/2014 11:45 AM Aaron Marcuse-Kubitza

bugfix: schemas/util.sql: diff_views(): need to use $2, not $1, for the 2nd query

12276 02/17/2014 11:40 AM Aaron Marcuse-Kubitza

fix: schemas/util.sql: materialize_query(): remove any extra blank line before the query, to improve readability when newlines are used as a log message separator and are therefore confusing in the middle of a log message

12275 02/17/2014 11:37 AM Aaron Marcuse-Kubitza

schemas/util.sql: added ltrim_nl()

12272 02/17/2014 11:05 AM Aaron Marcuse-Kubitza

schemas/util.sql: added mk_set_search_path(VARIADIC schemas text[])

12271 02/17/2014 10:54 AM Aaron Marcuse-Kubitza

schemas/util.sql: added mk_use_own_schema()

12270 02/17/2014 10:52 AM Aaron Marcuse-Kubitza

schemas/util.sql: added mk_set_search_path()

12269 02/17/2014 10:17 AM Aaron Marcuse-Kubitza

schemas/util.sql: use builtin string_agg(..., ) instead of concat()

12268 02/17/2014 12:34 AM Aaron Marcuse-Kubitza

schemas/util.sql: added qual_name(type unknown) to avoid needing to explicitly specify the type of an input string

12267 02/17/2014 12:31 AM Aaron Marcuse-Kubitza

schemas/util.sql: qual_name(table_ regclass): use ::text with search_path=pg_temp like qual_name(type regtype), rather than casting to text and then using qual_name(type regtype)

12266 02/17/2014 12:25 AM Aaron Marcuse-Kubitza

schemas/util.sql: type_qual_name(type regtype): renamed to qual_name(type regtype) to match qual_name(table_ regclass)

12265 02/17/2014 12:17 AM Aaron Marcuse-Kubitza

schemas/util.sql: added rematerialize_query()