Page MenuHomePhabricator

Links from lexserver/lexicon page are missing lexserver/ path-prefix
Closed, ResolvedPublic

Description

Originally reported on github by @Lokal_Profil:

Visiting e.g. https://wikispeech-tts-dev.wmflabs.org/lexserver/lexicon/ you see that the list link goes to[ /lexicon/list]( https://wikispeech-tts-dev.wmflabs.org/lexicon/list), it should be pointing to lexserver/lexicon/list

https://github.com/stts-se/pronlex/blob/3360e692965fe020681bf99e8e68c5541587b3e3/lexserver/lexserver.go#L839
I believe changing "/lexicon" to "lexserver/lexicon" would probably fix it but since this would need to have to be repeated for each subrouter and since the lexserver prefix was probably determined by
wikispeech_server/wikispeech.py#L793 I'm guessing that the needed change is in how rout is defined.

Event Timeline

It seems to be a common issue with proxies. I made a workaround where you can specify the server prefix as an explicit flag (commit https://github.com/stts-se/pronlex/tree/2683ba61471068c65f7e810cc9031931b39f53fe)
Tested and working for a standalone lexserver behind Apache proxy.

The prefix is -r for the script start_server.sh, and -prefix for the go executable in pronlex/lexserver/)

Sample usage:
sh scripts/start_server.sh -a ~/wikispeech/sqlite/ -e sqlite -r lexserver

@Lokal_Profil Please confirm if this helps.

Change 668092 had a related patch set uploaded (by Lokal Profil; owner: Lokal Profil):
[mediawiki/services/wikispeech/pronlex@master] [WIP]Correct links on lexserver

https://gerrit.wikimedia.org/r/668092

@kalle Would you mind checking if https://gerrit.wikimedia.org/r/668096 + https://gerrit.wikimedia.org/r/668092 fixes the issue and if so bump Speechoid and deploy this to our dev server?

Change 668092 merged by jenkins-bot:
[mediawiki/services/wikispeech/pronlex@master] Correct links on lexserver

https://gerrit.wikimedia.org/r/668092

We've updated with this Pronlex on http://wikispeech-tts-dev.wmflabs.org/. Wikispeech server is now unable to communicate with pronlex. Is the URL path wrong in there now?

Here is the complete log, notice wikispeech-server in the end:

