Project

General

Profile

# Date Author Comment
14276 07/21/2014 04:05 PM Aaron Marcuse-Kubitza

schemas/util.sql: added derived_col_name_from_check_constraint()

14275 07/21/2014 03:48 PM Aaron Marcuse-Kubitza

schemas/util.sql: derived_col_update(): add steps to rename column

14273 07/21/2014 03:34 PM Aaron Marcuse-Kubitza

bugfix: schemas/util.sql: derived_col_update(): don't set_comment() until CHECK constraint exists so that we can use its canon-ed formula

14272 07/21/2014 03:24 PM Aaron Marcuse-Kubitza

bugfix: schemas/util.sql: check_constraint_expr_enable(): don't remove suffix without also removing prefix. this is done by using extract_by_regexp() instead. also changed check_constraint_enabled() to use regexps to match this.

14271 07/21/2014 03:08 PM Aaron Marcuse-Kubitza

bugfix: schemas/util.sql: extract_by_regexp(): needs surrounding COALESCE in case no match

14270 07/21/2014 03:05 PM Aaron Marcuse-Kubitza

schemas/util.sql: added extract_by_regexp()

14263 07/21/2014 08:12 AM Aaron Marcuse-Kubitza

bugfix: schemas/util.sql: canon_sql(): need to use the right search_path

14262 07/21/2014 08:12 AM Aaron Marcuse-Kubitza

bugfix: schemas/util.sql: check_constraint view: def: must use our wrapper so that the right search_path is used

14261 07/21/2014 08:08 AM Aaron Marcuse-Kubitza

schemas/util.sql: added pg_get_expr() wrapper, which sets search_path to pg_temp

14260 07/21/2014 07:41 AM Aaron Marcuse-Kubitza

bugfix: schemas/util.sql: check_constraint_expr_*(): updated strings for new Mac Postgres update, which was installed on reboot

14259 07/21/2014 07:40 AM Aaron Marcuse-Kubitza

bugfix: schemas/util.sql: check_constraint_expr_*(): updated strings for new Mac Postgres update, which was installed on reboot

14258 07/21/2014 06:55 AM Aaron Marcuse-Kubitza

bugfix: schemas/util.sql: derived_col_update(): steps to modify: also need to run util.derived_cols_populate()

14256 07/21/2014 06:50 AM Aaron Marcuse-Kubitza

bugfix: schemas/util.sql: check_constraint view: can't use consrc because this doesn't get auto-updated with column renames

14255 07/21/2014 06:37 AM Aaron Marcuse-Kubitza

bugfix: schemas/util.sql: derived_col_constraints_enable(): need final `SELECT NULL::void` so don't fold away functions called in previous query

14253 07/21/2014 06:19 AM Aaron Marcuse-Kubitza

bugfix: derived_col_constraint_initially_enabled(): must be both already enabled and unchanged to be initially enabled (r14240 was only partially correct)

14252 07/21/2014 06:08 AM Aaron Marcuse-Kubitza

schemas/util.sql: derived_cols_trigger_update(): to regenerate instructions: use util.derived_cols_update(), which also performs other updates

14251 07/21/2014 06:07 AM Aaron Marcuse-Kubitza

schemas/util.sql: derived_cols_sync(): renamed to derived_cols_trigger_update() for clarity

14250 07/21/2014 06:05 AM Aaron Marcuse-Kubitza

schemas/util.sql: added derived_cols_update()

14249 07/21/2014 05:58 AM Aaron Marcuse-Kubitza

schemas/util.sql: derived_cols_sync(): renamed to derived_cols_trigger_update() for clarity

14248 07/21/2014 05:54 AM Aaron Marcuse-Kubitza

schemas/util.sql: derived_col_update(): add comment describing how to modify derived column

14247 07/21/2014 05:41 AM Aaron Marcuse-Kubitza

schemas/util.sql: added quote_typed(derived_col_def)

14246 07/21/2014 05:37 AM Aaron Marcuse-Kubitza

schemas/util.sql: added quote_typed(col)

14245 07/21/2014 05:14 AM Aaron Marcuse-Kubitza

schemas/util.sql: derived_cols_sync(): table__fill_derived(): document in the function comment how to regenerate it

