-
Notifications
You must be signed in to change notification settings - Fork 3.4k
RTC Hybrid: Table with awareness in object cache when available. #11599
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
Open
peterwilsoncc
wants to merge
165
commits into
WordPress:trunk
Choose a base branch
from
peterwilsoncc:collaboration/table-awareness-object-cache
base: trunk
Could not load branches
Branch not found: {{ refName }}
Loading
Could not load tags
Nothing to show
Loading
Are you sure you want to change the base?
Some commits from the old base branch may be removed from the timeline,
and old review comments may become outdated.
Open
Changes from all commits
Commits
Show all changes
165 commits
Select commit
Hold shift + click to select a range
85be643
Collaboration: Add dedicated database table and storage backend
josephfusco a4f8b98
Collaboration: Replace sync server with collaboration server
josephfusco da8317c
Collaboration: Remove legacy post meta storage and post type
josephfusco b06269e
Collaboration: Wire up bootstrap, feature gate, and cron cleanup
josephfusco 886f0b1
Tests: Add collaboration server tests and remove legacy sync tests
josephfusco 6827989
Collaboration: Use persistent object cache for awareness reads
josephfusco 9bcbfe6
Tests: Fix REST schema and multisite test failures
josephfusco 09d0b86
Tests: Remove erroneous connector fixtures from merge artifact
josephfusco 7455141
Collaboration: Rename update_value column to data
josephfusco d4e27d4
Collaboration: Add type_client_id index and bump db_version
josephfusco ef00730
Merge branch 'trunk' into collaboration/single-table
josephfusco 9b45174
Collaboration: Add payload limit constants and request validation
josephfusco dd319b8
Collaboration: Harden entity permission checks
josephfusco cd4a69f
Collaboration: Add tests for payload limits and permission hardening
josephfusco 442798f
Collaboration: Apply coding standards and clarifications to table sto…
josephfusco 2e7c177
Collaboration: Clean up stale data and unschedule cron when disabled
josephfusco 24f4fdc
Collaboration: Remove backward-compatible wp-sync/v1 route alias
josephfusco 14ba560
Collaboration: Move implementation details from docblock to code comment
josephfusco 318051f
Collaboration: Remove deprecated wp-sync/v1 route test
josephfusco 543bc6b
Collaboration: Add test for client ID reactivation after awareness ex…
josephfusco ba4ab78
Revert "Collaboration: Remove deprecated wp-sync/v1 route test"
josephfusco d833d2f
Revert "Collaboration: Remove backward-compatible wp-sync/v1 route al…
josephfusco 030bbce
Collaboration: Harden storage layer, fix duplicate awareness rows, an…
josephfusco a5d543d
Collaboration: Add missing maxItems to REST schema fixture
josephfusco 85b7491
Collaboration: Rename remove_updates_up_to_cursor to remove_updates_t…
josephfusco 45c639a
Collaboration: Fix PHPCS alignment warnings in tests
josephfusco 0d3d425
Collaboration: Fix REST schema fixture property order
josephfusco d812496
Merge branch 'trunk' into collaboration/single-table
josephfusco 20131ec
Merge branch 'trunk' into collaboration/single-table
josephfusco 52fc395
Apply suggestion from @peterwilsoncc
josephfusco 1ef60f8
Update src/wp-includes/collaboration/class-wp-collaboration-table-sto…
josephfusco a988544
Update src/wp-includes/collaboration.php
josephfusco 1a61f33
Collaboration: Merge upstream trunk and adopt wp_collaboration_enable…
josephfusco 92fdc53
Collaboration: Fix test setup for opt-in default
josephfusco e7ac605
Collaboration: Add tests for cursor uniqueness, LIKE queries, and typ…
josephfusco a53685f
Collaboration: Add HTTP method rejection and request validation tests
josephfusco b55f3ce
Collaboration: Harden tests with exact assertions and split multi-sce…
josephfusco d4ea091
Collaboration: Fix PHPCS errors in tests
josephfusco 6332302
Collaboration: Merge upstream trunk including post meta race conditio…
josephfusco cc24661
Merge branch 'trunk' into collaboration/single-table
josephfusco 0be5c73
Merge branch 'trunk' into collaboration/single-table
josephfusco 5f320b6
Merge branch 'trunk' into collaboration/single-table
josephfusco 7bd3079
Collaboration: Add test proving sync writes do not invalidate awarene…
josephfusco 68f2a62
Merge branch 'trunk' into collaboration/single-table
josephfusco 4ccf903
Collaboration: Bucket awareness timestamps to 5-second intervals
josephfusco 78ffe6f
Merge branch 'collaboration/single-table' of github.com:josephfusco/w…
josephfusco fb48ce3
Merge branch 'trunk' into feature/sync-updates-table
josephfusco 465f1ba
Merge branch 'trunk' into collaboration/single-table
josephfusco 8ae6d5a
Collaboration: Add input validation, compaction test, and remove old …
josephfusco 0298cdd
Tests: Add compaction test for integer client IDs
josephfusco 05e48e9
Collaboration: Fix compactor nomination for integer client IDs
josephfusco 4df841c
Tests: Fix PHPCS coding standards in collaboration tests
josephfusco e724afb
Tests: Update REST API fixture for client_id schema changes
josephfusco 870e4e0
Tests: Skip collaboration E2E tests when JS runtime is unavailable
josephfusco 3b0be0b
Merge branch 'trunk' into collaboration/single-table
josephfusco ac5db07
Merge remote-tracking branch 'origin/trunk' into collaboration/single…
josephfusco f2730e7
Update src/wp-includes/collaboration/class-wp-collaboration-table-sto…
josephfusco 8371c5c
Collaboration: Cap client_id at the storage column width.
josephfusco 6e27b56
Merge branch 'trunk' into collaboration/single-table
josephfusco 8ee5220
Collaboration: Add (room, type, date_gmt) index to the collaboration …
josephfusco 961be20
Merge branch 'collaboration/single-table' of github.com:josephfusco/w…
josephfusco 780f859
Merge branch 'trunk' into collaboration/single-table
josephfusco d549a14
Merge branch 'trunk' into collaboration/single-table
josephfusco cec47ab
Merge branch 'trunk' into collaboration/single-table
josephfusco d95a339
Update tests/qunit/fixtures/wp-api-generated.js.
peterwilsoncc f71e9a9
Merge branch 'trunk' into collaboration/table-awareness-object-cache
peterwilsoncc e1e6a88
Do not use table for awareness with persistent object cache.
peterwilsoncc d6dabe7
Reduce granuality to 10seconds, introduce filter.
peterwilsoncc facd672
Merge branch 'trunk' into collaboration/table-awareness-object-cache
peterwilsoncc fc45642
Skip tests that require an object cache not be in use for memcached r…
peterwilsoncc 260773d
Filter options rather than update.
peterwilsoncc 59cfe4e
Reset REST server intance to avoid breaking tests.
peterwilsoncc 13d4f2f
Why did the tests fail to run?
peterwilsoncc 2e35aa2
Use in-memory cache for awarenss when persistent cache isn’t available.
peterwilsoncc b8da67f
Tests for caching related awareness storage.
peterwilsoncc ec1fa68
CS: alignment.
peterwilsoncc 2023bfd
Simplify use of in memory cache.
peterwilsoncc 3bbb01f
Let the cache determine how to cache arrays.
peterwilsoncc cd84de0
Test awareness setter does not destroy.
peterwilsoncc 5b64704
Ensure awareness removes out of date clients from cache.
peterwilsoncc ca59c75
Ensure time is well formed.
peterwilsoncc b9d67ac
Method for generating cache key to avoid errors.
peterwilsoncc b26c3da
Tidy up comments.
peterwilsoncc c6eedae
Move storage class tests to own test suite.
peterwilsoncc e3dc7bb
Awareness tests.
peterwilsoncc 7d5bb24
data integoryt tests.
peterwilsoncc b480459
Enable RTC for E2E tests.
peterwilsoncc 9789172
Not in use. Not!
peterwilsoncc 0d49cab
Test fixes, docs.
peterwilsoncc d66d532
Fix tests for new table.
peterwilsoncc 7517f0c
Prevent duplicate entries.
peterwilsoncc 75b1c85
Fix tests.
peterwilsoncc 9e45662
Tests should include a date.
peterwilsoncc 71242a2
Account for race conditions.
peterwilsoncc 07ca965
Use true for site setting.
peterwilsoncc a529a51
Nope.
peterwilsoncc 1f9e2ac
Fix E2E tests by including URL in current GB package.
peterwilsoncc af7c72f
Silly.
peterwilsoncc 63c1315
Skip test that results in four collaborators on a single post.
peterwilsoncc c9db793
Compare state during updates.
peterwilsoncc 8ef17f0
Try pressSequentially for password field.
peterwilsoncc 0a3d31e
Try forcing it.
peterwilsoncc 59d5f5a
How about this?
peterwilsoncc d869643
Wait for collaborator to leave before they rejoin.
peterwilsoncc a881cc3
Merge branch 'trunk' into collaboration/table-awareness-object-cache
peterwilsoncc 7cf0fe8
Test is no longer skipped, remove comment explaining why it is skipped.
peterwilsoncc 78f875a
Merge branch 'trunk' into collaboration/table-awareness-object-cache
peterwilsoncc e25b9c9
Merge branch 'trunk' into collaboration/table-awareness-object-cache
peterwilsoncc 46388e7
Merge branch 'trunk' into collaboration/table-awareness-object-cache
peterwilsoncc d392ae0
Fix up static analysis issues in collaboration.php
westonruter 6963888
Merge branch 'trunk' into collaboration/table-awareness-object-cache
peterwilsoncc c3fc522
Prefix schema ID column with `collaboration` per other WP tables.
peterwilsoncc 9f006f0
Apply suggestions from code review
peterwilsoncc 25649e1
Only accept integer as client ID.
peterwilsoncc 121caea
Harden pattern for room name.
peterwilsoncc 4c0f763
Object ID tests.
peterwilsoncc 75a3a6a
Object ID validation.
peterwilsoncc aec6db0
Apply suggestions from code review
peterwilsoncc d6e59f7
Update `tests/qunit/fixtures/wp-api-generated.js` following schema ch…
peterwilsoncc 7cec785
Bump DB version number to next commit.
peterwilsoncc e4d0951
Merge branch 'trunk' into collaboration/table-awareness-object-cache
peterwilsoncc b7bc9f1
Merge branch 'trunk' into collaboration/table-awareness-object-cache
peterwilsoncc 9cfc176
Add php-stan annotations from code review.
peterwilsoncc f471e3c
Apply suggestions from code review
peterwilsoncc 0f1a0b7
Collaboration: Move db_version check to wp_is_collaboration_allowed().
josephfusco 4744b42
Update tests/phpunit/tests/rest-api/rest-collaboration-server.php
josephfusco 703fe9b
Tests: Address review feedback for collaboration tests.
josephfusco b4090f4
Tests: Move cron cleanup tests to dedicated file.
josephfusco c137db2
Tests: Add assertion messages and use pre_option filter for db_version.
josephfusco 07dd8fb
Tests: Add assertion messages to all multi-assertion collaboration te…
josephfusco 837fe7c
Merge pull request #147 from josephfusco/port/single-table-improvements
peterwilsoncc 82b4d91
Merge branch 'trunk' into collaboration/table-awareness-object-cache
peterwilsoncc aee8aaa
Rename for function name.
peterwilsoncc b6295df
Use option filter rather than setting option.
peterwilsoncc c15e8a0
Update comment for accuracy
peterwilsoncc 4ef9601
Update wp-api-generated.js following r62311.
peterwilsoncc 29a7f3e
Restore interface for collab storage.
peterwilsoncc ae2f008
Set type for polling class to interface rather than class.
peterwilsoncc 17f51c2
Rename interface class, require it.
peterwilsoncc f320884
Merge branch 'trunk' into collaboration/table-awareness-object-cache
peterwilsoncc bc1a808
Bump DB version to next commit (this will need to be redone).
peterwilsoncc fc7d942
Revert "Update wp-api-generated.js following r62311."
peterwilsoncc 8597a90
Remove unused global/
peterwilsoncc e097bd6
Add PHPStan generics to wp_list_sort()
westonruter 617984c
Cast prepared SQL as string to address PHPStan argument.type error
westonruter 4a4ffef
Add missing global tags for $wpdb
westonruter a5b1531
Add explicit remove_awareness_state to avoid stale user entries
alecgeatches 02c035d
Merge branch 'trunk' into collaboration/table-awareness-object-cache
peterwilsoncc 7e94414
Revert "Test is no longer skipped, remove comment explaining why it i…
peterwilsoncc bcd0dd8
Revert "Wait for collaborator to leave before they rejoin."
peterwilsoncc 2269897
Revert "Skip test that results in four collaborators on a single post."
peterwilsoncc 2e053cc
Room permission tests.
peterwilsoncc 37282a3
Inline docs standards.
peterwilsoncc 28db903
Update permission checks.
peterwilsoncc ca50383
CS: Inline documentation standards.
peterwilsoncc e0ec045
Rename filter again.
peterwilsoncc 1f47644
Allow user to collaborate on enitity types for room boundry checks.
peterwilsoncc 01b2c47
cs
peterwilsoncc 2c882d9
Resolve argument.type PHPStan errors in wp_delete_old_collaboration_d…
westonruter c766306
Address PHPStan errors offsetAccess.nonOffsetAccessible and argument.…
westonruter d07539b
Harden reading from mixed awareness updates to ensure array and conta…
westonruter 1bc006c
cs.
peterwilsoncc 9f3f6b9
Add PHPStan object shape typing for WP_Post_Type::$cap and WP_Taxonom…
westonruter 33c8dd5
Add typing for Room request data
westonruter 3e40efc
Add TODOs for the client_id not being the expected type
westonruter File filter
Filter by extension
Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
There are no files selected for viewing
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.
Oops, something went wrong.
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Uh oh!
There was an error while loading. Please reload this page.