· 6 years ago · Jul 12, 2019, 02:46 PM
1OperationalError at /api/torrent-pack
2attempt to write a readonly database
3
4Request Method: POST
5Request URL: http://tekyera.ru/api/torrent-pack
6Django Version: 2.2.3
7Python Executable: /usr/bin/python3
8Python Version: 3.7.3
9Python Path: ['/usr/lib/python37.zip', '/usr/lib/python3.7', '/usr/lib/python3.7/lib-dynload', '/usr/local/lib/python3.7/dist-packages', '/usr/lib/python3/dist-packages', '/root/Anilibria.TV/Backend']
10Server time: Пт, 12 Июл 2019 14:43:31 +0000
11Installed Applications:
12['django.contrib.auth',
13 'django.contrib.contenttypes',
14 'django.contrib.staticfiles',
15 'rest_framework',
16 'AnilibriaTV']
17Installed Middleware:
18['django.middleware.common.CommonMiddleware',
19 'django.middleware.locale.LocaleMiddleware',
20 'django.middleware.clickjacking.XFrameOptionsMiddleware']
21
22
23Traceback:
24
25File "/usr/local/lib/python3.7/dist-packages/django/db/backends/utils.py" in _execute
26 84. return self.cursor.execute(sql, params)
27
28File "/usr/local/lib/python3.7/dist-packages/django/db/backends/sqlite3/base.py" in execute
29 383. return Database.Cursor.execute(self, query, params)
30
31The above exception (attempt to write a readonly database) was the direct cause of the following exception:
32
33File "/usr/local/lib/python3.7/dist-packages/django/core/handlers/exception.py" in inner
34 34. response = get_response(request)
35
36File "/usr/local/lib/python3.7/dist-packages/django/core/handlers/base.py" in _get_response
37 115. response = self.process_exception_by_middleware(e, request)
38
39File "/usr/local/lib/python3.7/dist-packages/django/core/handlers/base.py" in _get_response
40 113. response = wrapped_callback(request, *callback_args, **callback_kwargs)
41
42File "/usr/local/lib/python3.7/dist-packages/django/views/decorators/csrf.py" in wrapped_view
43 54. return view_func(*args, **kwargs)
44
45File "/usr/local/lib/python3.7/dist-packages/django/views/generic/base.py" in view
46 71. return self.dispatch(request, *args, **kwargs)
47
48File "/usr/local/lib/python3.7/dist-packages/rest_framework/views.py" in dispatch
49 495. response = self.handle_exception(exc)
50
51File "/usr/local/lib/python3.7/dist-packages/rest_framework/views.py" in handle_exception
52 455. self.raise_uncaught_exception(exc)
53
54File "/usr/local/lib/python3.7/dist-packages/rest_framework/views.py" in dispatch
55 492. response = handler(request, *args, **kwargs)
56
57File "/root/Anilibria.TV/Backend/AnilibriaTV/api/torrent_pack.py" in post
58 61. print(to_delete.delete())
59
60File "/usr/local/lib/python3.7/dist-packages/django/db/models/query.py" in delete
61 711. deleted, _rows_count = collector.delete()
62
63File "/usr/local/lib/python3.7/dist-packages/django/db/models/deletion.py" in delete
64 294. count = qs._raw_delete(using=self.using)
65
66File "/usr/local/lib/python3.7/dist-packages/django/db/models/query.py" in _raw_delete
67 725. return sql.DeleteQuery(self.model).delete_qs(self, using)
68
69File "/usr/local/lib/python3.7/dist-packages/django/db/models/sql/subqueries.py" in delete_qs
70 75. cursor = self.get_compiler(using).execute_sql(CURSOR)
71
72File "/usr/local/lib/python3.7/dist-packages/django/db/models/sql/compiler.py" in execute_sql
73 1100. cursor.execute(sql, params)
74
75File "/usr/local/lib/python3.7/dist-packages/django/db/backends/utils.py" in execute
76 99. return super().execute(sql, params)
77
78File "/usr/local/lib/python3.7/dist-packages/django/db/backends/utils.py" in execute
79 67. return self._execute_with_wrappers(sql, params, many=False, executor=self._execute)
80
81File "/usr/local/lib/python3.7/dist-packages/django/db/backends/utils.py" in _execute_with_wrappers
82 76. return executor(sql, params, many, context)
83
84File "/usr/local/lib/python3.7/dist-packages/django/db/backends/utils.py" in _execute
85 84. return self.cursor.execute(sql, params)
86
87File "/usr/local/lib/python3.7/dist-packages/django/db/utils.py" in __exit__
88 89. raise dj_exc_value.with_traceback(traceback) from exc_value
89
90File "/usr/local/lib/python3.7/dist-packages/django/db/backends/utils.py" in _execute
91 84. return self.cursor.execute(sql, params)
92
93File "/usr/local/lib/python3.7/dist-packages/django/db/backends/sqlite3/base.py" in execute
94 383. return Database.Cursor.execute(self, query, params)
95
96Exception Type: OperationalError at /api/torrent-pack
97Exception Value: attempt to write a readonly database
98Request information:
99USER: AnonymousUser
100
101GET: No GET data
102
103POST: No POST data
104
105FILES: No FILES data
106
107COOKIES: No cookie data
108
109META:
110CONTENT_LENGTH = '81'
111CONTENT_TYPE = 'application/json'
112CONTEXT_DOCUMENT_ROOT = '/root/www'
113CONTEXT_PREFIX = ''
114DOCUMENT_ROOT = '/root/www'
115GATEWAY_INTERFACE = 'CGI/1.1'
116HTTP_ACCEPT = 'application/json'
117HTTP_ACCEPT_ENCODING = 'gzip, deflate'
118HTTP_ACCEPT_LANGUAGE = 'ru-RU,ru;q=0.9,en-US;q=0.8,en;q=0.7'
119HTTP_CONNECTION = 'keep-alive'
120HTTP_HOST = 'tekyera.ru'
121HTTP_ORIGIN = 'http://tekyera.ru'
122HTTP_REFERER = 'http://tekyera.ru/dwnld'
123HTTP_USER_AGENT = 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/75.0.3770.100 Safari/537.36'
124HTTP_X_COMPRESS = 'null'
125PATH_INFO = '/api/torrent-pack'
126PATH_TRANSLATED = '/root/Anilibria.TV/Backend/AnilibriaTV/wsgi.py/api/torrent-pack'
127QUERY_STRING = ''
128REMOTE_ADDR = '195.225.111.177'
129REMOTE_PORT = '1068'
130REQUEST_METHOD = 'POST'
131REQUEST_SCHEME = 'http'
132REQUEST_URI = '/api/torrent-pack'
133SCRIPT_FILENAME = '/root/Anilibria.TV/Backend/AnilibriaTV/wsgi.py'
134SCRIPT_NAME = ''
135SERVER_ADDR = '194.67.211.121'
136SERVER_ADMIN = 'webmaster@localhost'
137SERVER_NAME = 'tekyera.ru'
138SERVER_PORT = '80'
139SERVER_PROTOCOL = 'HTTP/1.1'
140SERVER_SIGNATURE = '<address>Apache/2.4.38 (Debian) Server at tekyera.ru Port 80</address>\n'
141SERVER_SOFTWARE = 'Apache/2.4.38 (Debian)'
142apache.version = '(2, 4, 38)'
143mod_wsgi.application_group = 'ih1577281.vds.myihor.ru|'
144mod_wsgi.callable_object = 'application'
145mod_wsgi.enable_sendfile = '0'
146mod_wsgi.handler_script = ''
147mod_wsgi.ignore_activity = '0'
148mod_wsgi.listener_host = ''
149mod_wsgi.listener_port = '80'
150mod_wsgi.path_info = '/api/torrent-pack'
151mod_wsgi.process_group = ''
152mod_wsgi.request_handler = 'wsgi-script'
153mod_wsgi.request_id = 'bOEr79z62lI'
154mod_wsgi.request_start = '1562942611644780'
155mod_wsgi.script_name = ''
156mod_wsgi.script_reloading = '1'
157mod_wsgi.script_start = '1562942611645823'
158mod_wsgi.thread_id = 0
159mod_wsgi.thread_requests = 3
160mod_wsgi.total_requests = 3
161mod_wsgi.version = '(4, 6, 5)'
162wsgi.errors = <_io.TextIOWrapper name='<wsgi.errors>' encoding='utf-8'>
163wsgi.file_wrapper = ''
164wsgi.input = <mod_wsgi.Input object at 0x7f9442978030>
165wsgi.input_terminated = True
166wsgi.multiprocess = True
167wsgi.multithread = False
168wsgi.run_once = False
169wsgi.url_scheme = 'http'
170wsgi.version = '(1, 0)'
171
172Settings:
173Using settings module AnilibriaTV.settings
174ABSOLUTE_URL_OVERRIDES = {}
175ADMINS = []
176ALLOWED_HOSTS = ['tekyera.ru']
177APPEND_SLASH = True
178AUTHENTICATION_BACKENDS = ['django.contrib.auth.backends.ModelBackend']
179AUTH_PASSWORD_VALIDATORS = '********************'
180AUTH_USER_MODEL = 'auth.User'
181BASE_DIR = '/root/Anilibria.TV/Backend'
182CACHES = {'default': {'BACKEND': 'django.core.cache.backends.locmem.LocMemCache'}}
183CACHE_MIDDLEWARE_ALIAS = 'default'
184CACHE_MIDDLEWARE_KEY_PREFIX = '********************'
185CACHE_MIDDLEWARE_SECONDS = 600
186CSRF_COOKIE_AGE = 31449600
187CSRF_COOKIE_DOMAIN = None
188CSRF_COOKIE_HTTPONLY = False
189CSRF_COOKIE_NAME = 'csrftoken'
190CSRF_COOKIE_PATH = '/'
191CSRF_COOKIE_SAMESITE = 'Lax'
192CSRF_COOKIE_SECURE = False
193CSRF_FAILURE_VIEW = 'django.views.csrf.csrf_failure'
194CSRF_HEADER_NAME = 'HTTP_X_CSRFTOKEN'
195CSRF_TRUSTED_ORIGINS = []
196CSRF_USE_SESSIONS = False
197DATABASES = {'default': {'ENGINE': 'django.db.backends.sqlite3', 'NAME': '/root/Anilibria.TV/Backend/db.sqlite3', 'ATOMIC_REQUESTS': False, 'AUTOCOMMIT': True, 'CONN_MAX_AGE': 0, 'OPTIONS': {}, 'TIME_ZONE': None, 'USER': '', 'PASSWORD': '********************', 'HOST': '', 'PORT': '', 'TEST': {'CHARSET': None, 'COLLATION': None, 'NAME': None, 'MIRROR': None}}}
198DATABASE_ROUTERS = []
199DATA_UPLOAD_MAX_MEMORY_SIZE = 2621440
200DATA_UPLOAD_MAX_NUMBER_FIELDS = 1000
201DATETIME_FORMAT = 'N j, Y, P'
202DATETIME_INPUT_FORMATS = ['%Y-%m-%d %H:%M:%S', '%Y-%m-%d %H:%M:%S.%f', '%Y-%m-%d %H:%M', '%Y-%m-%d', '%m/%d/%Y %H:%M:%S', '%m/%d/%Y %H:%M:%S.%f', '%m/%d/%Y %H:%M', '%m/%d/%Y', '%m/%d/%y %H:%M:%S', '%m/%d/%y %H:%M:%S.%f', '%m/%d/%y %H:%M', '%m/%d/%y']
203DATE_FORMAT = 'N j, Y'
204DATE_INPUT_FORMATS = ['%Y-%m-%d', '%m/%d/%Y', '%m/%d/%y', '%b %d %Y', '%b %d, %Y', '%d %b %Y', '%d %b, %Y', '%B %d %Y', '%B %d, %Y', '%d %B %Y', '%d %B, %Y']
205DEBUG = True
206DEBUG_PROPAGATE_EXCEPTIONS = False
207DECIMAL_SEPARATOR = '.'
208DEFAULT_CHARSET = 'utf-8'
209DEFAULT_CONTENT_TYPE = 'text/html'
210DEFAULT_EXCEPTION_REPORTER_FILTER = 'django.views.debug.SafeExceptionReporterFilter'
211DEFAULT_FILE_STORAGE = 'django.core.files.storage.FileSystemStorage'
212DEFAULT_FROM_EMAIL = 'webmaster@localhost'
213DEFAULT_INDEX_TABLESPACE = ''
214DEFAULT_TABLESPACE = ''
215DISALLOWED_USER_AGENTS = []
216EMAIL_BACKEND = 'django.core.mail.backends.smtp.EmailBackend'
217EMAIL_HOST = 'localhost'
218EMAIL_HOST_PASSWORD = '********************'
219EMAIL_HOST_USER = ''
220EMAIL_PORT = 25
221EMAIL_SSL_CERTFILE = None
222EMAIL_SSL_KEYFILE = '********************'
223EMAIL_SUBJECT_PREFIX = '[Django] '
224EMAIL_TIMEOUT = None
225EMAIL_USE_LOCALTIME = False
226EMAIL_USE_SSL = False
227EMAIL_USE_TLS = False
228FILE_CHARSET = 'utf-8'
229FILE_UPLOAD_DIRECTORY_PERMISSIONS = None
230FILE_UPLOAD_HANDLERS = ['django.core.files.uploadhandler.MemoryFileUploadHandler', 'django.core.files.uploadhandler.TemporaryFileUploadHandler']
231FILE_UPLOAD_MAX_MEMORY_SIZE = 2621440
232FILE_UPLOAD_PERMISSIONS = None
233FILE_UPLOAD_TEMP_DIR = None
234FIRST_DAY_OF_WEEK = 0
235FIXTURE_DIRS = []
236FORCE_SCRIPT_NAME = None
237FORMAT_MODULE_PATH = None
238FORM_RENDERER = 'django.forms.renderers.DjangoTemplates'
239IDS_FILE = '/var/www/files/ids.txt'
240IGNORABLE_404_URLS = []
241INSTALLED_APPS = ['django.contrib.auth', 'django.contrib.contenttypes', 'django.contrib.staticfiles', 'rest_framework', 'AnilibriaTV']
242INTERNAL_IPS = []
243LANGUAGES = [('af', 'Afrikaans'), ('ar', 'Arabic'), ('ast', 'Asturian'), ('az', 'Azerbaijani'), ('bg', 'Bulgarian'), ('be', 'Belarusian'), ('bn', 'Bengali'), ('br', 'Breton'), ('bs', 'Bosnian'), ('ca', 'Catalan'), ('cs', 'Czech'), ('cy', 'Welsh'), ('da', 'Danish'), ('de', 'German'), ('dsb', 'Lower Sorbian'), ('el', 'Greek'), ('en', 'English'), ('en-au', 'Australian English'), ('en-gb', 'British English'), ('eo', 'Esperanto'), ('es', 'Spanish'), ('es-ar', 'Argentinian Spanish'), ('es-co', 'Colombian Spanish'), ('es-mx', 'Mexican Spanish'), ('es-ni', 'Nicaraguan Spanish'), ('es-ve', 'Venezuelan Spanish'), ('et', 'Estonian'), ('eu', 'Basque'), ('fa', 'Persian'), ('fi', 'Finnish'), ('fr', 'French'), ('fy', 'Frisian'), ('ga', 'Irish'), ('gd', 'Scottish Gaelic'), ('gl', 'Galician'), ('he', 'Hebrew'), ('hi', 'Hindi'), ('hr', 'Croatian'), ('hsb', 'Upper Sorbian'), ('hu', 'Hungarian'), ('hy', 'Armenian'), ('ia', 'Interlingua'), ('id', 'Indonesian'), ('io', 'Ido'), ('is', 'Icelandic'), ('it', 'Italian'), ('ja', 'Japanese'), ('ka', 'Georgian'), ('kab', 'Kabyle'), ('kk', 'Kazakh'), ('km', 'Khmer'), ('kn', 'Kannada'), ('ko', 'Korean'), ('lb', 'Luxembourgish'), ('lt', 'Lithuanian'), ('lv', 'Latvian'), ('mk', 'Macedonian'), ('ml', 'Malayalam'), ('mn', 'Mongolian'), ('mr', 'Marathi'), ('my', 'Burmese'), ('nb', 'Norwegian Bokmål'), ('ne', 'Nepali'), ('nl', 'Dutch'), ('nn', 'Norwegian Nynorsk'), ('os', 'Ossetic'), ('pa', 'Punjabi'), ('pl', 'Polish'), ('pt', 'Portuguese'), ('pt-br', 'Brazilian Portuguese'), ('ro', 'Romanian'), ('ru', 'Russian'), ('sk', 'Slovak'), ('sl', 'Slovenian'), ('sq', 'Albanian'), ('sr', 'Serbian'), ('sr-latn', 'Serbian Latin'), ('sv', 'Swedish'), ('sw', 'Swahili'), ('ta', 'Tamil'), ('te', 'Telugu'), ('th', 'Thai'), ('tr', 'Turkish'), ('tt', 'Tatar'), ('udm', 'Udmurt'), ('uk', 'Ukrainian'), ('ur', 'Urdu'), ('vi', 'Vietnamese'), ('zh-hans', 'Simplified Chinese'), ('zh-hant', 'Traditional Chinese')]
244LANGUAGES_BIDI = ['he', 'ar', 'fa', 'ur']
245LANGUAGE_CODE = 'ru-RU'
246LANGUAGE_COOKIE_AGE = None
247LANGUAGE_COOKIE_DOMAIN = None
248LANGUAGE_COOKIE_NAME = 'django_language'
249LANGUAGE_COOKIE_PATH = '/'
250LOCALE_PATHS = []
251LOGGING = {}
252LOGGING_CONFIG = 'logging.config.dictConfig'
253LOGIN_REDIRECT_URL = '/accounts/profile/'
254LOGIN_URL = '/accounts/login/'
255LOGOUT_REDIRECT_URL = None
256MANAGERS = []
257MEDIA_ROOT = ''
258MEDIA_URL = ''
259MESSAGE_STORAGE = 'django.contrib.messages.storage.fallback.FallbackStorage'
260MIDDLEWARE = ['django.middleware.common.CommonMiddleware', 'django.middleware.locale.LocaleMiddleware', 'django.middleware.clickjacking.XFrameOptionsMiddleware']
261MIGRATION_MODULES = {}
262MONTH_DAY_FORMAT = 'F j'
263NUMBER_GROUPING = 0
264PASSWORD_HASHERS = '********************'
265PASSWORD_RESET_TIMEOUT_DAYS = '********************'
266PREPEND_WWW = False
267REST_FRAMEWORK = {'DEFAULT_THROTTLE_CLASSES': ('rest_framework.throttling.ScopedRateThrottle',), 'DEFAULT_THROTTLE_RATES': {'torrent-search': '1/second', 'archive-search': '1/second', 'archive-download': '30/minute', 'torrent-pack-pack': '1/minute', 'torrent-pack-download': '30/minute'}}
268ROOT_URLCONF = 'AnilibriaTV.urls'
269SECRET_KEY = '********************'
270SECURE_BROWSER_XSS_FILTER = False
271SECURE_CONTENT_TYPE_NOSNIFF = False
272SECURE_HSTS_INCLUDE_SUBDOMAINS = False
273SECURE_HSTS_PRELOAD = False
274SECURE_HSTS_SECONDS = 0
275SECURE_PROXY_SSL_HEADER = None
276SECURE_REDIRECT_EXEMPT = []
277SECURE_SSL_HOST = None
278SECURE_SSL_REDIRECT = False
279SERVER_EMAIL = 'root@localhost'
280SESSION_CACHE_ALIAS = 'default'
281SESSION_COOKIE_AGE = 1209600
282SESSION_COOKIE_DOMAIN = None
283SESSION_COOKIE_HTTPONLY = True
284SESSION_COOKIE_NAME = 'sessionid'
285SESSION_COOKIE_PATH = '/'
286SESSION_COOKIE_SAMESITE = 'Lax'
287SESSION_COOKIE_SECURE = False
288SESSION_ENGINE = 'django.contrib.sessions.backends.db'
289SESSION_EXPIRE_AT_BROWSER_CLOSE = False
290SESSION_FILE_PATH = None
291SESSION_SAVE_EVERY_REQUEST = False
292SESSION_SERIALIZER = 'django.contrib.sessions.serializers.JSONSerializer'
293SETTINGS_MODULE = 'AnilibriaTV.settings'
294SHORT_DATETIME_FORMAT = 'm/d/Y P'
295SHORT_DATE_FORMAT = 'm/d/Y'
296SIGNING_BACKEND = 'django.core.signing.TimestampSigner'
297SILENCED_SYSTEM_CHECKS = []
298STATICFILES_DIRS = []
299STATICFILES_FINDERS = ['django.contrib.staticfiles.finders.FileSystemFinder', 'django.contrib.staticfiles.finders.AppDirectoriesFinder']
300STATICFILES_STORAGE = 'django.contrib.staticfiles.storage.StaticFilesStorage'
301STATIC_ROOT = '/root/Anilibria.TV/Backend/static'
302STATIC_URL = '/static/'
303TEMPLATES = [{'BACKEND': 'django.template.backends.django.DjangoTemplates', 'DIRS': ['/root/Anilibria.TV/Backend/templates/'], 'APP_DIRS': True, 'OPTIONS': {'context_processors': ['django.template.context_processors.debug', 'django.template.context_processors.request', 'django.contrib.auth.context_processors.auth', 'django.contrib.messages.context_processors.messages']}}]
304TEMPORARY_TORRENT = '/root/Anilibria.TV/Backend/../Storage/.~temporary_torrent'
305TEST_NON_SERIALIZED_APPS = []
306TEST_RUNNER = 'django.test.runner.DiscoverRunner'
307THOUSAND_SEPARATOR = ','
308TIME_FORMAT = 'P'
309TIME_INPUT_FORMATS = ['%H:%M:%S', '%H:%M:%S.%f', '%H:%M']
310TIME_ZONE = 'UTC'
311TORRENT_STORAGE = '/root/Anilibria.TV/Backend/../Storage'
312USERS_ZIP_STORAGE = '/root/Anilibria.TV/Backend/../Storage/Zips'
313USE_I18N = True
314USE_L10N = True
315USE_THOUSAND_SEPARATOR = False
316USE_TZ = True
317USE_X_FORWARDED_HOST = False
318USE_X_FORWARDED_PORT = False
319WSGI_APPLICATION = 'AnilibriaTV.wsgi.application'
320X_FRAME_OPTIONS = 'SAMEORIGIN'
321YEAR_MONTH_FORMAT = 'F Y'
322
323
324You're seeing this error because you have DEBUG = True in your
325Django settings file. Change that to False, and Django will
326display a standard page generated by the handler for this status code.