14244 07/21/2014 05:08 AM Aaron Marcuse-Kubitza

schemas/util.sql: added mk_set_comment(regprocedure, text)

14243 07/21/2014 05:07 AM Aaron Marcuse-Kubitza

schemas/util.sql: set_comment(): accept anything with a mk_set_comment()

14242 07/21/2014 03:39 AM Aaron Marcuse-Kubitza

fix: schemas/util.sql: check_constraint_expr_disable(): need to use CASE instead of `true OR ` because OR always evaluates both sides, slowing down constraint evaluation

14241 07/21/2014 03:23 AM Aaron Marcuse-Kubitza

fix: schemas/util.sql: check_constraint view: conrelid: don't cast to regclass so can use index scan

14240 07/21/2014 03:21 AM Aaron Marcuse-Kubitza

bugfix: derived_col_constraint_initially_enabled(): use whether existing constraint is already enabled, not whether expr is unchanged (which does not affect the enabled status)

14239 07/21/2014 02:52 AM Aaron Marcuse-Kubitza

schemas/util.sql: check_constraint_canon_sql(): use util.debug_print_return_value() to assist debugging

14238 07/21/2014 02:49 AM Aaron Marcuse-Kubitza

bugfix: schemas/util.sql: check_constraint_replace(): need to use util.check_constraint_canon_sql() instead of util.canon_sql()

14237 07/21/2014 02:40 AM Aaron Marcuse-Kubitza

schemas/util.sql: added check_constraint_canon_sql(). this must be used instead of plain util.canon_sql() because unlike queries, CHECK constraints are not simplified, just standardized.

14236 07/21/2014 02:06 AM Aaron Marcuse-Kubitza

schemas/util.sql: check_constraint_replace(): support not canon-ing def.expr

14235 07/21/2014 12:23 AM Aaron Marcuse-Kubitza

bugfix: schemas/util.sql: CHECK constraint exprs: need to remove the enclosing () to be consistent everywhere

14234 07/20/2014 11:59 PM Aaron Marcuse-Kubitza

bugfix: schemas/util.sql: canon_sql(): need to include the enclosing () because the DB includes them

14233 07/20/2014 11:42 PM Aaron Marcuse-Kubitza

fix: schemas/util.sql: canon_sql(): use explain()'s verbose mode to facilitate debugging

14232 07/20/2014 11:38 PM Aaron Marcuse-Kubitza

bugfix: schemas/util.sql: explain(): need to restore NOTICEs in verbose mode

14231 07/20/2014 11:22 PM Aaron Marcuse-Kubitza

schemas/util.sql: explain(): support running in verbose mode

14230 07/20/2014 11:19 PM Aaron Marcuse-Kubitza

bugfix: schemas/util.sql: check_constraint_replace(): need to canon the expr, using new util.canon_sql(), so it can be compared with the expr in the DB

14229 07/20/2014 11:18 PM Aaron Marcuse-Kubitza

schemas/util.sql: added canon_sql(expr text, table_ regclass)

14228 07/20/2014 10:45 PM Aaron Marcuse-Kubitza

fix: schemas/util.sql: check_constraint view: don't use pretty-print mode, because this format does not match util.canon_sql()

14227 07/20/2014 10:43 PM Aaron Marcuse-Kubitza

fix: schemas/util.sql: check_constraint_expr_enable(), derived_col_expr_from_check_constraint(): trim parens in order to support non-pretty-print mode, which is needed with canon_sql()

14226 07/20/2014 09:27 PM Aaron Marcuse-Kubitza

schemas/util.sql: added canon_sql(expr text)

14225 07/20/2014 09:21 PM Aaron Marcuse-Kubitza

schemas/util.sql: added trim_parens()

14224 07/20/2014 08:19 PM Aaron Marcuse-Kubitza

schemas/util.sql: added copy_struct(from_ regtype, to_ text) and copy_data(from_ regtype, to_ text), and use these in a general-purpose copy()

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

bugfix: schemas/util.sql: copy(from_ regtype, to_ text): must be declared STRICT to handle NULL properly

14222 07/20/2014 07:58 PM Aaron Marcuse-Kubitza

schemas/util.sql: added copy(from_ regtype, to_ text)

