Having an issues connecting to the SQL cloud.

Have a simple application which works on SQLite.
Able to deploy to GAE using the following:
  db = DAL('gae')

However if its changed to:
  db = DAL('google:sql://cdmr01:csm/csmcel05',migrate_enabled=True)
  # cdmr01:csm is the sql cloud instance and csmcel05 the GAE
application; which we assume is correct.

It can't create the database failing with the following log:

E 2011-10-19 13:00:14.137
Traceback (most recent call last):
  File "/base/data/home/apps/s~csmcel05/1.354064527714710096/gluon/
restricted.py", line 192, in restricted
    exec ccode in environment
  File "/base/data/home/apps/s~csmcel05/1.354064527714710096/
applications/demurage/models/db.py", line 16, in <module>
    session.connect(request, response, db=db)
  File "/base/data/home/apps/s~csmcel05/1.354064527714710096/gluon/
globals.py", line 425, in connect
    migrate=table_migrate,
  File "/base/data/home/apps/s~csmcel05/1.354064527714710096/gluon/
dal.py", line 4534, in define_table
    polymodel=polymodel)
  File "/base/data/home/apps/s~csmcel05/1.354064527714710096/gluon/
dal.py", line 691, in create_table
    logfile = self.file_open(table._loggername, 'a')
  File "/base/data/home/apps/s~csmcel05/1.354064527714710096/gluon/
dal.py", line 2925, in file_open
    return DatabaseStoredFile(self.db,filename,mode)
  File "/base/data/home/apps/s~csmcel05/1.354064527714710096/gluon/
dal.py", line 2866, in __init__
    self.db.executesql("CREATE TABLE IF NOT EXISTS web2py_filesystem
(path VARCHAR(512), content LONGTEXT, PRIMARY KEY(path) )
ENGINE=InnoDB;")
  File "/base/data/home/apps/s~csmcel05/1.354064527714710096/gluon/
dal.py", line 4607, in executesql
    self._adapter.execute(query)
  File "/base/data/home/apps/s~csmcel05/1.354064527714710096/gluon/
dal.py", line 1339, in execute
    return self.log_execute(*a, **b)
  File "/base/data/home/apps/s~csmcel05/1.354064527714710096/gluon/
dal.py", line 1334, in log_execute
    ret = self.cursor.execute(*a, **b)
  File "/base/python_runtime/python_lib/versions/1/google/storage/
speckle/python/api/rdbms.py", line 287, in execute
    response = self._conn.MakeRequest('Exec', request)
  File "/base/python_runtime/python_lib/versions/1/google/storage/
speckle/python/api/rdbms.py", line 579, in MakeRequest
    response = self._MakeRetriableRequest(stub_method, request)
  File "/base/python_runtime/python_lib/versions/1/google/storage/
speckle/python/api/rdbms.py", line 610, in _MakeRetriableRequest
    sql_exception.message))
DatabaseError: 1071: Specified key was too long; max key length is 767
bytes

Any ideas or work arounds?
(would be good to have a sample application we know works, if the
issue is with the connection/routes /app configurations)

Reply via email to