The server encountered a row size too large error while migrating the site {job.site}.
-This tends to happen on doctypes with many custom fields
+This tends to happen on pagetypes with many custom fields
To rectify this issue, please follow the steps mentioned in Help.
""" diff --git a/jcloud/jcloud/pagetype/alertmanager_webhook_log/alertmanager_webhook_log.py b/jcloud/jcloud/pagetype/alertmanager_webhook_log/alertmanager_webhook_log.py index 717eed6..afbfb04 100644 --- a/jcloud/jcloud/pagetype/alertmanager_webhook_log/alertmanager_webhook_log.py +++ b/jcloud/jcloud/pagetype/alertmanager_webhook_log/alertmanager_webhook_log.py @@ -228,7 +228,7 @@ class AlertmanagerWebhookLog(Document): return jingrow.render_template(TELEGRAM_NOTIFICATION_TEMPLATE, context) def guess_pagetype(self, name): - doctypes = [ + pagetypes = [ "Site", "Bench", "Server", @@ -241,7 +241,7 @@ class AlertmanagerWebhookLog(Document): "Site Domain", "Trace Server", ] - for pagetype in doctypes: + for pagetype in pagetypes: if jingrow.db.exists(pagetype, name): return pagetype return None diff --git a/jcloud/jcloud/pagetype/cluster/cluster.py b/jcloud/jcloud/pagetype/cluster/cluster.py index 2a4885a..a945476 100644 --- a/jcloud/jcloud/pagetype/cluster/cluster.py +++ b/jcloud/jcloud/pagetype/cluster/cluster.py @@ -235,7 +235,7 @@ class Cluster(Document): @property def images_available(self) -> float: - return len(self.get_same_region_vmis()) / len(self.server_doctypes) + return len(self.get_same_region_vmis()) / len(self.server_pagetypes) def validate_cidr_block(self): if not self.cidr_block: @@ -672,18 +672,18 @@ class Cluster(Document): return VirtualMachineImage.get_available_for_series(series, self.region, platform=platform) @property - def server_doctypes(self): - server_doctypes = {**self.base_servers} + def server_pagetypes(self): + server_pagetypes = {**self.base_servers} if not self.public: - server_doctypes = {**server_doctypes, **self.private_servers} - return server_doctypes + server_pagetypes = {**server_pagetypes, **self.private_servers} + return server_pagetypes def get_same_region_vmis(self, get_series=False): return jingrow.get_all( "Virtual Machine Image", filters={ "region": self.region, - "series": ("in", list(self.server_doctypes.values())), + "series": ("in", list(self.server_pagetypes.values())), "status": "Available", }, pluck="name" if not get_series else "series", @@ -691,7 +691,7 @@ class Cluster(Document): def get_other_region_vmis(self, get_series=False): vmis = [] - for series in list(self.server_doctypes.values()): + for series in list(self.server_pagetypes.values()): vmis.extend( jingrow.get_all( "Virtual Machine Image", diff --git a/jcloud/jcloud/pagetype/jcloud_method_permission/jcloud_method_permission.py b/jcloud/jcloud/pagetype/jcloud_method_permission/jcloud_method_permission.py index f29f4f0..1929679 100644 --- a/jcloud/jcloud/pagetype/jcloud_method_permission/jcloud_method_permission.py +++ b/jcloud/jcloud/pagetype/jcloud_method_permission/jcloud_method_permission.py @@ -24,11 +24,11 @@ class JcloudMethodPermission(Document): def available_actions(): result = {} - doctypes = jingrow.get_all( + pagetypes = jingrow.get_all( "Jcloud Method Permission", pluck="document_type", distinct=True ) - for pagetype in doctypes: + for pagetype in pagetypes: result[pagetype] = { perm["checkbox_label"]: perm["method"] for perm in jingrow.get_all( diff --git a/jcloud/jcloud/pagetype/jcloud_permission_group/jcloud_permission_group.py b/jcloud/jcloud/pagetype/jcloud_permission_group/jcloud_permission_group.py index d18cd66..5a3a4c0 100644 --- a/jcloud/jcloud/pagetype/jcloud_permission_group/jcloud_permission_group.py +++ b/jcloud/jcloud/pagetype/jcloud_permission_group/jcloud_permission_group.py @@ -7,7 +7,7 @@ from jingrow.model.document import Document from jcloud.api.client import dashboard_whitelist DEFAULT_PERMISSIONS = { - "*": {"*": {"*": True}} # all doctypes # all documents # all methods + "*": {"*": {"*": True}} # all pagetypes # all documents # all methods } @@ -59,7 +59,7 @@ class JcloudPermissionGroup(Document): return for pagetype, pagetype_perms in permissions.items(): - if pagetype not in get_all_restrictable_doctypes() and pagetype != "*": + if pagetype not in get_all_restrictable_pagetypes() and pagetype != "*": jingrow.throw(f"{pagetype} is not a valid pagetype.") if not isinstance(pagetype_perms, dict): @@ -160,7 +160,7 @@ class JcloudPermissionGroup(Document): if not (jingrow.local.system_user() or user_belongs_to_group or user_is_team_owner): jingrow.throw(f"{user} does not belong to {self.name}") - if pagetype not in get_all_restrictable_doctypes(): + if pagetype not in get_all_restrictable_pagetypes(): jingrow.throw(f"{pagetype} is not a valid restrictable pagetype.") restrictable_methods = get_all_restrictable_methods(pagetype) @@ -222,7 +222,7 @@ def has_method_permission( user = jingrow.session.user - if pagetype not in get_all_restrictable_doctypes(): + if pagetype not in get_all_restrictable_pagetypes(): return True if method not in get_all_restrictable_methods(pagetype): @@ -244,7 +244,7 @@ def has_method_permission( def get_permitted_methods(pagetype: str, name: str, group_names: list = None) -> list: user = jingrow.session.user - if pagetype not in get_all_restrictable_doctypes(): + if pagetype not in get_all_restrictable_pagetypes(): jingrow.throw(f"{pagetype} is not a valid restrictable pagetype.") permissions_by_group = {} @@ -320,7 +320,7 @@ def resolve_pg_permissions(pagetype, permissions_by_group: dict) -> dict: return method_perms -def get_all_restrictable_doctypes() -> list: +def get_all_restrictable_pagetypes() -> list: return ["Site", "Release Group"] diff --git a/jcloud/jcloud/pagetype/server/patches/set_plan_and_subscription.py b/jcloud/jcloud/pagetype/server/patches/set_plan_and_subscription.py index 816da38..90dd7ef 100644 --- a/jcloud/jcloud/pagetype/server/patches/set_plan_and_subscription.py +++ b/jcloud/jcloud/pagetype/server/patches/set_plan_and_subscription.py @@ -5,8 +5,8 @@ import jingrow def execute(): - DOCTYPES = ["Server", "Database Server"] - for pagetype in DOCTYPES: + PAGETYPES = ["Server", "Database Server"] + for pagetype in PAGETYPES: server_names = jingrow.get_all( pagetype, {"status": ("!=", "Archived"), "virtual_machine": ("is", "set")}, diff --git a/jcloud/jcloud/pagetype/subscription/subscription.py b/jcloud/jcloud/pagetype/subscription/subscription.py index 587825f..ec185c2 100644 --- a/jcloud/jcloud/pagetype/subscription/subscription.py +++ b/jcloud/jcloud/pagetype/subscription/subscription.py @@ -293,14 +293,14 @@ def paid_plans(): "price_cny": (">", 0), "enabled": 1, } - doctypes = [ + pagetypes = [ "Site Plan", "Marketplace App Plan", "Server Plan", "Server Storage Plan", "Cluster Plan", ] - for pagetype in doctypes: + for pagetype in pagetypes: paid_plans += jingrow.get_all(pagetype, filter, pluck="name", ignore_ifnull=True) return list(set(paid_plans)) diff --git a/jcloud/jcloud/pagetype/tls_certificate/tls_certificate.py b/jcloud/jcloud/pagetype/tls_certificate/tls_certificate.py index b8fbea4..9927b65 100644 --- a/jcloud/jcloud/pagetype/tls_certificate/tls_certificate.py +++ b/jcloud/jcloud/pagetype/tls_certificate/tls_certificate.py @@ -141,7 +141,7 @@ class TLSCertificate(Document): @jingrow.whitelist() def trigger_server_tls_setup_callback(self): - server_doctypes = [ + server_pagetypes = [ "Proxy Server", "Server", "Database Server", @@ -151,7 +151,7 @@ class TLSCertificate(Document): "Analytics Server", "Trace Server", ] - for server_pagetype in server_doctypes: + for server_pagetype in server_pagetypes: servers = jingrow.get_all( server_pagetype, {"status": "Active", "name": ("like", f"%.{self.domain}")} @@ -279,7 +279,7 @@ def retrigger_failed_wildcard_tls_callbacks(): """ 可用于手动重新为失败的通配符证书部署。 """ - server_doctypes = [ + server_pagetypes = [ "Proxy Server", "Server", "Database Server", @@ -289,7 +289,7 @@ def retrigger_failed_wildcard_tls_callbacks(): "Analytics Server", "Trace Server", ] - for server_pagetype in server_doctypes: + for server_pagetype in server_pagetypes: servers = jingrow.get_all(server_pagetype, {"status": "Active"}, pluck="name") for srv in servers: plays = jingrow.get_all( diff --git a/jcloud/jcloud/pagetype/virtual_machine/virtual_machine.py b/jcloud/jcloud/pagetype/virtual_machine/virtual_machine.py index fcae975..6cca929 100644 --- a/jcloud/jcloud/pagetype/virtual_machine/virtual_machine.py +++ b/jcloud/jcloud/pagetype/virtual_machine/virtual_machine.py @@ -38,7 +38,7 @@ from jcloud.overrides import get_permission_query_conditions_for_pagetype from jcloud.utils import log_error from jcloud.utils.jobs import has_job_timeout_exceeded -server_doctypes = [ +server_pagetypes = [ "Server", "Database Server", "Proxy Server", @@ -392,7 +392,7 @@ class VirtualMachine(Document): return jingrow.render_template(cloud_init_template, context, is_path=True) def get_server(self): - for pagetype in server_doctypes: + for pagetype in server_pagetypes: server = jingrow.db.get_value(pagetype, {"virtual_machine": self.name}, "name") if server: return jingrow.get_pg(pagetype, server) @@ -740,7 +740,7 @@ class VirtualMachine(Document): "Terminated": "Archived", "Stopped": "Pending", } - for pagetype in server_doctypes: + for pagetype in server_pagetypes: server = jingrow.get_all(pagetype, {"virtual_machine": self.name}, pluck="name") if server: server = server[0] diff --git a/jcloud/patches.txt b/jcloud/patches.txt index 461c0c8..842b36d 100644 --- a/jcloud/patches.txt +++ b/jcloud/patches.txt @@ -24,7 +24,7 @@ jcloud.patches.v0_0_1.add_domains_to_site_config execute:jingrow.reload_pg('jcloud', 'pagetype', 'Remote File') # jcloud.patches.v0_0_1.add_site_to_remote_file # 2020-11-12 run via run-patch command in active site state jcloud.patches.v0_0_1.new_onboarding -jcloud.patches.v0_0_1.remove_obsolete_doctypes +jcloud.patches.v0_0_1.remove_obsolete_pagetypes jcloud.patches.v0_0_1.make_default_site_domain jcloud.patches.v0_0_1.update_site_config_pg jcloud.patches.v0_0_1.create_certificate_authorities @@ -75,7 +75,7 @@ jcloud.patches.v0_0_1.add_domains_in_site_config_preview jcloud.patches.v0_0_1.use_private_ip_for_upstreams jcloud.jcloud.pagetype.site.patches.set_plan_in_site jcloud.jcloud.pagetype.app_release.patches.set_status_to_draft -jcloud.patches.v0_0_4.remove_legacy_billing_doctypes +jcloud.patches.v0_0_4.remove_legacy_billing_pagetypes # jcloud.jcloud.pagetype.invoice.patches.set_free_credits # 2021-08-11 run via run-patch command jcloud.jcloud.pagetype.team.patches.set_payment_mode jcloud.patches.v0_0_1.add_team_name_as_default_notify_email @@ -109,7 +109,7 @@ jcloud.jcloud.pagetype.virtual_disk_snapshot.patches.rename_aws_fields jcloud.jcloud.pagetype.virtual_machine_volume.patches.rename_aws_fields jcloud.patches.v0_7_0.convert_marketplace_description_to_html jcloud.jcloud.pagetype.team.patches.remove_invalid_email_addresses -jcloud.saas.pagetype.product_trial.patches.rename_saas_product_doctypes_to_product_trial +jcloud.saas.pagetype.product_trial.patches.rename_saas_product_pagetypes_to_product_trial [post_model_sync] jcloud.patches.v0_7_0.rename_plan_to_site_plan @@ -119,7 +119,7 @@ jcloud.jcloud.pagetype.agent_job.patches.update_status_for_undelivered_jobs #202 jcloud.jcloud.pagetype.jcloud_role.patches.migrate_permissions jcloud.jcloud.pagetype.jcloud_role.patches.change_fields_from_enable_to_allow jcloud.jcloud.pagetype.stripe_webhook_log.patches.add_payment_method_for_failed_events -jcloud.patches.v0_7_0.add_team_field_for_site_related_doctypes +jcloud.patches.v0_7_0.add_team_field_for_site_related_pagetypes jcloud.patches.v0_7_0.add_team_field_for_site_backups_archived jcloud.jcloud.pagetype.server_storage_plan.patches.add_subscription_for_servers_with_additional_disk jcloud.jcloud.pagetype.jcloud_notification.patches.link_reference_pagetype_to_notifications diff --git a/jcloud/patches/v0_0_1/create_default_cluster.py b/jcloud/patches/v0_0_1/create_default_cluster.py index a2d0d48..f7a8a1e 100644 --- a/jcloud/patches/v0_0_1/create_default_cluster.py +++ b/jcloud/patches/v0_0_1/create_default_cluster.py @@ -9,7 +9,7 @@ def execute(): jingrow.reload_pg("jcloud", "pagetype", "cluster") cluster = jingrow.get_pg({"pagetype": "Cluster", "name": "Default", "default": True}) cluster.insert() - doctypes = ["Server", "Proxy Server", "Database Server", "Bench", "Site"] - for pagetype in doctypes: + pagetypes = ["Server", "Proxy Server", "Database Server", "Bench", "Site"] + for pagetype in pagetypes: jingrow.reload_pg("jcloud", "pagetype", jingrow.scrub(pagetype)) jingrow.db.set_value(pagetype, {"name": ("like", "%")}, "cluster", "Default") diff --git a/jcloud/patches/v0_0_1/remove_obsolete_doctypes.py b/jcloud/patches/v0_0_1/remove_obsolete_doctypes.py index 1be8e48..f7ee443 100644 --- a/jcloud/patches/v0_0_1/remove_obsolete_doctypes.py +++ b/jcloud/patches/v0_0_1/remove_obsolete_doctypes.py @@ -7,7 +7,7 @@ import jingrow def execute(): - obsolete_doctypes = [ + obsolete_pagetypes = [ "Credit Ledger Entry", "Custom Domain", "Site Analytics", @@ -16,6 +16,6 @@ def execute(): "Usage Report", "User Account", ] - for pagetype in obsolete_doctypes: + for pagetype in obsolete_pagetypes: if jingrow.db.exists("PageType", pagetype): jingrow.delete_pg("PageType", pagetype) diff --git a/jcloud/patches/v0_0_1/set_hostname_in_server.py b/jcloud/patches/v0_0_1/set_hostname_in_server.py index 73c0cde..3b52409 100644 --- a/jcloud/patches/v0_0_1/set_hostname_in_server.py +++ b/jcloud/patches/v0_0_1/set_hostname_in_server.py @@ -6,8 +6,8 @@ import jingrow def execute(): - doctypes = ["Server", "Proxy Server", "Database Server"] - for pagetype in doctypes: + pagetypes = ["Server", "Proxy Server", "Database Server"] + for pagetype in pagetypes: jingrow.reload_pg("jcloud", "pagetype", jingrow.scrub(pagetype)) servers = jingrow.get_all(pagetype, {"hostname": ("is", "not set")}) domain = jingrow.db.get_single_value("Jcloud Settings", "domain") diff --git a/jcloud/patches/v0_0_4/remove_legacy_billing_doctypes.py b/jcloud/patches/v0_0_4/remove_legacy_billing_doctypes.py index 305e9b4..68feca3 100644 --- a/jcloud/patches/v0_0_4/remove_legacy_billing_doctypes.py +++ b/jcloud/patches/v0_0_4/remove_legacy_billing_doctypes.py @@ -6,6 +6,6 @@ import jingrow def execute(): - # these doctypes are only deleted from PageType table, their tables will exist - doctypes = ["Payment", "Payment Ledger Entry"] - jingrow.db.sql("DELETE from tabPageType where name in %s", [doctypes]) + # these pagetypes are only deleted from PageType table, their tables will exist + pagetypes = ["Payment", "Payment Ledger Entry"] + jingrow.db.sql("DELETE from tabPageType where name in %s", [pagetypes]) diff --git a/jcloud/saas/README.md b/jcloud/saas/README.md index 7d906ba..c4cc2d4 100644 --- a/jcloud/saas/README.md +++ b/jcloud/saas/README.md @@ -1,6 +1,6 @@ ### New SaaS Flow (Product Trial) -It has 2 doctypes. +It has 2 pagetypes. 1. **Product Trial** - Hold the configuration for a specific product. 2. **Product Trial Request** - This holds the records of request for a specific product from a user. diff --git a/jcloud/saas/pagetype/product_trial/patches/rename_saas_product_doctypes_to_product_trial.py b/jcloud/saas/pagetype/product_trial/patches/rename_saas_product_doctypes_to_product_trial.py index 1ec6c2b..c631d52 100644 --- a/jcloud/saas/pagetype/product_trial/patches/rename_saas_product_doctypes_to_product_trial.py +++ b/jcloud/saas/pagetype/product_trial/patches/rename_saas_product_doctypes_to_product_trial.py @@ -7,11 +7,11 @@ from jingrow.model.utils.rename_field import rename_field def execute(): - rename_doctypes() + rename_pagetypes() rename_fields() -def rename_doctypes(): +def rename_pagetypes(): renames = { "SaaS Product": "Product Trial", "SaaS Product App": "Product Trial App", diff --git a/jcloud/utils/__init__.py b/jcloud/utils/__init__.py index 3650d0b..f133000 100644 --- a/jcloud/utils/__init__.py +++ b/jcloud/utils/__init__.py @@ -587,12 +587,12 @@ class ttl_cache: return wrapper_func -def poly_get_pagetype(doctypes, name): - """Get the pagetype value from the given name of a pg from a list of doctypes""" - for pagetype in doctypes: +def poly_get_pagetype(pagetypes, name): + """Get the pagetype value from the given name of a pg from a list of pagetypes""" + for pagetype in pagetypes: if jingrow.db.exists(pagetype, name): return pagetype - return doctypes[-1] + return pagetypes[-1] def reconnect_on_failure(): diff --git a/jcloud/www/internal/bench/overview.md b/jcloud/www/internal/bench/overview.md index bc61cc1..62caa41 100644 --- a/jcloud/www/internal/bench/overview.md +++ b/jcloud/www/internal/bench/overview.md @@ -4,13 +4,13 @@ title: Build a Bench # Build a Bench -This is information about doctypes required to manage benches and apps on FC +This is information about pagetypes required to manage benches and apps on FC from [desk](https://jingrow.com/app). Roughly, the build process goes -through these doctypes (that you're concerned with) in order. +through these pagetypes (that you're concerned with) in order. App => App Source => Release Group => Deploy Candidate => Bench -To build a bench, we need documents of the following doctypes. +To build a bench, we need documents of the following pagetypes. ## App