eRacks/MN4Lplus

Sans Digital MobileNAS MN4L+ - a great home or small office media storage server.
The eRacks/MN4Lplus Linux System offers a performance tuned Linux-based server operating system with unlimited clients, up to 12TB storage, PCI-X expansion, dual Gigabit Ethernet. Let the eRacks/MN4L satisfy any network storage need.

· NAS Server with 4 Removable Trays.
· Supports High Performance SATA2 and SATA3 Hard Drives, including 2TB and 3TB drives.
· Durable Aluminum Housing.
· Ultra Quiet Operation.
· RAID 0,1,5,10 supported.
· Linux OS as default. Other configurations available on request.

CPU: Embedded AMD Sempron 2600+ processor.
Power Supply: Dual 12V & 5V DC Adaptor
Status Indicators: RAID Alarm, Fan / Temperature, Power LEDs

Base configuration includes:
4 x 320GB SATA3 drives.
Silicon Image RAID PCI Controller Card.


Configure eRacks/MN4Lplus

Choose the desired options and click "Add to Cart". You may also request a quote, please add additional requests and information in the "Notes" field. Your quote request will be sent to your profile's eMail if you are logged in, otherwise enter the email address below (required only if not logged in).

Current Configuration

Base Price: $ 1034.00 As Configured: $ 1034.00
Configuration Summary:
Default Configuration
Option Choices More Info Add/Subtract
Base SystemSans Digital MobileNAS MN4L+ USB
Memory512MB DDR2 Memory
RAID Configurationnone (JBOD)
Removable HD Bay 1320 GB SATA3 7200rpm Hard Drive
Removable HD Bay 2320 GB SATA3 7200rpm Hard Drive
Removable HD Bay 3320 GB SATA3 7200rpm Hard Drive
Removable HD Bay 4320 GB SATA3 7200rpm Hard Drive
Org Contribution$5 to the Ubuntu Studio Project
WarrantyStandard 1yr full /3yr limited warranty
Notes Enter notes or custom instructions for this item here  

To request a quote, please add additional requests and information in the "Notes" field, above. Your quote request will be sent to your profile's eMail if you are logged in, otherwise enter the email address below (required only if not logged in).

«

Versions

Package Name Version
Django 2.2.14
Python 3.8.3
compressor Compressor 2.4
debug_toolbar Debug Toolbar 2.2
django_wysiwyg Django_Wysiwyg 0.8.0
easy_thumbnails Easy_Thumbnails <module 'easy_thumbnails.get_version' from '/usr/local/lib/python3.8/site-packages/easy_thumbnails/get_version.py'>
filebrowser Filebrowser 3.13.1
grappelli Grappelli 2.14.2
guardian Guardian 2.3.0
haystack Haystack 0.0.dev0
secure_mail Secure Mail 1.1.0
taggit Taggit 1.3.0
userena Userena 6.0.0

Time

Resource usage

Resource Value
User CPU time 4299.894 msec
System CPU time 674.139 msec
Total CPU time 4974.033 msec
Elapsed time 14994.834 msec
Context switches 5 voluntary, 1687 involuntary

Browser timing

Timing attribute Timeline Milliseconds since navigation start (+length)

Settings from settings.prod

Setting Value
ABSOLUTE_URL_OVERRIDES {}
ADMINS (('Joe', 'joe@eracks.com'), ('Info', 'info@eracks.com'))
ALLOWED_HOSTS ['localhost', '127.0.0.1', '[::1]', '.eracks.com', '172.18.0.5', 'testserver', '127.0.1.1', '172.18.1.3', '172.18.1.4', '47.152.181.244', '118.179.58.19', '118.179.78.103', '184.181.113.186', '192.168.1.12', 'web']
AMZ_PAYMENTS_API_ENDPOINT '********************'
AMZ_PAY_ACCESS_KEY_ID '********************'
AMZ_PAY_CLIENT_ID 'amzn1.application-oa2-client.1e7194acc71b4202a2d8971d9ddba100'
AMZ_PAY_CLIENT_SECRET '********************'
AMZ_PAY_LOGIN_API_URL '********************'
AMZ_PAY_MERCHANT_ID 'A3HOAJNU7DW6RD'
AMZ_PAY_PROFILE_API_URL '********************'
AMZ_PAY_SECRET_KEY '********************'
AMZ_PAY_STORE_NAME 'eRacks Systems'
ANONYMOUS_USER_NAME 'AnonymousUser'
APPEND_SLASH True
AUTHENTICATION_BACKENDS ('userena.backends.UserenaAuthenticationBackend', 'guardian.backends.ObjectPermissionBackend', 'django.contrib.auth.backends.ModelBackend')
AUTH_PASSWORD_VALIDATORS '********************'
AUTH_PROFILE_MODULE 'customers.Customer'
AUTH_USER_MODEL 'auth.User'
BASE_DIR '/home/joe/eracks12/web'
CACHES {'default': {'BACKEND': 'django.core.cache.backends.memcached.MemcachedCache', 'KEY_PREFIX': '********************', 'LOCATION': 'memcache:11211'}}
CACHE_MIDDLEWARE_ALIAS 'default'
CACHE_MIDDLEWARE_KEY_PREFIX '********************'
CACHE_MIDDLEWARE_SECONDS 600
COMPRESSORS {'css': 'compressor.css.CssCompressor', 'js': 'compressor.js.JsCompressor'}
COMPRESS_CACHEABLE_PRECOMPILERS ()
COMPRESS_CACHE_BACKEND 'default'
COMPRESS_CACHE_KEY_FUNCTION '********************'
COMPRESS_CLEAN_CSS_ARGUMENTS ''
COMPRESS_CLEAN_CSS_BINARY 'cleancss'
COMPRESS_CLOSURE_COMPILER_ARGUMENTS ''
COMPRESS_CLOSURE_COMPILER_BINARY 'java -jar compiler.jar'
COMPRESS_CSS_HASHING_METHOD 'mtime'
COMPRESS_DATA_URI_MAX_SIZE 1024
COMPRESS_DEBUG_TOGGLE 'nocompress'
COMPRESS_ENABLED False
COMPRESS_FILTERS {'css': ['compressor.filters.css_default.CssAbsoluteFilter'], 'js': ['compressor.filters.jsmin.JSMinFilter']}
COMPRESS_JINJA2_GET_ENVIRONMENT <function CompressorConf.JINJA2_GET_ENVIRONMENT at 0x7f253b3d18b0>
COMPRESS_MINT_DELAY 30
COMPRESS_MTIME_DELAY 10
COMPRESS_OFFLINE False
COMPRESS_OFFLINE_CONTEXT {'STATIC_URL': '/static/'}
COMPRESS_OFFLINE_MANIFEST 'manifest.json'
COMPRESS_OFFLINE_TIMEOUT 31536000
COMPRESS_OUTPUT_DIR 'CACHE'
COMPRESS_PARSER 'compressor.parser.AutoSelectParser'
COMPRESS_PRECOMPILERS ()
COMPRESS_REBUILD_TIMEOUT 2592000
COMPRESS_ROOT '/home/joe/eracks12/web/static'
COMPRESS_STORAGE 'compressor.storage.CompressorFileStorage'
COMPRESS_TEMPLATE_FILTER_CONTEXT {'STATIC_URL': '/static/'}
COMPRESS_URL '/static/'
COMPRESS_URL_PLACEHOLDER '/__compressor_url_placeholder__/'
COMPRESS_VERBOSE False
COMPRESS_YUGLIFY_BINARY 'yuglify'
COMPRESS_YUGLIFY_CSS_ARGUMENTS '--terminal'
COMPRESS_YUGLIFY_JS_ARGUMENTS '--terminal'
COMPRESS_YUI_BINARY 'java -jar yuicompressor.jar'
COMPRESS_YUI_CSS_ARGUMENTS ''
COMPRESS_YUI_JS_ARGUMENTS ''
CONTACT_EMAILS ['info@eracks.com', 'joe@eracks.com']
CSRF_COOKIE_AGE 31449600
CSRF_COOKIE_DOMAIN None
CSRF_COOKIE_HTTPONLY False
CSRF_COOKIE_NAME 'csrftoken'
CSRF_COOKIE_PATH '/'
CSRF_COOKIE_SAMESITE 'Lax'
CSRF_COOKIE_SECURE False
CSRF_FAILURE_VIEW 'django.views.csrf.csrf_failure'
CSRF_HEADER_NAME 'HTTP_X_CSRFTOKEN'
CSRF_TRUSTED_ORIGINS []
CSRF_USE_SESSIONS False
DATABASES {'default': {'ATOMIC_REQUESTS': False, 'AUTOCOMMIT': True, 'CONN_MAX_AGE': 0, 'ENGINE': 'django.db.backends.postgresql_psycopg2', 'HOST': 'postgres', 'NAME': 'eracksdb', 'OPTIONS': {}, 'PASSWORD': '********************', 'PORT': '', 'TEST': {'CHARSET': None, 'COLLATION': None, 'ENGINE': 'django.db.backends.postgresql_psycopg2', 'HOST': 'postgres', 'MIRROR': None, 'NAME': 'eracksdb_test', 'PASSWORD': '********************', 'SERIALIZE': False, 'USER': 'eracks'}, 'TIME_ZONE': None, 'USER': 'eracks'}}
DATABASE_ROUTERS []
DATA_UPLOAD_MAX_MEMORY_SIZE 2621440
DATA_UPLOAD_MAX_NUMBER_FIELDS 1000
DATETIME_FORMAT 'N j, Y, P'
DATETIME_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']
DATE_FORMAT 'N j, Y'
DATE_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']
DEBUG True
DEBUG_PROPAGATE_EXCEPTIONS False
DECIMAL_SEPARATOR '.'
DEFAULT_CHARSET 'utf-8'
DEFAULT_CONTENT_TYPE 'text/html'
DEFAULT_EXCEPTION_REPORTER_FILTER 'django.views.debug.SafeExceptionReporterFilter'
DEFAULT_FILE_STORAGE 'django.core.files.storage.FileSystemStorage'
DEFAULT_FROM_EMAIL 'support@eracks.com'
DEFAULT_INDEX_TABLESPACE ''
DEFAULT_TABLESPACE ''
DISALLOWED_USER_AGENTS []
DJANGO_WYSIWYG_FLAVOR 'ckeditor'
DJANGO_WYSIWYG_MEDIA_URL '//cdn.ckeditor.com/4.5.3/full-all/'
DOCKER True
EMAIL_BACKEND 'django.core.mail.backends.smtp.EmailBackend'
EMAIL_HOST 'mail.eracks.com'
EMAIL_HOST_PASSWORD '********************'
EMAIL_HOST_USER 'relay@librehost.com'
EMAIL_PORT 587
EMAIL_SSL_CERTFILE None
EMAIL_SSL_KEYFILE '********************'
EMAIL_SUBJECT_PREFIX '[Django] '
EMAIL_TIMEOUT None
EMAIL_USE_LOCALTIME True
EMAIL_USE_SSL False
EMAIL_USE_TLS True
FILEBROWSER_DIRECTORY ''
FILEBROWSER_VERSIONS_BASEDIR ''
FILE_CHARSET 'utf-8'
FILE_UPLOAD_DIRECTORY_PERMISSIONS None
FILE_UPLOAD_HANDLERS ['django.core.files.uploadhandler.MemoryFileUploadHandler', 'django.core.files.uploadhandler.TemporaryFileUploadHandler']
FILE_UPLOAD_MAX_MEMORY_SIZE 2621440
FILE_UPLOAD_PERMISSIONS None
FILE_UPLOAD_TEMP_DIR None
FIRST_DAY_OF_WEEK 0
FIXTURE_DIRS []
FORCE_SCRIPT_NAME None
FORMAT_MODULE_PATH None
FORM_RENDERER 'django.forms.renderers.DjangoTemplates'
GITLAB False
GOOGLE_ANALYTICS_DOMAIN 'eracks.com'
GOOGLE_ANALYTICS_ID 'UA-37665012-1'
GRAPPELLI_INDEX_DASHBOARD 'eracks.dashboard.CustomIndexDashboard'
HAYSTACK_CONNECTIONS {'default': {'ENGINE': 'haystack.backends.whoosh_backend.WhooshEngine', 'PATH': '/home/joe/eracks12/web/eracks/whoosh_index'}}
HOSTNAME 'web'
IGNORABLE_404_URLS []
INFO_EMAIL 'info@eracks.com'
INSTALLED_APPS ['grappelli.dashboard', 'grappelli', 'filebrowser', 'django.contrib.admin', 'django.contrib.auth', 'django.contrib.contenttypes', 'django.contrib.sessions', 'django.contrib.messages', 'django.contrib.staticfiles', 'captcha', 'compressor', 'apps.catax', 'apps.home', 'apps.components', 'apps.customers', 'apps.orders', 'apps.products', 'apps.quotes', 'quickpages', 'taggit', 'django.contrib.sites', 'django.contrib.redirects', 'debug_toolbar', 'secure_mail', 'django_wysiwyg', 'memcache_status', 'haystack', 'utils', 'userena', 'guardian', 'easy_thumbnails']
INSTANCE 'prod'
INTERNAL_IPS ('127.0.0.1', '127.0.1.1', '47.143.87.9', '47.152.181.244', '68.4.180.198', '172.18.0.1', '172.18.0.2', '172.18.0.3', '172.18.0.4', '172.18.0.5', '172.19.0.1', '172.19.0.2', '172.19.0.3', '172.19.0.4', '172.19.0.5', '216.172.133.7')
IP '172.18.0.5'
LANGUAGES [('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')]
LANGUAGES_BIDI ['he', 'ar', 'fa', 'ur']
LANGUAGE_CODE 'en-us'
LANGUAGE_COOKIE_AGE None
LANGUAGE_COOKIE_DOMAIN None
LANGUAGE_COOKIE_NAME 'django_language'
LANGUAGE_COOKIE_PATH '/'
LOADING_FIXTURES False
LOCALDEV False
LOCALE_PATHS []
LOGGING {'disable_existing_loggers': False, 'handlers': {'file': {'class': 'logging.FileHandler', 'filename': 'django.log', 'level': 'INFO'}}, 'loggers': {'django': {'handlers': ['file'], 'level': 'INFO', 'propagate': True}}, 'version': 1}
LOGGING_CONFIG 'logging.config.dictConfig'
LOGIN_REDIRECT_URL '/accounts/profile/'
LOGIN_URL '/accounts/signin/'
LOGOUT_REDIRECT_URL None
LOG_LEVEL 'INFO'
MANAGERS (('Joe', 'joe@eracks.com'), ('Info', 'info@eracks.com'))
MEDIA_ROOT '/home/joe/eracks12/web/media'
MEDIA_URL '/media/'
MESSAGE_STORAGE 'django.contrib.messages.storage.fallback.FallbackStorage'
MIDDLEWARE ['django.middleware.cache.UpdateCacheMiddleware', 'django.middleware.security.SecurityMiddleware', 'django.contrib.sessions.middleware.SessionMiddleware', 'django.middleware.common.CommonMiddleware', 'django.middleware.csrf.CsrfViewMiddleware', 'django.contrib.auth.middleware.AuthenticationMiddleware', 'django.contrib.messages.middleware.MessageMiddleware', 'django.middleware.clickjacking.XFrameOptionsMiddleware', 'django.middleware.cache.FetchFromCacheMiddleware', 'debug_toolbar.middleware.DebugToolbarMiddleware', 'django.contrib.redirects.middleware.RedirectFallbackMiddleware']
MIGRATING False
MIGRATION_MODULES {}
MONTH_DAY_FORMAT 'F j'
MYURL 'https://eracks.com'
NOCAPTCHA True
NUMBER_GROUPING 0
ORDER_EMAILS ['orders@eracks.com']
ORDER_FROM_EMAIL 'orders@eracks.com'
ORDER_TYPE 'Confirmed'
PASSWORD_HASHERS '********************'
PASSWORD_RESET_TIMEOUT_DAYS '********************'
POSTGRES_HOST 'postgres'
PREPEND_WWW False
QUICKPAGE_HEADING 2
RECAPTCHA_PRIVATE_KEY '********************'
RECAPTCHA_PUBLIC_KEY '********************'
REGULAR_EMAIL_BACKEND 'django.core.mail.backends.smtp.EmailBackend'
ROOT_URLCONF 'eracks.urls'
SECRET_KEY '********************'
SECURE_BROWSER_XSS_FILTER False
SECURE_CONTENT_TYPE_NOSNIFF False
SECURE_EMAIL_BACKEND 'secure_mail.backends.EncryptingSmtpEmailBackend'
SECURE_HSTS_INCLUDE_SUBDOMAINS False
SECURE_HSTS_PRELOAD False
SECURE_HSTS_SECONDS 0
SECURE_MAIL_GNUPG_ENCODING 'utf-8'
SECURE_MAIL_GNUPG_HOME '/home/joe/.gnupg'
SECURE_MAIL_SIGNING_KEY_DATA '********************'
SECURE_ORDER_EMAIL 'joe@eracks.com'
SECURE_PROXY_SSL_HEADER None
SECURE_REDIRECT_EXEMPT []
SECURE_SSL_HOST None
SECURE_SSL_REDIRECT False
SELENIUM_BROWSER 'chrome'
SELENIUM_CALLBACK_HOST 'web'
SELENIUM_HOST None
SERVER_EMAIL 'support@eracks.com'
SESSION_CACHE_ALIAS 'default'
SESSION_COOKIE_AGE 1209600
SESSION_COOKIE_DOMAIN None
SESSION_COOKIE_HTTPONLY True
SESSION_COOKIE_NAME 'sessionid'
SESSION_COOKIE_PATH '/'
SESSION_COOKIE_SAMESITE 'Lax'
SESSION_COOKIE_SECURE False
SESSION_ENGINE 'django.contrib.sessions.backends.db'
SESSION_EXPIRE_AT_BROWSER_CLOSE False
SESSION_FILE_PATH None
SESSION_SAVE_EVERY_REQUEST False
SESSION_SERIALIZER 'django.contrib.sessions.serializers.PickleSerializer'
SETTINGS_MODULE 'settings.prod'
SHORT_DATETIME_FORMAT 'm/d/Y P'
SHORT_DATE_FORMAT 'm/d/Y'
SIGNING_BACKEND 'django.core.signing.TimestampSigner'
SILENCED_SYSTEM_CHECKS []
SITE_ID 1
SITE_NAME 'eRacks'
SITE_TO_VALIDATE 'client'
SLEEPTIME 0.1
STATICFILES_DIRS [('unify', '/home/joe/eracks12/unify')]
STATICFILES_FINDERS ['django.contrib.staticfiles.finders.FileSystemFinder', 'django.contrib.staticfiles.finders.AppDirectoriesFinder', 'compressor.finders.CompressorFinder']
STATICFILES_STORAGE 'django.contrib.staticfiles.storage.StaticFilesStorage'
STATIC_ROOT '/home/joe/eracks12/web/static'
STATIC_URL '/static/'
TELEGRAM_BOT_TOKEN '********************'
TELEGRAM_CHAT_ID '116010224&te'
TEMPLATES [{'APP_DIRS': True, 'BACKEND': 'django.template.backends.django.DjangoTemplates', 'DIRS': ['/home/joe/eracks12/web/templates'], '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', 'django.template.context_processors.i18n', 'django.template.context_processors.media', 'django.template.context_processors.static', 'django.template.context_processors.tz', 'utils.context_processors.settings', 'utils.context_processors.models', 'quickpages.context_processors.quick_snippets', 'quickpages.context_processors.quick_snippet_tags', 'apps.home.context_processors.registration_forms', 'apps.home.context_processors.cart_variables', 'apps.home.context_processors.environment', 'apps.home.context_processors.google_analytics_tags', 'apps.home.context_processors.background_images', 'apps.home.context_processors.metacat_tags']}}]
TESTING False
TEST_NON_SERIALIZED_APPS []
TEST_RESULTS_DIR '/home/joe/eracks12/web/media/test_results'
TEST_RUNNER 'django.test.runner.DiscoverRunner'
THOUSAND_SEPARATOR ','
TIME_FORMAT 'P'
TIME_INPUT_FORMATS ['%H:%M:%S', '%H:%M:%S.%f', '%H:%M']
TIME_ZONE 'UTC'
TRACE ''
USERENA_ACTIVATION_REQUIRED False
USERENA_DEFAULT_PRIVACY 'closed'
USERENA_REDIRECT_ON_SIGNOUT '/'
USERENA_REGISTER_PROFILE False
USERENA_USE_MESSAGES True
USERENA_WITHOUT_USERNAMES True
USE_I18N True
USE_L10N True
USE_THOUSAND_SEPARATOR False
USE_TZ False
USE_X_FORWARDED_HOST False
USE_X_FORWARDED_PORT False
VALIDATE_HTML_URL 'http://validator:8888'
VALIDATOR_HOST None
WSGI_APPLICATION 'eracks.wsgi.application'
X_FRAME_OPTIONS 'SAMEORIGIN'
YEAR_MONTH_FORMAT 'F Y'

Headers

Request headers

