willingc

test-db-prepared-lock-loop

Jul 17th, 2017
226
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 353.36 KB | None | 0 0
  1. [08:55:35 carol@cw-pro] jupyterhub on minrk-wait-up-fall-off [?$] $ pytest
  2. ======================================================= test session starts =======================================================
  3. platform darwin -- Python 3.6.1, pytest-3.1.3, py-1.4.34, pluggy-0.4.0
  4. rootdir: /Users/carol/code/jhub/jupyterhub, inifile:
  5. plugins: tornado-0.4.5, cov-2.5.1
  6. collected 126 items
  7.  
  8. jupyterhub/tests/test_api.py ..............FFFFFFFFFFFFFEE.FFFFE
  9. jupyterhub/tests/test_app.py .........
  10. jupyterhub/tests/test_auth.py .............
  11. jupyterhub/tests/test_db.py ..
  12. jupyterhub/tests/test_orm.py ........
  13. jupyterhub/tests/test_pages.py .....................
  14. jupyterhub/tests/test_proxy.py .............
  15. jupyterhub/tests/test_services.py ...
  16. jupyterhub/tests/test_services_auth.py .......
  17. jupyterhub/tests/test_singleuser.py ....
  18. jupyterhub/tests/test_spawner.py .........
  19. jupyterhub/tests/test_traitlets.py ...
  20.  
  21. ============================================================= ERRORS ==============================================================
  22. _______________________________________________ ERROR at setup of test_get_services _______________________________________________
  23.  
  24. request = <SubRequest 'mockservice_url' for <Function 'test_get_services'>>
  25. app = <jupyterhub.tests.mocking.MockHub object at 0x10cdc3978>
  26.  
  27. @fixture
  28. def mockservice_url(request, app):
  29. """Mock a service with its own url to test external services"""
  30. > yield _mockservice(request, app, url=True)
  31.  
  32. jupyterhub/tests/conftest.py:120:
  33. _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
  34. jupyterhub/tests/conftest.py:86: in _mockservice
  35. app.init_services()
  36. jupyterhub/app.py:1030: in init_services
  37. orm_service = orm.Service.find(self.db, name=name)
  38. jupyterhub/orm.py:253: in find
  39. return db.query(cls).filter(cls.name == name).first()
  40. ../../../.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/query.py:2755: in first
  41. ret = list(self[0:1])
  42. ../../../.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/query.py:2547: in __getitem__
  43. return list(res)
  44. ../../../.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/query.py:2855: in __iter__
  45. return self._execute_and_instances(context)
  46. ../../../.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/query.py:2876: in _execute_and_instances
  47. close_with_result=True)
  48. ../../../.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/query.py:2885: in _get_bind_args
  49. **kw
  50. ../../../.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/query.py:2867: in _connection_from_session
  51. conn = self.session.connection(**kw)
  52. ../../../.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/session.py:998: in connection
  53. execution_options=execution_options)
  54. ../../../.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/session.py:1003: in _connection_for_bind
  55. engine, execution_options)
  56. ../../../.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/session.py:382: in _connection_for_bind
  57. self._assert_active()
  58. _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
  59.  
  60. self = <sqlalchemy.orm.session.SessionTransaction object at 0x10cf2c7b8>, prepared_ok = False, rollback_ok = False
  61. deactive_ok = False, closed_msg = 'This transaction is closed'
  62.  
  63. def _assert_active(self, prepared_ok=False,
  64. rollback_ok=False,
  65. deactive_ok=False,
  66. closed_msg="This transaction is closed"):
  67. if self._state is COMMITTED:
  68. raise sa_exc.InvalidRequestError(
  69. "This session is in 'committed' state; no further "
  70. "SQL can be emitted within this transaction."
  71. )
  72. elif self._state is PREPARED:
  73. if not prepared_ok:
  74. raise sa_exc.InvalidRequestError(
  75. > "This session is in 'prepared' state; no further "
  76. "SQL can be emitted within this transaction."
  77. E sqlalchemy.exc.InvalidRequestError: This session is in 'prepared' state; no further SQL can be emitted within this transaction.
  78.  
  79. ../../../.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/session.py:264: InvalidRequestError
  80. _______________________________________________ ERROR at setup of test_get_service ________________________________________________
  81.  
  82. request = <SubRequest 'mockservice_url' for <Function 'test_get_service'>>
  83. app = <jupyterhub.tests.mocking.MockHub object at 0x10cdc3978>
  84.  
  85. @fixture
  86. def mockservice_url(request, app):
  87. """Mock a service with its own url to test external services"""
  88. > yield _mockservice(request, app, url=True)
  89.  
  90. jupyterhub/tests/conftest.py:120:
  91. _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
  92. jupyterhub/tests/conftest.py:86: in _mockservice
  93. app.init_services()
  94. jupyterhub/app.py:1030: in init_services
  95. orm_service = orm.Service.find(self.db, name=name)
  96. jupyterhub/orm.py:253: in find
  97. return db.query(cls).filter(cls.name == name).first()
  98. ../../../.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/query.py:2755: in first
  99. ret = list(self[0:1])
  100. ../../../.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/query.py:2547: in __getitem__
  101. return list(res)
  102. ../../../.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/query.py:2855: in __iter__
  103. return self._execute_and_instances(context)
  104. ../../../.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/query.py:2876: in _execute_and_instances
  105. close_with_result=True)
  106. ../../../.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/query.py:2885: in _get_bind_args
  107. **kw
  108. ../../../.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/query.py:2867: in _connection_from_session
  109. conn = self.session.connection(**kw)
  110. ../../../.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/session.py:998: in connection
  111. execution_options=execution_options)
  112. ../../../.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/session.py:1003: in _connection_for_bind
  113. engine, execution_options)
  114. ../../../.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/session.py:382: in _connection_for_bind
  115. self._assert_active()
  116. _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
  117.  
  118. self = <sqlalchemy.orm.session.SessionTransaction object at 0x10cf2c7b8>, prepared_ok = False, rollback_ok = False
  119. deactive_ok = False, closed_msg = 'This transaction is closed'
  120.  
  121. def _assert_active(self, prepared_ok=False,
  122. rollback_ok=False,
  123. deactive_ok=False,
  124. closed_msg="This transaction is closed"):
  125. if self._state is COMMITTED:
  126. raise sa_exc.InvalidRequestError(
  127. "This session is in 'committed' state; no further "
  128. "SQL can be emitted within this transaction."
  129. )
  130. elif self._state is PREPARED:
  131. if not prepared_ok:
  132. raise sa_exc.InvalidRequestError(
  133. > "This session is in 'prepared' state; no further "
  134. "SQL can be emitted within this transaction."
  135. E sqlalchemy.exc.InvalidRequestError: This session is in 'prepared' state; no further SQL can be emitted within this transaction.
  136.  
  137. ../../../.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/session.py:264: InvalidRequestError
  138. _______________________________________________ ERROR at teardown of test_shutdown ________________________________________________
  139.  
  140. self = <sqlalchemy.engine.base.Connection object at 0x10cff2be0>, autocommit = False
  141.  
  142. def _commit_impl(self, autocommit=False):
  143. assert not self.__branch_from
  144.  
  145. if self._has_events or self.engine._has_events:
  146. self.dispatch.commit(self)
  147.  
  148. if self._echo:
  149. self.engine.logger.info("COMMIT")
  150. try:
  151. > self.engine.dialect.do_commit(self.connection)
  152.  
  153. ../../../.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/engine/base.py:721:
  154. _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
  155.  
  156. self = <sqlalchemy.dialects.sqlite.pysqlite.SQLiteDialect_pysqlite object at 0x10c4105f8>
  157. dbapi_connection = <sqlalchemy.pool._ConnectionFairy object at 0x10cff2550>
  158.  
  159. def do_commit(self, dbapi_connection):
  160. > dbapi_connection.commit()
  161. E sqlite3.OperationalError: database is locked
  162.  
  163. ../../../.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/engine/default.py:443: OperationalError
  164.  
  165. The above exception was the direct cause of the following exception:
  166.  
  167. def fin():
  168. # disconnect logging during cleanup because pytest closes captured FDs prematurely
  169. mocked_app.log.handlers = []
  170.  
  171. MockHub.clear_instance()
  172. > mocked_app.stop()
  173.  
  174. jupyterhub/tests/conftest.py:60:
  175. _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
  176. jupyterhub/tests/mocking.py:194: in stop
  177. IOLoop().run_sync(self.cleanup)
  178. ../../../.pyenv/versions/3.6.1/lib/python3.6/site-packages/tornado/ioloop.py:458: in run_sync
  179. return future_cell[0].result()
  180. ../../../.pyenv/versions/3.6.1/lib/python3.6/site-packages/tornado/concurrent.py:238: in result
  181. raise_exc_info(self._exc_info)
  182. ../../../.pyenv/versions/3.6.1/lib/python3.6/site-packages/tornado/gen.py:1063: in run
  183. yielded = self.gen.throw(*exc_info)
  184. jupyterhub/app.py:1339: in cleanup
  185. self.db.commit()
  186. ../../../.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/session.py:906: in commit
  187. self.transaction.commit()
  188. ../../../.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/session.py:465: in commit
  189. t[1].commit()
  190. ../../../.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/engine/base.py:1632: in commit
  191. self._do_commit()
  192. ../../../.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/engine/base.py:1663: in _do_commit
  193. self.connection._commit_impl()
  194. ../../../.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/engine/base.py:723: in _commit_impl
  195. self._handle_dbapi_exception(e, None, None, None, None)
  196. ../../../.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/engine/base.py:1402: in _handle_dbapi_exception
  197. exc_info
  198. ../../../.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/util/compat.py:203: in raise_from_cause
  199. reraise(type(exception), exception, tb=exc_tb, cause=cause)
  200. ../../../.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/util/compat.py:186: in reraise
  201. raise value.with_traceback(tb)
  202. ../../../.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/engine/base.py:721: in _commit_impl
  203. self.engine.dialect.do_commit(self.connection)
  204. _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
  205.  
  206. self = <sqlalchemy.dialects.sqlite.pysqlite.SQLiteDialect_pysqlite object at 0x10c4105f8>
  207. dbapi_connection = <sqlalchemy.pool._ConnectionFairy object at 0x10cff2550>
  208.  
  209. def do_commit(self, dbapi_connection):
  210. > dbapi_connection.commit()
  211. E sqlalchemy.exc.OperationalError: (sqlite3.OperationalError) database is locked
  212.  
  213. ../../../.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/engine/default.py:443: OperationalError
  214. ---------------------------------------------------- Captured stderr teardown -----------------------------------------------------
  215. --- Logging error ---
  216. Traceback (most recent call last):
  217. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/engine/base.py", line 1182, in _execute_context
  218. context)
  219. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/engine/default.py", line 470, in do_execute
  220. cursor.execute(statement, parameters)
  221. sqlite3.OperationalError: database is locked
  222.  
  223. The above exception was the direct cause of the following exception:
  224.  
  225. Traceback (most recent call last):
  226. File "/Users/carol/code/jhub/jupyterhub/jupyterhub/user.py", line 382, in stop
  227. self.state = spawner.get_state()
  228. File "/Users/carol/code/jhub/jupyterhub/jupyterhub/user.py", line 152, in __setattr__
  229. if not attr.startswith('_') and self.orm_user and hasattr(self.orm_user, attr):
  230. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/attributes.py", line 237, in __get__
  231. return self.impl.get(instance_state(instance), dict_)
  232. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/attributes.py", line 579, in get
  233. value = state._load_expired(state, passive)
  234. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/state.py", line 592, in _load_expired
  235. self.manager.deferred_scalar_loader(self, toload)
  236. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/loading.py", line 698, in load_scalar_attributes
  237. only_load_props=attribute_names)
  238. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/loading.py", line 223, in load_on_ident
  239. return q.one()
  240. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/query.py", line 2814, in one
  241. ret = self.one_or_none()
  242. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/query.py", line 2784, in one_or_none
  243. ret = list(self)
  244. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/query.py", line 2855, in __iter__
  245. return self._execute_and_instances(context)
  246. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/query.py", line 2878, in _execute_and_instances
  247. result = conn.execute(querycontext.statement, self._params)
  248. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/engine/base.py", line 945, in execute
  249. return meth(self, multiparams, params)
  250. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/sql/elements.py", line 263, in _execute_on_connection
  251. return connection._execute_clauseelement(self, multiparams, params)
  252. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/engine/base.py", line 1053, in _execute_clauseelement
  253. compiled_sql, distilled_params
  254. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/engine/base.py", line 1189, in _execute_context
  255. context)
  256. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/engine/base.py", line 1402, in _handle_dbapi_exception
  257. exc_info
  258. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/util/compat.py", line 203, in raise_from_cause
  259. reraise(type(exception), exception, tb=exc_tb, cause=cause)
  260. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/util/compat.py", line 186, in reraise
  261. raise value.with_traceback(tb)
  262. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/engine/base.py", line 1182, in _execute_context
  263. context)
  264. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/engine/default.py", line 470, in do_execute
  265. cursor.execute(statement, parameters)
  266. sqlalchemy.exc.OperationalError: (sqlite3.OperationalError) database is locked [SQL: 'SELECT users.id AS users_id, users.name AS users_name, users.admin AS users_admin, users.last_activity AS users_last_activity, users.cookie_id AS users_cookie_id, users.state AS users_state, users.auth_state AS users_auth_state \nFROM users \nWHERE users.id = ?'] [parameters: (1,)]
  267.  
  268. During handling of the above exception, another exception occurred:
  269.  
  270. Traceback (most recent call last):
  271. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/engine/base.py", line 1182, in _execute_context
  272. context)
  273. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/engine/default.py", line 470, in do_execute
  274. cursor.execute(statement, parameters)
  275. sqlite3.OperationalError: database is locked
  276.  
  277. The above exception was the direct cause of the following exception:
  278.  
  279. Traceback (most recent call last):
  280. File "/Users/carol/code/jhub/jupyterhub/jupyterhub/user.py", line 401, in stop
  281. auth.post_spawn_stop(self, spawner)
  282. File "/Users/carol/code/jhub/jupyterhub/jupyterhub/auth.py", line 552, in post_spawn_stop
  283. pamela.close_session(user.name, service=self.service)
  284. File "/Users/carol/code/jhub/jupyterhub/jupyterhub/user.py", line 146, in __getattr__
  285. if hasattr(self.orm_user, attr):
  286. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/attributes.py", line 237, in __get__
  287. return self.impl.get(instance_state(instance), dict_)
  288. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/attributes.py", line 579, in get
  289. value = state._load_expired(state, passive)
  290. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/state.py", line 592, in _load_expired
  291. self.manager.deferred_scalar_loader(self, toload)
  292. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/loading.py", line 698, in load_scalar_attributes
  293. only_load_props=attribute_names)
  294. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/loading.py", line 223, in load_on_ident
  295. return q.one()
  296. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/query.py", line 2814, in one
  297. ret = self.one_or_none()
  298. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/query.py", line 2784, in one_or_none
  299. ret = list(self)
  300. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/query.py", line 2855, in __iter__
  301. return self._execute_and_instances(context)
  302. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/query.py", line 2878, in _execute_and_instances
  303. result = conn.execute(querycontext.statement, self._params)
  304. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/engine/base.py", line 945, in execute
  305. return meth(self, multiparams, params)
  306. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/sql/elements.py", line 263, in _execute_on_connection
  307. return connection._execute_clauseelement(self, multiparams, params)
  308. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/engine/base.py", line 1053, in _execute_clauseelement
  309. compiled_sql, distilled_params
  310. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/engine/base.py", line 1189, in _execute_context
  311. context)
  312. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/engine/base.py", line 1402, in _handle_dbapi_exception
  313. exc_info
  314. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/util/compat.py", line 203, in raise_from_cause
  315. reraise(type(exception), exception, tb=exc_tb, cause=cause)
  316. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/util/compat.py", line 186, in reraise
  317. raise value.with_traceback(tb)
  318. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/engine/base.py", line 1182, in _execute_context
  319. context)
  320. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/engine/default.py", line 470, in do_execute
  321. cursor.execute(statement, parameters)
  322. sqlalchemy.exc.OperationalError: (sqlite3.OperationalError) database is locked [SQL: 'SELECT users.id AS users_id, users.name AS users_name, users.admin AS users_admin, users.last_activity AS users_last_activity, users.cookie_id AS users_cookie_id, users.state AS users_state, users.auth_state AS users_auth_state \nFROM users \nWHERE users.id = ?'] [parameters: (1,)]
  323.  
  324. During handling of the above exception, another exception occurred:
  325.  
  326. Traceback (most recent call last):
  327. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/engine/base.py", line 1182, in _execute_context
  328. context)
  329. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/engine/default.py", line 470, in do_execute
  330. cursor.execute(statement, parameters)
  331. sqlite3.OperationalError: database is locked
  332.  
  333. The above exception was the direct cause of the following exception:
  334.  
  335. Traceback (most recent call last):
  336. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/logging/__init__.py", line 992, in emit
  337. msg = self.format(record)
  338. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/logging/__init__.py", line 838, in format
  339. return fmt.format(record)
  340. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/logging/__init__.py", line 575, in format
  341. record.message = record.getMessage()
  342. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/logging/__init__.py", line 338, in getMessage
  343. msg = msg % self.args
  344. File "/Users/carol/code/jhub/jupyterhub/jupyterhub/user.py", line 158, in __repr__
  345. return repr(self.orm_user)
  346. File "/Users/carol/code/jhub/jupyterhub/jupyterhub/orm.py", line 152, in __repr__
  347. if self.servers:
  348. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/ext/associationproxy.py", line 515, in __bool__
  349. return bool(self.col)
  350. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/ext/associationproxy.py", line 509, in <lambda>
  351. col = property(lambda self: self.lazy_collection())
  352. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/ext/associationproxy.py", line 467, in __call__
  353. return getattr(obj, self.target)
  354. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/attributes.py", line 237, in __get__
  355. return self.impl.get(instance_state(instance), dict_)
  356. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/attributes.py", line 584, in get
  357. value = self.callable_(state, passive)
  358. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/strategies.py", line 557, in _load_for_state
  359. return self._emit_lazyload(session, state, ident_key, passive)
  360. File "<string>", line 1, in <lambda>
  361. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/strategies.py", line 621, in _emit_lazyload
  362. state, passive=passive)
  363. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/strategies.py", line 490, in _generate_lazy_clause
  364. state, dict_, ident, passive)
  365. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/mapper.py", line 2564, in _get_state_attr_by_column
  366. return state.manager[prop.key].impl.get(state, dict_, passive=passive)
  367. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/attributes.py", line 579, in get
  368. value = state._load_expired(state, passive)
  369. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/state.py", line 592, in _load_expired
  370. self.manager.deferred_scalar_loader(self, toload)
  371. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/loading.py", line 698, in load_scalar_attributes
  372. only_load_props=attribute_names)
  373. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/loading.py", line 223, in load_on_ident
  374. return q.one()
  375. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/query.py", line 2814, in one
  376. ret = self.one_or_none()
  377. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/query.py", line 2784, in one_or_none
  378. ret = list(self)
  379. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/query.py", line 2855, in __iter__
  380. return self._execute_and_instances(context)
  381. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/query.py", line 2878, in _execute_and_instances
  382. result = conn.execute(querycontext.statement, self._params)
  383. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/engine/base.py", line 945, in execute
  384. return meth(self, multiparams, params)
  385. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/sql/elements.py", line 263, in _execute_on_connection
  386. return connection._execute_clauseelement(self, multiparams, params)
  387. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/engine/base.py", line 1053, in _execute_clauseelement
  388. compiled_sql, distilled_params
  389. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/engine/base.py", line 1189, in _execute_context
  390. context)
  391. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/engine/base.py", line 1402, in _handle_dbapi_exception
  392. exc_info
  393. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/util/compat.py", line 203, in raise_from_cause
  394. reraise(type(exception), exception, tb=exc_tb, cause=cause)
  395. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/util/compat.py", line 186, in reraise
  396. raise value.with_traceback(tb)
  397. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/engine/base.py", line 1182, in _execute_context
  398. context)
  399. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/engine/default.py", line 470, in do_execute
  400. cursor.execute(statement, parameters)
  401. sqlalchemy.exc.OperationalError: (sqlite3.OperationalError) database is locked [SQL: 'SELECT users.id AS users_id, users.name AS users_name, users.admin AS users_admin, users.last_activity AS users_last_activity, users.cookie_id AS users_cookie_id, users.state AS users_state, users.auth_state AS users_auth_state \nFROM users \nWHERE users.id = ?'] [parameters: (1,)]
  402. Call stack:
  403. File "/Users/carol/.pyenv/versions/3.6.1/bin/pytest", line 11, in <module>
  404. sys.exit(main())
  405. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/config.py", line 58, in main
  406. return config.hook.pytest_cmdline_main(config=config)
  407. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/vendored_packages/pluggy.py", line 745, in __call__
  408. return self._hookexec(self, self._nonwrappers + self._wrappers, kwargs)
  409. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/vendored_packages/pluggy.py", line 339, in _hookexec
  410. return self._inner_hookexec(hook, methods, kwargs)
  411. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/vendored_packages/pluggy.py", line 334, in <lambda>
  412. _MultiCall(methods, kwargs, hook.spec_opts).execute()
  413. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/vendored_packages/pluggy.py", line 614, in execute
  414. res = hook_impl.function(*args)
  415. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/main.py", line 134, in pytest_cmdline_main
  416. return wrap_session(config, _main)
  417. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/main.py", line 105, in wrap_session
  418. session.exitstatus = doit(config, session) or 0
  419. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/main.py", line 141, in _main
  420. config.hook.pytest_runtestloop(session=session)
  421. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/vendored_packages/pluggy.py", line 745, in __call__
  422. return self._hookexec(self, self._nonwrappers + self._wrappers, kwargs)
  423. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/vendored_packages/pluggy.py", line 339, in _hookexec
  424. return self._inner_hookexec(hook, methods, kwargs)
  425. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/vendored_packages/pluggy.py", line 334, in <lambda>
  426. _MultiCall(methods, kwargs, hook.spec_opts).execute()
  427. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/vendored_packages/pluggy.py", line 614, in execute
  428. res = hook_impl.function(*args)
  429. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/main.py", line 164, in pytest_runtestloop
  430. item.config.hook.pytest_runtest_protocol(item=item, nextitem=nextitem)
  431. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/vendored_packages/pluggy.py", line 745, in __call__
  432. return self._hookexec(self, self._nonwrappers + self._wrappers, kwargs)
  433. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/vendored_packages/pluggy.py", line 339, in _hookexec
  434. return self._inner_hookexec(hook, methods, kwargs)
  435. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/vendored_packages/pluggy.py", line 334, in <lambda>
  436. _MultiCall(methods, kwargs, hook.spec_opts).execute()
  437. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/vendored_packages/pluggy.py", line 613, in execute
  438. return _wrapped_call(hook_impl.function(*args), self.execute)
  439. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/vendored_packages/pluggy.py", line 248, in _wrapped_call
  440. call_outcome = _CallOutcome(func)
  441. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/vendored_packages/pluggy.py", line 265, in __init__
  442. self.result = func()
  443. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/vendored_packages/pluggy.py", line 613, in execute
  444. return _wrapped_call(hook_impl.function(*args), self.execute)
  445. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/vendored_packages/pluggy.py", line 248, in _wrapped_call
  446. call_outcome = _CallOutcome(func)
  447. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/vendored_packages/pluggy.py", line 265, in __init__
  448. self.result = func()
  449. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/vendored_packages/pluggy.py", line 614, in execute
  450. res = hook_impl.function(*args)
  451. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/runner.py", line 60, in pytest_runtest_protocol
  452. runtestprotocol(item, nextitem=nextitem)
  453. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/runner.py", line 75, in runtestprotocol
  454. nextitem=nextitem))
  455. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/runner.py", line 127, in call_and_report
  456. call = call_runtest_hook(item, when, **kwds)
  457. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/runner.py", line 145, in call_runtest_hook
  458. return CallInfo(lambda: ihook(item=item, **kwds), when=when)
  459. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/runner.py", line 157, in __init__
  460. self.result = func()
  461. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/runner.py", line 145, in <lambda>
  462. return CallInfo(lambda: ihook(item=item, **kwds), when=when)
  463. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/vendored_packages/pluggy.py", line 745, in __call__
  464. return self._hookexec(self, self._nonwrappers + self._wrappers, kwargs)
  465. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/vendored_packages/pluggy.py", line 339, in _hookexec
  466. return self._inner_hookexec(hook, methods, kwargs)
  467. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/vendored_packages/pluggy.py", line 334, in <lambda>
  468. _MultiCall(methods, kwargs, hook.spec_opts).execute()
  469. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/vendored_packages/pluggy.py", line 613, in execute
  470. return _wrapped_call(hook_impl.function(*args), self.execute)
  471. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/vendored_packages/pluggy.py", line 248, in _wrapped_call
  472. call_outcome = _CallOutcome(func)
  473. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/vendored_packages/pluggy.py", line 265, in __init__
  474. self.result = func()
  475. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/vendored_packages/pluggy.py", line 614, in execute
  476. res = hook_impl.function(*args)
  477. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/runner.py", line 110, in pytest_runtest_teardown
  478. item.session._setupstate.teardown_exact(item, nextitem)
  479. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/runner.py", line 428, in teardown_exact
  480. self._teardown_towards(needed_collectors)
  481. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/runner.py", line 434, in _teardown_towards
  482. self._pop_and_teardown()
  483. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/runner.py", line 394, in _pop_and_teardown
  484. self._teardown_with_finalization(colitem)
  485. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/runner.py", line 412, in _teardown_with_finalization
  486. self._callfinalizers(colitem)
  487. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/runner.py", line 402, in _callfinalizers
  488. fin()
  489. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/fixtures.py", line 741, in finish
  490. func()
  491. File "/Users/carol/code/jhub/jupyterhub/jupyterhub/tests/conftest.py", line 60, in fin
  492. mocked_app.stop()
  493. File "/Users/carol/code/jhub/jupyterhub/jupyterhub/tests/mocking.py", line 194, in stop
  494. IOLoop().run_sync(self.cleanup)
  495. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/tornado/ioloop.py", line 453, in run_sync
  496. self.start()
  497. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/zmq/eventloop/ioloop.py", line 177, in start
  498. super(ZMQIOLoop, self).start()
  499. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/tornado/ioloop.py", line 832, in start
  500. self._run_callback(self._callbacks.popleft())
  501. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/tornado/ioloop.py", line 605, in _run_callback
  502. ret = callback()
  503. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/tornado/stack_context.py", line 277, in null_wrapper
  504. return fn(*args, **kwargs)
  505. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/tornado/ioloop.py", line 436, in run
  506. result = func()
  507. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/tornado/gen.py", line 307, in wrapper
  508. yielded = next(result)
  509. File "/Users/carol/code/jhub/jupyterhub/jupyterhub/app.py", line 1319, in cleanup
  510. futures.append(user.stop())
  511. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/tornado/gen.py", line 319, in wrapper
  512. _futures_to_runners[future] = Runner(result, future, yielded)
  513. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/tornado/gen.py", line 1003, in __init__
  514. self.run()
  515. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/tornado/gen.py", line 1069, in run
  516. yielded = self.gen.send(value)
  517. File "/Users/carol/code/jhub/jupyterhub/jupyterhub/user.py", line 404, in stop
  518. self.log.exception("Error in Authenticator.post_spawn_stop for %s", self)
  519. Unable to print the message and arguments - possible formatting error.
  520. Use the traceback above to help find the error.
  521. --- Logging error ---
  522. Traceback (most recent call last):
  523. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/engine/base.py", line 1182, in _execute_context
  524. context)
  525. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/engine/default.py", line 470, in do_execute
  526. cursor.execute(statement, parameters)
  527. sqlite3.OperationalError: database is locked
  528.  
  529. The above exception was the direct cause of the following exception:
  530.  
  531. Traceback (most recent call last):
  532. File "/Users/carol/code/jhub/jupyterhub/jupyterhub/user.py", line 382, in stop
  533. self.state = spawner.get_state()
  534. File "/Users/carol/code/jhub/jupyterhub/jupyterhub/user.py", line 152, in __setattr__
  535. if not attr.startswith('_') and self.orm_user and hasattr(self.orm_user, attr):
  536. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/attributes.py", line 237, in __get__
  537. return self.impl.get(instance_state(instance), dict_)
  538. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/attributes.py", line 579, in get
  539. value = state._load_expired(state, passive)
  540. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/state.py", line 592, in _load_expired
  541. self.manager.deferred_scalar_loader(self, toload)
  542. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/loading.py", line 698, in load_scalar_attributes
  543. only_load_props=attribute_names)
  544. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/loading.py", line 223, in load_on_ident
  545. return q.one()
  546. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/query.py", line 2814, in one
  547. ret = self.one_or_none()
  548. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/query.py", line 2784, in one_or_none
  549. ret = list(self)
  550. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/query.py", line 2855, in __iter__
  551. return self._execute_and_instances(context)
  552. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/query.py", line 2878, in _execute_and_instances
  553. result = conn.execute(querycontext.statement, self._params)
  554. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/engine/base.py", line 945, in execute
  555. return meth(self, multiparams, params)
  556. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/sql/elements.py", line 263, in _execute_on_connection
  557. return connection._execute_clauseelement(self, multiparams, params)
  558. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/engine/base.py", line 1053, in _execute_clauseelement
  559. compiled_sql, distilled_params
  560. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/engine/base.py", line 1189, in _execute_context
  561. context)
  562. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/engine/base.py", line 1402, in _handle_dbapi_exception
  563. exc_info
  564. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/util/compat.py", line 203, in raise_from_cause
  565. reraise(type(exception), exception, tb=exc_tb, cause=cause)
  566. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/util/compat.py", line 186, in reraise
  567. raise value.with_traceback(tb)
  568. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/engine/base.py", line 1182, in _execute_context
  569. context)
  570. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/engine/default.py", line 470, in do_execute
  571. cursor.execute(statement, parameters)
  572. sqlalchemy.exc.OperationalError: (sqlite3.OperationalError) database is locked [SQL: 'SELECT users.id AS users_id, users.name AS users_name, users.admin AS users_admin, users.last_activity AS users_last_activity, users.cookie_id AS users_cookie_id, users.state AS users_state, users.auth_state AS users_auth_state \nFROM users \nWHERE users.id = ?'] [parameters: (2,)]
  573.  
  574. During handling of the above exception, another exception occurred:
  575.  
  576. Traceback (most recent call last):
  577. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/engine/base.py", line 1182, in _execute_context
  578. context)
  579. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/engine/default.py", line 470, in do_execute
  580. cursor.execute(statement, parameters)
  581. sqlite3.OperationalError: database is locked
  582.  
  583. The above exception was the direct cause of the following exception:
  584.  
  585. Traceback (most recent call last):
  586. File "/Users/carol/code/jhub/jupyterhub/jupyterhub/user.py", line 401, in stop
  587. auth.post_spawn_stop(self, spawner)
  588. File "/Users/carol/code/jhub/jupyterhub/jupyterhub/auth.py", line 552, in post_spawn_stop
  589. pamela.close_session(user.name, service=self.service)
  590. File "/Users/carol/code/jhub/jupyterhub/jupyterhub/user.py", line 146, in __getattr__
  591. if hasattr(self.orm_user, attr):
  592. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/attributes.py", line 237, in __get__
  593. return self.impl.get(instance_state(instance), dict_)
  594. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/attributes.py", line 579, in get
  595. value = state._load_expired(state, passive)
  596. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/state.py", line 592, in _load_expired
  597. self.manager.deferred_scalar_loader(self, toload)
  598. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/loading.py", line 698, in load_scalar_attributes
  599. only_load_props=attribute_names)
  600. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/loading.py", line 223, in load_on_ident
  601. return q.one()
  602. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/query.py", line 2814, in one
  603. ret = self.one_or_none()
  604. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/query.py", line 2784, in one_or_none
  605. ret = list(self)
  606. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/query.py", line 2855, in __iter__
  607. return self._execute_and_instances(context)
  608. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/query.py", line 2878, in _execute_and_instances
  609. result = conn.execute(querycontext.statement, self._params)
  610. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/engine/base.py", line 945, in execute
  611. return meth(self, multiparams, params)
  612. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/sql/elements.py", line 263, in _execute_on_connection
  613. return connection._execute_clauseelement(self, multiparams, params)
  614. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/engine/base.py", line 1053, in _execute_clauseelement
  615. compiled_sql, distilled_params
  616. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/engine/base.py", line 1189, in _execute_context
  617. context)
  618. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/engine/base.py", line 1402, in _handle_dbapi_exception
  619. exc_info
  620. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/util/compat.py", line 203, in raise_from_cause
  621. reraise(type(exception), exception, tb=exc_tb, cause=cause)
  622. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/util/compat.py", line 186, in reraise
  623. raise value.with_traceback(tb)
  624. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/engine/base.py", line 1182, in _execute_context
  625. context)
  626. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/engine/default.py", line 470, in do_execute
  627. cursor.execute(statement, parameters)
  628. sqlalchemy.exc.OperationalError: (sqlite3.OperationalError) database is locked [SQL: 'SELECT users.id AS users_id, users.name AS users_name, users.admin AS users_admin, users.last_activity AS users_last_activity, users.cookie_id AS users_cookie_id, users.state AS users_state, users.auth_state AS users_auth_state \nFROM users \nWHERE users.id = ?'] [parameters: (2,)]
  629.  
  630. During handling of the above exception, another exception occurred:
  631.  
  632. Traceback (most recent call last):
  633. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/engine/base.py", line 1182, in _execute_context
  634. context)
  635. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/engine/default.py", line 470, in do_execute
  636. cursor.execute(statement, parameters)
  637. sqlite3.OperationalError: database is locked
  638.  
  639. The above exception was the direct cause of the following exception:
  640.  
  641. Traceback (most recent call last):
  642. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/logging/__init__.py", line 992, in emit
  643. msg = self.format(record)
  644. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/logging/__init__.py", line 838, in format
  645. return fmt.format(record)
  646. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/logging/__init__.py", line 575, in format
  647. record.message = record.getMessage()
  648. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/logging/__init__.py", line 338, in getMessage
  649. msg = msg % self.args
  650. File "/Users/carol/code/jhub/jupyterhub/jupyterhub/user.py", line 158, in __repr__
  651. return repr(self.orm_user)
  652. File "/Users/carol/code/jhub/jupyterhub/jupyterhub/orm.py", line 152, in __repr__
  653. if self.servers:
  654. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/ext/associationproxy.py", line 515, in __bool__
  655. return bool(self.col)
  656. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/ext/associationproxy.py", line 509, in <lambda>
  657. col = property(lambda self: self.lazy_collection())
  658. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/ext/associationproxy.py", line 467, in __call__
  659. return getattr(obj, self.target)
  660. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/attributes.py", line 237, in __get__
  661. return self.impl.get(instance_state(instance), dict_)
  662. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/attributes.py", line 584, in get
  663. value = self.callable_(state, passive)
  664. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/strategies.py", line 557, in _load_for_state
  665. return self._emit_lazyload(session, state, ident_key, passive)
  666. File "<string>", line 1, in <lambda>
  667. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/strategies.py", line 621, in _emit_lazyload
  668. state, passive=passive)
  669. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/strategies.py", line 490, in _generate_lazy_clause
  670. state, dict_, ident, passive)
  671. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/mapper.py", line 2564, in _get_state_attr_by_column
  672. return state.manager[prop.key].impl.get(state, dict_, passive=passive)
  673. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/attributes.py", line 579, in get
  674. value = state._load_expired(state, passive)
  675. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/state.py", line 592, in _load_expired
  676. self.manager.deferred_scalar_loader(self, toload)
  677. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/loading.py", line 698, in load_scalar_attributes
  678. only_load_props=attribute_names)
  679. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/loading.py", line 223, in load_on_ident
  680. return q.one()
  681. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/query.py", line 2814, in one
  682. ret = self.one_or_none()
  683. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/query.py", line 2784, in one_or_none
  684. ret = list(self)
  685. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/query.py", line 2855, in __iter__
  686. return self._execute_and_instances(context)
  687. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/query.py", line 2878, in _execute_and_instances
  688. result = conn.execute(querycontext.statement, self._params)
  689. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/engine/base.py", line 945, in execute
  690. return meth(self, multiparams, params)
  691. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/sql/elements.py", line 263, in _execute_on_connection
  692. return connection._execute_clauseelement(self, multiparams, params)
  693. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/engine/base.py", line 1053, in _execute_clauseelement
  694. compiled_sql, distilled_params
  695. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/engine/base.py", line 1189, in _execute_context
  696. context)
  697. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/engine/base.py", line 1402, in _handle_dbapi_exception
  698. exc_info
  699. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/util/compat.py", line 203, in raise_from_cause
  700. reraise(type(exception), exception, tb=exc_tb, cause=cause)
  701. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/util/compat.py", line 186, in reraise
  702. raise value.with_traceback(tb)
  703. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/engine/base.py", line 1182, in _execute_context
  704. context)
  705. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/engine/default.py", line 470, in do_execute
  706. cursor.execute(statement, parameters)
  707. sqlalchemy.exc.OperationalError: (sqlite3.OperationalError) database is locked [SQL: 'SELECT users.id AS users_id, users.name AS users_name, users.admin AS users_admin, users.last_activity AS users_last_activity, users.cookie_id AS users_cookie_id, users.state AS users_state, users.auth_state AS users_auth_state \nFROM users \nWHERE users.id = ?'] [parameters: (2,)]
  708. Call stack:
  709. File "/Users/carol/.pyenv/versions/3.6.1/bin/pytest", line 11, in <module>
  710. sys.exit(main())
  711. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/config.py", line 58, in main
  712. return config.hook.pytest_cmdline_main(config=config)
  713. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/vendored_packages/pluggy.py", line 745, in __call__
  714. return self._hookexec(self, self._nonwrappers + self._wrappers, kwargs)
  715. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/vendored_packages/pluggy.py", line 339, in _hookexec
  716. return self._inner_hookexec(hook, methods, kwargs)
  717. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/vendored_packages/pluggy.py", line 334, in <lambda>
  718. _MultiCall(methods, kwargs, hook.spec_opts).execute()
  719. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/vendored_packages/pluggy.py", line 614, in execute
  720. res = hook_impl.function(*args)
  721. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/main.py", line 134, in pytest_cmdline_main
  722. return wrap_session(config, _main)
  723. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/main.py", line 105, in wrap_session
  724. session.exitstatus = doit(config, session) or 0
  725. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/main.py", line 141, in _main
  726. config.hook.pytest_runtestloop(session=session)
  727. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/vendored_packages/pluggy.py", line 745, in __call__
  728. return self._hookexec(self, self._nonwrappers + self._wrappers, kwargs)
  729. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/vendored_packages/pluggy.py", line 339, in _hookexec
  730. return self._inner_hookexec(hook, methods, kwargs)
  731. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/vendored_packages/pluggy.py", line 334, in <lambda>
  732. _MultiCall(methods, kwargs, hook.spec_opts).execute()
  733. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/vendored_packages/pluggy.py", line 614, in execute
  734. res = hook_impl.function(*args)
  735. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/main.py", line 164, in pytest_runtestloop
  736. item.config.hook.pytest_runtest_protocol(item=item, nextitem=nextitem)
  737. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/vendored_packages/pluggy.py", line 745, in __call__
  738. return self._hookexec(self, self._nonwrappers + self._wrappers, kwargs)
  739. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/vendored_packages/pluggy.py", line 339, in _hookexec
  740. return self._inner_hookexec(hook, methods, kwargs)
  741. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/vendored_packages/pluggy.py", line 334, in <lambda>
  742. _MultiCall(methods, kwargs, hook.spec_opts).execute()
  743. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/vendored_packages/pluggy.py", line 613, in execute
  744. return _wrapped_call(hook_impl.function(*args), self.execute)
  745. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/vendored_packages/pluggy.py", line 248, in _wrapped_call
  746. call_outcome = _CallOutcome(func)
  747. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/vendored_packages/pluggy.py", line 265, in __init__
  748. self.result = func()
  749. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/vendored_packages/pluggy.py", line 613, in execute
  750. return _wrapped_call(hook_impl.function(*args), self.execute)
  751. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/vendored_packages/pluggy.py", line 248, in _wrapped_call
  752. call_outcome = _CallOutcome(func)
  753. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/vendored_packages/pluggy.py", line 265, in __init__
  754. self.result = func()
  755. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/vendored_packages/pluggy.py", line 614, in execute
  756. res = hook_impl.function(*args)
  757. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/runner.py", line 60, in pytest_runtest_protocol
  758. runtestprotocol(item, nextitem=nextitem)
  759. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/runner.py", line 75, in runtestprotocol
  760. nextitem=nextitem))
  761. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/runner.py", line 127, in call_and_report
  762. call = call_runtest_hook(item, when, **kwds)
  763. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/runner.py", line 145, in call_runtest_hook
  764. return CallInfo(lambda: ihook(item=item, **kwds), when=when)
  765. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/runner.py", line 157, in __init__
  766. self.result = func()
  767. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/runner.py", line 145, in <lambda>
  768. return CallInfo(lambda: ihook(item=item, **kwds), when=when)
  769. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/vendored_packages/pluggy.py", line 745, in __call__
  770. return self._hookexec(self, self._nonwrappers + self._wrappers, kwargs)
  771. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/vendored_packages/pluggy.py", line 339, in _hookexec
  772. return self._inner_hookexec(hook, methods, kwargs)
  773. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/vendored_packages/pluggy.py", line 334, in <lambda>
  774. _MultiCall(methods, kwargs, hook.spec_opts).execute()
  775. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/vendored_packages/pluggy.py", line 613, in execute
  776. return _wrapped_call(hook_impl.function(*args), self.execute)
  777. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/vendored_packages/pluggy.py", line 248, in _wrapped_call
  778. call_outcome = _CallOutcome(func)
  779. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/vendored_packages/pluggy.py", line 265, in __init__
  780. self.result = func()
  781. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/vendored_packages/pluggy.py", line 614, in execute
  782. res = hook_impl.function(*args)
  783. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/runner.py", line 110, in pytest_runtest_teardown
  784. item.session._setupstate.teardown_exact(item, nextitem)
  785. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/runner.py", line 428, in teardown_exact
  786. self._teardown_towards(needed_collectors)
  787. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/runner.py", line 434, in _teardown_towards
  788. self._pop_and_teardown()
  789. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/runner.py", line 394, in _pop_and_teardown
  790. self._teardown_with_finalization(colitem)
  791. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/runner.py", line 412, in _teardown_with_finalization
  792. self._callfinalizers(colitem)
  793. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/runner.py", line 402, in _callfinalizers
  794. fin()
  795. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/fixtures.py", line 741, in finish
  796. func()
  797. File "/Users/carol/code/jhub/jupyterhub/jupyterhub/tests/conftest.py", line 60, in fin
  798. mocked_app.stop()
  799. File "/Users/carol/code/jhub/jupyterhub/jupyterhub/tests/mocking.py", line 194, in stop
  800. IOLoop().run_sync(self.cleanup)
  801. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/tornado/ioloop.py", line 453, in run_sync
  802. self.start()
  803. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/zmq/eventloop/ioloop.py", line 177, in start
  804. super(ZMQIOLoop, self).start()
  805. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/tornado/ioloop.py", line 832, in start
  806. self._run_callback(self._callbacks.popleft())
  807. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/tornado/ioloop.py", line 605, in _run_callback
  808. ret = callback()
  809. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/tornado/stack_context.py", line 277, in null_wrapper
  810. return fn(*args, **kwargs)
  811. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/tornado/ioloop.py", line 436, in run
  812. result = func()
  813. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/tornado/gen.py", line 307, in wrapper
  814. yielded = next(result)
  815. File "/Users/carol/code/jhub/jupyterhub/jupyterhub/app.py", line 1319, in cleanup
  816. futures.append(user.stop())
  817. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/tornado/gen.py", line 319, in wrapper
  818. _futures_to_runners[future] = Runner(result, future, yielded)
  819. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/tornado/gen.py", line 1003, in __init__
  820. self.run()
  821. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/tornado/gen.py", line 1069, in run
  822. yielded = self.gen.send(value)
  823. File "/Users/carol/code/jhub/jupyterhub/jupyterhub/user.py", line 404, in stop
  824. self.log.exception("Error in Authenticator.post_spawn_stop for %s", self)
  825. Unable to print the message and arguments - possible formatting error.
  826. Use the traceback above to help find the error.
  827. --- Logging error ---
  828. Traceback (most recent call last):
  829. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/engine/base.py", line 1182, in _execute_context
  830. context)
  831. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/engine/default.py", line 470, in do_execute
  832. cursor.execute(statement, parameters)
  833. sqlite3.OperationalError: database is locked
  834.  
  835. The above exception was the direct cause of the following exception:
  836.  
  837. Traceback (most recent call last):
  838. File "/Users/carol/code/jhub/jupyterhub/jupyterhub/user.py", line 382, in stop
  839. self.state = spawner.get_state()
  840. File "/Users/carol/code/jhub/jupyterhub/jupyterhub/user.py", line 152, in __setattr__
  841. if not attr.startswith('_') and self.orm_user and hasattr(self.orm_user, attr):
  842. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/attributes.py", line 237, in __get__
  843. return self.impl.get(instance_state(instance), dict_)
  844. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/attributes.py", line 579, in get
  845. value = state._load_expired(state, passive)
  846. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/state.py", line 592, in _load_expired
  847. self.manager.deferred_scalar_loader(self, toload)
  848. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/loading.py", line 698, in load_scalar_attributes
  849. only_load_props=attribute_names)
  850. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/loading.py", line 223, in load_on_ident
  851. return q.one()
  852. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/query.py", line 2814, in one
  853. ret = self.one_or_none()
  854. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/query.py", line 2784, in one_or_none
  855. ret = list(self)
  856. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/query.py", line 2855, in __iter__
  857. return self._execute_and_instances(context)
  858. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/query.py", line 2878, in _execute_and_instances
  859. result = conn.execute(querycontext.statement, self._params)
  860. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/engine/base.py", line 945, in execute
  861. return meth(self, multiparams, params)
  862. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/sql/elements.py", line 263, in _execute_on_connection
  863. return connection._execute_clauseelement(self, multiparams, params)
  864. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/engine/base.py", line 1053, in _execute_clauseelement
  865. compiled_sql, distilled_params
  866. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/engine/base.py", line 1189, in _execute_context
  867. context)
  868. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/engine/base.py", line 1402, in _handle_dbapi_exception
  869. exc_info
  870. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/util/compat.py", line 203, in raise_from_cause
  871. reraise(type(exception), exception, tb=exc_tb, cause=cause)
  872. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/util/compat.py", line 186, in reraise
  873. raise value.with_traceback(tb)
  874. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/engine/base.py", line 1182, in _execute_context
  875. context)
  876. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/engine/default.py", line 470, in do_execute
  877. cursor.execute(statement, parameters)
  878. sqlalchemy.exc.OperationalError: (sqlite3.OperationalError) database is locked [SQL: 'SELECT users.id AS users_id, users.name AS users_name, users.admin AS users_admin, users.last_activity AS users_last_activity, users.cookie_id AS users_cookie_id, users.state AS users_state, users.auth_state AS users_auth_state \nFROM users \nWHERE users.id = ?'] [parameters: (3,)]
  879.  
  880. During handling of the above exception, another exception occurred:
  881.  
  882. Traceback (most recent call last):
  883. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/engine/base.py", line 1182, in _execute_context
  884. context)
  885. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/engine/default.py", line 470, in do_execute
  886. cursor.execute(statement, parameters)
  887. sqlite3.OperationalError: database is locked
  888.  
  889. The above exception was the direct cause of the following exception:
  890.  
  891. Traceback (most recent call last):
  892. File "/Users/carol/code/jhub/jupyterhub/jupyterhub/user.py", line 401, in stop
  893. auth.post_spawn_stop(self, spawner)
  894. File "/Users/carol/code/jhub/jupyterhub/jupyterhub/auth.py", line 552, in post_spawn_stop
  895. pamela.close_session(user.name, service=self.service)
  896. File "/Users/carol/code/jhub/jupyterhub/jupyterhub/user.py", line 146, in __getattr__
  897. if hasattr(self.orm_user, attr):
  898. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/attributes.py", line 237, in __get__
  899. return self.impl.get(instance_state(instance), dict_)
  900. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/attributes.py", line 579, in get
  901. value = state._load_expired(state, passive)
  902. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/state.py", line 592, in _load_expired
  903. self.manager.deferred_scalar_loader(self, toload)
  904. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/loading.py", line 698, in load_scalar_attributes
  905. only_load_props=attribute_names)
  906. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/loading.py", line 223, in load_on_ident
  907. return q.one()
  908. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/query.py", line 2814, in one
  909. ret = self.one_or_none()
  910. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/query.py", line 2784, in one_or_none
  911. ret = list(self)
  912. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/query.py", line 2855, in __iter__
  913. return self._execute_and_instances(context)
  914. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/query.py", line 2878, in _execute_and_instances
  915. result = conn.execute(querycontext.statement, self._params)
  916. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/engine/base.py", line 945, in execute
  917. return meth(self, multiparams, params)
  918. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/sql/elements.py", line 263, in _execute_on_connection
  919. return connection._execute_clauseelement(self, multiparams, params)
  920. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/engine/base.py", line 1053, in _execute_clauseelement
  921. compiled_sql, distilled_params
  922. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/engine/base.py", line 1189, in _execute_context
  923. context)
  924. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/engine/base.py", line 1402, in _handle_dbapi_exception
  925. exc_info
  926. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/util/compat.py", line 203, in raise_from_cause
  927. reraise(type(exception), exception, tb=exc_tb, cause=cause)
  928. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/util/compat.py", line 186, in reraise
  929. raise value.with_traceback(tb)
  930. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/engine/base.py", line 1182, in _execute_context
  931. context)
  932. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/engine/default.py", line 470, in do_execute
  933. cursor.execute(statement, parameters)
  934. sqlalchemy.exc.OperationalError: (sqlite3.OperationalError) database is locked [SQL: 'SELECT users.id AS users_id, users.name AS users_name, users.admin AS users_admin, users.last_activity AS users_last_activity, users.cookie_id AS users_cookie_id, users.state AS users_state, users.auth_state AS users_auth_state \nFROM users \nWHERE users.id = ?'] [parameters: (3,)]
  935.  
  936. During handling of the above exception, another exception occurred:
  937.  
  938. Traceback (most recent call last):
  939. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/engine/base.py", line 1182, in _execute_context
  940. context)
  941. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/engine/default.py", line 470, in do_execute
  942. cursor.execute(statement, parameters)
  943. sqlite3.OperationalError: database is locked
  944.  
  945. The above exception was the direct cause of the following exception:
  946.  
  947. Traceback (most recent call last):
  948. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/logging/__init__.py", line 992, in emit
  949. msg = self.format(record)
  950. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/logging/__init__.py", line 838, in format
  951. return fmt.format(record)
  952. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/logging/__init__.py", line 575, in format
  953. record.message = record.getMessage()
  954. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/logging/__init__.py", line 338, in getMessage
  955. msg = msg % self.args
  956. File "/Users/carol/code/jhub/jupyterhub/jupyterhub/user.py", line 158, in __repr__
  957. return repr(self.orm_user)
  958. File "/Users/carol/code/jhub/jupyterhub/jupyterhub/orm.py", line 152, in __repr__
  959. if self.servers:
  960. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/ext/associationproxy.py", line 515, in __bool__
  961. return bool(self.col)
  962. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/ext/associationproxy.py", line 509, in <lambda>
  963. col = property(lambda self: self.lazy_collection())
  964. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/ext/associationproxy.py", line 467, in __call__
  965. return getattr(obj, self.target)
  966. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/attributes.py", line 237, in __get__
  967. return self.impl.get(instance_state(instance), dict_)
  968. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/attributes.py", line 584, in get
  969. value = self.callable_(state, passive)
  970. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/strategies.py", line 557, in _load_for_state
  971. return self._emit_lazyload(session, state, ident_key, passive)
  972. File "<string>", line 1, in <lambda>
  973. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/strategies.py", line 621, in _emit_lazyload
  974. state, passive=passive)
  975. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/strategies.py", line 490, in _generate_lazy_clause
  976. state, dict_, ident, passive)
  977. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/mapper.py", line 2564, in _get_state_attr_by_column
  978. return state.manager[prop.key].impl.get(state, dict_, passive=passive)
  979. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/attributes.py", line 579, in get
  980. value = state._load_expired(state, passive)
  981. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/state.py", line 592, in _load_expired
  982. self.manager.deferred_scalar_loader(self, toload)
  983. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/loading.py", line 698, in load_scalar_attributes
  984. only_load_props=attribute_names)
  985. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/loading.py", line 223, in load_on_ident
  986. return q.one()
  987. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/query.py", line 2814, in one
  988. ret = self.one_or_none()
  989. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/query.py", line 2784, in one_or_none
  990. ret = list(self)
  991. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/query.py", line 2855, in __iter__
  992. return self._execute_and_instances(context)
  993. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/query.py", line 2878, in _execute_and_instances
  994. result = conn.execute(querycontext.statement, self._params)
  995. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/engine/base.py", line 945, in execute
  996. return meth(self, multiparams, params)
  997. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/sql/elements.py", line 263, in _execute_on_connection
  998. return connection._execute_clauseelement(self, multiparams, params)
  999. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/engine/base.py", line 1053, in _execute_clauseelement
  1000. compiled_sql, distilled_params
  1001. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/engine/base.py", line 1189, in _execute_context
  1002. context)
  1003. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/engine/base.py", line 1402, in _handle_dbapi_exception
  1004. exc_info
  1005. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/util/compat.py", line 203, in raise_from_cause
  1006. reraise(type(exception), exception, tb=exc_tb, cause=cause)
  1007. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/util/compat.py", line 186, in reraise
  1008. raise value.with_traceback(tb)
  1009. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/engine/base.py", line 1182, in _execute_context
  1010. context)
  1011. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/engine/default.py", line 470, in do_execute
  1012. cursor.execute(statement, parameters)
  1013. sqlalchemy.exc.OperationalError: (sqlite3.OperationalError) database is locked [SQL: 'SELECT users.id AS users_id, users.name AS users_name, users.admin AS users_admin, users.last_activity AS users_last_activity, users.cookie_id AS users_cookie_id, users.state AS users_state, users.auth_state AS users_auth_state \nFROM users \nWHERE users.id = ?'] [parameters: (3,)]
  1014. Call stack:
  1015. File "/Users/carol/.pyenv/versions/3.6.1/bin/pytest", line 11, in <module>
  1016. sys.exit(main())
  1017. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/config.py", line 58, in main
  1018. return config.hook.pytest_cmdline_main(config=config)
  1019. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/vendored_packages/pluggy.py", line 745, in __call__
  1020. return self._hookexec(self, self._nonwrappers + self._wrappers, kwargs)
  1021. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/vendored_packages/pluggy.py", line 339, in _hookexec
  1022. return self._inner_hookexec(hook, methods, kwargs)
  1023. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/vendored_packages/pluggy.py", line 334, in <lambda>
  1024. _MultiCall(methods, kwargs, hook.spec_opts).execute()
  1025. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/vendored_packages/pluggy.py", line 614, in execute
  1026. res = hook_impl.function(*args)
  1027. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/main.py", line 134, in pytest_cmdline_main
  1028. return wrap_session(config, _main)
  1029. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/main.py", line 105, in wrap_session
  1030. session.exitstatus = doit(config, session) or 0
  1031. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/main.py", line 141, in _main
  1032. config.hook.pytest_runtestloop(session=session)
  1033. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/vendored_packages/pluggy.py", line 745, in __call__
  1034. return self._hookexec(self, self._nonwrappers + self._wrappers, kwargs)
  1035. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/vendored_packages/pluggy.py", line 339, in _hookexec
  1036. return self._inner_hookexec(hook, methods, kwargs)
  1037. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/vendored_packages/pluggy.py", line 334, in <lambda>
  1038. _MultiCall(methods, kwargs, hook.spec_opts).execute()
  1039. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/vendored_packages/pluggy.py", line 614, in execute
  1040. res = hook_impl.function(*args)
  1041. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/main.py", line 164, in pytest_runtestloop
  1042. item.config.hook.pytest_runtest_protocol(item=item, nextitem=nextitem)
  1043. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/vendored_packages/pluggy.py", line 745, in __call__
  1044. return self._hookexec(self, self._nonwrappers + self._wrappers, kwargs)
  1045. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/vendored_packages/pluggy.py", line 339, in _hookexec
  1046. return self._inner_hookexec(hook, methods, kwargs)
  1047. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/vendored_packages/pluggy.py", line 334, in <lambda>
  1048. _MultiCall(methods, kwargs, hook.spec_opts).execute()
  1049. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/vendored_packages/pluggy.py", line 613, in execute
  1050. return _wrapped_call(hook_impl.function(*args), self.execute)
  1051. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/vendored_packages/pluggy.py", line 248, in _wrapped_call
  1052. call_outcome = _CallOutcome(func)
  1053. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/vendored_packages/pluggy.py", line 265, in __init__
  1054. self.result = func()
  1055. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/vendored_packages/pluggy.py", line 613, in execute
  1056. return _wrapped_call(hook_impl.function(*args), self.execute)
  1057. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/vendored_packages/pluggy.py", line 248, in _wrapped_call
  1058. call_outcome = _CallOutcome(func)
  1059. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/vendored_packages/pluggy.py", line 265, in __init__
  1060. self.result = func()
  1061. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/vendored_packages/pluggy.py", line 614, in execute
  1062. res = hook_impl.function(*args)
  1063. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/runner.py", line 60, in pytest_runtest_protocol
  1064. runtestprotocol(item, nextitem=nextitem)
  1065. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/runner.py", line 75, in runtestprotocol
  1066. nextitem=nextitem))
  1067. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/runner.py", line 127, in call_and_report
  1068. call = call_runtest_hook(item, when, **kwds)
  1069. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/runner.py", line 145, in call_runtest_hook
  1070. return CallInfo(lambda: ihook(item=item, **kwds), when=when)
  1071. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/runner.py", line 157, in __init__
  1072. self.result = func()
  1073. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/runner.py", line 145, in <lambda>
  1074. return CallInfo(lambda: ihook(item=item, **kwds), when=when)
  1075. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/vendored_packages/pluggy.py", line 745, in __call__
  1076. return self._hookexec(self, self._nonwrappers + self._wrappers, kwargs)
  1077. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/vendored_packages/pluggy.py", line 339, in _hookexec
  1078. return self._inner_hookexec(hook, methods, kwargs)
  1079. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/vendored_packages/pluggy.py", line 334, in <lambda>
  1080. _MultiCall(methods, kwargs, hook.spec_opts).execute()
  1081. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/vendored_packages/pluggy.py", line 613, in execute
  1082. return _wrapped_call(hook_impl.function(*args), self.execute)
  1083. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/vendored_packages/pluggy.py", line 248, in _wrapped_call
  1084. call_outcome = _CallOutcome(func)
  1085. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/vendored_packages/pluggy.py", line 265, in __init__
  1086. self.result = func()
  1087. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/vendored_packages/pluggy.py", line 614, in execute
  1088. res = hook_impl.function(*args)
  1089. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/runner.py", line 110, in pytest_runtest_teardown
  1090. item.session._setupstate.teardown_exact(item, nextitem)
  1091. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/runner.py", line 428, in teardown_exact
  1092. self._teardown_towards(needed_collectors)
  1093. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/runner.py", line 434, in _teardown_towards
  1094. self._pop_and_teardown()
  1095. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/runner.py", line 394, in _pop_and_teardown
  1096. self._teardown_with_finalization(colitem)
  1097. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/runner.py", line 412, in _teardown_with_finalization
  1098. self._callfinalizers(colitem)
  1099. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/runner.py", line 402, in _callfinalizers
  1100. fin()
  1101. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/fixtures.py", line 741, in finish
  1102. func()
  1103. File "/Users/carol/code/jhub/jupyterhub/jupyterhub/tests/conftest.py", line 60, in fin
  1104. mocked_app.stop()
  1105. File "/Users/carol/code/jhub/jupyterhub/jupyterhub/tests/mocking.py", line 194, in stop
  1106. IOLoop().run_sync(self.cleanup)
  1107. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/tornado/ioloop.py", line 453, in run_sync
  1108. self.start()
  1109. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/zmq/eventloop/ioloop.py", line 177, in start
  1110. super(ZMQIOLoop, self).start()
  1111. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/tornado/ioloop.py", line 832, in start
  1112. self._run_callback(self._callbacks.popleft())
  1113. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/tornado/ioloop.py", line 605, in _run_callback
  1114. ret = callback()
  1115. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/tornado/stack_context.py", line 277, in null_wrapper
  1116. return fn(*args, **kwargs)
  1117. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/tornado/ioloop.py", line 436, in run
  1118. result = func()
  1119. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/tornado/gen.py", line 307, in wrapper
  1120. yielded = next(result)
  1121. File "/Users/carol/code/jhub/jupyterhub/jupyterhub/app.py", line 1319, in cleanup
  1122. futures.append(user.stop())
  1123. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/tornado/gen.py", line 319, in wrapper
  1124. _futures_to_runners[future] = Runner(result, future, yielded)
  1125. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/tornado/gen.py", line 1003, in __init__
  1126. self.run()
  1127. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/tornado/gen.py", line 1069, in run
  1128. yielded = self.gen.send(value)
  1129. File "/Users/carol/code/jhub/jupyterhub/jupyterhub/user.py", line 404, in stop
  1130. self.log.exception("Error in Authenticator.post_spawn_stop for %s", self)
  1131. Unable to print the message and arguments - possible formatting error.
  1132. Use the traceback above to help find the error.
  1133. --- Logging error ---
  1134. Traceback (most recent call last):
  1135. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/engine/base.py", line 1182, in _execute_context
  1136. context)
  1137. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/engine/default.py", line 470, in do_execute
  1138. cursor.execute(statement, parameters)
  1139. sqlite3.OperationalError: database is locked
  1140.  
  1141. The above exception was the direct cause of the following exception:
  1142.  
  1143. Traceback (most recent call last):
  1144. File "/Users/carol/code/jhub/jupyterhub/jupyterhub/user.py", line 382, in stop
  1145. self.state = spawner.get_state()
  1146. File "/Users/carol/code/jhub/jupyterhub/jupyterhub/user.py", line 152, in __setattr__
  1147. if not attr.startswith('_') and self.orm_user and hasattr(self.orm_user, attr):
  1148. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/attributes.py", line 237, in __get__
  1149. return self.impl.get(instance_state(instance), dict_)
  1150. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/attributes.py", line 579, in get
  1151. value = state._load_expired(state, passive)
  1152. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/state.py", line 592, in _load_expired
  1153. self.manager.deferred_scalar_loader(self, toload)
  1154. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/loading.py", line 698, in load_scalar_attributes
  1155. only_load_props=attribute_names)
  1156. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/loading.py", line 223, in load_on_ident
  1157. return q.one()
  1158. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/query.py", line 2814, in one
  1159. ret = self.one_or_none()
  1160. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/query.py", line 2784, in one_or_none
  1161. ret = list(self)
  1162. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/query.py", line 2855, in __iter__
  1163. return self._execute_and_instances(context)
  1164. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/query.py", line 2878, in _execute_and_instances
  1165. result = conn.execute(querycontext.statement, self._params)
  1166. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/engine/base.py", line 945, in execute
  1167. return meth(self, multiparams, params)
  1168. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/sql/elements.py", line 263, in _execute_on_connection
  1169. return connection._execute_clauseelement(self, multiparams, params)
  1170. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/engine/base.py", line 1053, in _execute_clauseelement
  1171. compiled_sql, distilled_params
  1172. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/engine/base.py", line 1189, in _execute_context
  1173. context)
  1174. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/engine/base.py", line 1402, in _handle_dbapi_exception
  1175. exc_info
  1176. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/util/compat.py", line 203, in raise_from_cause
  1177. reraise(type(exception), exception, tb=exc_tb, cause=cause)
  1178. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/util/compat.py", line 186, in reraise
  1179. raise value.with_traceback(tb)
  1180. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/engine/base.py", line 1182, in _execute_context
  1181. context)
  1182. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/engine/default.py", line 470, in do_execute
  1183. cursor.execute(statement, parameters)
  1184. sqlalchemy.exc.OperationalError: (sqlite3.OperationalError) database is locked [SQL: 'SELECT users.id AS users_id, users.name AS users_name, users.admin AS users_admin, users.last_activity AS users_last_activity, users.cookie_id AS users_cookie_id, users.state AS users_state, users.auth_state AS users_auth_state \nFROM users \nWHERE users.id = ?'] [parameters: (4,)]
  1185.  
  1186. During handling of the above exception, another exception occurred:
  1187.  
  1188. Traceback (most recent call last):
  1189. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/engine/base.py", line 1182, in _execute_context
  1190. context)
  1191. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/engine/default.py", line 470, in do_execute
  1192. cursor.execute(statement, parameters)
  1193. sqlite3.OperationalError: database is locked
  1194.  
  1195. The above exception was the direct cause of the following exception:
  1196.  
  1197. Traceback (most recent call last):
  1198. File "/Users/carol/code/jhub/jupyterhub/jupyterhub/user.py", line 401, in stop
  1199. auth.post_spawn_stop(self, spawner)
  1200. File "/Users/carol/code/jhub/jupyterhub/jupyterhub/auth.py", line 552, in post_spawn_stop
  1201. pamela.close_session(user.name, service=self.service)
  1202. File "/Users/carol/code/jhub/jupyterhub/jupyterhub/user.py", line 146, in __getattr__
  1203. if hasattr(self.orm_user, attr):
  1204. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/attributes.py", line 237, in __get__
  1205. return self.impl.get(instance_state(instance), dict_)
  1206. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/attributes.py", line 579, in get
  1207. value = state._load_expired(state, passive)
  1208. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/state.py", line 592, in _load_expired
  1209. self.manager.deferred_scalar_loader(self, toload)
  1210. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/loading.py", line 698, in load_scalar_attributes
  1211. only_load_props=attribute_names)
  1212. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/loading.py", line 223, in load_on_ident
  1213. return q.one()
  1214. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/query.py", line 2814, in one
  1215. ret = self.one_or_none()
  1216. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/query.py", line 2784, in one_or_none
  1217. ret = list(self)
  1218. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/query.py", line 2855, in __iter__
  1219. return self._execute_and_instances(context)
  1220. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/query.py", line 2878, in _execute_and_instances
  1221. result = conn.execute(querycontext.statement, self._params)
  1222. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/engine/base.py", line 945, in execute
  1223. return meth(self, multiparams, params)
  1224. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/sql/elements.py", line 263, in _execute_on_connection
  1225. return connection._execute_clauseelement(self, multiparams, params)
  1226. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/engine/base.py", line 1053, in _execute_clauseelement
  1227. compiled_sql, distilled_params
  1228. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/engine/base.py", line 1189, in _execute_context
  1229. context)
  1230. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/engine/base.py", line 1402, in _handle_dbapi_exception
  1231. exc_info
  1232. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/util/compat.py", line 203, in raise_from_cause
  1233. reraise(type(exception), exception, tb=exc_tb, cause=cause)
  1234. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/util/compat.py", line 186, in reraise
  1235. raise value.with_traceback(tb)
  1236. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/engine/base.py", line 1182, in _execute_context
  1237. context)
  1238. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/engine/default.py", line 470, in do_execute
  1239. cursor.execute(statement, parameters)
  1240. sqlalchemy.exc.OperationalError: (sqlite3.OperationalError) database is locked [SQL: 'SELECT users.id AS users_id, users.name AS users_name, users.admin AS users_admin, users.last_activity AS users_last_activity, users.cookie_id AS users_cookie_id, users.state AS users_state, users.auth_state AS users_auth_state \nFROM users \nWHERE users.id = ?'] [parameters: (4,)]
  1241.  
  1242. During handling of the above exception, another exception occurred:
  1243.  
  1244. Traceback (most recent call last):
  1245. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/engine/base.py", line 1182, in _execute_context
  1246. context)
  1247. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/engine/default.py", line 470, in do_execute
  1248. cursor.execute(statement, parameters)
  1249. sqlite3.OperationalError: database is locked
  1250.  
  1251. The above exception was the direct cause of the following exception:
  1252.  
  1253. Traceback (most recent call last):
  1254. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/logging/__init__.py", line 992, in emit
  1255. msg = self.format(record)
  1256. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/logging/__init__.py", line 838, in format
  1257. return fmt.format(record)
  1258. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/logging/__init__.py", line 575, in format
  1259. record.message = record.getMessage()
  1260. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/logging/__init__.py", line 338, in getMessage
  1261. msg = msg % self.args
  1262. File "/Users/carol/code/jhub/jupyterhub/jupyterhub/user.py", line 158, in __repr__
  1263. return repr(self.orm_user)
  1264. File "/Users/carol/code/jhub/jupyterhub/jupyterhub/orm.py", line 152, in __repr__
  1265. if self.servers:
  1266. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/ext/associationproxy.py", line 515, in __bool__
  1267. return bool(self.col)
  1268. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/ext/associationproxy.py", line 509, in <lambda>
  1269. col = property(lambda self: self.lazy_collection())
  1270. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/ext/associationproxy.py", line 467, in __call__
  1271. return getattr(obj, self.target)
  1272. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/attributes.py", line 237, in __get__
  1273. return self.impl.get(instance_state(instance), dict_)
  1274. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/attributes.py", line 584, in get
  1275. value = self.callable_(state, passive)
  1276. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/strategies.py", line 557, in _load_for_state
  1277. return self._emit_lazyload(session, state, ident_key, passive)
  1278. File "<string>", line 1, in <lambda>
  1279. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/strategies.py", line 621, in _emit_lazyload
  1280. state, passive=passive)
  1281. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/strategies.py", line 490, in _generate_lazy_clause
  1282. state, dict_, ident, passive)
  1283. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/mapper.py", line 2564, in _get_state_attr_by_column
  1284. return state.manager[prop.key].impl.get(state, dict_, passive=passive)
  1285. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/attributes.py", line 579, in get
  1286. value = state._load_expired(state, passive)
  1287. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/state.py", line 592, in _load_expired
  1288. self.manager.deferred_scalar_loader(self, toload)
  1289. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/loading.py", line 698, in load_scalar_attributes
  1290. only_load_props=attribute_names)
  1291. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/loading.py", line 223, in load_on_ident
  1292. return q.one()
  1293. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/query.py", line 2814, in one
  1294. ret = self.one_or_none()
  1295. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/query.py", line 2784, in one_or_none
  1296. ret = list(self)
  1297. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/query.py", line 2855, in __iter__
  1298. return self._execute_and_instances(context)
  1299. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/query.py", line 2878, in _execute_and_instances
  1300. result = conn.execute(querycontext.statement, self._params)
  1301. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/engine/base.py", line 945, in execute
  1302. return meth(self, multiparams, params)
  1303. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/sql/elements.py", line 263, in _execute_on_connection
  1304. return connection._execute_clauseelement(self, multiparams, params)
  1305. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/engine/base.py", line 1053, in _execute_clauseelement
  1306. compiled_sql, distilled_params
  1307. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/engine/base.py", line 1189, in _execute_context
  1308. context)
  1309. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/engine/base.py", line 1402, in _handle_dbapi_exception
  1310. exc_info
  1311. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/util/compat.py", line 203, in raise_from_cause
  1312. reraise(type(exception), exception, tb=exc_tb, cause=cause)
  1313. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/util/compat.py", line 186, in reraise
  1314. raise value.with_traceback(tb)
  1315. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/engine/base.py", line 1182, in _execute_context
  1316. context)
  1317. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/engine/default.py", line 470, in do_execute
  1318. cursor.execute(statement, parameters)
  1319. sqlalchemy.exc.OperationalError: (sqlite3.OperationalError) database is locked [SQL: 'SELECT users.id AS users_id, users.name AS users_name, users.admin AS users_admin, users.last_activity AS users_last_activity, users.cookie_id AS users_cookie_id, users.state AS users_state, users.auth_state AS users_auth_state \nFROM users \nWHERE users.id = ?'] [parameters: (4,)]
  1320. Call stack:
  1321. File "/Users/carol/.pyenv/versions/3.6.1/bin/pytest", line 11, in <module>
  1322. sys.exit(main())
  1323. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/config.py", line 58, in main
  1324. return config.hook.pytest_cmdline_main(config=config)
  1325. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/vendored_packages/pluggy.py", line 745, in __call__
  1326. return self._hookexec(self, self._nonwrappers + self._wrappers, kwargs)
  1327. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/vendored_packages/pluggy.py", line 339, in _hookexec
  1328. return self._inner_hookexec(hook, methods, kwargs)
  1329. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/vendored_packages/pluggy.py", line 334, in <lambda>
  1330. _MultiCall(methods, kwargs, hook.spec_opts).execute()
  1331. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/vendored_packages/pluggy.py", line 614, in execute
  1332. res = hook_impl.function(*args)
  1333. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/main.py", line 134, in pytest_cmdline_main
  1334. return wrap_session(config, _main)
  1335. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/main.py", line 105, in wrap_session
  1336. session.exitstatus = doit(config, session) or 0
  1337. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/main.py", line 141, in _main
  1338. config.hook.pytest_runtestloop(session=session)
  1339. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/vendored_packages/pluggy.py", line 745, in __call__
  1340. return self._hookexec(self, self._nonwrappers + self._wrappers, kwargs)
  1341. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/vendored_packages/pluggy.py", line 339, in _hookexec
  1342. return self._inner_hookexec(hook, methods, kwargs)
  1343. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/vendored_packages/pluggy.py", line 334, in <lambda>
  1344. _MultiCall(methods, kwargs, hook.spec_opts).execute()
  1345. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/vendored_packages/pluggy.py", line 614, in execute
  1346. res = hook_impl.function(*args)
  1347. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/main.py", line 164, in pytest_runtestloop
  1348. item.config.hook.pytest_runtest_protocol(item=item, nextitem=nextitem)
  1349. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/vendored_packages/pluggy.py", line 745, in __call__
  1350. return self._hookexec(self, self._nonwrappers + self._wrappers, kwargs)
  1351. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/vendored_packages/pluggy.py", line 339, in _hookexec
  1352. return self._inner_hookexec(hook, methods, kwargs)
  1353. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/vendored_packages/pluggy.py", line 334, in <lambda>
  1354. _MultiCall(methods, kwargs, hook.spec_opts).execute()
  1355. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/vendored_packages/pluggy.py", line 613, in execute
  1356. return _wrapped_call(hook_impl.function(*args), self.execute)
  1357. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/vendored_packages/pluggy.py", line 248, in _wrapped_call
  1358. call_outcome = _CallOutcome(func)
  1359. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/vendored_packages/pluggy.py", line 265, in __init__
  1360. self.result = func()
  1361. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/vendored_packages/pluggy.py", line 613, in execute
  1362. return _wrapped_call(hook_impl.function(*args), self.execute)
  1363. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/vendored_packages/pluggy.py", line 248, in _wrapped_call
  1364. call_outcome = _CallOutcome(func)
  1365. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/vendored_packages/pluggy.py", line 265, in __init__
  1366. self.result = func()
  1367. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/vendored_packages/pluggy.py", line 614, in execute
  1368. res = hook_impl.function(*args)
  1369. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/runner.py", line 60, in pytest_runtest_protocol
  1370. runtestprotocol(item, nextitem=nextitem)
  1371. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/runner.py", line 75, in runtestprotocol
  1372. nextitem=nextitem))
  1373. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/runner.py", line 127, in call_and_report
  1374. call = call_runtest_hook(item, when, **kwds)
  1375. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/runner.py", line 145, in call_runtest_hook
  1376. return CallInfo(lambda: ihook(item=item, **kwds), when=when)
  1377. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/runner.py", line 157, in __init__
  1378. self.result = func()
  1379. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/runner.py", line 145, in <lambda>
  1380. return CallInfo(lambda: ihook(item=item, **kwds), when=when)
  1381. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/vendored_packages/pluggy.py", line 745, in __call__
  1382. return self._hookexec(self, self._nonwrappers + self._wrappers, kwargs)
  1383. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/vendored_packages/pluggy.py", line 339, in _hookexec
  1384. return self._inner_hookexec(hook, methods, kwargs)
  1385. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/vendored_packages/pluggy.py", line 334, in <lambda>
  1386. _MultiCall(methods, kwargs, hook.spec_opts).execute()
  1387. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/vendored_packages/pluggy.py", line 613, in execute
  1388. return _wrapped_call(hook_impl.function(*args), self.execute)
  1389. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/vendored_packages/pluggy.py", line 248, in _wrapped_call
  1390. call_outcome = _CallOutcome(func)
  1391. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/vendored_packages/pluggy.py", line 265, in __init__
  1392. self.result = func()
  1393. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/vendored_packages/pluggy.py", line 614, in execute
  1394. res = hook_impl.function(*args)
  1395. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/runner.py", line 110, in pytest_runtest_teardown
  1396. item.session._setupstate.teardown_exact(item, nextitem)
  1397. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/runner.py", line 428, in teardown_exact
  1398. self._teardown_towards(needed_collectors)
  1399. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/runner.py", line 434, in _teardown_towards
  1400. self._pop_and_teardown()
  1401. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/runner.py", line 394, in _pop_and_teardown
  1402. self._teardown_with_finalization(colitem)
  1403. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/runner.py", line 412, in _teardown_with_finalization
  1404. self._callfinalizers(colitem)
  1405. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/runner.py", line 402, in _callfinalizers
  1406. fin()
  1407. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/fixtures.py", line 741, in finish
  1408. func()
  1409. File "/Users/carol/code/jhub/jupyterhub/jupyterhub/tests/conftest.py", line 60, in fin
  1410. mocked_app.stop()
  1411. File "/Users/carol/code/jhub/jupyterhub/jupyterhub/tests/mocking.py", line 194, in stop
  1412. IOLoop().run_sync(self.cleanup)
  1413. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/tornado/ioloop.py", line 453, in run_sync
  1414. self.start()
  1415. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/zmq/eventloop/ioloop.py", line 177, in start
  1416. super(ZMQIOLoop, self).start()
  1417. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/tornado/ioloop.py", line 832, in start
  1418. self._run_callback(self._callbacks.popleft())
  1419. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/tornado/ioloop.py", line 605, in _run_callback
  1420. ret = callback()
  1421. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/tornado/stack_context.py", line 277, in null_wrapper
  1422. return fn(*args, **kwargs)
  1423. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/tornado/ioloop.py", line 436, in run
  1424. result = func()
  1425. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/tornado/gen.py", line 307, in wrapper
  1426. yielded = next(result)
  1427. File "/Users/carol/code/jhub/jupyterhub/jupyterhub/app.py", line 1319, in cleanup
  1428. futures.append(user.stop())
  1429. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/tornado/gen.py", line 319, in wrapper
  1430. _futures_to_runners[future] = Runner(result, future, yielded)
  1431. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/tornado/gen.py", line 1003, in __init__
  1432. self.run()
  1433. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/tornado/gen.py", line 1069, in run
  1434. yielded = self.gen.send(value)
  1435. File "/Users/carol/code/jhub/jupyterhub/jupyterhub/user.py", line 404, in stop
  1436. self.log.exception("Error in Authenticator.post_spawn_stop for %s", self)
  1437. Unable to print the message and arguments - possible formatting error.
  1438. Use the traceback above to help find the error.
  1439. --- Logging error ---
  1440. Traceback (most recent call last):
  1441. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/engine/base.py", line 1182, in _execute_context
  1442. context)
  1443. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/engine/default.py", line 470, in do_execute
  1444. cursor.execute(statement, parameters)
  1445. sqlite3.OperationalError: database is locked
  1446.  
  1447. The above exception was the direct cause of the following exception:
  1448.  
  1449. Traceback (most recent call last):
  1450. File "/Users/carol/code/jhub/jupyterhub/jupyterhub/user.py", line 382, in stop
  1451. self.state = spawner.get_state()
  1452. File "/Users/carol/code/jhub/jupyterhub/jupyterhub/user.py", line 152, in __setattr__
  1453. if not attr.startswith('_') and self.orm_user and hasattr(self.orm_user, attr):
  1454. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/attributes.py", line 237, in __get__
  1455. return self.impl.get(instance_state(instance), dict_)
  1456. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/attributes.py", line 579, in get
  1457. value = state._load_expired(state, passive)
  1458. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/state.py", line 592, in _load_expired
  1459. self.manager.deferred_scalar_loader(self, toload)
  1460. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/loading.py", line 698, in load_scalar_attributes
  1461. only_load_props=attribute_names)
  1462. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/loading.py", line 223, in load_on_ident
  1463. return q.one()
  1464. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/query.py", line 2814, in one
  1465. ret = self.one_or_none()
  1466. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/query.py", line 2784, in one_or_none
  1467. ret = list(self)
  1468. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/query.py", line 2855, in __iter__
  1469. return self._execute_and_instances(context)
  1470. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/query.py", line 2878, in _execute_and_instances
  1471. result = conn.execute(querycontext.statement, self._params)
  1472. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/engine/base.py", line 945, in execute
  1473. return meth(self, multiparams, params)
  1474. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/sql/elements.py", line 263, in _execute_on_connection
  1475. return connection._execute_clauseelement(self, multiparams, params)
  1476. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/engine/base.py", line 1053, in _execute_clauseelement
  1477. compiled_sql, distilled_params
  1478. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/engine/base.py", line 1189, in _execute_context
  1479. context)
  1480. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/engine/base.py", line 1402, in _handle_dbapi_exception
  1481. exc_info
  1482. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/util/compat.py", line 203, in raise_from_cause
  1483. reraise(type(exception), exception, tb=exc_tb, cause=cause)
  1484. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/util/compat.py", line 186, in reraise
  1485. raise value.with_traceback(tb)
  1486. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/engine/base.py", line 1182, in _execute_context
  1487. context)
  1488. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/engine/default.py", line 470, in do_execute
  1489. cursor.execute(statement, parameters)
  1490. sqlalchemy.exc.OperationalError: (sqlite3.OperationalError) database is locked [SQL: 'SELECT users.id AS users_id, users.name AS users_name, users.admin AS users_admin, users.last_activity AS users_last_activity, users.cookie_id AS users_cookie_id, users.state AS users_state, users.auth_state AS users_auth_state \nFROM users \nWHERE users.id = ?'] [parameters: (5,)]
  1491.  
  1492. During handling of the above exception, another exception occurred:
  1493.  
  1494. Traceback (most recent call last):
  1495. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/engine/base.py", line 1182, in _execute_context
  1496. context)
  1497. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/engine/default.py", line 470, in do_execute
  1498. cursor.execute(statement, parameters)
  1499. sqlite3.OperationalError: database is locked
  1500.  
  1501. The above exception was the direct cause of the following exception:
  1502.  
  1503. Traceback (most recent call last):
  1504. File "/Users/carol/code/jhub/jupyterhub/jupyterhub/user.py", line 401, in stop
  1505. auth.post_spawn_stop(self, spawner)
  1506. File "/Users/carol/code/jhub/jupyterhub/jupyterhub/auth.py", line 552, in post_spawn_stop
  1507. pamela.close_session(user.name, service=self.service)
  1508. File "/Users/carol/code/jhub/jupyterhub/jupyterhub/user.py", line 146, in __getattr__
  1509. if hasattr(self.orm_user, attr):
  1510. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/attributes.py", line 237, in __get__
  1511. return self.impl.get(instance_state(instance), dict_)
  1512. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/attributes.py", line 579, in get
  1513. value = state._load_expired(state, passive)
  1514. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/state.py", line 592, in _load_expired
  1515. self.manager.deferred_scalar_loader(self, toload)
  1516. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/loading.py", line 698, in load_scalar_attributes
  1517. only_load_props=attribute_names)
  1518. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/loading.py", line 223, in load_on_ident
  1519. return q.one()
  1520. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/query.py", line 2814, in one
  1521. ret = self.one_or_none()
  1522. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/query.py", line 2784, in one_or_none
  1523. ret = list(self)
  1524. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/query.py", line 2855, in __iter__
  1525. return self._execute_and_instances(context)
  1526. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/query.py", line 2878, in _execute_and_instances
  1527. result = conn.execute(querycontext.statement, self._params)
  1528. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/engine/base.py", line 945, in execute
  1529. return meth(self, multiparams, params)
  1530. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/sql/elements.py", line 263, in _execute_on_connection
  1531. return connection._execute_clauseelement(self, multiparams, params)
  1532. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/engine/base.py", line 1053, in _execute_clauseelement
  1533. compiled_sql, distilled_params
  1534. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/engine/base.py", line 1189, in _execute_context
  1535. context)
  1536. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/engine/base.py", line 1402, in _handle_dbapi_exception
  1537. exc_info
  1538. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/util/compat.py", line 203, in raise_from_cause
  1539. reraise(type(exception), exception, tb=exc_tb, cause=cause)
  1540. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/util/compat.py", line 186, in reraise
  1541. raise value.with_traceback(tb)
  1542. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/engine/base.py", line 1182, in _execute_context
  1543. context)
  1544. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/engine/default.py", line 470, in do_execute
  1545. cursor.execute(statement, parameters)
  1546. sqlalchemy.exc.OperationalError: (sqlite3.OperationalError) database is locked [SQL: 'SELECT users.id AS users_id, users.name AS users_name, users.admin AS users_admin, users.last_activity AS users_last_activity, users.cookie_id AS users_cookie_id, users.state AS users_state, users.auth_state AS users_auth_state \nFROM users \nWHERE users.id = ?'] [parameters: (5,)]
  1547.  
  1548. During handling of the above exception, another exception occurred:
  1549.  
  1550. Traceback (most recent call last):
  1551. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/engine/base.py", line 1182, in _execute_context
  1552. context)
  1553. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/engine/default.py", line 470, in do_execute
  1554. cursor.execute(statement, parameters)
  1555. sqlite3.OperationalError: database is locked
  1556.  
  1557. The above exception was the direct cause of the following exception:
  1558.  
  1559. Traceback (most recent call last):
  1560. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/logging/__init__.py", line 992, in emit
  1561. msg = self.format(record)
  1562. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/logging/__init__.py", line 838, in format
  1563. return fmt.format(record)
  1564. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/logging/__init__.py", line 575, in format
  1565. record.message = record.getMessage()
  1566. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/logging/__init__.py", line 338, in getMessage
  1567. msg = msg % self.args
  1568. File "/Users/carol/code/jhub/jupyterhub/jupyterhub/user.py", line 158, in __repr__
  1569. return repr(self.orm_user)
  1570. File "/Users/carol/code/jhub/jupyterhub/jupyterhub/orm.py", line 152, in __repr__
  1571. if self.servers:
  1572. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/ext/associationproxy.py", line 515, in __bool__
  1573. return bool(self.col)
  1574. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/ext/associationproxy.py", line 509, in <lambda>
  1575. col = property(lambda self: self.lazy_collection())
  1576. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/ext/associationproxy.py", line 467, in __call__
  1577. return getattr(obj, self.target)
  1578. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/attributes.py", line 237, in __get__
  1579. return self.impl.get(instance_state(instance), dict_)
  1580. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/attributes.py", line 584, in get
  1581. value = self.callable_(state, passive)
  1582. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/strategies.py", line 557, in _load_for_state
  1583. return self._emit_lazyload(session, state, ident_key, passive)
  1584. File "<string>", line 1, in <lambda>
  1585. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/strategies.py", line 621, in _emit_lazyload
  1586. state, passive=passive)
  1587. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/strategies.py", line 490, in _generate_lazy_clause
  1588. state, dict_, ident, passive)
  1589. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/mapper.py", line 2564, in _get_state_attr_by_column
  1590. return state.manager[prop.key].impl.get(state, dict_, passive=passive)
  1591. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/attributes.py", line 579, in get
  1592. value = state._load_expired(state, passive)
  1593. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/state.py", line 592, in _load_expired
  1594. self.manager.deferred_scalar_loader(self, toload)
  1595. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/loading.py", line 698, in load_scalar_attributes
  1596. only_load_props=attribute_names)
  1597. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/loading.py", line 223, in load_on_ident
  1598. return q.one()
  1599. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/query.py", line 2814, in one
  1600. ret = self.one_or_none()
  1601. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/query.py", line 2784, in one_or_none
  1602. ret = list(self)
  1603. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/query.py", line 2855, in __iter__
  1604. return self._execute_and_instances(context)
  1605. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/query.py", line 2878, in _execute_and_instances
  1606. result = conn.execute(querycontext.statement, self._params)
  1607. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/engine/base.py", line 945, in execute
  1608. return meth(self, multiparams, params)
  1609. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/sql/elements.py", line 263, in _execute_on_connection
  1610. return connection._execute_clauseelement(self, multiparams, params)
  1611. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/engine/base.py", line 1053, in _execute_clauseelement
  1612. compiled_sql, distilled_params
  1613. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/engine/base.py", line 1189, in _execute_context
  1614. context)
  1615. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/engine/base.py", line 1402, in _handle_dbapi_exception
  1616. exc_info
  1617. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/util/compat.py", line 203, in raise_from_cause
  1618. reraise(type(exception), exception, tb=exc_tb, cause=cause)
  1619. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/util/compat.py", line 186, in reraise
  1620. raise value.with_traceback(tb)
  1621. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/engine/base.py", line 1182, in _execute_context
  1622. context)
  1623. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/engine/default.py", line 470, in do_execute
  1624. cursor.execute(statement, parameters)
  1625. sqlalchemy.exc.OperationalError: (sqlite3.OperationalError) database is locked [SQL: 'SELECT users.id AS users_id, users.name AS users_name, users.admin AS users_admin, users.last_activity AS users_last_activity, users.cookie_id AS users_cookie_id, users.state AS users_state, users.auth_state AS users_auth_state \nFROM users \nWHERE users.id = ?'] [parameters: (5,)]
  1626. Call stack:
  1627. File "/Users/carol/.pyenv/versions/3.6.1/bin/pytest", line 11, in <module>
  1628. sys.exit(main())
  1629. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/config.py", line 58, in main
  1630. return config.hook.pytest_cmdline_main(config=config)
  1631. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/vendored_packages/pluggy.py", line 745, in __call__
  1632. return self._hookexec(self, self._nonwrappers + self._wrappers, kwargs)
  1633. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/vendored_packages/pluggy.py", line 339, in _hookexec
  1634. return self._inner_hookexec(hook, methods, kwargs)
  1635. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/vendored_packages/pluggy.py", line 334, in <lambda>
  1636. _MultiCall(methods, kwargs, hook.spec_opts).execute()
  1637. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/vendored_packages/pluggy.py", line 614, in execute
  1638. res = hook_impl.function(*args)
  1639. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/main.py", line 134, in pytest_cmdline_main
  1640. return wrap_session(config, _main)
  1641. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/main.py", line 105, in wrap_session
  1642. session.exitstatus = doit(config, session) or 0
  1643. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/main.py", line 141, in _main
  1644. config.hook.pytest_runtestloop(session=session)
  1645. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/vendored_packages/pluggy.py", line 745, in __call__
  1646. return self._hookexec(self, self._nonwrappers + self._wrappers, kwargs)
  1647. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/vendored_packages/pluggy.py", line 339, in _hookexec
  1648. return self._inner_hookexec(hook, methods, kwargs)
  1649. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/vendored_packages/pluggy.py", line 334, in <lambda>
  1650. _MultiCall(methods, kwargs, hook.spec_opts).execute()
  1651. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/vendored_packages/pluggy.py", line 614, in execute
  1652. res = hook_impl.function(*args)
  1653. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/main.py", line 164, in pytest_runtestloop
  1654. item.config.hook.pytest_runtest_protocol(item=item, nextitem=nextitem)
  1655. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/vendored_packages/pluggy.py", line 745, in __call__
  1656. return self._hookexec(self, self._nonwrappers + self._wrappers, kwargs)
  1657. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/vendored_packages/pluggy.py", line 339, in _hookexec
  1658. return self._inner_hookexec(hook, methods, kwargs)
  1659. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/vendored_packages/pluggy.py", line 334, in <lambda>
  1660. _MultiCall(methods, kwargs, hook.spec_opts).execute()
  1661. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/vendored_packages/pluggy.py", line 613, in execute
  1662. return _wrapped_call(hook_impl.function(*args), self.execute)
  1663. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/vendored_packages/pluggy.py", line 248, in _wrapped_call
  1664. call_outcome = _CallOutcome(func)
  1665. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/vendored_packages/pluggy.py", line 265, in __init__
  1666. self.result = func()
  1667. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/vendored_packages/pluggy.py", line 613, in execute
  1668. return _wrapped_call(hook_impl.function(*args), self.execute)
  1669. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/vendored_packages/pluggy.py", line 248, in _wrapped_call
  1670. call_outcome = _CallOutcome(func)
  1671. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/vendored_packages/pluggy.py", line 265, in __init__
  1672. self.result = func()
  1673. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/vendored_packages/pluggy.py", line 614, in execute
  1674. res = hook_impl.function(*args)
  1675. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/runner.py", line 60, in pytest_runtest_protocol
  1676. runtestprotocol(item, nextitem=nextitem)
  1677. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/runner.py", line 75, in runtestprotocol
  1678. nextitem=nextitem))
  1679. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/runner.py", line 127, in call_and_report
  1680. call = call_runtest_hook(item, when, **kwds)
  1681. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/runner.py", line 145, in call_runtest_hook
  1682. return CallInfo(lambda: ihook(item=item, **kwds), when=when)
  1683. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/runner.py", line 157, in __init__
  1684. self.result = func()
  1685. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/runner.py", line 145, in <lambda>
  1686. return CallInfo(lambda: ihook(item=item, **kwds), when=when)
  1687. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/vendored_packages/pluggy.py", line 745, in __call__
  1688. return self._hookexec(self, self._nonwrappers + self._wrappers, kwargs)
  1689. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/vendored_packages/pluggy.py", line 339, in _hookexec
  1690. return self._inner_hookexec(hook, methods, kwargs)
  1691. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/vendored_packages/pluggy.py", line 334, in <lambda>
  1692. _MultiCall(methods, kwargs, hook.spec_opts).execute()
  1693. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/vendored_packages/pluggy.py", line 613, in execute
  1694. return _wrapped_call(hook_impl.function(*args), self.execute)
  1695. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/vendored_packages/pluggy.py", line 248, in _wrapped_call
  1696. call_outcome = _CallOutcome(func)
  1697. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/vendored_packages/pluggy.py", line 265, in __init__
  1698. self.result = func()
  1699. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/vendored_packages/pluggy.py", line 614, in execute
  1700. res = hook_impl.function(*args)
  1701. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/runner.py", line 110, in pytest_runtest_teardown
  1702. item.session._setupstate.teardown_exact(item, nextitem)
  1703. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/runner.py", line 428, in teardown_exact
  1704. self._teardown_towards(needed_collectors)
  1705. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/runner.py", line 434, in _teardown_towards
  1706. self._pop_and_teardown()
  1707. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/runner.py", line 394, in _pop_and_teardown
  1708. self._teardown_with_finalization(colitem)
  1709. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/runner.py", line 412, in _teardown_with_finalization
  1710. self._callfinalizers(colitem)
  1711. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/runner.py", line 402, in _callfinalizers
  1712. fin()
  1713. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/fixtures.py", line 741, in finish
  1714. func()
  1715. File "/Users/carol/code/jhub/jupyterhub/jupyterhub/tests/conftest.py", line 60, in fin
  1716. mocked_app.stop()
  1717. File "/Users/carol/code/jhub/jupyterhub/jupyterhub/tests/mocking.py", line 194, in stop
  1718. IOLoop().run_sync(self.cleanup)
  1719. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/tornado/ioloop.py", line 453, in run_sync
  1720. self.start()
  1721. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/zmq/eventloop/ioloop.py", line 177, in start
  1722. super(ZMQIOLoop, self).start()
  1723. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/tornado/ioloop.py", line 832, in start
  1724. self._run_callback(self._callbacks.popleft())
  1725. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/tornado/ioloop.py", line 605, in _run_callback
  1726. ret = callback()
  1727. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/tornado/stack_context.py", line 277, in null_wrapper
  1728. return fn(*args, **kwargs)
  1729. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/tornado/ioloop.py", line 436, in run
  1730. result = func()
  1731. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/tornado/gen.py", line 307, in wrapper
  1732. yielded = next(result)
  1733. File "/Users/carol/code/jhub/jupyterhub/jupyterhub/app.py", line 1319, in cleanup
  1734. futures.append(user.stop())
  1735. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/tornado/gen.py", line 319, in wrapper
  1736. _futures_to_runners[future] = Runner(result, future, yielded)
  1737. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/tornado/gen.py", line 1003, in __init__
  1738. self.run()
  1739. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/tornado/gen.py", line 1069, in run
  1740. yielded = self.gen.send(value)
  1741. File "/Users/carol/code/jhub/jupyterhub/jupyterhub/user.py", line 404, in stop
  1742. self.log.exception("Error in Authenticator.post_spawn_stop for %s", self)
  1743. Unable to print the message and arguments - possible formatting error.
  1744. Use the traceback above to help find the error.
  1745. --- Logging error ---
  1746. Traceback (most recent call last):
  1747. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/engine/base.py", line 1182, in _execute_context
  1748. context)
  1749. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/engine/default.py", line 470, in do_execute
  1750. cursor.execute(statement, parameters)
  1751. sqlite3.OperationalError: database is locked
  1752.  
  1753. The above exception was the direct cause of the following exception:
  1754.  
  1755. Traceback (most recent call last):
  1756. File "/Users/carol/code/jhub/jupyterhub/jupyterhub/user.py", line 382, in stop
  1757. self.state = spawner.get_state()
  1758. File "/Users/carol/code/jhub/jupyterhub/jupyterhub/user.py", line 152, in __setattr__
  1759. if not attr.startswith('_') and self.orm_user and hasattr(self.orm_user, attr):
  1760. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/attributes.py", line 237, in __get__
  1761. return self.impl.get(instance_state(instance), dict_)
  1762. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/attributes.py", line 579, in get
  1763. value = state._load_expired(state, passive)
  1764. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/state.py", line 592, in _load_expired
  1765. self.manager.deferred_scalar_loader(self, toload)
  1766. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/loading.py", line 698, in load_scalar_attributes
  1767. only_load_props=attribute_names)
  1768. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/loading.py", line 223, in load_on_ident
  1769. return q.one()
  1770. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/query.py", line 2814, in one
  1771. ret = self.one_or_none()
  1772. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/query.py", line 2784, in one_or_none
  1773. ret = list(self)
  1774. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/query.py", line 2855, in __iter__
  1775. return self._execute_and_instances(context)
  1776. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/query.py", line 2878, in _execute_and_instances
  1777. result = conn.execute(querycontext.statement, self._params)
  1778. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/engine/base.py", line 945, in execute
  1779. return meth(self, multiparams, params)
  1780. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/sql/elements.py", line 263, in _execute_on_connection
  1781. return connection._execute_clauseelement(self, multiparams, params)
  1782. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/engine/base.py", line 1053, in _execute_clauseelement
  1783. compiled_sql, distilled_params
  1784. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/engine/base.py", line 1189, in _execute_context
  1785. context)
  1786. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/engine/base.py", line 1402, in _handle_dbapi_exception
  1787. exc_info
  1788. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/util/compat.py", line 203, in raise_from_cause
  1789. reraise(type(exception), exception, tb=exc_tb, cause=cause)
  1790. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/util/compat.py", line 186, in reraise
  1791. raise value.with_traceback(tb)
  1792. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/engine/base.py", line 1182, in _execute_context
  1793. context)
  1794. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/engine/default.py", line 470, in do_execute
  1795. cursor.execute(statement, parameters)
  1796. sqlalchemy.exc.OperationalError: (sqlite3.OperationalError) database is locked [SQL: 'SELECT users.id AS users_id, users.name AS users_name, users.admin AS users_admin, users.last_activity AS users_last_activity, users.cookie_id AS users_cookie_id, users.state AS users_state, users.auth_state AS users_auth_state \nFROM users \nWHERE users.id = ?'] [parameters: (6,)]
  1797.  
  1798. During handling of the above exception, another exception occurred:
  1799.  
  1800. Traceback (most recent call last):
  1801. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/engine/base.py", line 1182, in _execute_context
  1802. context)
  1803. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/engine/default.py", line 470, in do_execute
  1804. cursor.execute(statement, parameters)
  1805. sqlite3.OperationalError: database is locked
  1806.  
  1807. The above exception was the direct cause of the following exception:
  1808.  
  1809. Traceback (most recent call last):
  1810. File "/Users/carol/code/jhub/jupyterhub/jupyterhub/user.py", line 401, in stop
  1811. auth.post_spawn_stop(self, spawner)
  1812. File "/Users/carol/code/jhub/jupyterhub/jupyterhub/auth.py", line 552, in post_spawn_stop
  1813. pamela.close_session(user.name, service=self.service)
  1814. File "/Users/carol/code/jhub/jupyterhub/jupyterhub/user.py", line 146, in __getattr__
  1815. if hasattr(self.orm_user, attr):
  1816. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/attributes.py", line 237, in __get__
  1817. return self.impl.get(instance_state(instance), dict_)
  1818. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/attributes.py", line 579, in get
  1819. value = state._load_expired(state, passive)
  1820. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/state.py", line 592, in _load_expired
  1821. self.manager.deferred_scalar_loader(self, toload)
  1822. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/loading.py", line 698, in load_scalar_attributes
  1823. only_load_props=attribute_names)
  1824. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/loading.py", line 223, in load_on_ident
  1825. return q.one()
  1826. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/query.py", line 2814, in one
  1827. ret = self.one_or_none()
  1828. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/query.py", line 2784, in one_or_none
  1829. ret = list(self)
  1830. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/query.py", line 2855, in __iter__
  1831. return self._execute_and_instances(context)
  1832. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/query.py", line 2878, in _execute_and_instances
  1833. result = conn.execute(querycontext.statement, self._params)
  1834. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/engine/base.py", line 945, in execute
  1835. return meth(self, multiparams, params)
  1836. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/sql/elements.py", line 263, in _execute_on_connection
  1837. return connection._execute_clauseelement(self, multiparams, params)
  1838. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/engine/base.py", line 1053, in _execute_clauseelement
  1839. compiled_sql, distilled_params
  1840. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/engine/base.py", line 1189, in _execute_context
  1841. context)
  1842. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/engine/base.py", line 1402, in _handle_dbapi_exception
  1843. exc_info
  1844. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/util/compat.py", line 203, in raise_from_cause
  1845. reraise(type(exception), exception, tb=exc_tb, cause=cause)
  1846. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/util/compat.py", line 186, in reraise
  1847. raise value.with_traceback(tb)
  1848. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/engine/base.py", line 1182, in _execute_context
  1849. context)
  1850. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/engine/default.py", line 470, in do_execute
  1851. cursor.execute(statement, parameters)
  1852. sqlalchemy.exc.OperationalError: (sqlite3.OperationalError) database is locked [SQL: 'SELECT users.id AS users_id, users.name AS users_name, users.admin AS users_admin, users.last_activity AS users_last_activity, users.cookie_id AS users_cookie_id, users.state AS users_state, users.auth_state AS users_auth_state \nFROM users \nWHERE users.id = ?'] [parameters: (6,)]
  1853.  
  1854. During handling of the above exception, another exception occurred:
  1855.  
  1856. Traceback (most recent call last):
  1857. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/engine/base.py", line 1182, in _execute_context
  1858. context)
  1859. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/engine/default.py", line 470, in do_execute
  1860. cursor.execute(statement, parameters)
  1861. sqlite3.OperationalError: database is locked
  1862.  
  1863. The above exception was the direct cause of the following exception:
  1864.  
  1865. Traceback (most recent call last):
  1866. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/logging/__init__.py", line 992, in emit
  1867. msg = self.format(record)
  1868. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/logging/__init__.py", line 838, in format
  1869. return fmt.format(record)
  1870. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/logging/__init__.py", line 575, in format
  1871. record.message = record.getMessage()
  1872. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/logging/__init__.py", line 338, in getMessage
  1873. msg = msg % self.args
  1874. File "/Users/carol/code/jhub/jupyterhub/jupyterhub/user.py", line 158, in __repr__
  1875. return repr(self.orm_user)
  1876. File "/Users/carol/code/jhub/jupyterhub/jupyterhub/orm.py", line 152, in __repr__
  1877. if self.servers:
  1878. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/ext/associationproxy.py", line 515, in __bool__
  1879. return bool(self.col)
  1880. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/ext/associationproxy.py", line 509, in <lambda>
  1881. col = property(lambda self: self.lazy_collection())
  1882. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/ext/associationproxy.py", line 467, in __call__
  1883. return getattr(obj, self.target)
  1884. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/attributes.py", line 237, in __get__
  1885. return self.impl.get(instance_state(instance), dict_)
  1886. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/attributes.py", line 584, in get
  1887. value = self.callable_(state, passive)
  1888. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/strategies.py", line 557, in _load_for_state
  1889. return self._emit_lazyload(session, state, ident_key, passive)
  1890. File "<string>", line 1, in <lambda>
  1891. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/strategies.py", line 621, in _emit_lazyload
  1892. state, passive=passive)
  1893. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/strategies.py", line 490, in _generate_lazy_clause
  1894. state, dict_, ident, passive)
  1895. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/mapper.py", line 2564, in _get_state_attr_by_column
  1896. return state.manager[prop.key].impl.get(state, dict_, passive=passive)
  1897. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/attributes.py", line 579, in get
  1898. value = state._load_expired(state, passive)
  1899. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/state.py", line 592, in _load_expired
  1900. self.manager.deferred_scalar_loader(self, toload)
  1901. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/loading.py", line 698, in load_scalar_attributes
  1902. only_load_props=attribute_names)
  1903. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/loading.py", line 223, in load_on_ident
  1904. return q.one()
  1905. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/query.py", line 2814, in one
  1906. ret = self.one_or_none()
  1907. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/query.py", line 2784, in one_or_none
  1908. ret = list(self)
  1909. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/query.py", line 2855, in __iter__
  1910. return self._execute_and_instances(context)
  1911. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/query.py", line 2878, in _execute_and_instances
  1912. result = conn.execute(querycontext.statement, self._params)
  1913. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/engine/base.py", line 945, in execute
  1914. return meth(self, multiparams, params)
  1915. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/sql/elements.py", line 263, in _execute_on_connection
  1916. return connection._execute_clauseelement(self, multiparams, params)
  1917. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/engine/base.py", line 1053, in _execute_clauseelement
  1918. compiled_sql, distilled_params
  1919. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/engine/base.py", line 1189, in _execute_context
  1920. context)
  1921. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/engine/base.py", line 1402, in _handle_dbapi_exception
  1922. exc_info
  1923. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/util/compat.py", line 203, in raise_from_cause
  1924. reraise(type(exception), exception, tb=exc_tb, cause=cause)
  1925. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/util/compat.py", line 186, in reraise
  1926. raise value.with_traceback(tb)
  1927. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/engine/base.py", line 1182, in _execute_context
  1928. context)
  1929. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/engine/default.py", line 470, in do_execute
  1930. cursor.execute(statement, parameters)
  1931. sqlalchemy.exc.OperationalError: (sqlite3.OperationalError) database is locked [SQL: 'SELECT users.id AS users_id, users.name AS users_name, users.admin AS users_admin, users.last_activity AS users_last_activity, users.cookie_id AS users_cookie_id, users.state AS users_state, users.auth_state AS users_auth_state \nFROM users \nWHERE users.id = ?'] [parameters: (6,)]
  1932. Call stack:
  1933. File "/Users/carol/.pyenv/versions/3.6.1/bin/pytest", line 11, in <module>
  1934. sys.exit(main())
  1935. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/config.py", line 58, in main
  1936. return config.hook.pytest_cmdline_main(config=config)
  1937. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/vendored_packages/pluggy.py", line 745, in __call__
  1938. return self._hookexec(self, self._nonwrappers + self._wrappers, kwargs)
  1939. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/vendored_packages/pluggy.py", line 339, in _hookexec
  1940. return self._inner_hookexec(hook, methods, kwargs)
  1941. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/vendored_packages/pluggy.py", line 334, in <lambda>
  1942. _MultiCall(methods, kwargs, hook.spec_opts).execute()
  1943. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/vendored_packages/pluggy.py", line 614, in execute
  1944. res = hook_impl.function(*args)
  1945. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/main.py", line 134, in pytest_cmdline_main
  1946. return wrap_session(config, _main)
  1947. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/main.py", line 105, in wrap_session
  1948. session.exitstatus = doit(config, session) or 0
  1949. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/main.py", line 141, in _main
  1950. config.hook.pytest_runtestloop(session=session)
  1951. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/vendored_packages/pluggy.py", line 745, in __call__
  1952. return self._hookexec(self, self._nonwrappers + self._wrappers, kwargs)
  1953. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/vendored_packages/pluggy.py", line 339, in _hookexec
  1954. return self._inner_hookexec(hook, methods, kwargs)
  1955. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/vendored_packages/pluggy.py", line 334, in <lambda>
  1956. _MultiCall(methods, kwargs, hook.spec_opts).execute()
  1957. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/vendored_packages/pluggy.py", line 614, in execute
  1958. res = hook_impl.function(*args)
  1959. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/main.py", line 164, in pytest_runtestloop
  1960. item.config.hook.pytest_runtest_protocol(item=item, nextitem=nextitem)
  1961. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/vendored_packages/pluggy.py", line 745, in __call__
  1962. return self._hookexec(self, self._nonwrappers + self._wrappers, kwargs)
  1963. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/vendored_packages/pluggy.py", line 339, in _hookexec
  1964. return self._inner_hookexec(hook, methods, kwargs)
  1965. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/vendored_packages/pluggy.py", line 334, in <lambda>
  1966. _MultiCall(methods, kwargs, hook.spec_opts).execute()
  1967. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/vendored_packages/pluggy.py", line 613, in execute
  1968. return _wrapped_call(hook_impl.function(*args), self.execute)
  1969. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/vendored_packages/pluggy.py", line 248, in _wrapped_call
  1970. call_outcome = _CallOutcome(func)
  1971. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/vendored_packages/pluggy.py", line 265, in __init__
  1972. self.result = func()
  1973. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/vendored_packages/pluggy.py", line 613, in execute
  1974. return _wrapped_call(hook_impl.function(*args), self.execute)
  1975. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/vendored_packages/pluggy.py", line 248, in _wrapped_call
  1976. call_outcome = _CallOutcome(func)
  1977. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/vendored_packages/pluggy.py", line 265, in __init__
  1978. self.result = func()
  1979. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/vendored_packages/pluggy.py", line 614, in execute
  1980. res = hook_impl.function(*args)
  1981. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/runner.py", line 60, in pytest_runtest_protocol
  1982. runtestprotocol(item, nextitem=nextitem)
  1983. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/runner.py", line 75, in runtestprotocol
  1984. nextitem=nextitem))
  1985. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/runner.py", line 127, in call_and_report
  1986. call = call_runtest_hook(item, when, **kwds)
  1987. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/runner.py", line 145, in call_runtest_hook
  1988. return CallInfo(lambda: ihook(item=item, **kwds), when=when)
  1989. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/runner.py", line 157, in __init__
  1990. self.result = func()
  1991. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/runner.py", line 145, in <lambda>
  1992. return CallInfo(lambda: ihook(item=item, **kwds), when=when)
  1993. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/vendored_packages/pluggy.py", line 745, in __call__
  1994. return self._hookexec(self, self._nonwrappers + self._wrappers, kwargs)
  1995. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/vendored_packages/pluggy.py", line 339, in _hookexec
  1996. return self._inner_hookexec(hook, methods, kwargs)
  1997. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/vendored_packages/pluggy.py", line 334, in <lambda>
  1998. _MultiCall(methods, kwargs, hook.spec_opts).execute()
  1999. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/vendored_packages/pluggy.py", line 613, in execute
  2000. return _wrapped_call(hook_impl.function(*args), self.execute)
  2001. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/vendored_packages/pluggy.py", line 248, in _wrapped_call
  2002. call_outcome = _CallOutcome(func)
  2003. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/vendored_packages/pluggy.py", line 265, in __init__
  2004. self.result = func()
  2005. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/vendored_packages/pluggy.py", line 614, in execute
  2006. res = hook_impl.function(*args)
  2007. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/runner.py", line 110, in pytest_runtest_teardown
  2008. item.session._setupstate.teardown_exact(item, nextitem)
  2009. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/runner.py", line 428, in teardown_exact
  2010. self._teardown_towards(needed_collectors)
  2011. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/runner.py", line 434, in _teardown_towards
  2012. self._pop_and_teardown()
  2013. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/runner.py", line 394, in _pop_and_teardown
  2014. self._teardown_with_finalization(colitem)
  2015. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/runner.py", line 412, in _teardown_with_finalization
  2016. self._callfinalizers(colitem)
  2017. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/runner.py", line 402, in _callfinalizers
  2018. fin()
  2019. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/fixtures.py", line 741, in finish
  2020. func()
  2021. File "/Users/carol/code/jhub/jupyterhub/jupyterhub/tests/conftest.py", line 60, in fin
  2022. mocked_app.stop()
  2023. File "/Users/carol/code/jhub/jupyterhub/jupyterhub/tests/mocking.py", line 194, in stop
  2024. IOLoop().run_sync(self.cleanup)
  2025. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/tornado/ioloop.py", line 453, in run_sync
  2026. self.start()
  2027. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/zmq/eventloop/ioloop.py", line 177, in start
  2028. super(ZMQIOLoop, self).start()
  2029. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/tornado/ioloop.py", line 832, in start
  2030. self._run_callback(self._callbacks.popleft())
  2031. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/tornado/ioloop.py", line 605, in _run_callback
  2032. ret = callback()
  2033. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/tornado/stack_context.py", line 277, in null_wrapper
  2034. return fn(*args, **kwargs)
  2035. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/tornado/ioloop.py", line 436, in run
  2036. result = func()
  2037. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/tornado/gen.py", line 307, in wrapper
  2038. yielded = next(result)
  2039. File "/Users/carol/code/jhub/jupyterhub/jupyterhub/app.py", line 1319, in cleanup
  2040. futures.append(user.stop())
  2041. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/tornado/gen.py", line 319, in wrapper
  2042. _futures_to_runners[future] = Runner(result, future, yielded)
  2043. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/tornado/gen.py", line 1003, in __init__
  2044. self.run()
  2045. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/tornado/gen.py", line 1069, in run
  2046. yielded = self.gen.send(value)
  2047. File "/Users/carol/code/jhub/jupyterhub/jupyterhub/user.py", line 404, in stop
  2048. self.log.exception("Error in Authenticator.post_spawn_stop for %s", self)
  2049. Unable to print the message and arguments - possible formatting error.
  2050. Use the traceback above to help find the error.
  2051. --- Logging error ---
  2052. Traceback (most recent call last):
  2053. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/engine/base.py", line 1182, in _execute_context
  2054. context)
  2055. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/engine/default.py", line 470, in do_execute
  2056. cursor.execute(statement, parameters)
  2057. sqlite3.OperationalError: database is locked
  2058.  
  2059. The above exception was the direct cause of the following exception:
  2060.  
  2061. Traceback (most recent call last):
  2062. File "/Users/carol/code/jhub/jupyterhub/jupyterhub/user.py", line 382, in stop
  2063. self.state = spawner.get_state()
  2064. File "/Users/carol/code/jhub/jupyterhub/jupyterhub/user.py", line 152, in __setattr__
  2065. if not attr.startswith('_') and self.orm_user and hasattr(self.orm_user, attr):
  2066. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/attributes.py", line 237, in __get__
  2067. return self.impl.get(instance_state(instance), dict_)
  2068. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/attributes.py", line 579, in get
  2069. value = state._load_expired(state, passive)
  2070. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/state.py", line 592, in _load_expired
  2071. self.manager.deferred_scalar_loader(self, toload)
  2072. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/loading.py", line 698, in load_scalar_attributes
  2073. only_load_props=attribute_names)
  2074. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/loading.py", line 223, in load_on_ident
  2075. return q.one()
  2076. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/query.py", line 2814, in one
  2077. ret = self.one_or_none()
  2078. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/query.py", line 2784, in one_or_none
  2079. ret = list(self)
  2080. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/query.py", line 2855, in __iter__
  2081. return self._execute_and_instances(context)
  2082. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/query.py", line 2878, in _execute_and_instances
  2083. result = conn.execute(querycontext.statement, self._params)
  2084. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/engine/base.py", line 945, in execute
  2085. return meth(self, multiparams, params)
  2086. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/sql/elements.py", line 263, in _execute_on_connection
  2087. return connection._execute_clauseelement(self, multiparams, params)
  2088. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/engine/base.py", line 1053, in _execute_clauseelement
  2089. compiled_sql, distilled_params
  2090. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/engine/base.py", line 1189, in _execute_context
  2091. context)
  2092. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/engine/base.py", line 1402, in _handle_dbapi_exception
  2093. exc_info
  2094. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/util/compat.py", line 203, in raise_from_cause
  2095. reraise(type(exception), exception, tb=exc_tb, cause=cause)
  2096. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/util/compat.py", line 186, in reraise
  2097. raise value.with_traceback(tb)
  2098. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/engine/base.py", line 1182, in _execute_context
  2099. context)
  2100. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/engine/default.py", line 470, in do_execute
  2101. cursor.execute(statement, parameters)
  2102. sqlalchemy.exc.OperationalError: (sqlite3.OperationalError) database is locked [SQL: 'SELECT users.id AS users_id, users.name AS users_name, users.admin AS users_admin, users.last_activity AS users_last_activity, users.cookie_id AS users_cookie_id, users.state AS users_state, users.auth_state AS users_auth_state \nFROM users \nWHERE users.id = ?'] [parameters: (7,)]
  2103.  
  2104. During handling of the above exception, another exception occurred:
  2105.  
  2106. Traceback (most recent call last):
  2107. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/engine/base.py", line 1182, in _execute_context
  2108. context)
  2109. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/engine/default.py", line 470, in do_execute
  2110. cursor.execute(statement, parameters)
  2111. sqlite3.OperationalError: database is locked
  2112.  
  2113. The above exception was the direct cause of the following exception:
  2114.  
  2115. Traceback (most recent call last):
  2116. File "/Users/carol/code/jhub/jupyterhub/jupyterhub/user.py", line 401, in stop
  2117. auth.post_spawn_stop(self, spawner)
  2118. File "/Users/carol/code/jhub/jupyterhub/jupyterhub/auth.py", line 552, in post_spawn_stop
  2119. pamela.close_session(user.name, service=self.service)
  2120. File "/Users/carol/code/jhub/jupyterhub/jupyterhub/user.py", line 146, in __getattr__
  2121. if hasattr(self.orm_user, attr):
  2122. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/attributes.py", line 237, in __get__
  2123. return self.impl.get(instance_state(instance), dict_)
  2124. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/attributes.py", line 579, in get
  2125. value = state._load_expired(state, passive)
  2126. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/state.py", line 592, in _load_expired
  2127. self.manager.deferred_scalar_loader(self, toload)
  2128. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/loading.py", line 698, in load_scalar_attributes
  2129. only_load_props=attribute_names)
  2130. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/loading.py", line 223, in load_on_ident
  2131. return q.one()
  2132. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/query.py", line 2814, in one
  2133. ret = self.one_or_none()
  2134. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/query.py", line 2784, in one_or_none
  2135. ret = list(self)
  2136. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/query.py", line 2855, in __iter__
  2137. return self._execute_and_instances(context)
  2138. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/query.py", line 2878, in _execute_and_instances
  2139. result = conn.execute(querycontext.statement, self._params)
  2140. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/engine/base.py", line 945, in execute
  2141. return meth(self, multiparams, params)
  2142. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/sql/elements.py", line 263, in _execute_on_connection
  2143. return connection._execute_clauseelement(self, multiparams, params)
  2144. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/engine/base.py", line 1053, in _execute_clauseelement
  2145. compiled_sql, distilled_params
  2146. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/engine/base.py", line 1189, in _execute_context
  2147. context)
  2148. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/engine/base.py", line 1402, in _handle_dbapi_exception
  2149. exc_info
  2150. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/util/compat.py", line 203, in raise_from_cause
  2151. reraise(type(exception), exception, tb=exc_tb, cause=cause)
  2152. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/util/compat.py", line 186, in reraise
  2153. raise value.with_traceback(tb)
  2154. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/engine/base.py", line 1182, in _execute_context
  2155. context)
  2156. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/engine/default.py", line 470, in do_execute
  2157. cursor.execute(statement, parameters)
  2158. sqlalchemy.exc.OperationalError: (sqlite3.OperationalError) database is locked [SQL: 'SELECT users.id AS users_id, users.name AS users_name, users.admin AS users_admin, users.last_activity AS users_last_activity, users.cookie_id AS users_cookie_id, users.state AS users_state, users.auth_state AS users_auth_state \nFROM users \nWHERE users.id = ?'] [parameters: (7,)]
  2159.  
  2160. During handling of the above exception, another exception occurred:
  2161.  
  2162. Traceback (most recent call last):
  2163. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/engine/base.py", line 1182, in _execute_context
  2164. context)
  2165. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/engine/default.py", line 470, in do_execute
  2166. cursor.execute(statement, parameters)
  2167. sqlite3.OperationalError: database is locked
  2168.  
  2169. The above exception was the direct cause of the following exception:
  2170.  
  2171. Traceback (most recent call last):
  2172. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/logging/__init__.py", line 992, in emit
  2173. msg = self.format(record)
  2174. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/logging/__init__.py", line 838, in format
  2175. return fmt.format(record)
  2176. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/logging/__init__.py", line 575, in format
  2177. record.message = record.getMessage()
  2178. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/logging/__init__.py", line 338, in getMessage
  2179. msg = msg % self.args
  2180. File "/Users/carol/code/jhub/jupyterhub/jupyterhub/user.py", line 158, in __repr__
  2181. return repr(self.orm_user)
  2182. File "/Users/carol/code/jhub/jupyterhub/jupyterhub/orm.py", line 152, in __repr__
  2183. if self.servers:
  2184. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/ext/associationproxy.py", line 515, in __bool__
  2185. return bool(self.col)
  2186. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/ext/associationproxy.py", line 509, in <lambda>
  2187. col = property(lambda self: self.lazy_collection())
  2188. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/ext/associationproxy.py", line 467, in __call__
  2189. return getattr(obj, self.target)
  2190. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/attributes.py", line 237, in __get__
  2191. return self.impl.get(instance_state(instance), dict_)
  2192. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/attributes.py", line 584, in get
  2193. value = self.callable_(state, passive)
  2194. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/strategies.py", line 557, in _load_for_state
  2195. return self._emit_lazyload(session, state, ident_key, passive)
  2196. File "<string>", line 1, in <lambda>
  2197. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/strategies.py", line 621, in _emit_lazyload
  2198. state, passive=passive)
  2199. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/strategies.py", line 490, in _generate_lazy_clause
  2200. state, dict_, ident, passive)
  2201. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/mapper.py", line 2564, in _get_state_attr_by_column
  2202. return state.manager[prop.key].impl.get(state, dict_, passive=passive)
  2203. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/attributes.py", line 579, in get
  2204. value = state._load_expired(state, passive)
  2205. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/state.py", line 592, in _load_expired
  2206. self.manager.deferred_scalar_loader(self, toload)
  2207. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/loading.py", line 698, in load_scalar_attributes
  2208. only_load_props=attribute_names)
  2209. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/loading.py", line 223, in load_on_ident
  2210. return q.one()
  2211. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/query.py", line 2814, in one
  2212. ret = self.one_or_none()
  2213. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/query.py", line 2784, in one_or_none
  2214. ret = list(self)
  2215. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/query.py", line 2855, in __iter__
  2216. return self._execute_and_instances(context)
  2217. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/query.py", line 2878, in _execute_and_instances
  2218. result = conn.execute(querycontext.statement, self._params)
  2219. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/engine/base.py", line 945, in execute
  2220. return meth(self, multiparams, params)
  2221. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/sql/elements.py", line 263, in _execute_on_connection
  2222. return connection._execute_clauseelement(self, multiparams, params)
  2223. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/engine/base.py", line 1053, in _execute_clauseelement
  2224. compiled_sql, distilled_params
  2225. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/engine/base.py", line 1189, in _execute_context
  2226. context)
  2227. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/engine/base.py", line 1402, in _handle_dbapi_exception
  2228. exc_info
  2229. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/util/compat.py", line 203, in raise_from_cause
  2230. reraise(type(exception), exception, tb=exc_tb, cause=cause)
  2231. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/util/compat.py", line 186, in reraise
  2232. raise value.with_traceback(tb)
  2233. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/engine/base.py", line 1182, in _execute_context
  2234. context)
  2235. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/engine/default.py", line 470, in do_execute
  2236. cursor.execute(statement, parameters)
  2237. sqlalchemy.exc.OperationalError: (sqlite3.OperationalError) database is locked [SQL: 'SELECT users.id AS users_id, users.name AS users_name, users.admin AS users_admin, users.last_activity AS users_last_activity, users.cookie_id AS users_cookie_id, users.state AS users_state, users.auth_state AS users_auth_state \nFROM users \nWHERE users.id = ?'] [parameters: (7,)]
  2238. Call stack:
  2239. File "/Users/carol/.pyenv/versions/3.6.1/bin/pytest", line 11, in <module>
  2240. sys.exit(main())
  2241. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/config.py", line 58, in main
  2242. return config.hook.pytest_cmdline_main(config=config)
  2243. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/vendored_packages/pluggy.py", line 745, in __call__
  2244. return self._hookexec(self, self._nonwrappers + self._wrappers, kwargs)
  2245. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/vendored_packages/pluggy.py", line 339, in _hookexec
  2246. return self._inner_hookexec(hook, methods, kwargs)
  2247. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/vendored_packages/pluggy.py", line 334, in <lambda>
  2248. _MultiCall(methods, kwargs, hook.spec_opts).execute()
  2249. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/vendored_packages/pluggy.py", line 614, in execute
  2250. res = hook_impl.function(*args)
  2251. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/main.py", line 134, in pytest_cmdline_main
  2252. return wrap_session(config, _main)
  2253. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/main.py", line 105, in wrap_session
  2254. session.exitstatus = doit(config, session) or 0
  2255. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/main.py", line 141, in _main
  2256. config.hook.pytest_runtestloop(session=session)
  2257. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/vendored_packages/pluggy.py", line 745, in __call__
  2258. return self._hookexec(self, self._nonwrappers + self._wrappers, kwargs)
  2259. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/vendored_packages/pluggy.py", line 339, in _hookexec
  2260. return self._inner_hookexec(hook, methods, kwargs)
  2261. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/vendored_packages/pluggy.py", line 334, in <lambda>
  2262. _MultiCall(methods, kwargs, hook.spec_opts).execute()
  2263. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/vendored_packages/pluggy.py", line 614, in execute
  2264. res = hook_impl.function(*args)
  2265. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/main.py", line 164, in pytest_runtestloop
  2266. item.config.hook.pytest_runtest_protocol(item=item, nextitem=nextitem)
  2267. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/vendored_packages/pluggy.py", line 745, in __call__
  2268. return self._hookexec(self, self._nonwrappers + self._wrappers, kwargs)
  2269. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/vendored_packages/pluggy.py", line 339, in _hookexec
  2270. return self._inner_hookexec(hook, methods, kwargs)
  2271. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/vendored_packages/pluggy.py", line 334, in <lambda>
  2272. _MultiCall(methods, kwargs, hook.spec_opts).execute()
  2273. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/vendored_packages/pluggy.py", line 613, in execute
  2274. return _wrapped_call(hook_impl.function(*args), self.execute)
  2275. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/vendored_packages/pluggy.py", line 248, in _wrapped_call
  2276. call_outcome = _CallOutcome(func)
  2277. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/vendored_packages/pluggy.py", line 265, in __init__
  2278. self.result = func()
  2279. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/vendored_packages/pluggy.py", line 613, in execute
  2280. return _wrapped_call(hook_impl.function(*args), self.execute)
  2281. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/vendored_packages/pluggy.py", line 248, in _wrapped_call
  2282. call_outcome = _CallOutcome(func)
  2283. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/vendored_packages/pluggy.py", line 265, in __init__
  2284. self.result = func()
  2285. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/vendored_packages/pluggy.py", line 614, in execute
  2286. res = hook_impl.function(*args)
  2287. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/runner.py", line 60, in pytest_runtest_protocol
  2288. runtestprotocol(item, nextitem=nextitem)
  2289. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/runner.py", line 75, in runtestprotocol
  2290. nextitem=nextitem))
  2291. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/runner.py", line 127, in call_and_report
  2292. call = call_runtest_hook(item, when, **kwds)
  2293. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/runner.py", line 145, in call_runtest_hook
  2294. return CallInfo(lambda: ihook(item=item, **kwds), when=when)
  2295. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/runner.py", line 157, in __init__
  2296. self.result = func()
  2297. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/runner.py", line 145, in <lambda>
  2298. return CallInfo(lambda: ihook(item=item, **kwds), when=when)
  2299. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/vendored_packages/pluggy.py", line 745, in __call__
  2300. return self._hookexec(self, self._nonwrappers + self._wrappers, kwargs)
  2301. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/vendored_packages/pluggy.py", line 339, in _hookexec
  2302. return self._inner_hookexec(hook, methods, kwargs)
  2303. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/vendored_packages/pluggy.py", line 334, in <lambda>
  2304. _MultiCall(methods, kwargs, hook.spec_opts).execute()
  2305. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/vendored_packages/pluggy.py", line 613, in execute
  2306. return _wrapped_call(hook_impl.function(*args), self.execute)
  2307. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/vendored_packages/pluggy.py", line 248, in _wrapped_call
  2308. call_outcome = _CallOutcome(func)
  2309. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/vendored_packages/pluggy.py", line 265, in __init__
  2310. self.result = func()
  2311. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/vendored_packages/pluggy.py", line 614, in execute
  2312. res = hook_impl.function(*args)
  2313. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/runner.py", line 110, in pytest_runtest_teardown
  2314. item.session._setupstate.teardown_exact(item, nextitem)
  2315. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/runner.py", line 428, in teardown_exact
  2316. self._teardown_towards(needed_collectors)
  2317. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/runner.py", line 434, in _teardown_towards
  2318. self._pop_and_teardown()
  2319. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/runner.py", line 394, in _pop_and_teardown
  2320. self._teardown_with_finalization(colitem)
  2321. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/runner.py", line 412, in _teardown_with_finalization
  2322. self._callfinalizers(colitem)
  2323. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/runner.py", line 402, in _callfinalizers
  2324. fin()
  2325. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/fixtures.py", line 741, in finish
  2326. func()
  2327. File "/Users/carol/code/jhub/jupyterhub/jupyterhub/tests/conftest.py", line 60, in fin
  2328. mocked_app.stop()
  2329. File "/Users/carol/code/jhub/jupyterhub/jupyterhub/tests/mocking.py", line 194, in stop
  2330. IOLoop().run_sync(self.cleanup)
  2331. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/tornado/ioloop.py", line 453, in run_sync
  2332. self.start()
  2333. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/zmq/eventloop/ioloop.py", line 177, in start
  2334. super(ZMQIOLoop, self).start()
  2335. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/tornado/ioloop.py", line 832, in start
  2336. self._run_callback(self._callbacks.popleft())
  2337. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/tornado/ioloop.py", line 605, in _run_callback
  2338. ret = callback()
  2339. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/tornado/stack_context.py", line 277, in null_wrapper
  2340. return fn(*args, **kwargs)
  2341. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/tornado/ioloop.py", line 436, in run
  2342. result = func()
  2343. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/tornado/gen.py", line 307, in wrapper
  2344. yielded = next(result)
  2345. File "/Users/carol/code/jhub/jupyterhub/jupyterhub/app.py", line 1319, in cleanup
  2346. futures.append(user.stop())
  2347. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/tornado/gen.py", line 319, in wrapper
  2348. _futures_to_runners[future] = Runner(result, future, yielded)
  2349. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/tornado/gen.py", line 1003, in __init__
  2350. self.run()
  2351. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/tornado/gen.py", line 1069, in run
  2352. yielded = self.gen.send(value)
  2353. File "/Users/carol/code/jhub/jupyterhub/jupyterhub/user.py", line 404, in stop
  2354. self.log.exception("Error in Authenticator.post_spawn_stop for %s", self)
  2355. Unable to print the message and arguments - possible formatting error.
  2356. Use the traceback above to help find the error.
  2357. --- Logging error ---
  2358. Traceback (most recent call last):
  2359. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/engine/base.py", line 1182, in _execute_context
  2360. context)
  2361. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/engine/default.py", line 470, in do_execute
  2362. cursor.execute(statement, parameters)
  2363. sqlite3.OperationalError: database is locked
  2364.  
  2365. The above exception was the direct cause of the following exception:
  2366.  
  2367. Traceback (most recent call last):
  2368. File "/Users/carol/code/jhub/jupyterhub/jupyterhub/user.py", line 382, in stop
  2369. self.state = spawner.get_state()
  2370. File "/Users/carol/code/jhub/jupyterhub/jupyterhub/user.py", line 152, in __setattr__
  2371. if not attr.startswith('_') and self.orm_user and hasattr(self.orm_user, attr):
  2372. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/attributes.py", line 237, in __get__
  2373. return self.impl.get(instance_state(instance), dict_)
  2374. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/attributes.py", line 579, in get
  2375. value = state._load_expired(state, passive)
  2376. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/state.py", line 592, in _load_expired
  2377. self.manager.deferred_scalar_loader(self, toload)
  2378. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/loading.py", line 698, in load_scalar_attributes
  2379. only_load_props=attribute_names)
  2380. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/loading.py", line 223, in load_on_ident
  2381. return q.one()
  2382. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/query.py", line 2814, in one
  2383. ret = self.one_or_none()
  2384. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/query.py", line 2784, in one_or_none
  2385. ret = list(self)
  2386. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/query.py", line 2855, in __iter__
  2387. return self._execute_and_instances(context)
  2388. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/query.py", line 2878, in _execute_and_instances
  2389. result = conn.execute(querycontext.statement, self._params)
  2390. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/engine/base.py", line 945, in execute
  2391. return meth(self, multiparams, params)
  2392. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/sql/elements.py", line 263, in _execute_on_connection
  2393. return connection._execute_clauseelement(self, multiparams, params)
  2394. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/engine/base.py", line 1053, in _execute_clauseelement
  2395. compiled_sql, distilled_params
  2396. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/engine/base.py", line 1189, in _execute_context
  2397. context)
  2398. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/engine/base.py", line 1402, in _handle_dbapi_exception
  2399. exc_info
  2400. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/util/compat.py", line 203, in raise_from_cause
  2401. reraise(type(exception), exception, tb=exc_tb, cause=cause)
  2402. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/util/compat.py", line 186, in reraise
  2403. raise value.with_traceback(tb)
  2404. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/engine/base.py", line 1182, in _execute_context
  2405. context)
  2406. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/engine/default.py", line 470, in do_execute
  2407. cursor.execute(statement, parameters)
  2408. sqlalchemy.exc.OperationalError: (sqlite3.OperationalError) database is locked [SQL: 'SELECT users.id AS users_id, users.name AS users_name, users.admin AS users_admin, users.last_activity AS users_last_activity, users.cookie_id AS users_cookie_id, users.state AS users_state, users.auth_state AS users_auth_state \nFROM users \nWHERE users.id = ?'] [parameters: (8,)]
  2409.  
  2410. During handling of the above exception, another exception occurred:
  2411.  
  2412. Traceback (most recent call last):
  2413. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/engine/base.py", line 1182, in _execute_context
  2414. context)
  2415. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/engine/default.py", line 470, in do_execute
  2416. cursor.execute(statement, parameters)
  2417. sqlite3.OperationalError: database is locked
  2418.  
  2419. The above exception was the direct cause of the following exception:
  2420.  
  2421. Traceback (most recent call last):
  2422. File "/Users/carol/code/jhub/jupyterhub/jupyterhub/user.py", line 401, in stop
  2423. auth.post_spawn_stop(self, spawner)
  2424. File "/Users/carol/code/jhub/jupyterhub/jupyterhub/auth.py", line 552, in post_spawn_stop
  2425. pamela.close_session(user.name, service=self.service)
  2426. File "/Users/carol/code/jhub/jupyterhub/jupyterhub/user.py", line 146, in __getattr__
  2427. if hasattr(self.orm_user, attr):
  2428. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/attributes.py", line 237, in __get__
  2429. return self.impl.get(instance_state(instance), dict_)
  2430. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/attributes.py", line 579, in get
  2431. value = state._load_expired(state, passive)
  2432. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/state.py", line 592, in _load_expired
  2433. self.manager.deferred_scalar_loader(self, toload)
  2434. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/loading.py", line 698, in load_scalar_attributes
  2435. only_load_props=attribute_names)
  2436. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/loading.py", line 223, in load_on_ident
  2437. return q.one()
  2438. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/query.py", line 2814, in one
  2439. ret = self.one_or_none()
  2440. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/query.py", line 2784, in one_or_none
  2441. ret = list(self)
  2442. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/query.py", line 2855, in __iter__
  2443. return self._execute_and_instances(context)
  2444. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/query.py", line 2878, in _execute_and_instances
  2445. result = conn.execute(querycontext.statement, self._params)
  2446. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/engine/base.py", line 945, in execute
  2447. return meth(self, multiparams, params)
  2448. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/sql/elements.py", line 263, in _execute_on_connection
  2449. return connection._execute_clauseelement(self, multiparams, params)
  2450. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/engine/base.py", line 1053, in _execute_clauseelement
  2451. compiled_sql, distilled_params
  2452. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/engine/base.py", line 1189, in _execute_context
  2453. context)
  2454. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/engine/base.py", line 1402, in _handle_dbapi_exception
  2455. exc_info
  2456. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/util/compat.py", line 203, in raise_from_cause
  2457. reraise(type(exception), exception, tb=exc_tb, cause=cause)
  2458. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/util/compat.py", line 186, in reraise
  2459. raise value.with_traceback(tb)
  2460. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/engine/base.py", line 1182, in _execute_context
  2461. context)
  2462. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/engine/default.py", line 470, in do_execute
  2463. cursor.execute(statement, parameters)
  2464. sqlalchemy.exc.OperationalError: (sqlite3.OperationalError) database is locked [SQL: 'SELECT users.id AS users_id, users.name AS users_name, users.admin AS users_admin, users.last_activity AS users_last_activity, users.cookie_id AS users_cookie_id, users.state AS users_state, users.auth_state AS users_auth_state \nFROM users \nWHERE users.id = ?'] [parameters: (8,)]
  2465.  
  2466. During handling of the above exception, another exception occurred:
  2467.  
  2468. Traceback (most recent call last):
  2469. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/engine/base.py", line 1182, in _execute_context
  2470. context)
  2471. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/engine/default.py", line 470, in do_execute
  2472. cursor.execute(statement, parameters)
  2473. sqlite3.OperationalError: database is locked
  2474.  
  2475. The above exception was the direct cause of the following exception:
  2476.  
  2477. Traceback (most recent call last):
  2478. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/logging/__init__.py", line 992, in emit
  2479. msg = self.format(record)
  2480. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/logging/__init__.py", line 838, in format
  2481. return fmt.format(record)
  2482. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/logging/__init__.py", line 575, in format
  2483. record.message = record.getMessage()
  2484. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/logging/__init__.py", line 338, in getMessage
  2485. msg = msg % self.args
  2486. File "/Users/carol/code/jhub/jupyterhub/jupyterhub/user.py", line 158, in __repr__
  2487. return repr(self.orm_user)
  2488. File "/Users/carol/code/jhub/jupyterhub/jupyterhub/orm.py", line 152, in __repr__
  2489. if self.servers:
  2490. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/ext/associationproxy.py", line 515, in __bool__
  2491. return bool(self.col)
  2492. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/ext/associationproxy.py", line 509, in <lambda>
  2493. col = property(lambda self: self.lazy_collection())
  2494. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/ext/associationproxy.py", line 467, in __call__
  2495. return getattr(obj, self.target)
  2496. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/attributes.py", line 237, in __get__
  2497. return self.impl.get(instance_state(instance), dict_)
  2498. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/attributes.py", line 584, in get
  2499. value = self.callable_(state, passive)
  2500. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/strategies.py", line 557, in _load_for_state
  2501. return self._emit_lazyload(session, state, ident_key, passive)
  2502. File "<string>", line 1, in <lambda>
  2503. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/strategies.py", line 621, in _emit_lazyload
  2504. state, passive=passive)
  2505. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/strategies.py", line 490, in _generate_lazy_clause
  2506. state, dict_, ident, passive)
  2507. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/mapper.py", line 2564, in _get_state_attr_by_column
  2508. return state.manager[prop.key].impl.get(state, dict_, passive=passive)
  2509. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/attributes.py", line 579, in get
  2510. value = state._load_expired(state, passive)
  2511. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/state.py", line 592, in _load_expired
  2512. self.manager.deferred_scalar_loader(self, toload)
  2513. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/loading.py", line 698, in load_scalar_attributes
  2514. only_load_props=attribute_names)
  2515. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/loading.py", line 223, in load_on_ident
  2516. return q.one()
  2517. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/query.py", line 2814, in one
  2518. ret = self.one_or_none()
  2519. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/query.py", line 2784, in one_or_none
  2520. ret = list(self)
  2521. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/query.py", line 2855, in __iter__
  2522. return self._execute_and_instances(context)
  2523. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/query.py", line 2878, in _execute_and_instances
  2524. result = conn.execute(querycontext.statement, self._params)
  2525. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/engine/base.py", line 945, in execute
  2526. return meth(self, multiparams, params)
  2527. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/sql/elements.py", line 263, in _execute_on_connection
  2528. return connection._execute_clauseelement(self, multiparams, params)
  2529. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/engine/base.py", line 1053, in _execute_clauseelement
  2530. compiled_sql, distilled_params
  2531. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/engine/base.py", line 1189, in _execute_context
  2532. context)
  2533. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/engine/base.py", line 1402, in _handle_dbapi_exception
  2534. exc_info
  2535. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/util/compat.py", line 203, in raise_from_cause
  2536. reraise(type(exception), exception, tb=exc_tb, cause=cause)
  2537. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/util/compat.py", line 186, in reraise
  2538. raise value.with_traceback(tb)
  2539. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/engine/base.py", line 1182, in _execute_context
  2540. context)
  2541. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/engine/default.py", line 470, in do_execute
  2542. cursor.execute(statement, parameters)
  2543. sqlalchemy.exc.OperationalError: (sqlite3.OperationalError) database is locked [SQL: 'SELECT users.id AS users_id, users.name AS users_name, users.admin AS users_admin, users.last_activity AS users_last_activity, users.cookie_id AS users_cookie_id, users.state AS users_state, users.auth_state AS users_auth_state \nFROM users \nWHERE users.id = ?'] [parameters: (8,)]
  2544. Call stack:
  2545. File "/Users/carol/.pyenv/versions/3.6.1/bin/pytest", line 11, in <module>
  2546. sys.exit(main())
  2547. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/config.py", line 58, in main
  2548. return config.hook.pytest_cmdline_main(config=config)
  2549. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/vendored_packages/pluggy.py", line 745, in __call__
  2550. return self._hookexec(self, self._nonwrappers + self._wrappers, kwargs)
  2551. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/vendored_packages/pluggy.py", line 339, in _hookexec
  2552. return self._inner_hookexec(hook, methods, kwargs)
  2553. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/vendored_packages/pluggy.py", line 334, in <lambda>
  2554. _MultiCall(methods, kwargs, hook.spec_opts).execute()
  2555. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/vendored_packages/pluggy.py", line 614, in execute
  2556. res = hook_impl.function(*args)
  2557. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/main.py", line 134, in pytest_cmdline_main
  2558. return wrap_session(config, _main)
  2559. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/main.py", line 105, in wrap_session
  2560. session.exitstatus = doit(config, session) or 0
  2561. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/main.py", line 141, in _main
  2562. config.hook.pytest_runtestloop(session=session)
  2563. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/vendored_packages/pluggy.py", line 745, in __call__
  2564. return self._hookexec(self, self._nonwrappers + self._wrappers, kwargs)
  2565. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/vendored_packages/pluggy.py", line 339, in _hookexec
  2566. return self._inner_hookexec(hook, methods, kwargs)
  2567. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/vendored_packages/pluggy.py", line 334, in <lambda>
  2568. _MultiCall(methods, kwargs, hook.spec_opts).execute()
  2569. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/vendored_packages/pluggy.py", line 614, in execute
  2570. res = hook_impl.function(*args)
  2571. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/main.py", line 164, in pytest_runtestloop
  2572. item.config.hook.pytest_runtest_protocol(item=item, nextitem=nextitem)
  2573. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/vendored_packages/pluggy.py", line 745, in __call__
  2574. return self._hookexec(self, self._nonwrappers + self._wrappers, kwargs)
  2575. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/vendored_packages/pluggy.py", line 339, in _hookexec
  2576. return self._inner_hookexec(hook, methods, kwargs)
  2577. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/vendored_packages/pluggy.py", line 334, in <lambda>
  2578. _MultiCall(methods, kwargs, hook.spec_opts).execute()
  2579. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/vendored_packages/pluggy.py", line 613, in execute
  2580. return _wrapped_call(hook_impl.function(*args), self.execute)
  2581. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/vendored_packages/pluggy.py", line 248, in _wrapped_call
  2582. call_outcome = _CallOutcome(func)
  2583. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/vendored_packages/pluggy.py", line 265, in __init__
  2584. self.result = func()
  2585. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/vendored_packages/pluggy.py", line 613, in execute
  2586. return _wrapped_call(hook_impl.function(*args), self.execute)
  2587. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/vendored_packages/pluggy.py", line 248, in _wrapped_call
  2588. call_outcome = _CallOutcome(func)
  2589. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/vendored_packages/pluggy.py", line 265, in __init__
  2590. self.result = func()
  2591. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/vendored_packages/pluggy.py", line 614, in execute
  2592. res = hook_impl.function(*args)
  2593. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/runner.py", line 60, in pytest_runtest_protocol
  2594. runtestprotocol(item, nextitem=nextitem)
  2595. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/runner.py", line 75, in runtestprotocol
  2596. nextitem=nextitem))
  2597. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/runner.py", line 127, in call_and_report
  2598. call = call_runtest_hook(item, when, **kwds)
  2599. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/runner.py", line 145, in call_runtest_hook
  2600. return CallInfo(lambda: ihook(item=item, **kwds), when=when)
  2601. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/runner.py", line 157, in __init__
  2602. self.result = func()
  2603. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/runner.py", line 145, in <lambda>
  2604. return CallInfo(lambda: ihook(item=item, **kwds), when=when)
  2605. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/vendored_packages/pluggy.py", line 745, in __call__
  2606. return self._hookexec(self, self._nonwrappers + self._wrappers, kwargs)
  2607. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/vendored_packages/pluggy.py", line 339, in _hookexec
  2608. return self._inner_hookexec(hook, methods, kwargs)
  2609. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/vendored_packages/pluggy.py", line 334, in <lambda>
  2610. _MultiCall(methods, kwargs, hook.spec_opts).execute()
  2611. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/vendored_packages/pluggy.py", line 613, in execute
  2612. return _wrapped_call(hook_impl.function(*args), self.execute)
  2613. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/vendored_packages/pluggy.py", line 248, in _wrapped_call
  2614. call_outcome = _CallOutcome(func)
  2615. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/vendored_packages/pluggy.py", line 265, in __init__
  2616. self.result = func()
  2617. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/vendored_packages/pluggy.py", line 614, in execute
  2618. res = hook_impl.function(*args)
  2619. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/runner.py", line 110, in pytest_runtest_teardown
  2620. item.session._setupstate.teardown_exact(item, nextitem)
  2621. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/runner.py", line 428, in teardown_exact
  2622. self._teardown_towards(needed_collectors)
  2623. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/runner.py", line 434, in _teardown_towards
  2624. self._pop_and_teardown()
  2625. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/runner.py", line 394, in _pop_and_teardown
  2626. self._teardown_with_finalization(colitem)
  2627. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/runner.py", line 412, in _teardown_with_finalization
  2628. self._callfinalizers(colitem)
  2629. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/runner.py", line 402, in _callfinalizers
  2630. fin()
  2631. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/fixtures.py", line 741, in finish
  2632. func()
  2633. File "/Users/carol/code/jhub/jupyterhub/jupyterhub/tests/conftest.py", line 60, in fin
  2634. mocked_app.stop()
  2635. File "/Users/carol/code/jhub/jupyterhub/jupyterhub/tests/mocking.py", line 194, in stop
  2636. IOLoop().run_sync(self.cleanup)
  2637. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/tornado/ioloop.py", line 453, in run_sync
  2638. self.start()
  2639. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/zmq/eventloop/ioloop.py", line 177, in start
  2640. super(ZMQIOLoop, self).start()
  2641. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/tornado/ioloop.py", line 832, in start
  2642. self._run_callback(self._callbacks.popleft())
  2643. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/tornado/ioloop.py", line 605, in _run_callback
  2644. ret = callback()
  2645. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/tornado/stack_context.py", line 277, in null_wrapper
  2646. return fn(*args, **kwargs)
  2647. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/tornado/ioloop.py", line 436, in run
  2648. result = func()
  2649. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/tornado/gen.py", line 307, in wrapper
  2650. yielded = next(result)
  2651. File "/Users/carol/code/jhub/jupyterhub/jupyterhub/app.py", line 1319, in cleanup
  2652. futures.append(user.stop())
  2653. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/tornado/gen.py", line 319, in wrapper
  2654. _futures_to_runners[future] = Runner(result, future, yielded)
  2655. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/tornado/gen.py", line 1003, in __init__
  2656. self.run()
  2657. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/tornado/gen.py", line 1069, in run
  2658. yielded = self.gen.send(value)
  2659. File "/Users/carol/code/jhub/jupyterhub/jupyterhub/user.py", line 404, in stop
  2660. self.log.exception("Error in Authenticator.post_spawn_stop for %s", self)
  2661. Unable to print the message and arguments - possible formatting error.
  2662. Use the traceback above to help find the error.
  2663. --- Logging error ---
  2664. Traceback (most recent call last):
  2665. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/engine/base.py", line 1182, in _execute_context
  2666. context)
  2667. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/engine/default.py", line 470, in do_execute
  2668. cursor.execute(statement, parameters)
  2669. sqlite3.OperationalError: database is locked
  2670.  
  2671. The above exception was the direct cause of the following exception:
  2672.  
  2673. Traceback (most recent call last):
  2674. File "/Users/carol/code/jhub/jupyterhub/jupyterhub/user.py", line 382, in stop
  2675. self.state = spawner.get_state()
  2676. File "/Users/carol/code/jhub/jupyterhub/jupyterhub/user.py", line 152, in __setattr__
  2677. if not attr.startswith('_') and self.orm_user and hasattr(self.orm_user, attr):
  2678. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/attributes.py", line 237, in __get__
  2679. return self.impl.get(instance_state(instance), dict_)
  2680. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/attributes.py", line 579, in get
  2681. value = state._load_expired(state, passive)
  2682. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/state.py", line 592, in _load_expired
  2683. self.manager.deferred_scalar_loader(self, toload)
  2684. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/loading.py", line 698, in load_scalar_attributes
  2685. only_load_props=attribute_names)
  2686. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/loading.py", line 223, in load_on_ident
  2687. return q.one()
  2688. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/query.py", line 2814, in one
  2689. ret = self.one_or_none()
  2690. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/query.py", line 2784, in one_or_none
  2691. ret = list(self)
  2692. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/query.py", line 2855, in __iter__
  2693. return self._execute_and_instances(context)
  2694. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/query.py", line 2878, in _execute_and_instances
  2695. result = conn.execute(querycontext.statement, self._params)
  2696. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/engine/base.py", line 945, in execute
  2697. return meth(self, multiparams, params)
  2698. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/sql/elements.py", line 263, in _execute_on_connection
  2699. return connection._execute_clauseelement(self, multiparams, params)
  2700. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/engine/base.py", line 1053, in _execute_clauseelement
  2701. compiled_sql, distilled_params
  2702. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/engine/base.py", line 1189, in _execute_context
  2703. context)
  2704. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/engine/base.py", line 1402, in _handle_dbapi_exception
  2705. exc_info
  2706. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/util/compat.py", line 203, in raise_from_cause
  2707. reraise(type(exception), exception, tb=exc_tb, cause=cause)
  2708. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/util/compat.py", line 186, in reraise
  2709. raise value.with_traceback(tb)
  2710. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/engine/base.py", line 1182, in _execute_context
  2711. context)
  2712. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/engine/default.py", line 470, in do_execute
  2713. cursor.execute(statement, parameters)
  2714. sqlalchemy.exc.OperationalError: (sqlite3.OperationalError) database is locked [SQL: 'SELECT users.id AS users_id, users.name AS users_name, users.admin AS users_admin, users.last_activity AS users_last_activity, users.cookie_id AS users_cookie_id, users.state AS users_state, users.auth_state AS users_auth_state \nFROM users \nWHERE users.id = ?'] [parameters: (9,)]
  2715.  
  2716. During handling of the above exception, another exception occurred:
  2717.  
  2718. Traceback (most recent call last):
  2719. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/engine/base.py", line 1182, in _execute_context
  2720. context)
  2721. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/engine/default.py", line 470, in do_execute
  2722. cursor.execute(statement, parameters)
  2723. sqlite3.OperationalError: database is locked
  2724.  
  2725. The above exception was the direct cause of the following exception:
  2726.  
  2727. Traceback (most recent call last):
  2728. File "/Users/carol/code/jhub/jupyterhub/jupyterhub/user.py", line 401, in stop
  2729. auth.post_spawn_stop(self, spawner)
  2730. File "/Users/carol/code/jhub/jupyterhub/jupyterhub/auth.py", line 552, in post_spawn_stop
  2731. pamela.close_session(user.name, service=self.service)
  2732. File "/Users/carol/code/jhub/jupyterhub/jupyterhub/user.py", line 146, in __getattr__
  2733. if hasattr(self.orm_user, attr):
  2734. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/attributes.py", line 237, in __get__
  2735. return self.impl.get(instance_state(instance), dict_)
  2736. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/attributes.py", line 579, in get
  2737. value = state._load_expired(state, passive)
  2738. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/state.py", line 592, in _load_expired
  2739. self.manager.deferred_scalar_loader(self, toload)
  2740. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/loading.py", line 698, in load_scalar_attributes
  2741. only_load_props=attribute_names)
  2742. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/loading.py", line 223, in load_on_ident
  2743. return q.one()
  2744. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/query.py", line 2814, in one
  2745. ret = self.one_or_none()
  2746. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/query.py", line 2784, in one_or_none
  2747. ret = list(self)
  2748. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/query.py", line 2855, in __iter__
  2749. return self._execute_and_instances(context)
  2750. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/query.py", line 2878, in _execute_and_instances
  2751. result = conn.execute(querycontext.statement, self._params)
  2752. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/engine/base.py", line 945, in execute
  2753. return meth(self, multiparams, params)
  2754. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/sql/elements.py", line 263, in _execute_on_connection
  2755. return connection._execute_clauseelement(self, multiparams, params)
  2756. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/engine/base.py", line 1053, in _execute_clauseelement
  2757. compiled_sql, distilled_params
  2758. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/engine/base.py", line 1189, in _execute_context
  2759. context)
  2760. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/engine/base.py", line 1402, in _handle_dbapi_exception
  2761. exc_info
  2762. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/util/compat.py", line 203, in raise_from_cause
  2763. reraise(type(exception), exception, tb=exc_tb, cause=cause)
  2764. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/util/compat.py", line 186, in reraise
  2765. raise value.with_traceback(tb)
  2766. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/engine/base.py", line 1182, in _execute_context
  2767. context)
  2768. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/engine/default.py", line 470, in do_execute
  2769. cursor.execute(statement, parameters)
  2770. sqlalchemy.exc.OperationalError: (sqlite3.OperationalError) database is locked [SQL: 'SELECT users.id AS users_id, users.name AS users_name, users.admin AS users_admin, users.last_activity AS users_last_activity, users.cookie_id AS users_cookie_id, users.state AS users_state, users.auth_state AS users_auth_state \nFROM users \nWHERE users.id = ?'] [parameters: (9,)]
  2771.  
  2772. During handling of the above exception, another exception occurred:
  2773.  
  2774. Traceback (most recent call last):
  2775. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/engine/base.py", line 1182, in _execute_context
  2776. context)
  2777. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/engine/default.py", line 470, in do_execute
  2778. cursor.execute(statement, parameters)
  2779. sqlite3.OperationalError: database is locked
  2780.  
  2781. The above exception was the direct cause of the following exception:
  2782.  
  2783. Traceback (most recent call last):
  2784. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/logging/__init__.py", line 992, in emit
  2785. msg = self.format(record)
  2786. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/logging/__init__.py", line 838, in format
  2787. return fmt.format(record)
  2788. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/logging/__init__.py", line 575, in format
  2789. record.message = record.getMessage()
  2790. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/logging/__init__.py", line 338, in getMessage
  2791. msg = msg % self.args
  2792. File "/Users/carol/code/jhub/jupyterhub/jupyterhub/user.py", line 158, in __repr__
  2793. return repr(self.orm_user)
  2794. File "/Users/carol/code/jhub/jupyterhub/jupyterhub/orm.py", line 152, in __repr__
  2795. if self.servers:
  2796. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/ext/associationproxy.py", line 515, in __bool__
  2797. return bool(self.col)
  2798. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/ext/associationproxy.py", line 509, in <lambda>
  2799. col = property(lambda self: self.lazy_collection())
  2800. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/ext/associationproxy.py", line 467, in __call__
  2801. return getattr(obj, self.target)
  2802. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/attributes.py", line 237, in __get__
  2803. return self.impl.get(instance_state(instance), dict_)
  2804. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/attributes.py", line 584, in get
  2805. value = self.callable_(state, passive)
  2806. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/strategies.py", line 557, in _load_for_state
  2807. return self._emit_lazyload(session, state, ident_key, passive)
  2808. File "<string>", line 1, in <lambda>
  2809. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/strategies.py", line 621, in _emit_lazyload
  2810. state, passive=passive)
  2811. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/strategies.py", line 490, in _generate_lazy_clause
  2812. state, dict_, ident, passive)
  2813. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/mapper.py", line 2564, in _get_state_attr_by_column
  2814. return state.manager[prop.key].impl.get(state, dict_, passive=passive)
  2815. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/attributes.py", line 579, in get
  2816. value = state._load_expired(state, passive)
  2817. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/state.py", line 592, in _load_expired
  2818. self.manager.deferred_scalar_loader(self, toload)
  2819. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/loading.py", line 698, in load_scalar_attributes
  2820. only_load_props=attribute_names)
  2821. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/loading.py", line 223, in load_on_ident
  2822. return q.one()
  2823. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/query.py", line 2814, in one
  2824. ret = self.one_or_none()
  2825. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/query.py", line 2784, in one_or_none
  2826. ret = list(self)
  2827. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/query.py", line 2855, in __iter__
  2828. return self._execute_and_instances(context)
  2829. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/query.py", line 2878, in _execute_and_instances
  2830. result = conn.execute(querycontext.statement, self._params)
  2831. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/engine/base.py", line 945, in execute
  2832. return meth(self, multiparams, params)
  2833. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/sql/elements.py", line 263, in _execute_on_connection
  2834. return connection._execute_clauseelement(self, multiparams, params)
  2835. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/engine/base.py", line 1053, in _execute_clauseelement
  2836. compiled_sql, distilled_params
  2837. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/engine/base.py", line 1189, in _execute_context
  2838. context)
  2839. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/engine/base.py", line 1402, in _handle_dbapi_exception
  2840. exc_info
  2841. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/util/compat.py", line 203, in raise_from_cause
  2842. reraise(type(exception), exception, tb=exc_tb, cause=cause)
  2843. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/util/compat.py", line 186, in reraise
  2844. raise value.with_traceback(tb)
  2845. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/engine/base.py", line 1182, in _execute_context
  2846. context)
  2847. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/engine/default.py", line 470, in do_execute
  2848. cursor.execute(statement, parameters)
  2849. sqlalchemy.exc.OperationalError: (sqlite3.OperationalError) database is locked [SQL: 'SELECT users.id AS users_id, users.name AS users_name, users.admin AS users_admin, users.last_activity AS users_last_activity, users.cookie_id AS users_cookie_id, users.state AS users_state, users.auth_state AS users_auth_state \nFROM users \nWHERE users.id = ?'] [parameters: (9,)]
  2850. Call stack:
  2851. File "/Users/carol/.pyenv/versions/3.6.1/bin/pytest", line 11, in <module>
  2852. sys.exit(main())
  2853. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/config.py", line 58, in main
  2854. return config.hook.pytest_cmdline_main(config=config)
  2855. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/vendored_packages/pluggy.py", line 745, in __call__
  2856. return self._hookexec(self, self._nonwrappers + self._wrappers, kwargs)
  2857. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/vendored_packages/pluggy.py", line 339, in _hookexec
  2858. return self._inner_hookexec(hook, methods, kwargs)
  2859. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/vendored_packages/pluggy.py", line 334, in <lambda>
  2860. _MultiCall(methods, kwargs, hook.spec_opts).execute()
  2861. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/vendored_packages/pluggy.py", line 614, in execute
  2862. res = hook_impl.function(*args)
  2863. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/main.py", line 134, in pytest_cmdline_main
  2864. return wrap_session(config, _main)
  2865. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/main.py", line 105, in wrap_session
  2866. session.exitstatus = doit(config, session) or 0
  2867. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/main.py", line 141, in _main
  2868. config.hook.pytest_runtestloop(session=session)
  2869. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/vendored_packages/pluggy.py", line 745, in __call__
  2870. return self._hookexec(self, self._nonwrappers + self._wrappers, kwargs)
  2871. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/vendored_packages/pluggy.py", line 339, in _hookexec
  2872. return self._inner_hookexec(hook, methods, kwargs)
  2873. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/vendored_packages/pluggy.py", line 334, in <lambda>
  2874. _MultiCall(methods, kwargs, hook.spec_opts).execute()
  2875. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/vendored_packages/pluggy.py", line 614, in execute
  2876. res = hook_impl.function(*args)
  2877. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/main.py", line 164, in pytest_runtestloop
  2878. item.config.hook.pytest_runtest_protocol(item=item, nextitem=nextitem)
  2879. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/vendored_packages/pluggy.py", line 745, in __call__
  2880. return self._hookexec(self, self._nonwrappers + self._wrappers, kwargs)
  2881. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/vendored_packages/pluggy.py", line 339, in _hookexec
  2882. return self._inner_hookexec(hook, methods, kwargs)
  2883. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/vendored_packages/pluggy.py", line 334, in <lambda>
  2884. _MultiCall(methods, kwargs, hook.spec_opts).execute()
  2885. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/vendored_packages/pluggy.py", line 613, in execute
  2886. return _wrapped_call(hook_impl.function(*args), self.execute)
  2887. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/vendored_packages/pluggy.py", line 248, in _wrapped_call
  2888. call_outcome = _CallOutcome(func)
  2889. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/vendored_packages/pluggy.py", line 265, in __init__
  2890. self.result = func()
  2891. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/vendored_packages/pluggy.py", line 613, in execute
  2892. return _wrapped_call(hook_impl.function(*args), self.execute)
  2893. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/vendored_packages/pluggy.py", line 248, in _wrapped_call
  2894. call_outcome = _CallOutcome(func)
  2895. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/vendored_packages/pluggy.py", line 265, in __init__
  2896. self.result = func()
  2897. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/vendored_packages/pluggy.py", line 614, in execute
  2898. res = hook_impl.function(*args)
  2899. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/runner.py", line 60, in pytest_runtest_protocol
  2900. runtestprotocol(item, nextitem=nextitem)
  2901. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/runner.py", line 75, in runtestprotocol
  2902. nextitem=nextitem))
  2903. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/runner.py", line 127, in call_and_report
  2904. call = call_runtest_hook(item, when, **kwds)
  2905. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/runner.py", line 145, in call_runtest_hook
  2906. return CallInfo(lambda: ihook(item=item, **kwds), when=when)
  2907. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/runner.py", line 157, in __init__
  2908. self.result = func()
  2909. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/runner.py", line 145, in <lambda>
  2910. return CallInfo(lambda: ihook(item=item, **kwds), when=when)
  2911. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/vendored_packages/pluggy.py", line 745, in __call__
  2912. return self._hookexec(self, self._nonwrappers + self._wrappers, kwargs)
  2913. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/vendored_packages/pluggy.py", line 339, in _hookexec
  2914. return self._inner_hookexec(hook, methods, kwargs)
  2915. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/vendored_packages/pluggy.py", line 334, in <lambda>
  2916. _MultiCall(methods, kwargs, hook.spec_opts).execute()
  2917. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/vendored_packages/pluggy.py", line 613, in execute
  2918. return _wrapped_call(hook_impl.function(*args), self.execute)
  2919. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/vendored_packages/pluggy.py", line 248, in _wrapped_call
  2920. call_outcome = _CallOutcome(func)
  2921. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/vendored_packages/pluggy.py", line 265, in __init__
  2922. self.result = func()
  2923. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/vendored_packages/pluggy.py", line 614, in execute
  2924. res = hook_impl.function(*args)
  2925. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/runner.py", line 110, in pytest_runtest_teardown
  2926. item.session._setupstate.teardown_exact(item, nextitem)
  2927. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/runner.py", line 428, in teardown_exact
  2928. self._teardown_towards(needed_collectors)
  2929. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/runner.py", line 434, in _teardown_towards
  2930. self._pop_and_teardown()
  2931. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/runner.py", line 394, in _pop_and_teardown
  2932. self._teardown_with_finalization(colitem)
  2933. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/runner.py", line 412, in _teardown_with_finalization
  2934. self._callfinalizers(colitem)
  2935. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/runner.py", line 402, in _callfinalizers
  2936. fin()
  2937. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/fixtures.py", line 741, in finish
  2938. func()
  2939. File "/Users/carol/code/jhub/jupyterhub/jupyterhub/tests/conftest.py", line 60, in fin
  2940. mocked_app.stop()
  2941. File "/Users/carol/code/jhub/jupyterhub/jupyterhub/tests/mocking.py", line 194, in stop
  2942. IOLoop().run_sync(self.cleanup)
  2943. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/tornado/ioloop.py", line 453, in run_sync
  2944. self.start()
  2945. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/zmq/eventloop/ioloop.py", line 177, in start
  2946. super(ZMQIOLoop, self).start()
  2947. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/tornado/ioloop.py", line 832, in start
  2948. self._run_callback(self._callbacks.popleft())
  2949. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/tornado/ioloop.py", line 605, in _run_callback
  2950. ret = callback()
  2951. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/tornado/stack_context.py", line 277, in null_wrapper
  2952. return fn(*args, **kwargs)
  2953. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/tornado/ioloop.py", line 436, in run
  2954. result = func()
  2955. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/tornado/gen.py", line 307, in wrapper
  2956. yielded = next(result)
  2957. File "/Users/carol/code/jhub/jupyterhub/jupyterhub/app.py", line 1319, in cleanup
  2958. futures.append(user.stop())
  2959. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/tornado/gen.py", line 319, in wrapper
  2960. _futures_to_runners[future] = Runner(result, future, yielded)
  2961. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/tornado/gen.py", line 1003, in __init__
  2962. self.run()
  2963. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/tornado/gen.py", line 1069, in run
  2964. yielded = self.gen.send(value)
  2965. File "/Users/carol/code/jhub/jupyterhub/jupyterhub/user.py", line 404, in stop
  2966. self.log.exception("Error in Authenticator.post_spawn_stop for %s", self)
  2967. Unable to print the message and arguments - possible formatting error.
  2968. Use the traceback above to help find the error.
  2969. --- Logging error ---
  2970. Traceback (most recent call last):
  2971. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/engine/base.py", line 1182, in _execute_context
  2972. context)
  2973. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/engine/default.py", line 470, in do_execute
  2974. cursor.execute(statement, parameters)
  2975. sqlite3.OperationalError: database is locked
  2976.  
  2977. The above exception was the direct cause of the following exception:
  2978.  
  2979. Traceback (most recent call last):
  2980. File "/Users/carol/code/jhub/jupyterhub/jupyterhub/user.py", line 382, in stop
  2981. self.state = spawner.get_state()
  2982. File "/Users/carol/code/jhub/jupyterhub/jupyterhub/user.py", line 152, in __setattr__
  2983. if not attr.startswith('_') and self.orm_user and hasattr(self.orm_user, attr):
  2984. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/attributes.py", line 237, in __get__
  2985. return self.impl.get(instance_state(instance), dict_)
  2986. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/attributes.py", line 579, in get
  2987. value = state._load_expired(state, passive)
  2988. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/state.py", line 592, in _load_expired
  2989. self.manager.deferred_scalar_loader(self, toload)
  2990. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/loading.py", line 698, in load_scalar_attributes
  2991. only_load_props=attribute_names)
  2992. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/loading.py", line 223, in load_on_ident
  2993. return q.one()
  2994. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/query.py", line 2814, in one
  2995. ret = self.one_or_none()
  2996. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/query.py", line 2784, in one_or_none
  2997. ret = list(self)
  2998. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/query.py", line 2855, in __iter__
  2999. return self._execute_and_instances(context)
  3000. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/query.py", line 2878, in _execute_and_instances
  3001. result = conn.execute(querycontext.statement, self._params)
  3002. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/engine/base.py", line 945, in execute
  3003. return meth(self, multiparams, params)
  3004. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/sql/elements.py", line 263, in _execute_on_connection
  3005. return connection._execute_clauseelement(self, multiparams, params)
  3006. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/engine/base.py", line 1053, in _execute_clauseelement
  3007. compiled_sql, distilled_params
  3008. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/engine/base.py", line 1189, in _execute_context
  3009. context)
  3010. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/engine/base.py", line 1402, in _handle_dbapi_exception
  3011. exc_info
  3012. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/util/compat.py", line 203, in raise_from_cause
  3013. reraise(type(exception), exception, tb=exc_tb, cause=cause)
  3014. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/util/compat.py", line 186, in reraise
  3015. raise value.with_traceback(tb)
  3016. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/engine/base.py", line 1182, in _execute_context
  3017. context)
  3018. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/engine/default.py", line 470, in do_execute
  3019. cursor.execute(statement, parameters)
  3020. sqlalchemy.exc.OperationalError: (sqlite3.OperationalError) database is locked [SQL: 'SELECT users.id AS users_id, users.name AS users_name, users.admin AS users_admin, users.last_activity AS users_last_activity, users.cookie_id AS users_cookie_id, users.state AS users_state, users.auth_state AS users_auth_state \nFROM users \nWHERE users.id = ?'] [parameters: (10,)]
  3021.  
  3022. During handling of the above exception, another exception occurred:
  3023.  
  3024. Traceback (most recent call last):
  3025. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/engine/base.py", line 1182, in _execute_context
  3026. context)
  3027. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/engine/default.py", line 470, in do_execute
  3028. cursor.execute(statement, parameters)
  3029. sqlite3.OperationalError: database is locked
  3030.  
  3031. The above exception was the direct cause of the following exception:
  3032.  
  3033. Traceback (most recent call last):
  3034. File "/Users/carol/code/jhub/jupyterhub/jupyterhub/user.py", line 401, in stop
  3035. auth.post_spawn_stop(self, spawner)
  3036. File "/Users/carol/code/jhub/jupyterhub/jupyterhub/auth.py", line 552, in post_spawn_stop
  3037. pamela.close_session(user.name, service=self.service)
  3038. File "/Users/carol/code/jhub/jupyterhub/jupyterhub/user.py", line 146, in __getattr__
  3039. if hasattr(self.orm_user, attr):
  3040. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/attributes.py", line 237, in __get__
  3041. return self.impl.get(instance_state(instance), dict_)
  3042. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/attributes.py", line 579, in get
  3043. value = state._load_expired(state, passive)
  3044. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/state.py", line 592, in _load_expired
  3045. self.manager.deferred_scalar_loader(self, toload)
  3046. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/loading.py", line 698, in load_scalar_attributes
  3047. only_load_props=attribute_names)
  3048. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/loading.py", line 223, in load_on_ident
  3049. return q.one()
  3050. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/query.py", line 2814, in one
  3051. ret = self.one_or_none()
  3052. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/query.py", line 2784, in one_or_none
  3053. ret = list(self)
  3054. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/query.py", line 2855, in __iter__
  3055. return self._execute_and_instances(context)
  3056. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/query.py", line 2878, in _execute_and_instances
  3057. result = conn.execute(querycontext.statement, self._params)
  3058. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/engine/base.py", line 945, in execute
  3059. return meth(self, multiparams, params)
  3060. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/sql/elements.py", line 263, in _execute_on_connection
  3061. return connection._execute_clauseelement(self, multiparams, params)
  3062. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/engine/base.py", line 1053, in _execute_clauseelement
  3063. compiled_sql, distilled_params
  3064. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/engine/base.py", line 1189, in _execute_context
  3065. context)
  3066. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/engine/base.py", line 1402, in _handle_dbapi_exception
  3067. exc_info
  3068. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/util/compat.py", line 203, in raise_from_cause
  3069. reraise(type(exception), exception, tb=exc_tb, cause=cause)
  3070. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/util/compat.py", line 186, in reraise
  3071. raise value.with_traceback(tb)
  3072. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/engine/base.py", line 1182, in _execute_context
  3073. context)
  3074. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/engine/default.py", line 470, in do_execute
  3075. cursor.execute(statement, parameters)
  3076. sqlalchemy.exc.OperationalError: (sqlite3.OperationalError) database is locked [SQL: 'SELECT users.id AS users_id, users.name AS users_name, users.admin AS users_admin, users.last_activity AS users_last_activity, users.cookie_id AS users_cookie_id, users.state AS users_state, users.auth_state AS users_auth_state \nFROM users \nWHERE users.id = ?'] [parameters: (10,)]
  3077.  
  3078. During handling of the above exception, another exception occurred:
  3079.  
  3080. Traceback (most recent call last):
  3081. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/engine/base.py", line 1182, in _execute_context
  3082. context)
  3083. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/engine/default.py", line 470, in do_execute
  3084. cursor.execute(statement, parameters)
  3085. sqlite3.OperationalError: database is locked
  3086.  
  3087. The above exception was the direct cause of the following exception:
  3088.  
  3089. Traceback (most recent call last):
  3090. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/logging/__init__.py", line 992, in emit
  3091. msg = self.format(record)
  3092. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/logging/__init__.py", line 838, in format
  3093. return fmt.format(record)
  3094. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/logging/__init__.py", line 575, in format
  3095. record.message = record.getMessage()
  3096. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/logging/__init__.py", line 338, in getMessage
  3097. msg = msg % self.args
  3098. File "/Users/carol/code/jhub/jupyterhub/jupyterhub/user.py", line 158, in __repr__
  3099. return repr(self.orm_user)
  3100. File "/Users/carol/code/jhub/jupyterhub/jupyterhub/orm.py", line 152, in __repr__
  3101. if self.servers:
  3102. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/ext/associationproxy.py", line 515, in __bool__
  3103. return bool(self.col)
  3104. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/ext/associationproxy.py", line 509, in <lambda>
  3105. col = property(lambda self: self.lazy_collection())
  3106. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/ext/associationproxy.py", line 467, in __call__
  3107. return getattr(obj, self.target)
  3108. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/attributes.py", line 237, in __get__
  3109. return self.impl.get(instance_state(instance), dict_)
  3110. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/attributes.py", line 584, in get
  3111. value = self.callable_(state, passive)
  3112. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/strategies.py", line 557, in _load_for_state
  3113. return self._emit_lazyload(session, state, ident_key, passive)
  3114. File "<string>", line 1, in <lambda>
  3115. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/strategies.py", line 621, in _emit_lazyload
  3116. state, passive=passive)
  3117. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/strategies.py", line 490, in _generate_lazy_clause
  3118. state, dict_, ident, passive)
  3119. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/mapper.py", line 2564, in _get_state_attr_by_column
  3120. return state.manager[prop.key].impl.get(state, dict_, passive=passive)
  3121. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/attributes.py", line 579, in get
  3122. value = state._load_expired(state, passive)
  3123. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/state.py", line 592, in _load_expired
  3124. self.manager.deferred_scalar_loader(self, toload)
  3125. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/loading.py", line 698, in load_scalar_attributes
  3126. only_load_props=attribute_names)
  3127. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/loading.py", line 223, in load_on_ident
  3128. return q.one()
  3129. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/query.py", line 2814, in one
  3130. ret = self.one_or_none()
  3131. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/query.py", line 2784, in one_or_none
  3132. ret = list(self)
  3133. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/query.py", line 2855, in __iter__
  3134. return self._execute_and_instances(context)
  3135. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/query.py", line 2878, in _execute_and_instances
  3136. result = conn.execute(querycontext.statement, self._params)
  3137. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/engine/base.py", line 945, in execute
  3138. return meth(self, multiparams, params)
  3139. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/sql/elements.py", line 263, in _execute_on_connection
  3140. return connection._execute_clauseelement(self, multiparams, params)
  3141. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/engine/base.py", line 1053, in _execute_clauseelement
  3142. compiled_sql, distilled_params
  3143. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/engine/base.py", line 1189, in _execute_context
  3144. context)
  3145. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/engine/base.py", line 1402, in _handle_dbapi_exception
  3146. exc_info
  3147. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/util/compat.py", line 203, in raise_from_cause
  3148. reraise(type(exception), exception, tb=exc_tb, cause=cause)
  3149. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/util/compat.py", line 186, in reraise
  3150. raise value.with_traceback(tb)
  3151. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/engine/base.py", line 1182, in _execute_context
  3152. context)
  3153. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/engine/default.py", line 470, in do_execute
  3154. cursor.execute(statement, parameters)
  3155. sqlalchemy.exc.OperationalError: (sqlite3.OperationalError) database is locked [SQL: 'SELECT users.id AS users_id, users.name AS users_name, users.admin AS users_admin, users.last_activity AS users_last_activity, users.cookie_id AS users_cookie_id, users.state AS users_state, users.auth_state AS users_auth_state \nFROM users \nWHERE users.id = ?'] [parameters: (10,)]
  3156. Call stack:
  3157. File "/Users/carol/.pyenv/versions/3.6.1/bin/pytest", line 11, in <module>
  3158. sys.exit(main())
  3159. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/config.py", line 58, in main
  3160. return config.hook.pytest_cmdline_main(config=config)
  3161. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/vendored_packages/pluggy.py", line 745, in __call__
  3162. return self._hookexec(self, self._nonwrappers + self._wrappers, kwargs)
  3163. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/vendored_packages/pluggy.py", line 339, in _hookexec
  3164. return self._inner_hookexec(hook, methods, kwargs)
  3165. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/vendored_packages/pluggy.py", line 334, in <lambda>
  3166. _MultiCall(methods, kwargs, hook.spec_opts).execute()
  3167. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/vendored_packages/pluggy.py", line 614, in execute
  3168. res = hook_impl.function(*args)
  3169. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/main.py", line 134, in pytest_cmdline_main
  3170. return wrap_session(config, _main)
  3171. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/main.py", line 105, in wrap_session
  3172. session.exitstatus = doit(config, session) or 0
  3173. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/main.py", line 141, in _main
  3174. config.hook.pytest_runtestloop(session=session)
  3175. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/vendored_packages/pluggy.py", line 745, in __call__
  3176. return self._hookexec(self, self._nonwrappers + self._wrappers, kwargs)
  3177. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/vendored_packages/pluggy.py", line 339, in _hookexec
  3178. return self._inner_hookexec(hook, methods, kwargs)
  3179. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/vendored_packages/pluggy.py", line 334, in <lambda>
  3180. _MultiCall(methods, kwargs, hook.spec_opts).execute()
  3181. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/vendored_packages/pluggy.py", line 614, in execute
  3182. res = hook_impl.function(*args)
  3183. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/main.py", line 164, in pytest_runtestloop
  3184. item.config.hook.pytest_runtest_protocol(item=item, nextitem=nextitem)
  3185. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/vendored_packages/pluggy.py", line 745, in __call__
  3186. return self._hookexec(self, self._nonwrappers + self._wrappers, kwargs)
  3187. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/vendored_packages/pluggy.py", line 339, in _hookexec
  3188. return self._inner_hookexec(hook, methods, kwargs)
  3189. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/vendored_packages/pluggy.py", line 334, in <lambda>
  3190. _MultiCall(methods, kwargs, hook.spec_opts).execute()
  3191. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/vendored_packages/pluggy.py", line 613, in execute
  3192. return _wrapped_call(hook_impl.function(*args), self.execute)
  3193. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/vendored_packages/pluggy.py", line 248, in _wrapped_call
  3194. call_outcome = _CallOutcome(func)
  3195. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/vendored_packages/pluggy.py", line 265, in __init__
  3196. self.result = func()
  3197. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/vendored_packages/pluggy.py", line 613, in execute
  3198. return _wrapped_call(hook_impl.function(*args), self.execute)
  3199. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/vendored_packages/pluggy.py", line 248, in _wrapped_call
  3200. call_outcome = _CallOutcome(func)
  3201. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/vendored_packages/pluggy.py", line 265, in __init__
  3202. self.result = func()
  3203. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/vendored_packages/pluggy.py", line 614, in execute
  3204. res = hook_impl.function(*args)
  3205. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/runner.py", line 60, in pytest_runtest_protocol
  3206. runtestprotocol(item, nextitem=nextitem)
  3207. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/runner.py", line 75, in runtestprotocol
  3208. nextitem=nextitem))
  3209. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/runner.py", line 127, in call_and_report
  3210. call = call_runtest_hook(item, when, **kwds)
  3211. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/runner.py", line 145, in call_runtest_hook
  3212. return CallInfo(lambda: ihook(item=item, **kwds), when=when)
  3213. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/runner.py", line 157, in __init__
  3214. self.result = func()
  3215. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/runner.py", line 145, in <lambda>
  3216. return CallInfo(lambda: ihook(item=item, **kwds), when=when)
  3217. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/vendored_packages/pluggy.py", line 745, in __call__
  3218. return self._hookexec(self, self._nonwrappers + self._wrappers, kwargs)
  3219. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/vendored_packages/pluggy.py", line 339, in _hookexec
  3220. return self._inner_hookexec(hook, methods, kwargs)
  3221. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/vendored_packages/pluggy.py", line 334, in <lambda>
  3222. _MultiCall(methods, kwargs, hook.spec_opts).execute()
  3223. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/vendored_packages/pluggy.py", line 613, in execute
  3224. return _wrapped_call(hook_impl.function(*args), self.execute)
  3225. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/vendored_packages/pluggy.py", line 248, in _wrapped_call
  3226. call_outcome = _CallOutcome(func)
  3227. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/vendored_packages/pluggy.py", line 265, in __init__
  3228. self.result = func()
  3229. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/vendored_packages/pluggy.py", line 614, in execute
  3230. res = hook_impl.function(*args)
  3231. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/runner.py", line 110, in pytest_runtest_teardown
  3232. item.session._setupstate.teardown_exact(item, nextitem)
  3233. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/runner.py", line 428, in teardown_exact
  3234. self._teardown_towards(needed_collectors)
  3235. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/runner.py", line 434, in _teardown_towards
  3236. self._pop_and_teardown()
  3237. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/runner.py", line 394, in _pop_and_teardown
  3238. self._teardown_with_finalization(colitem)
  3239. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/runner.py", line 412, in _teardown_with_finalization
  3240. self._callfinalizers(colitem)
  3241. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/runner.py", line 402, in _callfinalizers
  3242. fin()
  3243. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/fixtures.py", line 741, in finish
  3244. func()
  3245. File "/Users/carol/code/jhub/jupyterhub/jupyterhub/tests/conftest.py", line 60, in fin
  3246. mocked_app.stop()
  3247. File "/Users/carol/code/jhub/jupyterhub/jupyterhub/tests/mocking.py", line 194, in stop
  3248. IOLoop().run_sync(self.cleanup)
  3249. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/tornado/ioloop.py", line 453, in run_sync
  3250. self.start()
  3251. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/zmq/eventloop/ioloop.py", line 177, in start
  3252. super(ZMQIOLoop, self).start()
  3253. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/tornado/ioloop.py", line 832, in start
  3254. self._run_callback(self._callbacks.popleft())
  3255. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/tornado/ioloop.py", line 605, in _run_callback
  3256. ret = callback()
  3257. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/tornado/stack_context.py", line 277, in null_wrapper
  3258. return fn(*args, **kwargs)
  3259. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/tornado/ioloop.py", line 436, in run
  3260. result = func()
  3261. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/tornado/gen.py", line 307, in wrapper
  3262. yielded = next(result)
  3263. File "/Users/carol/code/jhub/jupyterhub/jupyterhub/app.py", line 1319, in cleanup
  3264. futures.append(user.stop())
  3265. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/tornado/gen.py", line 319, in wrapper
  3266. _futures_to_runners[future] = Runner(result, future, yielded)
  3267. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/tornado/gen.py", line 1003, in __init__
  3268. self.run()
  3269. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/tornado/gen.py", line 1069, in run
  3270. yielded = self.gen.send(value)
  3271. File "/Users/carol/code/jhub/jupyterhub/jupyterhub/user.py", line 404, in stop
  3272. self.log.exception("Error in Authenticator.post_spawn_stop for %s", self)
  3273. Unable to print the message and arguments - possible formatting error.
  3274. Use the traceback above to help find the error.
  3275. --- Logging error ---
  3276. Traceback (most recent call last):
  3277. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/engine/base.py", line 1182, in _execute_context
  3278. context)
  3279. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/engine/default.py", line 470, in do_execute
  3280. cursor.execute(statement, parameters)
  3281. sqlite3.OperationalError: database is locked
  3282.  
  3283. The above exception was the direct cause of the following exception:
  3284.  
  3285. Traceback (most recent call last):
  3286. File "/Users/carol/code/jhub/jupyterhub/jupyterhub/user.py", line 382, in stop
  3287. self.state = spawner.get_state()
  3288. File "/Users/carol/code/jhub/jupyterhub/jupyterhub/user.py", line 152, in __setattr__
  3289. if not attr.startswith('_') and self.orm_user and hasattr(self.orm_user, attr):
  3290. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/attributes.py", line 237, in __get__
  3291. return self.impl.get(instance_state(instance), dict_)
  3292. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/attributes.py", line 579, in get
  3293. value = state._load_expired(state, passive)
  3294. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/state.py", line 592, in _load_expired
  3295. self.manager.deferred_scalar_loader(self, toload)
  3296. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/loading.py", line 698, in load_scalar_attributes
  3297. only_load_props=attribute_names)
  3298. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/loading.py", line 223, in load_on_ident
  3299. return q.one()
  3300. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/query.py", line 2814, in one
  3301. ret = self.one_or_none()
  3302. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/query.py", line 2784, in one_or_none
  3303. ret = list(self)
  3304. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/query.py", line 2855, in __iter__
  3305. return self._execute_and_instances(context)
  3306. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/query.py", line 2878, in _execute_and_instances
  3307. result = conn.execute(querycontext.statement, self._params)
  3308. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/engine/base.py", line 945, in execute
  3309. return meth(self, multiparams, params)
  3310. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/sql/elements.py", line 263, in _execute_on_connection
  3311. return connection._execute_clauseelement(self, multiparams, params)
  3312. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/engine/base.py", line 1053, in _execute_clauseelement
  3313. compiled_sql, distilled_params
  3314. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/engine/base.py", line 1189, in _execute_context
  3315. context)
  3316. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/engine/base.py", line 1402, in _handle_dbapi_exception
  3317. exc_info
  3318. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/util/compat.py", line 203, in raise_from_cause
  3319. reraise(type(exception), exception, tb=exc_tb, cause=cause)
  3320. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/util/compat.py", line 186, in reraise
  3321. raise value.with_traceback(tb)
  3322. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/engine/base.py", line 1182, in _execute_context
  3323. context)
  3324. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/engine/default.py", line 470, in do_execute
  3325. cursor.execute(statement, parameters)
  3326. sqlalchemy.exc.OperationalError: (sqlite3.OperationalError) database is locked [SQL: 'SELECT users.id AS users_id, users.name AS users_name, users.admin AS users_admin, users.last_activity AS users_last_activity, users.cookie_id AS users_cookie_id, users.state AS users_state, users.auth_state AS users_auth_state \nFROM users \nWHERE users.id = ?'] [parameters: (11,)]
  3327.  
  3328. During handling of the above exception, another exception occurred:
  3329.  
  3330. Traceback (most recent call last):
  3331. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/engine/base.py", line 1182, in _execute_context
  3332. context)
  3333. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/engine/default.py", line 470, in do_execute
  3334. cursor.execute(statement, parameters)
  3335. sqlite3.OperationalError: database is locked
  3336.  
  3337. The above exception was the direct cause of the following exception:
  3338.  
  3339. Traceback (most recent call last):
  3340. File "/Users/carol/code/jhub/jupyterhub/jupyterhub/user.py", line 401, in stop
  3341. auth.post_spawn_stop(self, spawner)
  3342. File "/Users/carol/code/jhub/jupyterhub/jupyterhub/auth.py", line 552, in post_spawn_stop
  3343. pamela.close_session(user.name, service=self.service)
  3344. File "/Users/carol/code/jhub/jupyterhub/jupyterhub/user.py", line 146, in __getattr__
  3345. if hasattr(self.orm_user, attr):
  3346. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/attributes.py", line 237, in __get__
  3347. return self.impl.get(instance_state(instance), dict_)
  3348. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/attributes.py", line 579, in get
  3349. value = state._load_expired(state, passive)
  3350. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/state.py", line 592, in _load_expired
  3351. self.manager.deferred_scalar_loader(self, toload)
  3352. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/loading.py", line 698, in load_scalar_attributes
  3353. only_load_props=attribute_names)
  3354. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/loading.py", line 223, in load_on_ident
  3355. return q.one()
  3356. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/query.py", line 2814, in one
  3357. ret = self.one_or_none()
  3358. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/query.py", line 2784, in one_or_none
  3359. ret = list(self)
  3360. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/query.py", line 2855, in __iter__
  3361. return self._execute_and_instances(context)
  3362. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/query.py", line 2878, in _execute_and_instances
  3363. result = conn.execute(querycontext.statement, self._params)
  3364. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/engine/base.py", line 945, in execute
  3365. return meth(self, multiparams, params)
  3366. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/sql/elements.py", line 263, in _execute_on_connection
  3367. return connection._execute_clauseelement(self, multiparams, params)
  3368. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/engine/base.py", line 1053, in _execute_clauseelement
  3369. compiled_sql, distilled_params
  3370. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/engine/base.py", line 1189, in _execute_context
  3371. context)
  3372. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/engine/base.py", line 1402, in _handle_dbapi_exception
  3373. exc_info
  3374. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/util/compat.py", line 203, in raise_from_cause
  3375. reraise(type(exception), exception, tb=exc_tb, cause=cause)
  3376. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/util/compat.py", line 186, in reraise
  3377. raise value.with_traceback(tb)
  3378. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/engine/base.py", line 1182, in _execute_context
  3379. context)
  3380. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/engine/default.py", line 470, in do_execute
  3381. cursor.execute(statement, parameters)
  3382. sqlalchemy.exc.OperationalError: (sqlite3.OperationalError) database is locked [SQL: 'SELECT users.id AS users_id, users.name AS users_name, users.admin AS users_admin, users.last_activity AS users_last_activity, users.cookie_id AS users_cookie_id, users.state AS users_state, users.auth_state AS users_auth_state \nFROM users \nWHERE users.id = ?'] [parameters: (11,)]
  3383.  
  3384. During handling of the above exception, another exception occurred:
  3385.  
  3386. Traceback (most recent call last):
  3387. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/engine/base.py", line 1182, in _execute_context
  3388. context)
  3389. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/engine/default.py", line 470, in do_execute
  3390. cursor.execute(statement, parameters)
  3391. sqlite3.OperationalError: database is locked
  3392.  
  3393. The above exception was the direct cause of the following exception:
  3394.  
  3395. Traceback (most recent call last):
  3396. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/logging/__init__.py", line 992, in emit
  3397. msg = self.format(record)
  3398. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/logging/__init__.py", line 838, in format
  3399. return fmt.format(record)
  3400. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/logging/__init__.py", line 575, in format
  3401. record.message = record.getMessage()
  3402. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/logging/__init__.py", line 338, in getMessage
  3403. msg = msg % self.args
  3404. File "/Users/carol/code/jhub/jupyterhub/jupyterhub/user.py", line 158, in __repr__
  3405. return repr(self.orm_user)
  3406. File "/Users/carol/code/jhub/jupyterhub/jupyterhub/orm.py", line 152, in __repr__
  3407. if self.servers:
  3408. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/ext/associationproxy.py", line 515, in __bool__
  3409. return bool(self.col)
  3410. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/ext/associationproxy.py", line 509, in <lambda>
  3411. col = property(lambda self: self.lazy_collection())
  3412. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/ext/associationproxy.py", line 467, in __call__
  3413. return getattr(obj, self.target)
  3414. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/attributes.py", line 237, in __get__
  3415. return self.impl.get(instance_state(instance), dict_)
  3416. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/attributes.py", line 584, in get
  3417. value = self.callable_(state, passive)
  3418. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/strategies.py", line 557, in _load_for_state
  3419. return self._emit_lazyload(session, state, ident_key, passive)
  3420. File "<string>", line 1, in <lambda>
  3421. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/strategies.py", line 621, in _emit_lazyload
  3422. state, passive=passive)
  3423. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/strategies.py", line 490, in _generate_lazy_clause
  3424. state, dict_, ident, passive)
  3425. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/mapper.py", line 2564, in _get_state_attr_by_column
  3426. return state.manager[prop.key].impl.get(state, dict_, passive=passive)
  3427. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/attributes.py", line 579, in get
  3428. value = state._load_expired(state, passive)
  3429. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/state.py", line 592, in _load_expired
  3430. self.manager.deferred_scalar_loader(self, toload)
  3431. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/loading.py", line 698, in load_scalar_attributes
  3432. only_load_props=attribute_names)
  3433. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/loading.py", line 223, in load_on_ident
  3434. return q.one()
  3435. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/query.py", line 2814, in one
  3436. ret = self.one_or_none()
  3437. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/query.py", line 2784, in one_or_none
  3438. ret = list(self)
  3439. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/query.py", line 2855, in __iter__
  3440. return self._execute_and_instances(context)
  3441. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/query.py", line 2878, in _execute_and_instances
  3442. result = conn.execute(querycontext.statement, self._params)
  3443. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/engine/base.py", line 945, in execute
  3444. return meth(self, multiparams, params)
  3445. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/sql/elements.py", line 263, in _execute_on_connection
  3446. return connection._execute_clauseelement(self, multiparams, params)
  3447. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/engine/base.py", line 1053, in _execute_clauseelement
  3448. compiled_sql, distilled_params
  3449. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/engine/base.py", line 1189, in _execute_context
  3450. context)
  3451. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/engine/base.py", line 1402, in _handle_dbapi_exception
  3452. exc_info
  3453. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/util/compat.py", line 203, in raise_from_cause
  3454. reraise(type(exception), exception, tb=exc_tb, cause=cause)
  3455. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/util/compat.py", line 186, in reraise
  3456. raise value.with_traceback(tb)
  3457. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/engine/base.py", line 1182, in _execute_context
  3458. context)
  3459. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/engine/default.py", line 470, in do_execute
  3460. cursor.execute(statement, parameters)
  3461. sqlalchemy.exc.OperationalError: (sqlite3.OperationalError) database is locked [SQL: 'SELECT users.id AS users_id, users.name AS users_name, users.admin AS users_admin, users.last_activity AS users_last_activity, users.cookie_id AS users_cookie_id, users.state AS users_state, users.auth_state AS users_auth_state \nFROM users \nWHERE users.id = ?'] [parameters: (11,)]
  3462. Call stack:
  3463. File "/Users/carol/.pyenv/versions/3.6.1/bin/pytest", line 11, in <module>
  3464. sys.exit(main())
  3465. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/config.py", line 58, in main
  3466. return config.hook.pytest_cmdline_main(config=config)
  3467. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/vendored_packages/pluggy.py", line 745, in __call__
  3468. return self._hookexec(self, self._nonwrappers + self._wrappers, kwargs)
  3469. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/vendored_packages/pluggy.py", line 339, in _hookexec
  3470. return self._inner_hookexec(hook, methods, kwargs)
  3471. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/vendored_packages/pluggy.py", line 334, in <lambda>
  3472. _MultiCall(methods, kwargs, hook.spec_opts).execute()
  3473. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/vendored_packages/pluggy.py", line 614, in execute
  3474. res = hook_impl.function(*args)
  3475. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/main.py", line 134, in pytest_cmdline_main
  3476. return wrap_session(config, _main)
  3477. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/main.py", line 105, in wrap_session
  3478. session.exitstatus = doit(config, session) or 0
  3479. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/main.py", line 141, in _main
  3480. config.hook.pytest_runtestloop(session=session)
  3481. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/vendored_packages/pluggy.py", line 745, in __call__
  3482. return self._hookexec(self, self._nonwrappers + self._wrappers, kwargs)
  3483. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/vendored_packages/pluggy.py", line 339, in _hookexec
  3484. return self._inner_hookexec(hook, methods, kwargs)
  3485. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/vendored_packages/pluggy.py", line 334, in <lambda>
  3486. _MultiCall(methods, kwargs, hook.spec_opts).execute()
  3487. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/vendored_packages/pluggy.py", line 614, in execute
  3488. res = hook_impl.function(*args)
  3489. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/main.py", line 164, in pytest_runtestloop
  3490. item.config.hook.pytest_runtest_protocol(item=item, nextitem=nextitem)
  3491. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/vendored_packages/pluggy.py", line 745, in __call__
  3492. return self._hookexec(self, self._nonwrappers + self._wrappers, kwargs)
  3493. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/vendored_packages/pluggy.py", line 339, in _hookexec
  3494. return self._inner_hookexec(hook, methods, kwargs)
  3495. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/vendored_packages/pluggy.py", line 334, in <lambda>
  3496. _MultiCall(methods, kwargs, hook.spec_opts).execute()
  3497. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/vendored_packages/pluggy.py", line 613, in execute
  3498. return _wrapped_call(hook_impl.function(*args), self.execute)
  3499. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/vendored_packages/pluggy.py", line 248, in _wrapped_call
  3500. call_outcome = _CallOutcome(func)
  3501. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/vendored_packages/pluggy.py", line 265, in __init__
  3502. self.result = func()
  3503. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/vendored_packages/pluggy.py", line 613, in execute
  3504. return _wrapped_call(hook_impl.function(*args), self.execute)
  3505. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/vendored_packages/pluggy.py", line 248, in _wrapped_call
  3506. call_outcome = _CallOutcome(func)
  3507. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/vendored_packages/pluggy.py", line 265, in __init__
  3508. self.result = func()
  3509. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/vendored_packages/pluggy.py", line 614, in execute
  3510. res = hook_impl.function(*args)
  3511. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/runner.py", line 60, in pytest_runtest_protocol
  3512. runtestprotocol(item, nextitem=nextitem)
  3513. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/runner.py", line 75, in runtestprotocol
  3514. nextitem=nextitem))
  3515. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/runner.py", line 127, in call_and_report
  3516. call = call_runtest_hook(item, when, **kwds)
  3517. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/runner.py", line 145, in call_runtest_hook
  3518. return CallInfo(lambda: ihook(item=item, **kwds), when=when)
  3519. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/runner.py", line 157, in __init__
  3520. self.result = func()
  3521. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/runner.py", line 145, in <lambda>
  3522. return CallInfo(lambda: ihook(item=item, **kwds), when=when)
  3523. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/vendored_packages/pluggy.py", line 745, in __call__
  3524. return self._hookexec(self, self._nonwrappers + self._wrappers, kwargs)
  3525. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/vendored_packages/pluggy.py", line 339, in _hookexec
  3526. return self._inner_hookexec(hook, methods, kwargs)
  3527. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/vendored_packages/pluggy.py", line 334, in <lambda>
  3528. _MultiCall(methods, kwargs, hook.spec_opts).execute()
  3529. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/vendored_packages/pluggy.py", line 613, in execute
  3530. return _wrapped_call(hook_impl.function(*args), self.execute)
  3531. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/vendored_packages/pluggy.py", line 248, in _wrapped_call
  3532. call_outcome = _CallOutcome(func)
  3533. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/vendored_packages/pluggy.py", line 265, in __init__
  3534. self.result = func()
  3535. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/vendored_packages/pluggy.py", line 614, in execute
  3536. res = hook_impl.function(*args)
  3537. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/runner.py", line 110, in pytest_runtest_teardown
  3538. item.session._setupstate.teardown_exact(item, nextitem)
  3539. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/runner.py", line 428, in teardown_exact
  3540. self._teardown_towards(needed_collectors)
  3541. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/runner.py", line 434, in _teardown_towards
  3542. self._pop_and_teardown()
  3543. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/runner.py", line 394, in _pop_and_teardown
  3544. self._teardown_with_finalization(colitem)
  3545. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/runner.py", line 412, in _teardown_with_finalization
  3546. self._callfinalizers(colitem)
  3547. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/runner.py", line 402, in _callfinalizers
  3548. fin()
  3549. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/_pytest/fixtures.py", line 741, in finish
  3550. func()
  3551. File "/Users/carol/code/jhub/jupyterhub/jupyterhub/tests/conftest.py", line 60, in fin
  3552. mocked_app.stop()
  3553. File "/Users/carol/code/jhub/jupyterhub/jupyterhub/tests/mocking.py", line 194, in stop
  3554. IOLoop().run_sync(self.cleanup)
  3555. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/tornado/ioloop.py", line 453, in run_sync
  3556. self.start()
  3557. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/zmq/eventloop/ioloop.py", line 177, in start
  3558. super(ZMQIOLoop, self).start()
  3559. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/tornado/ioloop.py", line 832, in start
  3560. self._run_callback(self._callbacks.popleft())
  3561. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/tornado/ioloop.py", line 605, in _run_callback
  3562. ret = callback()
  3563. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/tornado/stack_context.py", line 277, in null_wrapper
  3564. return fn(*args, **kwargs)
  3565. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/tornado/ioloop.py", line 436, in run
  3566. result = func()
  3567. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/tornado/gen.py", line 307, in wrapper
  3568. yielded = next(result)
  3569. File "/Users/carol/code/jhub/jupyterhub/jupyterhub/app.py", line 1319, in cleanup
  3570. futures.append(user.stop())
  3571. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/tornado/gen.py", line 319, in wrapper
  3572. _futures_to_runners[future] = Runner(result, future, yielded)
  3573. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/tornado/gen.py", line 1003, in __init__
  3574. self.run()
  3575. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/tornado/gen.py", line 1069, in run
  3576. yielded = self.gen.send(value)
  3577. File "/Users/carol/code/jhub/jupyterhub/jupyterhub/user.py", line 404, in stop
  3578. self.log.exception("Error in Authenticator.post_spawn_stop for %s", self)
  3579. Unable to print the message and arguments - possible formatting error.
  3580. Use the traceback above to help find the error.
  3581. Failed to stop user: (sqlite3.OperationalError) database is locked [SQL: 'SELECT users.id AS users_id, users.name AS users_name, users.admin AS users_admin, users.last_activity AS users_last_activity, users.cookie_id AS users_cookie_id, users.state AS users_state, users.auth_state AS users_auth_state \nFROM users \nWHERE users.id = ?'] [parameters: (1,)]
  3582. Failed to stop user: (sqlite3.OperationalError) database is locked [SQL: 'SELECT users.id AS users_id, users.name AS users_name, users.admin AS users_admin, users.last_activity AS users_last_activity, users.cookie_id AS users_cookie_id, users.state AS users_state, users.auth_state AS users_auth_state \nFROM users \nWHERE users.id = ?'] [parameters: (2,)]
  3583. Failed to stop user: (sqlite3.OperationalError) database is locked [SQL: 'SELECT users.id AS users_id, users.name AS users_name, users.admin AS users_admin, users.last_activity AS users_last_activity, users.cookie_id AS users_cookie_id, users.state AS users_state, users.auth_state AS users_auth_state \nFROM users \nWHERE users.id = ?'] [parameters: (3,)]
  3584. Failed to stop user: (sqlite3.OperationalError) database is locked [SQL: 'SELECT users.id AS users_id, users.name AS users_name, users.admin AS users_admin, users.last_activity AS users_last_activity, users.cookie_id AS users_cookie_id, users.state AS users_state, users.auth_state AS users_auth_state \nFROM users \nWHERE users.id = ?'] [parameters: (4,)]
  3585. Failed to stop user: (sqlite3.OperationalError) database is locked [SQL: 'SELECT users.id AS users_id, users.name AS users_name, users.admin AS users_admin, users.last_activity AS users_last_activity, users.cookie_id AS users_cookie_id, users.state AS users_state, users.auth_state AS users_auth_state \nFROM users \nWHERE users.id = ?'] [parameters: (5,)]
  3586. Failed to stop user: (sqlite3.OperationalError) database is locked [SQL: 'SELECT users.id AS users_id, users.name AS users_name, users.admin AS users_admin, users.last_activity AS users_last_activity, users.cookie_id AS users_cookie_id, users.state AS users_state, users.auth_state AS users_auth_state \nFROM users \nWHERE users.id = ?'] [parameters: (6,)]
  3587. Failed to stop user: (sqlite3.OperationalError) database is locked [SQL: 'SELECT users.id AS users_id, users.name AS users_name, users.admin AS users_admin, users.last_activity AS users_last_activity, users.cookie_id AS users_cookie_id, users.state AS users_state, users.auth_state AS users_auth_state \nFROM users \nWHERE users.id = ?'] [parameters: (7,)]
  3588. Failed to stop user: (sqlite3.OperationalError) database is locked [SQL: 'SELECT users.id AS users_id, users.name AS users_name, users.admin AS users_admin, users.last_activity AS users_last_activity, users.cookie_id AS users_cookie_id, users.state AS users_state, users.auth_state AS users_auth_state \nFROM users \nWHERE users.id = ?'] [parameters: (8,)]
  3589. Failed to stop user: (sqlite3.OperationalError) database is locked [SQL: 'SELECT users.id AS users_id, users.name AS users_name, users.admin AS users_admin, users.last_activity AS users_last_activity, users.cookie_id AS users_cookie_id, users.state AS users_state, users.auth_state AS users_auth_state \nFROM users \nWHERE users.id = ?'] [parameters: (9,)]
  3590. Failed to stop user: (sqlite3.OperationalError) database is locked [SQL: 'SELECT users.id AS users_id, users.name AS users_name, users.admin AS users_admin, users.last_activity AS users_last_activity, users.cookie_id AS users_cookie_id, users.state AS users_state, users.auth_state AS users_auth_state \nFROM users \nWHERE users.id = ?'] [parameters: (10,)]
  3591. Failed to stop user: (sqlite3.OperationalError) database is locked [SQL: 'SELECT users.id AS users_id, users.name AS users_name, users.admin AS users_admin, users.last_activity AS users_last_activity, users.cookie_id AS users_cookie_id, users.state AS users_state, users.auth_state AS users_auth_state \nFROM users \nWHERE users.id = ?'] [parameters: (11,)]
  3592. ============================================================ FAILURES =============================================================
  3593. _________________________________________________________ test_slow_spawn _________________________________________________________
  3594.  
  3595. self = <sqlalchemy.engine.base.Connection object at 0x10cff2be0>, autocommit = False
  3596.  
  3597. def _commit_impl(self, autocommit=False):
  3598. assert not self.__branch_from
  3599.  
  3600. if self._has_events or self.engine._has_events:
  3601. self.dispatch.commit(self)
  3602.  
  3603. if self._echo:
  3604. self.engine.logger.info("COMMIT")
  3605. try:
  3606. > self.engine.dialect.do_commit(self.connection)
  3607.  
  3608. ../../../.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/engine/base.py:721:
  3609. _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
  3610.  
  3611. self = <sqlalchemy.dialects.sqlite.pysqlite.SQLiteDialect_pysqlite object at 0x10c4105f8>
  3612. dbapi_connection = <sqlalchemy.pool._ConnectionFairy object at 0x10cff2550>
  3613.  
  3614. def do_commit(self, dbapi_connection):
  3615. > dbapi_connection.commit()
  3616. E sqlite3.OperationalError: database is locked
  3617.  
  3618. ../../../.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/engine/default.py:443: OperationalError
  3619.  
  3620. The above exception was the direct cause of the following exception:
  3621.  
  3622. app = <jupyterhub.tests.mocking.MockHub object at 0x10cdc3978>, io_loop = <zmq.eventloop.ioloop.ZMQIOLoop object at 0x10d0553c8>
  3623. no_patience = None, request = <FixtureRequest for <Function 'test_slow_spawn'>>
  3624.  
  3625. def test_slow_spawn(app, io_loop, no_patience, request):
  3626. patch = mock.patch.dict(app.tornado_settings, {'spawner_class': mocking.SlowSpawner})
  3627. patch.start()
  3628. request.addfinalizer(patch.stop)
  3629. db = app.db
  3630. name = 'zoe'
  3631. > user = add_user(db, app=app, name=name)
  3632.  
  3633. jupyterhub/tests/test_api.py:454:
  3634. _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
  3635. jupyterhub/tests/test_api.py:66: in add_user
  3636. db.commit()
  3637. ../../../.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/session.py:906: in commit
  3638. self.transaction.commit()
  3639. ../../../.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/session.py:465: in commit
  3640. t[1].commit()
  3641. ../../../.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/engine/base.py:1632: in commit
  3642. self._do_commit()
  3643. ../../../.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/engine/base.py:1663: in _do_commit
  3644. self.connection._commit_impl()
  3645. ../../../.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/engine/base.py:723: in _commit_impl
  3646. self._handle_dbapi_exception(e, None, None, None, None)
  3647. ../../../.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/engine/base.py:1402: in _handle_dbapi_exception
  3648. exc_info
  3649. ../../../.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/util/compat.py:203: in raise_from_cause
  3650. reraise(type(exception), exception, tb=exc_tb, cause=cause)
  3651. ../../../.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/util/compat.py:186: in reraise
  3652. raise value.with_traceback(tb)
  3653. ../../../.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/engine/base.py:721: in _commit_impl
  3654. self.engine.dialect.do_commit(self.connection)
  3655. _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
  3656.  
  3657. self = <sqlalchemy.dialects.sqlite.pysqlite.SQLiteDialect_pysqlite object at 0x10c4105f8>
  3658. dbapi_connection = <sqlalchemy.pool._ConnectionFairy object at 0x10cff2550>
  3659.  
  3660. def do_commit(self, dbapi_connection):
  3661. > dbapi_connection.commit()
  3662. E sqlalchemy.exc.OperationalError: (sqlite3.OperationalError) database is locked
  3663.  
  3664. ../../../.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/engine/default.py:443: OperationalError
  3665. ------------------------------------------------------ Captured stdout call -------------------------------------------------------
  3666. 08:55:44.137 - info: [ConfigProxy] 200 GET /api/routes
  3667. ------------------------------------------------------ Captured stderr call -------------------------------------------------------
  3668. [D 55:44.135 MockHub proxy:519] Proxy: Fetching GET http://127.0.0.1:8001/api/routes
  3669. ---------------------------------------------------- Captured stderr teardown -----------------------------------------------------
  3670. [E 55:44.699 MockHub ioloop:638] Exception in callback functools.partial(<function wrap.<locals>.null_wrapper at 0x10d05c378>, <tornado.concurrent.Future object at 0x10d064eb8>)
  3671. Traceback (most recent call last):
  3672. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/tornado/ioloop.py", line 605, in _run_callback
  3673. ret = callback()
  3674. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/tornado/stack_context.py", line 277, in null_wrapper
  3675. return fn(*args, **kwargs)
  3676. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/tornado/ioloop.py", line 626, in _discard_future_result
  3677. future.result()
  3678. File "/Users/carol/code/jhub/jupyterhub/jupyterhub/app.py", line 1410, in update_last_activity
  3679. yield self.proxy.check_routes(self.users, self._service_map, routes)
  3680. File "/Users/carol/code/jhub/jupyterhub/jupyterhub/proxy.py", line 299, in check_routes
  3681. for orm_user in db.query(User):
  3682. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/query.py", line 2855, in __iter__
  3683. return self._execute_and_instances(context)
  3684. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/query.py", line 2878, in _execute_and_instances
  3685. result = conn.execute(querycontext.statement, self._params)
  3686. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/engine/base.py", line 945, in execute
  3687. return meth(self, multiparams, params)
  3688. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/sql/elements.py", line 263, in _execute_on_connection
  3689. return connection._execute_clauseelement(self, multiparams, params)
  3690. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/engine/base.py", line 1053, in _execute_clauseelement
  3691. compiled_sql, distilled_params
  3692. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/engine/base.py", line 1189, in _execute_context
  3693. context)
  3694. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/engine/base.py", line 1402, in _handle_dbapi_exception
  3695. exc_info
  3696. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/util/compat.py", line 203, in raise_from_cause
  3697. reraise(type(exception), exception, tb=exc_tb, cause=cause)
  3698. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/util/compat.py", line 186, in reraise
  3699. raise value.with_traceback(tb)
  3700. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/engine/base.py", line 1182, in _execute_context
  3701. context)
  3702. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/engine/default.py", line 470, in do_execute
  3703. cursor.execute(statement, parameters)
  3704. sqlalchemy.exc.OperationalError: (sqlite3.OperationalError) database is locked [SQL: 'SELECT users.id AS users_id, users.name AS users_name, users.admin AS users_admin, users.last_activity AS users_last_activity, users.cookie_id AS users_cookie_id, users.state AS users_state, users.auth_state AS users_auth_state \nFROM users']
  3705.  
  3706. ________________________________________________________ test_never_spawn _________________________________________________________
  3707.  
  3708. app = <jupyterhub.tests.mocking.MockHub object at 0x10cdc3978>, io_loop = <zmq.eventloop.ioloop.ZMQIOLoop object at 0x10e23bcc0>
  3709. no_patience = None, request = <FixtureRequest for <Function 'test_never_spawn'>>
  3710.  
  3711. def test_never_spawn(app, io_loop, no_patience, request):
  3712. patch = mock.patch.dict(app.tornado_settings, {'spawner_class': mocking.NeverSpawner})
  3713. patch.start()
  3714. request.addfinalizer(patch.stop)
  3715.  
  3716. db = app.db
  3717. name = 'badger'
  3718. > user = add_user(db, app=app, name=name)
  3719.  
  3720. jupyterhub/tests/test_api.py:504:
  3721. _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
  3722. jupyterhub/tests/test_api.py:59: in add_user
  3723. orm_user = find_user(db, name=kwargs.get('name'))
  3724. jupyterhub/tests/test_api.py:54: in find_user
  3725. return db.query(orm.User).filter(orm.User.name == name).first()
  3726. ../../../.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/query.py:2755: in first
  3727. ret = list(self[0:1])
  3728. ../../../.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/query.py:2547: in __getitem__
  3729. return list(res)
  3730. ../../../.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/query.py:2855: in __iter__
  3731. return self._execute_and_instances(context)
  3732. ../../../.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/query.py:2876: in _execute_and_instances
  3733. close_with_result=True)
  3734. ../../../.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/query.py:2885: in _get_bind_args
  3735. **kw
  3736. ../../../.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/query.py:2867: in _connection_from_session
  3737. conn = self.session.connection(**kw)
  3738. ../../../.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/session.py:998: in connection
  3739. execution_options=execution_options)
  3740. ../../../.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/session.py:1003: in _connection_for_bind
  3741. engine, execution_options)
  3742. ../../../.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/session.py:382: in _connection_for_bind
  3743. self._assert_active()
  3744. _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
  3745.  
  3746. self = <sqlalchemy.orm.session.SessionTransaction object at 0x10cf2c7b8>, prepared_ok = False, rollback_ok = False
  3747. deactive_ok = False, closed_msg = 'This transaction is closed'
  3748.  
  3749. def _assert_active(self, prepared_ok=False,
  3750. rollback_ok=False,
  3751. deactive_ok=False,
  3752. closed_msg="This transaction is closed"):
  3753. if self._state is COMMITTED:
  3754. raise sa_exc.InvalidRequestError(
  3755. "This session is in 'committed' state; no further "
  3756. "SQL can be emitted within this transaction."
  3757. )
  3758. elif self._state is PREPARED:
  3759. if not prepared_ok:
  3760. raise sa_exc.InvalidRequestError(
  3761. > "This session is in 'prepared' state; no further "
  3762. "SQL can be emitted within this transaction."
  3763. E sqlalchemy.exc.InvalidRequestError: This session is in 'prepared' state; no further SQL can be emitted within this transaction.
  3764.  
  3765. ../../../.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/session.py:264: InvalidRequestError
  3766. _________________________________________________________ test_get_proxy __________________________________________________________
  3767.  
  3768. app = <jupyterhub.tests.mocking.MockHub object at 0x10cdc3978>, io_loop = <zmq.eventloop.ioloop.ZMQIOLoop object at 0x10e70edd8>
  3769.  
  3770. def test_get_proxy(app, io_loop):
  3771. > r = api_request(app, 'proxy')
  3772.  
  3773. jupyterhub/tests/test_api.py:522:
  3774. _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
  3775. jupyterhub/tests/test_api.py:40: in new_func
  3776. retval = func(app, *args, **kwargs)
  3777. jupyterhub/tests/test_api.py:90: in api_request
  3778. headers.update(auth_header(app.db, 'admin'))
  3779. jupyterhub/tests/test_api.py:76: in auth_header
  3780. user = find_user(db, name)
  3781. jupyterhub/tests/test_api.py:54: in find_user
  3782. return db.query(orm.User).filter(orm.User.name == name).first()
  3783. ../../../.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/query.py:2755: in first
  3784. ret = list(self[0:1])
  3785. ../../../.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/query.py:2547: in __getitem__
  3786. return list(res)
  3787. ../../../.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/query.py:2855: in __iter__
  3788. return self._execute_and_instances(context)
  3789. ../../../.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/query.py:2876: in _execute_and_instances
  3790. close_with_result=True)
  3791. ../../../.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/query.py:2885: in _get_bind_args
  3792. **kw
  3793. ../../../.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/query.py:2867: in _connection_from_session
  3794. conn = self.session.connection(**kw)
  3795. ../../../.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/session.py:998: in connection
  3796. execution_options=execution_options)
  3797. ../../../.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/session.py:1003: in _connection_for_bind
  3798. engine, execution_options)
  3799. ../../../.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/session.py:382: in _connection_for_bind
  3800. self._assert_active()
  3801. _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
  3802.  
  3803. self = <sqlalchemy.orm.session.SessionTransaction object at 0x10cf2c7b8>, prepared_ok = False, rollback_ok = False
  3804. deactive_ok = False, closed_msg = 'This transaction is closed'
  3805.  
  3806. def _assert_active(self, prepared_ok=False,
  3807. rollback_ok=False,
  3808. deactive_ok=False,
  3809. closed_msg="This transaction is closed"):
  3810. if self._state is COMMITTED:
  3811. raise sa_exc.InvalidRequestError(
  3812. "This session is in 'committed' state; no further "
  3813. "SQL can be emitted within this transaction."
  3814. )
  3815. elif self._state is PREPARED:
  3816. if not prepared_ok:
  3817. raise sa_exc.InvalidRequestError(
  3818. > "This session is in 'prepared' state; no further "
  3819. "SQL can be emitted within this transaction."
  3820. E sqlalchemy.exc.InvalidRequestError: This session is in 'prepared' state; no further SQL can be emitted within this transaction.
  3821.  
  3822. ../../../.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/session.py:264: InvalidRequestError
  3823. ___________________________________________________________ test_cookie ___________________________________________________________
  3824.  
  3825. app = <jupyterhub.tests.mocking.MockHub object at 0x10cdc3978>
  3826.  
  3827. def test_cookie(app):
  3828. db = app.db
  3829. name = 'patience'
  3830. > user = add_user(db, app=app, name=name)
  3831.  
  3832. jupyterhub/tests/test_api.py:531:
  3833. _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
  3834. jupyterhub/tests/test_api.py:59: in add_user
  3835. orm_user = find_user(db, name=kwargs.get('name'))
  3836. jupyterhub/tests/test_api.py:54: in find_user
  3837. return db.query(orm.User).filter(orm.User.name == name).first()
  3838. ../../../.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/query.py:2755: in first
  3839. ret = list(self[0:1])
  3840. ../../../.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/query.py:2547: in __getitem__
  3841. return list(res)
  3842. ../../../.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/query.py:2855: in __iter__
  3843. return self._execute_and_instances(context)
  3844. ../../../.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/query.py:2876: in _execute_and_instances
  3845. close_with_result=True)
  3846. ../../../.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/query.py:2885: in _get_bind_args
  3847. **kw
  3848. ../../../.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/query.py:2867: in _connection_from_session
  3849. conn = self.session.connection(**kw)
  3850. ../../../.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/session.py:998: in connection
  3851. execution_options=execution_options)
  3852. ../../../.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/session.py:1003: in _connection_for_bind
  3853. engine, execution_options)
  3854. ../../../.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/session.py:382: in _connection_for_bind
  3855. self._assert_active()
  3856. _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
  3857.  
  3858. self = <sqlalchemy.orm.session.SessionTransaction object at 0x10cf2c7b8>, prepared_ok = False, rollback_ok = False
  3859. deactive_ok = False, closed_msg = 'This transaction is closed'
  3860.  
  3861. def _assert_active(self, prepared_ok=False,
  3862. rollback_ok=False,
  3863. deactive_ok=False,
  3864. closed_msg="This transaction is closed"):
  3865. if self._state is COMMITTED:
  3866. raise sa_exc.InvalidRequestError(
  3867. "This session is in 'committed' state; no further "
  3868. "SQL can be emitted within this transaction."
  3869. )
  3870. elif self._state is PREPARED:
  3871. if not prepared_ok:
  3872. raise sa_exc.InvalidRequestError(
  3873. > "This session is in 'prepared' state; no further "
  3874. "SQL can be emitted within this transaction."
  3875. E sqlalchemy.exc.InvalidRequestError: This session is in 'prepared' state; no further SQL can be emitted within this transaction.
  3876.  
  3877. ../../../.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/session.py:264: InvalidRequestError
  3878. ___________________________________________________________ test_token ____________________________________________________________
  3879.  
  3880. app = <jupyterhub.tests.mocking.MockHub object at 0x10cdc3978>
  3881.  
  3882. def test_token(app):
  3883. name = 'book'
  3884. > user = add_user(app.db, app=app, name=name)
  3885.  
  3886. jupyterhub/tests/test_api.py:564:
  3887. _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
  3888. jupyterhub/tests/test_api.py:59: in add_user
  3889. orm_user = find_user(db, name=kwargs.get('name'))
  3890. jupyterhub/tests/test_api.py:54: in find_user
  3891. return db.query(orm.User).filter(orm.User.name == name).first()
  3892. ../../../.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/query.py:2755: in first
  3893. ret = list(self[0:1])
  3894. ../../../.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/query.py:2547: in __getitem__
  3895. return list(res)
  3896. ../../../.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/query.py:2855: in __iter__
  3897. return self._execute_and_instances(context)
  3898. ../../../.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/query.py:2876: in _execute_and_instances
  3899. close_with_result=True)
  3900. ../../../.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/query.py:2885: in _get_bind_args
  3901. **kw
  3902. ../../../.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/query.py:2867: in _connection_from_session
  3903. conn = self.session.connection(**kw)
  3904. ../../../.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/session.py:998: in connection
  3905. execution_options=execution_options)
  3906. ../../../.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/session.py:1003: in _connection_for_bind
  3907. engine, execution_options)
  3908. ../../../.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/session.py:382: in _connection_for_bind
  3909. self._assert_active()
  3910. _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
  3911.  
  3912. self = <sqlalchemy.orm.session.SessionTransaction object at 0x10cf2c7b8>, prepared_ok = False, rollback_ok = False
  3913. deactive_ok = False, closed_msg = 'This transaction is closed'
  3914.  
  3915. def _assert_active(self, prepared_ok=False,
  3916. rollback_ok=False,
  3917. deactive_ok=False,
  3918. closed_msg="This transaction is closed"):
  3919. if self._state is COMMITTED:
  3920. raise sa_exc.InvalidRequestError(
  3921. "This session is in 'committed' state; no further "
  3922. "SQL can be emitted within this transaction."
  3923. )
  3924. elif self._state is PREPARED:
  3925. if not prepared_ok:
  3926. raise sa_exc.InvalidRequestError(
  3927. > "This session is in 'prepared' state; no further "
  3928. "SQL can be emitted within this transaction."
  3929. E sqlalchemy.exc.InvalidRequestError: This session is in 'prepared' state; no further SQL can be emitted within this transaction.
  3930.  
  3931. ../../../.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/session.py:264: InvalidRequestError
  3932. ______________________________________________ test_get_new_token[headers0-None-200] ______________________________________________
  3933.  
  3934. app = <jupyterhub.tests.mocking.MockHub object at 0x10cdc3978>, headers = {}, data = None, status = 200
  3935.  
  3936. @mark.parametrize("headers, data, status", [
  3937. ({}, None, 200),
  3938. ({'Authorization': ''}, None, 403),
  3939. ({}, {'username': 'fake', 'password': 'fake'}, 200),
  3940. ])
  3941. def test_get_new_token(app, headers, data, status):
  3942. if data:
  3943. data = json.dumps(data)
  3944. # request a new token
  3945. > r = api_request(app, 'authorizations', 'token', method='post', data=data, headers=headers)
  3946.  
  3947. jupyterhub/tests/test_api.py:583:
  3948. _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
  3949. jupyterhub/tests/test_api.py:40: in new_func
  3950. retval = func(app, *args, **kwargs)
  3951. jupyterhub/tests/test_api.py:90: in api_request
  3952. headers.update(auth_header(app.db, 'admin'))
  3953. jupyterhub/tests/test_api.py:76: in auth_header
  3954. user = find_user(db, name)
  3955. jupyterhub/tests/test_api.py:54: in find_user
  3956. return db.query(orm.User).filter(orm.User.name == name).first()
  3957. ../../../.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/query.py:2755: in first
  3958. ret = list(self[0:1])
  3959. ../../../.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/query.py:2547: in __getitem__
  3960. return list(res)
  3961. ../../../.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/query.py:2855: in __iter__
  3962. return self._execute_and_instances(context)
  3963. ../../../.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/query.py:2876: in _execute_and_instances
  3964. close_with_result=True)
  3965. ../../../.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/query.py:2885: in _get_bind_args
  3966. **kw
  3967. ../../../.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/query.py:2867: in _connection_from_session
  3968. conn = self.session.connection(**kw)
  3969. ../../../.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/session.py:998: in connection
  3970. execution_options=execution_options)
  3971. ../../../.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/session.py:1003: in _connection_for_bind
  3972. engine, execution_options)
  3973. ../../../.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/session.py:382: in _connection_for_bind
  3974. self._assert_active()
  3975. _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
  3976.  
  3977. self = <sqlalchemy.orm.session.SessionTransaction object at 0x10cf2c7b8>, prepared_ok = False, rollback_ok = False
  3978. deactive_ok = False, closed_msg = 'This transaction is closed'
  3979.  
  3980. def _assert_active(self, prepared_ok=False,
  3981. rollback_ok=False,
  3982. deactive_ok=False,
  3983. closed_msg="This transaction is closed"):
  3984. if self._state is COMMITTED:
  3985. raise sa_exc.InvalidRequestError(
  3986. "This session is in 'committed' state; no further "
  3987. "SQL can be emitted within this transaction."
  3988. )
  3989. elif self._state is PREPARED:
  3990. if not prepared_ok:
  3991. raise sa_exc.InvalidRequestError(
  3992. > "This session is in 'prepared' state; no further "
  3993. "SQL can be emitted within this transaction."
  3994. E sqlalchemy.exc.InvalidRequestError: This session is in 'prepared' state; no further SQL can be emitted within this transaction.
  3995.  
  3996. ../../../.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/session.py:264: InvalidRequestError
  3997. ---------------------------------------------------- Captured stdout teardown -----------------------------------------------------
  3998. 08:55:46.157 - info: [ConfigProxy] 200 GET /api/routes
  3999. ---------------------------------------------------- Captured stderr teardown -----------------------------------------------------
  4000. [D 55:46.132 MockHub proxy:519] Proxy: Fetching GET http://127.0.0.1:8001/api/routes
  4001. ______________________________________________ test_get_new_token[headers1-None-403] ______________________________________________
  4002.  
  4003. self = <sqlalchemy.engine.base.Connection object at 0x10cf62f28>
  4004. dialect = <sqlalchemy.dialects.sqlite.pysqlite.SQLiteDialect_pysqlite object at 0x10c4105f8>
  4005. constructor = <bound method DefaultExecutionContext._init_compiled of <class 'sqlalchemy.dialects.sqlite.base.SQLiteExecutionContext'>>
  4006. statement = 'CREATE TABLE dummy (foo INT)', parameters = ()
  4007. args = (<sqlalchemy.dialects.sqlite.base.SQLiteCompiler object at 0x10ccca7f0>, [{}])
  4008. conn = <sqlalchemy.pool._ConnectionFairy object at 0x10cf2cba8>
  4009. context = <sqlalchemy.dialects.sqlite.base.SQLiteExecutionContext object at 0x10cccabe0>
  4010.  
  4011. def _execute_context(self, dialect, constructor,
  4012. statement, parameters,
  4013. *args):
  4014. """Create an :class:`.ExecutionContext` and execute, returning
  4015. a :class:`.ResultProxy`."""
  4016.  
  4017. try:
  4018. try:
  4019. conn = self.__connection
  4020. except AttributeError:
  4021. conn = self._revalidate_connection()
  4022.  
  4023. context = constructor(dialect, self, conn, *args)
  4024. except BaseException as e:
  4025. self._handle_dbapi_exception(
  4026. e,
  4027. util.text_type(statement), parameters,
  4028. None, None)
  4029.  
  4030. if context.compiled:
  4031. context.pre_exec()
  4032.  
  4033. cursor, statement, parameters = context.cursor, \
  4034. context.statement, \
  4035. context.parameters
  4036.  
  4037. if not context.executemany:
  4038. parameters = parameters[0]
  4039.  
  4040. if self._has_events or self.engine._has_events:
  4041. for fn in self.dispatch.before_cursor_execute:
  4042. statement, parameters = \
  4043. fn(self, cursor, statement, parameters,
  4044. context, context.executemany)
  4045.  
  4046. if self._echo:
  4047. self.engine.logger.info(statement)
  4048. self.engine.logger.info(
  4049. "%r",
  4050. sql_util._repr_params(parameters, batches=10)
  4051. )
  4052.  
  4053. evt_handled = False
  4054. try:
  4055. if context.executemany:
  4056. if self.dialect._has_events:
  4057. for fn in self.dialect.dispatch.do_executemany:
  4058. if fn(cursor, statement, parameters, context):
  4059. evt_handled = True
  4060. break
  4061. if not evt_handled:
  4062. self.dialect.do_executemany(
  4063. cursor,
  4064. statement,
  4065. parameters,
  4066. context)
  4067. elif not parameters and context.no_parameters:
  4068. if self.dialect._has_events:
  4069. for fn in self.dialect.dispatch.do_execute_no_params:
  4070. if fn(cursor, statement, context):
  4071. evt_handled = True
  4072. break
  4073. if not evt_handled:
  4074. self.dialect.do_execute_no_params(
  4075. cursor,
  4076. statement,
  4077. context)
  4078. else:
  4079. if self.dialect._has_events:
  4080. for fn in self.dialect.dispatch.do_execute:
  4081. if fn(cursor, statement, parameters, context):
  4082. evt_handled = True
  4083. break
  4084. if not evt_handled:
  4085. self.dialect.do_execute(
  4086. cursor,
  4087. statement,
  4088. parameters,
  4089. > context)
  4090.  
  4091. ../../../.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/engine/base.py:1182:
  4092. _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
  4093.  
  4094. self = <sqlalchemy.dialects.sqlite.pysqlite.SQLiteDialect_pysqlite object at 0x10c4105f8>
  4095. cursor = <sqlite3.Cursor object at 0x10e5e32d0>, statement = 'CREATE TABLE dummy (foo INT)', parameters = ()
  4096. context = <sqlalchemy.dialects.sqlite.base.SQLiteExecutionContext object at 0x10cccabe0>
  4097.  
  4098. def do_execute(self, cursor, statement, parameters, context=None):
  4099. > cursor.execute(statement, parameters)
  4100. E sqlite3.OperationalError: database is locked
  4101.  
  4102. ../../../.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/engine/default.py:470: OperationalError
  4103.  
  4104. The above exception was the direct cause of the following exception:
  4105.  
  4106. app = <jupyterhub.tests.mocking.MockHub object at 0x10cdc3978>, headers = {'Authorization': ''}, data = None, status = 403
  4107.  
  4108. @mark.parametrize("headers, data, status", [
  4109. ({}, None, 200),
  4110. ({'Authorization': ''}, None, 403),
  4111. ({}, {'username': 'fake', 'password': 'fake'}, 200),
  4112. ])
  4113. def test_get_new_token(app, headers, data, status):
  4114. if data:
  4115. data = json.dumps(data)
  4116. # request a new token
  4117. > r = api_request(app, 'authorizations', 'token', method='post', data=data, headers=headers)
  4118.  
  4119. jupyterhub/tests/test_api.py:583:
  4120. _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
  4121. jupyterhub/tests/test_api.py:43: in new_func
  4122. temp_session.execute('CREATE TABLE dummy (foo INT)')
  4123. ../../../.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/session.py:1139: in execute
  4124. bind, close_with_result=True).execute(clause, params or {})
  4125. ../../../.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/engine/base.py:945: in execute
  4126. return meth(self, multiparams, params)
  4127. ../../../.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/sql/elements.py:263: in _execute_on_connection
  4128. return connection._execute_clauseelement(self, multiparams, params)
  4129. ../../../.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/engine/base.py:1053: in _execute_clauseelement
  4130. compiled_sql, distilled_params
  4131. ../../../.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/engine/base.py:1189: in _execute_context
  4132. context)
  4133. ../../../.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/engine/base.py:1402: in _handle_dbapi_exception
  4134. exc_info
  4135. ../../../.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/util/compat.py:203: in raise_from_cause
  4136. reraise(type(exception), exception, tb=exc_tb, cause=cause)
  4137. ../../../.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/util/compat.py:186: in reraise
  4138. raise value.with_traceback(tb)
  4139. ../../../.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/engine/base.py:1182: in _execute_context
  4140. context)
  4141. _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
  4142.  
  4143. self = <sqlalchemy.dialects.sqlite.pysqlite.SQLiteDialect_pysqlite object at 0x10c4105f8>
  4144. cursor = <sqlite3.Cursor object at 0x10e5e32d0>, statement = 'CREATE TABLE dummy (foo INT)', parameters = ()
  4145. context = <sqlalchemy.dialects.sqlite.base.SQLiteExecutionContext object at 0x10cccabe0>
  4146.  
  4147. def do_execute(self, cursor, statement, parameters, context=None):
  4148. > cursor.execute(statement, parameters)
  4149. E sqlalchemy.exc.OperationalError: (sqlite3.OperationalError) database is locked [SQL: 'CREATE TABLE dummy (foo INT)']
  4150.  
  4151. ../../../.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/engine/default.py:470: OperationalError
  4152. ------------------------------------------------------ Captured stderr call -------------------------------------------------------
  4153. [E 55:46.730 MockHub auth:41] Failure trying to authenticate with form data: authenticate() takes 2 positional arguments but 3 were given
  4154. [W 55:46.731 MockHub log:122] 403 POST /@/space%20word/hub/api/authorizations/token (@127.0.0.1) 1.33ms
  4155. [E 55:46.733 MockHub ioloop:638] Exception in callback functools.partial(<function wrap.<locals>.null_wrapper at 0x10d06f620>, <tornado.concurrent.Future object at 0x10d000940>)
  4156. Traceback (most recent call last):
  4157. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/tornado/ioloop.py", line 605, in _run_callback
  4158. ret = callback()
  4159. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/tornado/stack_context.py", line 277, in null_wrapper
  4160. return fn(*args, **kwargs)
  4161. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/tornado/ioloop.py", line 626, in _discard_future_result
  4162. future.result()
  4163. File "/Users/carol/code/jhub/jupyterhub/jupyterhub/app.py", line 1410, in update_last_activity
  4164. yield self.proxy.check_routes(self.users, self._service_map, routes)
  4165. File "/Users/carol/code/jhub/jupyterhub/jupyterhub/proxy.py", line 299, in check_routes
  4166. for orm_user in db.query(User):
  4167. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/query.py", line 2855, in __iter__
  4168. return self._execute_and_instances(context)
  4169. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/query.py", line 2878, in _execute_and_instances
  4170. result = conn.execute(querycontext.statement, self._params)
  4171. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/engine/base.py", line 945, in execute
  4172. return meth(self, multiparams, params)
  4173. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/sql/elements.py", line 263, in _execute_on_connection
  4174. return connection._execute_clauseelement(self, multiparams, params)
  4175. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/engine/base.py", line 1053, in _execute_clauseelement
  4176. compiled_sql, distilled_params
  4177. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/engine/base.py", line 1189, in _execute_context
  4178. context)
  4179. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/engine/base.py", line 1402, in _handle_dbapi_exception
  4180. exc_info
  4181. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/util/compat.py", line 203, in raise_from_cause
  4182. reraise(type(exception), exception, tb=exc_tb, cause=cause)
  4183. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/util/compat.py", line 186, in reraise
  4184. raise value.with_traceback(tb)
  4185. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/engine/base.py", line 1182, in _execute_context
  4186. context)
  4187. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/engine/default.py", line 470, in do_execute
  4188. cursor.execute(statement, parameters)
  4189. sqlalchemy.exc.OperationalError: (sqlite3.OperationalError) database is locked [SQL: 'SELECT users.id AS users_id, users.name AS users_name, users.admin AS users_admin, users.last_activity AS users_last_activity, users.cookie_id AS users_cookie_id, users.state AS users_state, users.auth_state AS users_auth_state \nFROM users']
  4190.  
  4191. _____________________________________________ test_get_new_token[headers2-data2-200] ______________________________________________
  4192.  
  4193. app = <jupyterhub.tests.mocking.MockHub object at 0x10cdc3978>, headers = {}, data = '{"username": "fake", "password": "fake"}'
  4194. status = 200
  4195.  
  4196. @mark.parametrize("headers, data, status", [
  4197. ({}, None, 200),
  4198. ({'Authorization': ''}, None, 403),
  4199. ({}, {'username': 'fake', 'password': 'fake'}, 200),
  4200. ])
  4201. def test_get_new_token(app, headers, data, status):
  4202. if data:
  4203. data = json.dumps(data)
  4204. # request a new token
  4205. > r = api_request(app, 'authorizations', 'token', method='post', data=data, headers=headers)
  4206.  
  4207. jupyterhub/tests/test_api.py:583:
  4208. _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
  4209. jupyterhub/tests/test_api.py:40: in new_func
  4210. retval = func(app, *args, **kwargs)
  4211. jupyterhub/tests/test_api.py:90: in api_request
  4212. headers.update(auth_header(app.db, 'admin'))
  4213. jupyterhub/tests/test_api.py:76: in auth_header
  4214. user = find_user(db, name)
  4215. jupyterhub/tests/test_api.py:54: in find_user
  4216. return db.query(orm.User).filter(orm.User.name == name).first()
  4217. ../../../.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/query.py:2755: in first
  4218. ret = list(self[0:1])
  4219. ../../../.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/query.py:2547: in __getitem__
  4220. return list(res)
  4221. ../../../.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/query.py:2855: in __iter__
  4222. return self._execute_and_instances(context)
  4223. ../../../.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/query.py:2876: in _execute_and_instances
  4224. close_with_result=True)
  4225. ../../../.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/query.py:2885: in _get_bind_args
  4226. **kw
  4227. ../../../.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/query.py:2867: in _connection_from_session
  4228. conn = self.session.connection(**kw)
  4229. ../../../.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/session.py:998: in connection
  4230. execution_options=execution_options)
  4231. ../../../.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/session.py:1003: in _connection_for_bind
  4232. engine, execution_options)
  4233. ../../../.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/session.py:382: in _connection_for_bind
  4234. self._assert_active()
  4235. _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
  4236.  
  4237. self = <sqlalchemy.orm.session.SessionTransaction object at 0x10cf2c7b8>, prepared_ok = False, rollback_ok = False
  4238. deactive_ok = False, closed_msg = 'This transaction is closed'
  4239.  
  4240. def _assert_active(self, prepared_ok=False,
  4241. rollback_ok=False,
  4242. deactive_ok=False,
  4243. closed_msg="This transaction is closed"):
  4244. if self._state is COMMITTED:
  4245. raise sa_exc.InvalidRequestError(
  4246. "This session is in 'committed' state; no further "
  4247. "SQL can be emitted within this transaction."
  4248. )
  4249. elif self._state is PREPARED:
  4250. if not prepared_ok:
  4251. raise sa_exc.InvalidRequestError(
  4252. > "This session is in 'prepared' state; no further "
  4253. "SQL can be emitted within this transaction."
  4254. E sqlalchemy.exc.InvalidRequestError: This session is in 'prepared' state; no further SQL can be emitted within this transaction.
  4255.  
  4256. ../../../.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/session.py:264: InvalidRequestError
  4257. ________________________________________________________ test_groups_list _________________________________________________________
  4258.  
  4259. app = <jupyterhub.tests.mocking.MockHub object at 0x10cdc3978>
  4260.  
  4261. @mark.group
  4262. def test_groups_list(app):
  4263. > r = api_request(app, 'groups')
  4264.  
  4265. jupyterhub/tests/test_api.py:601:
  4266. _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
  4267. jupyterhub/tests/test_api.py:40: in new_func
  4268. retval = func(app, *args, **kwargs)
  4269. jupyterhub/tests/test_api.py:90: in api_request
  4270. headers.update(auth_header(app.db, 'admin'))
  4271. jupyterhub/tests/test_api.py:76: in auth_header
  4272. user = find_user(db, name)
  4273. jupyterhub/tests/test_api.py:54: in find_user
  4274. return db.query(orm.User).filter(orm.User.name == name).first()
  4275. ../../../.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/query.py:2755: in first
  4276. ret = list(self[0:1])
  4277. ../../../.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/query.py:2547: in __getitem__
  4278. return list(res)
  4279. ../../../.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/query.py:2855: in __iter__
  4280. return self._execute_and_instances(context)
  4281. ../../../.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/query.py:2876: in _execute_and_instances
  4282. close_with_result=True)
  4283. ../../../.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/query.py:2885: in _get_bind_args
  4284. **kw
  4285. ../../../.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/query.py:2867: in _connection_from_session
  4286. conn = self.session.connection(**kw)
  4287. ../../../.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/session.py:998: in connection
  4288. execution_options=execution_options)
  4289. ../../../.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/session.py:1003: in _connection_for_bind
  4290. engine, execution_options)
  4291. ../../../.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/session.py:382: in _connection_for_bind
  4292. self._assert_active()
  4293. _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
  4294.  
  4295. self = <sqlalchemy.orm.session.SessionTransaction object at 0x10cf2c7b8>, prepared_ok = False, rollback_ok = False
  4296. deactive_ok = False, closed_msg = 'This transaction is closed'
  4297.  
  4298. def _assert_active(self, prepared_ok=False,
  4299. rollback_ok=False,
  4300. deactive_ok=False,
  4301. closed_msg="This transaction is closed"):
  4302. if self._state is COMMITTED:
  4303. raise sa_exc.InvalidRequestError(
  4304. "This session is in 'committed' state; no further "
  4305. "SQL can be emitted within this transaction."
  4306. )
  4307. elif self._state is PREPARED:
  4308. if not prepared_ok:
  4309. raise sa_exc.InvalidRequestError(
  4310. > "This session is in 'prepared' state; no further "
  4311. "SQL can be emitted within this transaction."
  4312. E sqlalchemy.exc.InvalidRequestError: This session is in 'prepared' state; no further SQL can be emitted within this transaction.
  4313.  
  4314. ../../../.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/session.py:264: InvalidRequestError
  4315. ---------------------------------------------------- Captured stdout teardown -----------------------------------------------------
  4316. 08:55:48.150 - info: [ConfigProxy] 200 GET /api/routes
  4317. ---------------------------------------------------- Captured stderr teardown -----------------------------------------------------
  4318. [D 55:48.135 MockHub proxy:519] Proxy: Fetching GET http://127.0.0.1:8001/api/routes
  4319. _________________________________________________________ test_group_get __________________________________________________________
  4320.  
  4321. app = <jupyterhub.tests.mocking.MockHub object at 0x10cdc3978>
  4322.  
  4323. @mark.group
  4324. def test_group_get(app):
  4325. > group = orm.Group.find(app.db, name='alphaflight')
  4326.  
  4327. jupyterhub/tests/test_api.py:623:
  4328. _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
  4329. jupyterhub/orm.py:107: in find
  4330. return db.query(cls).filter(cls.name == name).first()
  4331. ../../../.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/query.py:2755: in first
  4332. ret = list(self[0:1])
  4333. ../../../.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/query.py:2547: in __getitem__
  4334. return list(res)
  4335. ../../../.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/query.py:2855: in __iter__
  4336. return self._execute_and_instances(context)
  4337. ../../../.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/query.py:2876: in _execute_and_instances
  4338. close_with_result=True)
  4339. ../../../.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/query.py:2885: in _get_bind_args
  4340. **kw
  4341. ../../../.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/query.py:2867: in _connection_from_session
  4342. conn = self.session.connection(**kw)
  4343. ../../../.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/session.py:998: in connection
  4344. execution_options=execution_options)
  4345. ../../../.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/session.py:1003: in _connection_for_bind
  4346. engine, execution_options)
  4347. ../../../.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/session.py:382: in _connection_for_bind
  4348. self._assert_active()
  4349. _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
  4350.  
  4351. self = <sqlalchemy.orm.session.SessionTransaction object at 0x10cf2c7b8>, prepared_ok = False, rollback_ok = False
  4352. deactive_ok = False, closed_msg = 'This transaction is closed'
  4353.  
  4354. def _assert_active(self, prepared_ok=False,
  4355. rollback_ok=False,
  4356. deactive_ok=False,
  4357. closed_msg="This transaction is closed"):
  4358. if self._state is COMMITTED:
  4359. raise sa_exc.InvalidRequestError(
  4360. "This session is in 'committed' state; no further "
  4361. "SQL can be emitted within this transaction."
  4362. )
  4363. elif self._state is PREPARED:
  4364. if not prepared_ok:
  4365. raise sa_exc.InvalidRequestError(
  4366. > "This session is in 'prepared' state; no further "
  4367. "SQL can be emitted within this transaction."
  4368. E sqlalchemy.exc.InvalidRequestError: This session is in 'prepared' state; no further SQL can be emitted within this transaction.
  4369.  
  4370. ../../../.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/session.py:264: InvalidRequestError
  4371. ____________________________________________________ test_group_create_delete _____________________________________________________
  4372.  
  4373. app = <jupyterhub.tests.mocking.MockHub object at 0x10cdc3978>
  4374.  
  4375. @mark.group
  4376. def test_group_create_delete(app):
  4377. db = app.db
  4378. > r = api_request(app, 'groups/runaways', method='delete')
  4379.  
  4380. jupyterhub/tests/test_api.py:644:
  4381. _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
  4382. jupyterhub/tests/test_api.py:40: in new_func
  4383. retval = func(app, *args, **kwargs)
  4384. jupyterhub/tests/test_api.py:90: in api_request
  4385. headers.update(auth_header(app.db, 'admin'))
  4386. jupyterhub/tests/test_api.py:76: in auth_header
  4387. user = find_user(db, name)
  4388. jupyterhub/tests/test_api.py:54: in find_user
  4389. return db.query(orm.User).filter(orm.User.name == name).first()
  4390. ../../../.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/query.py:2755: in first
  4391. ret = list(self[0:1])
  4392. ../../../.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/query.py:2547: in __getitem__
  4393. return list(res)
  4394. ../../../.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/query.py:2855: in __iter__
  4395. return self._execute_and_instances(context)
  4396. ../../../.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/query.py:2876: in _execute_and_instances
  4397. close_with_result=True)
  4398. ../../../.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/query.py:2885: in _get_bind_args
  4399. **kw
  4400. ../../../.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/query.py:2867: in _connection_from_session
  4401. conn = self.session.connection(**kw)
  4402. ../../../.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/session.py:998: in connection
  4403. execution_options=execution_options)
  4404. ../../../.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/session.py:1003: in _connection_for_bind
  4405. engine, execution_options)
  4406. ../../../.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/session.py:382: in _connection_for_bind
  4407. self._assert_active()
  4408. _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
  4409.  
  4410. self = <sqlalchemy.orm.session.SessionTransaction object at 0x10cf2c7b8>, prepared_ok = False, rollback_ok = False
  4411. deactive_ok = False, closed_msg = 'This transaction is closed'
  4412.  
  4413. def _assert_active(self, prepared_ok=False,
  4414. rollback_ok=False,
  4415. deactive_ok=False,
  4416. closed_msg="This transaction is closed"):
  4417. if self._state is COMMITTED:
  4418. raise sa_exc.InvalidRequestError(
  4419. "This session is in 'committed' state; no further "
  4420. "SQL can be emitted within this transaction."
  4421. )
  4422. elif self._state is PREPARED:
  4423. if not prepared_ok:
  4424. raise sa_exc.InvalidRequestError(
  4425. > "This session is in 'prepared' state; no further "
  4426. "SQL can be emitted within this transaction."
  4427. E sqlalchemy.exc.InvalidRequestError: This session is in 'prepared' state; no further SQL can be emitted within this transaction.
  4428.  
  4429. ../../../.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/session.py:264: InvalidRequestError
  4430. ---------------------------------------------------- Captured stderr teardown -----------------------------------------------------
  4431. [E 55:48.722 MockHub ioloop:638] Exception in callback functools.partial(<function wrap.<locals>.null_wrapper at 0x10e49b0d0>, <tornado.concurrent.Future object at 0x10cff26d8>)
  4432. Traceback (most recent call last):
  4433. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/tornado/ioloop.py", line 605, in _run_callback
  4434. ret = callback()
  4435. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/tornado/stack_context.py", line 277, in null_wrapper
  4436. return fn(*args, **kwargs)
  4437. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/tornado/ioloop.py", line 626, in _discard_future_result
  4438. future.result()
  4439. File "/Users/carol/code/jhub/jupyterhub/jupyterhub/app.py", line 1410, in update_last_activity
  4440. yield self.proxy.check_routes(self.users, self._service_map, routes)
  4441. File "/Users/carol/code/jhub/jupyterhub/jupyterhub/proxy.py", line 299, in check_routes
  4442. for orm_user in db.query(User):
  4443. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/query.py", line 2855, in __iter__
  4444. return self._execute_and_instances(context)
  4445. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/query.py", line 2878, in _execute_and_instances
  4446. result = conn.execute(querycontext.statement, self._params)
  4447. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/engine/base.py", line 945, in execute
  4448. return meth(self, multiparams, params)
  4449. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/sql/elements.py", line 263, in _execute_on_connection
  4450. return connection._execute_clauseelement(self, multiparams, params)
  4451. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/engine/base.py", line 1053, in _execute_clauseelement
  4452. compiled_sql, distilled_params
  4453. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/engine/base.py", line 1189, in _execute_context
  4454. context)
  4455. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/engine/base.py", line 1402, in _handle_dbapi_exception
  4456. exc_info
  4457. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/util/compat.py", line 203, in raise_from_cause
  4458. reraise(type(exception), exception, tb=exc_tb, cause=cause)
  4459. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/util/compat.py", line 186, in reraise
  4460. raise value.with_traceback(tb)
  4461. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/engine/base.py", line 1182, in _execute_context
  4462. context)
  4463. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/engine/default.py", line 470, in do_execute
  4464. cursor.execute(statement, parameters)
  4465. sqlalchemy.exc.OperationalError: (sqlite3.OperationalError) database is locked [SQL: 'SELECT users.id AS users_id, users.name AS users_name, users.admin AS users_admin, users.last_activity AS users_last_activity, users.cookie_id AS users_cookie_id, users.state AS users_state, users.auth_state AS users_auth_state \nFROM users']
  4466.  
  4467. ______________________________________________________ test_group_add_users _______________________________________________________
  4468.  
  4469. app = <jupyterhub.tests.mocking.MockHub object at 0x10cdc3978>
  4470.  
  4471. @mark.group
  4472. def test_group_add_users(app):
  4473. db = app.db
  4474. # must specify users
  4475. > r = api_request(app, 'groups/alphaflight/users', method='post', data='{}')
  4476.  
  4477. jupyterhub/tests/test_api.py:681:
  4478. _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
  4479. jupyterhub/tests/test_api.py:40: in new_func
  4480. retval = func(app, *args, **kwargs)
  4481. jupyterhub/tests/test_api.py:90: in api_request
  4482. headers.update(auth_header(app.db, 'admin'))
  4483. jupyterhub/tests/test_api.py:76: in auth_header
  4484. user = find_user(db, name)
  4485. jupyterhub/tests/test_api.py:54: in find_user
  4486. return db.query(orm.User).filter(orm.User.name == name).first()
  4487. ../../../.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/query.py:2755: in first
  4488. ret = list(self[0:1])
  4489. ../../../.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/query.py:2547: in __getitem__
  4490. return list(res)
  4491. ../../../.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/query.py:2855: in __iter__
  4492. return self._execute_and_instances(context)
  4493. ../../../.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/query.py:2876: in _execute_and_instances
  4494. close_with_result=True)
  4495. ../../../.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/query.py:2885: in _get_bind_args
  4496. **kw
  4497. ../../../.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/query.py:2867: in _connection_from_session
  4498. conn = self.session.connection(**kw)
  4499. ../../../.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/session.py:998: in connection
  4500. execution_options=execution_options)
  4501. ../../../.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/session.py:1003: in _connection_for_bind
  4502. engine, execution_options)
  4503. ../../../.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/session.py:382: in _connection_for_bind
  4504. self._assert_active()
  4505. _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
  4506.  
  4507. self = <sqlalchemy.orm.session.SessionTransaction object at 0x10cf2c7b8>, prepared_ok = False, rollback_ok = False
  4508. deactive_ok = False, closed_msg = 'This transaction is closed'
  4509.  
  4510. def _assert_active(self, prepared_ok=False,
  4511. rollback_ok=False,
  4512. deactive_ok=False,
  4513. closed_msg="This transaction is closed"):
  4514. if self._state is COMMITTED:
  4515. raise sa_exc.InvalidRequestError(
  4516. "This session is in 'committed' state; no further "
  4517. "SQL can be emitted within this transaction."
  4518. )
  4519. elif self._state is PREPARED:
  4520. if not prepared_ok:
  4521. raise sa_exc.InvalidRequestError(
  4522. > "This session is in 'prepared' state; no further "
  4523. "SQL can be emitted within this transaction."
  4524. E sqlalchemy.exc.InvalidRequestError: This session is in 'prepared' state; no further SQL can be emitted within this transaction.
  4525.  
  4526. ../../../.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/session.py:264: InvalidRequestError
  4527. _____________________________________________________ test_group_delete_users _____________________________________________________
  4528.  
  4529. app = <jupyterhub.tests.mocking.MockHub object at 0x10cdc3978>
  4530.  
  4531. @mark.group
  4532. def test_group_delete_users(app):
  4533. db = app.db
  4534. # must specify users
  4535. > r = api_request(app, 'groups/alphaflight/users', method='delete', data='{}')
  4536.  
  4537. jupyterhub/tests/test_api.py:703:
  4538. _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
  4539. jupyterhub/tests/test_api.py:40: in new_func
  4540. retval = func(app, *args, **kwargs)
  4541. jupyterhub/tests/test_api.py:90: in api_request
  4542. headers.update(auth_header(app.db, 'admin'))
  4543. jupyterhub/tests/test_api.py:76: in auth_header
  4544. user = find_user(db, name)
  4545. jupyterhub/tests/test_api.py:54: in find_user
  4546. return db.query(orm.User).filter(orm.User.name == name).first()
  4547. ../../../.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/query.py:2755: in first
  4548. ret = list(self[0:1])
  4549. ../../../.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/query.py:2547: in __getitem__
  4550. return list(res)
  4551. ../../../.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/query.py:2855: in __iter__
  4552. return self._execute_and_instances(context)
  4553. ../../../.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/query.py:2876: in _execute_and_instances
  4554. close_with_result=True)
  4555. ../../../.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/query.py:2885: in _get_bind_args
  4556. **kw
  4557. ../../../.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/query.py:2867: in _connection_from_session
  4558. conn = self.session.connection(**kw)
  4559. ../../../.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/session.py:998: in connection
  4560. execution_options=execution_options)
  4561. ../../../.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/session.py:1003: in _connection_for_bind
  4562. engine, execution_options)
  4563. ../../../.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/session.py:382: in _connection_for_bind
  4564. self._assert_active()
  4565. _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
  4566.  
  4567. self = <sqlalchemy.orm.session.SessionTransaction object at 0x10cf2c7b8>, prepared_ok = False, rollback_ok = False
  4568. deactive_ok = False, closed_msg = 'This transaction is closed'
  4569.  
  4570. def _assert_active(self, prepared_ok=False,
  4571. rollback_ok=False,
  4572. deactive_ok=False,
  4573. closed_msg="This transaction is closed"):
  4574. if self._state is COMMITTED:
  4575. raise sa_exc.InvalidRequestError(
  4576. "This session is in 'committed' state; no further "
  4577. "SQL can be emitted within this transaction."
  4578. )
  4579. elif self._state is PREPARED:
  4580. if not prepared_ok:
  4581. raise sa_exc.InvalidRequestError(
  4582. > "This session is in 'prepared' state; no further "
  4583. "SQL can be emitted within this transaction."
  4584. E sqlalchemy.exc.InvalidRequestError: This session is in 'prepared' state; no further SQL can be emitted within this transaction.
  4585.  
  4586. ../../../.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/session.py:264: InvalidRequestError
  4587. ____________________________________________________________ test_info ____________________________________________________________
  4588.  
  4589. app = <jupyterhub.tests.mocking.MockHub object at 0x10cdc3978>
  4590.  
  4591. def test_info(app):
  4592. > r = api_request(app, 'info')
  4593.  
  4594. jupyterhub/tests/test_api.py:795:
  4595. _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
  4596. jupyterhub/tests/test_api.py:40: in new_func
  4597. retval = func(app, *args, **kwargs)
  4598. jupyterhub/tests/test_api.py:90: in api_request
  4599. headers.update(auth_header(app.db, 'admin'))
  4600. jupyterhub/tests/test_api.py:76: in auth_header
  4601. user = find_user(db, name)
  4602. jupyterhub/tests/test_api.py:54: in find_user
  4603. return db.query(orm.User).filter(orm.User.name == name).first()
  4604. ../../../.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/query.py:2755: in first
  4605. ret = list(self[0:1])
  4606. ../../../.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/query.py:2547: in __getitem__
  4607. return list(res)
  4608. ../../../.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/query.py:2855: in __iter__
  4609. return self._execute_and_instances(context)
  4610. ../../../.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/query.py:2876: in _execute_and_instances
  4611. close_with_result=True)
  4612. ../../../.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/query.py:2885: in _get_bind_args
  4613. **kw
  4614. ../../../.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/query.py:2867: in _connection_from_session
  4615. conn = self.session.connection(**kw)
  4616. ../../../.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/session.py:998: in connection
  4617. execution_options=execution_options)
  4618. ../../../.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/session.py:1003: in _connection_for_bind
  4619. engine, execution_options)
  4620. ../../../.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/session.py:382: in _connection_for_bind
  4621. self._assert_active()
  4622. _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
  4623.  
  4624. self = <sqlalchemy.orm.session.SessionTransaction object at 0x10cf2c7b8>, prepared_ok = False, rollback_ok = False
  4625. deactive_ok = False, closed_msg = 'This transaction is closed'
  4626.  
  4627. def _assert_active(self, prepared_ok=False,
  4628. rollback_ok=False,
  4629. deactive_ok=False,
  4630. closed_msg="This transaction is closed"):
  4631. if self._state is COMMITTED:
  4632. raise sa_exc.InvalidRequestError(
  4633. "This session is in 'committed' state; no further "
  4634. "SQL can be emitted within this transaction."
  4635. )
  4636. elif self._state is PREPARED:
  4637. if not prepared_ok:
  4638. raise sa_exc.InvalidRequestError(
  4639. > "This session is in 'prepared' state; no further "
  4640. "SQL can be emitted within this transaction."
  4641. E sqlalchemy.exc.InvalidRequestError: This session is in 'prepared' state; no further SQL can be emitted within this transaction.
  4642.  
  4643. ../../../.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/session.py:264: InvalidRequestError
  4644. ---------------------------------------------------- Captured stderr teardown -----------------------------------------------------
  4645. [E 55:50.702 MockHub ioloop:638] Exception in callback functools.partial(<function wrap.<locals>.null_wrapper at 0x10e529840>, <tornado.concurrent.Future object at 0x10e3fa630>)
  4646. Traceback (most recent call last):
  4647. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/tornado/ioloop.py", line 605, in _run_callback
  4648. ret = callback()
  4649. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/tornado/stack_context.py", line 277, in null_wrapper
  4650. return fn(*args, **kwargs)
  4651. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/tornado/ioloop.py", line 626, in _discard_future_result
  4652. future.result()
  4653. File "/Users/carol/code/jhub/jupyterhub/jupyterhub/app.py", line 1410, in update_last_activity
  4654. yield self.proxy.check_routes(self.users, self._service_map, routes)
  4655. File "/Users/carol/code/jhub/jupyterhub/jupyterhub/proxy.py", line 299, in check_routes
  4656. for orm_user in db.query(User):
  4657. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/query.py", line 2855, in __iter__
  4658. return self._execute_and_instances(context)
  4659. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/query.py", line 2878, in _execute_and_instances
  4660. result = conn.execute(querycontext.statement, self._params)
  4661. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/engine/base.py", line 945, in execute
  4662. return meth(self, multiparams, params)
  4663. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/sql/elements.py", line 263, in _execute_on_connection
  4664. return connection._execute_clauseelement(self, multiparams, params)
  4665. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/engine/base.py", line 1053, in _execute_clauseelement
  4666. compiled_sql, distilled_params
  4667. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/engine/base.py", line 1189, in _execute_context
  4668. context)
  4669. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/engine/base.py", line 1402, in _handle_dbapi_exception
  4670. exc_info
  4671. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/util/compat.py", line 203, in raise_from_cause
  4672. reraise(type(exception), exception, tb=exc_tb, cause=cause)
  4673. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/util/compat.py", line 186, in reraise
  4674. raise value.with_traceback(tb)
  4675. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/engine/base.py", line 1182, in _execute_context
  4676. context)
  4677. File "/Users/carol/.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/engine/default.py", line 470, in do_execute
  4678. cursor.execute(statement, parameters)
  4679. sqlalchemy.exc.OperationalError: (sqlite3.OperationalError) database is locked [SQL: 'SELECT users.id AS users_id, users.name AS users_name, users.admin AS users_admin, users.last_activity AS users_last_activity, users.cookie_id AS users_cookie_id, users.state AS users_state, users.auth_state AS users_auth_state \nFROM users']
  4680.  
  4681. __________________________________________________________ test_options ___________________________________________________________
  4682.  
  4683. app = <jupyterhub.tests.mocking.MockHub object at 0x10cdc3978>
  4684.  
  4685. def test_options(app):
  4686. > r = api_request(app, 'users', method='options')
  4687.  
  4688. jupyterhub/tests/test_api.py:824:
  4689. _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
  4690. jupyterhub/tests/test_api.py:40: in new_func
  4691. retval = func(app, *args, **kwargs)
  4692. jupyterhub/tests/test_api.py:90: in api_request
  4693. headers.update(auth_header(app.db, 'admin'))
  4694. jupyterhub/tests/test_api.py:76: in auth_header
  4695. user = find_user(db, name)
  4696. jupyterhub/tests/test_api.py:54: in find_user
  4697. return db.query(orm.User).filter(orm.User.name == name).first()
  4698. ../../../.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/query.py:2755: in first
  4699. ret = list(self[0:1])
  4700. ../../../.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/query.py:2547: in __getitem__
  4701. return list(res)
  4702. ../../../.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/query.py:2855: in __iter__
  4703. return self._execute_and_instances(context)
  4704. ../../../.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/query.py:2876: in _execute_and_instances
  4705. close_with_result=True)
  4706. ../../../.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/query.py:2885: in _get_bind_args
  4707. **kw
  4708. ../../../.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/query.py:2867: in _connection_from_session
  4709. conn = self.session.connection(**kw)
  4710. ../../../.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/session.py:998: in connection
  4711. execution_options=execution_options)
  4712. ../../../.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/session.py:1003: in _connection_for_bind
  4713. engine, execution_options)
  4714. ../../../.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/session.py:382: in _connection_for_bind
  4715. self._assert_active()
  4716. _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
  4717.  
  4718. self = <sqlalchemy.orm.session.SessionTransaction object at 0x10cf2c7b8>, prepared_ok = False, rollback_ok = False
  4719. deactive_ok = False, closed_msg = 'This transaction is closed'
  4720.  
  4721. def _assert_active(self, prepared_ok=False,
  4722. rollback_ok=False,
  4723. deactive_ok=False,
  4724. closed_msg="This transaction is closed"):
  4725. if self._state is COMMITTED:
  4726. raise sa_exc.InvalidRequestError(
  4727. "This session is in 'committed' state; no further "
  4728. "SQL can be emitted within this transaction."
  4729. )
  4730. elif self._state is PREPARED:
  4731. if not prepared_ok:
  4732. raise sa_exc.InvalidRequestError(
  4733. > "This session is in 'prepared' state; no further "
  4734. "SQL can be emitted within this transaction."
  4735. E sqlalchemy.exc.InvalidRequestError: This session is in 'prepared' state; no further SQL can be emitted within this transaction.
  4736.  
  4737. ../../../.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/session.py:264: InvalidRequestError
  4738. _______________________________________________________ test_bad_json_body ________________________________________________________
  4739.  
  4740. app = <jupyterhub.tests.mocking.MockHub object at 0x10cdc3978>
  4741.  
  4742. def test_bad_json_body(app):
  4743. > r = api_request(app, 'users', method='post', data='notjson')
  4744.  
  4745. jupyterhub/tests/test_api.py:830:
  4746. _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
  4747. jupyterhub/tests/test_api.py:40: in new_func
  4748. retval = func(app, *args, **kwargs)
  4749. jupyterhub/tests/test_api.py:90: in api_request
  4750. headers.update(auth_header(app.db, 'admin'))
  4751. jupyterhub/tests/test_api.py:76: in auth_header
  4752. user = find_user(db, name)
  4753. jupyterhub/tests/test_api.py:54: in find_user
  4754. return db.query(orm.User).filter(orm.User.name == name).first()
  4755. ../../../.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/query.py:2755: in first
  4756. ret = list(self[0:1])
  4757. ../../../.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/query.py:2547: in __getitem__
  4758. return list(res)
  4759. ../../../.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/query.py:2855: in __iter__
  4760. return self._execute_and_instances(context)
  4761. ../../../.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/query.py:2876: in _execute_and_instances
  4762. close_with_result=True)
  4763. ../../../.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/query.py:2885: in _get_bind_args
  4764. **kw
  4765. ../../../.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/query.py:2867: in _connection_from_session
  4766. conn = self.session.connection(**kw)
  4767. ../../../.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/session.py:998: in connection
  4768. execution_options=execution_options)
  4769. ../../../.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/session.py:1003: in _connection_for_bind
  4770. engine, execution_options)
  4771. ../../../.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/session.py:382: in _connection_for_bind
  4772. self._assert_active()
  4773. _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
  4774.  
  4775. self = <sqlalchemy.orm.session.SessionTransaction object at 0x10cf2c7b8>, prepared_ok = False, rollback_ok = False
  4776. deactive_ok = False, closed_msg = 'This transaction is closed'
  4777.  
  4778. def _assert_active(self, prepared_ok=False,
  4779. rollback_ok=False,
  4780. deactive_ok=False,
  4781. closed_msg="This transaction is closed"):
  4782. if self._state is COMMITTED:
  4783. raise sa_exc.InvalidRequestError(
  4784. "This session is in 'committed' state; no further "
  4785. "SQL can be emitted within this transaction."
  4786. )
  4787. elif self._state is PREPARED:
  4788. if not prepared_ok:
  4789. raise sa_exc.InvalidRequestError(
  4790. > "This session is in 'prepared' state; no further "
  4791. "SQL can be emitted within this transaction."
  4792. E sqlalchemy.exc.InvalidRequestError: This session is in 'prepared' state; no further SQL can be emitted within this transaction.
  4793.  
  4794. ../../../.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/session.py:264: InvalidRequestError
  4795. __________________________________________________________ test_shutdown __________________________________________________________
  4796.  
  4797. app = <jupyterhub.tests.mocking.MockHub object at 0x10cdc3978>
  4798.  
  4799. def test_shutdown(app):
  4800. r = api_request(app, 'shutdown', method='post',
  4801. > data=json.dumps({'servers': True, 'proxy': True,}),
  4802. )
  4803.  
  4804. jupyterhub/tests/test_api.py:841:
  4805. _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
  4806. jupyterhub/tests/test_api.py:40: in new_func
  4807. retval = func(app, *args, **kwargs)
  4808. jupyterhub/tests/test_api.py:90: in api_request
  4809. headers.update(auth_header(app.db, 'admin'))
  4810. jupyterhub/tests/test_api.py:76: in auth_header
  4811. user = find_user(db, name)
  4812. jupyterhub/tests/test_api.py:54: in find_user
  4813. return db.query(orm.User).filter(orm.User.name == name).first()
  4814. ../../../.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/query.py:2755: in first
  4815. ret = list(self[0:1])
  4816. ../../../.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/query.py:2547: in __getitem__
  4817. return list(res)
  4818. ../../../.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/query.py:2855: in __iter__
  4819. return self._execute_and_instances(context)
  4820. ../../../.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/query.py:2876: in _execute_and_instances
  4821. close_with_result=True)
  4822. ../../../.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/query.py:2885: in _get_bind_args
  4823. **kw
  4824. ../../../.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/query.py:2867: in _connection_from_session
  4825. conn = self.session.connection(**kw)
  4826. ../../../.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/session.py:998: in connection
  4827. execution_options=execution_options)
  4828. ../../../.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/session.py:1003: in _connection_for_bind
  4829. engine, execution_options)
  4830. ../../../.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/session.py:382: in _connection_for_bind
  4831. self._assert_active()
  4832. _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
  4833.  
  4834. self = <sqlalchemy.orm.session.SessionTransaction object at 0x10cf2c7b8>, prepared_ok = False, rollback_ok = False
  4835. deactive_ok = False, closed_msg = 'This transaction is closed'
  4836.  
  4837. def _assert_active(self, prepared_ok=False,
  4838. rollback_ok=False,
  4839. deactive_ok=False,
  4840. closed_msg="This transaction is closed"):
  4841. if self._state is COMMITTED:
  4842. raise sa_exc.InvalidRequestError(
  4843. "This session is in 'committed' state; no further "
  4844. "SQL can be emitted within this transaction."
  4845. )
  4846. elif self._state is PREPARED:
  4847. if not prepared_ok:
  4848. raise sa_exc.InvalidRequestError(
  4849. > "This session is in 'prepared' state; no further "
  4850. "SQL can be emitted within this transaction."
  4851. E sqlalchemy.exc.InvalidRequestError: This session is in 'prepared' state; no further SQL can be emitted within this transaction.
  4852.  
  4853. ../../../.pyenv/versions/3.6.1/lib/python3.6/site-packages/sqlalchemy/orm/session.py:264: InvalidRequestError
  4854. ========================================= 17 failed, 107 passed, 3 error in 50.42 seconds =========================================
  4855. Failed to stop user: (sqlite3.OperationalError) database is locked
  4856. Failed to stop user: This session is in 'prepared' state; no further SQL can be emitted within this transaction.
  4857. Failed to stop user: This session is in 'prepared' state; no further SQL can be emitted within this transaction.
  4858. Failed to stop user: This session is in 'prepared' state; no further SQL can be emitted within this transaction.
  4859. Failed to stop user: This session is in 'prepared' state; no further SQL can be emitted within this transaction.
  4860. Failed to stop user: This session is in 'prepared' state; no further SQL can be emitted within this transaction.
  4861. Failed to stop user: This session is in 'prepared' state; no further SQL can be emitted within this transaction.
  4862. Failed to stop user: This session is in 'prepared' state; no further SQL can be emitted within this transaction.
  4863. Failed to stop user: This session is in 'prepared' state; no further SQL can be emitted within this transaction.
  4864. Failed to stop user: This session is in 'prepared' state; no further SQL can be emitted within this transaction.
  4865. Failed to stop user: This session is in 'prepared' state; no further SQL can be emitted within this transaction.
  4866. [08:56:32 carol@cw-pro] jupyterhub on minrk-wait-up-fall-off [?$] $
Advertisement
Add Comment
Please, Sign In to add comment