0

I am trying to deploy an otree/heroku app on prolific.

I have so far created a player variable:

prolific_id = models.StringField()

Additionally on one of the earlier apps, I set the prolific_id player variable to the participant.label and adjusted the link on prolific from PROLIFIC_ID to participant_label.

@staticmethod
    def before_next_page(self, timeout_happened):
        self.prolific_id = self.participant.label

Unfortunately, I get the following error (below). Any help would be appreciated.

Failed to create session: (sqlite3.OperationalError) table otree_participant has no column named _waitpage_is_connected [SQL: INSERT INTO otree_participant (_vars, session_id, label, id_in_session, payoff, time_started_utc, mturk_assignment_id, mturk_worker_id, _index_in_pages, _monitor_note, code, _session_code, visited, _last_page_timestamp, _last_request_timestamp, is_on_wait_page, _current_page_name, _current_app_name, _round_number, _current_form_page_url, _max_page_index, _is_bot, is_browser_bot, _timeout_expiration_time, _timeout_page_index, _waitpage_is_connected, _waitpage_tab_hidden, _gbat_page_index, _gbat_grouped) VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?)] [parameters: ('gAR9lC4=\n', 56, None, 1, '0', None, None, None, 0, None, '8nhm9dvm', 't8nzlwc5', 0, None, None, 0, None, None, None, None, None, 0, 0, None, None, 0, 0, None, None)] (Background on this error at: http://sqlalche.me/e/13/e3q8)
Traceback (most recent call last):
  File "/app/.heroku/python/lib/python3.9/site-packages/sqlalchemy/engine/base.py", line 1276, in _execute_context
    self.dialect.do_execute(
  File "/app/.heroku/python/lib/python3.9/site-packages/sqlalchemy/engine/default.py", line 609, in do_execute
    cursor.execute(statement, parameters)
sqlite3.OperationalError: table otree_participant has no column named _waitpage_is_connected
  • 1
    You need to switch to a client-server database instead of SQLite. The error messages in the marked duplicates are different, but the cause is the same. Heroku will frequently reset your SQLite database to whatever state it was when you deployed. – ChrisGPT was on strike Nov 10 '22 at 20:25

0 Answers0