14221 07/20/2014 07:39 PM Aaron Marcuse-Kubitza

fix: schemas/util.sql: is_raise_condition(): should be called is_log_level()

14220 07/20/2014 07:36 PM Aaron Marcuse-Kubitza

schemas/util.sql: raise(): support SQLSTATE values

14219 07/20/2014 07:33 PM Aaron Marcuse-Kubitza

bugfix: schemas/util.sql: raise_expr(raise_type): only treat as raise condition if not SQLSTATE, to allow custom SQLSTATEs

14218 07/20/2014 07:30 PM Aaron Marcuse-Kubitza

schemas/util.sql: raise(): support SQLSTATE values

14217 07/20/2014 07:28 PM Aaron Marcuse-Kubitza

schemas/util.sql: added raise_expr(raise_type)

14216 07/20/2014 07:28 PM Aaron Marcuse-Kubitza

schemas/util.sql: added is_raise_condition()

14215 07/20/2014 07:14 PM Aaron Marcuse-Kubitza

schemas/util.sql: added is_sqlstate()

14214 07/20/2014 06:44 PM Aaron Marcuse-Kubitza

schemas/util.sql: typeof(expr text, table_ regtype): use simpler util.eval2val() instead of EXECUTE

14213 07/20/2014 06:13 PM Aaron Marcuse-Kubitza

fix: schemas/util.sql: derived_col_constraint_initially_enabled(): also should be initially enabled if expr unchanged, to avoid re-running constraint on all rows

14212 07/20/2014 06:09 PM Aaron Marcuse-Kubitza

schemas/util.sql: derived_col_update(): use new util.derived_col_constraint_initially_enabled()

14211 07/20/2014 06:09 PM Aaron Marcuse-Kubitza

schemas/util.sql: added derived_col_constraint_initially_enabled()

14210 07/20/2014 06:05 PM Aaron Marcuse-Kubitza

schemas/util.sql: added derived_col_expr(col)

14209 07/20/2014 05:56 PM Aaron Marcuse-Kubitza

derived_col_constraint_enable(): documented that this now avoids re-running constraint on all rows if already enabled

14208 07/20/2014 05:43 PM Aaron Marcuse-Kubitza

fix: check_constraint_replace(): avoid re-running the constraint on all rows if expr hasn't changed

14207 07/20/2014 05:40 PM Aaron Marcuse-Kubitza

schemas/util.sql: check_constraint_replace(): shortened param to `def` for readability

14206 07/20/2014 05:39 PM Aaron Marcuse-Kubitza

schemas/util.sql: added check_constraint_expr(constraint_ table_item)

14205 07/20/2014 04:34 PM Aaron Marcuse-Kubitza

schemas/util.sql: added derived_col_update()

14204 07/20/2014 04:31 PM Aaron Marcuse-Kubitza

schemas/util.sql: check_constraint__disabled(): made disabled configurable (renaming func to check_constraint())

14203 07/20/2014 04:20 PM Aaron Marcuse-Kubitza

schemas/util.sql: added derived_col_constraint_expr()

14202 07/20/2014 04:07 PM Aaron Marcuse-Kubitza

schemas/util.sql: derived_col_constraints_enable(): use new derived_col_constraint_enable()

14201 07/20/2014 04:06 PM Aaron Marcuse-Kubitza

schemas/util.sql: added derived_col_constraint_enable()

14200 07/20/2014 03:52 PM Aaron Marcuse-Kubitza

schemas/util.sql: added table_has_data()

14199 07/20/2014 03:47 PM Aaron Marcuse-Kubitza

schemas/util.sql: added col_add(derived_col_def)

14198 07/20/2014 03:44 PM Aaron Marcuse-Kubitza

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

14196 07/20/2014 03:22 PM Aaron Marcuse-Kubitza

schemas/util.sql: added regtype(regclass)

14195 07/20/2014 02:52 PM Aaron Marcuse-Kubitza

schemas/util.sql: added col_add()

14194 07/20/2014 02:32 PM Aaron Marcuse-Kubitza

schemas/util.sql: added col_def type

14193 07/20/2014 07:22 AM Aaron Marcuse-Kubitza

schemas/util.sql: derived_cols_populate(): only run if needed

