Arabic profanity or word weirdness.

Created on 23 April 2024, 8 months ago
Updated 28 April 2024, 8 months ago

Support inquiry

Hello, creating this ticket but unsure which category to go to.

This is a "Have you seen or experience this before?" and I am unable find any resource to my issue.
Currently, I have inherited a site that has several language pages.

The site is using:

  • D10.1.7 headless
  • Acquia search
  • search_api modules
  • Standard REST custom search

The site has a typical content type with title header fields and the issue I found was when the arabic word "الجنسي" ("sexual") was inserted towards the end of the text. Indexation ran ok. But when FE tries to fetch the data through REST it throw 503 error. The fetch service is a simple custom search to accept filters requests and throws a 503 exception when errored.
There is also another page with similar sentence but was create pre D10 and it was fetched successfully. However editing it to bring it forward to D10 cause the same issue.

I am unsure if this is D10, search, module or from acquia. I am also unsure if this is related to search configset. I had a read and trying to understand solr but no progress.

I have ran some test and it worked when:

  1. Removed the word from the sentence
  2. Added a space or a period at the end of the sentence

Problem/Motivation

Steps to reproduce

Proposed resolution

Remaining tasks

User interface changes

API changes

Data model changes

Release notes snippet

💬 Support request
Status

Active

Version

1.0

Component
Base 

Last updated 1 day ago

Created by

🇦🇺Australia edyuenyw

Live updates comments and jobs are added and updated live.
Sign in to follow issues

Comments & Activities

  • Issue created by @edyuenyw
  • Is nothing logged, anywhere?

  • 🇦🇺Australia edyuenyw

    The only log is coming from our custom search exception

    php-error web-26856 [07-Mar-2024 14:53:39 Australia/Melbourne] Uncaught PHP Exception Symfony\Component\HttpKernel\Exception\HttpException: "The search service is unavailable" at ... get()

    here the custom code get()
    public function get() {
    try {
    $this->initQuery();
    $this->query->addCondition('search_api_datasource', 'entity:node');
    $this->applySearchPhrase();
    $this->applySort();
    $this->applyFilters();
    $this->execute();
    $this->processResults();
    return $this->getResponse();
    }
    catch (\Exception $e) {
    $this->logger->error($e->getMessage());
    throw new HttpException(503, 'The search service is unavailable');
    }
    }

    I am still new to drupal so I'm trying to get it in local vanilla drupal but will take some time and not even sure it this the way to debug the issue.

  • This is probably more appropriate for the search API module. It could be a backend issue at Acquia.

    Can you reproduce the problem without using REST?

  • Why are you catching any exception type? Usually you should be specific.

    Anyway, what exception is actually caught? You log its message but that is not the log you showed.

  • 🇦🇺Australia edyuenyw

    Thanks @cilefen,

    There are a few thing I'm going to try which I haven't. Without using REST, the only way I was doing it was to use JSON API to retrieve the nodes. It returned all the data.

    I should also remove that catch error to test. At the moment I don't see any other errors apart from the the current error.

Production build 0.71.5 2024