Exited with code 1 during zulip launch

Hi,
I have some problem with settings of docker compose in dev version. I'm waiting release to retry.
But i have also some problem with 1.3.9 and postgres role :
zulip_1     | ..(Re)creating database structure ...
zulip_1     | Setting up the database, schema and user ...
database_1  | ERROR:  permission denied to create role
database_1  | STATEMENT:  CREATE USER zulip;
zulip_1     | ERROR:  permission denied to create role
zulip_1     | ALTER ROLE
database_1  | ERROR:  database "zulip" already exists
database_1  | STATEMENT:  CREATE DATABASE zulip OWNER=zulip;
zulip_1     | ERROR:  database "zulip" already exists
database_1  | ERROR:  schema "zulip" already exists
database_1  | STATEMENT:  CREATE SCHEMA zulip AUTHORIZATION zulip;
zulip_1     | ERROR:  schema "zulip" already exists
zulip_1     | Creating tsearch_extras extension ...
database_1  | FATAL:  password authentication failed for user "postgres"
database_1  | DETAIL:  User "postgres" has no password assigned.
database_1  |   Connection matched pg_hba.conf line 94: "host all all <IP_ADDRESS>/0 md5"
zulip_1     | psql: FATAL:  password authentication failed for user "postgres"

And later
zulip_1     | Initializing Zulip Voyager database ...
database_1  | ERROR:  duplicate key value violates unique constraint "zerver_realm_domain_key"
database_1  | DETAIL:  Key (domain)=(zulip.com) already exists.
database_1  | STATEMENT:  INSERT INTO "zerver_realm" ("domain", "name", "restricted_to_domain", "invite_required", "invite_by_admins_only", "mandatory_topics", "show_digest_email", "nam
e_changes_disabled", "date_created", "notifications_stream_id", "deactivated") VALUES ('zulip.com', NULL, true, false, false, false, true, false, '2016-03-06T12:59:11.309132+00:00'::tim
estamptz, NULL, false) RETURNING "zerver_realm"."id"
zulip_1     | Traceback (most recent call last):
zulip_1     |   File "/home/zulip/deployments/current/manage.py", line 24, in <module>
zulip_1     |     execute_from_command_line(sys.argv)
zulip_1     |   File "/usr/lib/python2.7/dist-packages/django/core/management/__init__.py", line 338, in execute_from_command_line                                                [0/614]
zulip_1     |     utility.execute()
zulip_1     |   File "/usr/lib/python2.7/dist-packages/django/core/management/__init__.py", line 330, in execute
zulip_1     |     self.fetch_command(subcommand).run_from_argv(self.argv)
zulip_1     |   File "/usr/lib/python2.7/dist-packages/django/core/management/base.py", line 393, in run_from_argv
zulip_1     |     self.execute(*args, **cmd_options)
zulip_1     |   File "/usr/lib/python2.7/dist-packages/django/core/management/base.py", line 444, in execute
zulip_1     |     output = self.handle(*args, **options)
zulip_1     |   File "/home/zulip/deployments/2015-11-18-18-57-23/zerver/management/commands/initialize_voyager_db.py", line 39, in handle
zulip_1     |     Realm.objects.create(domain="zulip.com")
zulip_1     |   File "/usr/lib/python2.7/dist-packages/django/db/models/manager.py", line 127, in manager_method
zulip_1     |     return getattr(self.get_queryset(), name)(*args, **kwargs)
zulip_1     |   File "/usr/lib/python2.7/dist-packages/django/db/models/query.py", line 348, in create
zulip_1     |     obj.save(force_insert=True, using=self.db)
zulip_1     |   File "/usr/lib/python2.7/dist-packages/django/db/models/base.py", line 710, in save
zulip_1     |     force_update=force_update, update_fields=update_fields)
zulip_1     |   File "/usr/lib/python2.7/dist-packages/django/db/models/base.py", line 738, in save_base
zulip_1     |     updated = self._save_table(raw, cls, force_insert, force_update, using, update_fields)
zulip_1     |   File "/usr/lib/python2.7/dist-packages/django/db/models/base.py", line 822, in _save_table
zulip_1     |     result = self._do_insert(cls._base_manager, using, fields, update_pk, raw)
zulip_1     |   File "/usr/lib/python2.7/dist-packages/django/db/models/base.py", line 861, in _do_insert
zulip_1     |     using=using, raw=raw)
zulip_1     |   File "/usr/lib/python2.7/dist-packages/django/db/models/manager.py", line 127, in manager_method
zulip_1     |     return getattr(self.get_queryset(), name)(*args, **kwargs)
zulip_1     |   File "/usr/lib/python2.7/dist-packages/django/db/models/query.py", line 922, in _insert
zulip_1     |     return query.get_compiler(using=using).execute_sql(return_id)
zulip_1     |   File "/usr/lib/python2.7/dist-packages/django/db/models/sql/compiler.py", line 986, in execute_sql
zulip_1     |     cursor.execute(sql, params)
zulip_1     |   File "/usr/lib/python2.7/dist-packages/django/db/backends/utils.py", line 64, in execute
zulip_1     |     return self.cursor.execute(sql, params)
zulip_1     |   File "/usr/lib/python2.7/dist-packages/django/db/utils.py", line 97, in __exit__
zulip_1     |     six.reraise(dj_exc_type, dj_exc_value, traceback)
zulip_1     |   File "/usr/lib/python2.7/dist-packages/django/db/backends/utils.py", line 64, in execute
zulip_1     |     return self.cursor.execute(sql, params)
zulip_1     |   File "/home/zulip/deployments/2015-11-18-18-57-23/zerver/lib/db.py", line 23, in execute
zulip_1     |     return wrapper_execute(self, super(TimeTrackingCursor, self).execute, query, vars)
zulip_1     |   File "/home/zulip/deployments/2015-11-18-18-57-23/zerver/lib/db.py", line 11, in wrapper_execute
zulip_1     |     return action(sql, params)
zulip_1     | django.db.utils.IntegrityError: duplicate key value violates unique constraint "zerver_realm_domain_key"
zulip_1     | DETAIL:  Key (domain)=(zulip.com) already exists.
zulip_1     |
zulip_1     | Zulip first start init failed in "initialize_voyager_db" with exit code 0.
zulip_zulip_1 exited with code 0

The gist : https://gist.github.com/reyman/4d5a8910a3c7c6217025
I need to remove old volume ? If zulip user and db exist, why not reuse it ?

Ok i found the problem, my log are truncated by mosh client ... don't know why :

zulip_1     | === Begin Initial Configuration Phase ===
zulip_1     | Preparing and linking the uploads folder ...
zulip_1     | Prepared and linked the uploads directory.
zulip_1     | Executing nginx configuration ...
zulip_1     | Nginx configuration succeeded.
zulip_1     | Exectuing certificates configuration...
zulip_1     | No certs in "/data/certs".
zulip_1     | Autogenerating certificates ...
zulip_1     | Certificates generation failed. "ZULIP_CERTIFICATE_CN" and as fallback "ZULIP_SETTINGS_EXTERNAL_HOST" not given.
zulip_1     | Certificates configuration failed.
zulip_zulip_1 exited with code 1

Try to solve and close if its works.

Until version 1.3.9-* the environment variables have to be in format like ZULIP_SETTINGS_*. The format SETTING_*  is used in 1.3.10+ but due to a PR at the zulip project that is still pending merge, I couldn't release 1.3.10 yet.

I have problem with dev version to find the good value for docker-compose.yml, so i return to 1.3.9, with ZULIP_SETTINGS_*

The dev version isn't supposed to be working ;)
I'm currently working on releasing the 1.3.10 version soon.

Great, so i try to reinstall when 1.3.10 is out :)
It's more a question about documentation but we can use any existing image of postgres image for link with zulip  ?

@reyman Could you please test again with image dev-1.3.10? If you encounter any bugs please report them here.

Ok, i have this error on docker-compose up :
database_1  | Initializing datadir...
zulip_1     | /sbin/entrypoint.sh: line 61: =/etc/zulip/settings.py: No such file or directory
zulip_zulip_1 exited with code 1

@reyman I pushed a fix for that error. In about 20 minutes you can repull and try again. Thanks for testing it!

I try to repull the image dev-1.3.10, but it say to me that image "is up to date";
Building is finished ?

@reyman The Image build process on quay.io is stuck.
Can you try with the docker hub image? https://hub.docker.com/r/galexrt/zulip/

@Galexrt another error at launch :
zulip_1     | === Begin Initial Configuration Phase ===
zulip_1     | Preparing and linking the uploads folder ...
zulip_1     | Prepared and linked the uploads directory.
zulip_1     | Executing nginx configuration ...
zulip_1     | Nginx configuration succeeded.
zulip_1     | Exectuing certificates configuration...
zulip_1     | Certificates configuration succeeded.
zulip_1     | Setting Zulip secrets ...
zulip_1     | Secrets already generated.
zulip_1     | Secret found for "rabbitmq_password".
zulip_1     | Secret found for "email_password".
zulip_1     | Zulip secrets configuration succeeded.
zulip_1     | Setting database configuration ...
zulip_1     | Setting key "DATABASES", type "array" in file "/home/zulip/deployments/current/zproject/settings.py".
zulip_1     | sed: can't read /usr/local/bin/process_fts_updates: No such file or directory
zulip_zulip_1 exited with code 2

@reyman Sorry, for the late response, I looked into the problem and I just pushed the fix. The image should be built in about 45 minutes.
Thanks for testing!

Hum, i have another error :
zulip_1     | Empty var for key "EXTERNAL_HOST".
zulip_1     | Empty var for key "EMAIL_HOST".
zulip_1     | Empty var for key "AUTH_LDAP_BIND_DN".
zulip_1     | Empty var for key "NOREPLY_EMAIL_ADDRESS".
zulip_1     | Empty var for key "AUTH_LDAP_SERVER_URI".
zulip_1     | Empty var for key "ZULIP_ADMINISTRATOR".
zulip_1     | Empty var for key "REDIS_HOST".
zulip_1     | Empty var for key "AUTH_LDAP_BIND_PASSWORD".
zulip_1     | Empty var for key "RABBITMQ_HOST".
zulip_1     | Empty var for key "EMAIL_HOST_USER".
zulip_1     | Empty var for key "DEFAULT_FROM_EMAIL".
zulip_1     | Empty var for key "MEMCACHED_LOCATION".
zulip_1     | Empty var for key "AUTH_LDAP_APPEND_DOMAIN".
zulip_1     | Empty var for key "ADMIN_DOMAIN".
database_1  | Initializing certdir...
database_1  | Initializing logdir...
database_1  | Initializing rundir...
database_1  | Setting resolv ACLs...
zulip_1     | Error: You must set EXTERNAL_HOST in /etc/zulip/settings.py.
zulip_zulip_1 exited with code 1

My settings are set in docker-compose.yml :
SETTING_MEMCACHED_LOCATION: "memcached:11211"
SETTING_RABBITMQ_HOST: "rabbitmq"
SETTING_REDIS_HOST: "redis"
SETTING_EXTERNAL_HOST: "team.comnmodel.org"
SETTING_ZULIP_ADMINISTRATOR<EMAIL_ADDRESS>SETTING_ADMIN_DOMAIN: "comnmodel.org"
SETTING_NOREPLY_EMAIL_ADDRESS<EMAIL_ADDRESS>SETTING_DEFAULT_FROM_EMAIL: "Zulip<EMAIL_ADDRESS>SETTING_EMAIL_HOST: "smtp.gmail.com"
SETTING_EMAIL_HOST_USER<EMAIL_ADDRESS>

@reyman I fixed this bug now. Image should be built in about 30 minutes.
Thanks for testing!

Another

