• last updated 9 hours ago
Constraints
Constraints: committers
 
Constraints: files
Constraints: dates
Reduced generation of dead tuples in postgres.

Background: In the old version, the fields latest and live

revisions were updated always via two separate dmlDML statements.

Every update causes in PostgreSQL (tested to pg 9.6) one more dead

tuple, such that on busy systems, we see 30k + dead tuples per

hour. These dead tuples in turn cause more auto vacuum operations

and can lead to abandoned query plans.

This change can reduce the number of dead tuples on cr_items into

half, by allowing both fields to be set in one operation (namely

content_item__set_live_revision). This function has an optional 4th

argument that can cause this optimization. For legacy applications,

nothing changes.

Btw: since all commonly used applications use the live revision, the

fallback of the latest_revision is unused. One can consider to

remove the cr_revision_latest_tr, at least on on certain

installations.

bump revision to 5.1.9d23

    • -0
    • +90
    ./upgrade/upgrade-5.9.1d22-5.9.1d23.sql
  1. … 1 more file in changeset.
file upgrade-5.9.1d22-5.9.1d23.sql was initially added on branch oacs-5-9.

    • -0
    • +0
    ./upgrade/upgrade-5.9.1d22-5.9.1d23.sql
Simplified upgrade-5.9.1d20-5.9.1d21.sql postgres script

    • -54
    • +30
    ./upgrade/upgrade-5.9.1d20-5.9.1d21.sql
Updated mimetypes

    • -0
    • +89
    ./upgrade/upgrade-5.9.1d20-5.9.1d21.sql
  1. … 2 more files in changeset.
file upgrade-5.9.1d20-5.9.1d21.sql was initially added on branch oacs-5-9.

    • -0
    • +0
    ./upgrade/upgrade-5.9.1d20-5.9.1d21.sql
- update upgrade script to more powerful version used in later update scripts as well

    • -8
    • +24
    ./upgrade/upgrade-5.9.1d11-5.9.1d12.sql
- fix old typo in label of unknown mimtype (was "Unkown")

    • -0
    • +1
    ./upgrade/upgrade-5.9.1d19-5.9.1d20.sql
  1. … 3 more files in changeset.
file upgrade-5.9.1d19-5.9.1d20.sql was initially added on branch oacs-5-9.

    • -0
    • +0
    ./upgrade/upgrade-5.9.1d19-5.9.1d20.sql
  1. … 1 more file in changeset.
- use consistently varchar(1000) for object_types

- bump version number to 5.9.1d19

    • -0
    • +33
    ./upgrade/upgrade-5.9.1d18-5.9.1d19.sql
  1. … 1 more file in changeset.
file upgrade-5.9.1d18-5.9.1d19.sql was initially added on branch oacs-5-9.

    • -0
    • +0
    ./upgrade/upgrade-5.9.1d18-5.9.1d19.sql
file upgrade-5.9.1d17-5.9.1d18.sql was initially added on branch oacs-5-9.

    • -0
    • +0
    ./upgrade/upgrade-5.9.1d17-5.9.1d18.sql
- documentation updates

    • -0
    • +136
    ./upgrade/upgrade-5.9.1d17-5.9.1d18.sql
  1. … 30 more files in changeset.
- avoid call of deprecated function

  1. … 1 more file in changeset.
- add missing enumeration type to create script

- fix ambiguity for content_item__new in template__new

- add/update mime types for text/csv text/vcard, text/calendar

- bump version number to 5.9.1d17

    • -0
    • +36
    ./upgrade/upgrade-5.9.1d15-5.9.1d16.sql
    • -0
    • +70
    ./upgrade/upgrade-5.9.1d16-5.9.1d17.sql
  1. … 3 more files in changeset.
file upgrade-5.9.1d15-5.9.1d16.sql was initially added on branch oacs-5-9.

    • -0
    • +0
    ./upgrade/upgrade-5.9.1d15-5.9.1d16.sql
  1. … 1 more file in changeset.
file upgrade-5.9.1d16-5.9.1d17.sql was initially added on branch oacs-5-9.

    • -0
    • +0
    ./upgrade/upgrade-5.9.1d16-5.9.1d17.sql
- Change text enumeration field "storage_type" in cr_items to native

SQL enumeration type

- bump version number to 5.9.1d15

    • -0
    • +639
    ./upgrade/upgrade-5.9.1d14-5.9.1d15.sql
  1. … 1 more file in changeset.
