I did a test on compiling python-2.7.13 from source on the centos-6.9 VM. Notice that at the end of the compilation, some modules (which includes sqlite3, etc) were not able to build. I then install the necessary devel packages as fellow:
sqlite-devel
openssl-devel
bzip2-devel
zlib-devel
readline-devel
gdbm-devel
Recompile python-2.7.13 again and did a test to import sqlite3. No more import error.
I then did a rebuild on zato following what you have written on ODB HA reconnection issue (affecting scheduled services), to rebuild so that the necessary sqlite3 packages will properly build.
The rebuild Zato packages still have “no globre modules” and “no django_openid_auth module”. This can be overcome easily with pip install.
Using the rebuild zato package, I create a server and load balancer without any issues. However upon creating the web-admin, I encounter the following:
[zato@testzato ~]$ zato create web_admin --odb_host localhost --odb_port 3306 --odb_user zatotest --odb_db_name ZATOTEST WA mysql /opt/zato/CA/out-pub/web-admin-pub-2018-01-22_02-49-36.pem /opt/zato/CA/out-priv/web-admin-priv-2018-01-22_02-49-36.pem /opt/zato/CA/out-cert/web-admin-cert-2018-01-22_02-49-36.pem /opt/zato/CA/ca-material/ca-cert.pem testacc1
ODB database password (will not be echoed):
Enter the odb_password again (will not be echoed):
Technical account password (will not be echoed):
Enter the tech_account_password again (will not be echoed):
Traceback (most recent call last):
File “/opt/zato/current/code/bin/zato”, line 181, in
sys.exit(zato.cli.zato_command.main())
File “/opt/zato/2.0.8rev1/code/zato-cli/src/zato/cli/zato_command.py”, line 262, in main
return run_command(get_parser().parse_args())
File “/opt/zato/2.0.8rev1/code/zato-cli/src/zato/cli/init.py”, line 266, in run_command
command_classargs.command.run(args)
File “/opt/zato/2.0.8rev1/code/zato-cli/src/zato/cli/init.py”, line 483, in run
return_code = self.execute(args)
File “/opt/zato/2.0.8rev1/code/zato-cli/src/zato/cli/create_web_admin.py”, line 148, in execute
call_command(‘migrate’, run_syncdb=True, interactive=False, verbosity=0)
File “/opt/zato/2.0.8rev1/code/eggs/Django-1.9.3-py2.7.egg/django/core/management/init.py”, line 119, in call_command
return command.execute(*args, **defaults)
File “/opt/zato/2.0.8rev1/code/eggs/Django-1.9.3-py2.7.egg/django/core/management/base.py”, line 399, in execute
output = self.handle(*args, **options)
File “/opt/zato/2.0.8rev1/code/eggs/Django-1.9.3-py2.7.egg/django/core/management/commands/migrate.py”, line 200, in handle
executor.migrate(targets, plan, fake=fake, fake_initial=fake_initial)
File “/opt/zato/2.0.8rev1/code/eggs/Django-1.9.3-py2.7.egg/django/db/migrations/executor.py”, line 92, in migrate
self._migrate_all_forwards(plan, full_plan, fake=fake, fake_initial=fake_initial)
File “/opt/zato/2.0.8rev1/code/eggs/Django-1.9.3-py2.7.egg/django/db/migrations/executor.py”, line 121, in _migrate_all_forwards
state = self.apply_migration(state, migration, fake=fake, fake_initial=fake_initial)
File “/opt/zato/2.0.8rev1/code/eggs/Django-1.9.3-py2.7.egg/django/db/migrations/executor.py”, line 198, in apply_migration
state = migration.apply(state, schema_editor)
File “/opt/zato/2.0.8rev1/code/eggs/Django-1.9.3-py2.7.egg/django/db/migrations/migration.py”, line 123, in apply
operation.database_forwards(self.app_label, schema_editor, old_state, project_state)
File “/opt/zato/2.0.8rev1/code/eggs/Django-1.9.3-py2.7.egg/django/db/migrations/operations/models.py”, line 59, in database_forwards
schema_editor.create_model(model)
File “/opt/zato/2.0.8rev1/code/eggs/Django-1.9.3-py2.7.egg/django/db/backends/base/schema.py”, line 284, in create_model
self.execute(sql, params or None)
File “/opt/zato/2.0.8rev1/code/eggs/Django-1.9.3-py2.7.egg/django/db/backends/base/schema.py”, line 110, in execute
cursor.execute(sql, params)
File “/opt/zato/2.0.8rev1/code/eggs/Django-1.9.3-py2.7.egg/django/db/backends/utils.py”, line 79, in execute
return super(CursorDebugWrapper, self).execute(sql, params)
File “/opt/zato/2.0.8rev1/code/eggs/Django-1.9.3-py2.7.egg/django/db/backends/utils.py”, line 64, in execute
return self.cursor.execute(sql, params)
File “/opt/zato/2.0.8rev1/code/eggs/Django-1.9.3-py2.7.egg/django/db/utils.py”, line 95, in exit
six.reraise(dj_exc_type, dj_exc_value, traceback)
File “/opt/zato/2.0.8rev1/code/eggs/Django-1.9.3-py2.7.egg/django/db/backends/utils.py”, line 62, in execute
return self.cursor.execute(sql)
File “/opt/zato/2.0.8rev1/code/eggs/Django-1.9.3-py2.7.egg/django/db/backends/mysql/base.py”, line 112, in execute
return self.cursor.execute(query, args)
File “/opt/zato/2.0.8rev1/code/eggs/PyMySQL-0.6.2-py2.7.egg/pymysql/cursors.py”, line 132, in execute
result = self._query(query)
File “/opt/zato/2.0.8rev1/code/eggs/PyMySQL-0.6.2-py2.7.egg/pymysql/cursors.py”, line 271, in _query
conn.query(q)
File “/opt/zato/2.0.8rev1/code/eggs/PyMySQL-0.6.2-py2.7.egg/pymysql/connections.py”, line 726, in query
self._affected_rows = self._read_query_result(unbuffered=unbuffered)
File “/opt/zato/2.0.8rev1/code/eggs/PyMySQL-0.6.2-py2.7.egg/pymysql/connections.py”, line 861, in _read_query_result
result.read()
File “/opt/zato/2.0.8rev1/code/eggs/PyMySQL-0.6.2-py2.7.egg/pymysql/connections.py”, line 1064, in read
first_packet = self.connection._read_packet()
File “/opt/zato/2.0.8rev1/code/eggs/PyMySQL-0.6.2-py2.7.egg/pymysql/connections.py”, line 826, in _read_packet
packet.check_error()
File “/opt/zato/2.0.8rev1/code/eggs/PyMySQL-0.6.2-py2.7.egg/pymysql/connections.py”, line 370, in check_error
raise_mysql_exception(self._data)
File “/opt/zato/2.0.8rev1/code/eggs/PyMySQL-0.6.2-py2.7.egg/pymysql/err.py”, line 116, in raise_mysql_exception
_check_mysql_exception(errinfo)
File “/opt/zato/2.0.8rev1/code/eggs/PyMySQL-0.6.2-py2.7.egg/pymysql/err.py”, line 112, in _check_mysql_exception
raise InternalError(errno, errorvalue)
InternalError: (1170, u"BLOB/TEXT column ‘claimed_id’ used in key specification without a key length")
Regards,