zulip_1     | === Begin Initial Configuration Phase ===
zulip_1     | Preparing and linking the uploads folder ...
zulip_1     | Prepared and linked the uploads directory.
zulip_1     | Executing nginx configuration ...
zulip_1     | Nginx configuration succeeded.
zulip_1     | Exectuing certificates configuration...
zulip_1     | Certificates configuration succeeded.
zulip_1     | Setting Zulip secrets ...
zulip_1     | Secrets already generated.
zulip_1     | Secret found for "rabbitmq_password".
zulip_1     | Secret found for "email_password".
zulip_1     | Zulip secrets configuration succeeded.
zulip_1     | Setting database configuration ...
zulip_1     | Setting key "DATABASES", type "array" in file "/home/zulip/deployments/current/zproject/settings.py".
zulip_1     | Database configuration succeeded.
zulip_1     | Setting caches configuration ...
zulip_1     | Setting key "MEMCACHED_LOCATION", type "string" in file "/etc/zulip/settings.py".
zulip_1     | Caches configuration succeeded.
zulip_1     | Activating authentication backends ...
database_1  | Initializing logdir...
zulip_1     | Setting key "AUTHENTICATION_BACKENDS", type "array" in file "/etc/zulip/settings.py".
zulip_1     | Adding authentication backend "ZulipLDAPAuthBackend".
zulip_1     | Authentication backend activation succeeded.
zulip_1     | Setting LDAP settings if set ...
zulip_1     | Setting key "AUTH_LDAP_USER_SEARCH", type "array" in file "/etc/zulip/settings.py".
zulip_1     | LDAP settings set.
zulip_1     | Executing Zulip configuration ...
zulip_1     | No FILE given for setConfigurationValue.
database_1  | Initializing rundir...
database_1  | Setting resolv ACLs...
zulip_zulip_1 exited with code 1

@reyman I pushed another fix. As always image should be built in about 25-30 minutes.

Another, problem of file permission it seems :
zulip_1     | FILE=/etc/zulip/settings.py: ERROR: cannot open `FILE=/etc/zulip/settings.py' (No such file or directory)
zulip_zulip_1 exited with code 1

@reyman Could you post more lines of the last error you got.

@Galexrt yes
Attaching to zulip_redis_1, zulip_memcached_1, zulip_rabbitmq_1, zulip_database_1, zulip_zulip_1
redis_1     | Starting redis-server...
redis_1     |                 _._
redis_1     |            _.-``__ ''-._
redis_1     |       _.-``    `.  `_.  ''-._           Redis 2.8.4 (00000000/0) 64 bit
redis_1     |   .-`` .-```.  ```\/    _.,_ ''-._
redis_1     |  (    '      ,       .-`  | `,    )     Running in stand alone mode
redis_1     |  |`-._`-...-` __...-.``-._|'` _.-'|     Port: 6379
redis_1     |  |    `-._   `._    /     _.-'    |     PID: 1
redis_1     |   `-._    `-._  `-./  _.-'    _.-'
redis_1     |  |`-._`-._    `-.__.-'    _.-'_.-'|
redis_1     |  |    `-._`-._        _.-'_.-'    |           http://redis.io
redis_1     |   `-._    `-._`-.__.-'_.-'    _.-'
redis_1     |  |`-._`-._    `-.__.-'    _.-'_.-'|
redis_1     |  |    `-._`-._        _.-'_.-'    |
redis_1     |   `-._    `-._`-.__.-'_.-'    _.-'
redis_1     |       `-._    `-.__.-'    _.-'
redis_1     |           `-._        _.-'
redis_1     |               `-.__.-'
redis_1     |
redis_1     | [1] 09 Mar 14:05:15.744 # Server started, Redis version 2.8.4
redis_1     | [1] 09 Mar 14:05:15.744 # WARNING overcommit_memory is set to 0! Background save may fail under low memory condition. To fix this issue add 'vm.overco
mmit_memory = 1' to /etc/sysctl.conf and then reboot or run the command 'sysctl vm.overcommit_memory=1' for this to take effect.
redis_1     | [1] 09 Mar 14:05:15.744 * DB loaded from disk: 0.000 seconds
redis_1     | [1] 09 Mar 14:05:15.744 * The server is now ready to accept connections on port 6379
redis_1     | [1] 09 Mar 14:05:15.744 * The server is now ready to accept connections at /var/run/redis/redis.sock
database_1  | Initializing datadir...
database_1  | Initializing datadir...
zulip_1     | === Begin Initial Configuration Phase ===
zulip_1     | Preparing and linking the uploads folder ...
zulip_1     | Prepared and linked the uploads directory.
zulip_1     | Executing nginx configuration ...
zulip_1     | Nginx configuration succeeded.
zulip_1     | Exectuing certificates configuration...
zulip_1     | Certificates configuration succeeded.
zulip_1     | Setting Zulip secrets ...
zulip_1     | Secrets already generated.
zulip_1     | Secret found for "rabbitmq_password".
zulip_1     | Secret found for "email_password".
zulip_1     | Zulip secrets configuration succeeded.
zulip_1     | Setting database configuration ...
zulip_1     | Setting key "DATABASES", type "array" in file "/home/zulip/deployments/current/zproject/settings.py".
zulip_1     | Database configuration succeeded.
zulip_1     | Setting caches configuration ...
zulip_1     | Setting key "MEMCACHED_LOCATION", type "string" in file "/etc/zulip/settings.py".
zulip_1     | Caches configuration succeeded.
zulip_1     | Activating authentication backends ...
zulip_1     | Setting key "AUTHENTICATION_BACKENDS", type "array" in file "/etc/zulip/settings.py".
zulip_1     | Adding authentication backend "ZulipLDAPAuthBackend".
zulip_1     | Authentication backend activation succeeded.
zulip_1     | Setting LDAP settings if set ...
zulip_1     | Setting key "AUTH_LDAP_USER_SEARCH", type "array" in file "/etc/zulip/settings.py".
zulip_1     | LDAP settings set.
zulip_1     | Executing Zulip configuration ...
zulip_1     | Setting key "EXTERNAL_HOST", type "string" in file "/home/zulip/deployments/current/zproject/settings.py".
zulip_1     | Setting key "EMAIL_HOST", type "string" in file "/home/zulip/deployments/current/zproject/settings.py".
zulip_1     | Setting key "AUTH_LDAP_BIND_DN", type "string" in file "/home/zulip/deployments/current/zproject/settings.py".
zulip_1     | Setting key "NOREPLY_EMAIL_ADDRESS", type "string" in file "/home/zulip/deployments/current/zproject/settings.py".
zulip_1     | Setting key "AUTH_LDAP_SERVER_URI", type "string" in file "/home/zulip/deployments/current/zproject/settings.py".
zulip_1     | Setting key "ZULIP_ADMINISTRATOR", type "string" in file "/home/zulip/deployments/current/zproject/settings.py".
zulip_1     | Setting key "REDIS_HOST", type "string" in file "/home/zulip/deployments/current/zproject/settings.py".
zulip_1     | Setting key "AUTH_LDAP_BIND_PASSWORD", type "string" in file "/home/zulip/deployments/current/zproject/settings.py".
zulip_1     | Setting key "RABBITMQ_HOST", type "string" in file "/home/zulip/deployments/current/zproject/settings.py".
zulip_1     | Setting key "EMAIL_HOST_USER", type "string" in file "/home/zulip/deployments/current/zproject/settings.py".
zulip_1     | Setting key "DEFAULT_FROM_EMAIL", type "string" in file "/home/zulip/deployments/current/zproject/settings.py".
zulip_1     | Setting key "MEMCACHED_LOCATION", type "string" in file "/home/zulip/deployments/current/zproject/settings.py".
zulip_1     | Setting key "AUTH_LDAP_APPEND_DOMAIN", type "string" in file "/home/zulip/deployments/current/zproject/settings.py".
zulip_1     | FILE=/etc/zulip/settings.py: ERROR: cannot open `FILE=/etc/zulip/settings.py' (No such file or directory)
zulip_zulip_1 exited with code 1

Can you add the environment variable DEBUG=true to your docker-compose.yml, so it hopefully shows me more output.

@reyman This should finally fix the problem. Could you please test it again now?
Image should be built in about 25 minutes.

@reyman I fixed some some other bugs with the latest commit. Image is built in about 30 minutes.

@Galexrt another error :
zulip_1     | Running migrations:
zulip_1     |   Rendering model states... DONE
zulip_1     |   Applying zerver.0006_zerver_userprofile_email_upper_idx... OK
zulip_1     |   Applying zerver.0007_userprofile_is_bot_active_indexes... OK
zulip_1     |   Applying zerver.0008_preregistrationuser_upper_email_idx... OK
zulip_1     | Creating Zulip cache and third_party_api_results tables ...
zulip_1     | Cache table 'third_party_api_results' already exists.
zulip_1     | Initializing Zulip Voyager database ...
database_1  | ERROR:  duplicate key value violates unique constraint "zerver_realm_domain_key"
database_1  | DETAIL:  Key (domain)=(zulip.com) already exists.
database_1  | STATEMENT:  INSERT INTO "zerver_realm" ("domain", "name", "restricted_to_domain", "invite_required", "invite_by_admins_only", "mandatory_topics", "sho
w_digest_email", "name_changes_disabled", "date_created", "notifications_stream_id", "deactivated") VALUES ('zulip.com', NULL, true, false, false, false, true, fals
e, '2016-03-09T14:57:42.000417+00:00'::timestamptz, NULL, false) RETURNING "zerver_realm"."id"
zulip_1     | Traceback (most recent call last):
zulip_1     |   File "/home/zulip/deployments/current/manage.py", line 24, in <module>
zulip_1     |     execute_from_command_line(sys.argv)
zulip_1     |   File "/usr/lib/python2.7/dist-packages/django/core/management/__init__.py", line 338, in execute_from_command_line
zulip_1     |     utility.execute()
zulip_1     |   File "/usr/lib/python2.7/dist-packages/django/core/management/__init__.py", line 330, in execute
zulip_1     |     self.fetch_command(subcommand).run_from_argv(self.argv)
zulip_1     |   File "/usr/lib/python2.7/dist-packages/django/core/management/base.py", line 393, in run_from_argv
zulip_1     |     self.execute(*args, **cmd_options)
zulip_1     |   File "/usr/lib/python2.7/dist-packages/django/core/management/base.py", line 444, in execute
zulip_1     |     output = self.handle(*args, **options)
zulip_1     |   File "/home/zulip/deployments/2016-03-09-14-24-05/zerver/management/commands/initialize_voyager_db.py", line 39, in handle
zulip_1     |     Realm.objects.create(domain="zulip.com")
zulip_1     |   File "/usr/lib/python2.7/dist-packages/django/db/models/manager.py", line 127, in manager_method
zulip_1     |     return getattr(self.get_queryset(), name)(*args, **kwargs)
zulip_1     |   File "/usr/lib/python2.7/dist-packages/django/db/models/query.py", line 348, in create
zulip_1     |     obj.save(force_insert=True, using=self.db)
zulip_1     |   File "/usr/lib/python2.7/dist-packages/django/db/models/base.py", line 710, in save
zulip_1     |     force_update=force_update, update_fields=update_fields)
zulip_1     |   File "/usr/lib/python2.7/dist-packages/django/db/models/base.py", line 738, in save_base
zulip_1     |     updated = self._save_table(raw, cls, force_insert, force_update, using, update_fields)
zulip_1     |   File "/usr/lib/python2.7/dist-packages/django/db/models/base.py", line 822, in _save_table
zulip_1     |     result = self._do_insert(cls._base_manager, using, fields, update_pk, raw)
zulip_1     |   File "/usr/lib/python2.7/dist-packages/django/db/models/base.py", line 861, in _do_insert
zulip_1     |     using=using, raw=raw)
zulip_1     |   File "/usr/lib/python2.7/dist-packages/django/db/models/manager.py", line 127, in manager_method
zulip_1     |     return getattr(self.get_queryset(), name)(*args, **kwargs)
zulip_1     |   File "/usr/lib/python2.7/dist-packages/django/db/models/query.py", line 922, in _insert
zulip_1     |     return query.get_compiler(using=using).execute_sql(return_id)
zulip_1     |   File "/usr/lib/python2.7/dist-packages/django/db/models/sql/compiler.py", line 986, in execute_sql
zulip_1     |     cursor.execute(sql, params)
zulip_1     |   File "/usr/lib/python2.7/dist-packages/django/db/backends/utils.py", line 64, in execute
zulip_1     |     return self.cursor.execute(sql, params)
zulip_1     |   File "/usr/lib/python2.7/dist-packages/django/db/utils.py", line 97, in __exit__
zulip_1     |     six.reraise(dj_exc_type, dj_exc_value, traceback)
zulip_1     |   File "/usr/lib/python2.7/dist-packages/django/db/backends/utils.py", line 64, in execute
zulip_1     |     return self.cursor.execute(sql, params)
zulip_1     |   File "/home/zulip/deployments/2016-03-09-14-24-05/zerver/lib/db.py", line 23, in execute
zulip_1     |     return wrapper_execute(self, super(TimeTrackingCursor, self).execute, query, vars)
zulip_1     |   File "/home/zulip/deployments/2016-03-09-14-24-05/zerver/lib/db.py", line 11, in wrapper_execute
zulip_1     |     return action(sql, params)
zulip_1     | django.db.utils.IntegrityError: duplicate key value violates unique constraint "zerver_realm_domain_key"
zulip_1     | DETAIL:  Key (domain)=(zulip.com) already exists.
zulip_1     |
zulip_1     | Zulip first start init failed in "initialize_voyager_db" exit code 0. Exiting.
zulip_zulip_1 exited with code 0