file upgrade-5.9.1d14-5.9.1d15.sql was initially added on branch oacs-5-9.

    • -0
    • +0
    ./upgrade/upgrade-5.9.1d14-5.9.1d15.sql
- handle .gzip like .gz

    • -0
    • +1
    ./upgrade/upgrade-5.9.1d13-5.9.1d14.sql
  1. … 2 more files in changeset.
- use newer style mimetype 'application/gzip' instead of

'application/x-gzip' as defined by IANA content types

- fix indentation in sql/common/mime-type-data.sql

- bump version number to 5.9.1d14

    • -0
    • +34
    ./upgrade/upgrade-5.9.1d13-5.9.1d14.sql
  1. … 3 more files in changeset.
file upgrade-5.9.1d13-5.9.1d14.sql was initially added on branch oacs-5-9.

    • -0
    • +0
    ./upgrade/upgrade-5.9.1d13-5.9.1d14.sql
  1. … 1 more file in changeset.
- update mimetype definition of javascript to the form specified via IANA content types

- add JSON mimetpye

    • -0
    • +35
    ./upgrade/upgrade-5.9.1d12-5.9.1d13.sql
  1. … 2 more files in changeset.
file upgrade-5.9.1d12-5.9.1d13.sql was initially added on branch oacs-5-9.

    • -0
    • +0
    ./upgrade/upgrade-5.9.1d12-5.9.1d13.sql
  1. … 1 more file in changeset.
- change mime type for .swf from "application/x-shockwave-flash" to IANA complient entry "application/vnd.adobe.flash-movie"

    • -0
    • +19
    ./upgrade/upgrade-5.9.1d11-5.9.1d12.sql
  1. … 3 more files in changeset.
file upgrade-5.9.1d11-5.9.1d12.sql was initially added on branch oacs-5-9.

    • -0
    • +0
    ./upgrade/upgrade-5.9.1d11-5.9.1d12.sql
  1. … 1 more file in changeset.
file upgrade-5.9.1d9-5.9.1d10.sql was initially added on branch oacs-5-9.

    • -0
    • +0
    ./upgrade/upgrade-5.9.1d9-5.9.1d10.sql
  1. … 1 more file in changeset.
Content-Repository Reform: reduce dependency on cr_child_rels and make

creation of cr_child_rels entries optional. Most applications do not

need cr_child_rels, these take substantial space and slow down

operations. The change is fully backward compatible, since per

default cr_child_rels are still created. First tests show an

improvement for the creation of cr_items by 17% and for deletion by

28% (when parent item is a plain cr_item, as it is e.g. the case in

xwowiki). Same change made as well for Oracle.

- affected functions (here with pg-names)

* procedure content_item__new/21 (version for text or file entries) has new optional boolean parameter: with_child_rels

* procedure content_item__new/17 (version for blob entries) has new optional boolean parameter: with_child_rels

- remove/reduce dependency on cr_child_rels (if no rel-tag is used, the chile-information is obtained from cr_items)

* content_item__is_publishable/1

* content_item__is_valid_child/3

* content_item__is_valid_child/2

- reduce number of functions by using defaults

* content_item__copy/5

* content_item__get_title/2

* content_item__move/3

    • -0
    • +1010
    ./upgrade/upgrade-5.9.1d9-5.9.1d10.sql
  1. … 3 more files in changeset.
- fix install scripts

  1. … 1 more file in changeset.
Content-Repository Reform: reduce dependency on cr_child_rels and simplify content_item__del() via cascading delete operations

- remove manual deletion operations from content_item__del() via

* delete cr_child_rels via "ON DELETE CASCADE" on parent_id and child_id

* delete cr_item_rels via "ON DELETE CASCADE" on item_id

* delete acs_object_context_index entries via "ON DELETE CASCADE" on ancestor_id and object_id

* delete acs_objects entries via "ON DELETE CASCADE" on context_id

- remove manual deletion operations for symlinks amd journal entries,

since db constrains handle the deletion already

- use cr_items.parent_id instead of cr_child_rels to determine direct children

of items

- remove deletion trigger for content search content_search__dtrg

since "ON DELETE CASCADE" removes entries already

    • -0
    • +126
    ./upgrade/upgrade-5.9.1d8-5.9.1d9.sql
file upgrade-5.9.1d8-5.9.1d9.sql was initially added on branch oacs-5-9.

    • -0
    • +0
    ./upgrade/upgrade-5.9.1d8-5.9.1d9.sql