mary-tts_1           | Waiting for all other services to start...
mary-tts_1           | wait-for-it.sh: waiting 60 seconds for mishkal:8080
mary-tts_1           | wait-for-it.sh: mishkal:8080 is available after 4 seconds
mary-tts_1           | Starting HAProxy
mary-tts_1           | Starting Mary TTS STTS.
wikispeech-server_1  | Waiting for all other services to start...
wikispeech-server_1  | wait-for-it.sh: waiting 60 seconds for mishkal:8080
wikispeech-server_1  | wait-for-it.sh: mishkal:8080 is available after 5 seconds
wikispeech-server_1  | wait-for-it.sh: waiting 60 seconds for mary-tts:59125
mariadb_1            | 2021-03-05 08:56:49+00:00 [Note] [Entrypoint]: Entrypoint script for MySQL Server 1:10.5.3+maria~focal started.
mariadb_1            | 2021-03-05 08:56:50+00:00 [Note] [Entrypoint]: Switching to dedicated user 'mysql'
mariadb_1            | 2021-03-05 08:56:50+00:00 [Note] [Entrypoint]: Entrypoint script for MySQL Server 1:10.5.3+maria~focal started.
mariadb_1            | 2021-03-05 08:56:50+00:00 [Note] [Entrypoint]: Initializing database files
mariadb_1            | 
mariadb_1            | 
mariadb_1            | PLEASE REMEMBER TO SET A PASSWORD FOR THE MariaDB root USER !
mariadb_1            | To do so, start the server, then issue the following commands:
mariadb_1            | 
mariadb_1            | '/usr/bin/mysqladmin' -u root password 'new-password'
mariadb_1            | '/usr/bin/mysqladmin' -u root -h  password 'new-password'
mariadb_1            | 
mariadb_1            | Alternatively you can run:
mariadb_1            | '/usr/bin/mysql_secure_installation'
mariadb_1            | 
mariadb_1            | which will also give you the option of removing the test
mariadb_1            | databases and anonymous user created by default.  This is
mariadb_1            | strongly recommended for production servers.
mariadb_1            | 
mariadb_1            | See the MariaDB Knowledgebase at https://mariadb.com/kb or the
mariadb_1            | MySQL manual for more instructions.
mariadb_1            | 
symbolset_1          | Starting Symbolset...
symbolset_1          | 2021/03/05 08:56:49 server: created logger for stderr
symbolset_1          | 2021/03/05 08:56:49 server: loading mapper definitions from file ss_files/mappers.txt
symbolset_1          | 2021/03/05 08:56:49 server: initializing mapper {sv-se_ws-sampa-DEMO sv-se_sampa_mary-DEMO [{" au . l a ' a*U - l a}]}
symbolset_1          | 2021/03/05 08:56:49 server: initializing mapper {sv-se_sampa_mary-DEMO sv-se_ws-sampa-DEMO [{' a*U - l a " au . l a}]}
symbolset_1          | 2021/03/05 08:56:49 server: initializing mapper {sv-se_ws-sampa sv-se_sampa_mary [{" au . l a ' a*U - l a}]}
symbolset_1          | 2021/03/05 08:56:49 server: initializing mapper {sv-se_sampa_mary sv-se_ws-sampa [{' a*U - l a " au . l a}]}
symbolset_1          | 2021/03/05 08:56:49 server: loaded symbol sets from dir ss_files
symbolset_1          | 2021/03/05 08:56:49 server: loaded converter enusampa_svsampa-DEMO
mariadb_1            | Please report any problems at https://mariadb.org/jira
mariadb_1            | 
mariadb_1            | The latest information about MariaDB is available at https://mariadb.org/.
mariadb_1            | You can find additional information about the MySQL part at:
mariadb_1            | https://dev.mysql.com
mariadb_1            | Consider joining MariaDB's strong and vibrant community:
mariadb_1            | https://mariadb.org/get-involved/
mariadb_1            | 
mariadb_1            | 2021-03-05 08:56:54+00:00 [Note] [Entrypoint]: Database files initialized
mariadb_1            | 2021-03-05 08:56:54+00:00 [Note] [Entrypoint]: Starting temporary server
mariadb_1            | 2021-03-05 08:56:54+00:00 [Note] [Entrypoint]: Waiting for server startup
mariadb_1            | 2021-03-05  8:56:54 0 [Note] mysqld (mysqld 10.5.3-MariaDB-1:10.5.3+maria~focal) starting as process 101 ...
mariadb_1            | 2021-03-05  8:56:54 0 [Note] InnoDB: Using Linux native AIO
mariadb_1            | 2021-03-05  8:56:54 0 [Note] InnoDB: Mutexes and rw_locks use GCC atomic builtins
mariadb_1            | 2021-03-05  8:56:54 0 [Note] InnoDB: Uses event mutexes
mariadb_1            | 2021-03-05  8:56:54 0 [Note] InnoDB: Compressed tables use zlib 1.2.11
mariadb_1            | 2021-03-05  8:56:54 0 [Note] InnoDB: Number of pools: 1
mariadb_1            | 2021-03-05  8:56:54 0 [Note] InnoDB: Using SSE2 crc32 instructions
mariadb_1            | 2021-03-05  8:56:54 0 [Note] mysqld: O_TMPFILE is not supported on /tmp (disabling future attempts)
mariadb_1            | 2021-03-05  8:56:54 0 [Note] InnoDB: Initializing buffer pool, total size = 268435456, chunk size = 134217728
mariadb_1            | 2021-03-05  8:56:54 0 [Note] InnoDB: Completed initialization of buffer pool
mariadb_1            | 2021-03-05  8:56:54 0 [Note] InnoDB: If the mysqld execution user is authorized, page cleaner thread priority can be changed. See the man page of setpriority().
mariadb_1            | 2021-03-05  8:56:54 0 [Note] InnoDB: 128 rollback segments are active.
mariadb_1            | 2021-03-05  8:56:54 0 [Note] InnoDB: Creating shared tablespace for temporary tables
mariadb_1            | 2021-03-05  8:56:54 0 [Note] InnoDB: Setting file './ibtmp1' size to 12 MB. Physically writing the file full; Please wait ...
mariadb_1            | 2021-03-05  8:56:54 0 [Note] InnoDB: File './ibtmp1' size is now 12 MB.
mariadb_1            | 2021-03-05  8:56:54 0 [Note] InnoDB: 10.5.3 started; log sequence number 45041; transaction id 21
mariadb_1            | 2021-03-05  8:56:54 0 [Note] Plugin 'FEEDBACK' is disabled.
mariadb_1            | 2021-03-05  8:56:54 0 [Note] InnoDB: Loading buffer pool(s) from /var/lib/mysql/ib_buffer_pool
mariadb_1            | 2021-03-05  8:56:54 0 [Warning] 'user' entry 'root@9e4bd946a063' ignored in --skip-name-resolve mode.
mariadb_1            | 2021-03-05  8:56:54 0 [Warning] 'user' entry '@9e4bd946a063' ignored in --skip-name-resolve mode.
mariadb_1            | 2021-03-05  8:56:54 0 [Warning] 'proxies_priv' entry '@% root@9e4bd946a063' ignored in --skip-name-resolve mode.
mariadb_1            | 2021-03-05  8:56:54 0 [Note] InnoDB: Buffer pool(s) load completed at 210305  8:56:54
mariadb_1            | 2021-03-05  8:56:54 0 [Note] Reading of all Master_info entries succeeded
mariadb_1            | 2021-03-05  8:56:54 0 [Note] Added new Master_info '' to hash table
mariadb_1            | 2021-03-05  8:56:54 0 [Note] mysqld: ready for connections.
mariadb_1            | Version: '10.5.3-MariaDB-1:10.5.3+maria~focal'  socket: '/var/run/mysqld/mysqld.sock'  port: 0  mariadb.org binary distribution
mariadb_1            | 2021-03-05 08:56:55+00:00 [Note] [Entrypoint]: Temporary server started.
symbolset_1          | 2021/03/05 08:56:49 server: loaded converter enusampa_svsampa
symbolset_1          | 2021/03/05 08:56:49 server: loaded converters from dir ss_files
symbolset_1          | 2021/03/05 08:56:49 Server started on 0.0.0.0:8771
symbolset_1          | 2021/03/05 08:56:49 server: server up and running using port 8771
pronlex_1            | Waiting for all other services to start...
pronlex_1            | wait-for-it.sh: waiting 120 seconds for mariadb:3306
mary-tts_1           | MARY server 6.0-SNAPSHOT starting as an HTTP server...log4j:ERROR Could not find value for key log4j.appender.logfile
mary-tts_1           | log4j:ERROR Could not instantiate appender named "logfile".
mary-tts_1           | log4j:WARN No appenders could be found for logger (marytts.main).
mary-tts_1           | log4j:WARN Please initialize the log4j system properly.
mary-tts_1           | log4j:WARN See http://logging.apache.org/log4j/1.2/faq.html#noconfig for more info.
mary-tts_1           | WARNING: An illegal reflective access operation has occurred
mary-tts_1           | WARNING: Illegal reflective access by org.codehaus.groovy.reflection.CachedClass$3$1 (file:/srv/mary-tts/build/install/mary-tts/lib/groovy-all-2.4.7.jar) to method java.lang.Object.finalize()
mary-tts_1           | WARNING: Please consider reporting this to the maintainers of org.codehaus.groovy.reflection.CachedClass$3$1
mary-tts_1           | WARNING: Use --illegal-access=warn to enable warnings of further illegal reflective access operations
mary-tts_1           | WARNING: All illegal access operations will be denied in a future release
mary-tts_1           | Arabic Postlex LOADING
mary-tts_1           | lexiconProperty: jar:/marytts/language/da/lexicon/da_nst_ok_lexicon.fst
mary-tts_1           | Loading da.secondary_lexicon: jar:/marytts/language/da/lexicon/da_nst_skipped_lexicon.dict
mary-tts_1           | lexiconProperty: jar:/marytts/language/sv/lexicon/sv_nst_ok_lexicon.fst
mary-tts_1           | lexiconProperty: jar:/marytts/language/no/lexicon/no_nst_ok_lexicon.fst
mariadb_1            | Warning: Unable to load '/usr/share/zoneinfo/leap-seconds.list' as time zone. Skipping it.
mariadb_1            | Warning: Unable to load '/usr/share/zoneinfo/leapseconds' as time zone. Skipping it.
mary-tts_1           |  started in 20.955 s on port 59125
wikispeech-server_1  | wait-for-it.sh: mary-tts:59125 is available after 23 seconds
wikispeech-server_1  | wait-for-it.sh: waiting 60 seconds for mary-tts:8080
wikispeech-server_1  | wait-for-it.sh: mary-tts:8080 is available after 0 seconds
wikispeech-server_1  | wait-for-it.sh: waiting 60 seconds for pronlex:8787
mariadb_1            | Warning: Unable to load '/usr/share/zoneinfo/tzdata.zi' as time zone. Skipping it.
mariadb_1            | 2021-03-05  8:57:32 5 [Warning] 'proxies_priv' entry '@% root@9e4bd946a063' ignored in --skip-name-resolve mode.
mariadb_1            | 2021-03-05 08:57:32+00:00 [Note] [Entrypoint]: Creating database pronlex
mariadb_1            | 2021-03-05 08:57:32+00:00 [Note] [Entrypoint]: Creating user pronlex
mariadb_1            | 2021-03-05 08:57:32+00:00 [Note] [Entrypoint]: Giving user pronlex access to schema pronlex
mariadb_1            | 2021-03-05  8:57:32 9 [Warning] 'proxies_priv' entry '@% root@9e4bd946a063' ignored in --skip-name-resolve mode.
mariadb_1            | 
mariadb_1            | 2021-03-05 08:57:32+00:00 [Note] [Entrypoint]: Stopping temporary server
mariadb_1            | 2021-03-05  8:57:32 0 [Note] mysqld (initiated by: root[root] @ localhost []): Normal shutdown
mariadb_1            | 2021-03-05  8:57:32 0 [Note] Event Scheduler: Purging the queue. 0 events
mariadb_1            | 2021-03-05  8:57:32 0 [Note] InnoDB: FTS optimize thread exiting.
mariadb_1            | 2021-03-05  8:57:32 0 [Note] InnoDB: Starting shutdown...
mariadb_1            | 2021-03-05  8:57:32 0 [Note] InnoDB: Dumping buffer pool(s) to /var/lib/mysql/ib_buffer_pool
mariadb_1            | 2021-03-05  8:57:32 0 [Note] InnoDB: Buffer pool(s) dump completed at 210305  8:57:32
mariadb_1            | 2021-03-05  8:57:33 0 [Note] InnoDB: Shutdown completed; log sequence number 45081; transaction id 24
mariadb_1            | 2021-03-05  8:57:33 0 [Note] InnoDB: Removed temporary tablespace data file: "ibtmp1"
mariadb_1            | 2021-03-05  8:57:33 0 [Note] mysqld: Shutdown complete
mariadb_1            | 
mariadb_1            | 2021-03-05 08:57:34+00:00 [Note] [Entrypoint]: Temporary server stopped
mariadb_1            | 
mariadb_1            | 2021-03-05 08:57:34+00:00 [Note] [Entrypoint]: MySQL init process done. Ready for start up.
mariadb_1            | 
mariadb_1            | 2021-03-05  8:57:34 0 [Note] mysqld (mysqld 10.5.3-MariaDB-1:10.5.3+maria~focal) starting as process 1 ...
mariadb_1            | 2021-03-05  8:57:34 0 [Note] InnoDB: Using Linux native AIO
mariadb_1            | 2021-03-05  8:57:34 0 [Note] InnoDB: Mutexes and rw_locks use GCC atomic builtins
mariadb_1            | 2021-03-05  8:57:34 0 [Note] InnoDB: Uses event mutexes
mariadb_1            | 2021-03-05  8:57:34 0 [Note] InnoDB: Compressed tables use zlib 1.2.11
mariadb_1            | 2021-03-05  8:57:34 0 [Note] InnoDB: Number of pools: 1
mariadb_1            | 2021-03-05  8:57:34 0 [Note] InnoDB: Using SSE2 crc32 instructions
mariadb_1            | 2021-03-05  8:57:34 0 [Note] mysqld: O_TMPFILE is not supported on /tmp (disabling future attempts)
mariadb_1            | 2021-03-05  8:57:34 0 [Note] InnoDB: Initializing buffer pool, total size = 268435456, chunk size = 134217728
mariadb_1            | 2021-03-05  8:57:34 0 [Note] InnoDB: Completed initialization of buffer pool
mariadb_1            | 2021-03-05  8:57:34 0 [Note] InnoDB: If the mysqld execution user is authorized, page cleaner thread priority can be changed. See the man page of setpriority().
mariadb_1            | 2021-03-05  8:57:34 0 [Note] InnoDB: 128 rollback segments are active.
mariadb_1            | 2021-03-05  8:57:34 0 [Note] InnoDB: Creating shared tablespace for temporary tables
mariadb_1            | 2021-03-05  8:57:34 0 [Note] InnoDB: Setting file './ibtmp1' size to 12 MB. Physically writing the file full; Please wait ...
mariadb_1            | 2021-03-05  8:57:34 0 [Note] InnoDB: File './ibtmp1' size is now 12 MB.
mariadb_1            | 2021-03-05  8:57:34 0 [Note] InnoDB: 10.5.3 started; log sequence number 45081; transaction id 21
mariadb_1            | 2021-03-05  8:57:34 0 [Note] Plugin 'FEEDBACK' is disabled.
mariadb_1            | 2021-03-05  8:57:34 0 [Note] InnoDB: Loading buffer pool(s) from /var/lib/mysql/ib_buffer_pool
mariadb_1            | 2021-03-05  8:57:34 0 [Note] Server socket created on IP: '::'.
mariadb_1            | 2021-03-05  8:57:34 0 [Warning] 'proxies_priv' entry '@% root@9e4bd946a063' ignored in --skip-name-resolve mode.
mariadb_1            | 2021-03-05  8:57:34 0 [Note] InnoDB: Buffer pool(s) load completed at 210305  8:57:34
mariadb_1            | 2021-03-05  8:57:34 0 [Note] Reading of all Master_info entries succeeded
mariadb_1            | 2021-03-05  8:57:34 0 [Note] Added new Master_info '' to hash table
mariadb_1            | 2021-03-05  8:57:34 0 [Note] mysqld: ready for connections.
mariadb_1            | Version: '10.5.3-MariaDB-1:10.5.3+maria~focal'  socket: '/var/run/mysqld/mysqld.sock'  port: 3306  mariadb.org binary distribution
mariadb_1            | 2021-03-05  8:57:35 3 [Warning] Aborted connection 3 to db: 'unconnected' user: 'unauthenticated' host: '172.22.0.5' (This connection closed normally without authentication)
pronlex_1            | wait-for-it.sh: mariadb:3306 is available after 46 seconds
pronlex_1            | Starting Pronlex...
pronlex_1            | [start_server.sh] OPTIONS:
pronlex_1            | [start_server.sh] application folder: /srv/appdir
pronlex_1            | [start_server.sh] db engine: sqlite
pronlex_1            | [start_server.sh] db location: /srv/appdir
pronlex_1            | [start_server.sh] lexserver port: 8787
pronlex_1            | [start_server.sh] static: /srv/appdir/static
pronlex_1            | [start_server.sh] logger: stderr
pronlex_1            | [start_server.sh] go binaries: 0
pronlex_1            | [start_server.sh] test mode: on
pronlex_1            | 2021/03/05 08:57:40 lexserver: couldn't retrieve git release info: exit status 128
pronlex_1            | 2021/03/05 08:57:40 lexserver: created logger for stderr
pronlex_1            | 2021/03/05 08:57:40 lexserver: db_location = /srv/appdir
pronlex_1            | 2021/03/05 08:57:40 lexserver: started
pronlex_1            | 2021/03/05 08:57:40 demo_setup: creating demo database ...
pronlex_1            | 2021/03/05 08:57:40 dbapi_sqlite: deleting db file: /srv/appdir/wikispeech_lexserver_testdb.db
pronlex_1            | 2021/03/05 08:57:40 dbapi_sqlite: deleting db file: /srv/appdir/wikispeech_lexserver_testdb.db-shm
pronlex_1            | 2021/03/05 08:57:40 dbapi_sqlite: deleting db file: /srv/appdir/wikispeech_lexserver_testdb.db-wal
pronlex_1            | 2021/03/05 08:57:41 demo_setup: test database completed
pronlex_1            | 2021/03/05 08:57:41 DBManager.CloseDB: closed db 'wikispeech_lexserver_testdb'
pronlex_1            | 2021/03/05 08:57:41 lexserver: creating test server on port :8799
pronlex_1            | 2021/03/05 08:57:41 lexserver: loading dbs from location /srv/appdir
pronlex_1            | 2021/03/05 08:57:41 db_manager: loading dbs from location /srv/appdir
pronlex_1            | 2021/03/05 08:57:41 dbapi_sqlite: loading dbs from location /srv/appdir
pronlex_1            | 2021/03/05 08:57:41 dbapi_sqlite: skipping file: '/srv/appdir/import.sh'
pronlex_1            | 2021/03/05 08:57:41 dbapi_sqlite: skipping file: '/srv/appdir/start_server.sh'
pronlex_1            | 2021/03/05 08:57:41 dbapi_sqlite: skipping file: '/srv/appdir/static'
pronlex_1            | 2021/03/05 08:57:41 dbapi_sqlite: skipping file: '/srv/appdir/symbol_sets'
pronlex_1            | 2021/03/05 08:57:41 dbapi_sqlite: connecting to Sqlite3 db /srv/appdir/wikispeech_lexserver_demo.db
pronlex_1            | 2021/03/05 08:57:41 dbapi_sqlite: skipping file: '/srv/appdir/wikispeech_lexserver_demo.db-shm'
pronlex_1            | 2021/03/05 08:57:41 dbapi_sqlite: skipping file: '/srv/appdir/wikispeech_lexserver_demo.db-wal'
pronlex_1            | 2021/03/05 08:57:41 dbapi_sqlite: connecting to Sqlite3 db /srv/appdir/wikispeech_lexserver_testdb.db
pronlex_1            | 2021/03/05 08:57:41 dbapi_sqlite: skipping file: '/srv/appdir/wikispeech_lexserver_testdb.db-shm'
pronlex_1            | 2021/03/05 08:57:41 dbapi_sqlite: skipping file: '/srv/appdir/wikispeech_lexserver_testdb.db-wal'
pronlex_1            | 2021/03/05 08:57:41 dbapi_sqlite: loaded 2 db(s)
pronlex_1            | 2021/03/05 08:57:41 db_manager: loaded 2 db(s)
pronlex_1            | 2021/03/05 08:57:41 lexserver: server created but not started for port :8799
pronlex_1            | 2021/03/05 08:57:41 init_tests: waiting for server to start ...
pronlex_1            | 2021/03/05 08:57:43 init_tests: server up and running using port :8799
pronlex_1            | 2021/03/05 08:57:43 init_tests: running tests
pronlex_1            | 2021/03/05 08:57:43 init_tests: testing response codes for built-in example URLs
pronlex_1            | 2021/03/05 08:57:43 init_tests: /lexicon/list => /lexicon/list : 200 OK
pronlex_1            | 2021/03/05 08:57:43 lexiconLookup: zero params, serving lexlookup.html
pronlex_1            | 2021/03/05 08:57:43 init_tests: /lexicon/lookup => /lexicon/lookup : 200 OK
pronlex_1            | 2021/03/05 08:57:43 init_tests: /lexicon/entries_exist => /lexicon/entries_exist?lexicons=wikispeech_lexserv (...) : 200 OK
pronlex_1            | 2021/03/05 08:57:43 init_tests: /lexicon/info/{lexicon_name} => /lexicon/info/wikispeech_lexserver_testdb:sv : 200 OK
pronlex_1            | 2021/03/05 08:57:43 init_tests: /lexicon/stats/{lexicon_name} => /lexicon/stats/wikispeech_lexserver_testdb:sv : 200 OK
pronlex_1            | 2021/03/05 08:57:43 init_tests: /lexicon/list_comment_labels/{lexicon_name} => /lexicon/list_current_entry_statuses/wikispeech_le (...) : 200 OK
pronlex_1            | 2021/03/05 08:57:43 init_tests: /lexicon/list_current_entry_users/{lexicon_name} => /lexicon/list_current_entry_users/wikispeech_lexse (...) : 200 OK
pronlex_1            | 2021/03/05 08:57:43 init_tests: /lexicon/list_current_entry_statuses/{lexicon_name} => /lexicon/list_current_entry_statuses/wikispeech_le (...) : 200 OK
pronlex_1            | 2021/03/05 08:57:43 init_tests: /lexicon/list_all_entry_statuses/{lexicon_name} => /lexicon/list_all_entry_statuses/wikispeech_lexser (...) : 200 OK
pronlex_1            | 2021/03/05 08:57:43 init_tests: /lexicon/updateentry => /lexicon/updateentry?entry={
pronlex_1            |     "id": 9,
pronlex_1            |     "lex (...) : 200 OK
pronlex_1            | 2021/03/05 08:57:43 init_tests: /lexicon/addentry => /lexicon/addentry?lexicon_name=wikispeech_lexserve (...) : 200 OK
pronlex_1            | 2021/03/05 08:57:43 init_tests: /admin/lex_import_page => /admin/lex_import_page : 200 OK
pronlex_1            | 2021/03/05 08:57:43 init_tests: /admin/list_dbs => /admin/list_dbs : 200 OK
pronlex_1            | 2021/03/05 08:57:43 init_tests: /admin/list_ids/{lexicon_name} => /admin/list_ids/wikispeech_lexserver_testdb:sv : 200 OK
pronlex_1            | 2021/03/05 08:57:43 init_tests: /demo/search => /demo/search : 200 OK
pronlex_1            | 2021/03/05 08:57:43 init_tests: /meta/urls => /meta/urls : 200 OK
pronlex_1            | 2021/03/05 08:57:43 init_tests: /meta/examples => /meta/examples : 200 OK
pronlex_1            | 2021/03/05 08:57:43 init_tests: testing some URLs with content
pronlex_1            | 2021/03/05 08:57:43 init_tests: testing 200 status: 1
pronlex_1            | 2021/03/05 08:57:43 init_tests: lookup/entry http://localhost:8799/ipa_table.txt
pronlex_1            | 2021/03/05 08:57:43 init_tests: testing entry lookup: 4
pronlex_1            | 2021/03/05 08:57:43 init_tests: lookup/entry http://localhost:8799/lexicon/lookup?lexicons=wikispeech_lexserver_testdb:sv&wordlike=h%C3%A4st__
pronlex_1            | 2021/03/05 08:57:43 init_tests: lookup/entry http://localhost:8799/lexicon/lookup?lexicons=wikispeech_lexserver_testdb:sv&wordpartsregexp=h%C3%A4st
pronlex_1            | 2021/03/05 08:57:43 init_tests: lookup/entry http://localhost:8799/lexicon/lookup?lemmas=kex&lexicons=wikispeech_lexserver_testdb:sv
pronlex_1            | 2021/03/05 08:57:43 init_tests: lookup/entry http://localhost:8799/lexicon/lookup?lexicons=wikispeech_lexserver_testdb:sv&words=dom&transcriptionlike=%25o:%25&pp=yes
pronlex_1            | 2021/03/05 08:57:43 init_tests: testing json map results: 0
pronlex_1            | 2021/03/05 08:57:43 init_tests: testing json list results: 1
pronlex_1            | 2021/03/05 08:57:43 init_tests: jsonList http://localhost:8799/admin/list_dbs
pronlex_1            | 2021/03/05 08:57:43 init_tests: testing boolean results: 0
pronlex_1            | 2021/03/05 08:57:43 init_tests: 23 tests completed without errors
pronlex_1            | 2021/03/05 08:57:43 lexserver: BYE!
pronlex_1            | 2021/03/05 08:57:43 lexserver: shutting down...
pronlex_1            | 2021/03/05 08:57:43 DBManager.CloseDB: closed db 'wikispeech_lexserver_demo'
pronlex_1            | 2021/03/05 08:57:43 lexserver: closed database wikispeech_lexserver_demo
pronlex_1            | 2021/03/05 08:57:43 DBManager.CloseDB: closed db 'wikispeech_lexserver_testdb'
pronlex_1            | 2021/03/05 08:57:43 lexserver: closed database wikispeech_lexserver_testdb
pronlex_1            | 2021/03/05 08:57:43 lexserver: shutdown completed
pronlex_1            | 2021/03/05 08:57:46 lexserver: couldn't retrieve git release info: exit status 128
pronlex_1            | 2021/03/05 08:57:46 lexserver: created logger for stderr
pronlex_1            | 2021/03/05 08:57:46 lexserver: db_location = /srv/appdir
pronlex_1            | 2021/03/05 08:57:46 lexserver: started
pronlex_1            | 2021/03/05 08:57:46 demo_setup: creating demo database ...
pronlex_1            | 2021/03/05 08:57:46 dbapi_sqlite: deleting db file: /srv/appdir/wikispeech_lexserver_testdb.db
pronlex_1            | 2021/03/05 08:57:46 dbapi_sqlite: deleting db file: /srv/appdir/wikispeech_lexserver_testdb.db-shm
pronlex_1            | 2021/03/05 08:57:46 dbapi_sqlite: deleting db file: /srv/appdir/wikispeech_lexserver_testdb.db-wal
pronlex_1            | 2021/03/05 08:57:46 demo_setup: test database completed
pronlex_1            | 2021/03/05 08:57:46 DBManager.CloseDB: closed db 'wikispeech_lexserver_testdb'
pronlex_1            | 2021/03/05 08:57:46 lexserver: creating standard server on port :8787
pronlex_1            | 2021/03/05 08:57:46 lexserver: loading dbs from location /srv/appdir
pronlex_1            | 2021/03/05 08:57:46 db_manager: loading dbs from location /srv/appdir
pronlex_1            | 2021/03/05 08:57:46 dbapi_sqlite: loading dbs from location /srv/appdir
pronlex_1            | 2021/03/05 08:57:46 dbapi_sqlite: skipping file: '/srv/appdir/import.sh'
pronlex_1            | 2021/03/05 08:57:46 dbapi_sqlite: skipping file: '/srv/appdir/start_server.sh'
pronlex_1            | 2021/03/05 08:57:46 dbapi_sqlite: skipping file: '/srv/appdir/static'
pronlex_1            | 2021/03/05 08:57:46 dbapi_sqlite: skipping file: '/srv/appdir/symbol_sets'
pronlex_1            | 2021/03/05 08:57:46 dbapi_sqlite: connecting to Sqlite3 db /srv/appdir/wikispeech_lexserver_demo.db
pronlex_1            | 2021/03/05 08:57:46 dbapi_sqlite: connecting to Sqlite3 db /srv/appdir/wikispeech_lexserver_testdb.db
pronlex_1            | 2021/03/05 08:57:46 dbapi_sqlite: skipping file: '/srv/appdir/wikispeech_lexserver_testdb.db-shm'
pronlex_1            | 2021/03/05 08:57:46 dbapi_sqlite: skipping file: '/srv/appdir/wikispeech_lexserver_testdb.db-wal'
pronlex_1            | 2021/03/05 08:57:46 dbapi_sqlite: loaded 2 db(s)
pronlex_1            | 2021/03/05 08:57:46 db_manager: loaded 2 db(s)
pronlex_1            | 2021/03/05 08:57:46 lexserver: server created but not started for port :8787
pronlex_1            | 2021/03/05 08:57:46 lexserver: server up and running using port :8787
wikispeech-server_1  | wait-for-it.sh: pronlex:8787 is available after 30 seconds
wikispeech-server_1  | wait-for-it.sh: waiting 60 seconds for symbolset:8771
wikispeech-server_1  | wait-for-it.sh: symbolset:8771 is available after 0 seconds
wikispeech-server_1  | Starting Wikispeech mockup.
wikispeech-server_1  | opusenc opus-tools 0.1.10 (using libopus 1.3)
wikispeech-server_1  | Copyright (C) 2008-2017 Xiph.Org Foundation
wikispeech-server_1  | fatal: No tags can describe 'a6899abb2cfec90822d68a51feb1e257e4de7447'.
wikispeech-server_1  | Try --always, or create some tags.
wikispeech-server_1  | 
wikispeech-server_1  | CONFIG
wikispeech-server_1  | 
wikispeech-server_1  | Checking for default and user config files..
wikispeech-server_1  | Reading provided config file: /srv/compose/mockup.conf
wikispeech-server_1  | Logging to stderr
wikispeech-server_1  | The wikispeech server can be accessed at http://localhost:10000
wikispeech-server_1  | (The following line comes from the flask server, ignore it..)
wikispeech-server_1  |  * Serving Flask app "wikispeech_server.wikispeech" (lazy loading)
wikispeech-server_1  | WARNING: couldn't retrieve git release info: Command '['git', 'describe', '--tags']' returned non-zero exit status 128.
wikispeech-server_1  | INFO: Logging to stderr
wikispeech-server_1  | INFO: Loading textprocessors and voices
wikispeech-server_1  | INFO: Loading textprocessor marytts_textproc_sv
wikispeech-server_1  | ERROR: Lexicon does not exist: sv_se_nst_lex:sv-se.nst
wikispeech-server_1  | WARNING: Unable to create lexicon client for sv_se_nst_lex:sv-se.nst at url http://pronlex:8787/lexicon/list. Reason: Lexicon does not exist: sv_se_nst_lex:sv-se.nst
wikispeech-server_1  | WARNING: Failed to load textprocessor from {'name': 'marytts_textproc_sv', 'lang': 'sv', 'default': True, 'components': [{'module': 'adapters.marytts_adapter', 'call': 'marytts_preproc', 'mapper': {'from': 'sv-se_ws-sampa', 'to': 'sv-se_sampa_mary'}}, {'module': 'adapters.lexicon_client', 'call': 'lexLookup', 'lexicon': 'sv_se_nst_lex:sv-se.nst'}], 'config_file': 'wikispeech_server/conf/voice_config_marytts.json'}. Reason:
wikispeech-server_1  | Unable to create lexicon client for sv_se_nst_lex:sv-se.nst at url http://pronlex:8787/lexicon/list. Reason: Lexicon does not exist: sv_se_nst_lex:sv-se.nst
wikispeech-server_1  | ERROR: loadTextprocessor marytts_textproc_sv:
wikispeech-server_1  | <class 'wikispeech_server.textprocessor.TextprocessorException'>
wikispeech-server_1  | Unable to create lexicon client for sv_se_nst_lex:sv-se.nst at url http://pronlex:8787/lexicon/list. Reason: Lexicon does not exist: sv_se_nst_lex:sv-se.nst
wikispeech-server_1  | INFO: Continuing anyway because Tests:quit_on_error is set to False
wikispeech-server_1  | INFO: Loading textprocessor marytts_textproc_nb
wikispeech-server_1  | ERROR: Lexicon does not exist: no_nob_nst_lex:nb-no.nst
wikispeech-server_1  | WARNING: Unable to create lexicon client for no_nob_nst_lex:nb-no.nst at url http://pronlex:8787/lexicon/list. Reason: Lexicon does not exist: no_nob_nst_lex:nb-no.nst
wikispeech-server_1  | WARNING: Failed to load textprocessor from {'name': 'marytts_textproc_nb', 'lang': 'nb', 'default': True, 'components': [{'module': 'adapters.marytts_adapter', 'call': 'marytts_preproc', 'mapper': {'from': 'nb-no_ws-sampa', 'to': 'nb-no_sampa_mary'}}, {'module': 'adapters.lexicon_client', 'call': 'lexLookup', 'lexicon': 'no_nob_nst_lex:nb-no.nst'}], 'config_file': 'wikispeech_server/conf/voice_config_marytts.json'}. Reason:
wikispeech-server_1  | Unable to create lexicon client for no_nob_nst_lex:nb-no.nst at url http://pronlex:8787/lexicon/list. Reason: Lexicon does not exist: no_nob_nst_lex:nb-no.nst
wikispeech-server_1  | ERROR: loadTextprocessor marytts_textproc_nb:
wikispeech-server_1  | <class 'wikispeech_server.textprocessor.TextprocessorException'>
wikispeech-server_1  | Unable to create lexicon client for no_nob_nst_lex:nb-no.nst at url http://pronlex:8787/lexicon/list. Reason: Lexicon does not exist: no_nob_nst_lex:nb-no.nst
wikispeech-server_1  | INFO: Continuing anyway because Tests:quit_on_error is set to False
wikispeech-server_1  | INFO: Loading textprocessor marytts_textproc_en
wikispeech-server_1  | ERROR: Lexicon does not exist: en_am_cmu_lex:en-us.cmu
wikispeech-server_1  | WARNING: Unable to create lexicon client for en_am_cmu_lex:en-us.cmu at url http://pronlex:8787/lexicon/list. Reason: Lexicon does not exist: en_am_cmu_lex:en-us.cmu
wikispeech-server_1  | WARNING: Failed to load textprocessor from {'name': 'marytts_textproc_en', 'lang': 'en', 'default': True, 'components': [{'module': 'adapters.marytts_adapter', 'call': 'marytts_preproc', 'mapper': {'from': 'en-us_ws-sampa', 'to': 'en-us_sampa_mary'}}, {'module': 'adapters.lexicon_client', 'call': 'lexLookup', 'lexicon': 'en_am_cmu_lex:en-us.cmu'}], 'config_file': 'wikispeech_server/conf/voice_config_marytts.json'}. Reason:
wikispeech-server_1  | Unable to create lexicon client for en_am_cmu_lex:en-us.cmu at url http://pronlex:8787/lexicon/list. Reason: Lexicon does not exist: en_am_cmu_lex:en-us.cmu
wikispeech-server_1  | ERROR: loadTextprocessor marytts_textproc_en:
wikispeech-server_1  | <class 'wikispeech_server.textprocessor.TextprocessorException'>
wikispeech-server_1  | Unable to create lexicon client for en_am_cmu_lex:en-us.cmu at url http://pronlex:8787/lexicon/list. Reason: Lexicon does not exist: en_am_cmu_lex:en-us.cmu
wikispeech-server_1  | INFO: Continuing anyway because Tests:quit_on_error is set to False
wikispeech-server_1  | INFO: Loading textprocessor marytts_textproc_ar
wikispeech-server_1  | ERROR: Lexicon does not exist: ar_ar_tst_lex:ar-test
wikispeech-server_1  | WARNING: Unable to create lexicon client for ar_ar_tst_lex:ar-test at url http://pronlex:8787/lexicon/list. Reason: Lexicon does not exist: ar_ar_tst_lex:ar-test
wikispeech-server_1  | WARNING: Failed to load textprocessor from {'name': 'marytts_textproc_ar', 'lang': 'ar', 'default': True, 'components': [{'module': 'adapters.marytts_adapter', 'call': 'marytts_preproc', 'mapper': {'from': 'ar_ws-sampa', 'to': 'ar_sampa_mary'}}, {'module': 'adapters.lexicon_client', 'call': 'lexLookup', 'lexicon': 'ar_ar_tst_lex:ar-test'}], 'config_file': 'wikispeech_server/conf/voice_config_marytts.json'}. Reason:
wikispeech-server_1  | Unable to create lexicon client for ar_ar_tst_lex:ar-test at url http://pronlex:8787/lexicon/list. Reason: Lexicon does not exist: ar_ar_tst_lex:ar-test
wikispeech-server_1  | ERROR: loadTextprocessor marytts_textproc_ar:
wikispeech-server_1  | <class 'wikispeech_server.textprocessor.TextprocessorException'>
wikispeech-server_1  | Unable to create lexicon client for ar_ar_tst_lex:ar-test at url http://pronlex:8787/lexicon/list. Reason: Lexicon does not exist: ar_ar_tst_lex:ar-test
wikispeech-server_1  | INFO: Continuing anyway because Tests:quit_on_error is set to False
wikispeech-server_1  | INFO: Loading voice stts_sv_nst-hsmm
wikispeech-server_1  | INFO: Voice found at url http://mary-tts:8080/voices
wikispeech-server_1  | INFO: Done loading voice stts_sv_nst-hsmm
wikispeech-server_1  | INFO: Loading voice stts_no_nst-hsmm
wikispeech-server_1  | INFO: Voice found at url http://mary-tts:8080/voices
wikispeech-server_1  | INFO: Done loading voice stts_no_nst-hsmm
wikispeech-server_1  | INFO: Loading voice dfki-spike-hsmm
wikispeech-server_1  | INFO: Voice found at url http://mary-tts:8080/voices
wikispeech-server_1  | INFO: Done loading voice dfki-spike-hsmm
wikispeech-server_1  | INFO: Loading voice cmu-slt-hsmm
wikispeech-server_1  | INFO: Voice found at url http://mary-tts:8080/voices
wikispeech-server_1  | INFO: Done loading voice cmu-slt-hsmm
wikispeech-server_1  | INFO: Loading voice ar-nah-hsmm
wikispeech-server_1  | INFO: Voice found at url http://mary-tts:8080/voices
wikispeech-server_1  | INFO: Done loading voice ar-nah-hsmm
wikispeech-server_1  | INFO: Done loading textprocessors and voices
wikispeech-server_1  | INFO: Loaded textprocessors:
wikispeech-server_1  | INFO: 
wikispeech-server_1  | Lang	Name                	Default 	Config file         
wikispeech-server_1  | 
wikispeech-server_1  | 
wikispeech-server_1  | INFO: Loaded textprocessors for languages: []
wikispeech-server_1  | INFO: Loaded voices:
wikispeech-server_1  | INFO: 
wikispeech-server_1  | Lang	Name                	Default 	Config file         
wikispeech-server_1  | sv  	stts_sv_nst-hsmm    	        	wikispeech_server/conf/voice_config_marytts.json
wikispeech-server_1  | nb  	stts_no_nst-hsmm    	        	wikispeech_server/conf/voice_config_marytts.json
wikispeech-server_1  | en  	dfki-spike-hsmm     	        	wikispeech_server/conf/voice_config_marytts.json
wikispeech-server_1  | en  	cmu-slt-hsmm        	default 	wikispeech_server/conf/voice_config_marytts.json
wikispeech-server_1  | ar  	ar-nah-hsmm         	        	wikispeech_server/conf/voice_config_marytts.json
wikispeech-server_1  | 
wikispeech-server_1  | INFO: Loaded voices for languages: ['sv', 'nb', 'en', 'ar']
wikispeech-server_1  | INFO: Supported languages: []
wikispeech-server_1  | INFO: port_nr set to 10000
wikispeech-server_1  | INFO: DEBUG_MODE set to False
wikispeech-server_1  | INFO: The wikispeech server can be accessed at http://localhost:10000
wikispeech-server_1  |  * Running on http://0.0.0.0:10000/ (Press CTRL+C to quit)
wikispeech-server_1  |  * Environment: production
wikispeech-server_1  |    WARNING: This is a development server. Do not use it in a production deployment.
wikispeech-server_1  |    Use a production WSGI server instead.
wikispeech-server_1  |  * Debug mode: off

Do you mean this error? Unable to create lexicon client for sv_se_nst_lex:sv-se.nst at url http://pronlex:8787/lexicon/list. Reason: Lexicon does not exist: sv_se_nst_lex:sv-se.nst

It looks as if the wikispeech can still communicate with the pronlex server, but some lexicons do not exist. So I'm not sure it has to do with the URL/path prefix update.

Can you access http://pronlex:8787/lexicon/list outside of the wikispeech server and see what lexicons you have there?

Need to check this..
In my setup using the -r lexserver switch breaks the links in http://localhost:8787/lexicon/, but wikispeech_server works normally. But of course there is no proxy in use. I'll set that up and see if I get the same error as in the log above.

Yeah, I think if you use the prefix, links in the documentation pages will only work using the prefix setup. That's the only way I could get it to work at least for now.

I tested this with lexserver behind an Apache proxy setup. Haven't tested with a full Wikispeech system.

Note to self: The request received by lexserver contains the host, so I can see that (e.g. localhost:8787 vs localhost), but the prefix is passed not over from Apache. So it seems difficult for the lexserver to know whether it was called with a prefix. Therefore it will always insert the prefix in doc links if a prefix was specified on server start.

I set up a proxy and changed Services -> lexicon in the wikispeech_server config file to localhost/lexserver, it works. And the links work as well, with the lexserver prefix.
Not sure if it will work with the setup on wikilabs - but with a bit of luck it will.

Lets not close this until I have deployed it on tts-dev again.