@reyman Could you please provide the full logs of the new error as a gist?

@reyman I finally found the source of all these errors. Zulip is now based on latest Zulip master and not on a specific version tag. This should fix most errors you had.

@reyman I finally found the source of all these errors. Zulip is now based on latest Zulip master and not on a specific version tag. This should fix most errors you had.

@Galexrt Great :) I continue to pull from sudo docker pull galexrt/zulip:dev-1.3.10 ?

@reyman It seems that I now fixed the errors and bugs.
Please repull the latest image and test again.
Thanks for providing help in testing it!

Yes,  you can continue to pull from dev-1.3.10. Until I can finally release a stable v1.3.10. Thanks for testing!

@Galexrt There is some problem with existing value in table it seems :

zulip_1     | + echo 'Initializing Zulip Voyager database ...'
zulip_1     | + su zulip -c '/home/zulip/deployments/current/manage.py initialize_voyager_db'
zulip_1     | Initializing Zulip Voyager database ...
database_1  | ERROR:  duplicate key value violates unique constraint "zerver_realm_domain_key"
database_1  | DETAIL:  Key (domain)=(zulip.com) already exists.
database_1  | STATEMENT:  INSERT INTO "zerver_realm" ("domain", "name", "restricted_to_domain", "invite_required", "invite_by_admins_only", "mandatory_topics",
 "show_digest_email", "name_changes_disabled", "date_created", "notifications_stream_id", "deactivated") VALUES ('zulip.com', NULL, true, false, false, false,
true, false, '2016-03-10T16:32:32.941785+00:00'::timestamptz, NULL, false) RETURNING "zerver_realm"."id"
zulip_1     | Traceback (most recent call last):
zulip_1     |   File "/home/zulip/deployments/current/manage.py", line 24, in <module>
zulip_1     |     execute_from_command_line(sys.argv)
zulip_1     |   File "/usr/lib/python2.7/dist-packages/django/core/management/__init__.py", line 338, in execute_from_command_line
zulip_1     |     utility.execute()
zulip_1     |   File "/usr/lib/python2.7/dist-packages/django/core/management/__init__.py", line 330, in execute
zulip_1     |     self.fetch_command(subcommand).run_from_argv(self.argv)
zulip_1     |   File "/usr/lib/python2.7/dist-packages/django/core/management/base.py", line 393, in run_from_argv
zulip_1     |     self.execute(*args, **cmd_options)
zulip_1     |   File "/usr/lib/python2.7/dist-packages/django/core/management/base.py", line 444, in execute
zulip_1     |     output = self.handle(*args, **options)
zulip_1     |   File "/home/zulip/deployments/2016-03-09-16-29-00/zerver/management/commands/initialize_voyager_db.py", line 39, in handle
zulip_1     |     Realm.objects.create(domain="zulip.com")
zulip_1     |   File "/usr/lib/python2.7/dist-packages/django/db/models/manager.py", line 127, in manager_method
zulip_1     |     return getattr(self.get_queryset(), name)(*args, **kwargs)
zulip_1     |   File "/usr/lib/python2.7/dist-packages/django/db/models/query.py", line 348, in create
zulip_1     |     obj.save(force_insert=True, using=self.db)
zulip_1     |   File "/usr/lib/python2.7/dist-packages/django/db/models/base.py", line 710, in save
zulip_1     |     force_update=force_update, update_fields=update_fields)
zulip_1     |   File "/usr/lib/python2.7/dist-packages/django/db/models/base.py", line 738, in save_base
zulip_1     |     updated = self._save_table(raw, cls, force_insert, force_update, using, update_fields)
zulip_1     |   File "/usr/lib/python2.7/dist-packages/django/db/models/base.py", line 822, in _save_table
zulip_1     |     result = self._do_insert(cls._base_manager, using, fields, update_pk, raw)
zulip_1     |   File "/usr/lib/python2.7/dist-packages/django/db/models/base.py", line 861, in _do_insert
zulip_1     |     using=using, raw=raw)
zulip_1     |   File "/usr/lib/python2.7/dist-packages/django/db/models/manager.py", line 127, in manager_method
zulip_1     |     return getattr(self.get_queryset(), name)(*args, **kwargs)
zulip_1     |   File "/usr/lib/python2.7/dist-packages/django/db/models/query.py", line 348, in create
zulip_1     |     obj.save(force_insert=True, using=self.db)
zulip_1     |   File "/usr/lib/python2.7/dist-packages/django/db/models/base.py", line 710, in save
zulip_1     |     force_update=force_update, update_fields=update_fields)
zulip_1     |   File "/usr/lib/python2.7/dist-packages/django/db/models/base.py", line 738, in save_base
zulip_1     |     updated = self._save_table(raw, cls, force_insert, force_update, using, update_fields)
zulip_1     |   File "/usr/lib/python2.7/dist-packages/django/db/models/base.py", line 822, in _save_table
zulip_1     |     result = self._do_insert(cls._base_manager, using, fields, update_pk, raw)
zulip_1     |   File "/usr/lib/python2.7/dist-packages/django/db/models/base.py", line 861, in _do_insert
zulip_1     |     using=using, raw=raw)
zulip_1     |   File "/usr/lib/python2.7/dist-packages/django/db/models/manager.py", line 127, in manager_method
zulip_1     |     return getattr(self.get_queryset(), name)(*args, **kwargs)
zulip_1     |   File "/usr/lib/python2.7/dist-packages/django/db/models/query.py", line 922, in _insert
zulip_1     |     return query.get_compiler(using=using).execute_sql(return_id)
zulip_1     |   File "/usr/lib/python2.7/dist-packages/django/db/models/sql/compiler.py", line 986, in execute_sql
zulip_1     |     cursor.execute(sql, params)
zulip_1     |   File "/usr/lib/python2.7/dist-packages/django/db/backends/utils.py", line 64, in execute
zulip_1     |     return self.cursor.execute(sql, params)
zulip_1     |   File "/usr/lib/python2.7/dist-packages/django/db/utils.py", line 97, in __exit__
zulip_1     |     six.reraise(dj_exc_type, dj_exc_value, traceback)
zulip_1     |   File "/usr/lib/python2.7/dist-packages/django/db/backends/utils.py", line 64, in execute
zulip_1     |     return self.cursor.execute(sql, params)
zulip_1     |   File "/home/zulip/deployments/2016-03-09-16-29-00/zerver/lib/db.py", line 23, in execute
zulip_1     |     return wrapper_execute(self, super(TimeTrackingCursor, self).execute, query, vars)
zulip_1     |   File "/home/zulip/deployments/2016-03-09-16-29-00/zerver/lib/db.py", line 11, in wrapper_execute
zulip_1     |     return action(sql, params)
zulip_1     | django.db.utils.IntegrityError: duplicate key value violates unique constraint "zerver_realm_domain_key"
zulip_1     | DETAIL:  Key (domain)=(zulip.com) already exists.
zulip_1     |
zulip_1     | + RETURN_CODE=1
zulip_1     | + [[ 1 != 0 ]]
zulip_1     | + echo 'Zulip first start init failed in "initialize_voyager_db" exit code 1. Exiting.'
zulip_1     | + exit 1
zulip_1     | Zulip first start init failed in "initialize_voyager_db" exit code 1. Exiting.

@reyman Could you please enter the container using docker exec and post content of the /etc/zulip/settings.py and /home/zulip/deployments/current/zproject/settings.py without sensitive data?

Hum i cannot test before tonigh or tomorow (no ssh in train 😀) but the
container failed to start so im not sûre i can make à docker exec on it.
Le jeu. 10 mars 2016 17:47, Alexander Trost<EMAIL_ADDRESS>a
écrit :

@reyman https://github.com/reyman Could you please enter the container
using docker exec and post content of the /etc/zulip/settings.py and
/home/zulip/deployments/current/zproject/settings.py without sensitive
data?
—
Reply to this email directly or view it on GitHub
https://github.com/Galexrt/docker-zulip/issues/61#issuecomment-194946608
.

@reyman No problem. But you can use docker cp to get the files out of the container ;)
Thanks for the help!

Sorry for the delay
settings from /etc/zulip/settings.py

# Settings for Zulip Voyager

### MANDATORY SETTINGS
#
# These settings MUST be set in production. In a development environment,
# sensible default values will be used.

# The user-accessible Zulip hostname for this installation, e.g.
# zulip.example.com
EXTERNAL_HOST = 'zulip.example.com'

# The email address for the person or team who maintain the Zulip
# Voyager installation. Will also get support emails. (e.g<EMAIL_ADDRESS>ZULIP_ADMINISTRATOR =<EMAIL_ADDRESS>
# The domain for your organization, e.g. example.com
ADMIN_DOMAIN = 'example.com'

# Enable at least one of the following authentication backends.
AUTHENTICATION_BACKENDS = (
#                           'zproject.backends.EmailAuthBackend', # Email and password; see SMTP setup below
#                           'zproject.backends.ZulipRemoteUserBackend', # Local SSO
#                           'zproject.backends.GoogleMobileOauth2Backend', # Google Apps, setup below
#                           'zproject.backends.ZulipLDAPAuthBackend', # LDAP, setup below
    )

# Google Oauth requires a bit of configuration; you will need to go to
# do the following:
#
# (1) Visit https://console.developers.google.com, setup an
# Oauth2 client ID that allows redirects to
# e.g. https://zulip.example.com/accounts/login/google/done/.
#
# (2) Then click into the APIs and Auth section (in the sidebar on the
# left side of the page), APIs, then under "Social APIs" click on
# "Google+ API" and click the button to enable the API.
#
# (3) put your client secret as "google_oauth2_client_secret" in
# zulip-secrets.conf, and your client ID right here:
# GOOGLE_OAUTH2_CLIENT_ID=<your client ID from Google>
# If you are using the ZulipRemoteUserBackend authentication backend,
# set this to your domain (e.g. if REMOTE_USER is "username" and the
# corresponding email address is<EMAIL_ADDRESS>set
# SSO_APPEND_DOMAIN = "example.com")
SSO_APPEND_DOMAIN = None

# Configure the outgoing SMTP server below. For testing, you can skip
# sending emails entirely by commenting out EMAIL_HOST, but you will
# want to configure this to support email address confirmation emails,
# missed message emails, onboarding follow-up emails, etc. To
# configure SMTP, you will need to complete the following steps:
#
# (1) Fill out the outgoing email sending configuration below.
#
# (2) Put the SMTP password for EMAIL_HOST_USER in
# /etc/zulip/zulip-secrets.conf as email_password.
#
# (3) If you are using a gmail account to send outgoing email, you
# will likely need to read this Google support answer and configure
# that account as "less secure":
# https://support.google.com/mail/answer/14257.
#
# A common problem is hosting providers that block outgoing SMTP traffic.
#
# With the exception of reading EMAIL_HOST_PASSWORD from
# email_password in the Zulip secrets file, Zulip uses Django's
# standard EmailBackend, so if you're having issues, you may want to
# search for documentation on using your email provider with Django.
EMAIL_HOST = 'smtp.gmail.com'
EMAIL_HOST_USER = ''
EMAIL_PORT = 587
EMAIL_USE_TLS = True
# The email From address to be used for automatically generated emails
DEFAULT_FROM_EMAIL = "Zulip<EMAIL_ADDRESS># The noreply address to be used as Reply-To for certain generated emails.
# Messages sent to this address should not be delivered anywhere.
NOREPLY_EMAIL_ADDRESS =<EMAIL_ADDRESS># A list of strings representing the host/domain names that this
# Django site can serve. You should reset it to be a list of
# domains/IP addresses for your site. This is a security measure to
# prevent an attacker from poisoning caches and triggering password
# reset emails with links to malicious hosts by submitting requests
# with a fake HTTP Host header. You must include 'localhost' here.
ALLOWED_HOSTS = ['*']

### OPTIONAL SETTINGS