14192 07/20/2014 07:09 AM Aaron Marcuse-Kubitza

schemas/util.sql: added derived_cols_populated()

14191 07/20/2014 07:09 AM Aaron Marcuse-Kubitza

schemas/util.sql: added derived_cols_populated()

14190 07/20/2014 07:08 AM Aaron Marcuse-Kubitza

schemas/util.sql: added derived_col_populated()

14189 07/20/2014 07:07 AM Aaron Marcuse-Kubitza

schemas/util.sql: added check_constraint_enabled()

14188 07/20/2014 06:46 AM Aaron Marcuse-Kubitza

schemas/util.sql: remove_prefix(), remove_suffix(): use new starts_with(), ends_with()

14187 07/20/2014 06:45 AM Aaron Marcuse-Kubitza

schemas/util.sql: added starts_with(), ends_with()

14186 07/20/2014 05:57 AM Aaron Marcuse-Kubitza

schemas/util.sql: derived_cols_populate(): also run util.derived_col_constraints_enable() once populated

14185 07/20/2014 05:55 AM Aaron Marcuse-Kubitza

schemas/util.sql: added derived_col_constraints_enable()

14184 07/20/2014 05:28 AM Aaron Marcuse-Kubitza

schemas/util.sql: added check_constraint__disabled(), which creates a CHECK constraint which is initially disabled

14183 07/20/2014 05:27 AM Aaron Marcuse-Kubitza

schemas/util.sql: added check_constraint__disabled(), which creates a CHECK constraint which is initially disabled

14182 07/20/2014 05:07 AM Aaron Marcuse-Kubitza

fix: schemas/util.sql: run_triggers(): need to re-sort rows if table needs this

14181 07/20/2014 05:05 AM Aaron Marcuse-Kubitza

schemas/util.sql: added try_cluster()

14180 07/20/2014 04:05 AM Aaron Marcuse-Kubitza

schemas/util.sql: added derived_cols_populate()

14179 07/20/2014 04:04 AM Aaron Marcuse-Kubitza

schemas/util.sql: added run_triggers(regclass)

14178 07/20/2014 04:00 AM Aaron Marcuse-Kubitza

schemas/util.sql: added first_col(regclass)

14177 07/20/2014 02:42 AM Aaron Marcuse-Kubitza

fix: schemas/util.sql: read-only functions should be STABLE rather than VOLATILE

14176 07/20/2014 02:42 AM Aaron Marcuse-Kubitza

bugfix: schemas/util.sql: functions that access the DB must be STABLE rather than IMMUTABLE

14175 07/20/2014 02:23 AM Aaron Marcuse-Kubitza

bugfix: schemas/util.sql: derived_col_defs(): derived columns must be returned in table order (which should = dependency order), so that they are populated in dependency order

14174 07/20/2014 02:17 AM Aaron Marcuse-Kubitza

bugfix: schemas/util.sql: remove_prefix(), remove_suffix(): must be declared STRICT to handle NULL properly

14173 07/20/2014 02:16 AM Aaron Marcuse-Kubitza

bugfix: schemas/util.sql: remove_suffix(): need to use quote_nullable(str) so a NULL str doesn't NULL out the entire message

14172 07/20/2014 02:10 AM Aaron Marcuse-Kubitza

bugfix: schemas/util.sql: remove_prefix(): need to use quote_nullable(str) so a NULL str doesn't NULL out the entire message

14171 07/20/2014 02:09 AM Aaron Marcuse-Kubitza

bugfix: schemas/util.sql: raise(): use new quote_as_str() to avoid "RAISE statement option cannot be null" errors

14170 07/20/2014 02:08 AM Aaron Marcuse-Kubitza

schemas/util.sql: added quote_as_str()

14169 07/19/2014 11:23 PM Aaron Marcuse-Kubitza

schemas/util.sql: added CAST (util.col AS util.derived_col_def)

14168 07/19/2014 11:05 PM Aaron Marcuse-Kubitza

schemas/util.sql: derived_col_def(col): use existing util.check_constraint_def()

14167 07/19/2014 11:01 PM Aaron Marcuse-Kubitza

schemas/util.sql: added CAST (util.col AS util.table_item)