docs(2meet-data-optimizer-hivepress-addon): 0.4.0 release notes
- version 0.4.0; CHANGELOG for PR-090, 090b and 099 with dev36 numbers - Upgrading: deploy with core 1.3.0; give 0.3.0 Redis entries a TTL with redis-cli --scan | EXPIRE ... NX | --pipe (tested on dev36: 3.0 M keys, 45 s, latency max 2 ms), never flush-group - Verify: composer test (145) - PR: PR-102
This commit is contained in:
@@ -3,7 +3,7 @@
|
||||
* Plugin Name: 2meet Data Optimizer — Hivepress AddOn
|
||||
* Plugin URI: https://2meet.io/2meet-data-optimizer/hivepress
|
||||
* Description: HivePress + 12 擴充整合:13 adapter (core/reviews/bookings/messages/memberships/requests/favorites/statistics/tags/seo/social-links/blocks/marketplace) + 7 HPCT interceptor + 5 query interceptor + admin tab + CLI namespace
|
||||
* Version: 0.3.0
|
||||
* Version: 0.4.0
|
||||
* Requires at least: 6.0
|
||||
* Tested up to: 6.9.4
|
||||
* Requires PHP: 8.1
|
||||
@@ -24,7 +24,7 @@ if ( ! defined( 'ABSPATH' ) ) {
|
||||
exit;
|
||||
}
|
||||
|
||||
define( 'TMDO_HIVEPRESS_VERSION', '0.3.0' );
|
||||
define( 'TMDO_HIVEPRESS_VERSION', '0.4.0' );
|
||||
define( 'TMDO_HIVEPRESS_PATH', plugin_dir_path( __FILE__ ) );
|
||||
define( 'TMDO_HIVEPRESS_URL', plugin_dir_url( __FILE__ ) );
|
||||
define( 'TMDO_HIVEPRESS_FILE', __FILE__ );
|
||||
|
||||
@@ -11,6 +11,45 @@ Versioning follows [Semantic Versioning](https://semver.org/).
|
||||
|
||||
---
|
||||
|
||||
## [0.4.0] — 2026-09-27
|
||||
|
||||
Released with 2meet-data-optimizer 1.3.0 (hardening 2.3).
|
||||
|
||||
### Changed
|
||||
|
||||
- `hp_listing_core` declares indexes on `hp_hourly_rate` and `hp_rating_count`
|
||||
(HivePress filters and sorts on both). They are declared through the group's
|
||||
`indexes`, not `searchable`, so the pinned schema hash is unchanged and the
|
||||
table is not rebuilt; core 1.3.0 adds them in place from WP-CLI / WP-Cron.
|
||||
dev36 (902k listings): two indexes in about 4.7 s; routed `rating_count IN`
|
||||
2.1 s → 0.36 s, `rating_count !=` 2.1 s → 0.76 s, hourly rate + price sort
|
||||
2.1 s → 0.65 s. (PR-090)
|
||||
- With a persistent object cache, transient entries now expire: a timeout
|
||||
entry when it records, a value after at most a week (`MAX_CACHE_TTL`;
|
||||
HivePress writes the value before its timeout, and a miss only makes it
|
||||
rebuild). Entries of deleted posts no longer pile up. (PR-099)
|
||||
|
||||
### Upgrading
|
||||
|
||||
- Deploy with core 1.3.0: on an older core the AddOn declares no index at all
|
||||
(core 1.2.0 would run the ALTER inside a web request). (PR-090b)
|
||||
- Redis: entries written by 0.3.0 have no TTL (dev36 had 3.0 M). Give them one
|
||||
with non-blocking commands — never `wp cache flush-group`, which the Redis
|
||||
Object Cache drop-in runs as one server-side script and which blocked Redis
|
||||
on a large group. `NX` leaves entries written by 0.4.0 alone:
|
||||
|
||||
```
|
||||
redis-cli --scan --pattern '<WP_CACHE_KEY_SALT>wp:tmdo_hp_transient:*' \
|
||||
| awk '{printf "EXPIRE %s 604800 NX\r\n", $0}' | redis-cli --pipe
|
||||
```
|
||||
|
||||
dev36: 3,013,352 keys in 45 s, 0 errors, Redis latency max 2 ms. The pattern
|
||||
follows the drop-in's key layout (`<salt><blog prefix>:<group>:<key>`);
|
||||
check it with `redis-cli --scan --pattern '<salt>*tmdo_hp_transient*' | head`
|
||||
first. redis-cli 7 has no `--count` with `--scan`.
|
||||
|
||||
---
|
||||
|
||||
## [0.3.0] — 2026-09-27
|
||||
|
||||
Released with 2meet-data-optimizer 1.2.0 (hardening 2.2).
|
||||
|
||||
Reference in New Issue
Block a user