# Controls whether session cookies expire when the browser closes
SESSION_EXPIRE_AT_BROWSER_CLOSE = False

# Session cookie expiry in seconds after the last page load
SESSION_COOKIE_AGE = 60 * 60 * 24 * 7 * 2 # 2 weeks

# Controls whether or not there is a feedback button in the UI.
ENABLE_FEEDBACK = False

# By default, the feedback button will submit feedback to the Zulip
# developers.  If you set FEEDBACK_EMAIL to be an email address
# (e.g. ZULIP_ADMINISTRATOR), feedback sent by your users will instead
# be sent to that email address.
FEEDBACK_EMAIL = ZULIP_ADMINISTRATOR

# Controls whether or not error reports are sent to Zulip.  Error
# reports are used to improve the quality of the product and do not
# include message contents; please contact Zulip support with any
# questions.
ERROR_REPORTING = True

# Controls whether or not Zulip will provide inline image preview when
# a link to an image is referenced in a message.
INLINE_IMAGE_PREVIEW = True
# By default, files uploaded by users and user avatars are stored
# directly on the Zulip server.  If file storage in Amazon S3 is
# desired, you can configure that as follows:
#
# (1) Set s3_key and s3_secret_key in /etc/zulip/zulip-secrets.conf to
# be the S3 access and secret keys that you want to use, and setting
# the S3_AUTH_UPLOADS_BUCKET and S3_AVATAR_BUCKET to be the S3 buckets
# you've created to store file uploads and user avatars, respectively.
# Then restart Zulip (scripts/restart-zulip).
#
# (2) Edit /etc/nginx/sites-available/zulip-enterprise to comment out
# the nginx configuration for /user_uploads and /user_avatars (see
# https://github.com/zulip/zulip/issues/291 for discussion of a better
# solution that won't be automatically reverted by the Zulip upgrade
# script), and then restart nginx.
LOCAL_UPLOADS_DIR = "/home/zulip/uploads"
#S3_AUTH_UPLOADS_BUCKET = ""
#S3_AVATAR_BUCKET = ""

# Maximum allowed size of uploaded files, in megabytes.  DO NOT SET
# ABOVE 80MB.  The file upload implementation doesn't support chunked
# uploads, so browsers will crash if you try uploading larger files.
MAX_FILE_UPLOAD_SIZE = 25

# Controls whether name changes are completely disabled for this installation
# This is useful in settings where you're syncing names from an integrated LDAP/Active Directory
NAME_CHANGES_DISABLED = False

# Controls whether users who have not uploaded an avatar will receive an avatar
# from gravatar.com.
ENABLE_GRAVATAR = True

# To override the default avatar image if ENABLE_GRAVATAR is False, place your
# custom default avatar image at /home/zulip/local-static/default-avatar.png
# and uncomment the following line.
#DEFAULT_AVATAR_URI = '/local-static/default-avatar.png'
# To access an external postgres database you should define the host name in
# REMOTE_POSTGRES_HOST, you can define the password in the secrets file in the
# property postgres_password, and the SSL connection mode in REMOTE_POSTGRES_SSLMODE
# Different options are:
#   disable: I don't care about security, and I don't want to pay the overhead of encryption.
#   allow: I don't care about security, but I will pay the overhead of encryption if the server insists on it.
#   prefer: I don't care about encryption, but I wish to pay the overhead of encryption if the server supports it.
#   require: I want my data to be encrypted, and I accept the overhead. I trust that the network will make sure I always connect to the server I want.
#   verify-ca: I want my data encrypted, and I accept the overhead. I want to be sure that I connect to a server that I trust.
#   verify-full: I want my data encrypted, and I accept the overhead. I want to be sure that I connect to a server I trust, and that it's the one I specify.
#REMOTE_POSTGRES_HOST = 'dbserver.example.com'
#REMOTE_POSTGRES_SSLMODE = 'require'

### TWITTER INTEGRATION

# Zulip supports showing inline Tweet previews when a tweet is linked
# to in a message.  To support this, Zulip must have access to the
# Twitter API via OAuth.  To obtain the various access tokens needed
# below, you must register a new application under your Twitter
# account by doing the following:
#
# 1. Log in to http://dev.twitter.com.
# 2. In the menu under your username, click My Applications. From this page, create a new application.
# 3. Click on the application you created and click "create my access token".
# 4. Fill in the values for twitter_consumer_key, twitter_consumer_secret, twitter_access_token_key,
#    and twitter_access_token_secret in /etc/zulip/zulip-secrets.conf.

### EMAIL GATEWAY INTEGRATION

# The Email gateway integration supports sending messages into Zulip
# by sending an email.  This is useful for receiving notifications
# from third-party services that only send outgoing notifications via
# email.  Once this integration is configured, each stream will have
# an email address documented on the stream settings page an emails
# sent to that address will be delivered into the stream.
#
# There are two ways to configure email mirroring in Zulip:
#  1. Local delivery: A MTA runs locally and passes mail directly to Zulip
#  2. Polling: Checks an IMAP inbox every minute for new messages.
#
# The local delivery configuration is preferred for production because
# it supports nicer looking email addresses and has no cron delay,
# while the polling mechanism is better for testing/developing this
# feature because it doesn't require a public-facing IP/DNS setup.
#
# The main email mirror setting is the email address pattern, where
# you specify the email address format you'd like the integration to
# use.  It should be one of the following:
#<EMAIL_ADDRESS>(for local delivery)
#<EMAIL_ADDRESS>(for polling if<EMAIL_ADDRESS>EMAIL_GATEWAY_PATTERN = ""
#
# If you are using local delivery, EMAIL_GATEWAY_PATTERN is all you need
# to change in this file.  You will also need to enable the Zulip postfix
# configuration to support local delivery by adding
#   , zulip::postfix_localmail
# to puppet_classes in /etc/zulip/zulip.conf and then running
# `scripts/zulip-puppet-apply -f` to do the installation.
#
# If you are using polling, you will need to setup an IMAP email
# account dedicated to Zulip email gateway messages.  The model is
# that users will send emails to that account via an address of the
# form<EMAIL_ADDRESS>(which is what you will set as
# EMAIL_GATEWAY_PATTERN); your email provider should deliver those
# emails to the<EMAIL_ADDRESS>inbox.  Then you run in a cron
# job `./manage.py email-mirror` (see puppet/zulip/files/cron.d/email-mirror),
# which will check that inbox and batch-process any new messages.
#
# You will need to configure authentication for the email mirror
# command to access the IMAP mailbox below and in zulip-secrets.conf.
#
# The IMAP login; username here and password as email_gateway_login in
# zulip-secrets.conf.
EMAIL_GATEWAY_LOGIN = ""
# The IMAP server & port to connect to
EMAIL_GATEWAY_IMAP_SERVER = ""
EMAIL_GATEWAY_IMAP_PORT = 993
# The IMAP folder name to check for emails. All emails sent to EMAIL_GATEWAY_PATTERN above
# must be delivered to this folder
EMAIL_GATEWAY_IMAP_FOLDER = "INBOX"

### LDAP integration configuration
# Zulip supports retrieving information about users via LDAP, and
# optionally using LDAP as an authentication mechanism.
#
# In either configuration, you will need to do the following:
#
# * Fill in the LDAP configuration options below so that Zulip can
# connect to your LDAP server
#
# * Setup the mapping between email addresses (used as login names in
# Zulip) and LDAP usernames.  There are two supported ways to setup
# the username mapping:
#
#   (A) If users' email addresses are in LDAP, set
#       LDAP_APPEND_DOMAIN = None
#       AUTH_LDAP_USER_SEARCH to lookup users by email address
#
#   (B) If LDAP only has usernames but email addresses are of the form
#<EMAIL_ADDRESS>you should set:
#       LDAP_APPEND_DOMAIN = example.com and
#       AUTH_LDAP_USER_SEARCH to lookup users by username
#
# You can quickly test whether your configuration works by running:
#   ./manage.py query_ldap<EMAIL_ADDRESS># From the root of your Zulip installation; if your configuration is working
# that will output the full name for your user.
#
# -------------------------------------------------------------
#
# If you are using LDAP for authentication, you will need to enable
# the zproject.backends.ZulipLDAPAuthBackend auth backend in
# AUTHENTICATION_BACKENDS above.  After doing so, you should be able
# to login to Zulip by entering your email address and LDAP password
# on the Zulip login form.
#
# If you are using LDAP to populate names in Zulip, once you finish
# configuring this integration, you will need to run:
#   ./manage.py sync_ldap_user_data
# To sync names for existing users; you may want to run this in a cron
# job to pick up name changes made on your LDAP server.
import ldap
from django_auth_ldap.config import LDAPSearch, GroupOfNamesType

# URI of your LDAP server. If set, LDAP is used to prepopulate a user's name in
# Zulip. Example: "ldaps://ldap.example.com"
AUTH_LDAP_SERVER_URI = ""

# This DN will be used to bind to your server. If unset, anonymous
# binds are performed.  If set, you need to specify the password as
# 'auth_ldap_bind_password' in zulip-secrets.conf.
AUTH_LDAP_BIND_DN = ""

# Specify the search base and the property to filter on that corresponds to the
# username.
AUTH_LDAP_USER_SEARCH = LDAPSearch("ou=users,dc=example,dc=com",
    ldap.SCOPE_SUBTREE, "(uid=%(user)s)")

# If the value of a user's "uid" (or similar) property is not their email
# address, specify the domain to append here.
LDAP_APPEND_DOMAIN = None

# This map defines how to populate attributes of a Zulip user from LDAP.
AUTH_LDAP_USER_ATTR_MAP = {
# Populate the Django user's name from the LDAP directory.
    "full_name": "cn",
}
CAMO_URI = ''

# RabbitMQ configuration
#
# By default, Zulip connects to rabbitmq running locally on the machine,
# but Zulip also supports connecting to RabbitMQ over the network;
# to use a remote RabbitMQ instance, set RABBITMQ_HOST here.
# RABBITMQ_HOST = "localhost"
# To use another rabbitmq user than the default 'zulip', set RABBITMQ_USERNAME here.
# RABBITMQ_USERNAME = 'zulip'

# Memcached configuration
#
# By default, Zulip connects to memcached running locally on the machine,
# but Zulip also supports connecting to memcached over the network;
# to use a remote Memcached instance, set MEMCACHED_LOCATION here.
# Format HOST:PORT
# MEMCACHED_LOCATION = <IP_ADDRESS>:11211

# Redis configuration
#
# By default, Zulip connects to redis running locally on the machine,
# but Zulip also supports connecting to redis over the network;
# to use a remote RabbitMQ instance, set REDIS_HOST here.
# REDIS_HOST = '<IP_ADDRESS>'
# For a different redis port set the REDIS_PORT here.
# REDIS_PORT = 6379

# Controls whether Zulip will rate-limit user requests.
# RATE_LIMITING = True
AUTHENTICATION_BACKENDS = ('zproject.backends.ZulipLDAPAuthBackend',)
AUTH_LDAP_USER_SEARCH = LDAPSearch("ou=Users,dc=comnmodel,dc=org",ldap.SCOPE_SUBTREE,"(uid=%(user)s)")
REDIS_HOST = 'redis'
RABBITMQ_HOST = 'rabbitmq'
MEMCACHED_LOCATION = 'memcached:11211'
ADMIN_DOMAIN = 'comnmodel.org'
(END)

@reyman I think I now know what one of the problems is.
Could you show what files are listed (with ls -ahl option) in your data mount on your host, then I can tell you need to do to fix your problem, that the entrypoint always tries to create the database default data.
Other bugs I found (will fix):

I'm adding exceptions more variables that need to be in another config file then the default confi file (not related to your problem, but should save me some issues later on)

Yeah, the file into /data

➜  /data ls -ahl /data
total 12K
drwxr-xr-x  3 root root 4,0K janv. 13 18:27 .
drwxr-xr-x 23 root root 4,0K févr. 28 23:29 ..
drwxr-xr-x  4 root root 4,0K janv. 13 18:56 slapd

Is this your host data mount folder or the container one? (the host data mount folder with the zulip, postgresql, etc. folder in it.)
Run ls -ahl * in your hosts mount folder.

ah in the container sorry, i check

And the docker-compose.yml volumes points to it?

Taken from the default docker-compose.yml
volumes:
    - "/opt/docker/zulip/zulip:/data:rw"

Then your host mount directory would be /opt/docker/zulip/zulip, did you change the directory?

