Problem/Motivation

I've been experimenting with using SQLite and it normally works. But I just installed DisplaySuite and I started getting this error. Is it possible that it's using an SQL mode that isn't supported by SQLite?

The website encountered an unexpected error. Please try again later.

Exception: Unable to parse the column type TINYINT in Drupal\sqlite\Driver\Database\sqlite\Schema->introspectSchema() (line 534 of core/modules/sqlite/src/Driver/Database/sqlite/Schema.php).
Drupal\sqlite\Driver\Database\sqlite\Schema->fieldExists() (Line: 1610)
Drupal\Core\Entity\Sql\SqlContentEntityStorageSchema->createSharedTableSchema() (Line: 1538)
Drupal\Core\Entity\Sql\SqlContentEntityStorageSchema->performFieldSchemaOperation() (Line: 695)
Drupal\Core\Entity\Sql\SqlContentEntityStorageSchema->onFieldStorageDefinitionCreate() (Line: 1534)
Drupal\Core\Entity\Sql\SqlContentEntityStorage->Drupal\Core\Entity\Sql\{closure}() (Line: 1590)
Drupal\Core\Entity\Sql\SqlContentEntityStorage->wrapSchemaException() (Line: 1537)
Drupal\Core\Entity\Sql\SqlContentEntityStorage->onFieldStorageDefinitionCreate() (Line: 85)
Drupal\Core\Field\FieldStorageDefinitionListener->onFieldStorageDefinitionCreate() (Line: 216)
Drupal\Core\Entity\EntityDefinitionUpdateManager->installFieldStorageDefinition() (Line: 302)
Drupal\Core\Extension\ModuleInstaller->install() (Line: 83)
Drupal\Core\ProxyClass\Extension\ModuleInstaller->install() (Line: 502)
Drupal\system\Form\ModulesListForm->submitForm()
call_user_func_array() (Line: 114)
Drupal\Core\Form\FormSubmitter->executeSubmitHandlers() (Line: 52)
Drupal\Core\Form\FormSubmitter->doSubmitForm() (Line: 597)
Drupal\Core\Form\FormBuilder->processForm() (Line: 325)
Drupal\Core\Form\FormBuilder->buildForm() (Line: 73)
Drupal\Core\Controller\FormController->getContentResult()
call_user_func_array() (Line: 123)
Drupal\Core\EventSubscriber\EarlyRenderingControllerWrapperSubscriber->Drupal\Core\EventSubscriber\{closure}() (Line: 580)
Drupal\Core\Render\Renderer->executeInRenderContext() (Line: 124)
Drupal\Core\EventSubscriber\EarlyRenderingControllerWrapperSubscriber->wrapControllerExecutionInRenderContext() (Line: 97)
Drupal\Core\EventSubscriber\EarlyRenderingControllerWrapperSubscriber->Drupal\Core\EventSubscriber\{closure}() (Line: 163)
Symfony\Component\HttpKernel\HttpKernel->handleRaw() (Line: 74)
Symfony\Component\HttpKernel\HttpKernel->handle() (Line: 58)
Drupal\Core\StackMiddleware\Session->handle() (Line: 48)
Drupal\Core\StackMiddleware\KernelPreHandle->handle() (Line: 106)
Drupal\page_cache\StackMiddleware\PageCache->pass() (Line: 85)
Drupal\page_cache\StackMiddleware\PageCache->handle() (Line: 48)
Drupal\Core\StackMiddleware\ReverseProxyMiddleware->handle() (Line: 51)
Drupal\Core\StackMiddleware\NegotiationMiddleware->handle() (Line: 51)
Drupal\Core\StackMiddleware\StackedHttpKernel->handle() (Line: 686)
Drupal\Core\DrupalKernel->handle() (Line: 19)

Comments

bogdog400 created an issue. See original summary.

bogdog400’s picture

I continue to have minor problems with a TINYINT field while running the module with a site built on SQLite. The latest is that I can't clear an error about the "DS Switch Field needs to be installed."

Here's the error message:


prompt> vendor/drush/drush/drush entup
The following updates are pending:

node entity type : 
The DS switch field needs to be installed.

 Do you wish to run all pending updates? (yes/no) [yes]:
 > 


In Schema.php line 534:
                                           
  Unable to parse the column type TINYINT  
                                           

Any ideas about what I should change? Is there a place where I can do this upgrade manually? When I grep the DS module, I don't find the TINYINT word anywhere.

TIA.

swentel’s picture

Status: Active » Closed (cannot reproduce)

Hard to see honestly, I don't use sqlite at all, except for testing. But it seems that tinyint is not supported by SQLIte. DS switch module installs a column which is a string, so I have absolutely no idea where this comes from either and there's no other column that is installed by DS, so the problem must be from something else.