Tests should have picked up that this configuration is missing a schema definition. Reverting and marking NW... although honestly it'll likely not get committed due to the 1.1 release of acquia_dam and EOL of media_acquiadam.
After reviewing the screenshots in #6, I think the following answers most of the questions in #12....
Summary
Set corresponding Drupal media status to unpublished when the 'released_and_not_expired' is false. Also set the item to unpublished if there is a delete error code. In all other status transitions, do nothing.
Answers and implementation details
- Users should not have the option to publish/unpublish media items in Drupal when items are unavailable or deleted in Widen. Widen is the source of truth, and while Drupal can provide tighter restrictions (unpublishing assets in Drupal when an asset is published in Widen), the opposite is not possible.
- - status should be set to unpublished during sync when widen shows deleted/expired (not simply in the form)
- - The status switch should be greyed out, thus the red error message will never occur because its not possible to get to this state.
- - The warning message can be simplified to: "This media item is unpublished due to being expired or deleted in Acquia DAM. Please [enable the asset in DAM] to use it in Drupal" --> [add a link the asset in widen]. If the user doesn't have access, thats fine.
- The "Check status sync" screenshot can be simplified as well, since this issue should resolve any relevant mismatch in published status:
- "Check Status Sync" --> Should say "DAM Status"
- Use "Available" (with Green checkbox), "Expired" (Warning Box), "Deleted" (Red X), "Unknown" (? box)
- Add a button link below the local tasks (that goes to a confirm deletion prompt), "Remove deleted assets"
Make this DAM media listing page filterable for the asset status sync feature. Theoretical steps of implementation:
At least for now, I don't think we need to do this. Simply adding a delete button should be fine. At some point it'd be good if this page had search or other filters, but thats not related to this issue (or before 1.1 release)
Also might be worth researching the possibility of defining a custom entity operation. A “Sync media item status accordingly” (or similar wording) option could appear both on the drop-down buttons at the right end and also in the bulk operation select list. Performing this operation updates the publishment status of selected media items according to their availability status in Widen. Also leaves a trace in Watchdog for later reference
This should occur with the regular sync operation that occurs during cron or the manually existing 'sync metadata' option.
For example, if a Widen admin sets a future value for the Release date field of an asset (causing the asset to become unreleased immediately) for an earlier publicly available asset, then the Drupal users will be not informed about to not use that piece of media
The only time we should change the publishing status in Drupal is when an item becomes expired or deleted. In all other cases, a user will need to manually republish the item in drupal. This protects items from unexpectedly becoming published in Drupal. If this becomes a problem, lets tackle that in another issue.
When performing the 'bulk delete' operation, a query should be done against all unpublished media assets in drupal, which will make a call to widen to verify they were deleted. If so, delete the media item.
Some things we don't need to worry about:
1) Checking usage status. DAM overrides drupal when it comes to publish status. If its not available in the DAM, its not available regardless of Drupal's publish status. No need to add extra logic or warnings here.
2) Base field storing the DAM status (I think) -- this would only be needed if we needed to match the published status, which we don't -- we only need an action to change Drupal's publish status based on whatever the current status is.
I don't think the extra overhead is worth it for the old versions of Drupal. If folks want to patch this module individually, thats cool -- but otherwise just wait for the next version of Drupal to come out.
Added checks to only add to versions of drupal less than 11.
This removes the item from ALL versions of Drupal, so the current MR won't work... fixing.....
Closing this as the change will be fixed the upcoming 1.1 release of acquia_dam, which will encourage existing media_acquiadam customers to migrate to.
For media_acquiadam, this works as designed. In the new 1.1 version of Acquia Dam, there will be more logic to control this. Not moving this ticket over because the MR and logic is entirely different. See 📌 Handling media items when their asset gets unavailable in Widen Postponed
This was committed at some point elsewhere
This is a good feature to add to the next version of Acquia DAM. It won't be implemented in the legacy version however.
Not going to fix for this version of Acquia DAM as I think almost everyone has migrated already.
Moving to the Acquia DAM queue as I'm guessing its still an issue? If not I'd suggest upgrading (if you haven't already)
This feature should already exist in acquia_dam, so any improvements won't be happening in media_acquiadam
Moving to the Acquia DAM module, as this won't go into the media_acquiadam module. If there is customer interest, we can get this prioritized sometime after 1.1 comes out.
Yup, sure was!
This was fixed at some point
8.x-1.x is now EOL, which ran on the WebDam/Bynder platform.
8.x-1.x is now EOL, which ran on the WebDam/Bynder platform.
8.x-1.x is now EOL, which ran on the WebDam/Bynder platform.
8.x-1.x is now EOL, which ran on the WebDam/Bynder platform.
8.x-1.x is now EOL, which ran on the WebDam/Bynder platform.
8.x-1.x is now EOL, which ran on the WebDam/Bynder platform.
8.x-1.x is now EOL, which ran on the WebDam/Bynder platform.
8.x-1.x is now EOL, which ran on the WebDam/Bynder platform.
8.x-1.x is now EOL, which ran on the WebDam/Bynder platform.
8.x-1.x is now EOL, which ran on the WebDam/Bynder platform.
8.x-1.x is now EOL, which ran on the WebDam/Bynder platform.
8.x-1.x is now EOL, which ran on the WebDam/Bynder platform.
8.x-1.x is now EOL, which ran on the WebDam/Bynder platform.
8.x-1.x is now EOL, which ran on the WebDam/Bynder platform.
8.x-1.x is now EOL, which ran on the WebDam/Bynder platform.
8.x-1.x is now EOL, which ran on the WebDam/Bynder platform.
8.x-1.x is now EOL, which ran on the WebDam/Bynder platform.
8.x-1.x is now EOL, which ran on the WebDam/Bynder platform.
I presume you mean 3.1 to 3.2 not 1.x to 2.x (those haven't been supported for a long time)
I'll need more details to action on this issue:
* Is this a local or acquia hosted environment?
* Did you run updb? It should update the config and state (not settings.php, that must be done manually)
* Is 'acquia_search_defaults' enabled? This is a sub module that provides the auto-wiring to Acquia Hosting.
After review with the API team, this is not something we can actually fix in the module. Instead, per customer request, I've added a debug flag that will display the error, in addition to logging it, so users have some idea why the asset couldn't be attached.
gábor hojtsy → credited japerry → .
The problem is due to core jsonapi not being required. This dependency used to be met my requiring jsonapi_extras. We don't need to require jsonapi_extras though for this to work.
Already fixed with D11 compatibility.
Needs a test before it can be committed.
japerry → made their first commit to this issue’s fork.
3.x is not supported anymore.
Since new versions require PHP 8+ to be compatible, won't be fixing this.
The tests use JSONapi extras, but the actual functionally does not, as stated in comment #12. Committed to 4.x!
Marking fixed so we can get it into the beta, but the embed codes should be added for these types. I'll open a new ticket to fix that part of the issue.
Yah we talked in slack, I think we can close this for now. I'm leary of making another branch when we don't even have a stable version of 2.0 yet. I'll have more updates here in 2 weeks (after Oct 8th) or so.
Looks good to me, committed.
Done! 🌱 Acquia Search 3.2.0 release Active
Oh he didn't show up on the issue queue but I see it in the tracker. Done! Also, @luke.leber, if you get a chance, can you test against Acquia Search 3.2.0-rc1? Automated tests are passing, but we don't have great insight into the various configurations customers have. Once thats done, we can make 3.2.0 and not have to maintain two branches.
Note, I'll have to make some changes to get a new fix for 3.2... which should be out as a full release soon.
Perfect! yah tests look good (both manual and auto) Committed.
japerry → changed the visibility of the branch 3466306-couldnt-acquire-lock-fix to hidden.
japerry → made their first commit to this issue’s fork.
Bleh, it looks like the update fixture needs to be rebuilt. It also is missing a few of the old sub-module test cases, which is probably why users are finding failures when upgrading with the sub modules being enabled.
Theres no reason to drop D9.5 support yet, and I don't think we need to make a new major yet either. Also, the 2.x version is still in Alpha, so we -could- remove the sub modules that are deprecated, but I'm inclined to wait a major so people can upgrade to 2.x without causing a WSOD.
Tour was added as part of the migration fixture, which is failing in Drupal 11 tests. I don't see any place where tour is being actually used in the fixture, so I removed it.
Will wait for tests to pass, and if so will commit!
japerry → made their first commit to this issue’s fork.
Its part of the index and not the server itself. Attached a screenshot. You should be able to find it by going to: "en/admin/config/search/search-api/index/acquia_search_index/edit"
Looks pretty good! Committed.
I also saw the logic issue with the FALSE cache set and retrieving the cache. I also noticed when using the snippet above (returning false on the search request) that the 'getAvailableCores' method gets called multiple times, meaning the API query to get search indexes was getting called multiple times. (which is probably where the lock issue is coming from)
I've made a few changes to PR41, but would love a review before it gets committed!
japerry → made their first commit to this issue’s fork.
The problem is that they still force edismax internally in the connector. I explained multiple times why this is a bad idea, but they're ignoring it.
Per Markus' recommendation, we did add a feature to disable the edismax functionality quite a while ago
#3305163: Most Search API boost processors have no effect →
, and its set to be disabled by default:
https://git.drupalcode.org/project/acquia_search/-/commit/03d2d59b2e9c6b...
Unless there is something I'm missing, please file a specific issue. But I don't think his comment in 2024 reflects the reality of the module.
The direct query parser uses the stop words, too. That depends on the fields that a queried, not the parser.
Acquia provides customers a way to customize configsets, so whatever issue you're seeing is likely solr configuration. Those working on the connector module here have limited experience on actual solr usage, so I'd differ to Markus or someone else in the solr community on how to make that work. If there is something that needs to change in the module, feel free to raise a specific issue.
The earlier MR doesn't address the root issue, but there was some odd things going on with the logic in the getTelemetryData method.. updated the tests to verify correct data is sent and merged!
Looks like #6 is the winner! Committed.
After looking at the remaining linting issues, this module and those linting issues are so simple that despite my usual cursing against linting with compatibility, I went ahead and pushed a 'linting' commit.
I also pushed a commit removing the legacy travis.yml and corresponding config readme info (pointing here instead)
If you disagree, feel free to revert the 2 commits. But otherwise, tests and lints are now passing.
There were some other issues like removing 9.5 support and other seemingly linting issues which shouldn't (probably) be part of this commit. But otherwise, tests are passing (in both gitlab ci and locally for me across my 9.5, 10.3, and 11 sites) -- so RTBC?