@@ -644,30 +644,32 @@ private function setupSessionTable(
644
644
SchemaSetupInterface $ setup ,
645
645
\Magento \Framework \DB \Adapter \AdapterInterface $ connection
646
646
) {
647
- $ table = $ connection ->newTable (
648
- $ setup ->getTable ('session ' )
649
- )->addColumn (
650
- 'session_id ' ,
651
- \Magento \Framework \DB \Ddl \Table::TYPE_TEXT ,
652
- 255 ,
653
- ['nullable ' => false , 'primary ' => true ],
654
- 'Session Id '
655
- )->addColumn (
656
- 'session_expires ' ,
657
- \Magento \Framework \DB \Ddl \Table::TYPE_INTEGER ,
658
- null ,
659
- ['unsigned ' => true , 'nullable ' => false , 'default ' => '0 ' ],
660
- 'Date of Session Expiration '
661
- )->addColumn (
662
- 'session_data ' ,
663
- \Magento \Framework \DB \Ddl \Table::TYPE_BLOB ,
664
- '2M ' ,
665
- ['nullable ' => false ],
666
- 'Session Data '
667
- )->setComment (
668
- 'Database Sessions Storage '
669
- );
670
- $ connection ->createTable ($ table );
647
+ if (!$ connection ->isTableExists ($ setup ->getTable ('session ' ))) {
648
+ $ table = $ connection ->newTable (
649
+ $ setup ->getTable ('session ' )
650
+ )->addColumn (
651
+ 'session_id ' ,
652
+ \Magento \Framework \DB \Ddl \Table::TYPE_TEXT ,
653
+ 255 ,
654
+ ['nullable ' => false , 'primary ' => true ],
655
+ 'Session Id '
656
+ )->addColumn (
657
+ 'session_expires ' ,
658
+ \Magento \Framework \DB \Ddl \Table::TYPE_INTEGER ,
659
+ null ,
660
+ ['unsigned ' => true , 'nullable ' => false , 'default ' => '0 ' ],
661
+ 'Date of Session Expiration '
662
+ )->addColumn (
663
+ 'session_data ' ,
664
+ \Magento \Framework \DB \Ddl \Table::TYPE_BLOB ,
665
+ '2M ' ,
666
+ ['nullable ' => false ],
667
+ 'Session Data '
668
+ )->setComment (
669
+ 'Database Sessions Storage '
670
+ );
671
+ $ connection ->createTable ($ table );
672
+ }
671
673
}
672
674
673
675
/**
@@ -681,45 +683,47 @@ private function setupCacheTable(
681
683
SchemaSetupInterface $ setup ,
682
684
\Magento \Framework \DB \Adapter \AdapterInterface $ connection
683
685
) {
684
- $ table = $ connection ->newTable (
685
- $ setup ->getTable ('cache ' )
686
- )->addColumn (
687
- 'id ' ,
688
- \Magento \Framework \DB \Ddl \Table::TYPE_TEXT ,
689
- 200 ,
690
- ['nullable ' => false , 'primary ' => true ],
691
- 'Cache Id '
692
- )->addColumn (
693
- 'data ' ,
694
- \Magento \Framework \DB \Ddl \Table::TYPE_BLOB ,
695
- '2M ' ,
696
- [],
697
- 'Cache Data '
698
- )->addColumn (
699
- 'create_time ' ,
700
- \Magento \Framework \DB \Ddl \Table::TYPE_INTEGER ,
701
- null ,
702
- [],
703
- 'Cache Creation Time '
704
- )->addColumn (
705
- 'update_time ' ,
706
- \Magento \Framework \DB \Ddl \Table::TYPE_INTEGER ,
707
- null ,
708
- [],
709
- 'Time of Cache Updating '
710
- )->addColumn (
711
- 'expire_time ' ,
712
- \Magento \Framework \DB \Ddl \Table::TYPE_INTEGER ,
713
- null ,
714
- [],
715
- 'Cache Expiration Time '
716
- )->addIndex (
717
- $ setup ->getIdxName ('cache ' , ['expire_time ' ]),
718
- ['expire_time ' ]
719
- )->setComment (
720
- 'Caches '
721
- );
722
- $ connection ->createTable ($ table );
686
+ if (!$ connection ->isTableExists ($ setup ->getTable ('cache ' ))) {
687
+ $ table = $ connection ->newTable (
688
+ $ setup ->getTable ('cache ' )
689
+ )->addColumn (
690
+ 'id ' ,
691
+ \Magento \Framework \DB \Ddl \Table::TYPE_TEXT ,
692
+ 200 ,
693
+ ['nullable ' => false , 'primary ' => true ],
694
+ 'Cache Id '
695
+ )->addColumn (
696
+ 'data ' ,
697
+ \Magento \Framework \DB \Ddl \Table::TYPE_BLOB ,
698
+ '2M ' ,
699
+ [],
700
+ 'Cache Data '
701
+ )->addColumn (
702
+ 'create_time ' ,
703
+ \Magento \Framework \DB \Ddl \Table::TYPE_INTEGER ,
704
+ null ,
705
+ [],
706
+ 'Cache Creation Time '
707
+ )->addColumn (
708
+ 'update_time ' ,
709
+ \Magento \Framework \DB \Ddl \Table::TYPE_INTEGER ,
710
+ null ,
711
+ [],
712
+ 'Time of Cache Updating '
713
+ )->addColumn (
714
+ 'expire_time ' ,
715
+ \Magento \Framework \DB \Ddl \Table::TYPE_INTEGER ,
716
+ null ,
717
+ [],
718
+ 'Cache Expiration Time '
719
+ )->addIndex (
720
+ $ setup ->getIdxName ('cache ' , ['expire_time ' ]),
721
+ ['expire_time ' ]
722
+ )->setComment (
723
+ 'Caches '
724
+ );
725
+ $ connection ->createTable ($ table );
726
+ }
723
727
}
724
728
725
729
/**
@@ -733,27 +737,29 @@ private function setupCacheTagTable(
733
737
SchemaSetupInterface $ setup ,
734
738
\Magento \Framework \DB \Adapter \AdapterInterface $ connection
735
739
) {
736
- $ table = $ connection ->newTable (
737
- $ setup ->getTable ('cache_tag ' )
738
- )->addColumn (
739
- 'tag ' ,
740
- \Magento \Framework \DB \Ddl \Table::TYPE_TEXT ,
741
- 100 ,
742
- ['nullable ' => false , 'primary ' => true ],
743
- 'Tag '
744
- )->addColumn (
745
- 'cache_id ' ,
746
- \Magento \Framework \DB \Ddl \Table::TYPE_TEXT ,
747
- 200 ,
748
- ['nullable ' => false , 'primary ' => true ],
749
- 'Cache Id '
750
- )->addIndex (
751
- $ setup ->getIdxName ('cache_tag ' , ['cache_id ' ]),
752
- ['cache_id ' ]
753
- )->setComment (
754
- 'Tag Caches '
755
- );
756
- $ connection ->createTable ($ table );
740
+ if (!$ connection ->isTableExists ($ setup ->getTable ('cache_tag ' ))) {
741
+ $ table = $ connection ->newTable (
742
+ $ setup ->getTable ('cache_tag ' )
743
+ )->addColumn (
744
+ 'tag ' ,
745
+ \Magento \Framework \DB \Ddl \Table::TYPE_TEXT ,
746
+ 100 ,
747
+ ['nullable ' => false , 'primary ' => true ],
748
+ 'Tag '
749
+ )->addColumn (
750
+ 'cache_id ' ,
751
+ \Magento \Framework \DB \Ddl \Table::TYPE_TEXT ,
752
+ 200 ,
753
+ ['nullable ' => false , 'primary ' => true ],
754
+ 'Cache Id '
755
+ )->addIndex (
756
+ $ setup ->getIdxName ('cache_tag ' , ['cache_id ' ]),
757
+ ['cache_id ' ]
758
+ )->setComment (
759
+ 'Tag Caches '
760
+ );
761
+ $ connection ->createTable ($ table );
762
+ }
757
763
}
758
764
759
765
/**
@@ -767,45 +773,47 @@ private function setupFlagTable(
767
773
SchemaSetupInterface $ setup ,
768
774
\Magento \Framework \DB \Adapter \AdapterInterface $ connection
769
775
) {
770
- $ table = $ connection ->newTable (
771
- $ setup ->getTable ('flag ' )
772
- )->addColumn (
773
- 'flag_id ' ,
774
- \Magento \Framework \DB \Ddl \Table::TYPE_INTEGER ,
775
- null ,
776
- ['identity ' => true , 'unsigned ' => true , 'nullable ' => false , 'primary ' => true ],
777
- 'Flag Id '
778
- )->addColumn (
779
- 'flag_code ' ,
780
- \Magento \Framework \DB \Ddl \Table::TYPE_TEXT ,
781
- 255 ,
782
- ['nullable ' => false ],
783
- 'Flag Code '
784
- )->addColumn (
785
- 'state ' ,
786
- \Magento \Framework \DB \Ddl \Table::TYPE_SMALLINT ,
787
- null ,
788
- ['unsigned ' => true , 'nullable ' => false , 'default ' => '0 ' ],
789
- 'Flag State '
790
- )->addColumn (
791
- 'flag_data ' ,
792
- \Magento \Framework \DB \Ddl \Table::TYPE_TEXT ,
793
- '64k ' ,
794
- [],
795
- 'Flag Data '
796
- )->addColumn (
797
- 'last_update ' ,
798
- \Magento \Framework \DB \Ddl \Table::TYPE_TIMESTAMP ,
799
- null ,
800
- ['nullable ' => false , 'default ' => \Magento \Framework \DB \Ddl \Table::TIMESTAMP_INIT_UPDATE ],
801
- 'Date of Last Flag Update '
802
- )->addIndex (
803
- $ setup ->getIdxName ('flag ' , ['last_update ' ]),
804
- ['last_update ' ]
805
- )->setComment (
806
- 'Flag '
807
- );
808
- $ connection ->createTable ($ table );
776
+ if (!$ connection ->isTableExists ($ setup ->getTable ('flag ' ))) {
777
+ $ table = $ connection ->newTable (
778
+ $ setup ->getTable ('flag ' )
779
+ )->addColumn (
780
+ 'flag_id ' ,
781
+ \Magento \Framework \DB \Ddl \Table::TYPE_INTEGER ,
782
+ null ,
783
+ ['identity ' => true , 'unsigned ' => true , 'nullable ' => false , 'primary ' => true ],
784
+ 'Flag Id '
785
+ )->addColumn (
786
+ 'flag_code ' ,
787
+ \Magento \Framework \DB \Ddl \Table::TYPE_TEXT ,
788
+ 255 ,
789
+ ['nullable ' => false ],
790
+ 'Flag Code '
791
+ )->addColumn (
792
+ 'state ' ,
793
+ \Magento \Framework \DB \Ddl \Table::TYPE_SMALLINT ,
794
+ null ,
795
+ ['unsigned ' => true , 'nullable ' => false , 'default ' => '0 ' ],
796
+ 'Flag State '
797
+ )->addColumn (
798
+ 'flag_data ' ,
799
+ \Magento \Framework \DB \Ddl \Table::TYPE_TEXT ,
800
+ '64k ' ,
801
+ [],
802
+ 'Flag Data '
803
+ )->addColumn (
804
+ 'last_update ' ,
805
+ \Magento \Framework \DB \Ddl \Table::TYPE_TIMESTAMP ,
806
+ null ,
807
+ ['nullable ' => false , 'default ' => \Magento \Framework \DB \Ddl \Table::TIMESTAMP_INIT_UPDATE ],
808
+ 'Date of Last Flag Update '
809
+ )->addIndex (
810
+ $ setup ->getIdxName ('flag ' , ['last_update ' ]),
811
+ ['last_update ' ]
812
+ )->setComment (
813
+ 'Flag '
814
+ );
815
+ $ connection ->createTable ($ table );
816
+ }
809
817
}
810
818
811
819
/**
0 commit comments