You're right, here the content :

➜  ~ sudo ls -ahl /opt/docker/zulip/zulip
total 24K
drwxr-xr-x 5 root   root   4,0K mars   6 00:28 .
drwxr-xr-x 5 root   root   4,0K mars   5 23:57 ..
drwxr-xr-x 2 root   root   4,0K mars   5 23:57 backups
drwxr-xr-x 2 root   root   4,0K mars   6 00:28 certs
drwxr-xr-x 2 reyman reyman 4,0K mars   5 23:57 uploads
-rw-r--r-- 1 root   root    609 mars   6 00:28 zulip-secrets.conf

Create a file at /opt/docker/zulip/zulip named .initiated and try again. That should fix your problem.

I have one error :
zulip_1     | 2016-03-13 18:37:48,940 INFO exited: zulip-postsetup-create_user (exit status 127; not e
xpected)

@reyman I'm going to fix the postsetup user creation script returning a bad return code. But so that you know, this isn't a "real"/bad error.
Thanks for helping me test it! :)

I pushed a small change for this, as it should now not show this as an error anymore.

Yes, i retry later.
When i launch sudo docker-compose up, how can i get the hand after execution without closing ?

Add -d to the docker-compose -d up.

Yeah, it works :)
Juste, when i log, i have this error
Forbidden (403)
CSRF verification failed. Request aborted.

On Mon, Mar 14, 2016, 4:48 PM Rey<EMAIL_ADDRESS>wrote:

Yeah, it works :)
Juste, when i log, i have this error
Forbidden (403)
CSRF verification failed. Request aborted.
—
Reply to this email directly or view it on GitHub
https://github.com/Galexrt/docker-zulip/issues/61#issuecomment-196376890
.

Hum, Zulip run using the nginx docker nginx proxy image osixia/openldap
2d9c16de8669        jwilder/nginx-proxy                                     "/app/docker-entrypoi"   2 weeks ago         Up 2 hours          <IP_ADDRESS>:80->80/tcp, <IP_ADDRESS>:443->443/tcp        nginx
I configure using the option given in the doc.
    VIRTUAL_HOST: "team.comnmodel.org"
    VIRTUAL_PROTO: "https"
    VIRTUAL_PORT: "443"

Could you try running zulip on different ports without the proxy?

Ok, i stio nginx-proxy, and rebuild image using port 8080 and 4433, without VIRTUAL_* option


Translated  manipulating-the-dom-with-refs page

Translated dom-manipulation page

@MadDevMax I see a conflict in the PR. can you fix that.

I am closing this PR and raising new one having issue on committing,
same as before heading issue 😢


Build a House Price Predictor with SAP AI Core

Tutorials: https://developers.sap.com/tutorials/ai-core-code.html
Build a House Price Predictor with SAP AI Core
STEP 13
docker upload docker.io/<YOUR_DOCKER_USERNAME>/house-price:02
instead of upload it should be push as indicated in the screenshot

Dhrub, please respond to the user's feedback.

Hi @jmmargo, @louenas
The tutorial has been updated. The commands should work as per requirements now.
Regards,
Neelesh
(cc: @dhrubpaul)


stm32h7: support SDRAM via FMC peripherial

This patchset contains three commits:

f047619 fixes out-of-tree board directory support, making it work like it was intended (according to docs). I couldn’t test my later patches without this one, as I use a non-standard board for development.
d6213fe is a small patch that prevents NuttX from crashing if developer sets MM_REGIONS too low.
051e74e contains mostly changes to stm32h7/stm32_fmc.{c,h} and stm32_allocateheap.c. Also it fixes a serious typo in stm32h7x3xx_rcc.h which caused PLL2 and PLL3 not to work at all on stm32h7.

@anpaza - Thank you. These all have great merit. But the coupling is problematic. In looking at this it should be 3 PRs for the 3 commits.

Greg we have him run the tools on this in its correct form.

@davids5 This change MUST BE DECLINED.  It makes extensive modification too tools/Makefile.unix, tools/Makefile.win, and tools/Config.mk.  That cannot be allowed!  The nature of the changes or also incorrect and ill-informed.  We cannot have this.

This may be reopened if changes to tools/Makefile.win, Makefile.unix, and Config.mk are REMOVED.   Please read what I wrote.

Thank you. These all have great merit. But the coupling is problematic. In looking at this it should be 3 PRs for the 3 commits.


[1.12.2] Fluid conduits disconnect from Tconstruct Tinker Tank

Issue Description:
Fluid conduits and Pressurized fluid conduits will disconnect from the tinker tank, as if not identifying it as a valid container. i've only noticed this happening when exiting and re-entering a world. The pipe will re-connect if it is updated, such as placing/breaking a block next to it, or pressing a button infront of it.
What happens:
Trying to connect fluid conduits to a tinker tank, some conduits will disconnect upon leaving and re-entering the singleplayer world, while others seem to work just fine, with no real indication as to what is causing it.
What you expected to happen:
I expect the pipes to stay connected.
Steps to reproduce:
1.create a tinker tank?
2.hook up some conduits to it
3.exit and enter the world
...

Affected Versions (Do not use "latest"):

EnderIO:5.1.55
EnderCore:0.5.73
Minecraft:1.12.2
Forge:1.12.2-<IP_ADDRESS>47
SpongeForge? no
Optifine? yes
Single Player

Your most recent log file where the issue was present:
https://gist.github.com/ghostbuster3210/4abc48c18008d5f0fd05029b5a677ffe
Below are images of conduits on the tinker tank, displaying the randomness of whether they will connect or not. Before exiting the world and re-entering, all conduits in the image were connected to the tank and would work without issue.

Known bug in Tinkers. Their (multi)blocks change their connectability without telling their neighbors about.

Easy ingame fix is to cause a block update to the connection (like placing a block next to it)


Metadata validation

Addresses one issue raised in #2740

:tada: This PR is included in version 3.5.0 :tada:
The release is available on GitHub release
Your semantic-release bot :package::rocket:


about privacy: is there anything to worry about?

Does the app collects data from users?
What kind of information it saves in my computer?

Does the app collects data from users?

We don't collect any data from users; there is no telemetry whatsoever.

What kind of information it saves in my computer?

User preferences, such as timer lengths, auto-start, etc. are stored in the typical configuration location based on the platform. For example, %appdata% on Windows. 14 days worth of timer logs are stored there as well.


Add createCacheDirectory capability.

See https://github.com/broccolijs/broccoli-plugin/pull/19 for more details.
Requires merging and release of the following PR's:

[ ] https://github.com/broccolijs/broccoli-node-info/pull/1
[ ] https://github.com/broccolijs/broccoli-plugin/pull/19
[x] Update documentation

The code looks good to me! I think it's good to merge! (Modulo your notes above, obviously. And there's a minor conflict, because we got rid of broccoli-kitchen-sink-helpers in the meantime.)


[Event Request] Database::"Sales Line" - Function ValidateLineDiscountPercent - OnValidateLineDiscountPercentOnBeforeUpdateAmounts

We like to request the following Event:
Object: Database::"Sales Line"
Function: ValidateLineDiscountPercent
Publisher Event: OnValidateLineDiscountPercentOnBeforeUpdateAmounts
Reason: To implement custom business logic
Where is the event placed:
[Scope('OnPrem')]
procedure ValidateLineDiscountPercent(DropInvoiceDiscountAmount: Boolean)
begin
TestJobPlanningLine();
TestStatusOpen();
"Line Discount Amount" :=
Round(
Round(Quantity * "Unit Price", Currency."Amount Rounding Precision") *
"Line Discount %" / 100, Currency."Amount Rounding Precision");
if DropInvoiceDiscountAmount then begin
"Inv. Discount Amount" := 0;
"Inv. Disc. Amount to Invoice" := 0;
end;
OnValidateLineDiscountPercentOnBeforeUpdateAmounts(Rec);
UpdateAmounts();
end;
Event Code:
[IntegrationEvent(false, false)]
local procedure OnValidateLineDiscountPercentOnBeforeUpdateAmounts(var SalesLine: Record "Sales Line")
begin
end;

Thanks for reporting this. We agree, and we’ll publish a fix asap, either in an update for the current version or in the next major release. We will update this issue with information about availability.


Test setting up authservice using filter injection in Istio 1.3.0

We would like to be able to use the alpha version of authservice with the latest release of Istio, v1.3.0.
In our testing with a pre-repease version of Istio 1.3 we were able to inject an envoy.ext_authz filter into the application's sidecar's inbound envoy.http_connection_manager using a EnvoyFilter configuration. We configured that envoy.ext_authz filter to send all incoming requests to the authservice via grpc check requests for evaluation.
Unfortunately, this same approach did not work with the first public release of Istio, v1.3.0. We would like to figure out how to make this work before release, because we had planned to document this as the recommended way to use the alpha version of the authservice with Istio on k8s.

Hi @nickrmc83. Now that you have a branch which updates to the latest version of envoy, I was wondering if you've experienced any issues with the newer Envoy?
I noticed that on branch you did not need to change the envoy.yaml file, so maybe you didn't have any problems?
As we mentioned in the meeting, we're having a hard time getting things working with the version of Envoy that is packaged into Istio v1.3.0, even though we had it all working with a pre-release version of 1.3.  Just curious if you've had any similar problems.

We figured out how to get the authservice working with 1.3. We'll make sure to explain it in detail when we write up the overall instructions on how to use the alpha version of the authservice.


Arbitrary shapes

Ability to create all sorts of irregular polygons and have them transform. Support for changing position of vertices and adding/removing vertices from a shape.
This would be used to create a dodge the beat kind of gamemode.

I'm not sure I understand your goal here. Are you looking for collision logic?

Ability to make a shape, add vertices to a shape, set events for vertices to move, etc. I see support for rectangles, circles, and triangles of various widths and lengths, but I am not aware if there is anything that allows this. The gif below demonstrates the flexibility in shape manipulation I am trying to describe:

Are you willing to implement this in the framework, or looking for someone to do it for you? While having such functionality looks nice to have for some use cases, as we won't be using it for osu! it's highly unlikely to be given any priority for the foreseeable future (ie. the next year at least).

I have been trying, but I am not familiar enough with the framework to do this properly yet. I've been looking at Box and Triangle sprites and WaveformGraph to give me an ideas of how to use the framework make something like this.


Fix pagination in metadata browse links

References

Fixes #1713
Fixes https://github.com/DSpace/DSpace/issues/8470

Description
This PR solves the issue where when clicking a browse entry, the current page is incorrectly transferred to the page you clicked.
It also makes sure that when you click the '<-- All browse results', you are returned to the same page number as where you originally were redirected from.
Instructions for Reviewers
Using api7.dspace.org backend, visit [dspace]/browse/author?bbm.page=112 .
Scroll down and click browse entry 'Simmons, Cameron'.
This should redirect you to the first page of this author's articles: the pagination buttons at the bottom should show that you are on the first page.
Clicking '<-- All browse results' should send you back to the 112th page of the author browse-by pages: [dspace]/browse/author?bbm.page=112
Checklist

[x] My PR is small in size (e.g. less than 1,000 lines of code, not including comments & specs/tests), or I have provided reasons as to why that's not possible.
[x] My PR passes TSLint validation using yarn run lint
[x] My PR doesn't introduce circular dependencies
[x] My PR includes TypeDoc comments for all new (or modified) public methods and classes. It also includes TypeDoc for large or complex private methods.
[x] My PR passes all specs/tests and includes new/updated specs or tests based on the Code Testing Guide.

Thanks @LotteHofstede !  This looks good now. Merging immediately.


chore: Space after frontmatter

Causes Markdownlint to misparse files. Rendering seems unaffected

@nschonni : Thanks for your contribution! The author(s) have been notified to review your proposed change.

Minor spacing issues verified.


Add stats on clients based on peerIds

It could be useful to see which clients are connected to our tracker, uses cases are:

Track WebTorrent adoption in torrent clients
Track client segmentation...

Merging this since it as been on stage for a while... Let's see the stats in real world!

WebTorrent versions are parsed correctly now, so we need to update the tests added by this PR. Done here: https://github.com/feross/bittorrent-tracker/commit/a59a3069b5c756afe5e17ebfc3d37fc5692edec5

Also, thanks for self-merging this PR. LGTM!


Close popover whenever escape is hit

- [ ] make it also works with custom container

[x] ensure there's a callback that could prevent this behaviour
[x] click outside of popover container should close the popover

