Add database indices to improve performance (SQLITE)

This commit is contained in:
Jan Böhmer 2022-09-25 18:48:16 +02:00
parent ed91ffc60a
commit ccc99eba0c
10 changed files with 380 additions and 19 deletions

View file

@ -34,7 +34,10 @@ use Symfony\Component\Validator\Constraints as Assert;
* Class AttachmentType.
*
* @ORM\Entity(repositoryClass="App\Repository\StructuralDBElementRepository")
* @ORM\Table(name="`attachment_types`")
* @ORM\Table(name="`attachment_types`", indexes={
* @ORM\Index(name="attachment_types_idx_name", columns={"name"}),
* @ORM\Index(name="attachment_types_idx_parent_name", columns={"parent_id", "name"}),
* })
*/
class AttachmentType extends AbstractStructuralDBElement
{

View file

@ -34,8 +34,8 @@ use Symfony\Component\Validator\Constraints as Assert;
*
* @ORM\Entity(repositoryClass="App\Repository\Parts\CategoryRepository")
* @ORM\Table(name="`categories`", indexes={
* @ORM\Index(name="name_idx", columns={"name"}),
* @ORM\Index(name="parent_name_idx", columns={"parent_id", "name"}),
* @ORM\Index(name="category_idx_name", columns={"name"}),
* @ORM\Index(name="category_idx_parent_name", columns={"parent_id", "name"}),
* })
*/
class Category extends AbstractPartsContainingDBElement

View file

@ -62,8 +62,8 @@ use Symfony\Component\Validator\Constraints as Assert;
*
* @ORM\Entity(repositoryClass="App\Repository\Parts\FootprintRepository")
* @ORM\Table("`footprints`", indexes={
* @ORM\Index(name="name_idx", columns={"name"}),
* @ORM\Index(name="parent_name_idx", columns={"parent_id", "name"}),
* @ORM\Index(name="footprint_idx_name", columns={"name"}),
* @ORM\Index(name="footprint_idx_parent_name", columns={"parent_id", "name"}),
* })
*/
class Footprint extends AbstractPartsContainingDBElement

View file

@ -62,8 +62,8 @@ use Symfony\Component\Validator\Constraints as Assert;
*
* @ORM\Entity(repositoryClass="App\Repository\Parts\ManufacturerRepository")
* @ORM\Table("`manufacturers`", indexes={
* @ORM\Index(name="name_idx", columns={"name"}),
* @ORM\Index(name="parent_name_idx", columns={"parent_id", "name"}),
* @ORM\Index(name="manufacturer_name", columns={"name"}),
* @ORM\Index(name="manufacturer_idx_parent_name", columns={"parent_id", "name"}),
* })
*/
class Manufacturer extends AbstractCompany

View file

@ -56,8 +56,8 @@ use Symfony\Component\Validator\Constraints as Assert;
*
* @ORM\Entity(repositoryClass="App\Repository\Parts\MeasurementUnitRepository")
* @ORM\Table(name="`measurement_units`", indexes={
* @ORM\Index(name="name_idx", columns={"name"}),
* @ORM\Index(name="parent_name_idx", columns={"parent_id", "name"}),
* @ORM\Index(name="unit_idx_name", columns={"name"}),
* @ORM\Index(name="unit_idx_parent_name", columns={"parent_id", "name"}),
* })
* @UniqueEntity("unit")
*/

View file

@ -62,8 +62,8 @@ use Symfony\Component\Validator\Constraints as Assert;
*
* @ORM\Entity(repositoryClass="App\Repository\Parts\StorelocationRepository")
* @ORM\Table("`storelocations`", indexes={
* @ORM\Index(name="name_idx", columns={"name"}),
* @ORM\Index(name="parent_name_idx", columns={"parent_id", "name"}),
* @ORM\Index(name="location_idx_name", columns={"name"}),
* @ORM\Index(name="location_idx_parent_name", columns={"parent_id", "name"}),
* })
*/
class Storelocation extends AbstractPartsContainingDBElement

View file

@ -66,8 +66,8 @@ use Symfony\Component\Validator\Constraints as Assert;
*
* @ORM\Entity(repositoryClass="App\Repository\Parts\SupplierRepository")
* @ORM\Table("`suppliers`", indexes={
* @ORM\Index(name="name_idx", columns={"name"}),
* @ORM\Index(name="parent_name_idx", columns={"parent_id", "name"}),
* @ORM\Index(name="supplier_idx_name", columns={"name"}),
* @ORM\Index(name="supplier_idx_parent_name", columns={"parent_id", "name"}),
* })
*/
class Supplier extends AbstractCompany

View file

@ -60,8 +60,8 @@ use Symfony\Component\Validator\Constraints as Assert;
* @UniqueEntity("iso_code")
* @ORM\Entity()
* @ORM\Table(name="currencies", indexes={
* @ORM\Index(name="name_idx", columns={"name"}),
* @ORM\Index(name="parent_name_idx", columns={"parent_id", "name"}),
* @ORM\Index(name="currency_idx_name", columns={"name"}),
* @ORM\Index(name="currency_idx_parent_name", columns={"parent_id", "name"}),
* })
*/
class Currency extends AbstractStructuralDBElement

View file

@ -57,8 +57,8 @@ use Symfony\Component\Validator\Constraints as Assert;
*
* @ORM\Entity()
* @ORM\Table("`groups`", indexes={
* @ORM\Index(name="name_idx", columns={"name"}),
* @ORM\Index(name="parent_name_idx", columns={"parent_id", "name"}),
* @ORM\Index(name="group_idx_name", columns={"name"}),
* @ORM\Index(name="group_idx_parent_name", columns={"parent_id", "name"}),
* })
*/
class Group extends AbstractStructuralDBElement implements HasPermissionsInterface