Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- 2013-06-10 15:31:29,776 API POST /dns/dnszone/1/records/ {'content': '10.255.255.253', 'name': 'noc', 'tags': '', 'priority': None, 'ttl': None, 'type': 'A', 'id': 0}
- 2013-06-10 15:31:29,918 UNHANDLED EXCEPTION (2013-06-10 15:31:29.889645)
- Working directory: /opt/noc
- <class 'django.db.utils.DatabaseError'>
- array value must start with "{" or dimension information
- LINE 1: ..."."zone_id" = 1 AND "dns_dnszonerecord"."tags" = E'' AND "...
- ^
- START OF TRACEBACK
- ------------------------------------------------------------------------
- File: /opt/noc/lib/python2.7/site-packages/django/db/backends/postgresql_psycopg2/base.py (Line: 52)
- Function: execute
- 45 """
- 46
- 47 def __init__(self, cursor):
- 48 self.cursor = cursor
- 49
- 50 def execute(self, query, args=None):
- 51 try:
- 52 ==> return self.cursor.execute(query, args)
- 53 except Database.IntegrityError, e:
- 54 raise utils.IntegrityError, utils.IntegrityError(*tuple(e)), sys.exc_info()[2]
- 55 except Database.DatabaseError, e:
- 56 raise utils.DatabaseError, utils.DatabaseError(*tuple(e)), sys.exc_info()[2]
- 57
- 58 def executemany(self, query, args):
- Variables:
- query =
- 'SELECT "dns_dnszonerecord"."id", "dns_dnszonerecord"."zone_id", "dns_dnszonerecord"."name", "dns_dnszonerecord"."ttl", "dns_dnszonerecord"."type", "dns_dnszonerecord"."priority", "dns_dnszonerecord"."content", "dns_dnszonerecord"."tags" FROM "dns_dnszonerecord" WHERE ("dns_dnszonerecord"."content" = %s AND "dns_dnszonerecord"."name" = %s AND "dns_dnszonerecord"."zone_id" = %s AND "dns_dnszonerecord"."tags" = %s AND "dns_dnszonerecord"."priority" IS NULL AND "dns_dnszonerecord"."ttl" IS NULL AND "dns_dnszonerecord"."type" = %s )'
- self =
- <django.db.backends.postgresql_psycopg2.base.CursorWrapper object at 0x80f0c4d90>
- args = ('10.255.255.253', 'noc', 1, '', 'A')
- e =
- DataError('array value must start with "{" or dimension information\nLINE 1: ..."."zone_id" = 1 AND "dns_dnszonerecord"."tags" = E\'\' AND "...\n ^\n',)
- ------------------------------------------------------------------------
- File: /opt/noc/lib/python2.7/site-packages/django/db/backends/util.py (Line: 40)
- Function: execute
- 33
- 34 class CursorDebugWrapper(CursorWrapper):
- 35
- 36 def execute(self, sql, params=()):
- 37 self.set_dirty()
- 38 start = time()
- 39 try:
- 40 ==> return self.cursor.execute(sql, params)
- 41 finally:
- 42 stop = time()
- 43 duration = stop - start
- 44 sql = self.db.ops.last_executed_query(self.cursor, sql, params)
- 45 self.db.queries.append({
- 46 'sql': sql,
- Variables:
- self = <django.db.backends.util.CursorDebugWrapper object at 0x80f0c8190>
- stop = 1370867489.817686
- start = 1370867489.781857
- params = ('10.255.255.253', 'noc', 1, '', 'A')
- sql =
- 'SELECT "dns_dnszonerecord"."id", "dns_dnszonerecord"."zone_id", "dns_dnszonerecord"."name", "dns_dnszonerecord"."ttl", "dns_dnszonerecord"."type", "dns_dnszonerecord"."priority", "dns_dnszonerecord"."content", "dns_dnszonerecord"."tags" FROM "dns_dnszonerecord" WHERE ("dns_dnszonerecord"."content" = E\'10.255.255.253\' AND "dns_dnszonerecord"."name" = E\'noc\' AND "dns_dnszonerecord"."zone_id" = 1 AND "dns_dnszonerecord"."tags" = E\'\' AND "dns_dnszonerecord"."priority" IS NULL AND "dns_dnszonerecord"."ttl" IS NULL AND "dns_dnszonerecord"."type" = E\'A\' )'
- duration = 0.03582906723022461
- ------------------------------------------------------------------------
- File: /opt/noc/lib/python2.7/site-packages/django/db/models/sql/compiler.py (Line: 818)
- Function: execute_sql
- 811 except EmptyResultSet:
- 812 if result_type == MULTI:
- 813 return empty_iter()
- 814 else:
- 815 return
- 816
- 817 cursor = self.connection.cursor()
- 818 ==> cursor.execute(sql, params)
- 819
- 820 if not result_type:
- 821 return cursor
- 822 if result_type == SINGLE:
- 823 if self.query.ordering_aliases:
- 824 return cursor.fetchone()[:-len(self.query.ordering_aliases)]
- Variables:
- cursor = <django.db.backends.util.CursorDebugWrapper object at 0x80f0c8190>
- self = <django.db.models.sql.compiler.SQLCompiler object at 0x80f0c4e90>
- params = ('10.255.255.253', 'noc', 1, '', 'A')
- result_type = 'multi'
- sql =
- 'SELECT "dns_dnszonerecord"."id", "dns_dnszonerecord"."zone_id", "dns_dnszonerecord"."name", "dns_dnszonerecord"."ttl", "dns_dnszonerecord"."type", "dns_dnszonerecord"."priority", "dns_dnszonerecord"."content", "dns_dnszonerecord"."tags" FROM "dns_dnszonerecord" WHERE ("dns_dnszonerecord"."content" = %s AND "dns_dnszonerecord"."name" = %s AND "dns_dnszonerecord"."zone_id" = %s AND "dns_dnszonerecord"."tags" = %s AND "dns_dnszonerecord"."priority" IS NULL AND "dns_dnszonerecord"."ttl" IS NULL AND "dns_dnszonerecord"."type" = %s )'
- ------------------------------------------------------------------------
- File: /opt/noc/lib/python2.7/site-packages/django/db/models/sql/compiler.py (Line: 763)
- Function: results_iter
- 756 fields = None
- 757 has_aggregate_select = bool(self.query.aggregate_select)
- 758 # Set transaction dirty if we're using SELECT FOR UPDATE to ensure
- 759 # a subsequent commit/rollback is executed, so any database locks
- 760 # are released.
- 761 if self.query.select_for_update and transaction.is_managed(self.using):
- 762 transaction.set_dirty(self.using)
- 763 ==> for rows in self.execute_sql(MULTI):
- 764 for row in rows:
- 765 if resolve_columns:
- 766 if fields is None:
- 767 # We only set this up here because
- 768 # related_select_fields isn't populated until
- 769 # execute_sql() has been called.
- Variables:
- fields = None
- self = <django.db.models.sql.compiler.SQLCompiler object at 0x80f0c4e90>
- has_aggregate_select = False
- resolve_columns = False
- ------------------------------------------------------------------------
- File: /opt/noc/lib/python2.7/site-packages/django/db/models/query.py (Line: 291)
- Function: iterator
- 284 # Cache db and model outside the loop
- 285 db = self.db
- 286 model = self.model
- 287 compiler = self.query.get_compiler(using=db)
- 288 if fill_cache:
- 289 klass_info = get_klass_info(model, max_depth=max_depth,
- 290 requested=requested, only_load=only_load)
- 291 ==> for row in compiler.results_iter():
- 292 if fill_cache:
- 293 obj, _ = get_cached_row(row, index_start, db, klass_info,
- 294 offset=len(aggregate_select))
- 295 else:
- 296 if skip:
- 297 row_data = row[index_start:aggregate_start]
- Variables:
- requested = None
- fill_cache = False
- aggregate_select = []
- fields =
- [<django.db.models.fields.AutoField: id>,
- <django.db.models.fields.related.ForeignKey: zone>,
- <django.db.models.fields.CharField: name>,
- <django.db.models.fields.IntegerField: ttl>,
- <django.db.models.fields.CharField: type>,
- <django.db.models.fields.IntegerField: priority>,
- <django.db.models.fields.CharField: content>,
- <noc.lib.fields.TagsField: tags>]
- skip = None
- self = repr() failed
- load_fields = []
- db = 'default'
- index_start = 0
- extra_select = []
- aggregate_start = 8
- model = <class 'noc.dns.models.dnszonerecord.DNSZoneRecord'>
- only_load = {}
- max_depth = 5
- compiler = <django.db.models.sql.compiler.SQLCompiler object at 0x80f0c4e90>
- ------------------------------------------------------------------------
- File: /opt/noc/lib/python2.7/site-packages/django/db/models/query.py (Line: 85)
- Function: __len__
- 78 # Since __len__ is called quite frequently (for example, as part of
- 79 # list(qs), we make some effort here to be as efficient as possible
- 80 # whilst not messing up any existing iterators against the QuerySet.
- 81 if self._result_cache is None:
- 82 if self._iter:
- 83 self._result_cache = list(self._iter)
- 84 else:
- 85 ==> self._result_cache = list(self.iterator())
- 86 elif self._iter:
- 87 self._result_cache.extend(self._iter)
- 88 if self._prefetch_related_lookups and not self._prefetch_done:
- 89 self._prefetch_related_objects()
- 90 return len(self._result_cache)
- 91
- Variables:
- self = repr() failed
- ------------------------------------------------------------------------
- File: /opt/noc/lib/python2.7/site-packages/django/db/models/query.py (Line: 361)
- Function: get
- 354 """
- 355 Performs the query and returns a single object matching the given
- 356 keyword arguments.
- 357 """
- 358 clone = self.filter(*args, **kwargs)
- 359 if self.query.can_filter():
- 360 clone = clone.order_by()
- 361 ==> num = len(clone)
- 362 if num == 1:
- 363 return clone._result_cache[0]
- 364 if not num:
- 365 raise self.model.DoesNotExist("%s matching query does not exist."
- 366 % self.model._meta.object_name)
- 367 raise self.model.MultipleObjectsReturned("get() returned more than one %s -- it returned %s! Lookup parameters were %s"
- Variables:
- clone = repr() failed
- args = ()
- self = repr() failed
- kwargs =
- {'content': '10.255.255.253',
- 'name': 'noc',
- 'priority': None,
- 'tags': '',
- 'ttl': None,
- 'type': 'A',
- 'zone': <DNSZone: mcd.net.ua>}
- ------------------------------------------------------------------------
- File: /opt/noc/lib/app/modelinline.py (Line: 366)
- Function: api_create
- 359 try:
- 360 # Exclude callable values from query
- 361 # (Django raises exception on pyRules)
- 362 # @todo: Check unique fields only?
- 363 qattrs = dict((k, attrs[k])
- 364 for k in attrs if not callable(attrs[k]))
- 365 # Check for duplicates
- 366 ==> self.queryset(request).get(**qattrs)
- 367 return self.app.render_json(
- 368 {
- 369 "status": False,
- 370 "message": "Duplicated record"
- 371 },
- 372 status=self.CONFLICT)
- Variables:
- qattrs =
- {'content': '10.255.255.253',
- 'name': 'noc',
- 'priority': None,
- 'tags': '',
- 'ttl': None,
- 'type': 'A',
- 'zone': <DNSZone: mcd.net.ua>}
- self = <noc.lib.app.modelinline.ModelInline object at 0x80f245fd0>
- request =
- <WSGIRequest
- path:/dns/dnszone/1/records/,
- GET:<QueryDict: {u'_dc': [u'1370867068721'], u'__format': [u'ext']}>,
- POST:<QueryDict: {u'{"id":0,"name":"noc","ttl":null,"priority":null,"type":"A","content":"10.255.255.253","tags":""}': [u'']}>,
- COOKIES:{'IV': 'QL3j0DJ%2BVxj2DLT6j%2Bp0tqwWxkiEl0BI6iU%2BK1Dxj6g%3D',
- 'Key': 'mg%2FpCJ31oIG%2B1%2BqOiJuMUXywqpS2p%2BPV7dQBR8dcySY%3D',
- 'PHPSESSID': '7613c322a5e7ac22bca1bb869e5e0d31',
- 'csrftoken': '4b6vE1ZFHEP78vgvbgVvtROdGcqVDox7',
- 'sessionid': 'e29cda43485e524eb74db8eeaa05abfc'},
- META:{'CONTENT_LENGTH': '96',
- 'CONTENT_TYPE': 'application/json',
- 'HTTP_ACCEPT': '*/*',
- 'HTTP_ACCEPT_CHARSET': 'windows-1251,utf-8;q=0.7,*;q=0.3',
- 'HTTP_ACCEPT_ENCODING': 'gzip,deflate,sdch',
- 'HTTP_ACCEPT_LANGUAGE': 'ru-RU,ru;q=0.8,en-US;q=0.6,en;q=0.4',
- 'HTTP_AUTHORIZATION': 'Basic emFpa2E6KEIwNjBESEVF',
- 'HTTP_CONNECTION': 'Keep-Alive',
- 'HTTP_COOKIE': 'PHPSESSID=7613c322a5e7ac22bca1bb869e5e0d31; Key=mg%2FpCJ31oIG%2B1%2BqOiJuMUXywqpS2p%2BPV7dQBR8dcySY%3D; IV=QL3j0DJ%2BVxj2DLT6j%2Bp0tqwWxkiEl0BI6iU%2BK1Dxj6g%3D; sessionid=e29cda43485e524eb74db8eeaa05abfc; csrftoken=4b6vE1ZFHEP78vgvbgVvtROdGcqVDox7',
- 'HTTP_HOST': 'localhost:8000',
- 'HTTP_ORIGIN': 'https://noc.mcd.net.ua',
- 'HTTP_REFERER': 'https://noc.mcd.net.ua/main/desktop/',
- 'HTTP_REMOTE_USER': 'zaika',
- 'HTTP_USER_AGENT': 'Mozilla/5.0 (X11; FreeBSD amd64) AppleWebKit/537.22 (KHTML, like Gecko) Chrome/25.0.1364.97 Safari/537.22',
- 'HTTP_X_FORWARDED_FOR': '193.254.232.25',
- 'HTTP_X_FORWARDED_HOST': 'noc.mcd.net.ua',
- 'HTTP_X_FORWARDED_SERVER': 'noc.mcd.net.ua',
- 'HTTP_X_REQUESTED_WITH': 'XMLHttpRequest',
- 'PATH_INFO': u'/dns/dnszone/1/records/',
- 'QUERY_STRING': '_dc=1370867068721&__format=ext',
- 'REMOTE_ADDR': '127.0.0.1',
- 'REQUEST_METHOD': 'POST',
- 'SCRIPT_NAME': u'',
- 'SERVER_NAME': 'localhost',
- 'SERVER_PORT': '8000',
- 'SERVER_PROTOCOL': 'HTTP/1.1',
- 'wsgi.errors': <open file '/dev/null', mode 'a+' at 0x8074b5030>,
- 'wsgi.input': <_io.BytesIO object at 0x80f05e770>,
- 'wsgi.multiprocess': True,
- 'wsgi.multithread': False,
- 'wsgi.run_once': False,
- 'wsgi.url_scheme': 'http',
- 'wsgi.version': (1, 0)}>
- attrs =
- {'content': '10.255.255.253',
- 'name': 'noc',
- 'priority': None,
- 'tags': '',
- 'ttl': None,
- 'type': 'A',
- 'zone': <DNSZone: mcd.net.ua>}
- parent = <DNSZone: mcd.net.ua>
- ------------------------------------------------------------------------
- File: /opt/noc/lib/app/site.py (Line: 232)
- Function: inner
- 225 for k, v in request.POST.lists())
- 226 elif request.method == "GET":
- 227 a = dict((k, v[0] if len(v) == 1 else v)
- 228 for k, v in request.GET.lists())
- 229 logging.debug("API %s %s %s" % (request.method,
- 230 request.path, a))
- 231 # Call handler
- 232 ==> r = v(request, *args, **kwargs)
- 233 # Dump SQL statements
- 234 if self.log_sql_statements:
- 235 from django.db import connections
- 236 tsc = 0
- 237 sc = defaultdict(int)
- 238 for conn in connections.all():
- Variables:
- a =
- {'content': '10.255.255.253',
- 'id': 0,
- 'name': 'noc',
- 'priority': None,
- 'tags': '',
- 'ttl': None,
- 'type': 'A'}
- v = <functools.partial object at 0x80f249520>
- view_map =
- {'GET': <functools.partial object at 0x80f2494c8>,
- 'POST': <functools.partial object at 0x80f249520>}
- Form = <class 'django.forms.forms.Form'>
- args = ()
- DictParameter = <class 'noc.sa.interfaces.base.DictParameter'>
- self = <noc.lib.app.site.Site object at 0x80b394390>
- to_log_api_call = True
- request =
- <WSGIRequest
- path:/dns/dnszone/1/records/,
- GET:<QueryDict: {u'_dc': [u'1370867068721'], u'__format': [u'ext']}>,
- POST:<QueryDict: {u'{"id":0,"name":"noc","ttl":null,"priority":null,"type":"A","content":"10.255.255.253","tags":""}': [u'']}>,
- COOKIES:{'IV': 'QL3j0DJ%2BVxj2DLT6j%2Bp0tqwWxkiEl0BI6iU%2BK1Dxj6g%3D',
- 'Key': 'mg%2FpCJ31oIG%2B1%2BqOiJuMUXywqpS2p%2BPV7dQBR8dcySY%3D',
- 'PHPSESSID': '7613c322a5e7ac22bca1bb869e5e0d31',
- 'csrftoken': '4b6vE1ZFHEP78vgvbgVvtROdGcqVDox7',
- 'sessionid': 'e29cda43485e524eb74db8eeaa05abfc'},
- META:{'CONTENT_LENGTH': '96',
- 'CONTENT_TYPE': 'application/json',
- 'HTTP_ACCEPT': '*/*',
- 'HTTP_ACCEPT_CHARSET': 'windows-1251,utf-8;q=0.7,*;q=0.3',
- 'HTTP_ACCEPT_ENCODING': 'gzip,deflate,sdch',
- 'HTTP_ACCEPT_LANGUAGE': 'ru-RU,ru;q=0.8,en-US;q=0.6,en;q=0.4',
- 'HTTP_AUTHORIZATION': 'Basic emFpa2E6KEIwNjBESEVF',
- 'HTTP_CONNECTION': 'Keep-Alive',
- 'HTTP_COOKIE': 'PHPSESSID=7613c322a5e7ac22bca1bb869e5e0d31; Key=mg%2FpCJ31oIG%2B1%2BqOiJuMUXywqpS2p%2BPV7dQBR8dcySY%3D; IV=QL3j0DJ%2BVxj2DLT6j%2Bp0tqwWxkiEl0BI6iU%2BK1Dxj6g%3D; sessionid=e29cda43485e524eb74db8eeaa05abfc; csrftoken=4b6vE1ZFHEP78vgvbgVvtROdGcqVDox7',
- 'HTTP_HOST': 'localhost:8000',
- 'HTTP_ORIGIN': 'https://noc.mcd.net.ua',
- 'HTTP_REFERER': 'https://noc.mcd.net.ua/main/desktop/',
- 'HTTP_REMOTE_USER': 'zaika',
- 'HTTP_USER_AGENT': 'Mozilla/5.0 (X11; FreeBSD amd64) AppleWebKit/537.22 (KHTML, like Gecko) Chrome/25.0.1364.97 Safari/537.22',
- 'HTTP_X_FORWARDED_FOR': '193.254.232.25',
- 'HTTP_X_FORWARDED_HOST': 'noc.mcd.net.ua',
- 'HTTP_X_FORWARDED_SERVER': 'noc.mcd.net.ua',
- 'HTTP_X_REQUESTED_WITH': 'XMLHttpRequest',
- 'PATH_INFO': u'/dns/dnszone/1/records/',
- 'QUERY_STRING': '_dc=1370867068721&__format=ext',
- 'REMOTE_ADDR': '127.0.0.1',
- 'REQUEST_METHOD': 'POST',
- 'SCRIPT_NAME': u'',
- 'SERVER_NAME': 'localhost',
- 'SERVER_PORT': '8000',
- 'SERVER_PROTOCOL': 'HTTP/1.1',
- 'wsgi.errors': <open file '/dev/null', mode 'a+' at 0x8074b5030>,
- 'wsgi.input': <_io.BytesIO object at 0x80f05e770>,
- 'wsgi.multiprocess': True,
- 'wsgi.multithread': False,
- 'wsgi.run_once': False,
- 'wsgi.url_scheme': 'http',
- 'wsgi.version': (1, 0)}>
- InterfaceTypeError = <class 'noc.sa.interfaces.base.InterfaceTypeError'>
- PermissionDenied = <class 'noc.lib.app.access.PermissionDenied'>
- kwargs = {'parent': u'1'}
- tb =
- u'UNHANDLED EXCEPTION (2013-06-10 15:31:29.817736)\nWorking directory: /opt/noc\n<class \'django.db.utils.DatabaseError\'>\narray value must start with "{" or dimension information\nLINE 1: ..."."zone_id" = 1 AND "dns_dnszonerecord"."tags" = E\'\' AND "...\n ^\n\nSTART OF TRACEBACK\n------------------------------------------------------------------------\nFile: /opt/noc/lib/python2.7/site-packages/django/db/backends/postgresql_psycopg2/base.py (Line: 52)\nFunction: execute\n 45 """\n 46 \n 47 def __init__(self, cursor):\n 48 self.cursor = cursor\n 49 \n 50 def execute(self, query, args=None):\n 51 try:\n 52 ==> return self.cursor.execute(query, args)\n 53 except Database.IntegrityError, e:\n 54 raise utils.IntegrityError, utils.IntegrityError(*tuple(e)), sys.exc_info()[2]\n 55 except Database.DatabaseError, e:\n 56 raise utils.DatabaseError, utils.DatabaseError(*tuple(e)), sys.exc_info()[2]\n 57 \n 58 def executemany(self, query, args):\nVariables:\n query = \n\'SELECT "dns_dnszonerecord"."id", "dns_dnszonerecord"."zone_id", "dns_dnszonerecord"."name", "dns_dnszonerecord"."ttl", "dns_dnszonerecord"."type", "dns_dnszonerecord"."priority", "dns_dnszonerecord"."content", "dns_dnszonerecord"."tags" FROM "dns_dnszonerecord" WHERE ("dns_dnszonerecord"."content" = %s AND "dns_dnszonerecord"."name" = %s AND "dns_dnszonerecord"."zone_id" = %s AND "dns_dnszonerecord"."tags" = %s AND "dns_dnszonerecord"."priority" IS NULL AND "dns_dnszonerecord"."ttl" IS NULL AND "dns_dnszonerecord"."type" = %s )\'\n self = \n<django.db.backends.postgresql_psycopg2.base.CursorWrapper object at 0x80f0c4d90>\n args = (\'10.255.255.253\', \'noc\', 1, \'\', \'A\')\n e = \nDataError(\'array value must start with "{" or dimension information\\nLINE 1: ..."."zone_id" = 1 AND "dns_dnszonerecord"."tags" = E\\\'\\\' AND "...\\n ^\\n\',)\n------------------------------------------------------------------------\nFile: /opt/noc/lib/python2.7/site-packages/django/db/backends/util.py (Line: 40)\nFunction: execute\n 33 \n 34 class CursorDebugWrapper(CursorWrapper):\n 35 \n 36 def execute(self, sql, params=()):\n 37 self.set_dirty()\n 38 start = time()\n 39 try:\n 40 ==> return self.cursor.execute(sql, params)\n 41 finally:\n 42 stop = time()\n 43 duration = stop - start\n 44 sql = self.db.ops.last_executed_query(self.cursor, sql, params)\n 45 self.db.queries.append({\n 46 \'sql\': sql,\nVariables:\n self = <django.db.backends.util.CursorDebugWrapper object at 0x80f0c8190>\n stop = 1370867489.817686\n start = 1370867489.781857\n params = (\'10.255.255.253\', \'noc\', 1, \'\', \'A\')\n sql = \n\'SELECT "dns_dnszonerecord"."id", "dns_dnszonerecord"."zone_id", "dns_dnszonerecord"."name", "dns_dnszonerecord"."ttl", "dns_dnszonerecord"."type", "dns_dnszonerecord"."priority", "dns_dnszonerecord"."content", "dns_dnszonerecord"."tags" FROM "dns_dnszonerecord" WHERE ("dns_dnszonerecord"."content" = E\\\'10.255.255.253\\\' AND "dns_dnszonerecord"."name" = E\\\'noc\\\' AND "dns_dnszonerecord"."zone_id" = 1 AND "dns_dnszonerecord"."tags" = E\\\'\\\' AND "dns_dnszonerecord"."priority" IS NULL AND "dns_dnszonerecord"."ttl" IS NULL AND "dns_dnszonerecord"."type" = E\\\'A\\\' )\'\n duration = 0.03582906723022461\n------------------------------------------------------------------------\nFile: /opt/noc/lib/python2.7/site-packages/django/db/models/sql/compiler.py (Line: 818)\nFunction: execute_sql\n 811 except EmptyResultSet:\n 812 if result_type == MULTI:\n 813 return empty_iter()\n 814 else:\n 815 return\n 816 \n 817 cursor = self.connection.cursor()\n 818 ==> cursor.execute(sql, params)\n 819 \n 820 if not result_type:\n 821 return cursor\n 822 if result_type == SINGLE:\n 823 if self.query.ordering_aliases:\n 824 return cursor.fetchone()[:-len(self.query.ordering_aliases)]\nVariables:\n cursor = <django.db.backends.util.CursorDebugWrapper object at 0x80f0c8190>\n self = <django.db.models.sql.compiler.SQLCompiler object at 0x80f0c4e90>\n params = (\'10.255.255.253\', \'noc\', 1, \'\', \'A\')\n result_type = \'multi\'\n sql = \n\'SELECT "dns_dnszonerecord"."id", "dns_dnszonerecord"."zone_id", "dns_dnszonerecord"."name", "dns_dnszonerecord"."ttl", "dns_dnszonerecord"."type", "dns_dnszonerecord"."priority", "dns_dnszonerecord"."content", "dns_dnszonerecord"."tags" FROM "dns_dnszonerecord" WHERE ("dns_dnszonerecord"."content" = %s AND "dns_dnszonerecord"."name" = %s AND "dns_dnszonerecord"."zone_id" = %s AND "dns_dnszonerecord"."tags" = %s AND "dns_dnszonerecord"."priority" IS NULL AND "dns_dnszonerecord"."ttl" IS NULL AND "dns_dnszonerecord"."type" = %s )\'\n------------------------------------------------------------------------\nFile: /opt/noc/lib/python2.7/site-packages/django/db/models/sql/compiler.py (Line: 763)\nFunction: results_iter\n 756 fields = None\n 757 has_aggregate_select = bool(self.query.aggregate_select)\n 758 # Set transaction dirty if we\'re using SELECT FOR UPDATE to ensure\n 759 # a subsequent commit/rollback is executed, so any database locks\n 760 # are released.\n 761 if self.query.select_for_update and transaction.is_managed(self.using):\n 762 transaction.set_dirty(self.using)\n 763 ==> for rows in self.execute_sql(MULTI):\n 764 for row in rows:\n 765 if resolve_columns:\n 766 if fields is None:\n 767 # We only set this up here because\n 768 # related_select_fields isn\'t populated until\n 769 # execute_sql() has been called.\nVariables:\n fields = None\n self = <django.db.models.sql.compiler.SQLCompiler object at 0x80f0c4e90>\nhas_aggregate_select = False\n resolve_columns = False\n------------------------------------------------------------------------\nFile: /opt/noc/lib/python2.7/site-packages/django/db/models/query.py (Line: 291)\nFunction: iterator\n 284 # Cache db and model outside the loop\n 285 db = self.db\n 286 model = self.model\n 287 compiler = self.query.get_compiler(using=db)\n 288 if fill_cache:\n 289 klass_info = get_klass_info(model, max_depth=max_depth,\n 290 requested=requested, only_load=only_load)\n 291 ==> for row in compiler.results_iter():\n 292 if fill_cache:\n 293 obj, _ = get_cached_row(row, index_start, db, klass_info,\n 294 offset=len(aggregate_select))\n 295 else:\n 296 if skip:\n 297 row_data = row[index_start:aggregate_start]\nVariables:\n requested = None\n fill_cache = False\n aggregate_select = []\n fields = \n[<django.db.models.fields.AutoField: id>,\n <django.db.models.fields.related.ForeignKey: zone>,\n <django.db.models.fields.CharField: name>,\n <django.db.models.fields.IntegerField: ttl>,\n <django.db.models.fields.CharField: type>,\n <django.db.models.fields.IntegerField: priority>,\n <django.db.models.fields.CharField: content>,\n <noc.lib.fields.TagsField: tags>]\n skip = None\n self = repr() failed\n load_fields = []\n db = \'default\'\n index_start = 0\n extra_select = []\n aggregate_start = 8\n model = <class \'noc.dns.models.dnszonerecord.DNSZoneRecord\'>\n only_load = {}\n max_depth = 5\n compiler = <django.db.models.sql.compiler.SQLCompiler object at 0x80f0c4e90>\n------------------------------------------------------------------------\nFile: /opt/noc/lib/python2.7/site-packages/django/db/models/query.py (Line: 85)\nFunction: __len__\n 78 # Since __len__ is called quite frequently (for example, as part of\n 79 # list(qs), we make some effort here to be as efficient as possible\n 80 # whilst not messing up any existing iterators against the QuerySet.\n 81 if self._result_cache is None:\n 82 if self._iter:\n 83 self._result_cache = list(self._iter)\n 84 else:\n 85 ==> self._result_cache = list(self.iterator())\n 86 elif self._iter:\n 87 self._result_cache.extend(self._iter)\n 88 if self._prefetch_related_lookups and not self._prefetch_done:\n 89 self._prefetch_related_objects()\n 90 return len(self._result_cache)\n 91 \nVariables:\n self = repr() failed\n------------------------------------------------------------------------\nFile: /opt/noc/lib/python2.7/site-packages/django/db/models/query.py (Line: 361)\nFunction: get\n 354 """\n 355 Performs the query and returns a single object matching the given\n 356 keyword arguments.\n 357 """\n 358 clone = self.filter(*args, **kwargs)\n 359 if self.query.can_filter():\n 360 clone = clone.order_by()\n 361 ==> num = len(clone)\n 362 if num == 1:\n 363 return clone._result_cache[0]\n 364 if not num:\n 365 raise self.model.DoesNotExist("%s matching query does not exist."\n 366 % self.model._meta.object_name)\n 367 raise self.model.MultipleObjectsReturned("get() returned more than one %s -- it returned %s! Lookup parameters were %s"\nVariables:\n clone = repr() failed\n args = ()\n self = repr() failed\n kwargs = \n{\'content\': \'10.255.255.253\',\n \'name\': \'noc\',\n \'priority\': None,\n \'tags\': \'\',\n \'ttl\': None,\n \'type\': \'A\',\n \'zone\': <DNSZone: mcd.net.ua>}\n------------------------------------------------------------------------\nFile: /opt/noc/lib/app/modelinline.py (Line: 366)\nFunction: api_create\n 359 try:\n 360 # Exclude callable values from query\n 361 # (Django raises exception on pyRules)\n 362 # @todo: Check unique fields only?\n 363 qattrs = dict((k, attrs[k])\n 364 for k in attrs if not callable(attrs[k]))\n 365 # Check for duplicates\n 366 ==> self.queryset(request).get(**qattrs)\n 367 return self.app.render_json(\n 368 {\n 369 "status": False,\n 370 "message": "Duplicated record"\n 371 },\n 372 status=self.CONFLICT)\nVariables:\n qattrs = \n{\'content\': \'10.255.255.253\',\n \'name\': \'noc\',\n \'priority\': None,\n \'tags\': \'\',\n \'ttl\': None,\n \'type\': \'A\',\n \'zone\': <DNSZone: mcd.net.ua>}\n self = <noc.lib.app.modelinline.ModelInline object at 0x80f245fd0>\n request = \n<WSGIRequest\npath:/dns/dnszone/1/records/,\nGET:<QueryDict: {u\'_dc\': [u\'1370867068721\'], u\'__format\': [u\'ext\']}>,\nPOST:<QueryDict: {u\'{"id":0,"name":"noc","ttl":null,"priority":null,"type":"A","content":"10.255.255.253","tags":""}\': [u\'\']}>,\nCOOKIES:{\'IV\': \'QL3j0DJ%2BVxj2DLT6j%2Bp0tqwWxkiEl0BI6iU%2BK1Dxj6g%3D\',\n \'Key\': \'mg%2FpCJ31oIG%2B1%2BqOiJuMUXywqpS2p%2BPV7dQBR8dcySY%3D\',\n \'PHPSESSID\': \'7613c322a5e7ac22bca1bb869e5e0d31\',\n \'csrftoken\': \'4b6vE1ZFHEP78vgvbgVvtROdGcqVDox7\',\n \'sessionid\': \'e29cda43485e524eb74db8eeaa05abfc\'},\nMETA:{\'CONTENT_LENGTH\': \'96\',\n \'CONTENT_TYPE\': \'application/json\',\n \'HTTP_ACCEPT\': \'*/*\',\n \'HTTP_ACCEPT_CHARSET\': \'windows-1251,utf-8;q=0.7,*;q=0.3\',\n \'HTTP_ACCEPT_ENCODING\': \'gzip,deflate,sdch\',\n \'HTTP_ACCEPT_LANGUAGE\': \'ru-RU,ru;q=0.8,en-US;q=0.6,en;q=0.4\',\n \'HTTP_AUTHORIZATION\': \'Basic emFpa2E6KEIwNjBESEVF\',\n \'HTTP_CONNECTION\': \'Keep-Alive\',\n \'HTTP_COOKIE\': \'PHPSESSID=7613c322a5e7ac22bca1bb869e5e0d31; Key=mg%2FpCJ31oIG%2B1%2BqOiJuMUXywqpS2p%2BPV7dQBR8dcySY%3D; IV=QL3j0DJ%2BVxj2DLT6j%2Bp0tqwWxkiEl0BI6iU%2BK1Dxj6g%3D; sessionid=e29cda43485e524eb74db8eeaa05abfc; csrftoken=4b6vE1ZFHEP78vgvbgVvtROdGcqVDox7\',\n \'HTTP_HOST\': \'localhost:8000\',\n \'HTTP_ORIGIN\': \'https://noc.mcd.net.ua\',\n \'HTTP_REFERER\': \'https://noc.mcd.net.ua/main/desktop/\',\n \'HTTP_REMOTE_USER\': \'zaika\',\n \'HTTP_USER_AGENT\': \'Mozilla/5.0 (X11; FreeBSD amd64) AppleWebKit/537.22 (KHTML, like Gecko) Chrome/25.0.1364.97 Safari/537.22\',\n \'HTTP_X_FORWARDED_FOR\': \'193.254.232.25\',\n \'HTTP_X_FORWARDED_HOST\': \'noc.mcd.net.ua\',\n \'HTTP_X_FORWARDED_SERVER\': \'noc.mcd.net.ua\',\n \'HTTP_X_REQUESTED_WITH\': \'XMLHttpRequest\',\n \'PATH_INFO\': u\'/dns/dnszone/1/records/\',\n \'QUERY_STRING\': \'_dc=1370867068721&__format=ext\',\n \'REMOTE_ADDR\': \'127.0.0.1\',\n \'REQUEST_METHOD\': \'POST\',\n \'SCRIPT_NAME\': u\'\',\n \'SERVER_NAME\': \'localhost\',\n \'SERVER_PORT\': \'8000\',\n \'SERVER_PROTOCOL\': \'HTTP/1.1\',\n \'wsgi.errors\': <open file \'/dev/null\', mode \'a+\' at 0x8074b5030>,\n \'wsgi.input\': <_io.BytesIO object at 0x80f05e770>,\n \'wsgi.multiprocess\': True,\n \'wsgi.multithread\': False,\n \'wsgi.run_once\': False,\n \'wsgi.url_scheme\': \'http\',\n \'wsgi.version\': (1, 0)}>\n attrs = \n{\'content\': \'10.255.255.253\',\n \'name\': \'noc\',\n \'priority\': None,\n \'tags\': \'\',\n \'ttl\': None,\n \'type\': \'A\',\n \'zone\': <DNSZone: mcd.net.ua>}\n parent = <DNSZone: mcd.net.ua>\n------------------------------------------------------------------------\nFile: /opt/noc/lib/app/site.py (Line: 232)\nFunction: inner\n 225 for k, v in request.POST.lists())\n 226 elif request.method == "GET":\n 227 a = dict((k, v[0] if len(v) == 1 else v)\n 228 for k, v in request.GET.lists())\n 229 logging.debug("API %s %s %s" % (request.method,\n 230 request.path, a))\n 231 # Call handler\n 232 ==> r = v(request, *args, **kwargs)\n 233 # Dump SQL statements\n 234 if self.log_sql_statements:\n 235 from django.db import connections\n 236 tsc = 0\n 237 sc = defaultdict(int)\n 238 for conn in connections.all():\nVariables:\n a = \n{\'content\': \'10.255.255.253\',\n \'id\': 0,\n \'name\': \'noc\',\n \'priority\': None,\n \'tags\': \'\',\n \'ttl\': None,\n \'type\': \'A\'}\n v = <functools.partial object at 0x80f249520>\n view_map = \n{\'GET\': <functools.partial object at 0x80f2494c8>,\n \'POST\': <functools.partial object at 0x80f249520>}\n Form = <class \'django.forms.forms.Form\'>\n args = ()\n DictParameter = <class \'noc.sa.interfaces.base.DictParameter\'>\n self = <noc.lib.app.site.Site object at 0x80b394390>\n to_log_api_call = True\n request = \n<WSGIRequest\npath:/dns/dnszone/1/records/,\nGET:<QueryDict: {u\'_dc\': [u\'1370867068721\'], u\'__format\': [u\'ext\']}>,\nPOST:<QueryDict: {u\'{"id":0,"name":"noc","ttl":null,"priority":null,"type":"A","content":"10.255.255.253","tags":""}\': [u\'\']}>,\nCOOKIES:{\'IV\': \'QL3j0DJ%2BVxj2DLT6j%2Bp0tqwWxkiEl0BI6iU%2BK1Dxj6g%3D\',\n \'Key\': \'mg%2FpCJ31oIG%2B1%2BqOiJuMUXywqpS2p%2BPV7dQBR8dcySY%3D\',\n \'PHPSESSID\': \'7613c322a5e7ac22bca1bb869e5e0d31\',\n \'csrftoken\': \'4b6vE1ZFHEP78vgvbgVvtROdGcqVDox7\',\n \'sessionid\': \'e29cda43485e524eb74db8eeaa05abfc\'},\nMETA:{\'CONTENT_LENGTH\': \'96\',\n \'CONTENT_TYPE\': \'application/json\',\n \'HTTP_ACCEPT\': \'*/*\',\n \'HTTP_ACCEPT_CHARSET\': \'windows-1251,utf-8;q=0.7,*;q=0.3\',\n \'HTTP_ACCEPT_ENCODING\': \'gzip,deflate,sdch\',\n \'HTTP_ACCEPT_LANGUAGE\': \'ru-RU,ru;q=0.8,en-US;q=0.6,en;q=0.4\',\n \'HTTP_AUTHORIZATION\': \'Basic emFpa2E6KEIwNjBESEVF\',\n \'HTTP_CONNECTION\': \'Keep-Alive\',\n \'HTTP_COOKIE\': \'PHPSESSID=7613c322a5e7ac22bca1bb869e5e0d31; Key=mg%2FpCJ31oIG%2B1%2BqOiJuMUXywqpS2p%2BPV7dQBR8dcySY%3D; IV=QL3j0DJ%2BVxj2DLT6j%2Bp0tqwWxkiEl0BI6iU%2BK1Dxj6g%3D; sessionid=e29cda43485e524eb74db8eeaa05abfc; csrftoken=4b6vE1ZFHEP78vgvbgVvtROdGcqVDox7\',\n \'HTTP_HOST\': \'localhost:8000\',\n \'HTTP_ORIGIN\': \'https://noc.mcd.net.ua\',\n \'HTTP_REFERER\': \'https://noc.mcd.net.ua/main/desktop/\',\n \'HTTP_REMOTE_USER\': \'zaika\',\n \'HTTP_USER_AGENT\': \'Mozilla/5.0 (X11; FreeBSD amd64) AppleWebKit/537.22 (KHTML, like Gecko) Chrome/25.0.1364.97 Safari/537.22\',\n \'HTTP_X_FORWARDED_FOR\': \'193.254.232.25\',\n \'HTTP_X_FORWARDED_HOST\': \'noc.mcd.net.ua\',\n \'HTTP_X_FORWARDED_SERVER\': \'noc.mcd.net.ua\',\n \'HTTP_X_REQUESTED_WITH\': \'XMLHttpRequest\',\n \'PATH_INFO\': u\'/dns/dnszone/1/records/\',\n \'QUERY_STRING\': \'_dc=1370867068721&__format=ext\',\n \'REMOTE_ADDR\': \'127.0.0.1\',\n \'REQUEST_METHOD\': \'POST\',\n \'SCRIPT_NAME\': u\'\',\n \'SERVER_NAME\': \'localhost\',\n \'SERVER_PORT\': \'8000\',\n \'SERVER_PROTOCOL\': \'HTTP/1.1\',\n \'wsgi.errors\': <open file \'/dev/null\', mode \'a+\' at 0x8074b5030>,\n \'wsgi.input\': <_io.BytesIO object at 0x80f05e770>,\n \'wsgi.multiprocess\': True,\n \'wsgi.multithread\': False,\n \'wsgi.run_once\': False,\n \'wsgi.url_scheme\': \'http\',\n \'wsgi.version\': (1, 0)}>\n InterfaceTypeError = <class \'noc.sa.interfaces.base.InterfaceTypeError\'>\n PermissionDenied = <class \'noc.lib.app.access.PermissionDenied\'>\n kwargs = {\'parent\': u\'1\'}\n app = <noc.dns.apps.dnszone.views.DNSZoneApplication object at 0x80f24f510>\n ct = \'application/json\'\n------------------------------------------------------------------------\nEND OF TRACEBACK'
- app = <noc.dns.apps.dnszone.views.DNSZoneApplication object at 0x80f24f510>
- ct = 'application/json'
- ------------------------------------------------------------------------
- END OF TRACEBACK
- 2013-06-10 15:31:29,920 500 POST /dns/dnszone/1/records/?_dc=1370867068721&__format=ext (127.0.0.1) 316.19ms
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement