Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[7.x] EZP-27128: New draft based on a selected version doesn't respect ezkeywords value #1947

Closed
wants to merge 21 commits into from

Conversation

alongosz
Copy link
Member

@alongosz alongosz commented Apr 5, 2017

Branch: 7.0
Fixes: EZP-27128

This PR refactors Keyword Storage to associate keyword with content object version.
Due to DB break for Legacy this is targeted for ezpublish-kernel v7.0.

TODO:

  • Update DB schema (including test schema).
  • Refactor Keyword Storage to use ezkeyword_attribute_link.version column.
  • Check if changes don't create regression for previous ezkeyword bugfixes and functionality.
  • Create integration test for use case described in the issue.
  • Perform manual tests.
  • Add upgrade note & upgrade script.

@alongosz alongosz force-pushed the ezp-27128-ezkeyword-versioning branch from fcaf900 to eff7c33 Compare April 18, 2017 08:48
@alongosz alongosz changed the title [WIP][7.x] EZP-27128: New draft based on a selected version doesn't respect ezkeywords value [7.x] EZP-27128: New draft based on a selected version doesn't respect ezkeywords value Apr 18, 2017
@alongosz alongosz force-pushed the ezp-27128-ezkeyword-versioning branch from eff7c33 to faa5de5 Compare April 20, 2017 12:10
@andrerom
Copy link
Contributor

andrerom commented Apr 21, 2017

After talks with @bdunogier yesterday, db schema changes should ideally be done after we have extracted storage engine and forked it into improved storage engine, leaving legacy storage engine compatible with ... legacy, and if the community wants they can maintain it.

As this is field type, do we have a clear plan on being able to have two storage gateways? One for improved storage engine that uses doctrine connection and has possible improved schema, and the existing one. /cc @kore @tobyS

andrerom and others added 15 commits July 13, 2017 21:11
To begin with this will start as a `7.0` branch, acting as a sort of `develop` branch.
So: keep on targeting changes towards master or stable branches as normal, only breaking
changes goes just into `7.0` branch

For features that are also relevant to 6.x typically in a bc safe way into master, then
adaptions to clean up 7.x into `7.0` branhc as seperate pr afterwards _(can be tmp commit on original PR during review)_.
With RHEL now having access to PHP 7.x packages via RHSCL 2.3,
and Debian 9 "Stretch" soon out with it also, meaning all support
distroes by the time this is stable has PHP 7.0 support.

For new code we can thus start to take advantage of PHP 7.0 features,
and consider it for existing code and API's where applicable.
…aring with tags (ezsystems#1920)

- Removes dependency on Stash
- Improves performance by:
  1. Use Symfony Cache
  2. Use tagging to be able to cache more, and:
  3. allow cache item duplication to avoid extra identifier to id lookups before item lookup
- Reduces code complexity of cache, for instance no cache warming anymore as it was often warming the wrong object
- More reliable, thanks to cache tagging only relevant cache items are cleared on operations, not the whole cache
Reason for using simple regex:
- Service is not de-coupled yet to inject Symfony validator cleanly
- Besides: https://davidcel.is/posts/stop-validating-email-addresses-with-regex/
RMF is not in use by the server, so since client anyway needs large refactoring somewhat ignoring that this might furhter break it a bit.
@alongosz alongosz force-pushed the ezp-27128-ezkeyword-versioning branch from 011f722 to 82456f2 Compare July 24, 2017 09:45
@andrerom
Copy link
Contributor

Todo:

  • Find way to let storage engine handle schema during install
    • Should be aligned with work to handle db migration (changes to schema from one version to the next or back)
  • Let field types assign gateway to a given storage engine and provide schema for the given gateway to storage engine
    • Again with same system for migrations support

Then rebase this to add this change to Improved Storage engine schema for keyword gateway.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Development

Successfully merging this pull request may close these issues.

4 participants