This only happened once, but on startup of an app that I have otherwise not changed, I got this error:
KeyError: Failed to get "view_key" or "type" from col {'name': 'confirmed_email', 'type': 'bool'}
Table data:
{
"{\"id\":771408}": {
"spec": {
"cols": [
{
"name": "ai_costs",
"type": "number"
},
{
"name": "available_download_credits",
"type": "number"
},
{
"name": "available_generation_credits",
"type": "number"
},
{
"name": "confirmed_email",
"type": "bool"
},
{
"name": "email",
"type": "string"
},
{
"name": "email_confirmation_key",
"type": "string"
},
{
"name": "enabled",
"type": "bool"
},
{
"name": "first_name",
"type": "string"
},
{
"name": "last_login",
"type": "datetime"
},
{
"name": "last_name",
"type": "string"
},
{
"name": "mfa",
"type": "simpleObject"
},
{
"name": "n_password_failures",
"type": "number"
},
{
"name": "password_hash",
"type": "string"
},
{
"name": "prorate_option_available",
"type": "bool"
},
{
"name": "remembered_logins",
"type": "simpleObject"
},
{
"name": "role",
"type": "string"
},
{
"name": "show_prorate_popup",
"type": "bool"
},
{
"name": "signed_up",
"type": "datetime"
},
{
"name": "stripe_cancel_at_period_end",
"type": "bool"
},
{
"name": "stripe_customer_id",
"type": "string"
},
{
"name": "stripe_invoice_payment_failed",
"type": "bool"
},
{
"name": "stripe_price_id",
"type": "string"
},
{
"name": "stripe_subscription_id",
"type": "string"
},
{
"name": "stripe_subscription_status",
"type": "string"
},
{
"name": "stripe_upcoming_price_plan",
"type": "simpleObject"
},
{
"name": "subscription_creation_date",
"type": "datetime"
},
{
"name": "subscription_expiration_date",
"type": "datetime"
}
],
"cache": [
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1
]
},
"rows": {
"1129730288": "<class 'anvil.tables.v2._row.Row'>"
}
}
}
at anvil-services/anvil/tables/v2/_row.py, line 164
called from anvil-services/anvil/tables/v2/_row.py, line 125
called from anvil-services/anvil/tables/v2/_row.py, line 106
called from anvil-services/anvil/tables/v2/_row.py, line 64
called from anvil-services/anvil/tables/v2/_row.py, line 93
called from Globals, line 237
called from Globals, line 237
called from Startup, line 34
called from Startup, line 142
Globals line 237 is:
def anvil_server_call_s(server_fn, *args, **kwargs):
# created own wrapper to redo appofflineerror calls 1 sec later, as per https://anvil.works/forum/t/downlink-disconnected-x8-servercode-exited-unexpectedly-x3-connection-failed-x2/20749
import Startup # otherwise we would have circular reference on the global level
try:
return anvil.server.call_s(server_fn, *args, **kwargs) <------ this line
except anvil.server.AppOfflineError as e:
print("AppOffline_Error 1 anvil_server_call_s")
The session ID in my app was: IDVNWJMEOHQFRHZNFFMZCESPTMKPQOZ4 if the anvil team want to check it out