Welcome to Knowage Q&A, where you can ask questions and receive answers from other members of the community.
0 votes
1 view
Dear MR/Mrs,
Thank you so much for these fantastic product knowledge analytic tools.
When using caching in the widget cockpit in Knowage Community Edition 8 "Docker version", I'm experiencing phasing issues. Arabic data appearing a question mark in the widget cockpit. Could you please guide me on how to fix this?
When caching wasn't used, it was working as well, but it was very slow. If there was a way to use caching with Arabic data, please provide me with the steps.

thanks for your concern.
Environment Knowage Community Edition 8 "Docker version"
in Docker by (120 points)

1 Answer

0 votes

Hello dear,

if the issue only happens when using cache, it could be due to the configuration of the cache dataSource.

First of all check that your server.xml file contains the following line (https://knowage-suite.readthedocs.io/en/8.0/installation-guide/manual-installation.html#advanced-connector-settings) :

<Connector address="0.0.0.0" port="8009" protocol="AJP/1.3" maxPostSize="2097152000" redirectPort="8443" URIEncoding="UTF-8" />

Then check you setenv script and make sure that it contains the following instruction (https://knowage-suite.readthedocs.io/en/8.0/installation-guide/manual-installation.html#recommended-configuration) :

export JAVA_OPTS="$JAVA_OPTS -Dfile.encoding=UTF-8"

Last but not least check the encoding of the cache database.

Hope this helps!

Bye,
Marco

by (9.3k points)
edited by
Hello Marco,

Thanks for your reply

I've modified both server.xml and setenv.sh but still having issue only when caching.

So please let me know how to check the encoding of the cache database (I'm using the default CACHE_DS with JNDI)

Thanks again for your support.

You have to connect to the DB and run a query to retrieve the encoding.

Below you can find an example of query for MySQL:

SELECT default_character_set_name FROM information_schema.SCHEMATA 
WHERE schema_name = "schemaname";

Hello Marco,

thank you for your response. I run this query "

SELECT default_character_set_name FROM information_schema.SCHEMATA 
There is no row to show when schema_name = "schemaname";"
 when i run it without a where clause
I get :utf8 and latin1.

 

You need to substitute "schemaname" with the name of your cache schema.
For instance if the name of your cache schema is "ds_cache" the query will be like:

SELECT default_character_set_name FROM information_schema.SCHEMATA 
WHERE schema_name = "ds_cache";

Bye,
Marco

...