Key Value
Accept text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8
Accept-Encoding br,gzip
Accept-Language en-US,en;q=0.5
Connection close
Host eracks.com
User-Agent CCBot/2.0 (https://commoncrawl.org/faq/)
X-Forwarded-For 34.204.198.244
X-Forwarded-Protocol ssl
X-Real-Ip 34.204.198.244

Response headers

Key Value
Content-Type text/html; charset=utf-8

WSGI environ

Since the WSGI environ inherits the environment of the server, only a significant subset is shown below.

Key Value
PATH_INFO /products/external-storage/MN4Lplus/
QUERY_STRING
REMOTE_ADDR 172.18.0.4
REQUEST_METHOD GET
SCRIPT_NAME
SERVER_NAME 0.0.0.0
SERVER_PORT 8000
SERVER_PROTOCOL HTTP/1.0
SERVER_SOFTWARE gunicorn/20.0.4

Request

View information

View function Arguments Keyword arguments URL name
apps.products.views.product () {'category': 'external-storage', 'sku': 'MN4Lplus'} None

No cookies

Session data

Variable Value
'prod' {'baseoptions': '', 'baseprice': 1034.0, 'blurb': '', 'category_id': 42556, 'comments': '\r\n' '\r\n' 'Scraped from Zope as of 2012-04-26\r\n' '\r\n' 'Scraped from Zope as of 2012-04-26\r\n' '\r\n' 'Scraped from Zope as of 2012-05-01\r\n' '\r\n' 'Scraped from Zope as of 2012-05-04\r\n' '\r\n' 'Scraped from Zope as of 2012-05-04\r\n' '\r\n' 'Scraped from Zope as of 2012-05-05\r\n' '\r\n' 'Scraped from Zope as of 2012-05-19\r\n' '\r\n' 'Scraped from Zope as of 2012-05-19\r\n' '\r\n' 'Scraped from Zope as of 2012-10-21\r\n' '\r\n' 'Scraped from Zope as of 2012-11-04', 'cost': 549.0, 'created': datetime.datetime(2011, 7, 8, 16, 31, 31, 563576), 'description': '<!-- BEGIN MN4Lplus PRODUCT CONTENT -->\r\n' '<div><img alt="" class="addl-img" ' 'src="/images/products/mn4lplus/sansdigital_logo.jpeg" ' 'style="float:right; height:75px; margin-left:10px; ' 'margin-right:10px; width:129px" title="" />\r\n' '<div>Sans Digital MobileNAS MN4L+ - a great home or small ' 'office media storage server.</div>\r\n' '\r\n' '<div>The eRacks/MN4Lplus Linux System offers a performance ' 'tuned Linux-based server operating system with unlimited ' 'clients, up to 12TB storage, PCI-X expansion, dual Gigabit ' 'Ethernet. Let the eRacks/MN4L satisfy any network storage ' 'need.\r\n' '<p>&middot; NAS Server with 4 Removable Trays.<br />\r\n' '&middot; Supports High Performance SATA2 and SATA3 Hard ' 'Drives, including 2TB and 3TB drives.<br />\r\n' '&middot; Durable Aluminum Housing.<br />\r\n' '&middot; Ultra Quiet Operation.<br />\r\n' '&middot; RAID 0,1,5,10 supported.<br />\r\n' '&middot; Linux OS as default. Other configurations available ' 'on request.</p>\r\n' '\r\n' '<p><strong>CPU:</strong> Embedded AMD Sempron 2600+ ' 'processor.<br />\r\n' '<strong>Power Supply:</strong> Dual 12V &amp; 5V DC ' 'Adaptor<br />\r\n' '<strong>Status Indicators:</strong> RAID Alarm, Fan / ' 'Temperature, Power LEDs</p>\r\n' '\r\n' '<p><strong>Base configuration includes:</strong><br />\r\n' '4 x 320GB SATA3 drives.<br />\r\n' 'Silicon Image RAID PCI Controller Card.</p>\r\n' '</div>\r\n' '</div>\r\n' '<!--END MN4Lplus PRODUCT CONTENT -->', 'features': '', 'id': 42675, 'image': <FileObject: images/products/mn4lplus/mn4l_1.jpeg>, 'link': '', 'meta_description': '', 'meta_keywords': '', 'meta_title': '', 'name': 'eRacks/MN4Lplus', 'notes': '', 'opts': OrderedDict([('42679_1', {'_state': <django.db.models.base.ModelState object at 0x7f253901bb50>, 'allowed_quantities': '', 'choices': {30: {'blurb': '', 'choicecategory_id': 43882, 'comment': None, 'cost': 0.0, 'created': datetime.datetime(2001, 1, 10, 16, 56, 5), 'id': 30, 'multiplier': None, 'name': 'none', 'price': 0.0, 'published': True, 'sortorder': 0, 'source': '', 'updated': datetime.datetime(2015, 10, 6, 12, 49, 14, 496668)}, 42584: {'blurb': '', 'choicecategory_id': 43918, 'comment': 'sans digital', 'cost': 549.0, 'created': datetime.datetime(2009, 6, 3, 13, 46, 37, 425621), 'id': 42584, 'multiplier': None, 'name': 'Sans Digital MobileNAS ' 'MN4L+ USB', 'price': None, 'published': True, 'sortorder': 6002, 'source': '', 'updated': datetime.datetime(2015, 10, 6, 12, 52, 50, 340551)}}, 'choices_orderby': 'cost', 'created': datetime.datetime(2009, 6, 5, 14, 36, 48, 742577), 'defaultchoice_id': 42584, 'id': 42679, 'name': 'Base System', 'option_id': 18849, 'product_id': 42675, 'published': True, 'qty': 1, 'required': False, 'single': True, 'updated': datetime.datetime(2019, 8, 25, 13, 40, 27, 885367)}), ('43146_1', {'_state': <django.db.models.base.ModelState object at 0x7f253901b040>, 'allowed_quantities': '', 'choices': {30: {'blurb': '', 'choicecategory_id': 43882, 'comment': None, 'cost': 0.0, 'created': datetime.datetime(2001, 1, 10, 16, 56, 5), 'id': 30, 'multiplier': None, 'name': 'none', 'price': 0.0, 'published': True, 'sortorder': 0, 'source': '', 'updated': datetime.datetime(2015, 10, 6, 12, 49, 14, 496668)}, 5292: {'blurb': '', 'choicecategory_id': 43893, 'comment': None, 'cost': 18.0, 'created': datetime.datetime(2001, 1, 1, 0, 0), 'id': 5292, 'multiplier': None, 'name': '512MB DDR2 Memory', 'price': None, 'published': True, 'sortorder': 254, 'source': '', 'updated': datetime.datetime(2015, 10, 6, 12, 49, 50, 267503)}, 5293: {'blurb': '', 'choicecategory_id': 43893, 'comment': None, 'cost': 20.0, 'created': datetime.datetime(2001, 1, 1, 0, 0), 'id': 5293, 'multiplier': None, 'name': '1GB DDR2 Memory', 'price': None, 'published': True, 'sortorder': 255, 'source': '', 'updated': datetime.datetime(2015, 10, 6, 12, 49, 50, 326038)}, 7449: {'blurb': '', 'choicecategory_id': 43893, 'comment': 'Was DDR2 Memory', 'cost': 29.0, 'created': datetime.datetime(2001, 1, 1, 0, 0), 'id': 7449, 'multiplier': None, 'name': '2GB RAM', 'price': None, 'published': True, 'sortorder': 257, 'source': '', 'updated': datetime.datetime(2015, 10, 6, 12, 49, 50, 459722)}}, 'choices_orderby': 'cost', 'created': datetime.datetime(2009, 6, 17, 16, 22, 12, 709356), 'defaultchoice_id': 5292, 'id': 43146, 'name': 'Memory', 'option_id': 5, 'product_id': 42675, 'published': True, 'qty': 1, 'required': False, 'single': False, 'updated': datetime.datetime(2009, 6, 17, 16, 22, 12, 709356)}), ('42683_1', {'_state': <django.db.models.base.ModelState object at 0x7f253901bf70>, 'allowed_quantities': '', 'choices': {30: {'blurb': '', 'choicecategory_id': 43882, 'comment': None, 'cost': 0.0, 'created': datetime.datetime(2001, 1, 10, 16, 56, 5), 'id': 30, 'multiplier': None, 'name': 'none', 'price': 0.0, 'published': True, 'sortorder': 0, 'source': '', 'updated': datetime.datetime(2015, 10, 6, 12, 49, 14, 496668)}, 9279: {'blurb': '', 'choicecategory_id': 43910, 'comment': None, 'cost': 0.0, 'created': datetime.datetime(2001, 1, 1, 0, 0), 'id': 9279, 'multiplier': None, 'name': 'none (JBOD)', 'price': None, 'published': True, 'sortorder': 3000, 'source': '', 'updated': datetime.datetime(2015, 10, 6, 12, 52, 20, 665974)}, 11961: {'blurb': '', 'choicecategory_id': 43910, 'comment': None, 'cost': 0.0, 'created': datetime.datetime(2001, 1, 1, 0, 0), 'id': 11961, 'multiplier': None, 'name': 'RAID 0 (striping)', 'price': None, 'published': True, 'sortorder': 3010, 'source': '', 'updated': datetime.datetime(2015, 10, 6, 12, 52, 21, 259280)}, 11962: {'blurb': '', 'choicecategory_id': 43910, 'comment': '', 'cost': 0.0, 'created': datetime.datetime(2001, 1, 1, 0, 0), 'id': 11962, 'multiplier': None, 'name': 'RAID 1 (mirroring)', 'price': None, 'published': True, 'sortorder': 3020, 'source': '', 'updated': datetime.datetime(2015, 11, 14, 21, 2, 43, 75286)}, 11963: {'blurb': '', 'choicecategory_id': 43910, 'comment': '', 'cost': 0.0, 'created': datetime.datetime(2001, 1, 1, 0, 0), 'id': 11963, 'multiplier': None, 'name': 'RAID 10 (mirroring and ' 'striping)', 'price': None, 'published': True, 'sortorder': 3030, 'source': '', 'updated': datetime.datetime(2015, 11, 14, 21, 2, 43, 118211)}, 11964: {'blurb': '', 'choicecategory_id': 43910, 'comment': '', 'cost': 0.0, 'created': datetime.datetime(2001, 1, 1, 0, 0), 'id': 11964, 'multiplier': None, 'name': 'RAID 5 (striped with ' 'parity)', 'price': None, 'published': True, 'sortorder': 3040, 'source': '', 'updated': datetime.datetime(2015, 11, 14, 21, 2, 43, 134790)}}, 'choices_orderby': 'cost', 'created': datetime.datetime(2009, 6, 5, 14, 36, 48, 742577), 'defaultchoice_id': 9279, 'id': 42683, 'name': 'RAID Configuration', 'option_id': 11959, 'product_id': 42675, 'published': True, 'qty': 1, 'required': False, 'single': False, 'updated': datetime.datetime(2009, 6, 5, 14, 36, 48, 742577)}), ('42684_1', {'_state': <django.db.models.base.ModelState object at 0x7f253901b2b0>, 'allowed_quantities': '', 'choices': {30: {'blurb': '', 'choicecategory_id': 43882, 'comment': None, 'cost': 0.0, 'created': datetime.datetime(2001, 1, 10, 16, 56, 5), 'id': 30, 'multiplier': None, 'name': 'none', 'price': 0.0, 'published': True, 'sortorder': 0, 'source': '', 'updated': datetime.datetime(2015, 10, 6, 12, 49, 14, 496668)}, 48174: {'blurb': '', 'choicecategory_id': 43918, 'comment': '', 'cost': 140.0, 'created': datetime.datetime(2011, 1, 28, 8, 20, 48, 873969), 'id': 48174, 'multiplier': None, 'name': '1.0 TB SATA3 7200rpm Hard ' 'Drive', 'price': None, 'published': True, 'sortorder': 8005, 'source': '', 'updated': datetime.datetime(2015, 10, 6, 12, 52, 59, 379038)}, 48242: {'blurb': '', 'choicecategory_id': 43918, 'comment': '', 'cost': 200.0, 'created': datetime.datetime(2011, 3, 23, 15, 56, 21, 950158), 'id': 48242, 'multiplier': None, 'name': '2.0 TB SATA3 7200rpm Hard ' 'Drive', 'price': None, 'published': True, 'sortorder': 8007, 'source': '', 'updated': datetime.datetime(2015, 10, 6, 12, 52, 59, 454147)}, 48243: {'blurb': '', 'choicecategory_id': 43918, 'comment': '', 'cost': 90.0, 'created': datetime.datetime(2011, 3, 23, 15, 57, 18, 904614), 'id': 48243, 'multiplier': None, 'name': '750 GB SATA3 7200rpm Hard ' 'Drive', 'price': None, 'published': True, 'sortorder': 8004, 'source': '', 'updated': datetime.datetime(2015, 10, 6, 12, 52, 57, 903342)}, 48244: {'blurb': '', 'choicecategory_id': 43918, 'comment': '', 'cost': 78.0, 'created': datetime.datetime(2011, 3, 23, 15, 57, 57, 226349), 'id': 48244, 'multiplier': None, 'name': '500 GB SATA3 7200rpm Hard ' 'Drive', 'price': None, 'published': True, 'sortorder': 8003, 'source': '', 'updated': datetime.datetime(2015, 10, 6, 12, 52, 57, 816748)}, 48245: {'blurb': '', 'choicecategory_id': 43918, 'comment': '', 'cost': 68.0, 'created': datetime.datetime(2011, 3, 23, 15, 58, 35, 941847), 'id': 48245, 'multiplier': None, 'name': '320 GB SATA3 7200rpm Hard ' 'Drive', 'price': None, 'published': True, 'sortorder': 8000, 'source': '', 'updated': datetime.datetime(2015, 10, 6, 12, 52, 57, 752243)}, 48806: {'blurb': '', 'choicecategory_id': 43918, 'comment': '', 'cost': 270.0, 'created': datetime.datetime(2011, 5, 26, 14, 13, 47, 169832), 'id': 48806, 'multiplier': None, 'name': '3.0 TB SATA3 7200rpm Hard ' 'Drive', 'price': None, 'published': True, 'sortorder': 8008, 'source': '', 'updated': datetime.datetime(2015, 10, 6, 12, 52, 59, 513539)}, 49187: {'blurb': 'Typically WD Black, ' 'Seagate Constellation ' 'ES, HGST, or other ' 'enterprise-class ' 'drive\r\n' '\r\n', 'choicecategory_id': 43918, 'comment': '', 'cost': 400.0, 'created': datetime.datetime(2011, 6, 27, 8, 45, 41, 598458), 'id': 49187, 'multiplier': None, 'name': '4.0 TB SATA3 7200rpm Hard ' 'Drive', 'price': None, 'published': True, 'sortorder': 8009, 'source': '', 'updated': datetime.datetime(2015, 10, 6, 12, 52, 59, 563852)}}, 'choices_orderby': 'cost', 'created': datetime.datetime(2009, 6, 5, 14, 36, 48, 742577), 'defaultchoice_id': 48245, 'id': 42684, 'name': 'Removable HD Bay 1', 'option_id': 4267, 'product_id': 42675, 'published': True, 'qty': 1, 'required': False, 'single': False, 'updated': datetime.datetime(2012, 3, 18, 11, 49, 5, 609434)}), ('42678_1', {'_state': <django.db.models.base.ModelState object at 0x7f253901b910>, 'allowed_quantities': '', 'choices': {30: {'blurb': '', 'choicecategory_id': 43882, 'comment': None, 'cost': 0.0, 'created': datetime.datetime(2001, 1, 10, 16, 56, 5), 'id': 30, 'multiplier': None, 'name': 'none', 'price': 0.0, 'published': True, 'sortorder': 0, 'source': '', 'updated': datetime.datetime(2015, 10, 6, 12, 49, 14, 496668)}, 48174: {'blurb': '', 'choicecategory_id': 43918, 'comment': '', 'cost': 140.0, 'created': datetime.datetime(2011, 1, 28, 8, 20, 48, 873969), 'id': 48174, 'multiplier': None, 'name': '1.0 TB SATA3 7200rpm Hard ' 'Drive', 'price': None, 'published': True, 'sortorder': 8005, 'source': '', 'updated': datetime.datetime(2015, 10, 6, 12, 52, 59, 379038)}, 48242: {'blurb': '', 'choicecategory_id': 43918, 'comment': '', 'cost': 200.0, 'created': datetime.datetime(2011, 3, 23, 15, 56, 21, 950158), 'id': 48242, 'multiplier': None, 'name': '2.0 TB SATA3 7200rpm Hard ' 'Drive', 'price': None, 'published': True, 'sortorder': 8007, 'source': '', 'updated': datetime.datetime(2015, 10, 6, 12, 52, 59, 454147)}, 48243: {'blurb': '', 'choicecategory_id': 43918, 'comment': '', 'cost': 90.0, 'created': datetime.datetime(2011, 3, 23, 15, 57, 18, 904614), 'id': 48243, 'multiplier': None, 'name': '750 GB SATA3 7200rpm Hard ' 'Drive', 'price': None, 'published': True, 'sortorder': 8004, 'source': '', 'updated': datetime.datetime(2015, 10, 6, 12, 52, 57, 903342)}, 48244: {'blurb': '', 'choicecategory_id': 43918, 'comment': '', 'cost': 78.0, 'created': datetime.datetime(2011, 3, 23, 15, 57, 57, 226349), 'id': 48244, 'multiplier': None, 'name': '500 GB SATA3 7200rpm Hard ' 'Drive', 'price': None, 'published': True, 'sortorder': 8003, 'source': '', 'updated': datetime.datetime(2015, 10, 6, 12, 52, 57, 816748)}, 48245: {'blurb': '', 'choicecategory_id': 43918, 'comment': '', 'cost': 68.0, 'created': datetime.datetime(2011, 3, 23, 15, 58, 35, 941847), 'id': 48245, 'multiplier': None, 'name': '320 GB SATA3 7200rpm Hard ' 'Drive', 'price': None, 'published': True, 'sortorder': 8000, 'source': '', 'updated': datetime.datetime(2015, 10, 6, 12, 52, 57, 752243)}, 48806: {'blurb': '', 'choicecategory_id': 43918, 'comment': '', 'cost': 270.0, 'created': datetime.datetime(2011, 5, 26, 14, 13, 47, 169832), 'id': 48806, 'multiplier': None, 'name': '3.0 TB SATA3 7200rpm Hard ' 'Drive', 'price': None, 'published': True, 'sortorder': 8008, 'source': '', 'updated': datetime.datetime(2015, 10, 6, 12, 52, 59, 513539)}, 49187: {'blurb': 'Typically WD Black, ' 'Seagate Constellation ' 'ES, HGST, or other ' 'enterprise-class ' 'drive\r\n' '\r\n', 'choicecategory_id': 43918, 'comment': '', 'cost': 400.0, 'created': datetime.datetime(2011, 6, 27, 8, 45, 41, 598458), 'id': 49187, 'multiplier': None, 'name': '4.0 TB SATA3 7200rpm Hard ' 'Drive', 'price': None, 'published': True, 'sortorder': 8009, 'source': '', 'updated': datetime.datetime(2015, 10, 6, 12, 52, 59, 563852)}}, 'choices_orderby': 'cost', 'created': datetime.datetime(2009, 6, 5, 14, 36, 48, 742577), 'defaultchoice_id': 48245, 'id': 42678, 'name': 'Removable HD Bay 2', 'option_id': 4285, 'product_id': 42675, 'published': True, 'qty': 1, 'required': False, 'single': False, 'updated': datetime.datetime(2012, 3, 18, 11, 52, 21, 89519)}), ('42677_1', {'_state': <django.db.models.base.ModelState object at 0x7f253901ba00>, 'allowed_quantities': '', 'choices': {30: {'blurb': '', 'choicecategory_id': 43882, 'comment': None, 'cost': 0.0, 'created': datetime.datetime(2001, 1, 10, 16, 56, 5), 'id': 30, 'multiplier': None, 'name': 'none', 'price': 0.0, 'published': True, 'sortorder': 0, 'source': '', 'updated': datetime.datetime(2015, 10, 6, 12, 49, 14, 496668)}, 48174: {'blurb': '', 'choicecategory_id': 43918, 'comment': '', 'cost': 140.0, 'created': datetime.datetime(2011, 1, 28, 8, 20, 48, 873969), 'id': 48174, 'multiplier': None, 'name': '1.0 TB SATA3 7200rpm Hard ' 'Drive', 'price': None, 'published': True, 'sortorder': 8005, 'source': '', 'updated': datetime.datetime(2015, 10, 6, 12, 52, 59, 379038)}, 48242: {'blurb': '', 'choicecategory_id': 43918, 'comment': '', 'cost': 200.0, 'created': datetime.datetime(2011, 3, 23, 15, 56, 21, 950158), 'id': 48242, 'multiplier': None, 'name': '2.0 TB SATA3 7200rpm Hard ' 'Drive', 'price': None, 'published': True, 'sortorder': 8007, 'source': '', 'updated': datetime.datetime(2015, 10, 6, 12, 52, 59, 454147)}, 48243: {'blurb': '', 'choicecategory_id': 43918, 'comment': '', 'cost': 90.0, 'created': datetime.datetime(2011, 3, 23, 15, 57, 18, 904614), 'id': 48243, 'multiplier': None, 'name': '750 GB SATA3 7200rpm Hard ' 'Drive', 'price': None, 'published': True, 'sortorder': 8004, 'source': '', 'updated': datetime.datetime(2015, 10, 6, 12, 52, 57, 903342)}, 48244: {'blurb': '', 'choicecategory_id': 43918, 'comment': '', 'cost': 78.0, 'created': datetime.datetime(2011, 3, 23, 15, 57, 57, 226349), 'id': 48244, 'multiplier': None, 'name': '500 GB SATA3 7200rpm Hard ' 'Drive', 'price': None, 'published': True, 'sortorder': 8003, 'source': '', 'updated': datetime.datetime(2015, 10, 6, 12, 52, 57, 816748)}, 48245: {'blurb': '', 'choicecategory_id': 43918, 'comment': '', 'cost': 68.0, 'created': datetime.datetime(2011, 3, 23, 15, 58, 35, 941847), 'id': 48245, 'multiplier': None, 'name': '320 GB SATA3 7200rpm Hard ' 'Drive', 'price': None, 'published': True, 'sortorder': 8000, 'source': '', 'updated': datetime.datetime(2015, 10, 6, 12, 52, 57, 752243)}, 48806: {'blurb': '', 'choicecategory_id': 43918, 'comment': '', 'cost': 270.0, 'created': datetime.datetime(2011, 5, 26, 14, 13, 47, 169832), 'id': 48806, 'multiplier': None, 'name': '3.0 TB SATA3 7200rpm Hard ' 'Drive', 'price': None, 'published': True, 'sortorder': 8008, 'source': '', 'updated': datetime.datetime(2015, 10, 6, 12, 52, 59, 513539)}, 49187: {'blurb': 'Typically WD Black, ' 'Seagate Constellation ' 'ES, HGST, or other ' 'enterprise-class ' 'drive\r\n' '\r\n', 'choicecategory_id': 43918, 'comment': '', 'cost': 400.0, 'created': datetime.datetime(2011, 6, 27, 8, 45, 41, 598458), 'id': 49187, 'multiplier': None, 'name': '4.0 TB SATA3 7200rpm Hard ' 'Drive', 'price': None, 'published': True, 'sortorder': 8009, 'source': '', 'updated': datetime.datetime(2015, 10, 6, 12, 52, 59, 563852)}}, 'choices_orderby': 'cost', 'created': datetime.datetime(2009, 6, 5, 14, 36, 48, 742577), 'defaultchoice_id': 48245, 'id': 42677, 'name': 'Removable HD Bay 3', 'option_id': 6835, 'product_id': 42675, 'published': True, 'qty': 1, 'required': False, 'single': False, 'updated': datetime.datetime(2012, 3, 18, 11, 50, 40, 135133)}), ('42676_1', {'_state': <django.db.models.base.ModelState object at 0x7f253901b2e0>, 'allowed_quantities': '', 'choices': {30: {'blurb': '', 'choicecategory_id': 43882, 'comment': None, 'cost': 0.0, 'created': datetime.datetime(2001, 1, 10, 16, 56, 5), 'id': 30, 'multiplier': None, 'name': 'none', 'price': 0.0, 'published': True, 'sortorder': 0, 'source': '', 'updated': datetime.datetime(2015, 10, 6, 12, 49, 14, 496668)}, 48174: {'blurb': '', 'choicecategory_id': 43918, 'comment': '', 'cost': 140.0, 'created': datetime.datetime(2011, 1, 28, 8, 20, 48, 873969), 'id': 48174, 'multiplier': None, 'name': '1.0 TB SATA3 7200rpm Hard ' 'Drive', 'price': None, 'published': True, 'sortorder': 8005, 'source': '', 'updated': datetime.datetime(2015, 10, 6, 12, 52, 59, 379038)}, 48242: {'blurb': '', 'choicecategory_id': 43918, 'comment': '', 'cost': 200.0, 'created': datetime.datetime(2011, 3, 23, 15, 56, 21, 950158), 'id': 48242, 'multiplier': None, 'name': '2.0 TB SATA3 7200rpm Hard ' 'Drive', 'price': None, 'published': True, 'sortorder': 8007, 'source': '', 'updated': datetime.datetime(2015, 10, 6, 12, 52, 59, 454147)}, 48243: {'blurb': '', 'choicecategory_id': 43918, 'comment': '', 'cost': 90.0, 'created': datetime.datetime(2011, 3, 23, 15, 57, 18, 904614), 'id': 48243, 'multiplier': None, 'name': '750 GB SATA3 7200rpm Hard ' 'Drive', 'price': None, 'published': True, 'sortorder': 8004, 'source': '', 'updated': datetime.datetime(2015, 10, 6, 12, 52, 57, 903342)}, 48244: {'blurb': '', 'choicecategory_id': 43918, 'comment': '', 'cost': 78.0, 'created': datetime.datetime(2011, 3, 23, 15, 57, 57, 226349), 'id': 48244, 'multiplier': None, 'name': '500 GB SATA3 7200rpm Hard ' 'Drive', 'price': None, 'published': True, 'sortorder': 8003, 'source': '', 'updated': datetime.datetime(2015, 10, 6, 12, 52, 57, 816748)}, 48245: {'blurb': '', 'choicecategory_id': 43918, 'comment': '', 'cost': 68.0, 'created': datetime.datetime(2011, 3, 23, 15, 58, 35, 941847), 'id': 48245, 'multiplier': None, 'name': '320 GB SATA3 7200rpm Hard ' 'Drive', 'price': None, 'published': True, 'sortorder': 8000, 'source': '', 'updated': datetime.datetime(2015, 10, 6, 12, 52, 57, 752243)}, 48806: {'blurb': '', 'choicecategory_id': 43918, 'comment': '', 'cost': 270.0, 'created': datetime.datetime(2011, 5, 26, 14, 13, 47, 169832), 'id': 48806, 'multiplier': None, 'name': '3.0 TB SATA3 7200rpm Hard ' 'Drive', 'price': None, 'published': True, 'sortorder': 8008, 'source': '', 'updated': datetime.datetime(2015, 10, 6, 12, 52, 59, 513539)}, 49187: {'blurb': 'Typically WD Black, ' 'Seagate Constellation ' 'ES, HGST, or other ' 'enterprise-class ' 'drive\r\n' '\r\n', 'choicecategory_id': 43918, 'comment': '', 'cost': 400.0, 'created': datetime.datetime(2011, 6, 27, 8, 45, 41, 598458), 'id': 49187, 'multiplier': None, 'name': '4.0 TB SATA3 7200rpm Hard ' 'Drive', 'price': None, 'published': True, 'sortorder': 8009, 'source': '', 'updated': datetime.datetime(2015, 10, 6, 12, 52, 59, 563852)}}, 'choices_orderby': 'cost', 'created': datetime.datetime(2009, 6, 5, 14, 36, 48, 742577), 'defaultchoice_id': 48245, 'id': 42676, 'name': 'Removable HD Bay 4', 'option_id': 7649, 'product_id': 42675, 'published': True, 'qty': 1, 'required': False, 'single': False, 'updated': datetime.datetime(2012, 3, 18, 11, 52, 30, 979928)}), ('57278_1', {'_state': <django.db.models.base.ModelState object at 0x7f253901b430>, 'allowed_quantities': '1,2,5,10,20', 'choices': {30: {'blurb': '', 'choicecategory_id': 43882, 'comment': None, 'cost': 0.0, 'created': datetime.datetime(2001, 1, 10, 16, 56, 5), 'id': 30, 'multiplier': None, 'name': 'none', 'price': 0.0, 'published': True, 'sortorder': 0, 'source': '', 'updated': datetime.datetime(2015, 10, 6, 12, 49, 14, 496668)}, 16588: {'blurb': '', 'choicecategory_id': 43882, 'comment': '', 'cost': 0.0, 'created': datetime.datetime(2001, 1, 1, 0, 0), 'id': 16588, 'multiplier': None, 'name': 'Other (enter details in ' '"Notes" field.)', 'price': None, 'published': True, 'sortorder': 4200, 'source': '', 'updated': datetime.datetime(2015, 11, 27, 15, 48, 10, 42090)}, 56702: {'blurb': 'Contribute to the Ubuntu ' 'Studio project', 'choicecategory_id': 43920, 'comment': '', 'cost': 5.0, 'created': datetime.datetime(2015, 2, 18, 19, 57, 2, 391752), 'id': 56702, 'multiplier': 1, 'name': '$5 to the Ubuntu Studio ' 'Project', 'price': None, 'published': True, 'sortorder': 20000, 'source': '', 'updated': datetime.datetime(2015, 10, 6, 12, 53, 4, 535207)}, 56703: {'blurb': 'Contribute to the ' 'OpenBSD Project / ' 'Foundation', 'choicecategory_id': 43920, 'comment': '', 'cost': 5.0, 'created': datetime.datetime(2015, 2, 18, 19, 58, 2, 870928), 'id': 56703, 'multiplier': 1, 'name': '$5 to the OpenBSD Project', 'price': None, 'published': True, 'sortorder': 20010, 'source': '', 'updated': datetime.datetime(2015, 10, 6, 12, 53, 4, 585814)}, 56704: {'blurb': 'Contribute to the ' 'FreeBSD Foundation', 'choicecategory_id': 43920, 'comment': '', 'cost': 5.0, 'created': datetime.datetime(2015, 2, 18, 19, 59, 3, 155994), 'id': 56704, 'multiplier': 1, 'name': '$5 to the FreeBSD ' 'Foundation', 'price': None, 'published': True, 'sortorder': 20020, 'source': '', 'updated': datetime.datetime(2015, 10, 6, 12, 53, 4, 667788)}, 56706: {'blurb': '', 'choicecategory_id': 43920, 'comment': '', 'cost': 5.0, 'created': datetime.datetime(2015, 2, 18, 20, 58, 6, 785612), 'id': 56706, 'multiplier': 1, 'name': '$5 to other Open Source ' 'project (please state in ' 'Notes)', 'price': None, 'published': True, 'sortorder': 21000, 'source': '', 'updated': datetime.datetime(2015, 10, 6, 12, 53, 4, 911462)}, 56708: {'blurb': 'Contribute qty x $5 to ' 'the EFF', 'choicecategory_id': 43920, 'comment': 'Contribute qty x $5 to ' 'the EFF', 'cost': 5.0, 'created': datetime.datetime(2015, 2, 19, 15, 30, 55, 572243), 'id': 56708, 'multiplier': 1, 'name': '$5 to the Electronic ' 'Frontier Foundation', 'price': None, 'published': True, 'sortorder': 20040, 'source': '', 'updated': datetime.datetime(2015, 10, 6, 12, 53, 4, 730388)}}, 'choices_orderby': 'cost', 'created': datetime.datetime(2015, 11, 15, 14, 0, 1, 525950), 'defaultchoice_id': 56702, 'id': 57278, 'name': 'Org Contribution', 'option_id': 56701, 'product_id': 42675, 'published': True, 'qty': 1, 'required': False, 'single': False, 'updated': datetime.datetime(2015, 11, 15, 14, 0, 1, 525974)}), ('42682_1', {'_state': <django.db.models.base.ModelState object at 0x7f253901b550>, 'allowed_quantities': '', 'choices': {30: {'blurb': '', 'choicecategory_id': 43882, 'comment': None, 'cost': 0.0, 'created': datetime.datetime(2001, 1, 10, 16, 56, 5), 'id': 30, 'multiplier': None, 'name': 'none', 'price': 0.0, 'published': True, 'sortorder': 0, 'source': '', 'updated': datetime.datetime(2015, 10, 6, 12, 49, 14, 496668)}, 18049: {'blurb': '', 'choicecategory_id': 43919, 'comment': '', 'cost': 0.0, 'created': datetime.datetime(2001, 1, 1, 0, 0), 'id': 18049, 'multiplier': None, 'name': 'Standard 1yr full /3yr ' 'limited warranty', 'price': None, 'published': True, 'sortorder': 9001, 'source': '', 'updated': datetime.datetime(2015, 10, 6, 12, 53, 3, 510446)}}, 'choices_orderby': 'cost', 'created': datetime.datetime(2009, 6, 5, 14, 36, 48, 742577), 'defaultchoice_id': 18049, 'id': 42682, 'name': 'Warranty', 'option_id': 18048, 'product_id': 42675, 'published': True, 'qty': 1, 'required': False, 'single': True, 'updated': datetime.datetime(2019, 8, 25, 15, 4, 10, 20481)})]), 'published': True, 'qty': 1, 'sku': 'MN4Lplus', 'sortorder': 0, 'summary': '', 'title': '', 'totprice': 1034.0, 'updated': datetime.datetime(2015, 10, 21, 10, 55, 37, 256867), 'weight': 40}

No GET data

No POST data

SQL queries from 1 connection

  •   default 297.34 ms (89 queries including 87 similar and 84 duplicates )
  Query Timeline Time (ms) Action
  +
SELECT "products"."id",
       "products"."name",
       "products"."sku",
       "products"."baseprice",
       "products"."cost",
       "products"."categoryid",
       "products"."weight",
       "products"."baseoptions",
       "products"."sortorder",
       "products"."blurb",
       "products"."description",
       "products"."features",
       "products"."comments",
       "products"."link",
       "products"."title",
       "products"."meta_title",
       "products"."meta_description",
       "products"."meta_keywords",
       "products"."created",
       "products"."updated",
       "products"."published"
  FROM
"products"
 WHERE
UPPER("products"."sku"::text) = UPPER('MN4Lplus')
 ORDER BY
"products"."sortorder" ASC, "products"."sku" ASC
SELECT ••• FROM "products" WHERE UPPER("products"."sku"::text) = UPPER('MN4Lplus') ORDER BY "products"."sortorder" ASC, "products"."sku" ASC
3.063724900612761%
9.11

Connection: default

/usr/local/bin/gunicorn in <module>(8)
  sys.exit(run())
/usr/local/lib/python3.8/site-packages/gunicorn/app/wsgiapp.py in run(58)
  WSGIApplication("%(prog)s [OPTIONS] [APP_MODULE]").run()
/usr/local/lib/python3.8/site-packages/gunicorn/app/base.py in run(228)
  super().run()
/usr/local/lib/python3.8/site-packages/gunicorn/app/base.py in run(72)
  Arbiter(self).run()
/usr/local/lib/python3.8/site-packages/gunicorn/arbiter.py in run(211)
  self.manage_workers()
/usr/local/lib/python3.8/site-packages/gunicorn/arbiter.py in manage_workers(545)
  self.spawn_workers()
/usr/local/lib/python3.8/site-packages/gunicorn/arbiter.py in spawn_workers(616)
  self.spawn_worker()
/usr/local/lib/python3.8/site-packages/gunicorn/arbiter.py in spawn_worker(583)
  worker.init_process()
/usr/local/lib/python3.8/site-packages/gunicorn/workers/base.py in init_process(140)
  self.run()
/usr/local/lib/python3.8/site-packages/gunicorn/workers/sync.py in run(123)
  self.run_for_one(timeout)
/usr/local/lib/python3.8/site-packages/gunicorn/workers/sync.py in run_for_one(67)
  self.accept(listener)
/usr/local/lib/python3.8/site-packages/gunicorn/workers/sync.py in accept(29)
  self.handle(listener, client, addr)
/usr/local/lib/python3.8/site-packages/gunicorn/workers/sync.py in handle(134)
  self.handle_request(listener, req, client, addr)
/usr/local/lib/python3.8/site-packages/gunicorn/workers/sync.py in handle_request(175)
  respiter = self.wsgi(environ, resp.start_response)
/home/joe/eracks12/web/apps/products/views.py in product(371)
  if products:
  +
SELECT "categories"."id",
       "categories"."name",
       "categories"."slug",
       "categories"."title",
       "categories"."blurb",
       "categories"."description",
       "categories"."comments",
       "categories"."sortorder",
       "categories"."meta_title",
       "categories"."meta_description",
       "categories"."meta_keywords",
       "categories"."published",
       "categories"."created",
       "categories"."updated"
  FROM
"categories"
 WHERE
"categories"."id" = 42556
SELECT ••• FROM "categories" WHERE "categories"."id" = 42556
1.4893251931215532%
4.43

Connection: default

/usr/local/bin/gunicorn in <module>(8)
  sys.exit(run())
/usr/local/lib/python3.8/site-packages/gunicorn/app/wsgiapp.py in run(58)
  WSGIApplication("%(prog)s [OPTIONS] [APP_MODULE]").run()
/usr/local/lib/python3.8/site-packages/gunicorn/app/base.py in run(228)
  super().run()
/usr/local/lib/python3.8/site-packages/gunicorn/app/base.py in run(72)
  Arbiter(self).run()
/usr/local/lib/python3.8/site-packages/gunicorn/arbiter.py in run(211)
  self.manage_workers()
/usr/local/lib/python3.8/site-packages/gunicorn/arbiter.py in manage_workers(545)
  self.spawn_workers()
/usr/local/lib/python3.8/site-packages/gunicorn/arbiter.py in spawn_workers(616)
  self.spawn_worker()
/usr/local/lib/python3.8/site-packages/gunicorn/arbiter.py in spawn_worker(583)
  worker.init_process()
/usr/local/lib/python3.8/site-packages/gunicorn/workers/base.py in init_process(140)
  self.run()
/usr/local/lib/python3.8/site-packages/gunicorn/workers/sync.py in run(123)
  self.run_for_one(timeout)
/usr/local/lib/python3.8/site-packages/gunicorn/workers/sync.py in run_for_one(67)
  self.accept(listener)
/usr/local/lib/python3.8/site-packages/gunicorn/workers/sync.py in accept(29)
  self.handle(listener, client, addr)
/usr/local/lib/python3.8/site-packages/gunicorn/workers/sync.py in handle(134)
  self.handle_request(listener, req, client, addr)
/usr/local/lib/python3.8/site-packages/gunicorn/workers/sync.py in handle_request(175)
  respiter = self.wsgi(environ, resp.start_response)
/home/joe/eracks12/web/apps/products/views.py in product(375)
  if product.category.slug != category:
  +
SELECT "prodopts"."id",
       "prodopts"."name",
       "prodopts"."qty",
       "prodopts"."single",
       "prodopts"."required",
       "prodopts"."choices_orderby",
       "prodopts"."allowed_quantities",
       "prodopts"."productid",
       "prodopts"."optionid",
       "prodopts"."defaultchoiceid",
       "prodopts"."published",
       "prodopts"."created",
       "prodopts"."updated"
  FROM
"prodopts"
 INNER JOIN
"options"
    ON
("prodopts"."optionid" = "options"."id")
 WHERE
"prodopts"."productid" = 42675
 ORDER BY
"options"."sortorder" ASC
SELECT ••• FROM "prodopts" INNER JOIN "options" ON ("prodopts"."optionid" = "options"."id") WHERE "prodopts"."productid" = 42675 ORDER BY "options"."sortorder" ASC
  2 similar queries.   Duplicated 2 times.
2.694801393907029%
8.01

Connection: default

/usr/local/bin/gunicorn in <module>(8)
  sys.exit(run())
/usr/local/lib/python3.8/site-packages/gunicorn/app/wsgiapp.py in run(58)
  WSGIApplication("%(prog)s [OPTIONS] [APP_MODULE]").run()
/usr/local/lib/python3.8/site-packages/gunicorn/app/base.py in run(228)
  super().run()
/usr/local/lib/python3.8/site-packages/gunicorn/app/base.py in run(72)
  Arbiter(self).run()
/usr/local/lib/python3.8/site-packages/gunicorn/arbiter.py in run(211)
  self.manage_workers()
/usr/local/lib/python3.8/site-packages/gunicorn/arbiter.py in manage_workers(545)
  self.spawn_workers()
/usr/local/lib/python3.8/site-packages/gunicorn/arbiter.py in spawn_workers(616)
  self.spawn_worker()
/usr/local/lib/python3.8/site-packages/gunicorn/arbiter.py in spawn_worker(583)
  worker.init_process()
/usr/local/lib/python3.8/site-packages/gunicorn/workers/base.py in init_process(140)
  self.run()
/usr/local/lib/python3.8/site-packages/gunicorn/workers/sync.py in run(123)
  self.run_for_one(timeout)
/usr/local/lib/python3.8/site-packages/gunicorn/workers/sync.py in run_for_one(67)
  self.accept(listener)
/usr/local/lib/python3.8/site-packages/gunicorn/workers/sync.py in accept(29)
  self.handle(listener, client, addr)
/usr/local/lib/python3.8/site-packages/gunicorn/workers/sync.py in handle(134)
  self.handle_request(listener, req, client, addr)
/usr/local/lib/python3.8/site-packages/gunicorn/workers/sync.py in handle_request(175)
  respiter = self.wsgi(environ, resp.start_response)
/home/joe/eracks12/web/apps/products/views.py in product(384)
  ses_helper.fill (product)
/home/joe/eracks12/web/apps/home/helpers.py in fill(193)
  for po in product_options:
  +
SELECT COUNT(*) AS "__count"
  FROM
"choices"
 INNER JOIN
"prodoptchoices"
    ON
("choices"."id" = "prodoptchoices"."choiceid")
 WHERE
"prodoptchoices"."productoptionid" = 42679
SELECT ••• FROM "choices" INNER JOIN "prodoptchoices" ON ("choices"."id" = "prodoptchoices"."choiceid") WHERE "prodoptchoices"."productoptionid" = 42679
  18 similar queries.   Duplicated 2 times.
2.12782505921539%
6.33

Connection: default

/usr/local/bin/gunicorn in <module>(8)
  sys.exit(run())
/usr/local/lib/python3.8/site-packages/gunicorn/app/wsgiapp.py in run(58)
  WSGIApplication("%(prog)s [OPTIONS] [APP_MODULE]").run()
/usr/local/lib/python3.8/site-packages/gunicorn/app/base.py in run(228)
  super().run()
/usr/local/lib/python3.8/site-packages/gunicorn/app/base.py in run(72)
  Arbiter(self).run()
/usr/local/lib/python3.8/site-packages/gunicorn/arbiter.py in run(211)
  self.manage_workers()
/usr/local/lib/python3.8/site-packages/gunicorn/arbiter.py in manage_workers(545)
  self.spawn_workers()
/usr/local/lib/python3.8/site-packages/gunicorn/arbiter.py in spawn_workers(616)
  self.spawn_worker()
/usr/local/lib/python3.8/site-packages/gunicorn/arbiter.py in spawn_worker(583)
  worker.init_process()
/usr/local/lib/python3.8/site-packages/gunicorn/workers/base.py in init_process(140)
  self.run()
/usr/local/lib/python3.8/site-packages/gunicorn/workers/sync.py in run(123)
  self.run_for_one(timeout)
/usr/local/lib/python3.8/site-packages/gunicorn/workers/sync.py in run_for_one(67)
  self.accept(listener)
/usr/local/lib/python3.8/site-packages/gunicorn/workers/sync.py in accept(29)
  self.handle(listener, client, addr)
/usr/local/lib/python3.8/site-packages/gunicorn/workers/sync.py in handle(134)
  self.handle_request(listener, req, client, addr)
/usr/local/lib/python3.8/site-packages/gunicorn/workers/sync.py in handle_request(175)
  respiter = self.wsgi(environ, resp.start_response)
/home/joe/eracks12/web/apps/products/views.py in product(384)
  ses_helper.fill (product)
/home/joe/eracks12/web/apps/home/helpers.py in fill(198)
  opts [lineid] ['choices'] = dict ([(c['id'],c) for c in list(po.all_choices().values())])
/home/joe/eracks12/web/apps/products/models.py in all_choices(499)
  if self.choices.count():  # POCs - yuk - TODO: remove them
  +
SELECT "choices"."id",
       "choices"."name",
       "choices"."source",
       "choices"."price",
       "choices"."cost",
       "choices"."sortorder",
       "choices"."multiplier",
       "choices"."comment",
       "choices"."choicecategory_id",
       "choices"."blurb",
       "choices"."published",
       "choices"."created",
       "choices"."updated"
  FROM
"choices"
 WHERE
"choices"."id" = 42584
SELECT ••• FROM "choices" WHERE "choices"."id" = 42584
  11 similar queries.   Duplicated 2 times.
1.690264621029522%
5.03

Connection: default

/usr/local/bin/gunicorn in <module>(8)
  sys.exit(run())
/usr/local/lib/python3.8/site-packages/gunicorn/app/wsgiapp.py in run(58)
  WSGIApplication("%(prog)s [OPTIONS] [APP_MODULE]").run()
/usr/local/lib/python3.8/site-packages/gunicorn/app/base.py in run(228)
  super().run()
/usr/local/lib/python3.8/site-packages/gunicorn/app/base.py in run(72)
  Arbiter(self).run()
/usr/local/lib/python3.8/site-packages/gunicorn/arbiter.py in run(211)
  self.manage_workers()
/usr/local/lib/python3.8/site-packages/gunicorn/arbiter.py in manage_workers(545)
  self.spawn_workers()
/usr/local/lib/python3.8/site-packages/gunicorn/arbiter.py in spawn_workers(616)
  self.spawn_worker()
/usr/local/lib/python3.8/site-packages/gunicorn/arbiter.py in spawn_worker(583)
  worker.init_process()
/usr/local/lib/python3.8/site-packages/gunicorn/workers/base.py in init_process(140)
  self.run()
/usr/local/lib/python3.8/site-packages/gunicorn/workers/sync.py in run(123)
  self.run_for_one(timeout)
/usr/local/lib/python3.8/site-packages/gunicorn/workers/sync.py in run_for_one(67)
  self.accept(listener)
/usr/local/lib/python3.8/site-packages/gunicorn/workers/sync.py in accept(29)
  self.handle(listener, client, addr)
/usr/local/lib/python3.8/site-packages/gunicorn/workers/sync.py in handle(134)
  self.handle_request(listener, req, client, addr)
/usr/local/lib/python3.8/site-packages/gunicorn/workers/sync.py in handle_request(175)
  respiter = self.wsgi(environ, resp.start_response)
/home/joe/eracks12/web/apps/products/views.py in product(384)
  ses_helper.fill (product)
/home/joe/eracks12/web/apps/home/helpers.py in fill(198)
  opts [lineid] ['choices'] = dict ([(c['id'],c) for c in list(po.all_choices().values())])
/home/joe/eracks12/web/apps/products/models.py in all_choices(502)
  return self.option_choices()
/home/joe/eracks12/web/apps/products/models.py in option_choices(492)
  result = [self.defaultchoice.id]
  +
SELECT "choices"."id",
       "choices"."name",
       "choices"."source",
       "choices"."price",
       "choices"."cost",
       "choices"."sortorder",
       "choices"."multiplier",
       "choices"."comment",
       "choices"."choicecategory_id",
       "choices"."blurb",
       "choices"."published",
       "choices"."created",
       "choices"."updated"
  FROM
"choices"
 WHERE
"choices"."id" IN (30, 42584)
 ORDER BY
"choices"."cost" ASC, "choices"."sortorder" ASC
SELECT ••• FROM "choices" WHERE "choices"."id" IN (30, 42584) ORDER BY "choices"."cost" ASC, "choices"."sortorder" ASC
  4 similar queries.   Duplicated 2 times.
1.1537579521818686%
3.43

Connection: default

/usr/local/bin/gunicorn in <module>(8)
  sys.exit(run())
/usr/local/lib/python3.8/site-packages/gunicorn/app/wsgiapp.py in run(58)
  WSGIApplication("%(prog)s [OPTIONS] [APP_MODULE]").run()
/usr/local/lib/python3.8/site-packages/gunicorn/app/base.py in run(228)
  super().run()
/usr/local/lib/python3.8/site-packages/gunicorn/app/base.py in run(72)
  Arbiter(self).run()
/usr/local/lib/python3.8/site-packages/gunicorn/arbiter.py in run(211)
  self.manage_workers()
/usr/local/lib/python3.8/site-packages/gunicorn/arbiter.py in manage_workers(545)
  self.spawn_workers()
/usr/local/lib/python3.8/site-packages/gunicorn/arbiter.py in spawn_workers(616)
  self.spawn_worker()
/usr/local/lib/python3.8/site-packages/gunicorn/arbiter.py in spawn_worker(583)
  worker.init_process()
/usr/local/lib/python3.8/site-packages/gunicorn/workers/base.py in init_process(140)
  self.run()
/usr/local/lib/python3.8/site-packages/gunicorn/workers/sync.py in run(123)
  self.run_for_one(timeout)
/usr/local/lib/python3.8/site-packages/gunicorn/workers/sync.py in run_for_one(67)
  self.accept(listener)
/usr/local/lib/python3.8/site-packages/gunicorn/workers/sync.py in accept(29)
  self.handle(listener, client, addr)
/usr/local/lib/python3.8/site-packages/gunicorn/workers/sync.py in handle(134)
  self.handle_request(listener, req, client, addr)
/usr/local/lib/python3.8/site-packages/gunicorn/workers/sync.py in handle_request(175)
  respiter = self.wsgi(environ, resp.start_response)
/home/joe/eracks12/web/apps/products/views.py in product(384)
  ses_helper.fill (product)
/home/joe/eracks12/web/apps/home/helpers.py in fill(198)
  opts [lineid] ['choices'] = dict ([(c['id'],c) for c in list(po.all_choices().values())])
  +
SELECT "options"."id",
       "options"."name",
       "options"."usage_notes",
       "options"."sortorder",
       "options"."blurb",
       "options"."description",
       "options"."comments",
       "options"."published",
       "options"."created",
       "options"."updated"
  FROM
"options"
 WHERE
"options"."id" = 18849
SELECT ••• FROM "options" WHERE "options"."id" = 18849
  18 similar queries.   Duplicated 2 times.
0.22419259394679997%
0.67

Connection: default

/usr/local/bin/gunicorn in <module>(8)
  sys.exit(run())
/usr/local/lib/python3.8/site-packages/gunicorn/app/wsgiapp.py in run(58)
  WSGIApplication("%(prog)s [OPTIONS] [APP_MODULE]").run()
/usr/local/lib/python3.8/site-packages/gunicorn/app/base.py in run(228)
  super().run()
/usr/local/lib/python3.8/site-packages/gunicorn/app/base.py in run(72)
  Arbiter(self).run()
/usr/local/lib/python3.8/site-packages/gunicorn/arbiter.py in run(211)
  self.manage_workers()
/usr/local/lib/python3.8/site-packages/gunicorn/arbiter.py in manage_workers(545)
  self.spawn_workers()
/usr/local/lib/python3.8/site-packages/gunicorn/arbiter.py in spawn_workers(616)
  self.spawn_worker()
/usr/local/lib/python3.8/site-packages/gunicorn/arbiter.py in spawn_worker(583)
  worker.init_process()
/usr/local/lib/python3.8/site-packages/gunicorn/workers/base.py in init_process(140)
  self.run()
/usr/local/lib/python3.8/site-packages/gunicorn/workers/sync.py in run(123)
  self.run_for_one(timeout)
/usr/local/lib/python3.8/site-packages/gunicorn/workers/sync.py in run_for_one(67)
  self.accept(listener)
/usr/local/lib/python3.8/site-packages/gunicorn/workers/sync.py in accept(29)
  self.handle(listener, client, addr)
/usr/local/lib/python3.8/site-packages/gunicorn/workers/sync.py in handle(134)
  self.handle_request(listener, req, client, addr)
/usr/local/lib/python3.8/site-packages/gunicorn/workers/sync.py in handle_request(175)
  respiter = self.wsgi(environ, resp.start_response)
/home/joe/eracks12/web/apps/products/views.py in product(384)
  ses_helper.fill (product)
/home/joe/eracks12/web/apps/home/helpers.py in fill(199)
  opts [lineid] ['name'] = po.calc_name
/home/joe/eracks12/web/apps/products/models.py in calc_name(477)
  return self.name or self.option.name  # or self.option.display_name
  +
SELECT COUNT(*) AS "__count"
  FROM
"choices"
 INNER JOIN
"prodoptchoices"
    ON
("choices"."id" = "prodoptchoices"."choiceid")
 WHERE
"prodoptchoices"."productoptionid" = 43146
SELECT ••• FROM "choices" INNER JOIN "prodoptchoices" ON ("choices"."id" = "prodoptchoices"."choiceid") WHERE "prodoptchoices"."productoptionid" = 43146
  18 similar queries.   Duplicated 2 times.
1.6399094890557773%
4.88

Connection: default

/usr/local/bin/gunicorn in <module>(8)
  sys.exit(run())
/usr/local/lib/python3.8/site-packages/gunicorn/app/wsgiapp.py in run(58)
  WSGIApplication("%(prog)s [OPTIONS] [APP_MODULE]").run()
/usr/local/lib/python3.8/site-packages/gunicorn/app/base.py in run(228)
  super().run()
/usr/local/lib/python3.8/site-packages/gunicorn/app/base.py in run(72)
  Arbiter(self).run()
/usr/local/lib/python3.8/site-packages/gunicorn/arbiter.py in run(211)
  self.manage_workers()
/usr/local/lib/python3.8/site-packages/gunicorn/arbiter.py in manage_workers(545)
  self.spawn_workers()
/usr/local/lib/python3.8/site-packages/gunicorn/arbiter.py in spawn_workers(616)
  self.spawn_worker()
/usr/local/lib/python3.8/site-packages/gunicorn/arbiter.py in spawn_worker(583)
  worker.init_process()
/usr/local/lib/python3.8/site-packages/gunicorn/workers/base.py in init_process(140)
  self.run()
/usr/local/lib/python3.8/site-packages/gunicorn/workers/sync.py in run(123)
  self.run_for_one(timeout)
/usr/local/lib/python3.8/site-packages/gunicorn/workers/sync.py in run_for_one(67)
  self.accept(listener)
/usr/local/lib/python3.8/site-packages/gunicorn/workers/sync.py in accept(29)
  self.handle(listener, client, addr)
/usr/local/lib/python3.8/site-packages/gunicorn/workers/sync.py in handle(134)
  self.handle_request(listener, req, client, addr)
/usr/local/lib/python3.8/site-packages/gunicorn/workers/sync.py in handle_request(175)
  respiter = self.wsgi(environ, resp.start_response)
/home/joe/eracks12/web/apps/products/views.py in product(384)
  ses_helper.fill (product)
/home/joe/eracks12/web/apps/home/helpers.py in fill(198)
  opts [lineid] ['choices'] = dict ([(c['id'],c) for c in list(po.all_choices().values())])
/home/joe/eracks12/web/apps/products/models.py in all_choices(499)
  if self.choices.count():  # POCs - yuk - TODO: remove them
  +
SELECT "choices"."id"
  FROM
"choices"
 INNER JOIN
"prodoptchoices"
    ON
("choices"."id" = "prodoptchoices"."choiceid")
 WHERE
"prodoptchoices"."productoptionid" = 43146
 ORDER BY
"choices"."sortorder" ASC, "choices"."cost" ASC
SELECT ••• FROM "choices" INNER JOIN "prodoptchoices" ON ("choices"."id" = "prodoptchoices"."choiceid") WHERE "prodoptchoices"."productoptionid" = 43146 ORDER BY "choices"."sortorder" ASC, "choices"."cost" ASC
  12 similar queries.   Duplicated 2 times.
0.976071690312731%
2.90

Connection: default

/usr/local/bin/gunicorn in <module>(8)
  sys.exit(run())
/usr/local/lib/python3.8/site-packages/gunicorn/app/wsgiapp.py in run(58)
  WSGIApplication("%(prog)s [OPTIONS] [APP_MODULE]").run()
/usr/local/lib/python3.8/site-packages/gunicorn/app/base.py in run(228)
  super().run()
/usr/local/lib/python3.8/site-packages/gunicorn/app/base.py in run(72)
  Arbiter(self).run()
/usr/local/lib/python3.8/site-packages/gunicorn/arbiter.py in run(211)
  self.manage_workers()
/usr/local/lib/python3.8/site-packages/gunicorn/arbiter.py in manage_workers(545)
  self.spawn_workers()
/usr/local/lib/python3.8/site-packages/gunicorn/arbiter.py in spawn_workers(616)
  self.spawn_worker()
/usr/local/lib/python3.8/site-packages/gunicorn/arbiter.py in spawn_worker(583)
  worker.init_process()
/usr/local/lib/python3.8/site-packages/gunicorn/workers/base.py in init_process(140)
  self.run()
/usr/local/lib/python3.8/site-packages/gunicorn/workers/sync.py in run(123)
  self.run_for_one(timeout)
/usr/local/lib/python3.8/site-packages/gunicorn/workers/sync.py in run_for_one(67)
  self.accept(listener)
/usr/local/lib/python3.8/site-packages/gunicorn/workers/sync.py in accept(29)
  self.handle(listener, client, addr)
/usr/local/lib/python3.8/site-packages/gunicorn/workers/sync.py in handle(134)
  self.handle_request(listener, req, client, addr)
/usr/local/lib/python3.8/site-packages/gunicorn/workers/sync.py in handle_request(175)
  respiter = self.wsgi(environ, resp.start_response)
/home/joe/eracks12/web/apps/products/views.py in product(384)
  ses_helper.fill (product)
/home/joe/eracks12/web/apps/home/helpers.py in fill(198)
  opts [lineid] ['choices'] = dict ([(c['id'],c) for c in list(po.all_choices().values())])
/home/joe/eracks12/web/apps/products/models.py in all_choices(500)
  return self._corrected_choices (list (self.choices.values_list ('id', flat=True)))
  +
SELECT "choices"."id",
       "choices"."name",
       "choices"."source",
       "choices"."price",
       "choices"."cost",
       "choices"."sortorder",
       "choices"."multiplier",
       "choices"."comment",
       "choices"."choicecategory_id",
       "choices"."blurb",
       "choices"."published",
       "choices"."created",
       "choices"."updated"
  FROM
"choices"
 WHERE
"choices"."id" IN (30, 5292, 5293, 7449)
 ORDER BY
"choices"."cost" ASC, "choices"."sortorder" ASC
SELECT ••• FROM "choices" WHERE "choices"."id" IN (30, 5292, 5293, 7449) ORDER BY "choices"."cost" ASC, "choices"."sortorder" ASC
  2 similar queries.   Duplicated 2 times.
1.520837242270728%
4.52

Connection: default

/usr/local/bin/gunicorn in <module>(8)
  sys.exit(run())
/usr/local/lib/python3.8/site-packages/gunicorn/app/wsgiapp.py in run(58)
  WSGIApplication("%(prog)s [OPTIONS] [APP_MODULE]").run()
/usr/local/lib/python3.8/site-packages/gunicorn/app/base.py in run(228)
  super().run()
/usr/local/lib/python3.8/site-packages/gunicorn/app/base.py in run(72)
  Arbiter(self).run()
/usr/local/lib/python3.8/site-packages/gunicorn/arbiter.py in run(211)
  self.manage_workers()
/usr/local/lib/python3.8/site-packages/gunicorn/arbiter.py in manage_workers(545)
  self.spawn_workers()
/usr/local/lib/python3.8/site-packages/gunicorn/arbiter.py in spawn_workers(616)
  self.spawn_worker()
/usr/local/lib/python3.8/site-packages/gunicorn/arbiter.py in spawn_worker(583)
  worker.init_process()
/usr/local/lib/python3.8/site-packages/gunicorn/workers/base.py in init_process(140)
  self.run()
/usr/local/lib/python3.8/site-packages/gunicorn/workers/sync.py in run(123)
  self.run_for_one(timeout)
/usr/local/lib/python3.8/site-packages/gunicorn/workers/sync.py in run_for_one(67)
  self.accept(listener)
/usr/local/lib/python3.8/site-packages/gunicorn/workers/sync.py in accept(29)
  self.handle(listener, client, addr)
/usr/local/lib/python3.8/site-packages/gunicorn/workers/sync.py in handle(134)
  self.handle_request(listener, req, client, addr)
/usr/local/lib/python3.8/site-packages/gunicorn/workers/sync.py in handle_request(175)
  respiter = self.wsgi(environ, resp.start_response)
/home/joe/eracks12/web/apps/products/views.py in product(384)
  ses_helper.fill (product)
/home/joe/eracks12/web/apps/home/helpers.py in fill(198)
  opts [lineid] ['choices'] = dict ([(c['id'],c) for c in list(po.all_choices().values())])
  +
SELECT "options"."id",
       "options"."name",
       "options"."usage_notes",
       "options"."sortorder",
       "options"."blurb",
       "options"."description",
       "options"."comments",
       "options"."published",
       "options"."created",
       "options"."updated"
  FROM
"options"
 WHERE
"options"."id" = 5
SELECT ••• FROM "options" WHERE "options"."id" = 5
  18 similar queries.   Duplicated 2 times.
0.22202764400525363%
0.66

Connection: default

/usr/local/bin/gunicorn in <module>(8)
  sys.exit(run())
/usr/local/lib/python3.8/site-packages/gunicorn/app/wsgiapp.py in run(58)
  WSGIApplication("%(prog)s [OPTIONS] [APP_MODULE]").run()
/usr/local/lib/python3.8/site-packages/gunicorn/app/base.py in run(228)
  super().run()
/usr/local/lib/python3.8/site-packages/gunicorn/app/base.py in run(72)
  Arbiter(self).run()
/usr/local/lib/python3.8/site-packages/gunicorn/arbiter.py in run(211)
  self.manage_workers()
/usr/local/lib/python3.8/site-packages/gunicorn/arbiter.py in manage_workers(545)
  self.spawn_workers()
/usr/local/lib/python3.8/site-packages/gunicorn/arbiter.py in spawn_workers(616)
  self.spawn_worker()
/usr/local/lib/python3.8/site-packages/gunicorn/arbiter.py in spawn_worker(583)
  worker.init_process()
/usr/local/lib/python3.8/site-packages/gunicorn/workers/base.py in init_process(140)
  self.run()
/usr/local/lib/python3.8/site-packages/gunicorn/workers/sync.py in run(123)
  self.run_for_one(timeout)
/usr/local/lib/python3.8/site-packages/gunicorn/workers/sync.py in run_for_one(67)
  self.accept(listener)
/usr/local/lib/python3.8/site-packages/gunicorn/workers/sync.py in accept(29)
  self.handle(listener, client, addr)
/usr/local/lib/python3.8/site-packages/gunicorn/workers/sync.py in handle(134)
  self.handle_request(listener, req, client, addr)
/usr/local/lib/python3.8/site-packages/gunicorn/workers/sync.py in handle_request(175)
  respiter = self.wsgi(environ, resp.start_response)
/home/joe/eracks12/web/apps/products/views.py in product(384)
  ses_helper.fill (product)
/home/joe/eracks12/web/apps/home/helpers.py in fill(199)
  opts [lineid] ['name'] = po.calc_name
/home/joe/eracks12/web/apps/products/models.py in calc_name(477)
  return self.name or self.option.name  # or self.option.display_name
  +
SELECT COUNT(*) AS "__count"
  FROM
"choices"
 INNER JOIN
"prodoptchoices"
    ON
("choices"."id" = "prodoptchoices"."choiceid")
 WHERE
"prodoptchoices"."productoptionid" = 42683
SELECT ••• FROM "choices" INNER JOIN "prodoptchoices" ON ("choices"."id" = "prodoptchoices"."choiceid") WHERE "prodoptchoices"."productoptionid" = 42683
  18 similar queries.   Duplicated 2 times.
1.064112987935616%
3.16

Connection: default

/usr/local/bin/gunicorn in <module>(8)
  sys.exit(run())
/usr/local/lib/python3.8/site-packages/gunicorn/app/wsgiapp.py in run(58)
  WSGIApplication("%(prog)s [OPTIONS] [APP_MODULE]").run()
/usr/local/lib/python3.8/site-packages/gunicorn/app/base.py in run(228)
  super().run()
/usr/local/lib/python3.8/site-packages/gunicorn/app/base.py in run(72)
  Arbiter(self).run()
/usr/local/lib/python3.8/site-packages/gunicorn/arbiter.py in run(211)
  self.manage_workers()
/usr/local/lib/python3.8/site-packages/gunicorn/arbiter.py in manage_workers(545)
  self.spawn_workers()
/usr/local/lib/python3.8/site-packages/gunicorn/arbiter.py in spawn_workers(616)
  self.spawn_worker()
/usr/local/lib/python3.8/site-packages/gunicorn/arbiter.py in spawn_worker(583)
  worker.init_process()
/usr/local/lib/python3.8/site-packages/gunicorn/workers/base.py in init_process(140)
  self.run()
/usr/local/lib/python3.8/site-packages/gunicorn/workers/sync.py in run(123)
  self.run_for_one(timeout)
/usr/local/lib/python3.8/site-packages/gunicorn/workers/sync.py in run_for_one(67)
  self.accept(listener)
/usr/local/lib/python3.8/site-packages/gunicorn/workers/sync.py in accept(29)
  self.handle(listener, client, addr)
/usr/local/lib/python3.8/site-packages/gunicorn/workers/sync.py in handle(134)
  self.handle_request(listener, req, client, addr)
/usr/local/lib/python3.8/site-packages/gunicorn/workers/sync.py in handle_request(175)
  respiter = self.wsgi(environ, resp.start_response)
/home/joe/eracks12/web/apps/products/views.py in product(384)
  ses_helper.fill (product)
/home/joe/eracks12/web/apps/home/helpers.py in fill(198)
  opts [lineid] ['choices'] = dict ([(c['id'],c) for c in list(po.all_choices().values())])
/home/joe/eracks12/web/apps/products/models.py in all_choices(499)
  if self.choices.count():  # POCs - yuk - TODO: remove them
  +
SELECT "choices"."id"
  FROM
"choices"
 INNER JOIN
"prodoptchoices"
    ON
("choices"."id" = "prodoptchoices"."choiceid")
 WHERE
"prodoptchoices"."productoptionid" = 42683
 ORDER BY
"choices"."sortorder" ASC, "choices"."cost" ASC
SELECT ••• FROM "choices" INNER JOIN "prodoptchoices" ON ("choices"."id" = "prodoptchoices"."choiceid") WHERE "prodoptchoices"."productoptionid" = 42683 ORDER BY "choices"."sortorder" ASC, "choices"."cost" ASC
  12 similar queries.   Duplicated 2 times.
1.757458252548627%
5.23

Connection: default

/usr/local/bin/gunicorn in <module>(8)
  sys.exit(run())
/usr/local/lib/python3.8/site-packages/gunicorn/app/wsgiapp.py in run(58)
  WSGIApplication("%(prog)s [OPTIONS] [APP_MODULE]").run()
/usr/local/lib/python3.8/site-packages/gunicorn/app/base.py in run(228)
  super().run()
/usr/local/lib/python3.8/site-packages/gunicorn/app/base.py in run(72)
  Arbiter(self).run()
/usr/local/lib/python3.8/site-packages/gunicorn/arbiter.py in run(211)
  self.manage_workers()
/usr/local/lib/python3.8/site-packages/gunicorn/arbiter.py in manage_workers(545)
  self.spawn_workers()
/usr/local/lib/python3.8/site-packages/gunicorn/arbiter.py in spawn_workers(616)
  self.spawn_worker()
/usr/local/lib/python3.8/site-packages/gunicorn/arbiter.py in spawn_worker(583)
  worker.init_process()
/usr/local/lib/python3.8/site-packages/gunicorn/workers/base.py in init_process(140)
  self.run()
/usr/local/lib/python3.8/site-packages/gunicorn/workers/sync.py in run(123)
  self.run_for_one(timeout)
/usr/local/lib/python3.8/site-packages/gunicorn/workers/sync.py in run_for_one(67)
  self.accept(listener)
/usr/local/lib/python3.8/site-packages/gunicorn/workers/sync.py in accept(29)
  self.handle(listener, client, addr)
/usr/local/lib/python3.8/site-packages/gunicorn/workers/sync.py in handle(134)
  self.handle_request(listener, req, client, addr)
/usr/local/lib/python3.8/site-packages/gunicorn/workers/sync.py in handle_request(175)
  respiter = self.wsgi(environ, resp.start_response)
/home/joe/eracks12/web/apps/products/views.py in product(384)
  ses_helper.fill (product)
/home/joe/eracks12/web/apps/home/helpers.py in fill(198)
  opts [lineid] ['choices'] = dict ([(c['id'],c) for c in list(po.all_choices().values())])
/home/joe/eracks12/web/apps/products/models.py in all_choices(500)
  return self._corrected_choices (list (self.choices.values_list ('id', flat=True)))
  +
SELECT "choices"."id",
       "choices"."name",
       "choices"."source",
       "choices"."price",
       "choices"."cost",
       "choices"."sortorder",
       "choices"."multiplier",
       "choices"."comment",
       "choices"."choicecategory_id",
       "choices"."blurb",
       "choices"."published",
       "choices"."created",
       "choices"."updated"
  FROM
"choices"
 WHERE
"choices"."id" IN (30, 9279, 11961, 11962, 11963, 11964)
 ORDER BY
"choices"."cost" ASC, "choices"."sortorder" ASC
SELECT ••• FROM "choices" WHERE "choices"."id" IN (30, 9279, 11961, 11962, 11963, 11964) ORDER BY "choices"."cost" ASC, "choices"."sortorder" ASC
  2 similar queries.   Duplicated 2 times.
1.533025108608322%
4.56

Connection: default

/usr/local/bin/gunicorn in <module>(8)
  sys.exit(run())
/usr/local/lib/python3.8/site-packages/gunicorn/app/wsgiapp.py in run(58)
  WSGIApplication("%(prog)s [OPTIONS] [APP_MODULE]").run()
/usr/local/lib/python3.8/site-packages/gunicorn/app/base.py in run(228)
  super().run()
/usr/local/lib/python3.8/site-packages/gunicorn/app/base.py in run(72)
  Arbiter(self).run()
/usr/local/lib/python3.8/site-packages/gunicorn/arbiter.py in run(211)
  self.manage_workers()
/usr/local/lib/python3.8/site-packages/gunicorn/arbiter.py in manage_workers(545)
  self.spawn_workers()
/usr/local/lib/python3.8/site-packages/gunicorn/arbiter.py in spawn_workers(616)
  self.spawn_worker()
/usr/local/lib/python3.8/site-packages/gunicorn/arbiter.py in spawn_worker(583)
  worker.init_process()
/usr/local/lib/python3.8/site-packages/gunicorn/workers/base.py in init_process(140)
  self.run()
/usr/local/lib/python3.8/site-packages/gunicorn/workers/sync.py in run(123)
  self.run_for_one(timeout)
/usr/local/lib/python3.8/site-packages/gunicorn/workers/sync.py in run_for_one(67)
  self.accept(listener)
/usr/local/lib/python3.8/site-packages/gunicorn/workers/sync.py in accept(29)
  self.handle(listener, client, addr)
/usr/local/lib/python3.8/site-packages/gunicorn/workers/sync.py in handle(134)
  self.handle_request(listener, req, client, addr)
/usr/local/lib/python3.8/site-packages/gunicorn/workers/sync.py in handle_request(175)
  respiter = self.wsgi(environ, resp.start_response)
/home/joe/eracks12/web/apps/products/views.py in product(384)
  ses_helper.fill (product)
/home/joe/eracks12/web/apps/home/helpers.py in fill(198)
  opts [lineid] ['choices'] = dict ([(c['id'],c) for c in list(po.all_choices().values())])
  +
SELECT "options"."id",
       "options"."name",
       "options"."usage_notes",
       "options"."sortorder",
       "options"."blurb",
       "options"."description",
       "options"."comments",
       "options"."published",
       "options"."created",
       "options"."updated"
  FROM
"options"
 WHERE
"options"."id" = 11959
SELECT ••• FROM "options" WHERE "options"."id" = 11959
  18 similar queries.   Duplicated 2 times.
0.916495475254622%
2.73

Connection: default

/usr/local/bin/gunicorn in <module>(8)
  sys.exit(run())
/usr/local/lib/python3.8/site-packages/gunicorn/app/wsgiapp.py in run(58)
  WSGIApplication("%(prog)s [OPTIONS] [APP_MODULE]").run()
/usr/local/lib/python3.8/site-packages/gunicorn/app/base.py in run(228)
  super().run()
/usr/local/lib/python3.8/site-packages/gunicorn/app/base.py in run(72)
  Arbiter(self).run()
/usr/local/lib/python3.8/site-packages/gunicorn/arbiter.py in run(211)
  self.manage_workers()
/usr/local/lib/python3.8/site-packages/gunicorn/arbiter.py in manage_workers(545)
  self.spawn_workers()
/usr/local/lib/python3.8/site-packages/gunicorn/arbiter.py in spawn_workers(616)
  self.spawn_worker()
/usr/local/lib/python3.8/site-packages/gunicorn/arbiter.py in spawn_worker(583)
  worker.init_process()
/usr/local/lib/python3.8/site-packages/gunicorn/workers/base.py in init_process(140)
  self.run()
/usr/local/lib/python3.8/site-packages/gunicorn/workers/sync.py in run(123)
  self.run_for_one(timeout)
/usr/local/lib/python3.8/site-packages/gunicorn/workers/sync.py in run_for_one(67)
  self.accept(listener)
/usr/local/lib/python3.8/site-packages/gunicorn/workers/sync.py in accept(29)
  self.handle(listener, client, addr)
/usr/local/lib/python3.8/site-packages/gunicorn/workers/sync.py in handle(134)
  self.handle_request(listener, req, client, addr)
/usr/local/lib/python3.8/site-packages/gunicorn/workers/sync.py in handle_request(175)
  respiter = self.wsgi(environ, resp.start_response)
/home/joe/eracks12/web/apps/products/views.py in product(384)
  ses_helper.fill (product)
/home/joe/eracks12/web/apps/home/helpers.py in fill(199)
  opts [lineid] ['name'] = po.calc_name
/home/joe/eracks12/web/apps/products/models.py in calc_name(477)
  return self.name or self.option.name  # or self.option.display_name
  +
SELECT COUNT(*) AS "__count"
  FROM
"choices"
 INNER JOIN
"prodoptchoices"
    ON
("choices"."id" = "prodoptchoices"."choiceid")
 WHERE
"prodoptchoices"."productoptionid" = 42684
SELECT ••• FROM "choices" INNER JOIN "prodoptchoices" ON ("choices"."id" = "prodoptchoices"."choiceid") WHERE "prodoptchoices"."productoptionid" = 42684
  18 similar queries.   Duplicated 2 times.
0.24953052659600913%
0.74

Connection: default

/usr/local/bin/gunicorn in <module>(8)
  sys.exit(run())
/usr/local/lib/python3.8/site-packages/gunicorn/app/wsgiapp.py in run(58)
  WSGIApplication("%(prog)s [OPTIONS] [APP_MODULE]").run()
/usr/local/lib/python3.8/site-packages/gunicorn/app/base.py in run(228)
  super().run()
/usr/local/lib/python3.8/site-packages/gunicorn/app/base.py in run(72)
  Arbiter(self).run()
/usr/local/lib/python3.8/site-packages/gunicorn/arbiter.py in run(211)
  self.manage_workers()
/usr/local/lib/python3.8/site-packages/gunicorn/arbiter.py in manage_workers(545)
  self.spawn_workers()
/usr/local/lib/python3.8/site-packages/gunicorn/arbiter.py in spawn_workers(616)
  self.spawn_worker()
/usr/local/lib/python3.8/site-packages/gunicorn/arbiter.py in spawn_worker(583)
  worker.init_process()
/usr/local/lib/python3.8/site-packages/gunicorn/workers/base.py in init_process(140)
  self.run()
/usr/local/lib/python3.8/site-packages/gunicorn/workers/sync.py in run(123)
  self.run_for_one(timeout)
/usr/local/lib/python3.8/site-packages/gunicorn/workers/sync.py in run_for_one(67)
  self.accept(listener)
/usr/local/lib/python3.8/site-packages/gunicorn/workers/sync.py in accept(29)
  self.handle(listener, client, addr)
/usr/local/lib/python3.8/site-packages/gunicorn/workers/sync.py in handle(134)
  self.handle_request(listener, req, client, addr)
/usr/local/lib/python3.8/site-packages/gunicorn/workers/sync.py in handle_request(175)
  respiter = self.wsgi(environ, resp.start_response)
/home/joe/eracks12/web/apps/products/views.py in product(384)
  ses_helper.fill (product)
/home/joe/eracks12/web/apps/home/helpers.py in fill(198)
  opts [lineid] ['choices'] = dict ([(c['id'],c) for c in list(po.all_choices().values())])
/home/joe/eracks12/web/apps/products/models.py in all_choices(499)
  if self.choices.count():  # POCs - yuk - TODO: remove them
  +
SELECT "choices"."id"
  FROM
"choices"
 INNER JOIN
"prodoptchoices"
    ON
("choices"."id" = "prodoptchoices"."choiceid")
 WHERE
"prodoptchoices"."productoptionid" = 42684
 ORDER BY
"choices"."sortorder" ASC, "choices"."cost" ASC
SELECT ••• FROM "choices" INNER JOIN "prodoptchoices" ON ("choices"."id" = "prodoptchoices"."choiceid") WHERE "prodoptchoices"."productoptionid" = 42684 ORDER BY "choices"."sortorder" ASC, "choices"."cost" ASC
  12 similar queries.   Duplicated 2 times.
6.237140598263871%
18.55

Connection: default

/usr/local/bin/gunicorn in <module>(8)
  sys.exit(run())
/usr/local/lib/python3.8/site-packages/gunicorn/app/wsgiapp.py in run(58)
  WSGIApplication("%(prog)s [OPTIONS] [APP_MODULE]").run()
/usr/local/lib/python3.8/site-packages/gunicorn/app/base.py in run(228)
  super().run()
/usr/local/lib/python3.8/site-packages/gunicorn/app/base.py in run(72)
  Arbiter(self).run()
/usr/local/lib/python3.8/site-packages/gunicorn/arbiter.py in run(211)
  self.manage_workers()
/usr/local/lib/python3.8/site-packages/gunicorn/arbiter.py in manage_workers(545)
  self.spawn_workers()
/usr/local/lib/python3.8/site-packages/gunicorn/arbiter.py in spawn_workers(616)
  self.spawn_worker()
/usr/local/lib/python3.8/site-packages/gunicorn/arbiter.py in spawn_worker(583)
  worker.init_process()
/usr/local/lib/python3.8/site-packages/gunicorn/workers/base.py in init_process(140)
  self.run()
/usr/local/lib/python3.8/site-packages/gunicorn/workers/sync.py in run(123)
  self.run_for_one(timeout)
/usr/local/lib/python3.8/site-packages/gunicorn/workers/sync.py in run_for_one(67)
  self.accept(listener)
/usr/local/lib/python3.8/site-packages/gunicorn/workers/sync.py in accept(29)
  self.handle(listener, client, addr)
/usr/local/lib/python3.8/site-packages/gunicorn/workers/sync.py in handle(134)
  self.handle_request(listener, req, client, addr)
/usr/local/lib/python3.8/site-packages/gunicorn/workers/sync.py in handle_request(175)
  respiter = self.wsgi(environ, resp.start_response)
/home/joe/eracks12/web/apps/products/views.py in product(384)
  ses_helper.fill (product)
/home/joe/eracks12/web/apps/home/helpers.py in fill(198)
  opts [lineid] ['choices'] = dict ([(c['id'],c) for c in list(po.all_choices().values())])
/home/joe/eracks12/web/apps/products/models.py in all_choices(500)
  return self._corrected_choices (list (self.choices.values_list ('id', flat=True)))
  +
SELECT "choices"."id",
       "choices"."name",
       "choices"."source",
       "choices"."price",
       "choices"."cost",
       "choices"."sortorder",
       "choices"."multiplier",
       "choices"."comment",
       "choices"."choicecategory_id",
       "choices"."blurb",
       "choices"."published",
       "choices"."created",
       "choices"."updated"
  FROM
"choices"
 WHERE
"choices"."id" IN (30, 48245, 48244, 48243, 48174, 48242, 48806, 49187)
 ORDER BY
"choices"."cost" ASC, "choices"."sortorder" ASC
SELECT ••• FROM "choices" WHERE "choices"."id" IN (30, 48245, 48244, 48243, 48174, 48242, 48806, 49187) ORDER BY "choices"."cost" ASC, "choices"."sortorder" ASC
  8 similar queries.   Duplicated 8 times.
3.0945954831125886%
9.20

Connection: default

/usr/local/bin/gunicorn in <module>(8)
  sys.exit(run())
/usr/local/lib/python3.8/site-packages/gunicorn/app/wsgiapp.py in run(58)
  WSGIApplication("%(prog)s [OPTIONS] [APP_MODULE]").run()
/usr/local/lib/python3.8/site-packages/gunicorn/app/base.py in run(228)
  super().run()
/usr/local/lib/python3.8/site-packages/gunicorn/app/base.py in run(72)
  Arbiter(self).run()
/usr/local/lib/python3.8/site-packages/gunicorn/arbiter.py in run(211)
  self.manage_workers()
/usr/local/lib/python3.8/site-packages/gunicorn/arbiter.py in manage_workers(545)
  self.spawn_workers()
/usr/local/lib/python3.8/site-packages/gunicorn/arbiter.py in spawn_workers(616)
  self.spawn_worker()
/usr/local/lib/python3.8/site-packages/gunicorn/arbiter.py in spawn_worker(583)
  worker.init_process()
/usr/local/lib/python3.8/site-packages/gunicorn/workers/base.py in init_process(140)
  self.run()
/usr/local/lib/python3.8/site-packages/gunicorn/workers/sync.py in run(123)
  self.run_for_one(timeout)
/usr/local/lib/python3.8/site-packages/gunicorn/workers/sync.py in run_for_one(67)
  self.accept(listener)
/usr/local/lib/python3.8/site-packages/gunicorn/workers/sync.py in accept(29)
  self.handle(listener, client, addr)
/usr/local/lib/python3.8/site-packages/gunicorn/workers/sync.py in handle(134)
  self.handle_request(listener, req, client, addr)
/usr/local/lib/python3.8/site-packages/gunicorn/workers/sync.py in handle_request(175)
  respiter = self.wsgi(environ, resp.start_response)
/home/joe/eracks12/web/apps/products/views.py in product(384)
  ses_helper.fill (product)
/home/joe/eracks12/web/apps/home/helpers.py in fill(198)
  opts [lineid] ['choices'] = dict ([(c['id'],c) for c in list(po.all_choices().values())])
  +
SELECT "options"."id",
       "options"."name",
       "options"."usage_notes",
       "options"."sortorder",
       "options"."blurb",
       "options"."description",
       "options"."comments",
       "options"."published",
       "options"."created",
       "options"."updated"
  FROM
"options"
 WHERE
"options"."id" = 4267
SELECT ••• FROM "options" WHERE "options"."id" = 4267
  18 similar queries.   Duplicated 2 times.
0.1435281627914063%
0.43

Connection: default

/usr/local/bin/gunicorn in <module>(8)
  sys.exit(run())
/usr/local/lib/python3.8/site-packages/gunicorn/app/wsgiapp.py in run(58)
  WSGIApplication("%(prog)s [OPTIONS] [APP_MODULE]").run()
/usr/local/lib/python3.8/site-packages/gunicorn/app/base.py in run(228)
  super().run()
/usr/local/lib/python3.8/site-packages/gunicorn/app/base.py in run(72)
  Arbiter(self).run()
/usr/local/lib/python3.8/site-packages/gunicorn/arbiter.py in run(211)
  self.manage_workers()
/usr/local/lib/python3.8/site-packages/gunicorn/arbiter.py in manage_workers(545)
  self.spawn_workers()
/usr/local/lib/python3.8/site-packages/gunicorn/arbiter.py in spawn_workers(616)
  self.spawn_worker()
/usr/local/lib/python3.8/site-packages/gunicorn/arbiter.py in spawn_worker(583)
  worker.init_process()
/usr/local/lib/python3.8/site-packages/gunicorn/workers/base.py in init_process(140)
  self.run()
/usr/local/lib/python3.8/site-packages/gunicorn/workers/sync.py in run(123)
  self.run_for_one(timeout)
/usr/local/lib/python3.8/site-packages/gunicorn/workers/sync.py in run_for_one(67)
  self.accept(listener)
/usr/local/lib/python3.8/site-packages/gunicorn/workers/sync.py in accept(29)
  self.handle(listener, client, addr)
/usr/local/lib/python3.8/site-packages/gunicorn/workers/sync.py in handle(134)
  self.handle_request(listener, req, client, addr)
/usr/local/lib/python3.8/site-packages/gunicorn/workers/sync.py in handle_request(175)
  respiter = self.wsgi(environ, resp.start_response)
/home/joe/eracks12/web/apps/products/views.py in product(384)
  ses_helper.fill (product)
/home/joe/eracks12/web/apps/home/helpers.py in fill(199)
  opts [lineid] ['name'] = po.calc_name
/home/joe/eracks12/web/apps/products/models.py in calc_name(477)
  return self.name or self.option.name  # or self.option.display_name
  +
SELECT COUNT(*) AS "__count"
  FROM
"choices"
 INNER JOIN
"prodoptchoices"
    ON
("choices"."id" = "prodoptchoices"."choiceid")
 WHERE
"prodoptchoices"."productoptionid" = 42678
SELECT ••• FROM "choices" INNER JOIN "prodoptchoices" ON ("choices"."id" = "prodoptchoices"."choiceid") WHERE "prodoptchoices"."productoptionid" = 42678
  18 similar queries.   Duplicated 2 times.
0.9743076570270267%
2.90

Connection: default

/usr/local/bin/gunicorn in <module>(8)
  sys.exit(run())
/usr/local/lib/python3.8/site-packages/gunicorn/app/wsgiapp.py in run(58)
  WSGIApplication("%(prog)s [OPTIONS] [APP_MODULE]").run()
/usr/local/lib/python3.8/site-packages/gunicorn/app/base.py in run(228)
  super().run()
/usr/local/lib/python3.8/site-packages/gunicorn/app/base.py in run(72)
  Arbiter(self).run()
/usr/local/lib/python3.8/site-packages/gunicorn/arbiter.py in run(211)
  self.manage_workers()
/usr/local/lib/python3.8/site-packages/gunicorn/arbiter.py in manage_workers(545)
  self.spawn_workers()
/usr/local/lib/python3.8/site-packages/gunicorn/arbiter.py in spawn_workers(616)
  self.spawn_worker()
/usr/local/lib/python3.8/site-packages/gunicorn/arbiter.py in spawn_worker(583)
  worker.init_process()
/usr/local/lib/python3.8/site-packages/gunicorn/workers/base.py in init_process(140)
  self.run()
/usr/local/lib/python3.8/site-packages/gunicorn/workers/sync.py in run(123)
  self.run_for_one(timeout)
/usr/local/lib/python3.8/site-packages/gunicorn/workers/sync.py in run_for_one(67)
  self.accept(listener)
/usr/local/lib/python3.8/site-packages/gunicorn/workers/sync.py in accept(29)
  self.handle(listener, client, addr)
/usr/local/lib/python3.8/site-packages/gunicorn/workers/sync.py in handle(134)
  self.handle_request(listener, req, client, addr)
/usr/local/lib/python3.8/site-packages/gunicorn/workers/sync.py in handle_request(175)
  respiter = self.wsgi(environ, resp.start_response)
/home/joe/eracks12/web/apps/products/views.py in product(384)
  ses_helper.fill (product)
/home/joe/eracks12/web/apps/home/helpers.py in fill(198)
  opts [lineid] ['choices'] = dict ([(c['id'],c) for c in list(po.all_choices().values())])
/home/joe/eracks12/web/apps/products/models.py in all_choices(499)
  if self.choices.count():  # POCs - yuk - TODO: remove them
  +
SELECT "choices"."id"
  FROM
"choices"
 INNER JOIN
"prodoptchoices"
    ON
("choices"."id" = "prodoptchoices"."choiceid")
 WHERE
"prodoptchoices"."productoptionid" = 42678
 ORDER BY
"choices"."sortorder" ASC, "choices"."cost" ASC
SELECT ••• FROM "choices" INNER JOIN "prodoptchoices" ON ("choices"."id" = "prodoptchoices"."choiceid") WHERE "prodoptchoices"."productoptionid" = 42678 ORDER BY "choices"."sortorder" ASC, "choices"."cost" ASC
  12 similar queries.   Duplicated 2 times.
1.7847205851458776%
5.31

Connection: default

/usr/local/bin/gunicorn in <module>(8)
  sys.exit(run())
/usr/local/lib/python3.8/site-packages/gunicorn/app/wsgiapp.py in run(58)
  WSGIApplication("%(prog)s [OPTIONS] [APP_MODULE]").run()
/usr/local/lib/python3.8/site-packages/gunicorn/app/base.py in run(228)
  super().run()
/usr/local/lib/python3.8/site-packages/gunicorn/app/base.py in run(72)
  Arbiter(self).run()
/usr/local/lib/python3.8/site-packages/gunicorn/arbiter.py in run(211)
  self.manage_workers()
/usr/local/lib/python3.8/site-packages/gunicorn/arbiter.py in manage_workers(545)
  self.spawn_workers()
/usr/local/lib/python3.8/site-packages/gunicorn/arbiter.py in spawn_workers(616)
  self.spawn_worker()
/usr/local/lib/python3.8/site-packages/gunicorn/arbiter.py in spawn_worker(583)
  worker.init_process()
/usr/local/lib/python3.8/site-packages/gunicorn/workers/base.py in init_process(140)
  self.run()
/usr/local/lib/python3.8/site-packages/gunicorn/workers/sync.py in run(123)
  self.run_for_one(timeout)
/usr/local/lib/python3.8/site-packages/gunicorn/workers/sync.py in run_for_one(67)
  self.accept(listener)
/usr/local/lib/python3.8/site-packages/gunicorn/workers/sync.py in accept(29)
  self.handle(listener, client, addr)
/usr/local/lib/python3.8/site-packages/gunicorn/workers/sync.py in handle(134)
  self.handle_request(listener, req, client, addr)
/usr/local/lib/python3.8/site-packages/gunicorn/workers/sync.py in handle_request(175)
  respiter = self.wsgi(environ, resp.start_response)
/home/joe/eracks12/web/apps/products/views.py in product(384)
  ses_helper.fill (product)
/home/joe/eracks12/web/apps/home/helpers.py in fill(198)
  opts [lineid] ['choices'] = dict ([(c['id'],c) for c in list(po.all_choices().values())])
/home/joe/eracks12/web/apps/products/models.py in all_choices(500)
  return self._corrected_choices (list (self.choices.values_list ('id', flat=True)))
  +
SELECT "choices"."id",
       "choices"."name",
       "choices"."source",
       "choices"."price",
       "choices"."cost",
       "choices"."sortorder",
       "choices"."multiplier",
       "choices"."comment",
       "choices"."choicecategory_id",
       "choices"."blurb",
       "choices"."published",
       "choices"."created",
       "choices"."updated"
  FROM
"choices"
 WHERE
"choices"."id" IN (30, 48245, 48244, 48243, 48174, 48242, 48806, 49187)
 ORDER BY
"choices"."cost" ASC, "choices"."sortorder" ASC
SELECT ••• FROM "choices" WHERE "choices"."id" IN (30, 48245, 48244, 48243, 48174, 48242, 48806, 49187) ORDER BY "choices"."cost" ASC, "choices"."sortorder" ASC
  8 similar queries.   Duplicated 8 times.
1.0206536224423521%
3.03

Connection: default

/usr/local/bin/gunicorn in <module>(8)
  sys.exit(run())
/usr/local/lib/python3.8/site-packages/gunicorn/app/wsgiapp.py in run(58)
  WSGIApplication("%(prog)s [OPTIONS] [APP_MODULE]").run()
/usr/local/lib/python3.8/site-packages/gunicorn/app/base.py in run(228)
  super().run()
/usr/local/lib/python3.8/site-packages/gunicorn/app/base.py in run(72)
  Arbiter(self).run()
/usr/local/lib/python3.8/site-packages/gunicorn/arbiter.py in run(211)
  self.manage_workers()
/usr/local/lib/python3.8/site-packages/gunicorn/arbiter.py in manage_workers(545)
  self.spawn_workers()
/usr/local/lib/python3.8/site-packages/gunicorn/arbiter.py in spawn_workers(616)
  self.spawn_worker()
/usr/local/lib/python3.8/site-packages/gunicorn/arbiter.py in spawn_worker(583)
  worker.init_process()
/usr/local/lib/python3.8/site-packages/gunicorn/workers/base.py in init_process(140)
  self.run()
/usr/local/lib/python3.8/site-packages/gunicorn/workers/sync.py in run(123)
  self.run_for_one(timeout)
/usr/local/lib/python3.8/site-packages/gunicorn/workers/sync.py in run_for_one(67)
  self.accept(listener)
/usr/local/lib/python3.8/site-packages/gunicorn/workers/sync.py in accept(29)
  self.handle(listener, client, addr)
/usr/local/lib/python3.8/site-packages/gunicorn/workers/sync.py in handle(134)
  self.handle_request(listener, req, client, addr)
/usr/local/lib/python3.8/site-packages/gunicorn/workers/sync.py in handle_request(175)
  respiter = self.wsgi(environ, resp.start_response)
/home/joe/eracks12/web/apps/products/views.py in product(384)
  ses_helper.fill (product)
/home/joe/eracks12/web/apps/home/helpers.py in fill(198)
  opts [lineid] ['choices'] = dict ([(c['id'],c) for c in list(po.all_choices().values())])
  +
SELECT "options"."id",
       "options"."name",
       "options"."usage_notes",
       "options"."sortorder",
       "options"."blurb",
       "options"."description",
       "options"."comments",
       "options"."published",
       "options"."created",
       "options"."updated"
  FROM
"options"
 WHERE
"options"."id" = 4285
SELECT ••• FROM "options" WHERE "options"."id" = 4285
  18 similar queries.   Duplicated 2 times.
0.11802986347986034%
0.35

Connection: default

/usr/local/bin/gunicorn in <module>(8)
  sys.exit(run())
/usr/local/lib/python3.8/site-packages/gunicorn/app/wsgiapp.py in run(58)
  WSGIApplication("%(prog)s [OPTIONS] [APP_MODULE]").run()
/usr/local/lib/python3.8/site-packages/gunicorn/app/base.py in run(228)
  super().run()
/usr/local/lib/python3.8/site-packages/gunicorn/app/base.py in run(72)
  Arbiter(self).run()
/usr/local/lib/python3.8/site-packages/gunicorn/arbiter.py in run(211)
  self.manage_workers()
/usr/local/lib/python3.8/site-packages/gunicorn/arbiter.py in manage_workers(545)
  self.spawn_workers()
/usr/local/lib/python3.8/site-packages/gunicorn/arbiter.py in spawn_workers(616)
  self.spawn_worker()
/usr/local/lib/python3.8/site-packages/gunicorn/arbiter.py in spawn_worker(583)
  worker.init_process()
/usr/local/lib/python3.8/site-packages/gunicorn/workers/base.py in init_process(140)
  self.run()
/usr/local/lib/python3.8/site-packages/gunicorn/workers/sync.py in run(123)
  self.run_for_one(timeout)
/usr/local/lib/python3.8/site-packages/gunicorn/workers/sync.py in run_for_one(67)
  self.accept(listener)
/usr/local/lib/python3.8/site-packages/gunicorn/workers/sync.py in accept(29)
  self.handle(listener, client, addr)
/usr/local/lib/python3.8/site-packages/gunicorn/workers/sync.py in handle(134)
  self.handle_request(listener, req, client, addr)
/usr/local/lib/python3.8/site-packages/gunicorn/workers/sync.py in handle_request(175)
  respiter = self.wsgi(environ, resp.start_response)
/home/joe/eracks12/web/apps/products/views.py in product(384)
  ses_helper.fill (product)
/home/joe/eracks12/web/apps/home/helpers.py in fill(199)
  opts [lineid] ['name'] = po.calc_name
/home/joe/eracks12/web/apps/products/models.py in calc_name(477)
  return self.name or self.option.name  # or self.option.display_name
  +
SELECT COUNT(*) AS "__count"
  FROM
"choices"
 INNER JOIN
"prodoptchoices"
    ON
("choices"."id" = "prodoptchoices"."choiceid")
 WHERE
"prodoptchoices"."productoptionid" = 42677
SELECT ••• FROM "choices" INNER JOIN "prodoptchoices" ON ("choices"."id" = "prodoptchoices"."choiceid") WHERE "prodoptchoices"."productoptionid" = 42677
  18 similar queries.   Duplicated 2 times.
1.3122803979017625%
3.90

Connection: default

/usr/local/bin/gunicorn in <module>(8)
  sys.exit(run())
/usr/local/lib/python3.8/site-packages/gunicorn/app/wsgiapp.py in run(58)
  WSGIApplication("%(prog)s [OPTIONS] [APP_MODULE]").run()
/usr/local/lib/python3.8/site-packages/gunicorn/app/base.py in run(228)
  super().run()
/usr/local/lib/python3.8/site-packages/gunicorn/app/base.py in run(72)
  Arbiter(self).run()
/usr/local/lib/python3.8/site-packages/gunicorn/arbiter.py in run(211)
  self.manage_workers()
/usr/local/lib/python3.8/site-packages/gunicorn/arbiter.py in manage_workers(545)
  self.spawn_workers()
/usr/local/lib/python3.8/site-packages/gunicorn/arbiter.py in spawn_workers(616)
  self.spawn_worker()
/usr/local/lib/python3.8/site-packages/gunicorn/arbiter.py in spawn_worker(583)
  worker.init_process()
/usr/local/lib/python3.8/site-packages/gunicorn/workers/base.py in init_process(140)
  self.run()
/usr/local/lib/python3.8/site-packages/gunicorn/workers/sync.py in run(123)
  self.run_for_one(timeout)
/usr/local/lib/python3.8/site-packages/gunicorn/workers/sync.py in run_for_one(67)
  self.accept(listener)
/usr/local/lib/python3.8/site-packages/gunicorn/workers/sync.py in accept(29)
  self.handle(listener, client, addr)
/usr/local/lib/python3.8/site-packages/gunicorn/workers/sync.py in handle(134)
  self.handle_request(listener, req, client, addr)
/usr/local/lib/python3.8/site-packages/gunicorn/workers/sync.py in handle_request(175)
  respiter = self.wsgi(environ, resp.start_response)
/home/joe/eracks12/web/apps/products/views.py in product(384)
  ses_helper.fill (product)
/home/joe/eracks12/web/apps/home/helpers.py in fill(198)
  opts [lineid] ['choices'] = dict ([(c['id'],c) for c in list(po.all_choices().values())])
/home/joe/eracks12/web/apps/products/models.py in all_choices(499)
  if self.choices.count():  # POCs - yuk - TODO: remove them
  +
SELECT "choices"."id"
  FROM
"choices"
 INNER JOIN
"prodoptchoices"
    ON
("choices"."id" = "prodoptchoices"."choiceid")
 WHERE
"prodoptchoices"."productoptionid" = 42677
 ORDER BY
"choices"."sortorder" ASC, "choices"."cost" ASC
SELECT ••• FROM "choices" INNER JOIN "prodoptchoices" ON ("choices"."id" = "prodoptchoices"."choiceid") WHERE "prodoptchoices"."productoptionid" = 42677 ORDER BY "choices"."sortorder" ASC, "choices"."cost" ASC
  12 similar queries.   Duplicated 2 times.
1.3940673956935137%
4.15

Connection: default

/usr/local/bin/gunicorn in <module>(8)
  sys.exit(run())
/usr/local/lib/python3.8/site-packages/gunicorn/app/wsgiapp.py in run(58)
  WSGIApplication("%(prog)s [OPTIONS] [APP_MODULE]").run()
/usr/local/lib/python3.8/site-packages/gunicorn/app/base.py in run(228)
  super().run()
/usr/local/lib/python3.8/site-packages/gunicorn/app/base.py in run(72)
  Arbiter(self).run()
/usr/local/lib/python3.8/site-packages/gunicorn/arbiter.py in run(211)
  self.manage_workers()
/usr/local/lib/python3.8/site-packages/gunicorn/arbiter.py in manage_workers(545)
  self.spawn_workers()
/usr/local/lib/python3.8/site-packages/gunicorn/arbiter.py in spawn_workers(616)
  self.spawn_worker()
/usr/local/lib/python3.8/site-packages/gunicorn/arbiter.py in spawn_worker(583)
  worker.init_process()
/usr/local/lib/python3.8/site-packages/gunicorn/workers/base.py in init_process(140)
  self.run()
/usr/local/lib/python3.8/site-packages/gunicorn/workers/sync.py in run(123)
  self.run_for_one(timeout)
/usr/local/lib/python3.8/site-packages/gunicorn/workers/sync.py in run_for_one(67)
  self.accept(listener)
/usr/local/lib/python3.8/site-packages/gunicorn/workers/sync.py in accept(29)
  self.handle(listener, client, addr)
/usr/local/lib/python3.8/site-packages/gunicorn/workers/sync.py in handle(134)
  self.handle_request(listener, req, client, addr)
/usr/local/lib/python3.8/site-packages/gunicorn/workers/sync.py in handle_request(175)
  respiter = self.wsgi(environ, resp.start_response)
/home/joe/eracks12/web/apps/products/views.py in product(384)
  ses_helper.fill (product)
/home/joe/eracks12/web/apps/home/helpers.py in fill(198)
  opts [lineid] ['choices'] = dict ([(c['id'],c) for c in list(po.all_choices().values())])
/home/joe/eracks12/web/apps/products/models.py in all_choices(500)
  return self._corrected_choices (list (self.choices.values_list ('id', flat=True)))
  +
SELECT "choices"."id",
       "choices"."name",
       "choices"."source",
       "choices"."price",
       "choices"."cost",
       "choices"."sortorder",
       "choices"."multiplier",
       "choices"."comment",
       "choices"."choicecategory_id",
       "choices"."blurb",
       "choices"."published",
       "choices"."created",
       "choices"."updated"
  FROM
"choices"
 WHERE
"choices"."id" IN (30, 48245, 48244, 48243, 48174, 48242, 48806, 49187)
 ORDER BY
"choices"."cost" ASC, "choices"."sortorder" ASC
SELECT ••• FROM "choices" WHERE "choices"."id" IN (30, 48245, 48244, 48243, 48174, 48242, 48806, 49187) ORDER BY "choices"."cost" ASC, "choices"."sortorder" ASC
  8 similar queries.   Duplicated 8 times.
0.8841014094625952%
2.63

Connection: default

/usr/local/bin/gunicorn in <module>(8)
  sys.exit(run())
/usr/local/lib/python3.8/site-packages/gunicorn/app/wsgiapp.py in run(58)
  WSGIApplication("%(prog)s [OPTIONS] [APP_MODULE]").run()
/usr/local/lib/python3.8/site-packages/gunicorn/app/base.py in run(228)
  super().run()
/usr/local/lib/python3.8/site-packages/gunicorn/app/base.py in run(72)
  Arbiter(self).run()
/usr/local/lib/python3.8/site-packages/gunicorn/arbiter.py in run(211)
  self.manage_workers()
/usr/local/lib/python3.8/site-packages/gunicorn/arbiter.py in manage_workers(545)
  self.spawn_workers()
/usr/local/lib/python3.8/site-packages/gunicorn/arbiter.py in spawn_workers(616)
  self.spawn_worker()
/usr/local/lib/python3.8/site-packages/gunicorn/arbiter.py in spawn_worker(583)
  worker.init_process()
/usr/local/lib/python3.8/site-packages/gunicorn/workers/base.py in init_process(140)
  self.run()
/usr/local/lib/python3.8/site-packages/gunicorn/workers/sync.py in run(123)
  self.run_for_one(timeout)
/usr/local/lib/python3.8/site-packages/gunicorn/workers/sync.py in run_for_one(67)
  self.accept(listener)
/usr/local/lib/python3.8/site-packages/gunicorn/workers/sync.py in accept(29)
  self.handle(listener, client, addr)
/usr/local/lib/python3.8/site-packages/gunicorn/workers/sync.py in handle(134)
  self.handle_request(listener, req, client, addr)
/usr/local/lib/python3.8/site-packages/gunicorn/workers/sync.py in handle_request(175)
  respiter = self.wsgi(environ, resp.start_response)
/home/joe/eracks12/web/apps/products/views.py in product(384)
  ses_helper.fill (product)
/home/joe/eracks12/web/apps/home/helpers.py in fill(198)
  opts [lineid] ['choices'] = dict ([(c['id'],c) for c in list(po.all_choices().values())])
  +
SELECT "options"."id",
       "options"."name",
       "options"."usage_notes",
       "options"."sortorder",
       "options"."blurb",
       "options"."description",
       "options"."comments",
       "options"."published",
       "options"."created",
       "options"."updated"
  FROM
"options"
 WHERE
"options"."id" = 6835
SELECT ••• FROM "options" WHERE "options"."id" = 6835
  18 similar queries.   Duplicated 2 times.
1.425900178167362%
4.24

Connection: default

/usr/local/bin/gunicorn in <module>(8)
  sys.exit(run())
/usr/local/lib/python3.8/site-packages/gunicorn/app/wsgiapp.py in run(58)
  WSGIApplication("%(prog)s [OPTIONS] [APP_MODULE]").run()
/usr/local/lib/python3.8/site-packages/gunicorn/app/base.py in run(228)
  super().run()
/usr/local/lib/python3.8/site-packages/gunicorn/app/base.py in run(72)
  Arbiter(self).run()
/usr/local/lib/python3.8/site-packages/gunicorn/arbiter.py in run(211)
  self.manage_workers()
/usr/local/lib/python3.8/site-packages/gunicorn/arbiter.py in manage_workers(545)
  self.spawn_workers()
/usr/local/lib/python3.8/site-packages/gunicorn/arbiter.py in spawn_workers(616)
  self.spawn_worker()
/usr/local/lib/python3.8/site-packages/gunicorn/arbiter.py in spawn_worker(583)
  worker.init_process()
/usr/local/lib/python3.8/site-packages/gunicorn/workers/base.py in init_process(140)
  self.run()
/usr/local/lib/python3.8/site-packages/gunicorn/workers/sync.py in run(123)
  self.run_for_one(timeout)
/usr/local/lib/python3.8/site-packages/gunicorn/workers/sync.py in run_for_one(67)
  self.accept(listener)
/usr/local/lib/python3.8/site-packages/gunicorn/workers/sync.py in accept(29)
  self.handle(listener, client, addr)
/usr/local/lib/python3.8/site-packages/gunicorn/workers/sync.py in handle(134)
  self.handle_request(listener, req, client, addr)
/usr/local/lib/python3.8/site-packages/gunicorn/workers/sync.py in handle_request(175)
  respiter = self.wsgi(environ, resp.start_response)
/home/joe/eracks12/web/apps/products/views.py in product(384)
  ses_helper.fill (product)
/home/joe/eracks12/web/apps/home/helpers.py in fill(199)
  opts [lineid] ['name'] = po.calc_name
/home/joe/eracks12/web/apps/products/models.py in calc_name(477)
  return self.name or self.option.name  # or self.option.display_name
  +
SELECT COUNT(*) AS "__count"
  FROM
"choices"
 INNER JOIN
"prodoptchoices"
    ON
("choices"."id" = "prodoptchoices"."choiceid")
 WHERE
"prodoptchoices"."productoptionid" = 42676
SELECT ••• FROM "choices" INNER JOIN "prodoptchoices" ON ("choices"."id" = "prodoptchoices"."choiceid") WHERE "prodoptchoices"."productoptionid" = 42676
  18 similar queries.   Duplicated 2 times.
1.1353157860131404%
3.38

Connection: default

/usr/local/bin/gunicorn in <module>(8)
  sys.exit(run())
/usr/local/lib/python3.8/site-packages/gunicorn/app/wsgiapp.py in run(58)
  WSGIApplication("%(prog)s [OPTIONS] [APP_MODULE]").run()
/usr/local/lib/python3.8/site-packages/gunicorn/app/base.py in run(228)
  super().run()
/usr/local/lib/python3.8/site-packages/gunicorn/app/base.py in run(72)
  Arbiter(self).run()
/usr/local/lib/python3.8/site-packages/gunicorn/arbiter.py in run(211)
  self.manage_workers()
/usr/local/lib/python3.8/site-packages/gunicorn/arbiter.py in manage_workers(545)
  self.spawn_workers()
/usr/local/lib/python3.8/site-packages/gunicorn/arbiter.py in spawn_workers(616)
  self.spawn_worker()
/usr/local/lib/python3.8/site-packages/gunicorn/arbiter.py in spawn_worker(583)
  worker.init_process()
/usr/local/lib/python3.8/site-packages/gunicorn/workers/base.py in init_process(140)
  self.run()
/usr/local/lib/python3.8/site-packages/gunicorn/workers/sync.py in run(123)
  self.run_for_one(timeout)
/usr/local/lib/python3.8/site-packages/gunicorn/workers/sync.py in run_for_one(67)
  self.accept(listener)
/usr/local/lib/python3.8/site-packages/gunicorn/workers/sync.py in accept(29)
  self.handle(listener, client, addr)
/usr/local/lib/python3.8/site-packages/gunicorn/workers/sync.py in handle(134)
  self.handle_request(listener, req, client, addr)
/usr/local/lib/python3.8/site-packages/gunicorn/workers/sync.py in handle_request(175)
  respiter = self.wsgi(environ, resp.start_response)
/home/joe/eracks12/web/apps/products/views.py in product(384)
  ses_helper.fill (product)
/home/joe/eracks12/web/apps/home/helpers.py in fill(198)
  opts [lineid] ['choices'] = dict ([(c['id'],c) for c in list(po.all_choices().values())])
/home/joe/eracks12/web/apps/products/models.py in all_choices(499)
  if self.choices.count():  # POCs - yuk - TODO: remove them
  +
SELECT "choices"."id"
  FROM
"choices"
 INNER JOIN
"prodoptchoices"
    ON
("choices"."id" = "prodoptchoices"."choiceid")
 WHERE
"prodoptchoices"."productoptionid" = 42676
 ORDER BY
"choices"."sortorder" ASC, "choices"."cost" ASC
SELECT ••• FROM "choices" INNER JOIN "prodoptchoices" ON ("choices"."id" = "prodoptchoices"."choiceid") WHERE "prodoptchoices"."productoptionid" = 42676 ORDER BY "choices"."sortorder" ASC, "choices"."cost" ASC
  12 similar queries.   Duplicated 2 times.
0.18618569497298623%
0.55

Connection: default

/usr/local/bin/gunicorn in <module>(8)
  sys.exit(run())
/usr/local/lib/python3.8/site-packages/gunicorn/app/wsgiapp.py in run(58)
  WSGIApplication("%(prog)s [OPTIONS] [APP_MODULE]").run()
/usr/local/lib/python3.8/site-packages/gunicorn/app/base.py in run(228)
  super().run()
/usr/local/lib/python3.8/site-packages/gunicorn/app/base.py in run(72)
  Arbiter(self).run()
/usr/local/lib/python3.8/site-packages/gunicorn/arbiter.py in run(211)
  self.manage_workers()
/usr/local/lib/python3.8/site-packages/gunicorn/arbiter.py in manage_workers(545)
  self.spawn_workers()
/usr/local/lib/python3.8/site-packages/gunicorn/arbiter.py in spawn_workers(616)
  self.spawn_worker()
/usr/local/lib/python3.8/site-packages/gunicorn/arbiter.py in spawn_worker(583)
  worker.init_process()
/usr/local/lib/python3.8/site-packages/gunicorn/workers/base.py in init_process(140)
  self.run()
/usr/local/lib/python3.8/site-packages/gunicorn/workers/sync.py in run(123)
  self.run_for_one(timeout)
/usr/local/lib/python3.8/site-packages/gunicorn/workers/sync.py in run_for_one(67)
  self.accept(listener)
/usr/local/lib/python3.8/site-packages/gunicorn/workers/sync.py in accept(29)
  self.handle(listener, client, addr)
/usr/local/lib/python3.8/site-packages/gunicorn/workers/sync.py in handle(134)
  self.handle_request(listener, req, client, addr)
/usr/local/lib/python3.8/site-packages/gunicorn/workers/sync.py in handle_request(175)
  respiter = self.wsgi(environ, resp.start_response)
/home/joe/eracks12/web/apps/products/views.py in product(384)
  ses_helper.fill (product)
/home/joe/eracks12/web/apps/home/helpers.py in fill(198)
  opts [lineid] ['choices'] = dict ([(c['id'],c) for c in list(po.all_choices().values())])
/home/joe/eracks12/web/apps/products/models.py in all_choices(500)
  return self._corrected_choices (list (self.choices.values_list ('id', flat=True)))
  +
SELECT "choices"."id",
       "choices"."name",
       "choices"."source",
       "choices"."price",
       "choices"."cost",
       "choices"."sortorder",
       "choices"."multiplier",
       "choices"."comment",
       "choices"."choicecategory_id",
       "choices"."blurb",
       "choices"."published",
       "choices"."created",
       "choices"."updated"
  FROM
"choices"
 WHERE
"choices"."id" IN (30, 48245, 48244, 48243, 48174, 48242, 48806, 49187)
 ORDER BY
"choices"."cost" ASC, "choices"."sortorder" ASC
SELECT ••• FROM "choices" WHERE "choices"."id" IN (30, 48245, 48244, 48243, 48174, 48242, 48806, 49187) ORDER BY "choices"."cost" ASC, "choices"."sortorder" ASC
  8 similar queries.   Duplicated 8 times.
0.15764042907704176%
0.47

Connection: default

/usr/local/bin/gunicorn in <module>(8)
  sys.exit(run())
/usr/local/lib/python3.8/site-packages/gunicorn/app/wsgiapp.py in run(58)
  WSGIApplication("%(prog)s [OPTIONS] [APP_MODULE]").run()
/usr/local/lib/python3.8/site-packages/gunicorn/app/base.py in run(228)
  super().run()
/usr/local/lib/python3.8/site-packages/gunicorn/app/base.py in run(72)
  Arbiter(self).run()
/usr/local/lib/python3.8/site-packages/gunicorn/arbiter.py in run(211)
  self.manage_workers()
/usr/local/lib/python3.8/site-packages/gunicorn/arbiter.py in manage_workers(545)
  self.spawn_workers()
/usr/local/lib/python3.8/site-packages/gunicorn/arbiter.py in spawn_workers(616)
  self.spawn_worker()
/usr/local/lib/python3.8/site-packages/gunicorn/arbiter.py in spawn_worker(583)
  worker.init_process()
/usr/local/lib/python3.8/site-packages/gunicorn/workers/base.py in init_process(140)
  self.run()
/usr/local/lib/python3.8/site-packages/gunicorn/workers/sync.py in run(123)
  self.run_for_one(timeout)
/usr/local/lib/python3.8/site-packages/gunicorn/workers/sync.py in run_for_one(67)
  self.accept(listener)
/usr/local/lib/python3.8/site-packages/gunicorn/workers/sync.py in accept(29)
  self.handle(listener, client, addr)
/usr/local/lib/python3.8/site-packages/gunicorn/workers/sync.py in handle(134)
  self.handle_request(listener, req, client, addr)
/usr/local/lib/python3.8/site-packages/gunicorn/workers/sync.py in handle_request(175)
  respiter = self.wsgi(environ, resp.start_response)
/home/joe/eracks12/web/apps/products/views.py in product(384)
  ses_helper.fill (product)
/home/joe/eracks12/web/apps/home/helpers.py in fill(198)
  opts [lineid] ['choices'] = dict ([(c['id'],c) for c in list(po.all_choices().values())])
  +
SELECT "options"."id",
       "options"."name",
       "options"."usage_notes",
       "options"."sortorder",
       "options"."blurb",
       "options"."description",
       "options"."comments",
       "options"."published",
       "options"."created",
       "options"."updated"
  FROM
"options"
 WHERE
"options"."id" = 7649
SELECT ••• FROM "options" WHERE "options"."id" = 7649
  18 similar queries.   Duplicated 2 times.
0.9945138564814592%
2.96

Connection: default

/usr/local/bin/gunicorn in <module>(8)
  sys.exit(run())
/usr/local/lib/python3.8/site-packages/gunicorn/app/wsgiapp.py in run(58)
  WSGIApplication("%(prog)s [OPTIONS] [APP_MODULE]").run()
/usr/local/lib/python3.8/site-packages/gunicorn/app/base.py in run(228)
  super().run()
/usr/local/lib/python3.8/site-packages/gunicorn/app/base.py in run(72)
  Arbiter(self).run()
/usr/local/lib/python3.8/site-packages/gunicorn/arbiter.py in run(211)
  self.manage_workers()
/usr/local/lib/python3.8/site-packages/gunicorn/arbiter.py in manage_workers(545)
  self.spawn_workers()
/usr/local/lib/python3.8/site-packages/gunicorn/arbiter.py in spawn_workers(616)
  self.spawn_worker()
/usr/local/lib/python3.8/site-packages/gunicorn/arbiter.py in spawn_worker(583)
  worker.init_process()
/usr/local/lib/python3.8/site-packages/gunicorn/workers/base.py in init_process(140)
  self.run()
/usr/local/lib/python3.8/site-packages/gunicorn/workers/sync.py in run(123)
  self.run_for_one(timeout)
/usr/local/lib/python3.8/site-packages/gunicorn/workers/sync.py in run_for_one(67)
  self.accept(listener)
/usr/local/lib/python3.8/site-packages/gunicorn/workers/sync.py in accept(29)
  self.handle(listener, client, addr)
/usr/local/lib/python3.8/site-packages/gunicorn/workers/sync.py in handle(134)
  self.handle_request(listener, req, client, addr)
/usr/local/lib/python3.8/site-packages/gunicorn/workers/sync.py in handle_request(175)
  respiter = self.wsgi(environ, resp.start_response)
/home/joe/eracks12/web/apps/products/views.py in product(384)
  ses_helper.fill (product)
/home/joe/eracks12/web/apps/home/helpers.py in fill(199)
  opts [lineid] ['name'] = po.calc_name
/home/joe/eracks12/web/apps/products/models.py in calc_name(477)
  return self.name or self.option.name  # or self.option.display_name
  +
SELECT COUNT(*) AS "__count"
  FROM
"choices"
 INNER JOIN
"prodoptchoices"
    ON
("choices"."id" = "prodoptchoices"."choiceid")
 WHERE
"prodoptchoices"."productoptionid" = 57278
SELECT ••• FROM "choices" INNER JOIN "prodoptchoices" ON ("choices"."id" = "prodoptchoices"."choiceid") WHERE "prodoptchoices"."productoptionid" = 57278
  18 similar queries.   Duplicated 2 times.
0.21601389416762484%
0.64

Connection: default

/usr/local/bin/gunicorn in <module>(8)
  sys.exit(run())
/usr/local/lib/python3.8/site-packages/gunicorn/app/wsgiapp.py in run(58)
  WSGIApplication("%(prog)s [OPTIONS] [APP_MODULE]").run()
/usr/local/lib/python3.8/site-packages/gunicorn/app/base.py in run(228)
  super().run()
/usr/local/lib/python3.8/site-packages/gunicorn/app/base.py in run(72)
  Arbiter(self).run()
/usr/local/lib/python3.8/site-packages/gunicorn/arbiter.py in run(211)
  self.manage_workers()
/usr/local/lib/python3.8/site-packages/gunicorn/arbiter.py in manage_workers(545)
  self.spawn_workers()
/usr/local/lib/python3.8/site-packages/gunicorn/arbiter.py in spawn_workers(616)
  self.spawn_worker()
/usr/local/lib/python3.8/site-packages/gunicorn/arbiter.py in spawn_worker(583)
  worker.init_process()
/usr/local/lib/python3.8/site-packages/gunicorn/workers/base.py in init_process(140)
  self.run()
/usr/local/lib/python3.8/site-packages/gunicorn/workers/sync.py in run(123)
  self.run_for_one(timeout)
/usr/local/lib/python3.8/site-packages/gunicorn/workers/sync.py in run_for_one(67)
  self.accept(listener)
/usr/local/lib/python3.8/site-packages/gunicorn/workers/sync.py in accept(29)
  self.handle(listener, client, addr)
/usr/local/lib/python3.8/site-packages/gunicorn/workers/sync.py in handle(134)
  self.handle_request(listener, req, client, addr)
/usr/local/lib/python3.8/site-packages/gunicorn/workers/sync.py in handle_request(175)
  respiter = self.wsgi(environ, resp.start_response)
/home/joe/eracks12/web/apps/products/views.py in product(384)
  ses_helper.fill (product)
/home/joe/eracks12/web/apps/home/helpers.py in fill(198)
  opts [lineid] ['choices'] = dict ([(c['id'],c) for c in list(po.all_choices().values())])
/home/joe/eracks12/web/apps/products/models.py in all_choices(499)
  if self.choices.count():  # POCs - yuk - TODO: remove them
  +
SELECT "options"."id",
       "options"."name",
       "options"."usage_notes",
       "options"."sortorder",
       "options"."blurb",
       "options"."description",
       "options"."comments",
       "options"."published",
       "options"."created",
       "options"."updated"
  FROM
"options"
 WHERE
"options"."id" = 56701
SELECT ••• FROM "options" WHERE "options"."id" = 56701
  18 similar queries.   Duplicated 2 times.
0.833425544164177%
2.48

Connection: default

/usr/local/bin/gunicorn in <module>(8)
  sys.exit(run())
/usr/local/lib/python3.8/site-packages/gunicorn/app/wsgiapp.py in run(58)
  WSGIApplication("%(prog)s [OPTIONS] [APP_MODULE]").run()
/usr/local/lib/python3.8/site-packages/gunicorn/app/base.py in run(228)
  super().run()
/usr/local/lib/python3.8/site-packages/gunicorn/app/base.py in run(72)
  Arbiter(self).run()
/usr/local/lib/python3.8/site-packages/gunicorn/arbiter.py in run(211)
  self.manage_workers()
/usr/local/lib/python3.8/site-packages/gunicorn/arbiter.py in manage_workers(545)
  self.spawn_workers()
/usr/local/lib/python3.8/site-packages/gunicorn/arbiter.py in spawn_workers(616)
  self.spawn_worker()
/usr/local/lib/python3.8/site-packages/gunicorn/arbiter.py in spawn_worker(583)
  worker.init_process()
/usr/local/lib/python3.8/site-packages/gunicorn/workers/base.py in init_process(140)
  self.run()
/usr/local/lib/python3.8/site-packages/gunicorn/workers/sync.py in run(123)
  self.run_for_one(timeout)
/usr/local/lib/python3.8/site-packages/gunicorn/workers/sync.py in run_for_one(67)
  self.accept(listener)
/usr/local/lib/python3.8/site-packages/gunicorn/workers/sync.py in accept(29)
  self.handle(listener, client, addr)
/usr/local/lib/python3.8/site-packages/gunicorn/workers/sync.py in handle(134)
  self.handle_request(listener, req, client, addr)
/usr/local/lib/python3.8/site-packages/gunicorn/workers/sync.py in handle_request(175)
  respiter = self.wsgi(environ, resp.start_response)
/home/joe/eracks12/web/apps/products/views.py in product(384)
  ses_helper.fill (product)
/home/joe/eracks12/web/apps/home/helpers.py in fill(198)
  opts [lineid] ['choices'] = dict ([(c['id'],c) for c in list(po.all_choices().values())])
/home/joe/eracks12/web/apps/products/models.py in all_choices(502)
  return self.option_choices()
/home/joe/eracks12/web/apps/products/models.py in option_choices(494)
  result = list (self.option.choices.values_list ('id', flat=True))  # all()  #filter(published=True)],
  +
SELECT "choices"."id"
  FROM
"choices"
 INNER JOIN
"options_choices"
    ON
("choices"."id" = "options_choices"."choice_id")
 WHERE
"options_choices"."option_id" = 56701
 ORDER BY
"choices"."sortorder" ASC, "choices"."cost" ASC
SELECT ••• FROM "choices" INNER JOIN "options_choices" ON ("choices"."id" = "options_choices"."choice_id") WHERE "options_choices"."option_id" = 56701 ORDER BY "choices"."sortorder" ASC, "choices"."cost" ASC
  2 similar queries.   Duplicated 2 times.
0.582050800951295%
1.73

Connection: default

/usr/local/bin/gunicorn in <module>(8)
  sys.exit(run())
/usr/local/lib/python3.8/site-packages/gunicorn/app/wsgiapp.py in run(58)
  WSGIApplication("%(prog)s [OPTIONS] [APP_MODULE]").run()
/usr/local/lib/python3.8/site-packages/gunicorn/app/base.py in run(228)
  super().run()
/usr/local/lib/python3.8/site-packages/gunicorn/app/base.py in run(72)
  Arbiter(self).run()
/usr/local/lib/python3.8/site-packages/gunicorn/arbiter.py in run(211)
  self.manage_workers()
/usr/local/lib/python3.8/site-packages/gunicorn/arbiter.py in manage_workers(545)
  self.spawn_workers()
/usr/local/lib/python3.8/site-packages/gunicorn/arbiter.py in spawn_workers(616)
  self.spawn_worker()
/usr/local/lib/python3.8/site-packages/gunicorn/arbiter.py in spawn_worker(583)
  worker.init_process()
/usr/local/lib/python3.8/site-packages/gunicorn/workers/base.py in init_process(140)
  self.run()
/usr/local/lib/python3.8/site-packages/gunicorn/workers/sync.py in run(123)
  self.run_for_one(timeout)
/usr/local/lib/python3.8/site-packages/gunicorn/workers/sync.py in run_for_one(67)
  self.accept(listener)
/usr/local/lib/python3.8/site-packages/gunicorn/workers/sync.py in accept(29)
  self.handle(listener, client, addr)
/usr/local/lib/python3.8/site-packages/gunicorn/workers/sync.py in handle(134)
  self.handle_request(listener, req, client, addr)
/usr/local/lib/python3.8/site-packages/gunicorn/workers/sync.py in handle_request(175)
  respiter = self.wsgi(environ, resp.start_response)
/home/joe/eracks12/web/apps/products/views.py in product(384)
  ses_helper.fill (product)
/home/joe/eracks12/web/apps/home/helpers.py in fill(198)
  opts [lineid] ['choices'] = dict ([(c['id'],c) for c in list(po.all_choices().values())])
/home/joe/eracks12/web/apps/products/models.py in all_choices(502)
  return self.option_choices()
/home/joe/eracks12/web/apps/products/models.py in option_choices(494)
  result = list (self.option.choices.values_list ('id', flat=True))  # all()  #filter(published=True)],
  +
SELECT "choices"."id",
       "choices"."name",
       "choices"."source",
       "choices"."price",
       "choices"."cost",
       "choices"."sortorder",
       "choices"."multiplier",
       "choices"."comment",
       "choices"."choicecategory_id",
       "choices"."blurb",
       "choices"."published",
       "choices"."created",
       "choices"."updated"
  FROM
"choices"
 WHERE
"choices"."id" IN (30, 16588, 56702, 56703, 56704, 56708, 56706)
 ORDER BY
"choices"."cost" ASC, "choices"."sortorder" ASC
SELECT ••• FROM "choices" WHERE "choices"."id" IN (30, 16588, 56702, 56703, 56704, 56708, 56706) ORDER BY "choices"."cost" ASC, "choices"."sortorder" ASC
  2 similar queries.   Duplicated 2 times.
0.9545023742284359%
2.84

Connection: default

/usr/local/bin/gunicorn in <module>(8)
  sys.exit(run())
/usr/local/lib/python3.8/site-packages/gunicorn/app/wsgiapp.py in run(58)
  WSGIApplication("%(prog)s [OPTIONS] [APP_MODULE]").run()
/usr/local/lib/python3.8/site-packages/gunicorn/app/base.py in run(228)
  super().run()
/usr/local/lib/python3.8/site-packages/gunicorn/app/base.py in run(72)
  Arbiter(self).run()
/usr/local/lib/python3.8/site-packages/gunicorn/arbiter.py in run(211)
  self.manage_workers()
/usr/local/lib/python3.8/site-packages/gunicorn/arbiter.py in manage_workers(545)
  self.spawn_workers()
/usr/local/lib/python3.8/site-packages/gunicorn/arbiter.py in spawn_workers(616)
  self.spawn_worker()
/usr/local/lib/python3.8/site-packages/gunicorn/arbiter.py in spawn_worker(583)
  worker.init_process()
/usr/local/lib/python3.8/site-packages/gunicorn/workers/base.py in init_process(140)
  self.run()
/usr/local/lib/python3.8/site-packages/gunicorn/workers/sync.py in run(123)
  self.run_for_one(timeout)
/usr/local/lib/python3.8/site-packages/gunicorn/workers/sync.py in run_for_one(67)
  self.accept(listener)
/usr/local/lib/python3.8/site-packages/gunicorn/workers/sync.py in accept(29)
  self.handle(listener, client, addr)
/usr/local/lib/python3.8/site-packages/gunicorn/workers/sync.py in handle(134)
  self.handle_request(listener, req, client, addr)
/usr/local/lib/python3.8/site-packages/gunicorn/workers/sync.py in handle_request(175)
  respiter = self.wsgi(environ, resp.start_response)
/home/joe/eracks12/web/apps/products/views.py in product(384)
  ses_helper.fill (product)
/home/joe/eracks12/web/apps/home/helpers.py in fill(198)
  opts [lineid] ['choices'] = dict ([(c['id'],c) for c in list(po.all_choices().values())])
  +
SELECT COUNT(*) AS "__count"
  FROM
"choices"
 INNER JOIN
"prodoptchoices"
    ON
("choices"."id" = "prodoptchoices"."choiceid")
 WHERE
"prodoptchoices"."productoptionid" = 42682
SELECT ••• FROM "choices" INNER JOIN "prodoptchoices" ON ("choices"."id" = "prodoptchoices"."choiceid") WHERE "prodoptchoices"."productoptionid" = 42682
  18 similar queries.   Duplicated 2 times.
1.0179273891826273%
3.03

Connection: default

/usr/local/bin/gunicorn in <module>(8)
  sys.exit(run())
/usr/local/lib/python3.8/site-packages/gunicorn/app/wsgiapp.py in run(58)
  WSGIApplication("%(prog)s [OPTIONS] [APP_MODULE]").run()
/usr/local/lib/python3.8/site-packages/gunicorn/app/base.py in run(228)
  super().run()
/usr/local/lib/python3.8/site-packages/gunicorn/app/base.py in run(72)
  Arbiter(self).run()
/usr/local/lib/python3.8/site-packages/gunicorn/arbiter.py in run(211)
  self.manage_workers()
/usr/local/lib/python3.8/site-packages/gunicorn/arbiter.py in manage_workers(545)
  self.spawn_workers()
/usr/local/lib/python3.8/site-packages/gunicorn/arbiter.py in spawn_workers(616)
  self.spawn_worker()
/usr/local/lib/python3.8/site-packages/gunicorn/arbiter.py in spawn_worker(583)
  worker.init_process()
/usr/local/lib/python3.8/site-packages/gunicorn/workers/base.py in init_process(140)
  self.run()
/usr/local/lib/python3.8/site-packages/gunicorn/workers/sync.py in run(123)
  self.run_for_one(timeout)
/usr/local/lib/python3.8/site-packages/gunicorn/workers/sync.py in run_for_one(67)
  self.accept(listener)
/usr/local/lib/python3.8/site-packages/gunicorn/workers/sync.py in accept(29)
  self.handle(listener, client, addr)
/usr/local/lib/python3.8/site-packages/gunicorn/workers/sync.py in handle(134)
  self.handle_request(listener, req, client, addr)
/usr/local/lib/python3.8/site-packages/gunicorn/workers/sync.py in handle_request(175)
  respiter = self.wsgi(environ, resp.start_response)
/home/joe/eracks12/web/apps/products/views.py in product(384)
  ses_helper.fill (product)
/home/joe/eracks12/web/apps/home/helpers.py in fill(198)
  opts [lineid] ['choices'] = dict ([(c['id'],c) for c in list(po.all_choices().values())])
/home/joe/eracks12/web/apps/products/models.py in all_choices(499)
  if self.choices.count():  # POCs - yuk - TODO: remove them
  +
SELECT "choices"."id",
       "choices"."name",
       "choices"."source",
       "choices"."price",
       "choices"."cost",
       "choices"."sortorder",
       "choices"."multiplier",
       "choices"."comment",
       "choices"."choicecategory_id",
       "choices"."blurb",
       "choices"."published",
       "choices"."created",
       "choices"."updated"
  FROM
"choices"
 WHERE
"choices"."id" = 18049
SELECT ••• FROM "choices" WHERE "choices"."id" = 18049
  11 similar queries.   Duplicated 2 times.
0.17760607853796923%
0.53

Connection: default

/usr/local/bin/gunicorn in <module>(8)
  sys.exit(run())
/usr/local/lib/python3.8/site-packages/gunicorn/app/wsgiapp.py in run(58)
  WSGIApplication("%(prog)s [OPTIONS] [APP_MODULE]").run()
/usr/local/lib/python3.8/site-packages/gunicorn/app/base.py in run(228)
  super().run()
/usr/local/lib/python3.8/site-packages/gunicorn/app/base.py in run(72)
  Arbiter(self).run()
/usr/local/lib/python3.8/site-packages/gunicorn/arbiter.py in run(211)
  self.manage_workers()
/usr/local/lib/python3.8/site-packages/gunicorn/arbiter.py in manage_workers(545)
  self.spawn_workers()
/usr/local/lib/python3.8/site-packages/gunicorn/arbiter.py in spawn_workers(616)
  self.spawn_worker()
/usr/local/lib/python3.8/site-packages/gunicorn/arbiter.py in spawn_worker(583)
  worker.init_process()
/usr/local/lib/python3.8/site-packages/gunicorn/workers/base.py in init_process(140)
  self.run()
/usr/local/lib/python3.8/site-packages/gunicorn/workers/sync.py in run(123)
  self.run_for_one(timeout)
/usr/local/lib/python3.8/site-packages/gunicorn/workers/sync.py in run_for_one(67)
  self.accept(listener)
/usr/local/lib/python3.8/site-packages/gunicorn/workers/sync.py in accept(29)
  self.handle(listener, client, addr)
/usr/local/lib/python3.8/site-packages/gunicorn/workers/sync.py in handle(134)
  self.handle_request(listener, req, client, addr)
/usr/local/lib/python3.8/site-packages/gunicorn/workers/sync.py in handle_request(175)
  respiter = self.wsgi(environ, resp.start_response)
/home/joe/eracks12/web/apps/products/views.py in product(384)
  ses_helper.fill (product)
/home/joe/eracks12/web/apps/home/helpers.py in fill(198)
  opts [lineid] ['choices'] = dict ([(c['id'],c) for c in list(po.all_choices().values())])
/home/joe/eracks12/web/apps/products/models.py in all_choices(502)
  return self.option_choices()
/home/joe/eracks12/web/apps/products/models.py in option_choices(492)
  result = [self.defaultchoice.id]
  +
SELECT "choices"."id",
       "choices"."name",
       "choices"."source",
       "choices"."price",
       "choices"."cost",
       "choices"."sortorder",
       "choices"."multiplier",
       "choices"."comment",
       "choices"."choicecategory_id",
       "choices"."blurb",
       "choices"."published",
       "choices"."created",
       "choices"."updated"
  FROM
"choices"
 WHERE
"choices"."id" IN (30, 18049)
 ORDER BY
"choices"."cost" ASC, "choices"."sortorder" ASC
SELECT ••• FROM "choices" WHERE "choices"."id" IN (30, 18049) ORDER BY "choices"."cost" ASC, "choices"."sortorder" ASC
  4 similar queries.   Duplicated 2 times.
0.16886609544061543%
0.50

Connection: default

/usr/local/bin/gunicorn in <module>(8)
  sys.exit(run())
/usr/local/lib/python3.8/site-packages/gunicorn/app/wsgiapp.py in run(58)
  WSGIApplication("%(prog)s [OPTIONS] [APP_MODULE]").run()
/usr/local/lib/python3.8/site-packages/gunicorn/app/base.py in run(228)
  super().run()
/usr/local/lib/python3.8/site-packages/gunicorn/app/base.py in run(72)
  Arbiter(self).run()
/usr/local/lib/python3.8/site-packages/gunicorn/arbiter.py in run(211)
  self.manage_workers()
/usr/local/lib/python3.8/site-packages/gunicorn/arbiter.py in manage_workers(545)
  self.spawn_workers()
/usr/local/lib/python3.8/site-packages/gunicorn/arbiter.py in spawn_workers(616)
  self.spawn_worker()
/usr/local/lib/python3.8/site-packages/gunicorn/arbiter.py in spawn_worker(583)
  worker.init_process()
/usr/local/lib/python3.8/site-packages/gunicorn/workers/base.py in init_process(140)
  self.run()
/usr/local/lib/python3.8/site-packages/gunicorn/workers/sync.py in run(123)
  self.run_for_one(timeout)
/usr/local/lib/python3.8/site-packages/gunicorn/workers/sync.py in run_for_one(67)
  self.accept(listener)
/usr/local/lib/python3.8/site-packages/gunicorn/workers/sync.py in accept(29)
  self.handle(listener, client, addr)
/usr/local/lib/python3.8/site-packages/gunicorn/workers/sync.py in handle(134)
  self.handle_request(listener, req, client, addr)
/usr/local/lib/python3.8/site-packages/gunicorn/workers/sync.py in handle_request(175)
  respiter = self.wsgi(environ, resp.start_response)
/home/joe/eracks12/web/apps/products/views.py in product(384)
  ses_helper.fill (product)
/home/joe/eracks12/web/apps/home/helpers.py in fill(198)
  opts [lineid] ['choices'] = dict ([(c['id'],c) for c in list(po.all_choices().values())])
  +
SELECT "options"."id",
       "options"."name",
       "options"."usage_notes",
       "options"."sortorder",
       "options"."blurb",
       "options"."description",
       "options"."comments",
       "options"."published",
       "options"."created",
       "options"."updated"
  FROM
"options"
 WHERE
"options"."id" = 18048
SELECT ••• FROM "options" WHERE "options"."id" = 18048
  18 similar queries.   Duplicated 2 times.
0.13583056299924148%
0.40

Connection: default

/usr/local/bin/gunicorn in <module>(8)
  sys.exit(run())
/usr/local/lib/python3.8/site-packages/gunicorn/app/wsgiapp.py in run(58)
  WSGIApplication("%(prog)s [OPTIONS] [APP_MODULE]").run()
/usr/local/lib/python3.8/site-packages/gunicorn/app/base.py in run(228)
  super().run()
/usr/local/lib/python3.8/site-packages/gunicorn/app/base.py in run(72)
  Arbiter(self).run()
/usr/local/lib/python3.8/site-packages/gunicorn/arbiter.py in run(211)
  self.manage_workers()
/usr/local/lib/python3.8/site-packages/gunicorn/arbiter.py in manage_workers(545)
  self.spawn_workers()
/usr/local/lib/python3.8/site-packages/gunicorn/arbiter.py in spawn_workers(616)
  self.spawn_worker()
/usr/local/lib/python3.8/site-packages/gunicorn/arbiter.py in spawn_worker(583)
  worker.init_process()
/usr/local/lib/python3.8/site-packages/gunicorn/workers/base.py in init_process(140)
  self.run()
/usr/local/lib/python3.8/site-packages/gunicorn/workers/sync.py in run(123)
  self.run_for_one(timeout)
/usr/local/lib/python3.8/site-packages/gunicorn/workers/sync.py in run_for_one(67)
  self.accept(listener)
/usr/local/lib/python3.8/site-packages/gunicorn/workers/sync.py in accept(29)
  self.handle(listener, client, addr)
/usr/local/lib/python3.8/site-packages/gunicorn/workers/sync.py in handle(134)
  self.handle_request(listener, req, client, addr)
/usr/local/lib/python3.8/site-packages/gunicorn/workers/sync.py in handle_request(175)
  respiter = self.wsgi(environ, resp.start_response)
/home/joe/eracks12/web/apps/products/views.py in product(384)
  ses_helper.fill (product)
/home/joe/eracks12/web/apps/home/helpers.py in fill(199)
  opts [lineid] ['name'] = po.calc_name
/home/joe/eracks12/web/apps/products/models.py in calc_name(477)
  return self.name or self.option.name  # or self.option.display_name
  +
SELECT "products_productimage"."id",
       "products_productimage"."published",
       "products_productimage"."created",
       "products_productimage"."updated",
       "products_productimage"."title",
       "products_productimage"."caption",
       "products_productimage"."sortorder",
       "products_productimage"."image",
       "products_productimage"."product_id"
  FROM
"products_productimage"
 WHERE
("products_productimage"."product_id" = 42675 AND "products_productimage"."published" = true)
 ORDER BY
"products_productimage"."sortorder" ASC
 LIMIT
1
SELECT ••• FROM "products_productimage" WHERE ("products_productimage"."product_id" = 42675 AND "products_productimage"."published" = true) ORDER BY "products_productimage"."sortorder" ASC LIMIT 1
  3 similar queries.   Duplicated 3 times.
1.628764006023372%
4.84

Connection: default

/usr/local/bin/gunicorn in <module>(8)
  sys.exit(run())
/usr/local/lib/python3.8/site-packages/gunicorn/app/wsgiapp.py in run(58)
  WSGIApplication("%(prog)s [OPTIONS] [APP_MODULE]").run()
/usr/local/lib/python3.8/site-packages/gunicorn/app/base.py in run(228)
  super().run()
/usr/local/lib/python3.8/site-packages/gunicorn/app/base.py in run(72)
  Arbiter(self).run()
/usr/local/lib/python3.8/site-packages/gunicorn/arbiter.py in run(211)
  self.manage_workers()
/usr/local/lib/python3.8/site-packages/gunicorn/arbiter.py in manage_workers(545)
  self.spawn_workers()
/usr/local/lib/python3.8/site-packages/gunicorn/arbiter.py in spawn_workers(616)
  self.spawn_worker()
/usr/local/lib/python3.8/site-packages/gunicorn/arbiter.py in spawn_worker(583)
  worker.init_process()
/usr/local/lib/python3.8/site-packages/gunicorn/workers/base.py in init_process(140)
  self.run()
/usr/local/lib/python3.8/site-packages/gunicorn/workers/sync.py in run(123)
  self.run_for_one(timeout)
/usr/local/lib/python3.8/site-packages/gunicorn/workers/sync.py in run_for_one(67)
  self.accept(listener)
/usr/local/lib/python3.8/site-packages/gunicorn/workers/sync.py in accept(29)
  self.handle(listener, client, addr)
/usr/local/lib/python3.8/site-packages/gunicorn/workers/sync.py in handle(134)
  self.handle_request(listener, req, client, addr)
/usr/local/lib/python3.8/site-packages/gunicorn/workers/sync.py in handle_request(175)
  respiter = self.wsgi(environ, resp.start_response)
/home/joe/eracks12/web/apps/products/views.py in product(384)
  ses_helper.fill (product)
/home/joe/eracks12/web/apps/home/helpers.py in fill(210)
  if product.image:
/home/joe/eracks12/web/apps/products/models.py in image(384)
  if imgs: return imgs [0]
  +
SELECT "products_productimage"."id",
       "products_productimage"."published",
       "products_productimage"."created",
       "products_productimage"."updated",
       "products_productimage"."title",
       "products_productimage"."caption",
       "products_productimage"."sortorder",
       "products_productimage"."image",
       "products_productimage"."product_id"
  FROM
"products_productimage"
 WHERE
("products_productimage"."product_id" = 42675 AND "products_productimage"."published" = true)
 ORDER BY
"products_productimage"."sortorder" ASC
 LIMIT
1
SELECT ••• FROM "products_productimage" WHERE ("products_productimage"."product_id" = 42675 AND "products_productimage"."published" = true) ORDER BY "products_productimage"."sortorder" ASC LIMIT 1
  3 similar queries.   Duplicated 3 times.
1.5996574568092485%
4.76

Connection: default

/usr/local/bin/gunicorn in <module>(8)
  sys.exit(run())
/usr/local/lib/python3.8/site-packages/gunicorn/app/wsgiapp.py in run(58)
  WSGIApplication("%(prog)s [OPTIONS] [APP_MODULE]").run()
/usr/local/lib/python3.8/site-packages/gunicorn/app/base.py in run(228)
  super().run()
/usr/local/lib/python3.8/site-packages/gunicorn/app/base.py in run(72)
  Arbiter(self).run()
/usr/local/lib/python3.8/site-packages/gunicorn/arbiter.py in run(211)
  self.manage_workers()
/usr/local/lib/python3.8/site-packages/gunicorn/arbiter.py in manage_workers(545)
  self.spawn_workers()
/usr/local/lib/python3.8/site-packages/gunicorn/arbiter.py in spawn_workers(616)
  self.spawn_worker()
/usr/local/lib/python3.8/site-packages/gunicorn/arbiter.py in spawn_worker(583)
  worker.init_process()
/usr/local/lib/python3.8/site-packages/gunicorn/workers/base.py in init_process(140)
  self.run()
/usr/local/lib/python3.8/site-packages/gunicorn/workers/sync.py in run(123)
  self.run_for_one(timeout)
/usr/local/lib/python3.8/site-packages/gunicorn/workers/sync.py in run_for_one(67)
  self.accept(listener)
/usr/local/lib/python3.8/site-packages/gunicorn/workers/sync.py in accept(29)
  self.handle(listener, client, addr)
/usr/local/lib/python3.8/site-packages/gunicorn/workers/sync.py in handle(134)
  self.handle_request(listener, req, client, addr)
/usr/local/lib/python3.8/site-packages/gunicorn/workers/sync.py in handle_request(175)
  respiter = self.wsgi(environ, resp.start_response)
/home/joe/eracks12/web/apps/products/views.py in product(384)
  ses_helper.fill (product)
/home/joe/eracks12/web/apps/home/helpers.py in fill(211)
  prod ['image'] = product.image.image  # property - JJW 5/27/19
/home/joe/eracks12/web/apps/products/models.py in image(384)
  if imgs: return imgs [0]
  +
SELECT "products_productimage"."id",
       "products_productimage"."published",
       "products_productimage"."created",
       "products_productimage"."updated",
       "products_productimage"."title",
       "products_productimage"."caption",
       "products_productimage"."sortorder",
       "products_productimage"."image",
       "products_productimage"."product_id"
  FROM
"products_productimage"
 WHERE
("products_productimage"."product_id" = 42675 AND "products_productimage"."published" = true)
 ORDER BY
"products_productimage"."sortorder" ASC
SELECT ••• FROM "products_productimage" WHERE ("products_productimage"."product_id" = 42675 AND "products_productimage"."published" = true) ORDER BY "products_productimage"."sortorder" ASC
  3 similar queries.   Duplicated 3 times.
0.18466221168078695%
0.55

Connection: default

/usr/local/bin/gunicorn in <module>(8)
  sys.exit(run())
/usr/local/lib/python3.8/site-packages/gunicorn/app/wsgiapp.py in run(58)
  WSGIApplication("%(prog)s [OPTIONS] [APP_MODULE]").run()
/usr/local/lib/python3.8/site-packages/gunicorn/app/base.py in run(228)
  super().run()
/usr/local/lib/python3.8/site-packages/gunicorn/app/base.py in run(72)
  Arbiter(self).run()
/usr/local/lib/python3.8/site-packages/gunicorn/arbiter.py in run(211)
  self.manage_workers()
/usr/local/lib/python3.8/site-packages/gunicorn/arbiter.py in manage_workers(545)
  self.spawn_workers()
/usr/local/lib/python3.8/site-packages/gunicorn/arbiter.py in spawn_workers(616)
  self.spawn_worker()
/usr/local/lib/python3.8/site-packages/gunicorn/arbiter.py in spawn_worker(583)
  worker.init_process()
/usr/local/lib/python3.8/site-packages/gunicorn/workers/base.py in init_process(140)
  self.run()
/usr/local/lib/python3.8/site-packages/gunicorn/workers/sync.py in run(123)
  self.run_for_one(timeout)
/usr/local/lib/python3.8/site-packages/gunicorn/workers/sync.py in run_for_one(67)
  self.accept(listener)
/usr/local/lib/python3.8/site-packages/gunicorn/workers/sync.py in accept(29)
  self.handle(listener, client, addr)
/usr/local/lib/python3.8/site-packages/gunicorn/workers/sync.py in handle(134)
  self.handle_request(listener, req, client, addr)
/usr/local/lib/python3.8/site-packages/gunicorn/workers/sync.py in handle_request(175)
  respiter = self.wsgi(environ, resp.start_response)
/home/joe/eracks12/web/apps/products/views.py in product(443)
  photos_list = [str(t) for t in product_photos (product)]
  +
SELECT "products_productimage"."id",
       "products_productimage"."published",
       "products_productimage"."created",
       "products_productimage"."updated",
       "products_productimage"."title",
       "products_productimage"."caption",
       "products_productimage"."sortorder",
       "products_productimage"."image",
       "products_productimage"."product_id"
  FROM
"products_productimage"
 WHERE
("products_productimage"."product_id" = 42675 AND "products_productimage"."published" = true)
 ORDER BY
"products_productimage"."sortorder" ASC
 LIMIT
1
SELECT ••• FROM "products_productimage" WHERE ("products_productimage"."product_id" = 42675 AND "products_productimage"."published" = true) ORDER BY "products_productimage"."sortorder" ASC LIMIT 1
  3 similar queries.   Duplicated 3 times.
3.5648707204151573%
10.60

Connection: default

/usr/local/bin/gunicorn in <module>(8)
  sys.exit(run())
/usr/local/lib/python3.8/site-packages/gunicorn/app/wsgiapp.py in run(58)
  WSGIApplication("%(prog)s [OPTIONS] [APP_MODULE]").run()
/usr/local/lib/python3.8/site-packages/gunicorn/app/base.py in run(228)
  super().run()
/usr/local/lib/python3.8/site-packages/gunicorn/app/base.py in run(72)
  Arbiter(self).run()
/usr/local/lib/python3.8/site-packages/gunicorn/arbiter.py in run(211)
  self.manage_workers()
/usr/local/lib/python3.8/site-packages/gunicorn/arbiter.py in manage_workers(545)
  self.spawn_workers()
/usr/local/lib/python3.8/site-packages/gunicorn/arbiter.py in spawn_workers(616)
  self.spawn_worker()
/usr/local/lib/python3.8/site-packages/gunicorn/arbiter.py in spawn_worker(583)
  worker.init_process()
/usr/local/lib/python3.8/site-packages/gunicorn/workers/base.py in init_process(140)
  self.run()
/usr/local/lib/python3.8/site-packages/gunicorn/workers/sync.py in run(123)
  self.run_for_one(timeout)
/usr/local/lib/python3.8/site-packages/gunicorn/workers/sync.py in run_for_one(67)
  self.accept(listener)
/usr/local/lib/python3.8/site-packages/gunicorn/workers/sync.py in accept(29)
  self.handle(listener, client, addr)
/usr/local/lib/python3.8/site-packages/gunicorn/workers/sync.py in handle(134)
  self.handle_request(listener, req, client, addr)
/usr/local/lib/python3.8/site-packages/gunicorn/workers/sync.py in handle_request(175)
  respiter = self.wsgi(environ, resp.start_response)
/home/joe/eracks12/web/apps/products/views.py in product(446)
  return render (request, 'product.html', dict (
/usr/local/lib/python3.8/site-packages/django/shortcuts.py in render(36)
  content = loader.render_to_string(template_name, context, request, using=using)
/usr/local/lib/python3.8/site-packages/django/template/loader.py in render_to_string(62)
  return template.render(context, request)
/usr/local/lib/python3.8/site-packages/django/template/backends/django.py in render(61)
  return self.template.render(context)
/usr/local/lib/python3.8/site-packages/django/template/base.py in render(171)
  return self._render(context)
/usr/local/lib/python3.8/site-packages/django/test/utils.py in instrumented_test_render(96)
  return self.nodelist.render(context)
/usr/local/lib/python3.8/site-packages/django/template/base.py in render(937)
  bit = node.render_annotated(context)
/usr/local/lib/python3.8/site-packages/django/template/base.py in render_annotated(904)
  return self.render(context)
/usr/local/lib/python3.8/site-packages/django/template/loader_tags.py in render(150)
  return compiled_parent._render(context)
/usr/local/lib/python3.8/site-packages/django/test/utils.py in instrumented_test_render(96)
  return self.nodelist.render(context)
/usr/local/lib/python3.8/site-packages/django/template/base.py in render(937)
  bit = node.render_annotated(context)
/usr/local/lib/python3.8/site-packages/django/template/base.py in render_annotated(904)
  return self.render(context)
/usr/local/lib/python3.8/site-packages/django/template/loader_tags.py in render(62)
  result = block.nodelist.render(context)
/usr/local/lib/python3.8/site-packages/django/template/base.py in render(937)
  bit = node.render_annotated(context)
/usr/local/lib/python3.8/site-packages/django/template/base.py in render_annotated(904)
  return self.render(context)
/usr/local/lib/python3.8/site-packages/django/template/loader_tags.py in render(62)
  result = block.nodelist.render(context)
/usr/local/lib/python3.8/site-packages/django/template/base.py in render(937)
  bit = node.render_annotated(context)
/usr/local/lib/python3.8/site-packages/django/template/base.py in render_annotated(904)
  return self.render(context)
/usr/local/lib/python3.8/site-packages/django/template/base.py in render(987)
  output = self.filter_expression.resolve(context)
/usr/local/lib/python3.8/site-packages/django/template/base.py in resolve(671)
  obj = self.var.resolve(context)
/usr/local/lib/python3.8/site-packages/django/template/base.py in resolve(796)
  value = self._resolve_lookup(context)
/usr/local/lib/python3.8/site-packages/django/template/base.py in _resolve_lookup(837)
  current = getattr(current, bit)
/home/joe/eracks12/web/apps/products/models.py in image(384)
  if imgs: return imgs [0]
229 <div class="photowrap col-6 xmlauto float-left">
230 <div class="xml-auto xphoto-wrapper xrow xalign-items-center notworking-float-right">
231 <noscript style="min-height: 300px;display:inline-block">
232 {{ product.image|safe }}
233 <div class="product-name">
234 {{ product.name }}
235 <a href="#photos">
236 More Photos

/home/joe/eracks12/web/apps/products/templates/product.html

  +
SELECT "products_productimage"."id",
       "products_productimage"."published",
       "products_productimage"."created",
       "products_productimage"."updated",
       "products_productimage"."title",
       "products_productimage"."caption",
       "products_productimage"."sortorder",
       "products_productimage"."image",
       "products_productimage"."product_id"
  FROM
"products_productimage"
 WHERE
("products_productimage"."product_id" = 42675 AND "products_productimage"."published" = true)
 ORDER BY
"products_productimage"."sortorder" ASC
SELECT ••• FROM "products_productimage" WHERE ("products_productimage"."product_id" = 42675 AND "products_productimage"."published" = true) ORDER BY "products_productimage"."sortorder" ASC
  3 similar queries.   Duplicated 3 times.
2.213300490240887%
6.58

Connection: default

/usr/local/bin/gunicorn in <module>(8)
  sys.exit(run())
/usr/local/lib/python3.8/site-packages/gunicorn/app/wsgiapp.py in run(58)
  WSGIApplication("%(prog)s [OPTIONS] [APP_MODULE]").run()
/usr/local/lib/python3.8/site-packages/gunicorn/app/base.py in run(228)
  super().run()
/usr/local/lib/python3.8/site-packages/gunicorn/app/base.py in run(72)
  Arbiter(self).run()
/usr/local/lib/python3.8/site-packages/gunicorn/arbiter.py in run(211)
  self.manage_workers()
/usr/local/lib/python3.8/site-packages/gunicorn/arbiter.py in manage_workers(545)
  self.spawn_workers()
/usr/local/lib/python3.8/site-packages/gunicorn/arbiter.py in spawn_workers(616)
  self.spawn_worker()
/usr/local/lib/python3.8/site-packages/gunicorn/arbiter.py in spawn_worker(583)
  worker.init_process()
/usr/local/lib/python3.8/site-packages/gunicorn/workers/base.py in init_process(140)
  self.run()
/usr/local/lib/python3.8/site-packages/gunicorn/workers/sync.py in run(123)
  self.run_for_one(timeout)
/usr/local/lib/python3.8/site-packages/gunicorn/workers/sync.py in run_for_one(67)
  self.accept(listener)
/usr/local/lib/python3.8/site-packages/gunicorn/workers/sync.py in accept(29)
  self.handle(listener, client, addr)
/usr/local/lib/python3.8/site-packages/gunicorn/workers/sync.py in handle(134)
  self.handle_request(listener, req, client, addr)
/usr/local/lib/python3.8/site-packages/gunicorn/workers/sync.py in handle_request(175)
  respiter = self.wsgi(environ, resp.start_response)
/home/joe/eracks12/web/apps/products/views.py in product(446)
  return render (request, 'product.html', dict (
/usr/local/lib/python3.8/site-packages/django/shortcuts.py in render(36)
  content = loader.render_to_string(template_name, context, request, using=using)
/usr/local/lib/python3.8/site-packages/django/template/loader.py in render_to_string(62)
  return template.render(context, request)
/usr/local/lib/python3.8/site-packages/django/template/backends/django.py in render(61)
  return self.template.render(context)
/usr/local/lib/python3.8/site-packages/django/template/base.py in render(171)
  return self._render(context)
/usr/local/lib/python3.8/site-packages/django/test/utils.py in instrumented_test_render(96)
  return self.nodelist.render(context)
/usr/local/lib/python3.8/site-packages/django/template/base.py in render(937)
  bit = node.render_annotated(context)
/usr/local/lib/python3.8/site-packages/django/template/base.py in render_annotated(904)
  return self.render(context)
/usr/local/lib/python3.8/site-packages/django/template/loader_tags.py in render(150)
  return compiled_parent._render(context)
/usr/local/lib/python3.8/site-packages/django/test/utils.py in instrumented_test_render(96)
  return self.nodelist.render(context)
/usr/local/lib/python3.8/site-packages/django/template/base.py in render(937)
  bit = node.render_annotated(context)
/usr/local/lib/python3.8/site-packages/django/template/base.py in render_annotated(904)
  return self.render(context)
/usr/local/lib/python3.8/site-packages/django/template/loader_tags.py in render(62)
  result = block.nodelist.render(context)
/usr/local/lib/python3.8/site-packages/django/template/base.py in render(937)
  bit = node.render_annotated(context)
/usr/local/lib/python3.8/site-packages/django/template/base.py in render_annotated(904)
  return self.render(context)
/usr/local/lib/python3.8/site-packages/django/template/loader_tags.py in render(62)
  result = block.nodelist.render(context)
/usr/local/lib/python3.8/site-packages/django/template/base.py in render(937)
  bit = node.render_annotated(context)
/usr/local/lib/python3.8/site-packages/django/template/base.py in render_annotated(904)
  return self.render(context)
/usr/local/lib/python3.8/site-packages/django/template/defaulttags.py in render(166)
  len_values = len(values)
244 data-arrow-left-classes="fa fa-angle-left g-left-0"
245 data-arrow-right-classes="fa fa-angle-right g-right-0"
246 data-nav-for="#carousel-08-2">
247 {% for img in product.images.published %}
248 <div class="js-slide">
249 <a class="js-fancybox d-block g-pos-rel" href="javascript:;"
250 data-fancybox="lightbox-gallery--08-1"
251 data-src="{{ img.image.url }}"

/home/joe/eracks12/web/apps/products/templates/product.html

  +
SELECT "products_productimage"."id",
       "products_productimage"."published",
       "products_productimage"."created",
       "products_productimage"."updated",
       "products_productimage"."title",
       "products_productimage"."caption",
       "products_productimage"."sortorder",
       "products_productimage"."image",
       "products_productimage"."product_id"
  FROM
"products_productimage"
 WHERE
("products_productimage"."product_id" = 42675 AND "products_productimage"."published" = true)
 ORDER BY
"products_productimage"."sortorder" ASC
SELECT ••• FROM "products_productimage" WHERE ("products_productimage"."product_id" = 42675 AND "products_productimage"."published" = true) ORDER BY "products_productimage"."sortorder" ASC
  3 similar queries.   Duplicated 3 times.
1.7119141204449855%
5.09

Connection: default

/usr/local/bin/gunicorn in <module>(8)
  sys.exit(run())
/usr/local/lib/python3.8/site-packages/gunicorn/app/wsgiapp.py in run(58)
  WSGIApplication("%(prog)s [OPTIONS] [APP_MODULE]").run()
/usr/local/lib/python3.8/site-packages/gunicorn/app/base.py in run(228)
  super().run()
/usr/local/lib/python3.8/site-packages/gunicorn/app/base.py in run(72)
  Arbiter(self).run()
/usr/local/lib/python3.8/site-packages/gunicorn/arbiter.py in run(211)
  self.manage_workers()
/usr/local/lib/python3.8/site-packages/gunicorn/arbiter.py in manage_workers(545)
  self.spawn_workers()
/usr/local/lib/python3.8/site-packages/gunicorn/arbiter.py in spawn_workers(616)
  self.spawn_worker()
/usr/local/lib/python3.8/site-packages/gunicorn/arbiter.py in spawn_worker(583)
  worker.init_process()
/usr/local/lib/python3.8/site-packages/gunicorn/workers/base.py in init_process(140)
  self.run()
/usr/local/lib/python3.8/site-packages/gunicorn/workers/sync.py in run(123)
  self.run_for_one(timeout)
/usr/local/lib/python3.8/site-packages/gunicorn/workers/sync.py in run_for_one(67)
  self.accept(listener)
/usr/local/lib/python3.8/site-packages/gunicorn/workers/sync.py in accept(29)
  self.handle(listener, client, addr)
/usr/local/lib/python3.8/site-packages/gunicorn/workers/sync.py in handle(134)
  self.handle_request(listener, req, client, addr)
/usr/local/lib/python3.8/site-packages/gunicorn/workers/sync.py in handle_request(175)
  respiter = self.wsgi(environ, resp.start_response)
/home/joe/eracks12/web/apps/products/views.py in product(446)
  return render (request, 'product.html', dict (
/usr/local/lib/python3.8/site-packages/django/shortcuts.py in render(36)
  content = loader.render_to_string(template_name, context, request, using=using)
/usr/local/lib/python3.8/site-packages/django/template/loader.py in render_to_string(62)
  return template.render(context, request)
/usr/local/lib/python3.8/site-packages/django/template/backends/django.py in render(61)
  return self.template.render(context)
/usr/local/lib/python3.8/site-packages/django/template/base.py in render(171)
  return self._render(context)
/usr/local/lib/python3.8/site-packages/django/test/utils.py in instrumented_test_render(96)
  return self.nodelist.render(context)
/usr/local/lib/python3.8/site-packages/django/template/base.py in render(937)
  bit = node.render_annotated(context)
/usr/local/lib/python3.8/site-packages/django/template/base.py in render_annotated(904)
  return self.render(context)
/usr/local/lib/python3.8/site-packages/django/template/loader_tags.py in render(150)
  return compiled_parent._render(context)
/usr/local/lib/python3.8/site-packages/django/test/utils.py in instrumented_test_render(96)
  return self.nodelist.render(context)
/usr/local/lib/python3.8/site-packages/django/template/base.py in render(937)
  bit = node.render_annotated(context)
/usr/local/lib/python3.8/site-packages/django/template/base.py in render_annotated(904)
  return self.render(context)
/usr/local/lib/python3.8/site-packages/django/template/loader_tags.py in render(62)
  result = block.nodelist.render(context)
/usr/local/lib/python3.8/site-packages/django/template/base.py in render(937)
  bit = node.render_annotated(context)
/usr/local/lib/python3.8/site-packages/django/template/base.py in render_annotated(904)
  return self.render(context)
/usr/local/lib/python3.8/site-packages/django/template/loader_tags.py in render(62)
  result = block.nodelist.render(context)
/usr/local/lib/python3.8/site-packages/django/template/base.py in render(937)
  bit = node.render_annotated(context)
/usr/local/lib/python3.8/site-packages/django/template/base.py in render_annotated(904)
  return self.render(context)
/usr/local/lib/python3.8/site-packages/django/template/defaulttags.py in render(166)
  len_values = len(values)
266 data-slides-show="4"
267 data-is-thumbs="true"
268 data-nav-for="#carousel-08-1">
269 {% for img in product.images.published %}
270 <div class="js-slide g-px-10">
271 <img class="img-fluid w-100" src="{{ img.image.url }}" alt="{{ img.image.alt }}" title="{{ img.image.title }}">
272 </div>
273 {% endfor %}

/home/joe/eracks12/web/apps/products/templates/product.html

  +
SELECT "prodopts"."id",
       "prodopts"."name",
       "prodopts"."qty",
       "prodopts"."single",
       "prodopts"."required",
       "prodopts"."choices_orderby",
       "prodopts"."allowed_quantities",
       "prodopts"."productid",
       "prodopts"."optionid",
       "prodopts"."defaultchoiceid",
       "prodopts"."published",
       "prodopts"."created",
       "prodopts"."updated"
  FROM
"prodopts"
 INNER JOIN
"options"
    ON
("prodopts"."optionid" = "options"."id")
 WHERE
"prodopts"."productid" = 42675
 ORDER BY
"options"."sortorder" ASC
SELECT ••• FROM "prodopts" INNER JOIN "options" ON ("prodopts"."optionid" = "options"."id") WHERE "prodopts"."productid" = 42675 ORDER BY "options"."sortorder" ASC
  2 similar queries.   Duplicated 2 times.
2.96606160324967%
8.82

Connection: default

/usr/local/bin/gunicorn in <module>(8)
  sys.exit(run())
/usr/local/lib/python3.8/site-packages/gunicorn/app/wsgiapp.py in run(58)
  WSGIApplication("%(prog)s [OPTIONS] [APP_MODULE]").run()
/usr/local/lib/python3.8/site-packages/gunicorn/app/base.py in run(228)
  super().run()
/usr/local/lib/python3.8/site-packages/gunicorn/app/base.py in run(72)
  Arbiter(self).run()
/usr/local/lib/python3.8/site-packages/gunicorn/arbiter.py in run(211)
  self.manage_workers()
/usr/local/lib/python3.8/site-packages/gunicorn/arbiter.py in manage_workers(545)
  self.spawn_workers()
/usr/local/lib/python3.8/site-packages/gunicorn/arbiter.py in spawn_workers(616)
  self.spawn_worker()
/usr/local/lib/python3.8/site-packages/gunicorn/arbiter.py in spawn_worker(583)
  worker.init_process()
/usr/local/lib/python3.8/site-packages/gunicorn/workers/base.py in init_process(140)
  self.run()
/usr/local/lib/python3.8/site-packages/gunicorn/workers/sync.py in run(123)
  self.run_for_one(timeout)
/usr/local/lib/python3.8/site-packages/gunicorn/workers/sync.py in run_for_one(67)
  self.accept(listener)
/usr/local/lib/python3.8/site-packages/gunicorn/workers/sync.py in accept(29)
  self.handle(listener, client, addr)
/usr/local/lib/python3.8/site-packages/gunicorn/workers/sync.py in handle(134)
  self.handle_request(listener, req, client, addr)
/usr/local/lib/python3.8/site-packages/gunicorn/workers/sync.py in handle_request(175)
  respiter = self.wsgi(environ, resp.start_response)
/home/joe/eracks12/web/apps/products/views.py in product(446)
  return render (request, 'product.html', dict (
/usr/local/lib/python3.8/site-packages/django/shortcuts.py in render(36)
  content = loader.render_to_string(template_name, context, request, using=using)
/usr/local/lib/python3.8/site-packages/django/template/loader.py in render_to_string(62)
  return template.render(context, request)
/usr/local/lib/python3.8/site-packages/django/template/backends/django.py in render(61)
  return self.template.render(context)
/usr/local/lib/python3.8/site-packages/django/template/base.py in render(171)
  return self._render(context)
/usr/local/lib/python3.8/site-packages/django/test/utils.py in instrumented_test_render(96)
  return self.nodelist.render(context)
/usr/local/lib/python3.8/site-packages/django/template/base.py in render(937)
  bit = node.render_annotated(context)
/usr/local/lib/python3.8/site-packages/django/template/base.py in render_annotated(904)
  return self.render(context)
/usr/local/lib/python3.8/site-packages/django/template/loader_tags.py in render(150)
  return compiled_parent._render(context)
/usr/local/lib/python3.8/site-packages/django/test/utils.py in instrumented_test_render(96)
  return self.nodelist.render(context)
/usr/local/lib/python3.8/site-packages/django/template/base.py in render(937)
  bit = node.render_annotated(context)
/usr/local/lib/python3.8/site-packages/django/template/base.py in render_annotated(904)
  return self.render(context)
/usr/local/lib/python3.8/site-packages/django/template/loader_tags.py in render(62)
  result = block.nodelist.render(context)
/usr/local/lib/python3.8/site-packages/django/template/base.py in render(937)
  bit = node.render_annotated(context)
/usr/local/lib/python3.8/site-packages/django/template/base.py in render_annotated(904)
  return self.render(context)
/usr/local/lib/python3.8/site-packages/django/template/loader_tags.py in render(62)
  result = block.nodelist.render(context)
/usr/local/lib/python3.8/site-packages/django/template/base.py in render(937)
  bit = node.render_annotated(context)
/usr/local/lib/python3.8/site-packages/django/template/base.py in render_annotated(904)
  return self.render(context)
/usr/local/lib/python3.8/site-packages/django/template/base.py in render(987)
  output = self.filter_expression.resolve(context)
/usr/local/lib/python3.8/site-packages/django/template/base.py in resolve(671)
  obj = self.var.resolve(context)
/usr/local/lib/python3.8/site-packages/django/template/base.py in resolve(796)
  value = self._resolve_lookup(context)
/usr/local/lib/python3.8/site-packages/django/template/base.py in _resolve_lookup(837)
  current = getattr(current, bit)
/home/joe/eracks12/web/apps/products/models.py in prodopts_as_table(427)
  return ''.join ([po.as_rows for po in self.product_options()])
355 </tr>
356 </thead>
357 <tbody>
358 {{ product.prodopts_as_table|safe }}
359 <tr>
360 <td>Notes</td>
361 <td><textarea id=notes name=notes placeholder="Enter Product notes or Quote details here"></textarea></td>
362 <td>Enter notes or custom instructions for this item here</td>

/home/joe/eracks12/web/apps/products/templates/product.html

  +
SELECT "options"."id",
       "options"."name",
       "options"."usage_notes",
       "options"."sortorder",
       "options"."blurb",
       "options"."description",
       "options"."comments",
       "options"."published",
       "options"."created",
       "options"."updated"
  FROM
"options"
 WHERE
"options"."id" = 18849
SELECT ••• FROM "options" WHERE "options"."id" = 18849
  18 similar queries.   Duplicated 2 times.
2.3477679366102655%
6.98

Connection: default

/usr/local/bin/gunicorn in <module>(8)
  sys.exit(run())
/usr/local/lib/python3.8/site-packages/gunicorn/app/wsgiapp.py in run(58)
  WSGIApplication("%(prog)s [OPTIONS] [APP_MODULE]").run()
/usr/local/lib/python3.8/site-packages/gunicorn/app/base.py in run(228)
  super().run()
/usr/local/lib/python3.8/site-packages/gunicorn/app/base.py in run(72)
  Arbiter(self).run()
/usr/local/lib/python3.8/site-packages/gunicorn/arbiter.py in run(211)
  self.manage_workers()
/usr/local/lib/python3.8/site-packages/gunicorn/arbiter.py in manage_workers(545)
  self.spawn_workers()
/usr/local/lib/python3.8/site-packages/gunicorn/arbiter.py in spawn_workers(616)
  self.spawn_worker()
/usr/local/lib/python3.8/site-packages/gunicorn/arbiter.py in spawn_worker(583)
  worker.init_process()
/usr/local/lib/python3.8/site-packages/gunicorn/workers/base.py in init_process(140)
  self.run()
/usr/local/lib/python3.8/site-packages/gunicorn/workers/sync.py in run(123)
  self.run_for_one(timeout)
/usr/local/lib/python3.8/site-packages/gunicorn/workers/sync.py in run_for_one(67)
  self.accept(listener)
/usr/local/lib/python3.8/site-packages/gunicorn/workers/sync.py in accept(29)
  self.handle(listener, client, addr)
/usr/local/lib/python3.8/site-packages/gunicorn/workers/sync.py in handle(134)
  self.handle_request(listener, req, client, addr)
/usr/local/lib/python3.8/site-packages/gunicorn/workers/sync.py in handle_request(175)
  respiter = self.wsgi(environ, resp.start_response)
/home/joe/eracks12/web/apps/products/views.py in product(446)
  return render (request, 'product.html', dict (
/usr/local/lib/python3.8/site-packages/django/shortcuts.py in render(36)
  content = loader.render_to_string(template_name, context, request, using=using)
/usr/local/lib/python3.8/site-packages/django/template/loader.py in render_to_string(62)
  return template.render(context, request)
/usr/local/lib/python3.8/site-packages/django/template/backends/django.py in render(61)
  return self.template.render(context)
/usr/local/lib/python3.8/site-packages/django/template/base.py in render(171)
  return self._render(context)
/usr/local/lib/python3.8/site-packages/django/test/utils.py in instrumented_test_render(96)
  return self.nodelist.render(context)
/usr/local/lib/python3.8/site-packages/django/template/base.py in render(937)
  bit = node.render_annotated(context)
/usr/local/lib/python3.8/site-packages/django/template/base.py in render_annotated(904)
  return self.render(context)
/usr/local/lib/python3.8/site-packages/django/template/loader_tags.py in render(150)
  return compiled_parent._render(context)
/usr/local/lib/python3.8/site-packages/django/test/utils.py in instrumented_test_render(96)
  return self.nodelist.render(context)
/usr/local/lib/python3.8/site-packages/django/template/base.py in render(937)
  bit = node.render_annotated(context)
/usr/local/lib/python3.8/site-packages/django/template/base.py in render_annotated(904)
  return self.render(context)
/usr/local/lib/python3.8/site-packages/django/template/loader_tags.py in render(62)
  result = block.nodelist.render(context)
/usr/local/lib/python3.8/site-packages/django/template/base.py in render(937)
  bit = node.render_annotated(context)
/usr/local/lib/python3.8/site-packages/django/template/base.py in render_annotated(904)
  return self.render(context)
/usr/local/lib/python3.8/site-packages/django/template/loader_tags.py in render(62)
  result = block.nodelist.render(context)
/usr/local/lib/python3.8/site-packages/django/template/base.py in render(937)
  bit = node.render_annotated(context)
/usr/local/lib/python3.8/site-packages/django/template/base.py in render_annotated(904)
  return self.render(context)
/usr/local/lib/python3.8/site-packages/django/template/base.py in render(987)
  output = self.filter_expression.resolve(context)
/usr/local/lib/python3.8/site-packages/django/template/base.py in resolve(671)
  obj = self.var.resolve(context)
/usr/local/lib/python3.8/site-packages/django/template/base.py in resolve(796)
  value = self._resolve_lookup(context)
/usr/local/lib/python3.8/site-packages/django/template/base.py in _resolve_lookup(837)
  current = getattr(current, bit)
/home/joe/eracks12/web/apps/products/models.py in prodopts_as_table(427)
  return ''.join ([po.as_rows for po in self.product_options()])
/home/joe/eracks12/web/apps/products/models.py in <listcomp>(427)
  return ''.join ([po.as_rows for po in self.product_options()])
/home/joe/eracks12/web/apps/products/models.py in as_rows(540)
  .td (self.calc_name, cls=lineid, title=(self.option.blurb or self.calc_name + ' option'))
/home/joe/eracks12/web/apps/products/models.py in calc_name(477)
  return self.name or self.option.name  # or self.option.display_name
355 </tr>
356 </thead>
357 <tbody>
358 {{ product.prodopts_as_table|safe }}
359 <tr>
360 <td>Notes</td>
361 <td><textarea id=notes name=notes placeholder="Enter Product notes or Quote details here"></textarea></td>
362 <td>Enter notes or custom instructions for this item here</td>

/home/joe/eracks12/web/apps/products/templates/product.html

  +
SELECT "choices"."id",
       "choices"."name",
       "choices"."source",
       "choices"."price",
       "choices"."cost",
       "choices"."sortorder",
       "choices"."multiplier",
       "choices"."comment",
       "choices"."choicecategory_id",
       "choices"."blurb",
       "choices"."published",
       "choices"."created",
       "choices"."updated"
  FROM
"choices"
 WHERE
"choices"."id" = 42584
SELECT ••• FROM "choices" WHERE "choices"."id" = 42584
  11 similar queries.   Duplicated 2 times.
3.1601052646771577%
9.40

Connection: default

/usr/local/bin/gunicorn in <module>(8)
  sys.exit(run())
/usr/local/lib/python3.8/site-packages/gunicorn/app/wsgiapp.py in run(58)
  WSGIApplication("%(prog)s [OPTIONS] [APP_MODULE]").run()
/usr/local/lib/python3.8/site-packages/gunicorn/app/base.py in run(228)
  super().run()
/usr/local/lib/python3.8/site-packages/gunicorn/app/base.py in run(72)
  Arbiter(self).run()
/usr/local/lib/python3.8/site-packages/gunicorn/arbiter.py in run(211)
  self.manage_workers()
/usr/local/lib/python3.8/site-packages/gunicorn/arbiter.py in manage_workers(545)
  self.spawn_workers()
/usr/local/lib/python3.8/site-packages/gunicorn/arbiter.py in spawn_workers(616)
  self.spawn_worker()
/usr/local/lib/python3.8/site-packages/gunicorn/arbiter.py in spawn_worker(583)
  worker.init_process()
/usr/local/lib/python3.8/site-packages/gunicorn/workers/base.py in init_process(140)
  self.run()
/usr/local/lib/python3.8/site-packages/gunicorn/workers/sync.py in run(123)
  self.run_for_one(timeout)
/usr/local/lib/python3.8/site-packages/gunicorn/workers/sync.py in run_for_one(67)
  self.accept(listener)
/usr/local/lib/python3.8/site-packages/gunicorn/workers/sync.py in accept(29)
  self.handle(listener, client, addr)
/usr/local/lib/python3.8/site-packages/gunicorn/workers/sync.py in handle(134)
  self.handle_request(listener, req, client, addr)
/usr/local/lib/python3.8/site-packages/gunicorn/workers/sync.py in handle_request(175)
  respiter = self.wsgi(environ, resp.start_response)
/home/joe/eracks12/web/apps/products/views.py in product(446)
  return render (request, 'product.html', dict (
/usr/local/lib/python3.8/site-packages/django/shortcuts.py in render(36)
  content = loader.render_to_string(template_name, context, request, using=using)
/usr/local/lib/python3.8/site-packages/django/template/loader.py in render_to_string(62)
  return template.render(context, request)
/usr/local/lib/python3.8/site-packages/django/template/backends/django.py in render(61)
  return self.template.render(context)
/usr/local/lib/python3.8/site-packages/django/template/base.py in render(171)
  return self._render(context)
/usr/local/lib/python3.8/site-packages/django/test/utils.py in instrumented_test_render(96)
  return self.nodelist.render(context)
/usr/local/lib/python3.8/site-packages/django/template/base.py in render(937)
  bit = node.render_annotated(context)
/usr/local/lib/python3.8/site-packages/django/template/base.py in render_annotated(904)
  return self.render(context)
/usr/local/lib/python3.8/site-packages/django/template/loader_tags.py in render(150)
  return compiled_parent._render(context)
/usr/local/lib/python3.8/site-packages/django/test/utils.py in instrumented_test_render(96)
  return self.nodelist.render(context)
/usr/local/lib/python3.8/site-packages/django/template/base.py in render(937)
  bit = node.render_annotated(context)
/usr/local/lib/python3.8/site-packages/django/template/base.py in render_annotated(904)
  return self.render(context)
/usr/local/lib/python3.8/site-packages/django/template/loader_tags.py in render(62)
  result = block.nodelist.render(context)
/usr/local/lib/python3.8/site-packages/django/template/base.py in render(937)
  bit = node.render_annotated(context)
/usr/local/lib/python3.8/site-packages/django/template/base.py in render_annotated(904)
  return self.render(context)
/usr/local/lib/python3.8/site-packages/django/template/loader_tags.py in render(62)
  result = block.nodelist.render(context)
/usr/local/lib/python3.8/site-packages/django/template/base.py in render(937)
  bit = node.render_annotated(context)
/usr/local/lib/python3.8/site-packages/django/template/base.py in render_annotated(904)
  return self.render(context)
/usr/local/lib/python3.8/site-packages/django/template/base.py in render(987)
  output = self.filter_expression.resolve(context)
/usr/local/lib/python3.8/site-packages/django/template/base.py in resolve(671)
  obj = self.var.resolve(context)
/usr/local/lib/python3.8/site-packages/django/template/base.py in resolve(796)
  value = self._resolve_lookup(context)
/usr/local/lib/python3.8/site-packages/django/template/base.py in _resolve_lookup(837)
  current = getattr(current, bit)
/home/joe/eracks12/web/apps/products/models.py in prodopts_as_table(427)
  return ''.join ([po.as_rows for po in self.product_options()])
/home/joe/eracks12/web/apps/products/models.py in <listcomp>(427)
  return ''.join ([po.as_rows for po in self.product_options()])
/home/joe/eracks12/web/apps/products/models.py in as_rows(541)
  .td (self.as_combos (lineid), cls=lineid + ' dropdowns')
/home/joe/eracks12/web/apps/products/models.py in as_combos(505)
  if self.defaultchoice:
355 </tr>
356 </thead>
357 <tbody>
358 {{ product.prodopts_as_table|safe }}
359 <tr>
360 <td>Notes</td>
361 <td><textarea id=notes name=notes placeholder="Enter Product notes or Quote details here"></textarea></td>
362 <td>Enter notes or custom instructions for this item here</td>

/home/joe/eracks12/web/apps/products/templates/product.html

  +
SELECT COUNT(*) AS "__count"
  FROM
"choices"
 INNER JOIN
"prodoptchoices"
    ON
("choices"."id" = "prodoptchoices"."choiceid")
 WHERE
"prodoptchoices"."productoptionid" = 42679
SELECT ••• FROM "choices" INNER JOIN "prodoptchoices" ON ("choices"."id" = "prodoptchoices"."choiceid") WHERE "prodoptchoices"."productoptionid" = 42679
  18 similar queries.   Duplicated 2 times.
2.41848963470078%
7.19

Connection: default

/usr/local/bin/gunicorn in <module>(8)
  sys.exit(run())
/usr/local/lib/python3.8/site-packages/gunicorn/app/wsgiapp.py in run(58)
  WSGIApplication("%(prog)s [OPTIONS] [APP_MODULE]").run()
/usr/local/lib/python3.8/site-packages/gunicorn/app/base.py in run(228)
  super().run()
/usr/local/lib/python3.8/site-packages/gunicorn/app/base.py in run(72)
  Arbiter(self).run()
/usr/local/lib/python3.8/site-packages/gunicorn/arbiter.py in run(211)
  self.manage_workers()
/usr/local/lib/python3.8/site-packages/gunicorn/arbiter.py in manage_workers(545)
  self.spawn_workers()
/usr/local/lib/python3.8/site-packages/gunicorn/arbiter.py in spawn_workers(616)
  self.spawn_worker()
/usr/local/lib/python3.8/site-packages/gunicorn/arbiter.py in spawn_worker(583)
  worker.init_process()
/usr/local/lib/python3.8/site-packages/gunicorn/workers/base.py in init_process(140)
  self.run()
/usr/local/lib/python3.8/site-packages/gunicorn/workers/sync.py in run(123)
  self.run_for_one(timeout)
/usr/local/lib/python3.8/site-packages/gunicorn/workers/sync.py in run_for_one(67)
  self.accept(listener)
/usr/local/lib/python3.8/site-packages/gunicorn/workers/sync.py in accept(29)
  self.handle(listener, client, addr)
/usr/local/lib/python3.8/site-packages/gunicorn/workers/sync.py in handle(134)
  self.handle_request(listener, req, client, addr)
/usr/local/lib/python3.8/site-packages/gunicorn/workers/sync.py in handle_request(175)
  respiter = self.wsgi(environ, resp.start_response)
/home/joe/eracks12/web/apps/products/views.py in product(446)
  return render (request, 'product.html', dict (
/usr/local/lib/python3.8/site-packages/django/shortcuts.py in render(36)
  content = loader.render_to_string(template_name, context, request, using=using)
/usr/local/lib/python3.8/site-packages/django/template/loader.py in render_to_string(62)
  return template.render(context, request)
/usr/local/lib/python3.8/site-packages/django/template/backends/django.py in render(61)
  return self.template.render(context)
/usr/local/lib/python3.8/site-packages/django/template/base.py in render(171)
  return self._render(context)
/usr/local/lib/python3.8/site-packages/django/test/utils.py in instrumented_test_render(96)
  return self.nodelist.render(context)
/usr/local/lib/python3.8/site-packages/django/template/base.py in render(937)
  bit = node.render_annotated(context)
/usr/local/lib/python3.8/site-packages/django/template/base.py in render_annotated(904)
  return self.render(context)
/usr/local/lib/python3.8/site-packages/django/template/loader_tags.py in render(150)
  return compiled_parent._render(context)
/usr/local/lib/python3.8/site-packages/django/test/utils.py in instrumented_test_render(96)
  return self.nodelist.render(context)
/usr/local/lib/python3.8/site-packages/django/template/base.py in render(937)
  bit = node.render_annotated(context)
/usr/local/lib/python3.8/site-packages/django/template/base.py in render_annotated(904)
  return self.render(context)
/usr/local/lib/python3.8/site-packages/django/template/loader_tags.py in render(62)
  result = block.nodelist.render(context)
/usr/local/lib/python3.8/site-packages/django/template/base.py in render(937)
  bit = node.render_annotated(context)
/usr/local/lib/python3.8/site-packages/django/template/base.py in render_annotated(904)
  return self.render(context)
/usr/local/lib/python3.8/site-packages/django/template/loader_tags.py in render(62)
  result = block.nodelist.render(context)
/usr/local/lib/python3.8/site-packages/django/template/base.py in render(937)
  bit = node.render_annotated(context)
/usr/local/lib/python3.8/site-packages/django/template/base.py in render_annotated(904)
  return self.render(context)
/usr/local/lib/python3.8/site-packages/django/template/base.py in render(987)
  output = self.filter_expression.resolve(context)
/usr/local/lib/python3.8/site-packages/django/template/base.py in resolve(671)
  obj = self.var.resolve(context)
/usr/local/lib/python3.8/site-packages/django/template/base.py in resolve(796)
  value = self._resolve_lookup(context)
/usr/local/lib/python3.8/site-packages/django/template/base.py in _resolve_lookup(837)
  current = getattr(current, bit)
/home/joe/eracks12/web/apps/products/models.py in prodopts_as_table(427)
  return ''.join ([po.as_rows for po in self.product_options()])
/home/joe/eracks12/web/apps/products/models.py in <listcomp>(427)
  return ''.join ([po.as_rows for po in self.product_options()])
/home/joe/eracks12/web/apps/products/models.py in as_rows(541)
  .td (self.as_combos (lineid), cls=lineid + ' dropdowns')
/home/joe/eracks12/web/apps/products/models.py in as_combos(523)
  [(self.choice_name_and_price (c), '%s,%s' % (lineid, c.id)) for c in self.all_choices()],
/home/joe/eracks12/web/apps/products/models.py in all_choices(499)
  if self.choices.count():  # POCs - yuk - TODO: remove them
355 </tr>
356 </thead>
357 <tbody>
358 {{ product.prodopts_as_table|safe }}
359 <tr>
360 <td>Notes</td>
361 <td><textarea id=notes name=notes placeholder="Enter Product notes or Quote details here"></textarea></td>
362 <td>Enter notes or custom instructions for this item here</td>

/home/joe/eracks12/web/apps/products/templates/product.html

  +
SELECT "choices"."id",
       "choices"."name",
       "choices"."source",
       "choices"."price",
       "choices"."cost",
       "choices"."sortorder",
       "choices"."multiplier",
       "choices"."comment",
       "choices"."choicecategory_id",
       "choices"."blurb",
       "choices"."published",
       "choices"."created",
       "choices"."updated"
  FROM
"choices"
 WHERE
"choices"."id" IN (30, 42584)
 ORDER BY
"choices"."cost" ASC, "choices"."sortorder" ASC
SELECT ••• FROM "choices" WHERE "choices"."id" IN (30, 42584) ORDER BY "choices"."cost" ASC, "choices"."sortorder" ASC
  4 similar queries.   Duplicated 2 times.
0.6801951983013963%
2.02

Connection: default

/usr/local/bin/gunicorn in <module>(8)
  sys.exit(run())
/usr/local/lib/python3.8/site-packages/gunicorn/app/wsgiapp.py in run(58)
  WSGIApplication("%(prog)s [OPTIONS] [APP_MODULE]").run()
/usr/local/lib/python3.8/site-packages/gunicorn/app/base.py in run(228)
  super().run()
/usr/local/lib/python3.8/site-packages/gunicorn/app/base.py in run(72)
  Arbiter(self).run()
/usr/local/lib/python3.8/site-packages/gunicorn/arbiter.py in run(211)
  self.manage_workers()
/usr/local/lib/python3.8/site-packages/gunicorn/arbiter.py in manage_workers(545)
  self.spawn_workers()
/usr/local/lib/python3.8/site-packages/gunicorn/arbiter.py in spawn_workers(616)
  self.spawn_worker()
/usr/local/lib/python3.8/site-packages/gunicorn/arbiter.py in spawn_worker(583)
  worker.init_process()
/usr/local/lib/python3.8/site-packages/gunicorn/workers/base.py in init_process(140)
  self.run()
/usr/local/lib/python3.8/site-packages/gunicorn/workers/sync.py in run(123)
  self.run_for_one(timeout)
/usr/local/lib/python3.8/site-packages/gunicorn/workers/sync.py in run_for_one(67)
  self.accept(listener)
/usr/local/lib/python3.8/site-packages/gunicorn/workers/sync.py in accept(29)
  self.handle(listener, client, addr)
/usr/local/lib/python3.8/site-packages/gunicorn/workers/sync.py in handle(134)
  self.handle_request(listener, req, client, addr)
/usr/local/lib/python3.8/site-packages/gunicorn/workers/sync.py in handle_request(175)
  respiter = self.wsgi(environ, resp.start_response)
/home/joe/eracks12/web/apps/products/views.py in product(446)
  return render (request, 'product.html', dict (
/usr/local/lib/python3.8/site-packages/django/shortcuts.py in render(36)
  content = loader.render_to_string(template_name, context, request, using=using)
/usr/local/lib/python3.8/site-packages/django/template/loader.py in render_to_string(62)
  return template.render(context, request)
/usr/local/lib/python3.8/site-packages/django/template/backends/django.py in render(61)
  return self.template.render(context)
/usr/local/lib/python3.8/site-packages/django/template/base.py in render(171)
  return self._render(context)
/usr/local/lib/python3.8/site-packages/django/test/utils.py in instrumented_test_render(96)
  return self.nodelist.render(context)
/usr/local/lib/python3.8/site-packages/django/template/base.py in render(937)
  bit = node.render_annotated(context)
/usr/local/lib/python3.8/site-packages/django/template/base.py in render_annotated(904)
  return self.render(context)
/usr/local/lib/python3.8/site-packages/django/template/loader_tags.py in render(150)
  return compiled_parent._render(context)
/usr/local/lib/python3.8/site-packages/django/test/utils.py in instrumented_test_render(96)
  return self.nodelist.render(context)
/usr/local/lib/python3.8/site-packages/django/template/base.py in render(937)
  bit = node.render_annotated(context)
/usr/local/lib/python3.8/site-packages/django/template/base.py in render_annotated(904)
  return self.render(context)
/usr/local/lib/python3.8/site-packages/django/template/loader_tags.py in render(62)
  result = block.nodelist.render(context)
/usr/local/lib/python3.8/site-packages/django/template/base.py in render(937)
  bit = node.render_annotated(context)
/usr/local/lib/python3.8/site-packages/django/template/base.py in render_annotated(904)
  return self.render(context)
/usr/local/lib/python3.8/site-packages/django/template/loader_tags.py in render(62)
  result = block.nodelist.render(context)
/usr/local/lib/python3.8/site-packages/django/template/base.py in render(937)
  bit = node.render_annotated(context)
/usr/local/lib/python3.8/site-packages/django/template/base.py in render_annotated(904)
  return self.render(context)
/usr/local/lib/python3.8/site-packages/django/template/base.py in render(987)
  output = self.filter_expression.resolve(context)
/usr/local/lib/python3.8/site-packages/django/template/base.py in resolve(671)
  obj = self.var.resolve(context)
/usr/local/lib/python3.8/site-packages/django/template/base.py in resolve(796)
  value = self._resolve_lookup(context)
/usr/local/lib/python3.8/site-packages/django/template/base.py in _resolve_lookup(837)
  current = getattr(current, bit)
/home/joe/eracks12/web/apps/products/models.py in prodopts_as_table(427)
  return ''.join ([po.as_rows for po in self.product_options()])
/home/joe/eracks12/web/apps/products/models.py in <listcomp>(427)
  return ''.join ([po.as_rows for po in self.product_options()])
/home/joe/eracks12/web/apps/products/models.py in as_rows(541)
  .td (self.as_combos (lineid), cls=lineid + ' dropdowns')
/home/joe/eracks12/web/apps/products/models.py in as_combos(523)
  [(self.choice_name_and_price (c), '%s,%s' % (lineid, c.id)) for c in self.all_choices()],
355 </tr>
356 </thead>
357 <tbody>
358 {{ product.prodopts_as_table|safe }}
359 <tr>
360 <td>Notes</td>
361 <td><textarea id=notes name=notes placeholder="Enter Product notes or Quote details here"></textarea></td>
362 <td>Enter notes or custom instructions for this item here</td>

/home/joe/eracks12/web/apps/products/templates/product.html

  +
SELECT "options"."id",
       "options"."name",
       "options"."usage_notes",
       "options"."sortorder",
       "options"."blurb",
       "options"."description",
       "options"."comments",
       "options"."published",
       "options"."created",
       "options"."updated"
  FROM
"options"
 WHERE
"options"."id" = 5
SELECT ••• FROM "options" WHERE "options"."id" = 5
  18 similar queries.   Duplicated 2 times.
2.49338086601205%
7.41

Connection: default

/usr/local/bin/gunicorn in <module>(8)
  sys.exit(run())
/usr/local/lib/python3.8/site-packages/gunicorn/app/wsgiapp.py in run(58)
  WSGIApplication("%(prog)s [OPTIONS] [APP_MODULE]").run()
/usr/local/lib/python3.8/site-packages/gunicorn/app/base.py in run(228)
  super().run()
/usr/local/lib/python3.8/site-packages/gunicorn/app/base.py in run(72)
  Arbiter(self).run()
/usr/local/lib/python3.8/site-packages/gunicorn/arbiter.py in run(211)
  self.manage_workers()
/usr/local/lib/python3.8/site-packages/gunicorn/arbiter.py in manage_workers(545)
  self.spawn_workers()
/usr/local/lib/python3.8/site-packages/gunicorn/arbiter.py in spawn_workers(616)
  self.spawn_worker()
/usr/local/lib/python3.8/site-packages/gunicorn/arbiter.py in spawn_worker(583)
  worker.init_process()
/usr/local/lib/python3.8/site-packages/gunicorn/workers/base.py in init_process(140)
  self.run()
/usr/local/lib/python3.8/site-packages/gunicorn/workers/sync.py in run(123)
  self.run_for_one(timeout)
/usr/local/lib/python3.8/site-packages/gunicorn/workers/sync.py in run_for_one(67)
  self.accept(listener)
/usr/local/lib/python3.8/site-packages/gunicorn/workers/sync.py in accept(29)
  self.handle(listener, client, addr)
/usr/local/lib/python3.8/site-packages/gunicorn/workers/sync.py in handle(134)
  self.handle_request(listener, req, client, addr)
/usr/local/lib/python3.8/site-packages/gunicorn/workers/sync.py in handle_request(175)
  respiter = self.wsgi(environ, resp.start_response)
/home/joe/eracks12/web/apps/products/views.py in product(446)
  return render (request, 'product.html', dict (
/usr/local/lib/python3.8/site-packages/django/shortcuts.py in render(36)
  content = loader.render_to_string(template_name, context, request, using=using)
/usr/local/lib/python3.8/site-packages/django/template/loader.py in render_to_string(62)
  return template.render(context, request)
/usr/local/lib/python3.8/site-packages/django/template/backends/django.py in render(61)
  return self.template.render(context)
/usr/local/lib/python3.8/site-packages/django/template/base.py in render(171)
  return self._render(context)
/usr/local/lib/python3.8/site-packages/django/test/utils.py in instrumented_test_render(96)
  return self.nodelist.render(context)
/usr/local/lib/python3.8/site-packages/django/template/base.py in render(937)
  bit = node.render_annotated(context)
/usr/local/lib/python3.8/site-packages/django/template/base.py in render_annotated(904)
  return self.render(context)
/usr/local/lib/python3.8/site-packages/django/template/loader_tags.py in render(150)
  return compiled_parent._render(context)
/usr/local/lib/python3.8/site-packages/django/test/utils.py in instrumented_test_render(96)
  return self.nodelist.render(context)
/usr/local/lib/python3.8/site-packages/django/template/base.py in render(937)
  bit = node.render_annotated(context)
/usr/local/lib/python3.8/site-packages/django/template/base.py in render_annotated(904)
  return self.render(context)
/usr/local/lib/python3.8/site-packages/django/template/loader_tags.py in render(62)
  result = block.nodelist.render(context)
/usr/local/lib/python3.8/site-packages/django/template/base.py in render(937)
  bit = node.render_annotated(context)
/usr/local/lib/python3.8/site-packages/django/template/base.py in render_annotated(904)
  return self.render(context)
/usr/local/lib/python3.8/site-packages/django/template/loader_tags.py in render(62)
  result = block.nodelist.render(context)
/usr/local/lib/python3.8/site-packages/django/template/base.py in render(937)
  bit = node.render_annotated(context)
/usr/local/lib/python3.8/site-packages/django/template/base.py in render_annotated(904)
  return self.render(context)
/usr/local/lib/python3.8/site-packages/django/template/base.py in render(987)
  output = self.filter_expression.resolve(context)
/usr/local/lib/python3.8/site-packages/django/template/base.py in resolve(671)
  obj = self.var.resolve(context)
/usr/local/lib/python3.8/site-packages/django/template/base.py in resolve(796)
  value = self._resolve_lookup(context)
/usr/local/lib/python3.8/site-packages/django/template/base.py in _resolve_lookup(837)
  current = getattr(current, bit)
/home/joe/eracks12/web/apps/products/models.py in prodopts_as_table(427)
  return ''.join ([po.as_rows for po in self.product_options()])
/home/joe/eracks12/web/apps/products/models.py in <listcomp>(427)
  return ''.join ([po.as_rows for po in self.product_options()])
/home/joe/eracks12/web/apps/products/models.py in as_rows(540)
  .td (self.calc_name, cls=lineid, title=(self.option.blurb or self.calc_name + ' option'))
/home/joe/eracks12/web/apps/products/models.py in calc_name(477)
  return self.name or self.option.name  # or self.option.display_name
355 </tr>
356 </thead>
357 <tbody>
358 {{ product.prodopts_as_table|safe }}
359 <tr>
360 <td>Notes</td>
361 <td><textarea id=notes name=notes placeholder="Enter Product notes or Quote details here"></textarea></td>
362 <td>Enter notes or custom instructions for this item here</td>

/home/joe/eracks12/web/apps/products/templates/product.html

  +
SELECT "choices"."id",
       "choices"."name",
       "choices"."source",
       "choices"."price",
       "choices"."cost",
       "choices"."sortorder",
       "choices"."multiplier",
       "choices"."comment",
       "choices"."choicecategory_id",
       "choices"."blurb",
       "choices"."published",
       "choices"."created",
       "choices"."updated"
  FROM
"choices"
 WHERE
"choices"."id" = 5292
SELECT ••• FROM "choices" WHERE "choices"."id" = 5292
  11 similar queries.
2.4113533182267934%
7.17

Connection: default

/usr/local/bin/gunicorn in <module>(8)
  sys.exit(run())
/usr/local/lib/python3.8/site-packages/gunicorn/app/wsgiapp.py in run(58)
  WSGIApplication("%(prog)s [OPTIONS] [APP_MODULE]").run()
/usr/local/lib/python3.8/site-packages/gunicorn/app/base.py in run(228)
  super().run()
/usr/local/lib/python3.8/site-packages/gunicorn/app/base.py in run(72)
  Arbiter(self).run()
/usr/local/lib/python3.8/site-packages/gunicorn/arbiter.py in run(211)
  self.manage_workers()
/usr/local/lib/python3.8/site-packages/gunicorn/arbiter.py in manage_workers(545)
  self.spawn_workers()
/usr/local/lib/python3.8/site-packages/gunicorn/arbiter.py in spawn_workers(616)
  self.spawn_worker()
/usr/local/lib/python3.8/site-packages/gunicorn/arbiter.py in spawn_worker(583)
  worker.init_process()
/usr/local/lib/python3.8/site-packages/gunicorn/workers/base.py in init_process(140)
  self.run()
/usr/local/lib/python3.8/site-packages/gunicorn/workers/sync.py in run(123)
  self.run_for_one(timeout)
/usr/local/lib/python3.8/site-packages/gunicorn/workers/sync.py in run_for_one(67)
  self.accept(listener)
/usr/local/lib/python3.8/site-packages/gunicorn/workers/sync.py in accept(29)
  self.handle(listener, client, addr)
/usr/local/lib/python3.8/site-packages/gunicorn/workers/sync.py in handle(134)
  self.handle_request(listener, req, client, addr)
/usr/local/lib/python3.8/site-packages/gunicorn/workers/sync.py in handle_request(175)
  respiter = self.wsgi(environ, resp.start_response)
/home/joe/eracks12/web/apps/products/views.py in product(446)
  return render (request, 'product.html', dict (
/usr/local/lib/python3.8/site-packages/django/shortcuts.py in render(36)
  content = loader.render_to_string(template_name, context, request, using=using)
/usr/local/lib/python3.8/site-packages/django/template/loader.py in render_to_string(62)
  return template.render(context, request)
/usr/local/lib/python3.8/site-packages/django/template/backends/django.py in render(61)
  return self.template.render(context)
/usr/local/lib/python3.8/site-packages/django/template/base.py in render(171)
  return self._render(context)
/usr/local/lib/python3.8/site-packages/django/test/utils.py in instrumented_test_render(96)
  return self.nodelist.render(context)
/usr/local/lib/python3.8/site-packages/django/template/base.py in render(937)
  bit = node.render_annotated(context)
/usr/local/lib/python3.8/site-packages/django/template/base.py in render_annotated(904)
  return self.render(context)
/usr/local/lib/python3.8/site-packages/django/template/loader_tags.py in render(150)
  return compiled_parent._render(context)
/usr/local/lib/python3.8/site-packages/django/test/utils.py in instrumented_test_render(96)
  return self.nodelist.render(context)
/usr/local/lib/python3.8/site-packages/django/template/base.py in render(937)
  bit = node.render_annotated(context)
/usr/local/lib/python3.8/site-packages/django/template/base.py in render_annotated(904)
  return self.render(context)
/usr/local/lib/python3.8/site-packages/django/template/loader_tags.py in render(62)
  result = block.nodelist.render(context)
/usr/local/lib/python3.8/site-packages/django/template/base.py in render(937)
  bit = node.render_annotated(context)
/usr/local/lib/python3.8/site-packages/django/template/base.py in render_annotated(904)
  return self.render(context)
/usr/local/lib/python3.8/site-packages/django/template/loader_tags.py in render(62)
  result = block.nodelist.render(context)
/usr/local/lib/python3.8/site-packages/django/template/base.py in render(937)
  bit = node.render_annotated(context)
/usr/local/lib/python3.8/site-packages/django/template/base.py in render_annotated(904)
  return self.render(context)
/usr/local/lib/python3.8/site-packages/django/template/base.py in render(987)
  output = self.filter_expression.resolve(context)
/usr/local/lib/python3.8/site-packages/django/template/base.py in resolve(671)
  obj = self.var.resolve(context)
/usr/local/lib/python3.8/site-packages/django/template/base.py in resolve(796)
  value = self._resolve_lookup(context)
/usr/local/lib/python3.8/site-packages/django/template/base.py in _resolve_lookup(837)
  current = getattr(current, bit)
/home/joe/eracks12/web/apps/products/models.py in prodopts_as_table(427)
  return ''.join ([po.as_rows for po in self.product_options()])
/home/joe/eracks12/web/apps/products/models.py in <listcomp>(427)
  return ''.join ([po.as_rows for po in self.product_options()])
/home/joe/eracks12/web/apps/products/models.py in as_rows(541)
  .td (self.as_combos (lineid), cls=lineid + ' dropdowns')
/home/joe/eracks12/web/apps/products/models.py in as_combos(505)
  if self.defaultchoice:
355 </tr>
356 </thead>
357 <tbody>
358 {{ product.prodopts_as_table|safe }}
359 <tr>
360 <td>Notes</td>
361 <td><textarea id=notes name=notes placeholder="Enter Product notes or Quote details here"></textarea></td>
362 <td>Enter notes or custom instructions for this item here</td>

/home/joe/eracks12/web/apps/products/templates/product.html

  +
SELECT COUNT(*) AS "__count"
  FROM
"choices"
 INNER JOIN
"prodoptchoices"
    ON
("choices"."id" = "prodoptchoices"."choiceid")
 WHERE
"prodoptchoices"."productoptionid" = 43146
SELECT ••• FROM "choices" INNER JOIN "prodoptchoices" ON ("choices"."id" = "prodoptchoices"."choiceid") WHERE "prodoptchoices"."productoptionid" = 43146
  18 similar queries.   Duplicated 2 times.
0.2909853088100633%
0.87

Connection: default

/usr/local/bin/gunicorn in <module>(8)
  sys.exit(run())
/usr/local/lib/python3.8/site-packages/gunicorn/app/wsgiapp.py in run(58)
  WSGIApplication("%(prog)s [OPTIONS] [APP_MODULE]").run()
/usr/local/lib/python3.8/site-packages/gunicorn/app/base.py in run(228)
  super().run()
/usr/local/lib/python3.8/site-packages/gunicorn/app/base.py in run(72)
  Arbiter(self).run()
/usr/local/lib/python3.8/site-packages/gunicorn/arbiter.py in run(211)
  self.manage_workers()
/usr/local/lib/python3.8/site-packages/gunicorn/arbiter.py in manage_workers(545)
  self.spawn_workers()
/usr/local/lib/python3.8/site-packages/gunicorn/arbiter.py in spawn_workers(616)
  self.spawn_worker()
/usr/local/lib/python3.8/site-packages/gunicorn/arbiter.py in spawn_worker(583)
  worker.init_process()
/usr/local/lib/python3.8/site-packages/gunicorn/workers/base.py in init_process(140)
  self.run()
/usr/local/lib/python3.8/site-packages/gunicorn/workers/sync.py in run(123)
  self.run_for_one(timeout)
/usr/local/lib/python3.8/site-packages/gunicorn/workers/sync.py in run_for_one(67)
  self.accept(listener)
/usr/local/lib/python3.8/site-packages/gunicorn/workers/sync.py in accept(29)
  self.handle(listener, client, addr)
/usr/local/lib/python3.8/site-packages/gunicorn/workers/sync.py in handle(134)
  self.handle_request(listener, req, client, addr)
/usr/local/lib/python3.8/site-packages/gunicorn/workers/sync.py in handle_request(175)
  respiter = self.wsgi(environ, resp.start_response)
/home/joe/eracks12/web/apps/products/views.py in product(446)
  return render (request, 'product.html', dict (
/usr/local/lib/python3.8/site-packages/django/shortcuts.py in render(36)
  content = loader.render_to_string(template_name, context, request, using=using)
/usr/local/lib/python3.8/site-packages/django/template/loader.py in render_to_string(62)
  return template.render(context, request)
/usr/local/lib/python3.8/site-packages/django/template/backends/django.py in render(61)
  return self.template.render(context)
/usr/local/lib/python3.8/site-packages/django/template/base.py in render(171)
  return self._render(context)
/usr/local/lib/python3.8/site-packages/django/test/utils.py in instrumented_test_render(96)
  return self.nodelist.render(context)
/usr/local/lib/python3.8/site-packages/django/template/base.py in render(937)
  bit = node.render_annotated(context)
/usr/local/lib/python3.8/site-packages/django/template/base.py in render_annotated(904)
  return self.render(context)
/usr/local/lib/python3.8/site-packages/django/template/loader_tags.py in render(150)
  return compiled_parent._render(context)
/usr/local/lib/python3.8/site-packages/django/test/utils.py in instrumented_test_render(96)
  return self.nodelist.render(context)
/usr/local/lib/python3.8/site-packages/django/template/base.py in render(937)
  bit = node.render_annotated(context)
/usr/local/lib/python3.8/site-packages/django/template/base.py in render_annotated(904)
  return self.render(context)
/usr/local/lib/python3.8/site-packages/django/template/loader_tags.py in render(62)
  result = block.nodelist.render(context)
/usr/local/lib/python3.8/site-packages/django/template/base.py in render(937)
  bit = node.render_annotated(context)
/usr/local/lib/python3.8/site-packages/django/template/base.py in render_annotated(904)
  return self.render(context)
/usr/local/lib/python3.8/site-packages/django/template/loader_tags.py in render(62)
  result = block.nodelist.render(context)
/usr/local/lib/python3.8/site-packages/django/template/base.py in render(937)
  bit = node.render_annotated(context)
/usr/local/lib/python3.8/site-packages/django/template/base.py in render_annotated(904)
  return self.render(context)
/usr/local/lib/python3.8/site-packages/django/template/base.py in render(987)
  output = self.filter_expression.resolve(context)
/usr/local/lib/python3.8/site-packages/django/template/base.py in resolve(671)
  obj = self.var.resolve(context)
/usr/local/lib/python3.8/site-packages/django/template/base.py in resolve(796)
  value = self._resolve_lookup(context)
/usr/local/lib/python3.8/site-packages/django/template/base.py in _resolve_lookup(837)
  current = getattr(current, bit)
/home/joe/eracks12/web/apps/products/models.py in prodopts_as_table(427)
  return ''.join ([po.as_rows for po in self.product_options()])
/home/joe/eracks12/web/apps/products/models.py in <listcomp>(427)
  return ''.join ([po.as_rows for po in self.product_options()])
/home/joe/eracks12/web/apps/products/models.py in as_rows(541)
  .td (self.as_combos (lineid), cls=lineid + ' dropdowns')
/home/joe/eracks12/web/apps/products/models.py in as_combos(523)
  [(self.choice_name_and_price (c), '%s,%s' % (lineid, c.id)) for c in self.all_choices()],
/home/joe/eracks12/web/apps/products/models.py in all_choices(499)
  if self.choices.count():  # POCs - yuk - TODO: remove them
355 </tr>
356 </thead>
357 <tbody>
358 {{ product.prodopts_as_table|safe }}
359 <tr>
360 <td>Notes</td>
361 <td><textarea id=notes name=notes placeholder="Enter Product notes or Quote details here"></textarea></td>
362 <td>Enter notes or custom instructions for this item here</td>

/home/joe/eracks12/web/apps/products/templates/product.html

  +
SELECT "choices"."id"
  FROM
"choices"
 INNER JOIN
"prodoptchoices"
    ON
("choices"."id" = "prodoptchoices"."choiceid")
 WHERE
"prodoptchoices"."productoptionid" = 43146
 ORDER BY
"choices"."sortorder" ASC, "choices"."cost" ASC
SELECT ••• FROM "choices" INNER JOIN "prodoptchoices" ON ("choices"."id" = "prodoptchoices"."choiceid") WHERE "prodoptchoices"."productoptionid" = 43146 ORDER BY "choices"."sortorder" ASC, "choices"."cost" ASC
  12 similar queries.   Duplicated 2 times.
1.9434835808592767%
5.78

Connection: default

/usr/local/bin/gunicorn in <module>(8)
  sys.exit(run())
/usr/local/lib/python3.8/site-packages/gunicorn/app/wsgiapp.py in run(58)
  WSGIApplication("%(prog)s [OPTIONS] [APP_MODULE]").run()
/usr/local/lib/python3.8/site-packages/gunicorn/app/base.py in run(228)
  super().run()
/usr/local/lib/python3.8/site-packages/gunicorn/app/base.py in run(72)
  Arbiter(self).run()
/usr/local/lib/python3.8/site-packages/gunicorn/arbiter.py in run(211)
  self.manage_workers()
/usr/local/lib/python3.8/site-packages/gunicorn/arbiter.py in manage_workers(545)
  self.spawn_workers()
/usr/local/lib/python3.8/site-packages/gunicorn/arbiter.py in spawn_workers(616)
  self.spawn_worker()
/usr/local/lib/python3.8/site-packages/gunicorn/arbiter.py in spawn_worker(583)
  worker.init_process()
/usr/local/lib/python3.8/site-packages/gunicorn/workers/base.py in init_process(140)
  self.run()
/usr/local/lib/python3.8/site-packages/gunicorn/workers/sync.py in run(123)
  self.run_for_one(timeout)
/usr/local/lib/python3.8/site-packages/gunicorn/workers/sync.py in run_for_one(67)
  self.accept(listener)
/usr/local/lib/python3.8/site-packages/gunicorn/workers/sync.py in accept(29)
  self.handle(listener, client, addr)
/usr/local/lib/python3.8/site-packages/gunicorn/workers/sync.py in handle(134)
  self.handle_request(listener, req, client, addr)
/usr/local/lib/python3.8/site-packages/gunicorn/workers/sync.py in handle_request(175)
  respiter = self.wsgi(environ, resp.start_response)
/home/joe/eracks12/web/apps/products/views.py in product(446)
  return render (request, 'product.html', dict (
/usr/local/lib/python3.8/site-packages/django/shortcuts.py in render(36)
  content = loader.render_to_string(template_name, context, request, using=using)
/usr/local/lib/python3.8/site-packages/django/template/loader.py in render_to_string(62)
  return template.render(context, request)
/usr/local/lib/python3.8/site-packages/django/template/backends/django.py in render(61)
  return self.template.render(context)
/usr/local/lib/python3.8/site-packages/django/template/base.py in render(171)
  return self._render(context)
/usr/local/lib/python3.8/site-packages/django/test/utils.py in instrumented_test_render(96)
  return self.nodelist.render(context)
/usr/local/lib/python3.8/site-packages/django/template/base.py in render(937)
  bit = node.render_annotated(context)
/usr/local/lib/python3.8/site-packages/django/template/base.py in render_annotated(904)
  return self.render(context)
/usr/local/lib/python3.8/site-packages/django/template/loader_tags.py in render(150)
  return compiled_parent._render(context)
/usr/local/lib/python3.8/site-packages/django/test/utils.py in instrumented_test_render(96)
  return self.nodelist.render(context)
/usr/local/lib/python3.8/site-packages/django/template/base.py in render(937)
  bit = node.render_annotated(context)
/usr/local/lib/python3.8/site-packages/django/template/base.py in render_annotated(904)
  return self.render(context)
/usr/local/lib/python3.8/site-packages/django/template/loader_tags.py in render(62)
  result = block.nodelist.render(context)
/usr/local/lib/python3.8/site-packages/django/template/base.py in render(937)
  bit = node.render_annotated(context)
/usr/local/lib/python3.8/site-packages/django/template/base.py in render_annotated(904)
  return self.render(context)
/usr/local/lib/python3.8/site-packages/django/template/loader_tags.py in render(62)
  result = block.nodelist.render(context)
/usr/local/lib/python3.8/site-packages/django/template/base.py in render(937)
  bit = node.render_annotated(context)
/usr/local/lib/python3.8/site-packages/django/template/base.py in render_annotated(904)
  return self.render(context)
/usr/local/lib/python3.8/site-packages/django/template/base.py in render(987)
  output = self.filter_expression.resolve(context)
/usr/local/lib/python3.8/site-packages/django/template/base.py in resolve(671)
  obj = self.var.resolve(context)
/usr/local/lib/python3.8/site-packages/django/template/base.py in resolve(796)
  value = self._resolve_lookup(context)
/usr/local/lib/python3.8/site-packages/django/template/base.py in _resolve_lookup(837)
  current = getattr(current, bit)
/home/joe/eracks12/web/apps/products/models.py in prodopts_as_table(427)
  return ''.join ([po.as_rows for po in self.product_options()])
/home/joe/eracks12/web/apps/products/models.py in <listcomp>(427)
  return ''.join ([po.as_rows for po in self.product_options()])
/home/joe/eracks12/web/apps/products/models.py in as_rows(541)
  .td (self.as_combos (lineid), cls=lineid + ' dropdowns')
/home/joe/eracks12/web/apps/products/models.py in as_combos(523)
  [(self.choice_name_and_price (c), '%s,%s' % (lineid, c.id)) for c in self.all_choices()],
/home/joe/eracks12/web/apps/products/models.py in all_choices(500)
  return self._corrected_choices (list (self.choices.values_list ('id', flat=True)))
355 </tr>
356 </thead>
357 <tbody>
358 {{ product.prodopts_as_table|safe }}
359 <tr>
360 <td>Notes</td>
361 <td><textarea id=notes name=notes placeholder="Enter Product notes or Quote details here"></textarea></td>
362 <td>Enter notes or custom instructions for this item here</td>

/home/joe/eracks12/web/apps/products/templates/product.html

  +
SELECT "choices"."id",
       "choices"."name",
       "choices"."source",
       "choices"."price",
       "choices"."cost",
       "choices"."sortorder",
       "choices"."multiplier",
       "choices"."comment",
       "choices"."choicecategory_id",
       "choices"."blurb",
       "choices"."published",
       "choices"."created",
       "choices"."updated"
  FROM
"choices"
 WHERE
"choices"."id" IN (30, 5292, 5293, 7449)
 ORDER BY
"choices"."cost" ASC, "choices"."sortorder" ASC
SELECT ••• FROM "choices" WHERE "choices"."id" IN (30, 5292, 5293, 7449) ORDER BY "choices"."cost" ASC, "choices"."sortorder" ASC
  2 similar queries.   Duplicated 2 times.
0.22571607723899925%
0.67

Connection: default

/usr/local/bin/gunicorn in <module>(8)
  sys.exit(run())
/usr/local/lib/python3.8/site-packages/gunicorn/app/wsgiapp.py in run(58)
  WSGIApplication("%(prog)s [OPTIONS] [APP_MODULE]").run()
/usr/local/lib/python3.8/site-packages/gunicorn/app/base.py in run(228)
  super().run()
/usr/local/lib/python3.8/site-packages/gunicorn/app/base.py in run(72)
  Arbiter(self).run()
/usr/local/lib/python3.8/site-packages/gunicorn/arbiter.py in run(211)
  self.manage_workers()
/usr/local/lib/python3.8/site-packages/gunicorn/arbiter.py in manage_workers(545)
  self.spawn_workers()
/usr/local/lib/python3.8/site-packages/gunicorn/arbiter.py in spawn_workers(616)
  self.spawn_worker()
/usr/local/lib/python3.8/site-packages/gunicorn/arbiter.py in spawn_worker(583)
  worker.init_process()
/usr/local/lib/python3.8/site-packages/gunicorn/workers/base.py in init_process(140)
  self.run()
/usr/local/lib/python3.8/site-packages/gunicorn/workers/sync.py in run(123)
  self.run_for_one(timeout)
/usr/local/lib/python3.8/site-packages/gunicorn/workers/sync.py in run_for_one(67)
  self.accept(listener)
/usr/local/lib/python3.8/site-packages/gunicorn/workers/sync.py in accept(29)
  self.handle(listener, client, addr)
/usr/local/lib/python3.8/site-packages/gunicorn/workers/sync.py in handle(134)
  self.handle_request(listener, req, client, addr)
/usr/local/lib/python3.8/site-packages/gunicorn/workers/sync.py in handle_request(175)
  respiter = self.wsgi(environ, resp.start_response)
/home/joe/eracks12/web/apps/products/views.py in product(446)
  return render (request, 'product.html', dict (
/usr/local/lib/python3.8/site-packages/django/shortcuts.py in render(36)
  content = loader.render_to_string(template_name, context, request, using=using)
/usr/local/lib/python3.8/site-packages/django/template/loader.py in render_to_string(62)
  return template.render(context, request)
/usr/local/lib/python3.8/site-packages/django/template/backends/django.py in render(61)
  return self.template.render(context)
/usr/local/lib/python3.8/site-packages/django/template/base.py in render(171)
  return self._render(context)
/usr/local/lib/python3.8/site-packages/django/test/utils.py in instrumented_test_render(96)
  return self.nodelist.render(context)
/usr/local/lib/python3.8/site-packages/django/template/base.py in render(937)
  bit = node.render_annotated(context)
/usr/local/lib/python3.8/site-packages/django/template/base.py in render_annotated(904)
  return self.render(context)
/usr/local/lib/python3.8/site-packages/django/template/loader_tags.py in render(150)
  return compiled_parent._render(context)
/usr/local/lib/python3.8/site-packages/django/test/utils.py in instrumented_test_render(96)
  return self.nodelist.render(context)
/usr/local/lib/python3.8/site-packages/django/template/base.py in render(937)
  bit = node.render_annotated(context)
/usr/local/lib/python3.8/site-packages/django/template/base.py in render_annotated(904)
  return self.render(context)
/usr/local/lib/python3.8/site-packages/django/template/loader_tags.py in render(62)
  result = block.nodelist.render(context)
/usr/local/lib/python3.8/site-packages/django/template/base.py in render(937)
  bit = node.render_annotated(context)
/usr/local/lib/python3.8/site-packages/django/template/base.py in render_annotated(904)
  return self.render(context)
/usr/local/lib/python3.8/site-packages/django/template/loader_tags.py in render(62)
  result = block.nodelist.render(context)
/usr/local/lib/python3.8/site-packages/django/template/base.py in render(937)
  bit = node.render_annotated(context)
/usr/local/lib/python3.8/site-packages/django/template/base.py in render_annotated(904)
  return self.render(context)
/usr/local/lib/python3.8/site-packages/django/template/base.py in render(987)
  output = self.filter_expression.resolve(context)
/usr/local/lib/python3.8/site-packages/django/template/base.py in resolve(671)
  obj = self.var.resolve(context)
/usr/local/lib/python3.8/site-packages/django/template/base.py in resolve(796)
  value = self._resolve_lookup(context)
/usr/local/lib/python3.8/site-packages/django/template/base.py in _resolve_lookup(837)
  current = getattr(current, bit)
/home/joe/eracks12/web/apps/products/models.py in prodopts_as_table(427)
  return ''.join ([po.as_rows for po in self.product_options()])
/home/joe/eracks12/web/apps/products/models.py in <listcomp>(427)
  return ''.join ([po.as_rows for po in self.product_options()])
/home/joe/eracks12/web/apps/products/models.py in as_rows(541)
  .td (self.as_combos (lineid), cls=lineid + ' dropdowns')
/home/joe/eracks12/web/apps/products/models.py in as_combos(523)
  [(self.choice_name_and_price (c), '%s,%s' % (lineid, c.id)) for c in self.all_choices()],
355 </tr>
356 </thead>
357 <tbody>
358 {{ product.prodopts_as_table|safe }}
359 <tr>
360 <td>Notes</td>
361 <td><textarea id=notes name=notes placeholder="Enter Product notes or Quote details here"></textarea></td>
362 <td>Enter notes or custom instructions for this item here</td>

/home/joe/eracks12/web/apps/products/templates/product.html

  +
SELECT "options"."id",
       "options"."name",
       "options"."usage_notes",
       "options"."sortorder",
       "options"."blurb",
       "options"."description",
       "options"."comments",
       "options"."published",
       "options"."created",
       "options"."updated"
  FROM
"options"
 WHERE
"options"."id" = 11959
SELECT ••• FROM "options" WHERE "options"."id" = 11959
  18 similar queries.   Duplicated 2 times.
0.8936432258716329%
2.66

Connection: default

/usr/local/bin/gunicorn in <module>(8)
  sys.exit(run())
/usr/local/lib/python3.8/site-packages/gunicorn/app/wsgiapp.py in run(58)
  WSGIApplication("%(prog)s [OPTIONS] [APP_MODULE]").run()
/usr/local/lib/python3.8/site-packages/gunicorn/app/base.py in run(228)
  super().run()
/usr/local/lib/python3.8/site-packages/gunicorn/app/base.py in run(72)
  Arbiter(self).run()
/usr/local/lib/python3.8/site-packages/gunicorn/arbiter.py in run(211)
  self.manage_workers()
/usr/local/lib/python3.8/site-packages/gunicorn/arbiter.py in manage_workers(545)
  self.spawn_workers()
/usr/local/lib/python3.8/site-packages/gunicorn/arbiter.py in spawn_workers(616)
  self.spawn_worker()
/usr/local/lib/python3.8/site-packages/gunicorn/arbiter.py in spawn_worker(583)
  worker.init_process()
/usr/local/lib/python3.8/site-packages/gunicorn/workers/base.py in init_process(140)
  self.run()
/usr/local/lib/python3.8/site-packages/gunicorn/workers/sync.py in run(123)
  self.run_for_one(timeout)
/usr/local/lib/python3.8/site-packages/gunicorn/workers/sync.py in run_for_one(67)
  self.accept(listener)
/usr/local/lib/python3.8/site-packages/gunicorn/workers/sync.py in accept(29)
  self.handle(listener, client, addr)
/usr/local/lib/python3.8/site-packages/gunicorn/workers/sync.py in handle(134)
  self.handle_request(listener, req, client, addr)
/usr/local/lib/python3.8/site-packages/gunicorn/workers/sync.py in handle_request(175)
  respiter = self.wsgi(environ, resp.start_response)
/home/joe/eracks12/web/apps/products/views.py in product(446)
  return render (request, 'product.html', dict (
/usr/local/lib/python3.8/site-packages/django/shortcuts.py in render(36)
  content = loader.render_to_string(template_name, context, request, using=using)
/usr/local/lib/python3.8/site-packages/django/template/loader.py in render_to_string(62)
  return template.render(context, request)
/usr/local/lib/python3.8/site-packages/django/template/backends/django.py in render(61)
  return self.template.render(context)
/usr/local/lib/python3.8/site-packages/django/template/base.py in render(171)
  return self._render(context)
/usr/local/lib/python3.8/site-packages/django/test/utils.py in instrumented_test_render(96)
  return self.nodelist.render(context)
/usr/local/lib/python3.8/site-packages/django/template/base.py in render(937)
  bit = node.render_annotated(context)
/usr/local/lib/python3.8/site-packages/django/template/base.py in render_annotated(904)
  return self.render(context)
/usr/local/lib/python3.8/site-packages/django/template/loader_tags.py in render(150)
  return compiled_parent._render(context)
/usr/local/lib/python3.8/site-packages/django/test/utils.py in instrumented_test_render(96)
  return self.nodelist.render(context)
/usr/local/lib/python3.8/site-packages/django/template/base.py in render(937)
  bit = node.render_annotated(context)
/usr/local/lib/python3.8/site-packages/django/template/base.py in render_annotated(904)
  return self.render(context)
/usr/local/lib/python3.8/site-packages/django/template/loader_tags.py in render(62)
  result = block.nodelist.render(context)
/usr/local/lib/python3.8/site-packages/django/template/base.py in render(937)
  bit = node.render_annotated(context)
/usr/local/lib/python3.8/site-packages/django/template/base.py in render_annotated(904)
  return self.render(context)
/usr/local/lib/python3.8/site-packages/django/template/loader_tags.py in render(62)
  result = block.nodelist.render(context)
/usr/local/lib/python3.8/site-packages/django/template/base.py in render(937)
  bit = node.render_annotated(context)
/usr/local/lib/python3.8/site-packages/django/template/base.py in render_annotated(904)
  return self.render(context)
/usr/local/lib/python3.8/site-packages/django/template/base.py in render(987)
  output = self.filter_expression.resolve(context)
/usr/local/lib/python3.8/site-packages/django/template/base.py in resolve(671)
  obj = self.var.resolve(context)
/usr/local/lib/python3.8/site-packages/django/template/base.py in resolve(796)
  value = self._resolve_lookup(context)
/usr/local/lib/python3.8/site-packages/django/template/base.py in _resolve_lookup(837)
  current = getattr(current, bit)
/home/joe/eracks12/web/apps/products/models.py in prodopts_as_table(427)
  return ''.join ([po.as_rows for po in self.product_options()])
/home/joe/eracks12/web/apps/products/models.py in <listcomp>(427)
  return ''.join ([po.as_rows for po in self.product_options()])
/home/joe/eracks12/web/apps/products/models.py in as_rows(540)
  .td (self.calc_name, cls=lineid, title=(self.option.blurb or self.calc_name + ' option'))
/home/joe/eracks12/web/apps/products/models.py in calc_name(477)
  return self.name or self.option.name  # or self.option.display_name
355 </tr>
356 </thead>
357 <tbody>
358 {{ product.prodopts_as_table|safe }}
359 <tr>
360 <td>Notes</td>
361 <td><textarea id=notes name=notes placeholder="Enter Product notes or Quote details here"></textarea></td>
362 <td>Enter notes or custom instructions for this item here</td>

/home/joe/eracks12/web/apps/products/templates/product.html

  +
SELECT "choices"."id",
       "choices"."name",
       "choices"."source",
       "choices"."price",
       "choices"."cost",
       "choices"."sortorder",
       "choices"."multiplier",
       "choices"."comment",
       "choices"."choicecategory_id",
       "choices"."blurb",
       "choices"."published",
       "choices"."created",
       "choices"."updated"
  FROM
"choices"
 WHERE
"choices"."id" = 9279
SELECT ••• FROM "choices" WHERE "choices"."id" = 9279
  11 similar queries.
0.22242856066109554%
0.66

Connection: default

/usr/local/bin/gunicorn in <module>(8)
  sys.exit(run())
/usr/local/lib/python3.8/site-packages/gunicorn/app/wsgiapp.py in run(58)
  WSGIApplication("%(prog)s [OPTIONS] [APP_MODULE]").run()
/usr/local/lib/python3.8/site-packages/gunicorn/app/base.py in run(228)
  super().run()
/usr/local/lib/python3.8/site-packages/gunicorn/app/base.py in run(72)
  Arbiter(self).run()
/usr/local/lib/python3.8/site-packages/gunicorn/arbiter.py in run(211)
  self.manage_workers()
/usr/local/lib/python3.8/site-packages/gunicorn/arbiter.py in manage_workers(545)
  self.spawn_workers()
/usr/local/lib/python3.8/site-packages/gunicorn/arbiter.py in spawn_workers(616)
  self.spawn_worker()
/usr/local/lib/python3.8/site-packages/gunicorn/arbiter.py in spawn_worker(583)
  worker.init_process()
/usr/local/lib/python3.8/site-packages/gunicorn/workers/base.py in init_process(140)
  self.run()
/usr/local/lib/python3.8/site-packages/gunicorn/workers/sync.py in run(123)
  self.run_for_one(timeout)
/usr/local/lib/python3.8/site-packages/gunicorn/workers/sync.py in run_for_one(67)
  self.accept(listener)
/usr/local/lib/python3.8/site-packages/gunicorn/workers/sync.py in accept(29)
  self.handle(listener, client, addr)
/usr/local/lib/python3.8/site-packages/gunicorn/workers/sync.py in handle(134)
  self.handle_request(listener, req, client, addr)
/usr/local/lib/python3.8/site-packages/gunicorn/workers/sync.py in handle_request(175)
  respiter = self.wsgi(environ, resp.start_response)
/home/joe/eracks12/web/apps/products/views.py in product(446)
  return render (request, 'product.html', dict (
/usr/local/lib/python3.8/site-packages/django/shortcuts.py in render(36)
  content = loader.render_to_string(template_name, context, request, using=using)
/usr/local/lib/python3.8/site-packages/django/template/loader.py in render_to_string(62)
  return template.render(context, request)
/usr/local/lib/python3.8/site-packages/django/template/backends/django.py in render(61)
  return self.template.render(context)
/usr/local/lib/python3.8/site-packages/django/template/base.py in render(171)
  return self._render(context)
/usr/local/lib/python3.8/site-packages/django/test/utils.py in instrumented_test_render(96)
  return self.nodelist.render(context)
/usr/local/lib/python3.8/site-packages/django/template/base.py in render(937)
  bit = node.render_annotated(context)
/usr/local/lib/python3.8/site-packages/django/template/base.py in render_annotated(904)
  return self.render(context)
/usr/local/lib/python3.8/site-packages/django/template/loader_tags.py in render(150)
  return compiled_parent._render(context)
/usr/local/lib/python3.8/site-packages/django/test/utils.py in instrumented_test_render(96)
  return self.nodelist.render(context)
/usr/local/lib/python3.8/site-packages/django/template/base.py in render(937)
  bit = node.render_annotated(context)
/usr/local/lib/python3.8/site-packages/django/template/base.py in render_annotated(904)
  return self.render(context)
/usr/local/lib/python3.8/site-packages/django/template/loader_tags.py in render(62)
  result = block.nodelist.render(context)
/usr/local/lib/python3.8/site-packages/django/template/base.py in render(937)
  bit = node.render_annotated(context)
/usr/local/lib/python3.8/site-packages/django/template/base.py in render_annotated(904)
  return self.render(context)
/usr/local/lib/python3.8/site-packages/django/template/loader_tags.py in render(62)
  result = block.nodelist.render(context)
/usr/local/lib/python3.8/site-packages/django/template/base.py in render(937)
  bit = node.render_annotated(context)
/usr/local/lib/python3.8/site-packages/django/template/base.py in render_annotated(904)
  return self.render(context)
/usr/local/lib/python3.8/site-packages/django/template/base.py in render(987)
  output = self.filter_expression.resolve(context)
/usr/local/lib/python3.8/site-packages/django/template/base.py in resolve(671)
  obj = self.var.resolve(context)
/usr/local/lib/python3.8/site-packages/django/template/base.py in resolve(796)
  value = self._resolve_lookup(context)
/usr/local/lib/python3.8/site-packages/django/template/base.py in _resolve_lookup(837)
  current = getattr(current, bit)
/home/joe/eracks12/web/apps/products/models.py in prodopts_as_table(427)
  return ''.join ([po.as_rows for po in self.product_options()])
/home/joe/eracks12/web/apps/products/models.py in <listcomp>(427)
  return ''.join ([po.as_rows for po in self.product_options()])
/home/joe/eracks12/web/apps/products/models.py in as_rows(541)
  .td (self.as_combos (lineid), cls=lineid + ' dropdowns')
/home/joe/eracks12/web/apps/products/models.py in as_combos(505)
  if self.defaultchoice:
355 </tr>
356 </thead>
357 <tbody>
358 {{ product.prodopts_as_table|safe }}
359 <tr>
360 <td>Notes</td>
361 <td><textarea id=notes name=notes placeholder="Enter Product notes or Quote details here"></textarea></td>
362 <td>Enter notes or custom instructions for this item here</td>

/home/joe/eracks12/web/apps/products/templates/product.html

  +
SELECT COUNT(*) AS "__count"
  FROM
"choices"
 INNER JOIN
"prodoptchoices"
    ON
("choices"."id" = "prodoptchoices"."choiceid")
 WHERE
"prodoptchoices"."productoptionid" = 42683
SELECT ••• FROM "choices" INNER JOIN "prodoptchoices" ON ("choices"."id" = "prodoptchoices"."choiceid") WHERE "prodoptchoices"."productoptionid" = 42683
  18 similar queries.   Duplicated 2 times.
0.24399787674539067%
0.73

Connection: default

/usr/local/bin/gunicorn in <module>(8)
  sys.exit(run())
/usr/local/lib/python3.8/site-packages/gunicorn/app/wsgiapp.py in run(58)
  WSGIApplication("%(prog)s [OPTIONS] [APP_MODULE]").run()
/usr/local/lib/python3.8/site-packages/gunicorn/app/base.py in run(228)
  super().run()
/usr/local/lib/python3.8/site-packages/gunicorn/app/base.py in run(72)
  Arbiter(self).run()
/usr/local/lib/python3.8/site-packages/gunicorn/arbiter.py in run(211)
  self.manage_workers()
/usr/local/lib/python3.8/site-packages/gunicorn/arbiter.py in manage_workers(545)
  self.spawn_workers()
/usr/local/lib/python3.8/site-packages/gunicorn/arbiter.py in spawn_workers(616)
  self.spawn_worker()
/usr/local/lib/python3.8/site-packages/gunicorn/arbiter.py in spawn_worker(583)
  worker.init_process()
/usr/local/lib/python3.8/site-packages/gunicorn/workers/base.py in init_process(140)
  self.run()
/usr/local/lib/python3.8/site-packages/gunicorn/workers/sync.py in run(123)
  self.run_for_one(timeout)
/usr/local/lib/python3.8/site-packages/gunicorn/workers/sync.py in run_for_one(67)
  self.accept(listener)
/usr/local/lib/python3.8/site-packages/gunicorn/workers/sync.py in accept(29)
  self.handle(listener, client, addr)
/usr/local/lib/python3.8/site-packages/gunicorn/workers/sync.py in handle(134)
  self.handle_request(listener, req, client, addr)
/usr/local/lib/python3.8/site-packages/gunicorn/workers/sync.py in handle_request(175)
  respiter = self.wsgi(environ, resp.start_response)
/home/joe/eracks12/web/apps/products/views.py in product(446)
  return render (request, 'product.html', dict (
/usr/local/lib/python3.8/site-packages/django/shortcuts.py in render(36)
  content = loader.render_to_string(template_name, context, request, using=using)
/usr/local/lib/python3.8/site-packages/django/template/loader.py in render_to_string(62)
  return template.render(context, request)
/usr/local/lib/python3.8/site-packages/django/template/backends/django.py in render(61)
  return self.template.render(context)
/usr/local/lib/python3.8/site-packages/django/template/base.py in render(171)
  return self._render(context)
/usr/local/lib/python3.8/site-packages/django/test/utils.py in instrumented_test_render(96)
  return self.nodelist.render(context)
/usr/local/lib/python3.8/site-packages/django/template/base.py in render(937)
  bit = node.render_annotated(context)
/usr/local/lib/python3.8/site-packages/django/template/base.py in render_annotated(904)
  return self.render(context)
/usr/local/lib/python3.8/site-packages/django/template/loader_tags.py in render(150)
  return compiled_parent._render(context)
/usr/local/lib/python3.8/site-packages/django/test/utils.py in instrumented_test_render(96)
  return self.nodelist.render(context)
/usr/local/lib/python3.8/site-packages/django/template/base.py in render(937)
  bit = node.render_annotated(context)
/usr/local/lib/python3.8/site-packages/django/template/base.py in render_annotated(904)
  return self.render(context)
/usr/local/lib/python3.8/site-packages/django/template/loader_tags.py in render(62)
  result = block.nodelist.render(context)
/usr/local/lib/python3.8/site-packages/django/template/base.py in render(937)
  bit = node.render_annotated(context)
/usr/local/lib/python3.8/site-packages/django/template/base.py in render_annotated(904)
  return self.render(context)
/usr/local/lib/python3.8/site-packages/django/template/loader_tags.py in render(62)
  result = block.nodelist.render(context)
/usr/local/lib/python3.8/site-packages/django/template/base.py in render(937)
  bit = node.render_annotated(context)
/usr/local/lib/python3.8/site-packages/django/template/base.py in render_annotated(904)
  return self.render(context)
/usr/local/lib/python3.8/site-packages/django/template/base.py in render(987)
  output = self.filter_expression.resolve(context)
/usr/local/lib/python3.8/site-packages/django/template/base.py in resolve(671)
  obj = self.var.resolve(context)
/usr/local/lib/python3.8/site-packages/django/template/base.py in resolve(796)
  value = self._resolve_lookup(context)
/usr/local/lib/python3.8/site-packages/django/template/base.py in _resolve_lookup(837)
  current = getattr(current, bit)
/home/joe/eracks12/web/apps/products/models.py in prodopts_as_table(427)
  return ''.join ([po.as_rows for po in self.product_options()])
/home/joe/eracks12/web/apps/products/models.py in <listcomp>(427)
  return ''.join ([po.as_rows for po in self.product_options()])
/home/joe/eracks12/web/apps/products/models.py in as_rows(541)
  .td (self.as_combos (lineid), cls=lineid + ' dropdowns')
/home/joe/eracks12/web/apps/products/models.py in as_combos(523)
  [(self.choice_name_and_price (c), '%s,%s' % (lineid, c.id)) for c in self.all_choices()],
/home/joe/eracks12/web/apps/products/models.py in all_choices(499)
  if self.choices.count():  # POCs - yuk - TODO: remove them
355 </tr>
356 </thead>
357 <tbody>
358 {{ product.prodopts_as_table|safe }}
359 <tr>
360 <td>Notes</td>
361 <td><textarea id=notes name=notes placeholder="Enter Product notes or Quote details here"></textarea></td>
362 <td>Enter notes or custom instructions for this item here</td>

/home/joe/eracks12/web/apps/products/templates/product.html

  +
SELECT "choices"."id"
  FROM
"choices"
 INNER JOIN
"prodoptchoices"
    ON
("choices"."id" = "prodoptchoices"."choiceid")
 WHERE
"prodoptchoices"."productoptionid" = 42683
 ORDER BY
"choices"."sortorder" ASC, "choices"."cost" ASC
SELECT ••• FROM "choices" INNER JOIN "prodoptchoices" ON ("choices"."id" = "prodoptchoices"."choiceid") WHERE "prodoptchoices"."productoptionid" = 42683 ORDER BY "choices"."sortorder" ASC, "choices"."cost" ASC
  12 similar queries.   Duplicated 2 times.
1.604468456679352%
4.77

Connection: default

/usr/local/bin/gunicorn in <module>(8)
  sys.exit(run())
/usr/local/lib/python3.8/site-packages/gunicorn/app/wsgiapp.py in run(58)
  WSGIApplication("%(prog)s [OPTIONS] [APP_MODULE]").run()
/usr/local/lib/python3.8/site-packages/gunicorn/app/base.py in run(228)
  super().run()
/usr/local/lib/python3.8/site-packages/gunicorn/app/base.py in run(72)
  Arbiter(self).run()
/usr/local/lib/python3.8/site-packages/gunicorn/arbiter.py in run(211)
  self.manage_workers()
/usr/local/lib/python3.8/site-packages/gunicorn/arbiter.py in manage_workers(545)
  self.spawn_workers()
/usr/local/lib/python3.8/site-packages/gunicorn/arbiter.py in spawn_workers(616)
  self.spawn_worker()
/usr/local/lib/python3.8/site-packages/gunicorn/arbiter.py in spawn_worker(583)
  worker.init_process()
/usr/local/lib/python3.8/site-packages/gunicorn/workers/base.py in init_process(140)
  self.run()
/usr/local/lib/python3.8/site-packages/gunicorn/workers/sync.py in run(123)
  self.run_for_one(timeout)
/usr/local/lib/python3.8/site-packages/gunicorn/workers/sync.py in run_for_one(67)
  self.accept(listener)
/usr/local/lib/python3.8/site-packages/gunicorn/workers/sync.py in accept(29)
  self.handle(listener, client, addr)
/usr/local/lib/python3.8/site-packages/gunicorn/workers/sync.py in handle(134)
  self.handle_request(listener, req, client, addr)
/usr/local/lib/python3.8/site-packages/gunicorn/workers/sync.py in handle_request(175)
  respiter = self.wsgi(environ, resp.start_response)
/home/joe/eracks12/web/apps/products/views.py in product(446)
  return render (request, 'product.html', dict (
/usr/local/lib/python3.8/site-packages/django/shortcuts.py in render(36)
  content = loader.render_to_string(template_name, context, request, using=using)
/usr/local/lib/python3.8/site-packages/django/template/loader.py in render_to_string(62)
  return template.render(context, request)
/usr/local/lib/python3.8/site-packages/django/template/backends/django.py in render(61)
  return self.template.render(context)
/usr/local/lib/python3.8/site-packages/django/template/base.py in render(171)
  return self._render(context)
/usr/local/lib/python3.8/site-packages/django/test/utils.py in instrumented_test_render(96)
  return self.nodelist.render(context)
/usr/local/lib/python3.8/site-packages/django/template/base.py in render(937)
  bit = node.render_annotated(context)
/usr/local/lib/python3.8/site-packages/django/template/base.py in render_annotated(904)
  return self.render(context)
/usr/local/lib/python3.8/site-packages/django/template/loader_tags.py in render(150)
  return compiled_parent._render(context)
/usr/local/lib/python3.8/site-packages/django/test/utils.py in instrumented_test_render(96)
  return self.nodelist.render(context)
/usr/local/lib/python3.8/site-packages/django/template/base.py in render(937)
  bit = node.render_annotated(context)
/usr/local/lib/python3.8/site-packages/django/template/base.py in render_annotated(904)
  return self.render(context)
/usr/local/lib/python3.8/site-packages/django/template/loader_tags.py in render(62)
  result = block.nodelist.render(context)
/usr/local/lib/python3.8/site-packages/django/template/base.py in render(937)
  bit = node.render_annotated(context)
/usr/local/lib/python3.8/site-packages/django/template/base.py in render_annotated(904)
  return self.render(context)
/usr/local/lib/python3.8/site-packages/django/template/loader_tags.py in render(62)
  result = block.nodelist.render(context)
/usr/local/lib/python3.8/site-packages/django/template/base.py in render(937)
  bit = node.render_annotated(context)
/usr/local/lib/python3.8/site-packages/django/template/base.py in render_annotated(904)
  return self.render(context)
/usr/local/lib/python3.8/site-packages/django/template/base.py in render(987)
  output = self.filter_expression.resolve(context)
/usr/local/lib/python3.8/site-packages/django/template/base.py in resolve(671)
  obj = self.var.resolve(context)
/usr/local/lib/python3.8/site-packages/django/template/base.py in resolve(796)
  value = self._resolve_lookup(context)
/usr/local/lib/python3.8/site-packages/django/template/base.py in _resolve_lookup(837)
  current = getattr(current, bit)
/home/joe/eracks12/web/apps/products/models.py in prodopts_as_table(427)
  return ''.join ([po.as_rows for po in self.product_options()])
/home/joe/eracks12/web/apps/products/models.py in <listcomp>(427)
  return ''.join ([po.as_rows for po in self.product_options()])
/home/joe/eracks12/web/apps/products/models.py in as_rows(541)
  .td (self.as_combos (lineid), cls=lineid + ' dropdowns')
/home/joe/eracks12/web/apps/products/models.py in as_combos(523)
  [(self.choice_name_and_price (c), '%s,%s' % (lineid, c.id)) for c in self.all_choices()],
/home/joe/eracks12/web/apps/products/models.py in all_choices(500)
  return self._corrected_choices (list (self.choices.values_list ('id', flat=True)))
355 </tr>
356 </thead>
357 <tbody>
358 {{ product.prodopts_as_table|safe }}
359 <tr>
360 <td>Notes</td>
361 <td><textarea id=notes name=notes placeholder="Enter Product notes or Quote details here"></textarea></td>
362 <td>Enter notes or custom instructions for this item here</td>

/home/joe/eracks12/web/apps/products/templates/product.html

  +
SELECT "choices"."id",
       "choices"."name",
       "choices"."source",
       "choices"."price",
       "choices"."cost",
       "choices"."sortorder",
       "choices"."multiplier",
       "choices"."comment",
       "choices"."choicecategory_id",
       "choices"."blurb",
       "choices"."published",
       "choices"."created",
       "choices"."updated"
  FROM
"choices"
 WHERE
"choices"."id" IN (30, 9279, 11961, 11962, 11963, 11964)
 ORDER BY
"choices"."cost" ASC, "choices"."sortorder" ASC
SELECT ••• FROM "choices" WHERE "choices"."id" IN (30, 9279, 11961, 11962, 11963, 11964) ORDER BY "choices"."cost" ASC, "choices"."sortorder" ASC
  2 similar queries.   Duplicated 2 times.
0.16477674555102786%
0.49

Connection: default

/usr/local/bin/gunicorn in <module>(8)
  sys.exit(run())
/usr/local/lib/python3.8/site-packages/gunicorn/app/wsgiapp.py in run(58)
  WSGIApplication("%(prog)s [OPTIONS] [APP_MODULE]").run()
/usr/local/lib/python3.8/site-packages/gunicorn/app/base.py in run(228)
  super().run()
/usr/local/lib/python3.8/site-packages/gunicorn/app/base.py in run(72)
  Arbiter(self).run()
/usr/local/lib/python3.8/site-packages/gunicorn/arbiter.py in run(211)
  self.manage_workers()
/usr/local/lib/python3.8/site-packages/gunicorn/arbiter.py in manage_workers(545)
  self.spawn_workers()
/usr/local/lib/python3.8/site-packages/gunicorn/arbiter.py in spawn_workers(616)
  self.spawn_worker()
/usr/local/lib/python3.8/site-packages/gunicorn/arbiter.py in spawn_worker(583)
  worker.init_process()
/usr/local/lib/python3.8/site-packages/gunicorn/workers/base.py in init_process(140)
  self.run()
/usr/local/lib/python3.8/site-packages/gunicorn/workers/sync.py in run(123)
  self.run_for_one(timeout)
/usr/local/lib/python3.8/site-packages/gunicorn/workers/sync.py in run_for_one(67)
  self.accept(listener)
/usr/local/lib/python3.8/site-packages/gunicorn/workers/sync.py in accept(29)
  self.handle(listener, client, addr)
/usr/local/lib/python3.8/site-packages/gunicorn/workers/sync.py in handle(134)
  self.handle_request(listener, req, client, addr)
/usr/local/lib/python3.8/site-packages/gunicorn/workers/sync.py in handle_request(175)
  respiter = self.wsgi(environ, resp.start_response)
/home/joe/eracks12/web/apps/products/views.py in product(446)
  return render (request, 'product.html', dict (
/usr/local/lib/python3.8/site-packages/django/shortcuts.py in render(36)
  content = loader.render_to_string(template_name, context, request, using=using)
/usr/local/lib/python3.8/site-packages/django/template/loader.py in render_to_string(62)
  return template.render(context, request)
/usr/local/lib/python3.8/site-packages/django/template/backends/django.py in render(61)
  return self.template.render(context)
/usr/local/lib/python3.8/site-packages/django/template/base.py in render(171)
  return self._render(context)
/usr/local/lib/python3.8/site-packages/django/test/utils.py in instrumented_test_render(96)
  return self.nodelist.render(context)
/usr/local/lib/python3.8/site-packages/django/template/base.py in render(937)
  bit = node.render_annotated(context)
/usr/local/lib/python3.8/site-packages/django/template/base.py in render_annotated(904)
  return self.render(context)
/usr/local/lib/python3.8/site-packages/django/template/loader_tags.py in render(150)
  return compiled_parent._render(context)
/usr/local/lib/python3.8/site-packages/django/test/utils.py in instrumented_test_render(96)
  return self.nodelist.render(context)
/usr/local/lib/python3.8/site-packages/django/template/base.py in render(937)
  bit = node.render_annotated(context)
/usr/local/lib/python3.8/site-packages/django/template/base.py in render_annotated(904)
  return self.render(context)
/usr/local/lib/python3.8/site-packages/django/template/loader_tags.py in render(62)
  result = block.nodelist.render(context)
/usr/local/lib/python3.8/site-packages/django/template/base.py in render(937)
  bit = node.render_annotated(context)
/usr/local/lib/python3.8/site-packages/django/template/base.py in render_annotated(904)
  return self.render(context)
/usr/local/lib/python3.8/site-packages/django/template/loader_tags.py in render(62)
  result = block.nodelist.render(context)
/usr/local/lib/python3.8/site-packages/django/template/base.py in render(937)
  bit = node.render_annotated(context)
/usr/local/lib/python3.8/site-packages/django/template/base.py in render_annotated(904)
  return self.render(context)
/usr/local/lib/python3.8/site-packages/django/template/base.py in render(987)
  output = self.filter_expression.resolve(context)
/usr/local/lib/python3.8/site-packages/django/template/base.py in resolve(671)
  obj = self.var.resolve(context)
/usr/local/lib/python3.8/site-packages/django/template/base.py in resolve(796)
  value = self._resolve_lookup(context)
/usr/local/lib/python3.8/site-packages/django/template/base.py in _resolve_lookup(837)
  current = getattr(current, bit)
/home/joe/eracks12/web/apps/products/models.py in prodopts_as_table(427)
  return ''.join ([po.as_rows for po in self.product_options()])
/home/joe/eracks12/web/apps/products/models.py in <listcomp>(427)
  return ''.join ([po.as_rows for po in self.product_options()])
/home/joe/eracks12/web/apps/products/models.py in as_rows(541)
  .td (self.as_combos (lineid), cls=lineid + ' dropdowns')
/home/joe/eracks12/web/apps/products/models.py in as_combos(523)
  [(self.choice_name_and_price (c), '%s,%s' % (lineid, c.id)) for c in self.all_choices()],
355 </tr>
356 </thead>
357 <tbody>
358 {{ product.prodopts_as_table|safe }}
359 <tr>
360 <td>Notes</td>
361 <td><textarea id=notes name=notes placeholder="Enter Product notes or Quote details here"></textarea></td>
362 <td>Enter notes or custom instructions for this item here</td>

/home/joe/eracks12/web/apps/products/templates/product.html

  +
SELECT "options"."id",
       "options"."name",
       "options"."usage_notes",
       "options"."sortorder",
       "options"."blurb",
       "options"."description",
       "options"."comments",
       "options"."published",
       "options"."created",
       "options"."updated"
  FROM
"options"
 WHERE
"options"."id" = 4267
SELECT ••• FROM "options" WHERE "options"."id" = 4267
  18 similar queries.   Duplicated 2 times.
0.12420397997982588%
0.37

Connection: default

/usr/local/bin/gunicorn in <module>(8)
  sys.exit(run())
/usr/local/lib/python3.8/site-packages/gunicorn/app/wsgiapp.py in run(58)
  WSGIApplication("%(prog)s [OPTIONS] [APP_MODULE]").run()
/usr/local/lib/python3.8/site-packages/gunicorn/app/base.py in run(228)
  super().run()
/usr/local/lib/python3.8/site-packages/gunicorn/app/base.py in run(72)
  Arbiter(self).run()
/usr/local/lib/python3.8/site-packages/gunicorn/arbiter.py in run(211)
  self.manage_workers()
/usr/local/lib/python3.8/site-packages/gunicorn/arbiter.py in manage_workers(545)
  self.spawn_workers()
/usr/local/lib/python3.8/site-packages/gunicorn/arbiter.py in spawn_workers(616)
  self.spawn_worker()
/usr/local/lib/python3.8/site-packages/gunicorn/arbiter.py in spawn_worker(583)
  worker.init_process()
/usr/local/lib/python3.8/site-packages/gunicorn/workers/base.py in init_process(140)
  self.run()
/usr/local/lib/python3.8/site-packages/gunicorn/workers/sync.py in run(123)
  self.run_for_one(timeout)
/usr/local/lib/python3.8/site-packages/gunicorn/workers/sync.py in run_for_one(67)
  self.accept(listener)
/usr/local/lib/python3.8/site-packages/gunicorn/workers/sync.py in accept(29)
  self.handle(listener, client, addr)
/usr/local/lib/python3.8/site-packages/gunicorn/workers/sync.py in handle(134)
  self.handle_request(listener, req, client, addr)
/usr/local/lib/python3.8/site-packages/gunicorn/workers/sync.py in handle_request(175)
  respiter = self.wsgi(environ, resp.start_response)
/home/joe/eracks12/web/apps/products/views.py in product(446)
  return render (request, 'product.html', dict (
/usr/local/lib/python3.8/site-packages/django/shortcuts.py in render(36)
  content = loader.render_to_string(template_name, context, request, using=using)
/usr/local/lib/python3.8/site-packages/django/template/loader.py in render_to_string(62)
  return template.render(context, request)
/usr/local/lib/python3.8/site-packages/django/template/backends/django.py in render(61)
  return self.template.render(context)
/usr/local/lib/python3.8/site-packages/django/template/base.py in render(171)
  return self._render(context)
/usr/local/lib/python3.8/site-packages/django/test/utils.py in instrumented_test_render(96)
  return self.nodelist.render(context)
/usr/local/lib/python3.8/site-packages/django/template/base.py in render(937)
  bit = node.render_annotated(context)
/usr/local/lib/python3.8/site-packages/django/template/base.py in render_annotated(904)
  return self.render(context)
/usr/local/lib/python3.8/site-packages/django/template/loader_tags.py in render(150)
  return compiled_parent._render(context)
/usr/local/lib/python3.8/site-packages/django/test/utils.py in instrumented_test_render(96)
  return self.nodelist.render(context)
/usr/local/lib/python3.8/site-packages/django/template/base.py in render(937)
  bit = node.render_annotated(context)
/usr/local/lib/python3.8/site-packages/django/template/base.py in render_annotated(904)
  return self.render(context)
/usr/local/lib/python3.8/site-packages/django/template/loader_tags.py in render(62)
  result = block.nodelist.render(context)
/usr/local/lib/python3.8/site-packages/django/template/base.py in render(937)
  bit = node.render_annotated(context)
/usr/local/lib/python3.8/site-packages/django/template/base.py in render_annotated(904)
  return self.render(context)
/usr/local/lib/python3.8/site-packages/django/template/loader_tags.py in render(62)
  result = block.nodelist.render(context)
/usr/local/lib/python3.8/site-packages/django/template/base.py in render(937)
  bit = node.render_annotated(context)
/usr/local/lib/python3.8/site-packages/django/template/base.py in render_annotated(904)
  return self.render(context)
/usr/local/lib/python3.8/site-packages/django/template/base.py in render(987)
  output = self.filter_expression.resolve(context)
/usr/local/lib/python3.8/site-packages/django/template/base.py in resolve(671)
  obj = self.var.resolve(context)
/usr/local/lib/python3.8/site-packages/django/template/base.py in resolve(796)
  value = self._resolve_lookup(context)
/usr/local/lib/python3.8/site-packages/django/template/base.py in _resolve_lookup(837)
  current = getattr(current, bit)
/home/joe/eracks12/web/apps/products/models.py in prodopts_as_table(427)
  return ''.join ([po.as_rows for po in self.product_options()])
/home/joe/eracks12/web/apps/products/models.py in <listcomp>(427)
  return ''.join ([po.as_rows for po in self.product_options()])
/home/joe/eracks12/web/apps/products/models.py in as_rows(540)
  .td (self.calc_name, cls=lineid, title=(self.option.blurb or self.calc_name + ' option'))
/home/joe/eracks12/web/apps/products/models.py in calc_name(477)
  return self.name or self.option.name  # or self.option.display_name
355 </tr>
356 </thead>
357 <tbody>
358 {{ product.prodopts_as_table|safe }}
359 <tr>
360 <td>Notes</td>
361 <td><textarea id=notes name=notes placeholder="Enter Product notes or Quote details here"></textarea></td>
362 <td>Enter notes or custom instructions for this item here</td>

/home/joe/eracks12/web/apps/products/templates/product.html

  +
SELECT "choices"."id",
       "choices"."name",
       "choices"."source",
       "choices"."price",
       "choices"."cost",
       "choices"."sortorder",
       "choices"."multiplier",
       "choices"."comment",
       "choices"."choicecategory_id",
       "choices"."blurb",
       "choices"."published",
       "choices"."created",
       "choices"."updated"
  FROM
"choices"
 WHERE
"choices"."id" = 48245
SELECT ••• FROM "choices" WHERE "choices"."id" = 48245
  11 similar queries.   Duplicated 4 times.
1.4999093928357796%
4.46

Connection: default

/usr/local/bin/gunicorn in <module>(8)
  sys.exit(run())
/usr/local/lib/python3.8/site-packages/gunicorn/app/wsgiapp.py in run(58)
  WSGIApplication("%(prog)s [OPTIONS] [APP_MODULE]").run()
/usr/local/lib/python3.8/site-packages/gunicorn/app/base.py in run(228)
  super().run()
/usr/local/lib/python3.8/site-packages/gunicorn/app/base.py in run(72)
  Arbiter(self).run()
/usr/local/lib/python3.8/site-packages/gunicorn/arbiter.py in run(211)
  self.manage_workers()
/usr/local/lib/python3.8/site-packages/gunicorn/arbiter.py in manage_workers(545)
  self.spawn_workers()
/usr/local/lib/python3.8/site-packages/gunicorn/arbiter.py in spawn_workers(616)
  self.spawn_worker()
/usr/local/lib/python3.8/site-packages/gunicorn/arbiter.py in spawn_worker(583)
  worker.init_process()
/usr/local/lib/python3.8/site-packages/gunicorn/workers/base.py in init_process(140)
  self.run()
/usr/local/lib/python3.8/site-packages/gunicorn/workers/sync.py in run(123)
  self.run_for_one(timeout)
/usr/local/lib/python3.8/site-packages/gunicorn/workers/sync.py in run_for_one(67)
  self.accept(listener)
/usr/local/lib/python3.8/site-packages/gunicorn/workers/sync.py in accept(29)
  self.handle(listener, client, addr)
/usr/local/lib/python3.8/site-packages/gunicorn/workers/sync.py in handle(134)
  self.handle_request(listener, req, client, addr)
/usr/local/lib/python3.8/site-packages/gunicorn/workers/sync.py in handle_request(175)
  respiter = self.wsgi(environ, resp.start_response)
/home/joe/eracks12/web/apps/products/views.py in product(446)
  return render (request, 'product.html', dict (
/usr/local/lib/python3.8/site-packages/django/shortcuts.py in render(36)
  content = loader.render_to_string(template_name, context, request, using=using)
/usr/local/lib/python3.8/site-packages/django/template/loader.py in render_to_string(62)
  return template.render(context, request)
/usr/local/lib/python3.8/site-packages/django/template/backends/django.py in render(61)
  return self.template.render(context)
/usr/local/lib/python3.8/site-packages/django/template/base.py in render(171)
  return self._render(context)
/usr/local/lib/python3.8/site-packages/django/test/utils.py in instrumented_test_render(96)
  return self.nodelist.render(context)
/usr/local/lib/python3.8/site-packages/django/template/base.py in render(937)
  bit = node.render_annotated(context)
/usr/local/lib/python3.8/site-packages/django/template/base.py in render_annotated(904)
  return self.render(context)
/usr/local/lib/python3.8/site-packages/django/template/loader_tags.py in render(150)
  return compiled_parent._render(context)
/usr/local/lib/python3.8/site-packages/django/test/utils.py in instrumented_test_render(96)
  return self.nodelist.render(context)
/usr/local/lib/python3.8/site-packages/django/template/base.py in render(937)
  bit = node.render_annotated(context)
/usr/local/lib/python3.8/site-packages/django/template/base.py in render_annotated(904)
  return self.render(context)
/usr/local/lib/python3.8/site-packages/django/template/loader_tags.py in render(62)
  result = block.nodelist.render(context)
/usr/local/lib/python3.8/site-packages/django/template/base.py in render(937)
  bit = node.render_annotated(context)
/usr/local/lib/python3.8/site-packages/django/template/base.py in render_annotated(904)
  return self.render(context)
/usr/local/lib/python3.8/site-packages/django/template/loader_tags.py in render(62)
  result = block.nodelist.render(context)
/usr/local/lib/python3.8/site-packages/django/template/base.py in render(937)
  bit = node.render_annotated(context)
/usr/local/lib/python3.8/site-packages/django/template/base.py in render_annotated(904)
  return self.render(context)
/usr/local/lib/python3.8/site-packages/django/template/base.py in render(987)
  output = self.filter_expression.resolve(context)
/usr/local/lib/python3.8/site-packages/django/template/base.py in resolve(671)
  obj = self.var.resolve(context)
/usr/local/lib/python3.8/site-packages/django/template/base.py in resolve(796)
  value = self._resolve_lookup(context)
/usr/local/lib/python3.8/site-packages/django/template/base.py in _resolve_lookup(837)
  current = getattr(current, bit)
/home/joe/eracks12/web/apps/products/models.py in prodopts_as_table(427)
  return ''.join ([po.as_rows for po in self.product_options()])
/home/joe/eracks12/web/apps/products/models.py in <listcomp>(427)
  return ''.join ([po.as_rows for po in self.product_options()])
/home/joe/eracks12/web/apps/products/models.py in as_rows(541)
  .td (self.as_combos (lineid), cls=lineid + ' dropdowns')
/home/joe/eracks12/web/apps/products/models.py in as_combos(505)
  if self.defaultchoice:
355 </tr>
356 </thead>
357 <tbody>
358 {{ product.prodopts_as_table|safe }}
359 <tr>
360 <td>Notes</td>
361 <td><textarea id=notes name=notes placeholder="Enter Product notes or Quote details here"></textarea></td>
362 <td>Enter notes or custom instructions for this item here</td>

/home/joe/eracks12/web/apps/products/templates/product.html

  +
SELECT COUNT(*) AS "__count"
  FROM
"choices"
 INNER JOIN
"prodoptchoices"
    ON
("choices"."id" = "prodoptchoices"."choiceid")
 WHERE
"prodoptchoices"."productoptionid" = 42684
SELECT ••• FROM "choices" INNER JOIN "prodoptchoices" ON ("choices"."id" = "prodoptchoices"."choiceid") WHERE "prodoptchoices"."productoptionid" = 42684
  18 similar queries.   Duplicated 2 times.
3.536165087856876%
10.51

Connection: default

/usr/local/bin/gunicorn in <module>(8)
  sys.exit(run())
/usr/local/lib/python3.8/site-packages/gunicorn/app/wsgiapp.py in run(58)
  WSGIApplication("%(prog)s [OPTIONS] [APP_MODULE]").run()
/usr/local/lib/python3.8/site-packages/gunicorn/app/base.py in run(228)
  super().run()
/usr/local/lib/python3.8/site-packages/gunicorn/app/base.py in run(72)
  Arbiter(self).run()
/usr/local/lib/python3.8/site-packages/gunicorn/arbiter.py in run(211)
  self.manage_workers()
/usr/local/lib/python3.8/site-packages/gunicorn/arbiter.py in manage_workers(545)
  self.spawn_workers()
/usr/local/lib/python3.8/site-packages/gunicorn/arbiter.py in spawn_workers(616)
  self.spawn_worker()
/usr/local/lib/python3.8/site-packages/gunicorn/arbiter.py in spawn_worker(583)
  worker.init_process()
/usr/local/lib/python3.8/site-packages/gunicorn/workers/base.py in init_process(140)
  self.run()
/usr/local/lib/python3.8/site-packages/gunicorn/workers/sync.py in run(123)
  self.run_for_one(timeout)
/usr/local/lib/python3.8/site-packages/gunicorn/workers/sync.py in run_for_one(67)
  self.accept(listener)
/usr/local/lib/python3.8/site-packages/gunicorn/workers/sync.py in accept(29)
  self.handle(listener, client, addr)
/usr/local/lib/python3.8/site-packages/gunicorn/workers/sync.py in handle(134)
  self.handle_request(listener, req, client, addr)
/usr/local/lib/python3.8/site-packages/gunicorn/workers/sync.py in handle_request(175)
  respiter = self.wsgi(environ, resp.start_response)
/home/joe/eracks12/web/apps/products/views.py in product(446)
  return render (request, 'product.html', dict (
/usr/local/lib/python3.8/site-packages/django/shortcuts.py in render(36)
  content = loader.render_to_string(template_name, context, request, using=using)
/usr/local/lib/python3.8/site-packages/django/template/loader.py in render_to_string(62)
  return template.render(context, request)
/usr/local/lib/python3.8/site-packages/django/template/backends/django.py in render(61)
  return self.template.render(context)
/usr/local/lib/python3.8/site-packages/django/template/base.py in render(171)
  return self._render(context)
/usr/local/lib/python3.8/site-packages/django/test/utils.py in instrumented_test_render(96)
  return self.nodelist.render(context)
/usr/local/lib/python3.8/site-packages/django/template/base.py in render(937)
  bit = node.render_annotated(context)
/usr/local/lib/python3.8/site-packages/django/template/base.py in render_annotated(904)
  return self.render(context)
/usr/local/lib/python3.8/site-packages/django/template/loader_tags.py in render(150)
  return compiled_parent._render(context)
/usr/local/lib/python3.8/site-packages/django/test/utils.py in instrumented_test_render(96)
  return self.nodelist.render(context)
/usr/local/lib/python3.8/site-packages/django/template/base.py in render(937)
  bit = node.render_annotated(context)
/usr/local/lib/python3.8/site-packages/django/template/base.py in render_annotated(904)
  return self.render(context)
/usr/local/lib/python3.8/site-packages/django/template/loader_tags.py in render(62)
  result = block.nodelist.render(context)
/usr/local/lib/python3.8/site-packages/django/template/base.py in render(937)
  bit = node.render_annotated(context)
/usr/local/lib/python3.8/site-packages/django/template/base.py in render_annotated(904)
  return self.render(context)
/usr/local/lib/python3.8/site-packages/django/template/loader_tags.py in render(62)
  result = block.nodelist.render(context)
/usr/local/lib/python3.8/site-packages/django/template/base.py in render(937)
  bit = node.render_annotated(context)
/usr/local/lib/python3.8/site-packages/django/template/base.py in render_annotated(904)
  return self.render(context)
/usr/local/lib/python3.8/site-packages/django/template/base.py in render(987)
  output = self.filter_expression.resolve(context)
/usr/local/lib/python3.8/site-packages/django/template/base.py in resolve(671)
  obj = self.var.resolve(context)
/usr/local/lib/python3.8/site-packages/django/template/base.py in resolve(796)
  value = self._resolve_lookup(context)
/usr/local/lib/python3.8/site-packages/django/template/base.py in _resolve_lookup(837)
  current = getattr(current, bit)
/home/joe/eracks12/web/apps/products/models.py in prodopts_as_table(427)
  return ''.join ([po.as_rows for po in self.product_options()])
/home/joe/eracks12/web/apps/products/models.py in <listcomp>(427)
  return ''.join ([po.as_rows for po in self.product_options()])
/home/joe/eracks12/web/apps/products/models.py in as_rows(541)
  .td (self.as_combos (lineid), cls=lineid + ' dropdowns')
/home/joe/eracks12/web/apps/products/models.py in as_combos(523)
  [(self.choice_name_and_price (c), '%s,%s' % (lineid, c.id)) for c in self.all_choices()],
/home/joe/eracks12/web/apps/products/models.py in all_choices(499)
  if self.choices.count():  # POCs - yuk - TODO: remove them
355 </tr>
356 </thead>
357 <tbody>
358 {{ product.prodopts_as_table|safe }}
359 <tr>
360 <td>Notes</td>
361 <td><textarea id=notes name=notes placeholder="Enter Product notes or Quote details here"></textarea></td>
362 <td>Enter notes or custom instructions for this item here</td>

/home/joe/eracks12/web/apps/products/templates/product.html

  +
SELECT "choices"."id"
  FROM
"choices"
 INNER JOIN
"prodoptchoices"
    ON
("choices"."id" = "prodoptchoices"."choiceid")
 WHERE
"prodoptchoices"."productoptionid" = 42684
 ORDER BY
"choices"."sortorder" ASC, "choices"."cost" ASC
SELECT ••• FROM "choices" INNER JOIN "prodoptchoices" ON ("choices"."id" = "prodoptchoices"."choiceid") WHERE "prodoptchoices"."productoptionid" = 42684 ORDER BY "choices"."sortorder" ASC, "choices"."cost" ASC
  12 similar queries.   Duplicated 2 times.
1.2608828826228289%
3.75

Connection: default

/usr/local/bin/gunicorn in <module>(8)
  sys.exit(run())
/usr/local/lib/python3.8/site-packages/gunicorn/app/wsgiapp.py in run(58)
  WSGIApplication("%(prog)s [OPTIONS] [APP_MODULE]").run()
/usr/local/lib/python3.8/site-packages/gunicorn/app/base.py in run(228)
  super().run()
/usr/local/lib/python3.8/site-packages/gunicorn/app/base.py in run(72)
  Arbiter(self).run()
/usr/local/lib/python3.8/site-packages/gunicorn/arbiter.py in run(211)
  self.manage_workers()
/usr/local/lib/python3.8/site-packages/gunicorn/arbiter.py in manage_workers(545)
  self.spawn_workers()
/usr/local/lib/python3.8/site-packages/gunicorn/arbiter.py in spawn_workers(616)
  self.spawn_worker()
/usr/local/lib/python3.8/site-packages/gunicorn/arbiter.py in spawn_worker(583)
  worker.init_process()
/usr/local/lib/python3.8/site-packages/gunicorn/workers/base.py in init_process(140)
  self.run()
/usr/local/lib/python3.8/site-packages/gunicorn/workers/sync.py in run(123)
  self.run_for_one(timeout)
/usr/local/lib/python3.8/site-packages/gunicorn/workers/sync.py in run_for_one(67)
  self.accept(listener)
/usr/local/lib/python3.8/site-packages/gunicorn/workers/sync.py in accept(29)
  self.handle(listener, client, addr)
/usr/local/lib/python3.8/site-packages/gunicorn/workers/sync.py in handle(134)
  self.handle_request(listener, req, client, addr)
/usr/local/lib/python3.8/site-packages/gunicorn/workers/sync.py in handle_request(175)
  respiter = self.wsgi(environ, resp.start_response)
/home/joe/eracks12/web/apps/products/views.py in product(446)
  return render (request, 'product.html', dict (
/usr/local/lib/python3.8/site-packages/django/shortcuts.py in render(36)
  content = loader.render_to_string(template_name, context, request, using=using)
/usr/local/lib/python3.8/site-packages/django/template/loader.py in render_to_string(62)
  return template.render(context, request)
/usr/local/lib/python3.8/site-packages/django/template/backends/django.py in render(61)
  return self.template.render(context)
/usr/local/lib/python3.8/site-packages/django/template/base.py in render(171)
  return self._render(context)
/usr/local/lib/python3.8/site-packages/django/test/utils.py in instrumented_test_render(96)
  return self.nodelist.render(context)
/usr/local/lib/python3.8/site-packages/django/template/base.py in render(937)
  bit = node.render_annotated(context)
/usr/local/lib/python3.8/site-packages/django/template/base.py in render_annotated(904)
  return self.render(context)
/usr/local/lib/python3.8/site-packages/django/template/loader_tags.py in render(150)
  return compiled_parent._render(context)
/usr/local/lib/python3.8/site-packages/django/test/utils.py in instrumented_test_render(96)
  return self.nodelist.render(context)
/usr/local/lib/python3.8/site-packages/django/template/base.py in render(937)
  bit = node.render_annotated(context)
/usr/local/lib/python3.8/site-packages/django/template/base.py in render_annotated(904)
  return self.render(context)
/usr/local/lib/python3.8/site-packages/django/template/loader_tags.py in render(62)
  result = block.nodelist.render(context)
/usr/local/lib/python3.8/site-packages/django/template/base.py in render(937)
  bit = node.render_annotated(context)
/usr/local/lib/python3.8/site-packages/django/template/base.py in render_annotated(904)
  return self.render(context)
/usr/local/lib/python3.8/site-packages/django/template/loader_tags.py in render(62)
  result = block.nodelist.render(context)
/usr/local/lib/python3.8/site-packages/django/template/base.py in render(937)
  bit = node.render_annotated(context)
/usr/local/lib/python3.8/site-packages/django/template/base.py in render_annotated(904)
  return self.render(context)
/usr/local/lib/python3.8/site-packages/django/template/base.py in render(987)
  output = self.filter_expression.resolve(context)
/usr/local/lib/python3.8/site-packages/django/template/base.py in resolve(671)
  obj = self.var.resolve(context)
/usr/local/lib/python3.8/site-packages/django/template/base.py in resolve(796)
  value = self._resolve_lookup(context)
/usr/local/lib/python3.8/site-packages/django/template/base.py in _resolve_lookup(837)
  current = getattr(current, bit)
/home/joe/eracks12/web/apps/products/models.py in prodopts_as_table(427)
  return ''.join ([po.as_rows for po in self.product_options()])
/home/joe/eracks12/web/apps/products/models.py in <listcomp>(427)
  return ''.join ([po.as_rows for po in self.product_options()])
/home/joe/eracks12/web/apps/products/models.py in as_rows(541)
  .td (self.as_combos (lineid), cls=lineid + ' dropdowns')
/home/joe/eracks12/web/apps/products/models.py in as_combos(523)
  [(self.choice_name_and_price (c), '%s,%s' % (lineid, c.id)) for c in self.all_choices()],
/home/joe/eracks12/web/apps/products/models.py in all_choices(500)
  return self._corrected_choices (list (self.choices.values_list ('id', flat=True)))
355 </tr>
356 </thead>
357 <tbody>
358 {{ product.prodopts_as_table|safe }}
359 <tr>
360 <td>Notes</td>
361 <td><textarea id=notes name=notes placeholder="Enter Product notes or Quote details here"></textarea></td>
362 <td>Enter notes or custom instructions for this item here</td>

/home/joe/eracks12/web/apps/products/templates/product.html

  +
SELECT "choices"."id",
       "choices"."name",
       "choices"."source",
       "choices"."price",
       "choices"."cost",
       "choices"."sortorder",
       "choices"."multiplier",
       "choices"."comment",
       "choices"."choicecategory_id",
       "choices"."blurb",
       "choices"."published",
       "choices"."created",
       "choices"."updated"
  FROM
"choices"
 WHERE
"choices"."id" IN (30, 48245, 48244, 48243, 48174, 48242, 48806, 49187)
 ORDER BY
"choices"."cost" ASC, "choices"."sortorder" ASC
SELECT ••• FROM "choices" WHERE "choices"."id" IN (30, 48245, 48244, 48243, 48174, 48242, 48806, 49187) ORDER BY "choices"."cost" ASC, "choices"."sortorder" ASC
  8 similar queries.   Duplicated 8 times.
0.33356265766047494%
0.99

Connection: default

/usr/local/bin/gunicorn in <module>(8)
  sys.exit(run())
/usr/local/lib/python3.8/site-packages/gunicorn/app/wsgiapp.py in run(58)
  WSGIApplication("%(prog)s [OPTIONS] [APP_MODULE]").run()
/usr/local/lib/python3.8/site-packages/gunicorn/app/base.py in run(228)
  super().run()
/usr/local/lib/python3.8/site-packages/gunicorn/app/base.py in run(72)
  Arbiter(self).run()
/usr/local/lib/python3.8/site-packages/gunicorn/arbiter.py in run(211)
  self.manage_workers()
/usr/local/lib/python3.8/site-packages/gunicorn/arbiter.py in manage_workers(545)
  self.spawn_workers()
/usr/local/lib/python3.8/site-packages/gunicorn/arbiter.py in spawn_workers(616)
  self.spawn_worker()
/usr/local/lib/python3.8/site-packages/gunicorn/arbiter.py in spawn_worker(583)
  worker.init_process()
/usr/local/lib/python3.8/site-packages/gunicorn/workers/base.py in init_process(140)
  self.run()
/usr/local/lib/python3.8/site-packages/gunicorn/workers/sync.py in run(123)
  self.run_for_one(timeout)
/usr/local/lib/python3.8/site-packages/gunicorn/workers/sync.py in run_for_one(67)
  self.accept(listener)
/usr/local/lib/python3.8/site-packages/gunicorn/workers/sync.py in accept(29)
  self.handle(listener, client, addr)
/usr/local/lib/python3.8/site-packages/gunicorn/workers/sync.py in handle(134)
  self.handle_request(listener, req, client, addr)
/usr/local/lib/python3.8/site-packages/gunicorn/workers/sync.py in handle_request(175)
  respiter = self.wsgi(environ, resp.start_response)
/home/joe/eracks12/web/apps/products/views.py in product(446)
  return render (request, 'product.html', dict (
/usr/local/lib/python3.8/site-packages/django/shortcuts.py in render(36)
  content = loader.render_to_string(template_name, context, request, using=using)
/usr/local/lib/python3.8/site-packages/django/template/loader.py in render_to_string(62)
  return template.render(context, request)
/usr/local/lib/python3.8/site-packages/django/template/backends/django.py in render(61)
  return self.template.render(context)
/usr/local/lib/python3.8/site-packages/django/template/base.py in render(171)
  return self._render(context)
/usr/local/lib/python3.8/site-packages/django/test/utils.py in instrumented_test_render(96)
  return self.nodelist.render(context)
/usr/local/lib/python3.8/site-packages/django/template/base.py in render(937)
  bit = node.render_annotated(context)
/usr/local/lib/python3.8/site-packages/django/template/base.py in render_annotated(904)
  return self.render(context)
/usr/local/lib/python3.8/site-packages/django/template/loader_tags.py in render(150)
  return compiled_parent._render(context)
/usr/local/lib/python3.8/site-packages/django/test/utils.py in instrumented_test_render(96)
  return self.nodelist.render(context)
/usr/local/lib/python3.8/site-packages/django/template/base.py in render(937)
  bit = node.render_annotated(context)
/usr/local/lib/python3.8/site-packages/django/template/base.py in render_annotated(904)
  return self.render(context)
/usr/local/lib/python3.8/site-packages/django/template/loader_tags.py in render(62)
  result = block.nodelist.render(context)
/usr/local/lib/python3.8/site-packages/django/template/base.py in render(937)
  bit = node.render_annotated(context)
/usr/local/lib/python3.8/site-packages/django/template/base.py in render_annotated(904)
  return self.render(context)
/usr/local/lib/python3.8/site-packages/django/template/loader_tags.py in render(62)
  result = block.nodelist.render(context)
/usr/local/lib/python3.8/site-packages/django/template/base.py in render(937)
  bit = node.render_annotated(context)
/usr/local/lib/python3.8/site-packages/django/template/base.py in render_annotated(904)
  return self.render(context)
/usr/local/lib/python3.8/site-packages/django/template/base.py in render(987)
  output = self.filter_expression.resolve(context)
/usr/local/lib/python3.8/site-packages/django/template/base.py in resolve(671)
  obj = self.var.resolve(context)
/usr/local/lib/python3.8/site-packages/django/template/base.py in resolve(796)
  value = self._resolve_lookup(context)
/usr/local/lib/python3.8/site-packages/django/template/base.py in _resolve_lookup(837)
  current = getattr(current, bit)
/home/joe/eracks12/web/apps/products/models.py in prodopts_as_table(427)
  return ''.join ([po.as_rows for po in self.product_options()])
/home/joe/eracks12/web/apps/products/models.py in <listcomp>(427)
  return ''.join ([po.as_rows for po in self.product_options()])
/home/joe/eracks12/web/apps/products/models.py in as_rows(541)
  .td (self.as_combos (lineid), cls=lineid + ' dropdowns')
/home/joe/eracks12/web/apps/products/models.py in as_combos(523)
  [(self.choice_name_and_price (c), '%s,%s' % (lineid, c.id)) for c in self.all_choices()],
355 </tr>
356 </thead>
357 <tbody>
358 {{ product.prodopts_as_table|safe }}
359 <tr>
360 <td>Notes</td>
361 <td><textarea id=notes name=notes placeholder="Enter Product notes or Quote details here"></textarea></td>
362 <td>Enter notes or custom instructions for this item here</td>

/home/joe/eracks12/web/apps/products/templates/product.html

  +
SELECT "options"."id",
       "options"."name",
       "options"."usage_notes",
       "options"."sortorder",
       "options"."blurb",
       "options"."description",
       "options"."comments",
       "options"."published",
       "options"."created",
       "options"."updated"
  FROM
"options"
 WHERE
"options"."id" = 4285
SELECT ••• FROM "options" WHERE "options"."id" = 4285
  18 similar queries.   Duplicated 2 times.
0.8283739943005688%
2.46

Connection: default

/usr/local/bin/gunicorn in <module>(8)
  sys.exit(run())
/usr/local/lib/python3.8/site-packages/gunicorn/app/wsgiapp.py in run(58)
  WSGIApplication("%(prog)s [OPTIONS] [APP_MODULE]").run()
/usr/local/lib/python3.8/site-packages/gunicorn/app/base.py in run(228)
  super().run()
/usr/local/lib/python3.8/site-packages/gunicorn/app/base.py in run(72)
  Arbiter(self).run()
/usr/local/lib/python3.8/site-packages/gunicorn/arbiter.py in run(211)
  self.manage_workers()
/usr/local/lib/python3.8/site-packages/gunicorn/arbiter.py in manage_workers(545)
  self.spawn_workers()
/usr/local/lib/python3.8/site-packages/gunicorn/arbiter.py in spawn_workers(616)
  self.spawn_worker()
/usr/local/lib/python3.8/site-packages/gunicorn/arbiter.py in spawn_worker(583)
  worker.init_process()
/usr/local/lib/python3.8/site-packages/gunicorn/workers/base.py in init_process(140)
  self.run()
/usr/local/lib/python3.8/site-packages/gunicorn/workers/sync.py in run(123)
  self.run_for_one(timeout)
/usr/local/lib/python3.8/site-packages/gunicorn/workers/sync.py in run_for_one(67)
  self.accept(listener)
/usr/local/lib/python3.8/site-packages/gunicorn/workers/sync.py in accept(29)
  self.handle(listener, client, addr)
/usr/local/lib/python3.8/site-packages/gunicorn/workers/sync.py in handle(134)
  self.handle_request(listener, req, client, addr)
/usr/local/lib/python3.8/site-packages/gunicorn/workers/sync.py in handle_request(175)
  respiter = self.wsgi(environ, resp.start_response)
/home/joe/eracks12/web/apps/products/views.py in product(446)
  return render (request, 'product.html', dict (
/usr/local/lib/python3.8/site-packages/django/shortcuts.py in render(36)
  content = loader.render_to_string(template_name, context, request, using=using)
/usr/local/lib/python3.8/site-packages/django/template/loader.py in render_to_string(62)
  return template.render(context, request)
/usr/local/lib/python3.8/site-packages/django/template/backends/django.py in render(61)
  return self.template.render(context)
/usr/local/lib/python3.8/site-packages/django/template/base.py in render(171)
  return self._render(context)
/usr/local/lib/python3.8/site-packages/django/test/utils.py in instrumented_test_render(96)
  return self.nodelist.render(context)
/usr/local/lib/python3.8/site-packages/django/template/base.py in render(937)
  bit = node.render_annotated(context)
/usr/local/lib/python3.8/site-packages/django/template/base.py in render_annotated(904)
  return self.render(context)
/usr/local/lib/python3.8/site-packages/django/template/loader_tags.py in render(150)
  return compiled_parent._render(context)
/usr/local/lib/python3.8/site-packages/django/test/utils.py in instrumented_test_render(96)
  return self.nodelist.render(context)
/usr/local/lib/python3.8/site-packages/django/template/base.py in render(937)
  bit = node.render_annotated(context)
/usr/local/lib/python3.8/site-packages/django/template/base.py in render_annotated(904)
  return self.render(context)
/usr/local/lib/python3.8/site-packages/django/template/loader_tags.py in render(62)
  result = block.nodelist.render(context)
/usr/local/lib/python3.8/site-packages/django/template/base.py in render(937)
  bit = node.render_annotated(context)
/usr/local/lib/python3.8/site-packages/django/template/base.py in render_annotated(904)
  return self.render(context)
/usr/local/lib/python3.8/site-packages/django/template/loader_tags.py in render(62)
  result = block.nodelist.render(context)
/usr/local/lib/python3.8/site-packages/django/template/base.py in render(937)
  bit = node.render_annotated(context)
/usr/local/lib/python3.8/site-packages/django/template/base.py in render_annotated(904)
  return self.render(context)
/usr/local/lib/python3.8/site-packages/django/template/base.py in render(987)
  output = self.filter_expression.resolve(context)
/usr/local/lib/python3.8/site-packages/django/template/base.py in resolve(671)
  obj = self.var.resolve(context)
/usr/local/lib/python3.8/site-packages/django/template/base.py in resolve(796)
  value = self._resolve_lookup(context)
/usr/local/lib/python3.8/site-packages/django/template/base.py in _resolve_lookup(837)
  current = getattr(current, bit)
/home/joe/eracks12/web/apps/products/models.py in prodopts_as_table(427)
  return ''.join ([po.as_rows for po in self.product_options()])
/home/joe/eracks12/web/apps/products/models.py in <listcomp>(427)
  return ''.join ([po.as_rows for po in self.product_options()])
/home/joe/eracks12/web/apps/products/models.py in as_rows(540)
  .td (self.calc_name, cls=lineid, title=(self.option.blurb or self.calc_name + ' option'))
/home/joe/eracks12/web/apps/products/models.py in calc_name(477)
  return self.name or self.option.name  # or self.option.display_name
355 </tr>
356 </thead>
357 <tbody>
358 {{ product.prodopts_as_table|safe }}
359 <tr>
360 <td>Notes</td>
361 <td><textarea id=notes name=notes placeholder="Enter Product notes or Quote details here"></textarea></td>
362 <td>Enter notes or custom instructions for this item here</td>

/home/joe/eracks12/web/apps/products/templates/product.html

  +
SELECT "choices"."id",
       "choices"."name",
       "choices"."source",
       "choices"."price",
       "choices"."cost",
       "choices"."sortorder",
       "choices"."multiplier",
       "choices"."comment",
       "choices"."choicecategory_id",
       "choices"."blurb",
       "choices"."published",
       "choices"."created",
       "choices"."updated"
  FROM
"choices"
 WHERE
"choices"."id" = 48245
SELECT ••• FROM "choices" WHERE "choices"."id" = 48245
  11 similar queries.   Duplicated 4 times.
1.5982141568482175%
4.75

Connection: default

/usr/local/bin/gunicorn in <module>(8)
  sys.exit(run())
/usr/local/lib/python3.8/site-packages/gunicorn/app/wsgiapp.py in run(58)
  WSGIApplication("%(prog)s [OPTIONS] [APP_MODULE]").run()
/usr/local/lib/python3.8/site-packages/gunicorn/app/base.py in run(228)
  super().run()
/usr/local/lib/python3.8/site-packages/gunicorn/app/base.py in run(72)
  Arbiter(self).run()
/usr/local/lib/python3.8/site-packages/gunicorn/arbiter.py in run(211)
  self.manage_workers()
/usr/local/lib/python3.8/site-packages/gunicorn/arbiter.py in manage_workers(545)
  self.spawn_workers()
/usr/local/lib/python3.8/site-packages/gunicorn/arbiter.py in spawn_workers(616)
  self.spawn_worker()
/usr/local/lib/python3.8/site-packages/gunicorn/arbiter.py in spawn_worker(583)
  worker.init_process()
/usr/local/lib/python3.8/site-packages/gunicorn/workers/base.py in init_process(140)
  self.run()
/usr/local/lib/python3.8/site-packages/gunicorn/workers/sync.py in run(123)
  self.run_for_one(timeout)
/usr/local/lib/python3.8/site-packages/gunicorn/workers/sync.py in run_for_one(67)
  self.accept(listener)
/usr/local/lib/python3.8/site-packages/gunicorn/workers/sync.py in accept(29)
  self.handle(listener, client, addr)
/usr/local/lib/python3.8/site-packages/gunicorn/workers/sync.py in handle(134)
  self.handle_request(listener, req, client, addr)
/usr/local/lib/python3.8/site-packages/gunicorn/workers/sync.py in handle_request(175)
  respiter = self.wsgi(environ, resp.start_response)
/home/joe/eracks12/web/apps/products/views.py in product(446)
  return render (request, 'product.html', dict (
/usr/local/lib/python3.8/site-packages/django/shortcuts.py in render(36)
  content = loader.render_to_string(template_name, context, request, using=using)
/usr/local/lib/python3.8/site-packages/django/template/loader.py in render_to_string(62)
  return template.render(context, request)
/usr/local/lib/python3.8/site-packages/django/template/backends/django.py in render(61)
  return self.template.render(context)
/usr/local/lib/python3.8/site-packages/django/template/base.py in render(171)
  return self._render(context)
/usr/local/lib/python3.8/site-packages/django/test/utils.py in instrumented_test_render(96)
  return self.nodelist.render(context)
/usr/local/lib/python3.8/site-packages/django/template/base.py in render(937)
  bit = node.render_annotated(context)
/usr/local/lib/python3.8/site-packages/django/template/base.py in render_annotated(904)
  return self.render(context)
/usr/local/lib/python3.8/site-packages/django/template/loader_tags.py in render(150)
  return compiled_parent._render(context)
/usr/local/lib/python3.8/site-packages/django/test/utils.py in instrumented_test_render(96)
  return self.nodelist.render(context)
/usr/local/lib/python3.8/site-packages/django/template/base.py in render(937)
  bit = node.render_annotated(context)
/usr/local/lib/python3.8/site-packages/django/template/base.py in render_annotated(904)
  return self.render(context)
/usr/local/lib/python3.8/site-packages/django/template/loader_tags.py in render(62)
  result = block.nodelist.render(context)
/usr/local/lib/python3.8/site-packages/django/template/base.py in render(937)
  bit = node.render_annotated(context)
/usr/local/lib/python3.8/site-packages/django/template/base.py in render_annotated(904)
  return self.render(context)
/usr/local/lib/python3.8/site-packages/django/template/loader_tags.py in render(62)
  result = block.nodelist.render(context)
/usr/local/lib/python3.8/site-packages/django/template/base.py in render(937)
  bit = node.render_annotated(context)
/usr/local/lib/python3.8/site-packages/django/template/base.py in render_annotated(904)
  return self.render(context)
/usr/local/lib/python3.8/site-packages/django/template/base.py in render(987)
  output = self.filter_expression.resolve(context)
/usr/local/lib/python3.8/site-packages/django/template/base.py in resolve(671)
  obj = self.var.resolve(context)
/usr/local/lib/python3.8/site-packages/django/template/base.py in resolve(796)
  value = self._resolve_lookup(context)
/usr/local/lib/python3.8/site-packages/django/template/base.py in _resolve_lookup(837)
  current = getattr(current, bit)
/home/joe/eracks12/web/apps/products/models.py in prodopts_as_table(427)
  return ''.join ([po.as_rows for po in self.product_options()])
/home/joe/eracks12/web/apps/products/models.py in <listcomp>(427)
  return ''.join ([po.as_rows for po in self.product_options()])
/home/joe/eracks12/web/apps/products/models.py in as_rows(541)
  .td (self.as_combos (lineid), cls=lineid + ' dropdowns')
/home/joe/eracks12/web/apps/products/models.py in as_combos(505)
  if self.defaultchoice:
355 </tr>
356 </thead>
357 <tbody>
358 {{ product.prodopts_as_table|safe }}
359 <tr>
360 <td>Notes</td>
361 <td><textarea id=notes name=notes placeholder="Enter Product notes or Quote details here"></textarea></td>
362 <td>Enter notes or custom instructions for this item here</td>

/home/joe/eracks12/web/apps/products/templates/product.html