Currently the behaviour in custom container is super weird. Even items like checkboxes that put into such container will loose their interactivity. It' need to be debugged. #13


Bringing back old attributes into the reservations model

Short term fix for API errors.
Unable to duplicate error locally. I'm hoping test more thoroughly with the deployed PR.

Everything seem to work here. However, the DB obviously doesn't have any of the older data.
All the old attributes have be re-introduced to the reservation modal. However, I don't see them in the payload for the Innkeeper table. Is this a possible issue???

Everything seem to work here. However, the DB obviously doesn't have any of the older data. All the old attributes have be re-introduced to the reservation modal. However, I don't see them in the payload for the Innkeeper table. Is this a possible issue???
If they're empty, which they would be on a new reservation they wouldn't come back in the response, right? I think that's how it works.

Everything seem to work here. However, the DB obviously doesn't have any of the older data. All the old attributes have be re-introduced to the reservation modal. However, I don't see them in the payload for the Innkeeper table. Is this a possible issue???

If they're empty, which they would be on a new reservation they wouldn't come back in the response, right? I think that's how it works.

Ah.... That makes sense.

@loneil @popkinj if this is ready to go please merge, don't wait on me


feat: use custom service api

Description

Add a new setting Custom Service API to let user use themselves chatGPT service api.
Screencast

Checklist

[x] I read the extension guidelines
[x] I read the documentation about publishing
[x] I ran npm run build and tested this distribution build in Raycast
[x] I checked that files in the assets folder are used by the extension itself
[x] I checked that assets used by the README are placed outside of the metadata folder

Thank you for your contribution! However, this particular feature is already on review https://github.com/raycast/extensions/pull/6643 so perhaps if you have any additional feature you can start right from there 🫡

Thank you for your contribution! However, this particular feature is already on review #6643 so perhaps if you have any additional feature you can start right from there 🫡

I am glad to hear that！Thank u for your reply！


k8spacket service unreachable

Hello,
I'm trying to access the metrics of the k8spacket pods. However none of them are reachable by Grafana or a pod in the same namespace running curl.
[ root@curl-test:/ ]$ curl http://k8spacket.k8spacket.svc.cluster.local:8080
curl: (7) Failed to connect to k8spacket.k8spacket.svc.cluster.local port 8080: Connection timed out

Same for any other endpoints defined in k8spacket.go.

@bobertrublik
This address is the internal address of the Kubernetes cluster. It will be not reachable from your local machine (if I understand [ root@curl-test:/ ]$ well)
Check if k8spacket is running:
kubectl -n k8spacket get pods

