Fatal Python error: GC object already tracked
I'd take it up with the cpython / pysqlite folks. Sharing sqlite connections across python threads is weird, and peewee uses a connection-per-thread model anyways so I am not even sure how that is working for you. You probably need a minimal repro using threads and stdlib sqlite3.
I'm having a weird intermittent error when all of the following conditions are met:
* Using an in-memory sqlite3 database initialized with thread_safe=False, check_same_thread=False
* Running in a different thread than the one that initialized the database
* Accessing an object's _meta.backrefs values

Running inside the debugger in vs.code will make this occur much more frequently.

The actual Python error is:
```
Fatal Python error: GC object already tracked
```

When the crash happens, all the other threads are in wait() and the crashed one is here:
```
  File "/opt/conda3/lib/python3.7/site-packages/peewee.py", line 4395 in __get__
```

I realize these conditions are somewhat obscure - I'm talking through a REST API to a backend that is running with the same data model but with a Postgres database, and using the same model on the client end and updating the responses into the local sqlite3 in-memory database. The data travels over using *playhouse.shortcuts.model_to_dict* and reversed using dict_to_model. Just wondering if this is something easily resolved or if I need to bring all database queries back to the main thread...

Peewee version: 3.13.2

Python version: 3.7.6 (Anaconda, MacOS)