If not, please share here logs from one of the k8spacket pods.
Additionally, share the screen of Node Graph API plugin configuration (https://grafana.com/grafana/plugins/hamedkarbasi93-nodegraphapi-datasource/) from your Grafana instance.

I started a pod with curl which runs next to k8spacket pods in the same namespace, so it should have no problems accessing k8spacket.
Pods:
NAME              READY   STATUS    RESTARTS   AGE
curl-test         1/1     Running   0          2m5s
k8spacket-5fchh   1/1     Running   0          2m10s
k8spacket-627t9   1/1     Running   0          2m10s
k8spacket-stkv6   1/1     Running   0          2m10s

Service:
NAME        TYPE        CLUSTER-IP     EXTERNAL-IP   PORT(S)    AGE
k8spacket   ClusterIP   <IP_ADDRESS>   <none>        8080/TCP   2m29s

The logs until k8spacket starts capturing packets:
2022/08/11 12:51:05 Serving requests on port 8080
2022/08/11 12:51:05 Refreshing interfaces for capturing...
2022/08/11 12:51:05 Starting capture on interface "cali2e0637c950b"
2022/08/11 12:51:05 Starting capture on interface "cali1f3b59b0059"
2022/08/11 12:51:05 Starting capture on interface "calid16cb36db4b"
2022/08/11 12:51:05 Starting capture on interface "calic03726a14ca"
2022/08/11 12:51:05 Starting capture on interface "cali528d52fdb4c"
2022/08/11 12:51:05 Starting capture on interface "cali1223e6c6c31"
2022/08/11 12:51:05 Starting capture on interface "cali433d7080645"
2022/08/11 12:51:05 Starting capture on interface "calie2e9896354d"
2022/08/11 12:51:05 Starting capture on interface "cali64429976fc5"
2022/08/11 12:51:05 Starting capture on interface "cali4f2d01b045d"
2022/08/11 12:51:05 Starting capture on interface "cali00c20cd856b"
2022/08/11 12:51:05 Starting capture on interface "calic8587a62da4"
2022/08/11 12:51:05 Starting capture on interface "calibc9f0bd94b0"
2022/08/11 12:51:05 Starting capture on interface "cali52b87dc4ff7"
2022/08/11 12:51:05 Starting capture on interface "cali73a037b6acb"
2022/08/11 12:51:05 Starting capture on interface "cali85ccd12a9b9"
2022/08/11 12:51:05 Starting capture on interface "cali36b3aeb53ab"
2022/08/11 12:51:05 Starting capture on interface "tunl0"
2022/08/11 12:51:05 Starting capture on interface "calif64e29ba28d"
2022/08/11 12:51:05 Starting capture on interface "cali5c3ecdedc6f"
2022/08/11 12:51:05 Starting capture on interface "cali599a5c75980"
2022/08/11 12:51:05 Starting capture on interface "cali92216366d5a"
2022/08/11 12:51:05 Starting capture on interface "cali95a3d8a7835"
2022/08/11 12:51:05 Starting capture on interface "cali65896cb1ab0"
2022/08/11 12:51:05 Starting capture on interface "cali83581ffecf2"

Ok if I run the curl command a few times in a row cancelling when nothing happens it reaches the pod about 1 out of 5 times? Really strange.
[ root@curl-test:/ ]$ curl http://k8spacket.k8spacket.svc.cluster.local:8080/metrics
^C
[ root@curl-test:/ ]$ curl http://k8spacket.k8spacket.svc.cluster.local:8080/metrics
^C
[ root@curl-test:/ ]$ curl http://k8spacket.k8spacket.svc.cluster.local:8080/metrics
curl: (7) Failed to connect to k8spacket.k8spacket.svc.cluster.local port 8080: Connection timed out
[ root@curl-test:/ ]$ curl http://k8spacket.k8spacket.svc.cluster.local:8080/metrics
^C
[ root@curl-test:/ ]$ curl http://k8spacket.k8spacket.svc.cluster.local:8080/metrics
^C
[ root@curl-test:/ ]$ curl http://k8spacket.k8spacket.svc.cluster.local:8080/metrics
# HELP go_build_info Build information about the main Go module.
# TYPE go_build_info gauge
go_build_info{checksum="",path="github.com/k8spacket",version="(devel)"} 1
# HELP go_gc_duration_seconds A summary of the pause duration of garbage collection cycles.
# TYPE go_gc_duration_seconds summary

I changed it but didn't get noticably better :(
Environment:
      K8S_PACKET_NAME_LABEL_VALUE:                         k8spacket
      K8S_PACKET_HIDE_SRC_PORT:                            true
      K8S_PACKET_REVERSE_GEOIP2_DB_PATH:                   /home/k8spacket/GeoLite2-City.mmdb
      K8S_PACKET_REVERSE_WHOIS_REGEXP:                     (?:OrgName:|org-name:)\s*(.*)
      K8S_PACKET_TCP_ASSEMBLER_MAX_PAGES_PER_CONN:         50
      K8S_PACKET_TCP_ASSEMBLER_MAX_PAGES_TOTAL:            50
      K8S_PACKET_TCP_ASSEMBLER_FLUSHING_PERIOD:            10s
      K8S_PACKET_TCP_ASSEMBLER_FLUSHING_CLOSE_OLDER_THAN:  20s
      K8S_PACKET_TCP_LISTENER_INTERFACES_COMMAND:          ip address | grep @if | sed -E 's/.*<EMAIL_ADDRESS>| tr '\n' ',' | sed 's/.$//'
      K8S_PACKET_TCP_LISTENER_INTERFACES_REFRESH_PERIOD:   10s

@bobertrublik Could you check CPU usage of k8spacket pods? (e.g., https://github.com/robscott/kube-capacity)
Additionally what I can suggest is to try to listen on one network interface first and check If there is some performance issue.
f.e. (check current interfaces first. In the example below I got it from your comment)
K8S_PACKET_TCP_LISTENER_INTERFACES_COMMAND:         echo cali7ea0577d3f1

Resource usage looks good
k8spacket-9pft8                                                 250m (3%)      500m (6%)     1000Mi (1%)       1500Mi (2%)
k8spacket-bswbl                                                 250m (3%)      500m (6%)     1000Mi (1%)       1500Mi (2%)
k8spacket-kkflx                                                 250m (3%)      500m (6%)     1000Mi (1%)       1500Mi (2%)

Interestingly after I set
K8S_PACKET_TCP_LISTENER_INTERFACES_COMMAND: echo caliceb690ae662 | tr -d '\n'
curl basically worked 99% of the time. How to interpret this?
Bandwith metrics:

@bobertrublik
this
k8spacket-9pft8                                                 250m (3%)      500m (6%)     1000Mi (1%)       1500Mi (2%)
k8spacket-bswbl                                                 250m (3%)      500m (6%)     1000Mi (1%)       1500Mi (2%)
k8spacket-kkflx                                                 250m (3%)      500m (6%)     1000Mi (1%)       1500Mi (2%)

is a request and limit definition only. Please, use kube-capacity tool to see current CPU and memory usage. Or you can find it in Grafana dashboards.

It's hard to investigate the problem without seeing it. If there is a possibility to prepare another k8s cluster with access, I could see it and find remedy.

Right sorry, here we go:
kube-capacity --pods -u | grep k8spacket

POD         CPU REQUESTS   CPU LIMITS    CPU UTIL      MEMORY REQUESTS   MEMORY LIMITS   MEMORY UTIL
k8spacket-w6dzp   250m (3%)      500m (6%)     19m (0%)      1000Mi (1%)       1500Mi (2%)     157Mi (0%)
k8spacket-f28pn    250m (3%)      500m (6%)     25m (0%)      1000Mi (1%)       1500Mi (2%)     113Mi (0%)
k8spacket-ts6hw    250m (3%)      500m (6%)     17m (0%)      1000Mi (1%)       1500Mi (2%)     132Mi (0%)

I'll try to investigate if the problem is because of Calico. Anyway, thank you very much for your help!

Last chance:

try request from inside the cluster:

curl http://k8spacket.k8spacket.svc.cluster.local:8080/api/graph/data

check logs in each of k8spacket pods
there is a call between k8spacket pods to get data from the whole cluster. Maybe somewhere there is a problem with the connection (https://github.com/k8spacket/k8spacket/blob/master/metrics/nodegraph/o11y_controller.go#L51)

Yes the curls appear in the logs

Looking at the code I curled the endpoint http://%s:8080/connections?%s and had the same recurring problem with the call timing out most of the time.
I noticed that when the connection times out the logs have a value of 0 for bytesReceived and bytesSent.

Hey @k8spacket I think I found out the issue. I noticed that my Calico interfaces have an MTU of 1440 because 60 bytes are used for the header. (https://projectcalico.docs.tigera.io/networking/mtu#determine-mtu-size)
Meanwhile the eth0 interface has an MTU of 1500 because the daemonset sets hostNetwork: true and there it apparently uses an MTU of 1500. Do you know if there is an application side fix? Otherwise the issue can be closed :)

@bobertrublik
As far as I see there is an option to change MTU for calico network interfaces. I prepared my cluster to have various MTU for eth0 and calico interfaces, but still, no luck repeating your problem. Did you manage it somehow?


fix code formatting in README file

@thomasleveil thanks for fixing it!
P.S. Damn you copy and paste! :stuck_out_tongue_winking_eye:


added the CDN question and answers (Advantages and Disadvantages of using it).

Please check if this PR fulfills these

[ ] The commit message is descriptive of changes
[ ] You have tried at least one local test (this includes viewing the changes on your local fork)
[x] Docs have been added / updated as needed (for bug fixes / features)

What kind of change does this PR introduce?

[ ] Typo / Doc Update
[ ] Bug Fix
[x] Feature / New Item

What is the new behavior (if this is a feature change)?

[x ] Added Interview Technical Question
[ ] Added Interview Whiteboard Question
[ ] Corrected existing items
[ ] Other

Adding new question ? Please check if this PR fulfills these

[ ] <title> tag has been updated
[ ] <h1> tag has been updated
[x] new file is what-is-cdn.html
[x] link to question has been added in technical.html or whiteboard.html

Other information:

Okay, @LukeSchlangen, I will remove the Doctoc code, but why I used it is because in the ReadMe I was told to install the dependency for the project.
So sorry about that!

Great work! Thank you for your contribution!


Single activity mode gets undefined during init

There is a typo somewhere...
I need Lint for Vim.

There was an extra ',true,' in the parameterlist of psgeoInitFilterPaneText().
Copy/paste error.
Messing with parameters to a function call is a great way to make variable names point to undefined mid-run...


[Bug report] Rotating while in Fullscreen on Mobile breaks Fullscreen button

On mobile, changing screen orientation while in fullscreen breaks the fullscreen button.
Seems might be a logic issue?
If I fullscreen while in portrait mode, then rotate the screen, it kicks the viewer out of fullscreen and shows full home assistant dashboard page. But then I can't get back into fullscreen, button stops responding.

I confirm, I have the same problem.

What version of mobile OS and browser do you use?


Apply RocksDB thread safety changes to Dora

What changes are proposed in this pull request?
We fixed some RocksStore thread safety issues where concurrent operations and RocksDB stopping may crash the master process. Those changes are only in master-2.x and therefore missing in the main branch. Therefore those changes are manually brought in, with fixes on conflicts. Those missing commits are:
https://github.com/Alluxio/alluxio/commit/9f152c554b737b7014a3c8ac1555d0a2d1e2e936
https://github.com/Alluxio/alluxio/commit/bf60aefc247f57708fd39dce1c440515712a54c1
Also in the Dora architecture the worker has its new RocksDBDoraMetaStore, which is missing the same thread safety control. Those are implemented in this PR too.
Honestly this change isn't as important on the Dora worker as it previously was in Alluxio 2.x master, because crashing a Dora worker while shutting down is not too critical (yet).
We did not apply the same fix to RocksPageStore. That falls under https://github.com/Alluxio/alluxio/issues/17131.
Why are the changes needed?
Apply thread safety guarantee between concurrent start/stop and client operations.
Does this PR introduce any user facing changes?
No. Based on our perf benchmark, the extra thread safety guarantee come at a very small cost, based on reference counting and bounded waiting.

alluxio-bot, merge this please


Move links out of translation

Addition to https://github.com/go-gitea/gitea/pull/24426#discussion_r1181261215
I updated all existing translations too because otherwise they would show something like

For more information on the Container registry, see the documentation.%!(EXTRA string=https://docs.gitea.io/en-us/packages/container/)

Erm… If I'm not mistaken all these changes to other locales are completely redundant and will be overridden by the CI again…

Sure, but how do we get the placeholder in the translation then? If the placeholder gets removed there will be an error message.

Ah, so you mean until the next crowdin sync in approximately a few hours when they'll be thrown away?

I will add a bot which remerges the changes 👍

Ready to merge?

I think so. I will try to change the translations on Crowdin before the next merge.


Fix dead link

The link was resolved to https://appliedzkp.github.io/semaphore/contracts/sol/SemaphoreClient.sol, which doesn't work.

Thanks CC!


crev review to take --rating=, --understanding= and --thoroughness=.

This is to help people that for whatever reason don't want to go through the effort of changing it manually every time.
Default levels of understanding and thoroughness for both positive (review)and negative(flag) could also be configurable in the user-config file.

That's a good point. Then again, there are legitimate reasons for this. Maybe someone is writing a bot  or something and they always want --understanding=none... . I feel like only users that really, really need it will go through the hasle of typing on the console, or writing a wrapper.


New version release - When?

When will the latest version on the master branch be pushed as an update to the package managers?
I am using Cocoapods.

Same question here 🙋 And is this project dead?

Also interested in the health of this project. One of the products I develop relies heavily on SwiftyJSON, passing around the JSON object as a native object in many cases. At the time the code was written, SwiftyJSON was hugely adopted by the community and the risk of doing this seemed minimal, but with native OS support now it seems this library has languished.

https://github.com/SwiftyJSON/SwiftyJSON/issues/1090

@tsfischer 😭Exactly. At least we have 3.4k forks. Any idea about how to find a good fork?

Hi @LukeTangPL @wongzigii @lingoer
Can anyone of you maintain the project? Or if you cannot spend much time on the project, at least approve PRs and release new Cocoapods versions?
This project is super useful for me and many others, I appreciate your work a lot. It would be great to at least maintain it on the basic level, so there are no build errors.

@tsfischer 😭Exactly. At least we have 3.4k forks. Any idea about how to find a good fork?

Yeah, I've also just forked one to address my build issue, I don't know if there is a good fork to migrate, but I'm ok to take over the project for maintain, can't get approve from original author though, maybe just fork from your side and do it on your own...

is there a good fork?

We are just finishing up a big project to remove SwiftyJSON from our projects. Good riddance.

The new version has been released guys, so you can close the issue.

https://github.com/CocoaPods/Specs/blob/master/Specs/b/e/4/SwiftyJSON/5.0.2


Store and refresh JWT using MMKV in JS and Java

I need to securely store my JWT token in MMKV from JavaScript and access it from Java for certain requests. Additionally, I want to refresh the token in Java and update it back in MMKV, ensuring seamless synchronization between JavaScript and Java.
Does anyone have suggestions or examples of how to  implement this setup? Specifically:
How to set a value to MMKV from JS and retrieve it in Java, and vice versa?
Looking forward to any insights or best practices for this integration!

Use a native module (or a Nitro Module) to pass it to Java.

can you please give an example


Add RELEASE.md

It's useful to have a reminder, especially if you haven't done this for a while!

Nice!!!


rootchain and supernet commands are not working on anvil becuases of  of  " failed to get fee history"

[ Binary command such as rootchain deploy, polybft supert not working on Anvil Goerli fork ]
Description
I am running an anvil goerli fork like so
anvil --fork-url https://goerli.infura.io/v3/9aa3d95b3bc440fa88ea12eaa4456161 --host <IP_ADDRESS>	> /dev/null 2>&1 &

and the following command
./polygon-edge rootchain deploy \
  --stake-manager ${stakeManagerAddr} \
  --stake-token ${stakeToken} \
  --proxy-contracts-admin ${proxyContractsAdmin} \
  --json-rpc $ROOTCHAIN_RPC_URL \
  --deployer-key $PRIVATE_KEY

fails with
failed to deploy rootchain contracts: failed sending CustomSupernetManager contract deploy transaction: failed to get fee history: {"code":-32602,"message":"invalid type: null, expected a sequence"}

similarly
finalizing genesis validator set failed. Error: failed to get fee history: {"code":-32602,"message":"invalid type: null, expected a sequence"}

Environment

MacOS 14.1.1 (23B81)
Polygon Edge 1.3.1
Branch : Official Release 1.3.1
Ran Locally

Steps to reproduce
Run the anvil command
Attempt to follow the rest of the polygon edge deploy steps
Expected behavior
Deployment should proceed as expected

@Stefan-Ethernal any insight would be appreciated 🙏🏻

ran this
cast rpc eth_feeHistory '[3, "latest", []]' --raw

with the following result
{"baseFeePerGas":["0x8","0x8","0x8","0x7"],"gasUsedRatio":[0.056730833333333335,0.0219493,0.12383936666666667],"oldestBlock":"0x9cab53"}
so it seems like the rpc endpoint is working, what is the binary expecting?

seems like in txrelayer/txrelayer.go line 158
if txn.MaxFeePerGas == nil {
	// retrieve the latest base fee
	feeHist, err := t.Client().Eth().FeeHistory(1, ethgo.Latest, nil)
	if err != nil {
		return ethgo.ZeroHash, fmt.Errorf("failed to get fee history: %w", err)
	}

is what's causing the error, with the "invalid type: null, expected a sequence" , perhaps addresed to the "nil" value in line 160

Maybe Anvil Goerli client, to which you are sending the given JSON RPC request is not handling nil values for reward percentiles properly.
Since Edge is not actively maintained anymore, can you try with forking the repository and changing the following line this way (providing an empty array instead of nil?
feeHist, err := t.Client().Eth().FeeHistory(1, ethgo.Latest, []float64{})

Also, it probably makes sense to report the issue to the Anvil Goerli client as well, so they can take a look on their side as well, how they are handling nil reward percentiles parameter.

Maybe Anvil Goerli client, to which you are sending the given JSON RPC request is not handling nil values for reward percentiles properly.
Since Edge is not actively maintained anymore, can you try with forking the repository and changing the following line this way (providing an empty array instead of nil?
feeHist, err := t.Client().Eth().FeeHistory(1, ethgo.Latest, []float64{})

Also, it probably makes sense to report the issue to the Anvil Goerli client as well, so they can take a look on their side as well, how they are handling nil reward percentiles parameter.

I did end up doing that and it worked! Thank you. Will submit an issue to foundry as well.
Will there be future releases to polygon edge or is this end of the line for the product?

Unfortunately, this is the end for the Edge. Officially it is now treated as the community project and seems like Polygon does not have interest in maintaining it anymore. This is the blog post that elaborates it (https://polygon.technology/blog/polygon-labs-to-focus-contributions-on-polygon-cdk-discontinues-contributions-for-edge).

Unfortunately, this is the end for the Edge. Officially it is now treated as the community project and seems like Polygon does not have interest in maintaining it anymore. This is the blog post that elaborates it (https://polygon.technology/blog/polygon-labs-to-focus-contributions-on-polygon-cdk-discontinues-contributions-for-edge).

Thank you for all your hard work!


Accept lower-case versions for SRC blocks, etc.

Hi!
Newer versions of Org mode since this commit (https://code.orgmode.org/bzg/org-mode/commit/13424336a6f30c50952d291e7a82906c1210daf0?style=split)  default to using lower-case versions of blocks BEGIN_SRC -> begin_src. Both versions are acceptable to Org, but this library only looks for uppercase versions.
I know @eigenhombre that you aren't really using this library anymore, so if you are interested, I'd be willing to take over some maintenance duties for this library, as I use it in my blog generation. I'd rather help this library along vs forking and putting another artifact name out there.

Would happily take a PR for this issue @AdamFrey ...

Would happily take a PR for this issue @AdamFrey ...

PR submitted

Merged PR and added tests.

This is on Clojars now as clj-org 0.0.3.


[Event Request] COD 170 - OnBeforeCanGetPurchRecurringLines

Can you please provide an OnBeforeCanGetPurchRecurringLines publisher with VAR access to PurchHeader with either the Handled pattern, or access to the 'Return' value so we can extend the test to skip the CanGetPurchRecurringLines logic?

Thanks for reporting this. We agree, and we’ll publish a fix asap, either in an update for the current version or in the next major release. We will update this issue with information about availability.


Comapre Public Keys

SO basically I want to compare two attestation keys.
The returned attestation key is of type Key (client/keys.go) and inhibits the public key as a variable of type crypto.PublicKey. Per definition it implements the interface
interface{
    Equal(x crypto.PublicKey) bool
}

Now i wrote the following code, which does not detect quality of public keys by comparison of the public keys. Although if I compare the string versions of the public keys the match.
Is this intended behavior?
akk_0, err := client.AttestationKeyRSA(rwc)
if err != nil {
    log.Fatalf("error creating RSA Endorsement key!")
} else {
    fmt.Println("created RSA endorsement key")
}

akk_1, err := client.AttestationKeyRSA(rwc)
if err != nil {
l    og.Fatalf("error creating RSA Attestation key!")
}

if akk_0.PublicKey() == akk_1.PublicKey() {
    fmt.Println("keys are the same")
} else {
    fmt.Println("keys are not the same")
}

akkstr0 := fmt.Sprintf("%v", akk_0.PublicKey())
akkstr0 = akkstr0[:len("akk0: &")-1]
akkstr1 := fmt.Sprintf("%v", akk_1.PublicKey())
akkstr1 = akkstr1[:len("akk1: &")-1]
fmt.Printf("akk0: %v\nakk_1: %v\n", akk_0.PublicKey(), akk_1.PublicKey())

fmt.Printf("Keys are the same: %t\n", akkstr0 == akkstr1)

This isn't really a question specific to our library, but rather a question about how to use interfaces in Go.
As crypto.PublicKey is an interface, using == compares the values as pointers ("Do these point to the same instance of this interface?") rather than by value.
To compare by value, you have to use the Equal method pointed out in your description (and described here).
For an example of this use, see PubKeysEqual.


Bundle has a lot of unused configurations.

Seems like most of things defined here are not used anywhere
ongr_oxid:
    database_mapping:
        oxid:
            tags:
                @shop_tag: '_1'
                @lang_tag: '_1_en'
            shop_id: 0
            lang_id: 0
    entity_namespace: ONGROXIDConnectorBundle

Its used in #20


fix: Default action config values not being set

This PR fixes default action config values not being sent to and saved on the server side. This results to initial values not being picked up on the server side despite being shown to users unless they explicitly change a field.
Fixes #11544

Bug fix (non-breaking change which fixes an issue)

Checklist:

[x] My code follows the style guidelines of this project
[x] I have performed a self-review of my own code
[x] I have commented my code, particularly in hard-to-understand areas
[x] I have made corresponding changes to the documentation
[x] My changes generate no new warnings
[ ] I have added tests that prove my fix is effective or that my feature works
[ ] New and existing unit tests pass locally with my changes

/ok-to-test sha=3af7d7d


cdf for scipy.stats.multivariate_normal incorrect

Hi scipy community,
Quite confused at the moment. First time stats user here, trying to to something quite trivial but failing.
I'm trying to evaluate a multivariate gaussian on rectangular region. In uncorrelated distribution conditioning a single variable on half the interval e.g. (0, inf) should return probability of .5 not 1!
Python 3.7.1
Scipy 1.4.1
n = 3
mu = np.zeros(n)
cov = np.eye(n)
a = np.full(mu.shape, -np.inf)
a[0] = 0.
b = np.full(mu.shape, np.inf)
cdf_multivariate = scipy.stats.multivariate_normal.cdf(b, mean=mu, cov=cov)
- scipy.stats.multivariate_normal.cdf(a, mean=mu, cov=cov)
print ('cdf_mulitvariate')
print (cdf)
#--- Deconstruct to univariates
cdf_univariate = 1.
for i in range(n):
cdf_univariate *= (scipy.stats.norm.cdf((b[i] - mu[i]) / cov[i, i]) - scipy.stats.norm.cdf((a[i] - mu[i]) / cov[i, i]))
print ('cdf_univariate')
print (cdf_univariate)
#--- Rejection Sampling for sample mean
samples = scipy.stats.multivariate_normal(mu, cov).rvs(10000000)
for i in range(n):
ids = np.where(np.logical_and(samples[:, i] > a[i], samples[:, i] < b[i]))
samples = samples[ids]
cdf_sampled = float(samples.shape[0]) / float(10000000)
print ('sampled_cdf: ', cdf_sampled)
cdf for multivariate case returns 1. while both others (corretly) return .5
Any hints what I could do wrong here?

cdf_multivariate = scipy.stats.multivariate_normal.cdf(b, mean=mu, cov=cov)
 - scipy.stats.multivariate_normal.cdf(a, mean=mu, cov=cov)

this line is in logic error. You have here
cdf(inf, inf, inf) - cdf (0, -inf, -inf)

you have entered the arguments as though they were the upper and lower bounds for integration. But cdf (0, -inf, -inf) = 0, as it is ~ \int_{-inf}^{-inf} .... The arguments are always the upper limits of the integral. The lower limits are always -inf.
You should have
cdf(inf, inf, inf) - cdf (0, inf, inf) = 1 - cd (0, inf, inf)

back in code
cdf_multivariate = 1. - scipy.stats.multivariate_normal.cdf([0., np.inf, np.inf], mean=mu, cov=cov)
# gives 0.5 as expected

@julians89 Looks like this issue was resolved so I'll close. Please reopen if you think there is a bug. Thanks!


Bug: soft = true changes entry hotness, as opposed to documented

If soft is true, match will fail, predicate is true, so evaluates to referenced += 1.
But soft = true is stated not to change hotness
https://github.com/arthurprs/quick-cache/blob/10cd51bd97f66cb08a6f3305756544a670a4e796/src/shard.rs#L659
Solution:
- !matches!
+ matches!

:eagle::eye:, do you want to submit a PR for this?


Move test dependencies to test project file

In order to keep a lean Julia installation, this PR moves the dependencies only needed in tests to a separate project file.
Minimum Julia version is bumped to 1.2.
If that's not desired, this syntax can be used instead for the same purpose.

Thanks - didn't know you could do this.   I merged this to dev and it will appear in v0.1.2


Tutorial overhaul

As lightkurve has grown, our docs have become outdated.  I propose a bit of an overhaul of the tutorials to bring them up to date with the most recent version.
lightkurve contributor @ojhall94 has identified some specific bugs, below:
How to recover a known planet in Kepler data?

Plots are no longer scatterplots as depicted in the tutorial
The package transit_periodogram, used in this tutorial, has been depricated according to its Github page.
In the plot function, need to define ax = ax as a kwarg, the tutorial just lists it as an arg. (This one crops up a lot)

How to use lightkurve for asteroseismology?

Do not get identical results to the tutorial, but the differences are negligible.
Some unexplained terms: CDPP?
Direct code copied from the tutorial doesn't work anymore: aperture_mask = aper required as a keyword when creating a light curve with a slightly larger aperture.

How to make a supernova lightcurve?

A second observation has been made of KSN2015k since the tutorial was made, campaign should be specified to 6.
tpf interact is commented out in the tutorial example
tpf interact doesn't seem to work for me, but could be my machine (we've discussed this already, it was the localhost issue)
tpf interact doesn't work with lc_clean because lc_clean has had frames removed, and so has fewer cadences than the tpf
None of the tqdm progress bars shown in the tutorial output are in the code anymore

How to combine lightcurves from different Kepler quarters

Window length of the flatten() method risks imposing systematics if its not set manually. Might be useful to clarify the meaning of this kwarg in the tutorial so people (like me!) don't learn to use it blindly

My two cents-- I'd like to see the figures rendered high dpi for retina displays, and we should decide whether it's desirable to show %matplotlib inline and other configuration lines on every single tutorial.  I propose that we do not, and instead make a new "Troubleshooting" tutorial that introduces how to make those sorts of configuration changes, and addresses questions about how to run demos outside the Jupyter notebook, etc.  We may also want to revisit the notebook naming convention moving forward.

Idea: should we add a conda environment.yml file for lightkurve?  The virtue of such a file resides primarily as a common quick-start environment for tutorials and developers.
For example, if we want to aid students in running the documentation locally, they would need to clone this repo, then have Jupyter installed, the right bokeh version, etc.  It would be helpful to instruct students to simply run:
conda env create -f environment.yml
conda activate lightkurve

I'm going to close this issue because it is >1 yr old and the tutorials have undergone a lot of revisions since. Please do open a new issue if further improvements are needed!


[Proposal] CRD for snapshotRepositories

I think it is worth to move snapshotRepositories configuration to a separate CRD.
Currently, you cannot add snapshot settings if the cluster is not yet provisioned and healthy. Such restriction adds complexity to automated install processes because you need to manually comment this block, wait until the cluster is ready, and then run deployment again with this block included.
Separate CRD may allow to define snapshot repository resource before cluster is healthy and operator could then use it whenever it could.
And even logically such configuration looks like a separate resource, like users, roles, etc, so maybe while this feature is still in beta it will be easier to change the logic.

Hey @evheniyt
It is an interesting idea, @prudhvigodithi any thoughts here ?

My 2 cents:

Currently, you cannot add snapshot settings if the cluster is not yet provisioned and healthy

The snapshotRepositories feature is still beta (partially because of this limitation). My expectation is that to stabilize the feature the repos can be configured in the beginning and the operator autonomously finds the right point in the provisioning process when to configure them in opensearch.
Having a separate CRD or not is in my opinion orthogonal to this limitation.


fix(userspace/libsinsp): properly include  in libsinsp token_bucket unit test

What type of PR is this?

Uncomment one (or more) /kind <> lines:

/kind bug

/kind cleanup

/kind design

/kind documentation

/kind failing-test

/kind feature

Any specific area of the project related to this PR?

Uncomment one (or more) /area <> lines:

/area build

/area driver-kmod

/area driver-ebpf

/area libscap

/area libsinsp

/area tests

/area proposals

What this PR does / why we need it:
This fixes build in debian 10 for example.
Discovered while testing https://github.com/falcosecurity/test-infra/pull/636.
It seems like make_shared actually needs this include, otherwise failing with:

error: 'make_shared' is not a member of 'std'

Which issue(s) this PR fixes:

Fixes #
Special notes for your reviewer:
Does this PR introduce a user-facing change?:

NONE

@FedeDP: Adding the "do-not-merge/release-note-label-needed" label because no release-note block was detected, please follow our release note process to remove it.

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository.

[APPROVALNOTIFIER] This PR is APPROVED
This pull-request has been approved by: FedeDP
The full list of commands accepted by this bot can be found here.
The pull request process is described here

Needs approval from an approver in each of these files:

OWNERS [FedeDP]

Approvers can indicate their approval by writing /approve in a comment
Approvers can cancel approval by writing /approve cancel in a comment

/test build-libs

I'd wait for https://github.com/falcosecurity/test-infra/pull/636 to be merged, and then try a retest for build-libs!

LGTM label has been added.  Git tree hash: 056115fe252f77b1ae2e0d0d74a8560d65478e43

[APPROVALNOTIFIER] This PR is APPROVED
This pull-request has been approved by: FedeDP, leogr
The full list of commands accepted by this bot can be found here.
The pull request process is described here

Needs approval from an approver in each of these files:

OWNERS [FedeDP,leogr]

Approvers can indicate their approval by writing /approve in a comment
Approvers can cancel approval by writing /approve cancel in a comment

@FedeDP: The following test failed, say /retest to rerun all failed tests or /retest-required to rerun all mandatory failed tests:

Test name
Commit
Details
Required
Rerun command

build-libs
ac96ff72699360051365e78cceaee237969187be
link
true
/test build-libs

Full PR test history. Please help us cut down on flakes by linking to an open issue when you hit one in your PR.

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. I understand the commands that are listed here.

/test build-libs

@FedeDP: The following test failed, say /retest to rerun all failed tests or /retest-required to rerun all mandatory failed tests:

Test name
Commit
Details
Required
Rerun command

build-libs
ac96ff72699360051365e78cceaee237969187be
link
true
/test build-libs

Full PR test history. Please help us cut down on flakes by linking to an open issue when you hit one in your PR.

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. I understand the commands that are listed here.

/test build-libs

@FedeDP: The following test failed, say /retest to rerun all failed tests or /retest-required to rerun all mandatory failed tests:

Test name
Commit
Details
Required
Rerun command

build-libs
ac96ff72699360051365e78cceaee237969187be
link
true
/test build-libs

Full PR test history. Please help us cut down on flakes by linking to an open issue when you hit one in your PR.

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. I understand the commands that are listed here.

/test build-libs


GSD Request

--- GSD JSON ---
{
  "vendor_name": "Linux",
  "product_name": "Kernel",
  "product_version": "versions from v5.10 to before v5.10.84",
  "vulnerability_type": "unspecified",
  "affected_component": "unspecified",
  "attack_vector": "unspecified",
  "impact": "unspecified",
  "credit": "",
  "references": [
    "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?id=245500d853e9f20036cec7df4f6984ece4c6bf26",
    "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?id=35b40f724c4ef0f683d94dab3af9ab38261d782b"
  ],
  "extended_references": [
    {
      "type": "commit",
      "value": "245500d853e9f20036cec7df4f6984ece4c6bf26",
      "note": "introduced"
    },
    {
      "type": "commit",
      "value": "35b40f724c4ef0f683d94dab3af9ab38261d782b",
      "note": "fixed"
    }
  ],
  "reporter": "joshbressers",
  "reporter_id": 1692786,
  "notes": "",
  "description": "rxrpc: Fix rxrpc_peer leak in rxrpc_look_up_bundle()\n\nThis is an automated ID intended to aid in discovery of potential security vulnerabilities. The actual impact and attack plausibility have not yet been proven.\nThis ID is fixed in Linux Kernel version v5.10.84 by commit 35b40f724c4ef0f683d94dab3af9ab38261d782b, it was introduced in version v5.10 by commit 245500d853e9f20036cec7df4f6984ece4c6bf26. For more details please see the references link."
}
--- GSD JSON ---

This issue has been assigned GSD-2021-1002495